1/*! 2 * Isotope PACKAGED v2.2.2 3 * 4 * Licensed GPLv3 for open source use 5 * or Isotope Commercial License for commercial use 6 * 7 * http://isotope.metafizzy.co 8 * Copyright 2015 Metafizzy 9 */ 10"use strict"; 11! function (a) { 12 function b() { 13 } 14 function c(a) { 15 function c(b) { 16 b.prototype.option || (b.prototype.option = function (b) { 17 a.isPlainObject( b ) && (this.options = a.extend( ! 0, this.options, b )) 18 }) 19 } 20 function e(b, c) { 21 a.fn[b] = function (e) { 22 if ("string" == typeof e) { 23 for (var g = d.call( arguments, 1 ), h = 0, i = this.length; i > h; h++) { 24 var j = this[h], k = a.data( j, b ); 25 if (k) { 26 if (a.isFunction( k[e] ) && "_" !== e.charAt( 0 )) { 27 var l = k[e].apply( k, g ); 28 if (void 0 !== l) { 29 return l 30 } } else { 31 f( "no such method '" + e + "' for " + b + " instance" ); 32 } } else { 33 f( "cannot call methods on " + b + " prior to initialization; attempted to call '" + e + "'" ) 34 } 35 } 36 return this 37 } 38 return this.each( 39 function () { 40 var d = a.data( this, b ); 41 d ? (d.option( e ), d._init()) : (d = new c( this, e ), a.data( this, b, d )) 42 } 43 ) 44 } 45 } 46 if (a) { 47 var f = "undefined" == typeof console ? b : function (a) { 48 console.error( a ) 49 }; 50 return a.bridget = function (a, b) { 51 c( b ), e( a, b ) 52 }, a.bridget 53 } 54 } 55 var d = Array.prototype.slice; 56 "function" == typeof define && define.amd ? define( "jquery-bridget/jquery.bridget", ["jquery"], c ) : c( "object" == typeof exports ? require( "jquery" ) : a.jQuery ) 57}(window), function (a) { 58 function b(b) { 59 var c = a.event; 60 return c.target = c.target || c.srcElement || b, c 61 } 62 var c = document.documentElement, d = function () { 63 }; 64 c.addEventListener ? d = function (a, b, c) { 65 a.addEventListener( b, c, ! 1 ) 66 } : c.attachEvent && (d = function (a, c, d) { 67 a[c + d] = d.handleEvent ? function () { 68 var c = b( a ); 69 d.handleEvent.call( d, c ) 70 } : function () { 71 var c = b( a ); 72 d.call( a, c ) 73 }, a.attachEvent( "on" + c, a[c + d] ) 74 }); 75 var e = function () { 76 }; 77 c.removeEventListener ? e = function (a, b, c) { 78 a.removeEventListener( b, c, ! 1 ) 79 } : c.detachEvent && (e = function (a, b, c) { 80 a.detachEvent( "on" + b, a[b + c] ); 81 try { 82 delete a[b + c] 83 } catch (d) { 84 a[b + c] = void 0 85 } 86 }); 87 var f = {bind: d, unbind: e}; 88 "function" == typeof define && define.amd ? define( "eventie/eventie", f ) : "object" == typeof exports ? module.exports = f : a.eventie = f 89}(window), function () { 90 "use strict"; 91 function a() { 92 } 93 function b(a, b) { 94 for (var c = a.length; c--; ) { 95 if (a[c].listener === b) { 96 return c; 97 } 98 } 99 return-1 100 } 101 function c(a) { 102 return function () { 103 return this[a].apply( this, arguments ) 104 } 105 } 106 var d = a.prototype, e = this, f = e.EventEmitter; 107 d.getListeners = function (a) { 108 var b, c, d = this._getEvents(); 109 if (a instanceof RegExp) { 110 b = {}; 111 for (c in d) { 112 d.hasOwnProperty( c ) && a.test( c ) && (b[c] = d[c]) 113 } } else { 114 b = d[a] || (d[a] = []); 115 } 116 return b 117 }, d.flattenListeners = function (a) { 118 var b, c = []; 119 for (b = 0; b < a.length; b += 1) { 120 c.push( a[b].listener ); 121 } 122 return c 123 }, d.getListenersAsObject = function (a) { 124 var b, c = this.getListeners( a ); 125 return c instanceof Array && (b = {}, b[a] = c), b || c 126 }, d.addListener = function (a, c) { 127 var d, e = this.getListenersAsObject( a ), f = "object" == typeof c; 128 for (d in e) { 129 e.hasOwnProperty( d ) && -1 === b( e[d], c ) && e[d].push( f ? c : {listener : c, once : ! 1} ); 130 } 131 return this 132 }, d.on = c( "addListener" ), d.addOnceListener = function (a, b) { 133 return this.addListener( a, {listener: b, once: ! 0} ) 134 }, d.once = c( "addOnceListener" ), d.defineEvent = function (a) { 135 return this.getListeners( a ), this 136 }, d.defineEvents = function (a) { 137 for (var b = 0; b < a.length; b += 1) { 138 this.defineEvent( a[b] ); 139 } 140 return this 141 }, d.removeListener = function (a, c) { 142 var d, e, f = this.getListenersAsObject( a ); 143 for (e in f) { 144 f.hasOwnProperty( e ) && (d = b( f[e], c ), -1 !== d && f[e].splice( d, 1 )); 145 } 146 return this 147 }, d.off = c( "removeListener" ), d.addListeners = function (a, b) { 148 return this.manipulateListeners( ! 1, a, b ) 149 }, d.removeListeners = function (a, b) { 150 return this.manipulateListeners( ! 0, a, b ) 151 }, d.manipulateListeners = function (a, b, c) { 152 var d, e, f = a ? this.removeListener : this.addListener, g = a ? this.removeListeners : this.addListeners; 153 if ("object" != typeof b || b instanceof RegExp) { 154 for (d = c.length; d--; ) { 155 f.call( this, b, c[d] ); 156 } } else { 157 for (d in b) { 158 b.hasOwnProperty( d ) && (e = b[d]) && ("function" == typeof e ? f.call( this, d, e ) : g.call( this, d, e )); 159 } 160 } 161 return this 162 }, d.removeEvent = function (a) { 163 var b, c = typeof a, d = this._getEvents(); 164 if ("string" === c) { 165 delete d[a]; 166 } else if (a instanceof RegExp) { 167 for (b in d) { 168 d.hasOwnProperty( b ) && a.test( b ) && delete d[b]; 169 } } else { 170 delete this._events; 171 } 172 return this 173 }, d.removeAllListeners = c( "removeEvent" ), d.emitEvent = function (a, b) { 174 var c, d, e, f, g = this.getListenersAsObject( a ); 175 for (e in g) { 176 if (g.hasOwnProperty( e )) { 177 for (d = g[e].length; d--; ) { 178 c = g[e][d], c.once === ! 0 && this.removeListener( a, c.listener ), f = c.listener.apply( this, b || [] ), f === this._getOnceReturnValue() && this.removeListener( a, c.listener ); 179 } 180 } 181 } 182 return this 183 }, d.trigger = c( "emitEvent" ), d.emit = function (a) { 184 var b = Array.prototype.slice.call( arguments, 1 ); 185 return this.emitEvent( a, b ) 186 }, d.setOnceReturnValue = function (a) { 187 return this._onceReturnValue = a, this 188 }, d._getOnceReturnValue = function () { 189 return this.hasOwnProperty( "_onceReturnValue" ) ? this._onceReturnValue : ! 0 190 }, d._getEvents = function () { 191 return this._events || (this._events = {}) 192 }, a.noConflict = function () { 193 return e.EventEmitter = f, a 194 }, "function" == typeof define && define.amd ? define( 195 "eventEmitter/EventEmitter", 196 [], 197 function () { 198 return a 199 } 200 ) : "object" == typeof module && module.exports ? module.exports = a : e.EventEmitter = a 201}.call( this ), function (a) { 202 function b(a) { 203 if (a) { 204 if ("string" == typeof d[a]) { 205 return a; 206 } 207 a = a.charAt( 0 ).toUpperCase() + a.slice( 1 ); 208 for (var b, e = 0, f = c.length; f > e; e++) { 209 if (b = c[e] + a, "string" == typeof d[b]) { 210 return b 211 } 212 } 213 } 214 } 215 var c = "Webkit Moz ms Ms O".split( " " ), d = document.documentElement.style; 216 "function" == typeof define && define.amd ? define( 217 "get-style-property/get-style-property", 218 [], 219 function () { 220 return b 221 } 222 ) : "object" == typeof exports ? module.exports = b : a.getStyleProperty = b 223}(window), function (a, b) { 224 function c(a) { 225 var b = parseFloat( a ), c = -1 === a.indexOf( "%" ) && ! isNaN( b ); 226 return c && b 227 } 228 function d() { 229 } 230 function e() { 231 for (var a = {width: 0, height: 0, innerWidth: 0, innerHeight: 0, outerWidth: 0, outerHeight: 0}, b = 0, c = h.length; c > b; b++) { 232 var d = h[b]; 233 a[d] = 0 234 } 235 return a 236 } 237 function f(b) { 238 function d() { 239 if ( ! m) { 240 m = ! 0; 241 var d = a.getComputedStyle; 242 if (j = function () { 243 var a = d ? function (a) { 244 return d( a, null ) 245 } : function (a) { 246 return a.currentStyle 247 }; 248 return function (b) { 249 var c = a( b ); 250 return c || g( "Style returned " + c + ". Are you running this code in a hidden iframe on Firefox? See http://bit.ly/getsizebug1" ), c 251 } 252 }(), k = b( "boxSizing" )) { 253 var e = document.createElement( "div" ); 254 e.style.width = "200px", e.style.padding = "1px 2px 3px 4px", e.style.borderStyle = "solid", e.style.borderWidth = "1px 2px 3px 4px", e.style[k] = "border-box"; 255 var f = document.body || document.documentElement; 256 f.appendChild( e ); 257 var h = j( e ); 258 l = 200 === c( h.width ), f.removeChild( e ) 259 } 260 } 261 } 262 function f(a) { 263 if (d(), "string" == typeof a && (a = document.querySelector( a )), a && "object" == typeof a && a.nodeType) { 264 var b = j( a ); 265 if ("none" === b.display) { 266 return e(); 267 } 268 var f = {}; 269 f.width = a.offsetWidth, f.height = a.offsetHeight; 270 for (var g = f.isBorderBox = ! ( ! k || ! b[k] || "border-box" !== b[k]), m = 0, n = h.length; n > m; m++) { 271 var o = h[m], p = b[o]; 272 p = i( a, p ); 273 var q = parseFloat( p ); 274 f[o] = isNaN( q ) ? 0 : q 275 } 276 var r = f.paddingLeft + f.paddingRight, s = f.paddingTop + f.paddingBottom, t = f.marginLeft + f.marginRight, u = f.marginTop + f.marginBottom, v = f.borderLeftWidth + f.borderRightWidth, w = f.borderTopWidth + f.borderBottomWidth, x = g && l, y = c( b.width ); 277 y !== ! 1 && (f.width = y + (x ? 0 : r + v)); 278 var z = c( b.height ); 279 return z !== ! 1 && (f.height = z + (x ? 0 : s + w)), f.innerWidth = f.width - (r + v), f.innerHe
279ight = f.height - (s + w), f.outerWidth = f.width + t, f.outerHeight = f.height + u, f 280 } 281 } 282 function i(b, c) { 283 if (a.getComputedStyle || -1 === c.indexOf( "%" )) { 284 return c; 285 } 286 var d = b.style, e = d.left, f = b.runtimeStyle, g = f && f.left; 287 return g && (f.left = b.currentStyle.left), d.left = c, c = d.pixelLeft, d.left = e, g && (f.left = g), c 288 } 289 var j, k, l, m = ! 1; 290 return f 291 } 292 var g = "undefined" == typeof console ? d : function (a) { 293 console.error( a ) 294 }, h = ["paddingLeft", "paddingRight", "paddingTop", "paddingBottom", "marginLeft", "marginRight", "marginTop", "marginBottom", "borderLeftWidth", "borderRightWidth", "borderTopWidth", "borderBottomWidth"]; 295 "function" == typeof define && define.amd ? define( "get-size/get-size", ["get-style-property/get-style-property"], f ) : "object" == typeof exports ? module.exports = f( require( "desandro-get-style-property" ) ) : a.getSize = f( a.getStyleProperty ) 296}(window), function (a) { 297 function b(a) { 298 "function" == typeof a && (b.isReady ? a() : g.push( a )) 299 } 300 function c(a) { 301 var c = "readystatechange" === a.type && "complete" !== f.readyState; 302 b.isReady || c || d() 303 } 304 function d() { 305 b.isReady = ! 0; 306 for (var a = 0, c = g.length; c > a; a++) { 307 var d = g[a]; 308 d() 309 } 310 } 311 function e(e) { 312 return"complete" === f.readyState ? d() : (e.bind( f, "DOMContentLoaded", c ), e.bind( f, "readystatechange", c ), e.bind( a, "load", c )), b 313 } 314 var f = a.document, g = []; 315 b.isReady = ! 1, "function" == typeof define && define.amd ? define( "doc-ready/doc-ready", ["eventie/eventie"], e ) : "object" == typeof exports ? module.exports = e( require( "eventie" ) ) : a.docReady = e( a.eventie ) 316}(window), function (a) { 317 "use strict"; 318 function b(a, b) { 319 return a[g](b) 320 } 321 function c(a) { 322 if ( ! a.parentNode) { 323 var b = document.createDocumentFragment(); 324 b.appendChild( a ) 325 } 326 } 327 function d(a, b) { 328 c( a ); 329 for (var d = a.parentNode.querySelectorAll( b ), e = 0, f = d.length; f > e; e++) { 330 if (d[e] === a) { 331 return ! 0; 332 } 333 } 334 return ! 1 335 } 336 function e(a, d) { 337 return c( a ), b( a, d ) 338 } 339 var f, g = function () { 340 if (a.matches) { 341 return"matches"; 342 } 343 if (a.matchesSelector) { 344 return"matchesSelector"; 345 } 346 for (var b = ["webkit", "moz", "ms", "o"], c = 0, d = b.length; d > c; c++) { 347 var e = b[c], f = e + "MatchesSelector"; 348 if (a[f]) { 349 return f 350 } 351 } 352 }(); 353 if (g) { 354 var h = document.createElement( "div" ), i = b( h, "div" ); 355 f = i ? b : e 356 } else { 357 f = d; 358 } 359 "function" == typeof define && define.amd ? define( 360 "matches-selector/matches-selector", 361 [], 362 function () { 363 return f 364 } 365 ) : "object" == typeof exports ? module.exports = f : window.matchesSelector = f 366}(Element.prototype), function (a, b) { 367 "use strict"; 368 "function" == typeof define && define.amd ? define( 369 "fizzy-ui-utils/utils", 370 ["doc-ready/doc-ready", "matches-selector/matches-selector"], 371 function (c, d) { 372 return b( a, c, d ) 373 } 374 ) : "object" == typeof exports ? module.exports = b( a, require( "doc-ready" ), require( "desandro-matches-selector" ) ) : a.fizzyUIUtils = b( a, a.docReady, a.matchesSelector ) 375}(window, function (a, b, c) { 376 var d = {}; 377 d.extend = function (a, b) { 378 for (var c in b) { 379 a[c] = b[c]; 380 } 381 return a 382 }, d.modulo = function (a, b) { 383 return(a % b + b) % b 384 }; 385 var e = Object.prototype.toString; 386 d.isArray = function (a) { 387 return"[object Array]" == e.call( a ) 388 }, d.makeArray = function (a) { 389 var b = []; 390 if (d.isArray( a )) { 391 b = a; 392 } else if (a && "number" == typeof a.length) { 393 for (var c = 0, e = a.length; e > c; c++) { 394 b.push( a[c] ); 395 } } else { 396 b.push( a ); 397 } 398 return b 399 }, d.indexOf = Array.prototype.indexOf ? function (a, b) { 400 return a.indexOf( b ) 401 } : function (a, b) { 402 for (var c = 0, d = a.length; d > c; c++) { 403 if (a[c] === b) { 404 return c; 405 } 406 } 407 return-1 408 }, d.removeFrom = function (a, b) { 409 var c = d.indexOf( a, b ); 410 - 1 != c && a.splice( c, 1 ) 411 }, d.isElement = "function" == typeof HTMLElement || "object" == typeof HTMLElement ? function (a) { 412 return a instanceof HTMLElement 413 } : function (a) { 414 return a && "object" == typeof a && 1 == a.nodeType && "string" == typeof a.nodeName 415 }, d.setText = function () { 416 function a(a, c) { 417 b = b || (void 0 !== document.documentElement.textContent ? "textContent" : "innerText"), a[b] = c 418 } 419 var b; 420 return a 421 }(), d.getParent = function (a, b) { 422 for (; a != document.body; ) { 423 if (a = a.parentNode, c( a, b )) { 424 return a 425 } 426 } 427 }, d.getQueryElement = function (a) { 428 return"string" == typeof a ? document.querySelector( a ) : a 429 }, d.handleEvent = function (a) { 430 var b = "on" + a.type; 431 this[b] && this[b](a) 432 }, d.filterFindElements = function (a, b) { 433 a = d.makeArray( a ); 434 for (var e = [], f = 0, g = a.length; g > f; f++) { 435 var h = a[f]; 436 if (d.isElement( h )) { 437 if (b) { 438 c( h, b ) && e.push( h ); 439 for (var i = h.querySelectorAll( b ), j = 0, k = i.length; k > j; j++) { 440 e.push( i[j] ) 441 } } else { 442 e.push( h ) 443 } 444 } 445 } 446 return e 447 }, d.debounceMethod = function (a, b, c) { 448 var d = a.prototype[b], e = b + "Timeout"; 449 a.prototype[b] = function () { 450 var a = this[e]; 451 a && clearTimeout( a ); 452 var b = arguments, f = this; 453 this[e] = setTimeout( 454 function () { 455 d.apply( f, b ), delete f[e] 456 }, 457 c || 100 458 ) 459 } 460 }, d.toDashed = function (a) { 461 return a.replace( 462 /(.)([A-Z])/g, 463 function (a, b, c) { 464 return b + "-" + c 465 } 466 ).toLowerCase() 467 }; 468 var f = a.console; 469 return d.htmlInit = function (c, e) { 470 b( 471 function () { 472 for (var b = d.toDashed( e ), g = document.querySelectorAll( ".js-" + b ), h = "data-" + b + "-options", i = 0, j = g.length; j > i; i++) { 473 var k, l = g[i], m = l.getAttribute( h ); 474 try { 475 k = m && JSON.parse( m ) 476 } catch (n) {
477 f && f.error( "Error parsing " + h + " on " + l.nodeName.toLowerCase() + (l.id ? "#" + l.id : "") + ": " + n ); 478 continue 479 } 480 var o = new c( l, k ), p = a.jQuery; 481 p && p.data( l, e, o ) 482 } 483 } 484 ) 485 }, d 486}), function (a, b) { 487 "use strict"; 488 "function" == typeof define && define.amd ? define( 489 "outlayer/item", 490 ["eventEmitter/EventEmitter", "get-size/get-size", "get-style-property/get-style-property", "fizzy-ui-utils/utils"], 491 function (c, d, e, f) { 492 return b( a, c, d, e, f ) 493 } 494 ) : "object" == typeof exports ? module.exports = b( a, require( "wolfy87-eventemitter" ), require( "get-size" ), require( "desandro-get-style-property" ), require( "fizzy-ui-utils" ) ) : (a.Outlayer = {}, a.Outlayer.Item = b( a, a.EventEmitter, a.getSize, a.getStyleProperty, a.fizzyUIUtils )) 495}(window, function (a, b, c, d, e) { 496 "use strict"; 497 function f(a) { 498 for (var b in a) { 499 return ! 1; 500 } 501 return b = null, ! 0 502 } 503 function g(a, b) { 504 a && (this.element = a, this.layout = b, this.position = {x: 0, y: 0}, this._create()) 505 } 506 function h(a) { 507 return a.replace( 508 /([A-Z])/g, 509 function (a) { 510 return"-" + a.toLowerCase() 511 } 512 ) 513 } 514 var i = a.getComputedStyle, j = i ? function (a) { 515 return i( a, null ) 516 } : function (a) { 517 return a.currentStyle 518 }, k = d( "transition" ), l = d( "transform" ), m = k && l, n = ! ! d( "perspective" ), o = {WebkitTransition: "webkitTransitionEnd", MozTransition: "transitionend", OTransition: "otransitionend", transition: "transitionend"}[k], p = ["transform", "transition", "transitionDuration", "transitionProperty"], q = function () { 519 for (var a = {}, b = 0, c = p.length; c > b; b++) { 520 var e = p[b], f = d( e ); 521 f && f !== e && (a[e] = f) 522 } 523 return a 524 }(); 525 e.extend( g.prototype, b.prototype ), g.prototype._create = function () { 526 this._transn = {ingProperties: {}, clean: {}, onEnd: {}}, this.css( {position: "absolute"} ) 527 }, g.prototype.handleEvent = function (a) { 528 var b = "on" + a.type; 529 this[b] && this[b](a) 530 }, g.prototype.getSize = function () { 531 this.size = c( this.element ) 532 }, g.prototype.css = function (a) { 533 var b = this.element.style; 534 for (var c in a) { 535 var d = q[c] || c; 536 b[d] = a[c] 537 } 538 }, g.prototype.getPosition = function () { 539 var a = j( this.element ), b = this.layout.options, c = b.isOriginLeft, d = b.isOriginTop, e = a[c ? "left" : "right"], f = a[d ? "top" : "bottom"], g = this.layout.size, h = -1 != e.indexOf( "%" ) ? parseFloat( e ) / 100 * g.width : parseInt( e, 10 ), i = -1 != f.indexOf( "%" ) ? parseFloat( f ) / 100 * g.height : parseInt( f, 10 ); 540 h = isNaN( h ) ? 0 : h, i = isNaN( i ) ? 0 : i, h -= c ? g.paddingLeft : g.paddingRight, i -= d ? g.paddingTop : g.paddingBottom, this.position.x = h, this.position.y = i 541 }, g.prototype.layoutPosition = function () { 542 var a = this.layout.size, b = this.layout.options, c = {}, d = b.isOriginLeft ? "paddingLeft" : "paddingRight", e = b.isOriginLeft ? "left" : "right", f = b.isOriginLeft ? "right" : "left", g = this.position.x + a[d]; 543 c[e] = this.getXValue( g ), c[f] = ""; 544 var h = b.isOriginTop ? "paddingTop" : "paddingBottom", i = b.isOriginTop ? "top" : "bottom", j = b.isOriginTop ? "bottom" : "top", k = this.position.y + a[h]; 545 c[i] = this.getYValue( k ), c[j] = "", this.css( c ), this.emitEvent( "layout", [this] ) 546 }, g.prototype.getXValue = function (a) { 547 var b = this.layout.options; 548 return b.percentPosition && ! b.isHorizontal ? a / this.layout.size.width * 100 + "%" : a + "px" 549 }, g.prototype.getYValue = function (a) { 550 var b = this.layout.options; 551 return b.percentPosition && b.isHorizontal ? a / this.layout.size.height * 100 + "%" : a + "px" 552 }, g.prototype._transitionTo = function (a, b) { 553 this.getPosition(); 554 var c = this.position.x, d = this.position.y, e = parseInt( a, 10 ), f = parseInt( b, 10 ), g = e === this.position.x && f === this.position.y; 555 if (this.setPosition( a, b ), g && ! this.isTransitioning) { 556 return void this.layoutPosition(); 557 } 558 var h = a - c, i = b - d, j = {}; 559 j.transform = this.getTranslate( h, i ), this.transition( {to: j, onTransitionEnd: {transform: this.layoutPosition}, isCleaning: ! 0} ) 560 }, g.prototype.getTranslate = function (a, b) { 561 var c = this.layout.options; 562 return a = c.isOriginLeft ? a : -a, b = c.isOriginTop ? b : -b, n ? "translate3d(" + a + "px, " + b + "px, 0)" : "translate(" + a + "px, " + b + "px)" 563 }, g.prototype.goTo = function (a, b) { 564 this.setPosition( a, b ), this.layoutPosition() 565 }, g.prototype.moveTo = m ? g.prototype._transitionTo : g.prototype.goTo, g.prototype.setPosition = function (a, b) { 566 this.position.x = parseInt( a, 10 ), this.position.y = parseInt( b, 10 ) 567 }, g.prototype._nonTransition = function (a) { 568 this.css( a.to ), a.isCleaning && this._removeStyles( a.to ); 569 for (var b in a.onTransitionEnd) { 570 a.onTransitionEnd[b].call( this ) 571 } 572 }, g.prototype._transition = function (a) { 573 if ( ! parseFloat( this.layout.options.transitionDuration )) { 574 return void this._nonTransition( a ); 575 } 576 var b = this._transn; 577 for (var c in a.onTransitionEnd) { 578 b.onEnd[c] = a.onTransitionEnd[c]; 579 } 580 for (c in a.to) { 581 b.ingProperties[c] = ! 0, a.isCleaning && (b.clean[c] = ! 0); 582 } 583 if (a.from) { 584 this.css( a.from ); 585 var d = this.element.offsetHeight; 586 d = null 587 } 588 this.enableTransition( a.to ), this.css( a.to ), this.isTransitioning = ! 0 589 }; 590 var r = "opacity," + h( q.transform || "transform" ); 591 g.prototype.enableTransition = function () { 592 this.isTransitioning || (this.css( {transitionProperty: r, transitionDuration: this.layout.options.transitionDuration} ), this.element.addEventListener( o, this, ! 1 )) 593 }, g.prototype.transition = g.prototype[k ? "_transition" : "_nonTransition"], g.prototype.onwebkitTransitionEnd = function (a) { 594 this.ontransitionend( a ) 595 }, g.prototype.onotransitionend = function (a) { 596 this.ontransitionend( a ) 597 }; 598 var s = {"-webkit-transform": "transform", "-moz-transform": "transform", "-o-transform": "transform"}; 599 g.prototype.ontransitionend = function (a) { 600 if (a.target === this.element) { 601 var b = this._transn, c = s[a.propertyName] || a.propertyName; 602 if (delete b.ingProperties[c], f( b.ingProperties ) && this.disableTransition(), c in b.clean && (this.element.style[a.propertyName] = "", delete b.clean[c]), c in b.onEnd) { 603 var d = b.onEnd[c]; 604 d.call( this ), delete b.onEnd[c] 605 } 606 this.emitEvent( "transitionEnd", [this] ) 607 } 608 }, g.prototype.disableTransition = function () { 609 this.removeTransitionStyles(), this.element.removeEventListener( o, this, ! 1 ), this.isTransitioning = ! 1 610 }, g.prototype._removeStyles = function (a) { 611 var b = {}; 612 for (var c in a) { 613 b[c] = ""; 614 } 615 this.css( b ) 616 }; 617 var t = {transitionProperty: "", transitionDuration: ""}; 618 return g.prototype.removeTransitionStyles = function () { 619 this.css( t ) 620 }, g.prototype.removeElem = function () { 621 this.element.parentNode.removeChild( this.element ), this.css( {display: ""} ), this.emitEvent( "remove", [this] ) 622 }, g.prototype.remove = function () { 623 if ( ! k || ! parseFloat( this.layout.options.transitionDuration )) { 624 return void this.removeElem(); 625 } 626 var a = this; 627 this.once( 628 "transitionEnd", 629 function () { 630 a.removeElem() 631 } 632 ), this.hide() 633 }, g.prototype.reveal = function () { 634 delete this.isHidden, this.css( {display: ""} ); 635 var a = this.layout.options, b = {}, c = this.getHideRevealTransitionEndProperty( "visibleStyle" ); 636 b[c] = this.onRevealTransitionEnd, this.transition( {from: a.hiddenStyle, to: a.visibleStyle, isCleaning: ! 0, onTransitionEnd: b} ) 637 }, g.prototype.onRevealTransitionEnd = function () { 638 this.isHidden || this.emitEvent( "reveal" ) 639 }, g.prototype.getHideRevealTransitionEndProperty = function (a) { 640 var b = this.layout.options[a]; 641 if (b.opacity) { 642 return"opacity"; 643 } 644 for (var c in b) { 645 return c 646 } 647 }, g.prototype.hide = function () { 648 this.isHidden = ! 0, this.css( {display: ""} ); 649 var a = this.layout.options, b = {}, c = this.getHideRevealTransitionEndProperty( "hiddenStyle" ); 650 b[c] = this.onHideTransitionEnd, this.transition( {from: a.visibleStyle, to: a.hiddenStyle, isCleaning: ! 0, onTransitionEnd: b} ) 651 }, g.prototype.onHideTransitionEnd = function () { 652 this.isHidden && (this.css( {display: "none"} ), this.emitEvent( "hide" )) 653 }, g.prototype.destroy = function () { 654 this.css( {position: "", left: "", right: "", top: "", bottom: "", transition: "", transform: ""} ) 655 }, g 656}), function (a, b) { 657 "use strict"; 658 "function" == typeof define && define.amd ? define( 659 "outlayer/outlayer", 660 ["eventie/eventie", "eventEmitter/EventEmitter", "get-size/get-size", "fizzy-ui-utils/utils", "./item"], 661 function (c, d, e, f, g) { 662 return b( a, c, d, e, f, g ) 663 } 664 ) : "object" == typeof exports ? module.exports = b( a, require( "eventie" ), require( "wolfy87-eventemitter" ), require( "get-size" ), require( "fizzy-ui-utils" ), require( "./item" ) ) : a.Outlayer = b( a, a.eventie, a.EventEmitter, a.getSize, a.fizzyUIUtils, a.Outlayer.Item ) 665}(window, function (a, b, c, d, e, f) { 666 "use strict"; 667 function g(a, b) { 668 var c = e.getQueryElement( a ); 669 if ( ! c) { 670 return void( h && h.error( "Bad element for " + this.constructor.namespace + ": " + (c || a) ) ); 671 } 672 this.element = c, i && (this.$element = i( this.element )), this.options = e.extend( {}, this.constructor.defaults ), this.option( b ); 673 var d = ++k; 674 this.element.outlayerGUID = d, l[d] = this, this._create(), this.options.isInitLayout && this.layout() 675 } 676 var h = a.console, i = a.jQuery, j = function () { 677 }, k = 0, l = {}; 678 return g.namespace = "outlayer", g.Item = f, g.defaults = {c
678ontainerStyle: {position: "relative"}, isInitLayout: ! 0, isOriginLeft: ! 0, isOriginTop: ! 0, isResizeBound: ! 0, isResizingContainer: ! 0, transitionDuration: "0.4s", hiddenStyle: {opacity: 0, transform: "scale(0.001)"}, visibleStyle: {opacity: 1, transform: "scale(1)"}}, e.extend( g.prototype, c.prototype ), g.prototype.option = function (a) { 679 e.extend( this.options, a ) 680 }, g.prototype._create = function () { 681 this.reloadItems(), this.stamps = [], this.stamp( this.options.stamp ), e.extend( this.element.style, this.options.containerStyle ), this.options.isResizeBound && this.bindResize() 682 }, g.prototype.reloadItems = function () { 683 this.items = this._itemize( this.element.children ) 684 }, g.prototype._itemize = function (a) { 685 for (var b = this._filterFindItemElements( a ), c = this.constructor.Item, d = [], e = 0, f = b.length; f > e; e++) { 686 var g = b[e], h = new c( g, this ); 687 d.push( h ) 688 } 689 return d 690 }, g.prototype._filterFindItemElements = function (a) { 691 return e.filterFindElements( a, this.options.itemSelector ) 692 }, g.prototype.getItemElements = function () { 693 for (var a = [], b = 0, c = this.items.length; c > b; b++) { 694 a.push( this.items[b].element ); 695 } 696 return a 697 }, g.prototype.layout = function () { 698 this._resetLayout(), this._manageStamps(); 699 var a = void 0 !== this.options.isLayoutInstant ? this.options.isLayoutInstant : ! this._isLayoutInited; 700 this.layoutItems( this.items, a ), this._isLayoutInited = ! 0 701 }, g.prototype._init = g.prototype.layout, g.prototype._resetLayout = function () { 702 this.getSize() 703 }, g.prototype.getSize = function () { 704 this.size = d( this.element ) 705 }, g.prototype._getMeasurement = function (a, b) { 706 var c, f = this.options[a]; 707 f ? ("string" == typeof f ? c = this.element.querySelector( f ) : e.isElement( f ) && (c = f), this[a] = c ? d( c )[b] : f) : this[a] = 0 708 }, g.prototype.layoutItems = function (a, b) { 709 a = this._getItemsForLayout( a ), this._layoutItems( a, b ), this._postLayout() 710 }, g.prototype._getItemsForLayout = function (a) { 711 for (var b = [], c = 0, d = a.length; d > c; c++) { 712 var e = a[c]; 713 e.isIgnored || b.push( e ) 714 } 715 return b 716 }, g.prototype._layoutItems = function (a, b) { 717 if (this._emitCompleteOnItems( "layout", a ), a && a.length) { 718 for (var c = [], d = 0, e = a.length; e > d; d++) { 719 var f = a[d], g = this._getItemLayoutPosition( f ); 720 g.item = f, g.isInstant = b || f.isLayoutInstant, c.push( g ) 721 } 722 this._processLayoutQueue( c ) 723 } 724 }, g.prototype._getItemLayoutPosition = function () { 725 return{x: 0, y: 0} 726 }, g.prototype._processLayoutQueue = function (a) { 727 for (var b = 0, c = a.length; c > b; b++) { 728 var d = a[b]; 729 this._positionItem( d.item, d.x, d.y, d.isInstant ) 730 } 731 }, g.prototype._positionItem = function (a, b, c, d) { 732 d ? a.goTo( b, c ) : a.moveTo( b, c ) 733 }, g.prototype._postLayout = function () { 734 this.resizeContainer() 735 }, g.prototype.resizeContainer = function () { 736 if (this.options.isResizingContainer) { 737 var a = this._getContainerSize(); 738 a && (this._setContainerMeasure( a.width, ! 0 ), this._setContainerMeasure( a.height, ! 1 )) 739 } 740 }, g.prototype._getContainerSize = j, g.prototype._setContainerMeasure = function (a, b) { 741 if (void 0 !== a) { 742 var c = this.size; 743 c.isBorderBox && (a += b ? c.paddingLeft + c.paddingRight + c.borderLeftWidth + c.borderRightWidth : c.paddingBottom + c.paddingTop + c.borderTopWidth + c.borderBottomWidth), a = Math.max( a, 0 ), this.element.style[b ? "width" : "height"] = a + "px" 744 } 745 }, g.prototype._emitCompleteOnItems = function (a, b) { 746 function c() { 747 e.dispatchEvent( a + "Complete", null, [b] ) 748 } 749 function d() { 750 g++, g === f && c() 751 } 752 var e = this, f = b.length; 753 if ( ! b || ! f) { 754 return void c(); 755 } 756 for (var g = 0, h = 0, i = b.length; i > h; h++) { 757 var j = b[h]; 758 j.once( a, d ) 759 } 760 }, g.prototype.dispatchEvent = function (a, b, c) { 761 var d = b ? [b].concat( c ) : c; 762 if (this.emitEvent( a, d ), i) { 763 if (this.$element = this.$element || i( this.element ), b) { 764 var e = i.Event( b ); 765 e.type = a, this.$element.trigger( e, c ) 766 } else { 767 this.$element.trigger( a, c ) 768 } 769 } 770 }, g.prototype.ignore = function (a) { 771 var b = this.getItem( a ); 772 b && (b.isIgnored = ! 0) 773 }, g.prototype.unignore = function (a) { 774 var b = this.getItem( a ); 775 b && delete b.isIgnored 776 }, g.prototype.stamp = function (a) { 777 if (a = this._find( a )) {
778 this.stamps = this.stamps.concat( a ); 779 for (var b = 0, c = a.length; c > b; b++) { 780 var d = a[b]; 781 this.ignore( d ) 782 } 783 } 784 }, g.prototype.unstamp = function (a) { 785 if (a = this._find( a )) { 786 for (var b = 0, c = a.length; c > b; b++) { 787 var d = a[b]; 788 e.removeFrom( this.stamps, d ), this.unignore( d ) 789 } 790 } 791 }, g.prototype._find = function (a) { 792 return a ? ("string" == typeof a && (a = this.element.querySelectorAll( a )), a = e.makeArray( a )) : void 0 793 }, g.prototype._manageStamps = function () { 794 if (this.stamps && this.stamps.length) { 795 this._getBoundingRect(); 796 for (var a = 0, b = this.stamps.length; b > a; a++) { 797 var c = this.stamps[a]; 798 this._manageStamp( c ) 799 } 800 } 801 }, g.prototype._getBoundingRect = function () { 802 var a = this.element.getBoundingClientRect(), b = this.size; 803 this._boundingRect = {left: a.left + b.paddingLeft + b.borderLeftWidth, top: a.top + b.paddingTop + b.borderTopWidth, right: a.right - (b.paddingRight + b.borderRightWidth), bottom: a.bottom - (b.paddingBottom + b.borderBottomWidth)} 804 }, g.prototype._manageStamp = j, g.prototype._getElementOffset = function (a) { 805 var b = a.getBoundingClientRect(), c = this._boundingRect, e = d( a ), f = {left: b.left - c.left - e.marginLeft, top: b.top - c.top - e.marginTop, right: c.right - b.right - e.marginRight, bottom: c.bottom - b.bottom - e.marginBottom}; 806 return f 807 }, g.prototype.handleEvent = function (a) { 808 var b = "on" + a.type; 809 this[b] && this[b](a) 810 }, g.prototype.bindResize = function () { 811 this.isResizeBound || (b.bind( a, "resize", this ), this.isResizeBound = ! 0) 812 }, g.prototype.unbindResize = function () { 813 this.isResizeBound && b.unbind( a, "resize", this ), this.isResizeBound = ! 1 814 }, g.prototype.onresize = function () { 815 function a() { 816 b.resize(), delete b.resizeTimeout 817 } 818 this.resizeTimeout && clearTimeout( this.resizeTimeout ); 819 var b = this; 820 this.resizeTimeout = setTimeout( a, 100 ) 821 }, g.prototype.resize = function () { 822 this.isResizeBound && this.needsResizeLayout() && this.layout() 823 }, g.prototype.needsResizeLayout = function () { 824 var a = d( this.element ), b = this.size && a; 825 return b && a.innerWidth !== this.size.innerWidth 826 }, g.prototype.addItems = function (a) { 827 var b = this._itemize( a ); 828 return b.length && (this.items = this.items.concat( b )), b 829 }, g.prototype.appended = function (a) { 830 var b = this.addItems( a ); 831 b.length && (this.layoutItems( b, ! 0 ), this.reveal( b )) 832 }, g.prototype.prepended = function (a) { 833 var b = this._itemize( a ); 834 if (b.length) { 835 var c = this.items.slice( 0 ); 836 this.items = b.concat( c ), this._resetLayout(), this._manageStamps(), this.layoutItems( b, ! 0 ), this.reveal( b ), this.layoutItems( c ) 837 } 838 }, g.prototype.reveal = function (a) { 839 this._emitCompleteOnItems( "reveal", a ); 840 for (var b = a && a.length, c = 0; b && b > c; c++) { 841 var d = a[c]; 842 d.reveal() 843 } 844 }, g.prototype.hide = function (a) { 845 this._emitCompleteOnItems( "hide", a ); 846 for (var b = a && a.length, c = 0; b && b > c; c++) { 847 var d = a[c]; 848 d.hide() 849 } 850 }, g.prototype.revealItemElements = function (a) { 851 var b = this.getItems( a ); 852 this.reveal( b ) 853 }, g.prototype.hideItemElements = function (a) { 854 var b = this.getItems( a ); 855 this.hide( b ) 856 }, g.prototype.getItem = function (a) { 857 for (var b = 0, c = this.items.length; c > b; b++) { 858 var d = this.items[b]; 859 if (d.element === a) { 860 return d 861 } 862 } 863 }, g.prototype.getItems = function (a) { 864 a = e.makeArray( a ); 865 for (var b = [], c = 0, d = a.length; d > c; c++) { 866 var f = a[c], g = this.getItem( f ); 867 g && b.push( g ) 868 } 869 return b 870 }, g.prototype.remove = function (a) { 871 var b = this.getItems( a ); 872 if (this._emitCompleteOnItems( "remove", b ), b && b.length) { 873 for (var c = 0, d = b.length; d > c; c++) { 874 var f = b[c]; 875 f.remove(), e.removeFrom( this.items, f ) 876 } 877 } 878 }, g.prototype.destroy = function () { 879 var a = this.element.style; 880 a.height = "", a.position = "", a.width = ""; 881 for (var b = 0, c = this.items.length; c > b; b++) { 882 var d = this.items[b]; 883 d.destroy() 884 } 885 this.unbindResize(); 886 var e = this.element.outlayerGUID; 887 delete l[e], delete this.element.outlayerGUID, i && i.removeData( this.element, this.constructor.namespace ) 888 }, g.data = function (a) { 889 a = e.getQueryElement( a ); 890 var b = a && a.outlayerGUID; 891 return b && l[b] 892 }, g.create = function (a, b) { 893 function c() { 894 g.apply( this, arguments ) 895 } 896 return Object.create ? c.prototype = Object.create( g.prototype ) : e.extend( c.prototype, g.prototype ), c.prototype.constructor = c, c.defaults = e.extend( {}, g.defaults ), e.extend( c.defaults, b ), c.prototype.settings = {}, c.namespace = a, c.data = g.data, c.Item = function () { 897 f.apply( this, arguments ) 898 }, c.Item.prototype = new f(), e.htmlInit( c, a ), i && i.bridget && i.bridget( a, c ), c 899 }, g.Item = f, g 900}), function (a, b) { 901 "use strict"; 902 "function" == typeof define && define.amd ? define( "isotope/js/item", ["outlayer/outlayer"], b ) : "object" == typeof exports ? module.exports = b( require( "outlayer" ) ) : (a.Isotope = a.Isotope || {}, a.Isotope.Item = b( a.Outlayer )) 903}(window, function (a) { 904 "use strict"; 905 function b() { 906 a.Item.apply( this, arguments ) 907 } 908 b.prototype = new a.Item(), b.prototype._create = function () { 909 this.id = this.layout.itemGUID++, a.Item.prototype._create.call( this ), this.sortData = {} 910 }, b.prototype.updateSortData = function () { 911 if ( ! this.isIgnored) { 912 this.sortData.id = this.id, this.sortData["original-order"] = this.id, this.sortData.random = Math.random(); 913 var a = this.layout.options.getSortData, b = this.layout._sorters; 914 for (var c in a) { 915 var d = b[c]; 916 this.sortData[c] = d( this.element, this ) 917 } 918 } 919 }; 920 var c = b.prototype.destroy; 921 return b.prototype.destroy = function () { 922 c.apply( this, arguments ), this.css( {display: ""} ) 923 }, b 924}), function (a, b) { 925 "use strict"; 926 "function" == typeof define && define.amd ? define( "isotope/js/layout-mode", ["get-size/get-size", "outlayer/outlayer"], b ) : "object" == typeof exports ? module.exports = b( require( "get-size" ), require( "outlayer" ) ) : (a.Isotope = a.Isotope || {}, a.Isotope.LayoutMode = b( a.getSize, a.Outlayer )) 927}(window, function (a, b) { 928 "use strict"; 929 function c(a) { 930 this.isotope = a, a && (this.options = a.options[this.namespace], this.element = a.element, this.items = a.filteredItems, this.size = a.size) 931 } 932 return function () { 933 function a(a) { 934 return function () { 935 return b.prototype[a].apply( this.isotope, arguments ) 936 } 937 } 938 for (var d = ["_resetLayout", "_getItemLayoutPosition", "_manageStamp", "_getContainerSize", "_getElementOffset", "needsResizeLayout"], e = 0, f = d.length; f > e; e++) { 939 var g = d[e]; 940 c.prototype[g] = a( g ) 941 } 942 }(), c.prototype.needsVerticalResizeLayout = function () { 943 var b = a( this.isotope.element ), c = this.isotope.size && b;
vendor: 14,767 bytes, lines 944-1261
944 return c && b.innerHeight != this.isotope.size.innerHeight 945 }, c.prototype._getMeasurement = function () { 946 this.isotope._getMeasurement.apply( this, arguments ) 947 }, c.prototype.getColumnWidth = function () { 948 this.getSegmentSize( "column", "Width" ) 949 }, c.prototype.getRowHeight = function () { 950 this.getSegmentSize( "row", "Height" ) 951 }, c.prototype.getSegmentSize = function (a, b) { 952 var c = a + b, d = "outer" + b; 953 if (this._getMeasurement( c, d ), ! this[c]) { 954 var e = this.getFirstItemSize(); 955 this[c] = e && e[d] || this.isotope.size["inner" + b] 956 } 957 }, c.prototype.getFirstItemSize = function () { 958 var b = this.isotope.filteredItems[0]; 959 return b && b.element && a( b.element ) 960 }, c.prototype.layout = function () { 961 this.isotope.layout.apply( this.isotope, arguments ) 962 }, c.prototype.getSize = function () { 963 this.isotope.getSize(), this.size = this.isotope.size 964 }, c.modes = {}, c.create = function (a, b) { 965 function d() { 966 c.apply( this, arguments ) 967 } 968 return d.prototype = new c(), b && (d.options = b), d.prototype.namespace = a, c.modes[a] = d, d 969 }, c 970}), function (a, b) { 971 "use strict"; 972 "function" == typeof define && define.amd ? define( "masonry/masonry", ["outlayer/outlayer", "get-size/get-size", "fizzy-ui-utils/utils"], b ) : "object" == typeof exports ? module.exports = b( require( "outlayer" ), require( "get-size" ), require( "fizzy-ui-utils" ) ) : a.Masonry = b( a.Outlayer, a.getSize, a.fizzyUIUtils ) 973}(window, function (a, b, c) { 974 var d = a.create( "masonry" ); 975 return d.prototype._resetLayout = function () { 976 this.getSize(), this._getMeasurement( "columnWidth", "outerWidth" ), this._getMeasurement( "gutter", "outerWidth" ), this.measureColumns(); 977 var a = this.cols; 978 for (this.colYs = []; a--; ) { 979 this.colYs.push( 0 ); 980 } 981 this.maxY = 0 982 }, d.prototype.measureColumns = function () { 983 if (this.getContainerWidth(), ! this.columnWidth) { 984 var a = this.items[0], c = a && a.element; 985 this.columnWidth = c && b( c ).outerWidth || this.containerWidth 986 } 987 var d = this.columnWidth += this.gutter, e = this.containerWidth + this.gutter, f = e / d, g = d - e % d, h = g && 1 > g ? "round" : "floor"; 988 f = Math[h](f), this.cols = Math.max( f, 1 ) 989 }, d.prototype.getContainerWidth = function () { 990 var a = this.options.isFitWidth ? this.element.parentNode : this.element, c = b( a ); 991 this.containerWidth = c && c.innerWidth 992 }, d.prototype._getItemLayoutPosition = function (a) { 993 a.getSize(); 994 var b = a.size.outerWidth % this.columnWidth, d = b && 1 > b ? "round" : "ceil", e = Math[d](a.size.outerWidth / this.columnWidth); 995 e = Math.min( e, this.cols ); 996 for (var f = this._getColGroup( e ), g = Math.min.apply( Math, f ), h = c.indexOf( f, g ), i = {x: this.columnWidth * h, y: g}, j = g + a.size.outerHeight, k = this.cols + 1 - f.length, l = 0; k > l; l++) { 997 this.colYs[h + l] = j; 998 } 999 return i 1000 }, d.prototype._getColGroup = function (a) { 1001 if (2 > a) { 1002 return this.colYs; 1003 } 1004 for (var b = [], c = this.cols + 1 - a, d = 0; c > d; d++) { 1005 var e = this.colYs.slice( d, d + a ); 1006 b[d] = Math.max.apply( Math, e ) 1007 } 1008 return b 1009 }, d.prototype._manageStamp = function (a) { 1010 var c = b( a ), d = this._getElementOffset( a ), e = this.options.isOriginLeft ? d.left : d.right, f = e + c.outerWidth, g = Math.floor( e / this.columnWidth ); 1011 g = Math.max( 0, g ); 1012 var h = Math.floor( f / this.columnWidth ); 1013 h -= f % this.columnWidth ? 0 : 1, h = Math.min( this.cols - 1, h ); 1014 for (var i = (this.options.isOriginTop ? d.top : d.bottom) + c.outerHeight, j = g; h >= j; j++) { 1015 this.colYs[j] = Math.max( i, this.colYs[j] ) 1016 } 1017 }, d.prototype._getContainerSize = function () { 1018 this.maxY = Math.max.apply( Math, this.colYs ); 1019 var a = {height: this.maxY}; 1020 return this.options.isFitWidth && (a.width = this._getContainerFitWidth()), a 1021 }, d.prototype._getContainerFitWidth = function () { 1022 for (var a = 0, b = this.cols; --b && 0 === this.colYs[b]; ) { 1023 a++; 1024 } 1025 return(this.cols - a) * this.columnWidth - this.gutter 1026 }, d.prototype.needsResizeLayout = function () { 1027 var a = this.containerWidth; 1028 return this.getContainerWidth(), a !== this.containerWidth 1029 }, d 1030}), function (a, b) { 1031 "use strict"; 1032 "function" == typeof define && define.amd ? define( "isotope/js/layout-modes/masonry", ["../layout-mode", "masonry/masonry"], b ) : "object" == typeof exports ? module.exports = b( require( "../layout-mode" ), require( "masonry-layout" ) ) : b( a.Isotope.LayoutMode, a.Masonry ) 1033}(window, function (a, b) { 1034 "use strict"; 1035 function c(a, b) { 1036 for (var c in b) { 1037 a[c] = b[c]; 1038 } 1039 return a 1040 } 1041 var d = a.create( "masonry" ), e = d.prototype._getElementOffset, f = d.prototype.layout, g = d.prototype._getMeasurement; 1042 c( d.prototype, b.prototype ), d.prototype._getElementOffset = e, d.prototype.layout = f, d.prototype._getMeasurement = g; 1043 var h = d.prototype.measureColumns; 1044 d.prototype.measureColumns = function () { 1045 this.items = this.isotope.filteredItems, h.call( this ) 1046 }; 1047 var i = d.prototype._manageStamp; 1048 return d.prototype._manageStamp = function () { 1049 this.options.isOriginLeft = this.isotope.options.isOriginLeft, this.options.isOriginTop = this.isotope.options.isOriginTop, i.apply( this, arguments ) 1050 }, d 1051}), function (a, b) { 1052 "use strict"; 1053 "function" == typeof define && define.amd ? define( "isotope/js/layout-modes/fit-rows", ["../layout-mode"], b ) : "object" == typeof exports ? module.exports = b( require( "../layout-mode" ) ) : b( a.Isotope.LayoutMode ) 1054}(window, function (a) { 1055 "use strict"; 1056 var b = a.create( "fitRows" ); 1057 return b.prototype._resetLayout = function () { 1058 this.x = 0, this.y = 0, this.maxY = 0, this._getMeasurement( "gutter", "outerWidth" ) 1059 }, b.prototype._getItemLayoutPosition = function (a) { 1060 a.getSize(); 1061 var b = a.size.outerWidth + this.gutter, c = this.isotope.size.innerWidth + this.gutter; 1062 0 !== this.x && b + this.x > c && (this.x = 0, this.y = this.maxY); 1063 var d = {x: this.x, y: this.y}; 1064 return this.maxY = Math.max( this.maxY, this.y + a.size.outerHeight ), this.x += b, d 1065 }, b.prototype._getContainerSize = function () { 1066 return{height: this.maxY} 1067 }, b 1068}), function (a, b) { 1069 "use strict"; 1070 "function" == typeof define && define.amd ? define( "isotope/js/layout-modes/vertical", ["../layout-mode"], b ) : "object" == typeof exports ? module.exports = b( require( "../layout-mode" ) ) : b( a.Isotope.LayoutMode ) 1071}(window, function (a) { 1072 "use strict"; 1073 var b = a.create( "vertical", {horizontalAlignment: 0} ); 1074 return b.prototype._resetLayout = function () { 1075 this.y = 0 1076 }, b.prototype._getItemLayoutPosition = function (a) { 1077 a.getSize(); 1078 var b = (this.isotope.size.innerWidth - a.size.outerWidth) * this.options.horizontalAlignment, c = this.y; 1079 return this.y += a.size.outerHeight, {x: b, y: c} 1080 }, b.prototype._getContainerSize = function () { 1081 return{height: this.y} 1082 }, b 1083}), function (a, b) { 1084 "use strict"; 1085 "function" == typeof define && define.amd ? define( 1086 ["outlayer/outlayer", "get-size/get-size", "matches-selector/matches-selector", "fizzy-ui-utils/utils", "isotope/js/item", "isotope/js/layout-mode", "isotope/js/layout-modes/masonry", "isotope/js/layout-modes/fit-rows", "isotope/js/layout-modes/vertical"], 1087 function (c, d, e, f, g, h) { 1088 return b( a, c, d, e, f, g, h ) 1089 } 1090 ) : "object" == typeof exports ? module.exports = b( a, require( "outlayer" ), require( "get-size" ), require( "desandro-matches-selector" ), require( "fizzy-ui-utils" ), require( "./item" ), require( "./layout-mode" ), require( "./layout-modes/masonry" ), require( "./layout-modes/fit-rows" ), require( "./layout-modes/vertical" ) ) : a.Isotope = b( a, a.Outlayer, a.getSize, a.matchesSelector, a.fizzyUIUtils, a.Isotope.Item, a.Isotope.LayoutMode ) 1091}(window, function (a, b, c, d, e, f, g) { 1092 function h(a, b) { 1093 return function (c, d) { 1094 for (var e = 0, f = a.length; f > e; e++) { 1095 var g = a[e], h = c.sortData[g], i = d.sortData[g]; 1096 if (h > i || i > h) { 1097 var j = void 0 !== b[g] ? b[g] : b, k = j ? 1 : -1; 1098 return(h > i ? 1 : -1) * k 1099 } 1100 } 1101 return 0 1102 } 1103 } 1104 var i = a.jQuery, j = String.prototype.trim ? function (a) { 1105 return a.trim() 1106 } : function (a) { 1107 return a.replace( /^\s+|\s+$/g, "" ) 1108 }, k = document.documentElement, l = k.textContent ? function (a) { 1109 return a.textContent 1110 } : function (a) { 1111 return a.innerText 1112 }, m = b.create( "isotope", {layoutMode: "masonry", isJQueryFiltering: ! 0, sortAscending: ! 0} ); 1113 m.Item = f, m.LayoutMode = g, m.prototype._create = function () { 1114 this.itemGUID = 0, this._sorters = {}, this._getSorters(), b.prototype._create.call( this ), this.modes = {}, this.filteredItems = this.items, this.sortHistory = ["original-order"]; 1115 for (var a in g.modes) { 1116 this._initLayoutMode( a ) 1117 } 1118 }, m.prototype.reloadItems = function () { 1119 this.itemGUID = 0, b.prototype.reloadItems.call( this ) 1120 }, m.prototype._itemize = function () { 1121 for (var a = b.prototype._itemize.apply( this, arguments ), c = 0, d = a.length; d > c; c++) { 1122 var e = a[c]; 1123 e.id = this.itemGUID++ 1124 } 1125 return this._updateItemsSortData( a ), a 1126 }, m.prototype._initLayoutMode = function (a) { 1127 var b = g.modes[a], c = this.options[a] || {}; 1128 this.options[a] = b.options ? e.extend( b.options, c ) : c, this.modes[a] = new b( this ) 1129 }, m.prototype.layout = function () { 1130 return ! this._isLayoutInited && this.options.isInitLayout ? void this.arrange() : void this._layout() 1131 }, m.prototype._layout = function () { 1132 var a = this._getIsInstant(); 1133 this._resetLayout(), this._manageStamps(), this.layoutItems( this.filteredItems, a ), this._isLayoutInited = ! 0 1134 }, m.prototype.arrange = function (a) { 1135 function b() { 1136 d.reveal( c.needReveal ), d.hide( c.needHide ) 1137 } 1138 this.option( a ), this._getIsInstant(); 1139 var c = this._filter( this.items ); 1140 this.filteredItems = c.matches; 1141 var d = this; 1142 this._bindArrangeComplete(), this._isInstant ? this._noTransition( b ) : b(), this._sort(), this._layout() 1143 }, m.prototype._init = m.prototype.arrange, m.prototype._getIsInstant = function () { 1144 var a = void 0 !== this.options.isLayoutInstant ? this.options.isLayoutInstant : ! this._isLayoutInited; 1145 return this._isInstant = a, a 1146 }, m.prototype._bindArrangeComplete = function () { 1147 function a() { 1148 b && c && d && e.dispatchEvent( "arrangeComplete", null, [e.filteredItems] ) 1149 } 1150 var b, c, d, e = this; 1151 this.once( 1152 "layoutComplete", 1153 function () { 1154 b = ! 0, a() 1155 } 1156 ), this.once( 1157 "hideComplete", 1158 function () { 1159 c = ! 0, a() 1160 } 1161 ), this.once( 1162 "revealComplete", 1163 function () { 1164 d = ! 0, a() 1165 } 1166 ) 1167 }, m.prototype._filter = function (a) { 1168 var b = this.options.filter; 1169 b = b || "*"; 1170 for (var c = [], d = [], e = [], f = this._getFilterTest( b ), g = 0, h = a.length; h > g; g++) { 1171 var i = a[g]; 1172 if ( ! i.isIgnored) { 1173 var j = f( i ); 1174 j && c.push( i ), j && i.isHidden ? d.push( i ) : j || i.isHidden || e.push( i ) 1175 } 1176 } 1177 return{matches: c, needReveal: d, needHide: e} 1178 }, m.prototype._getFilterTest = function (a) { 1179 return i && this.options.isJQueryFiltering ? function (b) { 1180 return i( b.element ).is( a ) 1181 } : "function" == typeof a ? function (b) { 1182 return a( b.element ) 1183 } : function (b) { 1184 return d( b.element, a ) 1185 } 1186 }, m.prototype.updateSortData = function (a) { 1187 var b; 1188 a ? (a = e.makeArray( a ), b = this.getItems( a )) : b = this.items, this._getSorters(), this._updateItemsSortData( b ) 1189 }, m.prototype._getSorters = function () { 1190 var a = this.options.getSortData; 1191 for (var b in a) { 1192 var c = a[b]; 1193 this._sorters[b] = n( c ) 1194 } 1195 }, m.prototype._updateItemsSortData = function (a) { 1196 for (var b = a && a.length, c = 0; b && b > c; c++) { 1197 var d = a[c]; 1198 d.updateSortData() 1199 } 1200 }; 1201 var n = function () { 1202 function a(a) { 1203 if ("string" != typeof a) { 1204 return a; 1205 } 1206 var c = j( a ).split( " " ), d = c[0], e = d.match( /^\[(.+)\]$/ ), f = e && e[1], g = b( f, d ), h = m.sortDataParsers[c[1]]; 1207 return a = h ? function (a) { 1208 return a && h( g( a ) ) 1209 } : function (a) { 1210 return a && g( a ) 1211 } 1212 } 1213 function b(a, b) { 1214 var c; 1215 return c = a ? function (b) { 1216 return b.getAttribute( a ) 1217 } : function (a) { 1218 var c = a.querySelector( b ); 1219 return c && l( c ) 1220 } 1221 } 1222 return a 1223 }(); 1224 m.sortDataParsers = {parseInt: function (a) { 1225 return parseInt( a, 10 ) 1226 }, parseFloat: function (a) { 1227 return parseFloat( a ) 1228 }}, m.prototype._sort = function () { 1229 var a = this.options.sortBy; 1230 if (a) { 1231 var b = [].concat.apply( a, this.sortHistory ), c = h( b, this.options.sortAscending ); 1232 this.filteredItems.sort( c ), a != this.sortHistory[0] && this.sortHistory.unshift( a ) 1233 } 1234 }, m.prototype._mode = function () { 1235 var a = this.options.layoutMode, b = this.modes[a]; 1236 if ( ! b) { 1237 throw new Error( "No layout mode: " + a ); 1238 } 1239 return b.options = this.options[a], b 1240 }, m.prototype._resetLayout = function () { 1241 b.prototype._resetLayout.call( this ), this._mode()._resetLayout() 1242 }, m.prototype._getItemLayoutPosition = function (a) { 1243 return this._mode()._getItemLayoutPosition( a ) 1244 }, m.prototype._manageStamp = function (a) { 1245 this._mode()._manageStamp( a ) 1246 }, m.prototype._getContainerSize = function () { 1247 return this._mode()._getContainerSize() 1248 }, m.prototype.needsResizeLayout = function () { 1249 return this._mode().needsResizeLayout() 1250 }, m.prototype.appended = function (a) { 1251 var b = this.addItems( a ); 1252 if (b.length) { 1253 var c = this._filterRevealAdded( b ); 1254 this.filteredItems = this.filteredItems.concat( c ) 1255 } 1256 }, m.prototype.prepended = function (a) { 1257 var b = this._itemize( a ); 1258 if (b.length) { 1259 this._resetLayout(), this._manageStamps(); 1260 var c = this._filterRevealAdded( b ); 1261 this.layoutItems( this.filteredItems ), this.filteredItems = c.c
1261oncat( this.filteredItems ), this.items = b.concat( this.items ) 1262 } 1263 }, m.prototype._filterRevealAdded = function (a) { 1264 var b = this._filter( a ); 1265 return this.hide( b.needHide ), this.reveal( b.matches ), this.layoutItems( b.matches, ! 0 ), b.matches 1266 }, m.prototype.insert = function (a) { 1267 var b = this.addItems( a ); 1268 if (b.length) { 1269 var c, d, e = b.length; 1270 for (c = 0; e > c; c++) { 1271 d = b[c], this.element.appendChild( d.element ); 1272 } 1273 var f = this._filter( b ).matches; 1274 for (c = 0; e > c; c++) { 1275 b[c].isLayoutInstant = ! 0; 1276 } 1277 for (this.arrange(), c = 0; e > c; c++) { 1278 delete b[c].isLayoutInstant; 1279 } 1280 this.reveal( f ) 1281 } 1282 }; 1283 var o = m.prototype.remove; 1284 return m.prototype.remove = function (a) { 1285 a = e.makeArray( a ); 1286 var b = this.getItems( a ); 1287 o.call( this, a ); 1288 var c = b && b.length; 1289 if (c) { 1290 for (var d = 0; c > d; d++) { 1291 var f = b[d]; 1292 e.removeFrom( this.filteredItems, f ) 1293 } 1294 } 1295 }, m.prototype.shuffle = function () { 1296 for (var a = 0, b = this.items.length; b > a; a++) { 1297 var c = this.items[a]; 1298 c.sortData.random = Math.random() 1299 } 1300 this.options.sortBy = "random", this._sort(), this._layout() 1301 }, m.prototype._noTransition = function (a) { 1302 var b = this.options.transitionDuration; 1303 this.options.transitionDuration = 0; 1304 var c = a.call( this ); 1305 return this.options.transitionDuration = b, c 1306 }, m.prototype.getFilteredItemElements = function () { 1307 for (var a = [], b = 0, c = this.filteredItems.length; c > b; b++) { 1308 a.push( this.filteredItems[b].element ); 1309 } 1310 return a 1311 }, m 1312});
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.