{ "version": 3, "sources": ["../../src/_js/plugins/images-loaded.js"], "sourcesContent": ["/*!\n * imagesLoaded\n PACKAGED v4.1.4\n * JavaScript is all like \"You images are done yet or what?\"\n * MIT License\n */\n\n/**\n * EvEmitter v1.1.0\n * Lil' event emitter\n * MIT License\n */\n\n/* jshint unused: true, undef: true, strict: true */\n\n( function( global, factory ) {\n // universal module definition\n /* jshint strict: false */ /* globals define, module, window */\n if ( typeof define == 'function' && define.amd ) {\n // AMD - RequireJS\n define( 'ev-emitter/ev-emitter',factory );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS - Browserify, Webpack\n module.exports = factory();\n } else {\n // Browser globals\n global.EvEmitter = factory();\n }\n\n}( typeof window != 'undefined' ? window : this, function() {\n\n\n\nfunction EvEmitter() {}\n\nvar proto = EvEmitter.prototype;\n\nproto.on = function( eventName, listener ) {\n if ( !eventName || !listener ) {\n return;\n }\n // set events hash\n var events = this._events = this._events || {};\n // set listeners array\n var listeners = events[ eventName ] = events[ eventName ] || [];\n // only add once\n if ( listeners.indexOf( listener ) == -1 ) {\n listeners.push( listener );\n }\n\n return this;\n};\n\nproto.once = function( eventName, listener ) {\n if ( !eventName || !listener ) {\n return;\n }\n // add event\n this.on( eventName, listener );\n // set once flag\n // set onceEvents hash\n var onceEvents = this._onceEvents = this._onceEvents || {};\n // set onceListeners object\n var onceListeners = onceEvents[ eventName ] = onceEvents[ eventName ] || {};\n // set flag\n onceListeners[ listener ] = true;\n\n return this;\n};\n\nproto.off = function( eventName, listener ) {\n var listeners = this._events && this._events[ eventName ];\n if ( !listeners || !listeners.length ) {\n return;\n }\n var index = listeners.indexOf( listener );\n if ( index != -1 ) {\n listeners.splice( index, 1 );\n }\n\n return this;\n};\n\nproto.emitEvent = function( eventName, args ) {\n var listeners = this._events && this._events[ eventName ];\n if ( !listeners || !listeners.length ) {\n return;\n }\n // copy over to avoid interference if .off() in listener\n listeners = listeners.slice(0);\n args = args || [];\n // once stuff\n var onceListeners = this._onceEvents && this._onceEvents[ eventName ];\n\n for ( var i=0; i < listeners.length; i++ ) {\n var listener = listeners[i]\n var isOnce = onceListeners && onceListeners[ listener ];\n if ( isOnce ) {\n // remove listener\n // remove before trigger to prevent recursion\n this.off( eventName, listener );\n // unset once flag\n delete onceListeners[ listener ];\n }\n // trigger listener\n listener.apply( this, args );\n }\n\n return this;\n};\n\nproto.allOff = function() {\n delete this._events;\n delete this._onceEvents;\n};\n\nreturn EvEmitter;\n\n}));\n\n/*!\n * imagesLoaded v4.1.4\n * JavaScript is all like \"You images are done yet or what?\"\n * MIT License\n */\n\n( function( window, factory ) { 'use strict';\n // universal module definition\n\n /*global define: false, module: false, require: false */\n\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n 'ev-emitter/ev-emitter'\n ], function( EvEmitter ) {\n return factory( window, EvEmitter );\n });\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('ev-emitter')\n );\n } else {\n // browser global\n window.imagesLoaded = factory(\n window,\n window.EvEmitter\n );\n }\n\n})( typeof window !== 'undefined' ? window : this,\n\n// -------------------------- factory -------------------------- //\n\nfunction factory( window, EvEmitter ) {\n\n\n\nvar $ = window.jQuery;\nvar console = window.console;\n\n// -------------------------- helpers -------------------------- //\n\n// extend objects\nfunction extend( a, b ) {\n for ( var prop in b ) {\n a[ prop ] = b[ prop ];\n }\n return a;\n}\n\nvar arraySlice = Array.prototype.slice;\n\n// turn element or nodeList into an array\nfunction makeArray( obj ) {\n if ( Array.isArray( obj ) ) {\n // use object if already an array\n return obj;\n }\n\n var isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';\n if ( isArrayLike ) {\n // convert nodeList to array\n return arraySlice.call( obj );\n }\n\n // array of single index\n return [ obj ];\n}\n\n// -------------------------- imagesLoaded -------------------------- //\n\n/**\n * @param {Array, Element, NodeList, String} elem\n * @param {Object or Function} options - if function, use as callback\n * @param {Function} onAlways - callback function\n */\nfunction ImagesLoaded( elem, options, onAlways ) {\n // coerce ImagesLoaded() without new, to be new ImagesLoaded()\n if ( !( this instanceof ImagesLoaded ) ) {\n return new ImagesLoaded( elem, options, onAlways );\n }\n // use elem as selector string\n var queryElem = elem;\n if ( typeof elem == 'string' ) {\n queryElem = document.querySelectorAll( elem );\n }\n // bail if bad element\n if ( !queryElem ) {\n console.error( 'Bad element for imagesLoaded ' + ( queryElem || elem ) );\n return;\n }\n\n this.elements = makeArray( queryElem );\n this.options = extend( {}, this.options );\n // shift arguments if no options set\n if ( typeof options == 'function' ) {\n onAlways = options;\n } else {\n extend( this.options, options );\n }\n\n if ( onAlways ) {\n this.on( 'always', onAlways );\n }\n\n this.getImages();\n\n if ( $ ) {\n // add jQuery Deferred object\n this.jqDeferred = new $.Deferred();\n }\n\n // HACK check async to allow time to bind listeners\n setTimeout( this.check.bind( this ) );\n}\n\nImagesLoaded.prototype = Object.create( EvEmitter.prototype );\n\nImagesLoaded.prototype.options = {};\n\nImagesLoaded.prototype.getImages = function() {\n this.images = [];\n\n // filter & find items if we have an item selector\n this.elements.forEach( this.addElementImages, this );\n};\n\n/**\n * @param {Node} element\n */\nImagesLoaded.prototype.addElementImages = function( elem ) {\n // filter siblings\n if ( elem.nodeName == 'IMG' ) {\n this.addImage( elem );\n }\n // get background image on element\n if ( this.options.background === true ) {\n this.addElementBackgroundImages( elem );\n }\n\n // find children\n // no non-element nodes, #143\n var nodeType = elem.nodeType;\n if ( !nodeType || !elementNodeTypes[ nodeType ] ) {\n return;\n }\n var childImgs = elem.querySelectorAll('img');\n // concat childElems to filterFound array\n for ( var i=0; i < childImgs.length; i++ ) {\n var img = childImgs[i];\n this.addImage( img );\n }\n\n // get child background images\n if ( typeof this.options.background == 'string' ) {\n var children = elem.querySelectorAll( this.options.background );\n for ( i=0; i < children.length; i++ ) {\n var child = children[i];\n this.addElementBackgroundImages( child );\n }\n }\n};\n\nvar elementNodeTypes = {\n 1: true,\n 9: true,\n 11: true\n};\n\nImagesLoaded.prototype.addElementBackgroundImages = function( elem ) {\n var style = getComputedStyle( elem );\n if ( !style ) {\n // Firefox returns null if in a hidden iframe https://bugzil.la/548397\n return;\n }\n // get url inside url(\"...\")\n var reURL = /url\\((['\"])?(.*?)\\1\\)/gi;\n var matches = reURL.exec( style.backgroundImage );\n while ( matches !== null ) {\n var url = matches && matches[2];\n if ( url ) {\n this.addBackground( url, elem );\n }\n matches = reURL.exec( style.backgroundImage );\n }\n};\n\n/**\n * @param {Image} img\n */\nImagesLoaded.prototype.addImage = function( img ) {\n var loadingImage = new LoadingImage( img );\n this.images.push( loadingImage );\n};\n\nImagesLoaded.prototype.addBackground = function( url, elem ) {\n var background = new Background( url, elem );\n this.images.push( background );\n};\n\nImagesLoaded.prototype.check = function() {\n var _this = this;\n this.progressedCount = 0;\n this.hasAnyBroken = false;\n // complete if no images\n if ( !this.images.length ) {\n this.complete();\n return;\n }\n\n function onProgress( image, elem, message ) {\n // HACK - Chrome triggers event before object properties have changed. #83\n setTimeout( function() {\n _this.progress( image, elem, message );\n });\n }\n\n this.images.forEach( function( loadingImage ) {\n loadingImage.once( 'progress', onProgress );\n loadingImage.check();\n });\n};\n\nImagesLoaded.prototype.progress = function( image, elem, message ) {\n this.progressedCount++;\n this.hasAnyBroken = this.hasAnyBroken || !image.isLoaded;\n // progress event\n this.emitEvent( 'progress', [ this, image, elem ] );\n if ( this.jqDeferred && this.jqDeferred.notify ) {\n this.jqDeferred.notify( this, image );\n }\n // check if completed\n if ( this.progressedCount == this.images.length ) {\n this.complete();\n }\n\n if ( this.options.debug && console ) {\n console.log( 'progress: ' + message, image, elem );\n }\n};\n\nImagesLoaded.prototype.complete = function() {\n var eventName = this.hasAnyBroken ? 'fail' : 'done';\n this.isComplete = true;\n this.emitEvent( eventName, [ this ] );\n this.emitEvent( 'always', [ this ] );\n if ( this.jqDeferred ) {\n var jqMethod = this.hasAnyBroken ? 'reject' : 'resolve';\n this.jqDeferred[ jqMethod ]( this );\n }\n};\n\n// -------------------------- -------------------------- //\n\nfunction LoadingImage( img ) {\n this.img = img;\n}\n\nLoadingImage.prototype = Object.create( EvEmitter.prototype );\n\nLoadingImage.prototype.check = function() {\n // If complete is true and browser supports natural sizes,\n // try to check for image status manually.\n var isComplete = this.getIsImageComplete();\n if ( isComplete ) {\n // report based on naturalWidth\n this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );\n return;\n }\n\n // If none of the checks above matched, simulate loading on detached element.\n this.proxyImage = new Image();\n this.proxyImage.addEventListener( 'load', this );\n this.proxyImage.addEventListener( 'error', this );\n // bind to image as well for Firefox. #191\n this.img.addEventListener( 'load', this );\n this.img.addEventListener( 'error', this );\n this.proxyImage.src = this.img.src;\n};\n\nLoadingImage.prototype.getIsImageComplete = function() {\n // check for non-zero, non-undefined naturalWidth\n // fixes Safari+InfiniteScroll+Masonry bug infinite-scroll#671\n return this.img.complete && this.img.naturalWidth;\n};\n\nLoadingImage.prototype.confirm = function( isLoaded, message ) {\n this.isLoaded = isLoaded;\n this.emitEvent( 'progress', [ this, this.img, message ] );\n};\n\n// ----- events ----- //\n\n// trigger specified handler for event type\nLoadingImage.prototype.handleEvent = function( event ) {\n var method = 'on' + event.type;\n if ( this[ method ] ) {\n this[ method ]( event );\n }\n};\n\nLoadingImage.prototype.onload = function() {\n this.confirm( true, 'onload' );\n this.unbindEvents();\n};\n\nLoadingImage.prototype.onerror = function() {\n this.confirm( false, 'onerror' );\n this.unbindEvents();\n};\n\nLoadingImage.prototype.unbindEvents = function() {\n this.proxyImage.removeEventListener( 'load', this );\n this.proxyImage.removeEventListener( 'error', this );\n this.img.removeEventListener( 'load', this );\n this.img.removeEventListener( 'error', this );\n};\n\n// -------------------------- Background -------------------------- //\n\nfunction Background( url, element ) {\n this.url = url;\n this.element = element;\n this.img = new Image();\n}\n\n// inherit LoadingImage prototype\nBackground.prototype = Object.create( LoadingImage.prototype );\n\nBackground.prototype.check = function() {\n this.img.addEventListener( 'load', this );\n this.img.addEventListener( 'error', this );\n this.img.src = this.url;\n // check if image is already complete\n var isComplete = this.getIsImageComplete();\n if ( isComplete ) {\n this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );\n this.unbindEvents();\n }\n};\n\nBackground.prototype.unbindEvents = function() {\n this.img.removeEventListener( 'load', this );\n this.img.removeEventListener( 'error', this );\n};\n\nBackground.prototype.confirm = function( isLoaded, message ) {\n this.isLoaded = isLoaded;\n this.emitEvent( 'progress', [ this, this.element, message ] );\n};\n\n// -------------------------- jQuery -------------------------- //\n\nImagesLoaded.makeJQueryPlugin = function( jQuery ) {\n jQuery = jQuery || window.jQuery;\n if ( !jQuery ) {\n return;\n }\n // set local variable\n $ = jQuery;\n // $().imagesLoaded()\n $.fn.imagesLoaded = function( options, callback ) {\n var instance = new ImagesLoaded( this, options, callback );\n return instance.jqDeferred.promise( $(this) );\n };\n};\n// try making plugin\nImagesLoaded.makeJQueryPlugin();\n\n// -------------------------- -------------------------- //\n\nreturn ImagesLoaded;\n\n});\n"], "mappings": "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", "names": ["global", "factory", "EvEmitter", "proto", "eventName", "listener", "events", "listeners", "onceEvents", "onceListeners", "index", "args", "i", "isOnce", "window", "$", "console", "extend", "a", "b", "prop", "arraySlice", "makeArray", "obj", "isArrayLike", "ImagesLoaded", "elem", "options", "onAlways", "queryElem", "nodeType", "elementNodeTypes", "childImgs", "img", "children", "child", "style", "reURL", "matches", "url", "loadingImage", "LoadingImage", "background", "Background", "_this", "onProgress", "image", "message", "jqMethod", "isComplete", "isLoaded", "event", "method", "element", "jQuery", "callback", "instance"] }