/*! This file is auto-generated */ /*! * imagesLoaded PACKAGED v5.0.0 * JavaScript is all like "You images are done yet or what?" * MIT License */ ! function(t, e) { "object" == typeof module && module.exports ? module.exports = e() : t.EvEmitter = e() }("undefined" != typeof window ? window : this, (function() { function t() {} let e = t.prototype; return e.on = function(t, e) { if (!t || !e) return this; let i = this._events = this._events || {}, s = i[t] = i[t] || []; return s.includes(e) || s.push(e), this }, e.once = function(t, e) { if (!t || !e) return this; this.on(t, e); let i = this._onceEvents = this._onceEvents || {}; return (i[t] = i[t] || {})[e] = !0, this }, e.off = function(t, e) { let i = this._events && this._events[t]; if (!i || !i.length) return this; let s = i.indexOf(e); return -1 != s && i.splice(s, 1), this }, e.emitEvent = function(t, e) { let i = this._events && this._events[t]; if (!i || !i.length) return this; i = i.slice(0), e = e || []; let s = this._onceEvents && this._onceEvents[t]; for (let n of i) { s && s[n] && (this.off(t, n), delete s[n]), n.apply(this, e) } return this }, e.allOff = function() { return delete this._events, delete this._onceEvents, this }, t })), /*! * imagesLoaded v5.0.0 * JavaScript is all like "You images are done yet or what?" * MIT License */ function(t, e) { "object" == typeof module && module.exports ? module.exports = e(t, require("ev-emitter")) : t.imagesLoaded = e(t, t.EvEmitter) }("undefined" != typeof window ? window : this, (function(t, e) { let i = t.jQuery, s = t.console; function n(t, e, o) { if (!(this instanceof n)) return new n(t, e, o); let r = t; var h; ("string" == typeof t && (r = document.querySelectorAll(t)), r) ? (this.elements = (h = r, Array.isArray(h) ? h : "object" == typeof h && "number" == typeof h.length ? [...h] : [h]), this.options = {}, "function" == typeof e ? o = e : Object.assign(this.options, e), o && this.on("always", o), this.getImages(), i && (this.jqDeferred = new i.Deferred), setTimeout(this.check.bind(this))) : s.error(`Bad element for imagesLoaded ${r||t}`) } n.prototype = Object.create(e.prototype), n.prototype.getImages = function() { this.images = [], this.elements.forEach(this.addElementImages, this) }; const o = [1, 9, 11]; n.prototype.addElementImages = function(t) { "IMG" === t.nodeName && this.addImage(t), !0 === this.options.background && this.addElementBackgroundImages(t); let { nodeType: e } = t; if (!e || !o.includes(e)) return; let i = t.querySelectorAll("img"); for (let t of i) this.addImage(t); if ("string" == typeof this.options.background) { let e = t.querySelectorAll(this.options.background); for (let t of e) this.addElementBackgroundImages(t) } }; const r = /url\((['"])?(.*?)\1\)/gi; function h(t) { this.img = t } function d(t, e) { this.url = t, this.element = e, this.img = new Image } return n.prototype.addElementBackgroundImages = function(t) { let e = getComputedStyle(t); if (!e) return; let i = r.exec(e.backgroundImage); for (; null !== i;) { let s = i && i[2]; s && this.addBackground(s, t), i = r.exec(e.backgroundImage) } }, n.prototype.addImage = function(t) { let e = new h(t); this.images.push(e) }, n.prototype.addBackground = function(t, e) { let i = new d(t, e); this.images.push(i) }, n.prototype.check = function() { if (this.progressedCount = 0, this.hasAnyBroken = !1, !this.images.length) return void this.complete(); let t = (t, e, i) => { setTimeout((() => { this.progress(t, e, i) })) }; this.images.forEach((function(e) { e.once("progress", t), e.check() })) }, n.prototype.progress = function(t, e, i) { this.progressedCount++, this.hasAnyBroken = this.hasAnyBroken || !t.isLoaded, this.emitEvent("progress", [this, t, e]), this.jqDeferred && this.jqDeferred.notify && this.jqDeferred.notify(this, t), this.progressedCount === this.images.length && this.complete(), this.options.debug && s && s.log(`progress: ${i}`, t, e) }, n.prototype.complete = function() { let t = this.hasAnyBroken ? "fail" : "done"; if (this.isComplete = !0, this.emitEvent(t, [this]), this.emitEvent("always", [this]), this.jqDeferred) { let t = this.hasAnyBroken ? "reject" : "resolve"; this.jqDeferred[t](this) } }, h.prototype = Object.create(e.prototype), h.prototype.check = function() { this.getIsImageComplete() ? this.confirm(0 !== this.img.naturalWidth, "naturalWidth") : (this.proxyImage = new Image, this.img.crossOrigin && (this.proxyImage.crossOrigin = this.img.crossOrigin), this.proxyImage.addEventListener("load", this), this.proxyImage.addEventListener("error", this), this.img.addEventListener("load", this), this.img.addEventListener("error", this), this.proxyImage.src = this.img.currentSrc || this.img.src) }, h.prototype.getIsImageComplete = function() { return this.img.complete && this.img.naturalWidth }, h.prototype.confirm = function(t, e) { this.isLoaded = t; let { parentNode: i } = this.img, s = "PICTURE" === i.nodeName ? i : this.img; this.emitEvent("progress", [this, s, e]) }, h.prototype.handleEvent = function(t) { let e = "on" + t.type; this[e] && this[e](t) }, h.prototype.onload = function() { this.confirm(!0, "onload"), this.unbindEvents() }, h.prototype.onerror = function() { this.confirm(!1, "onerror"), this.unbindEvents() }, h.prototype.unbindEvents = function() { this.proxyImage.removeEventListener("load", this), this.proxyImage.removeEventListener("error", this), this.img.removeEventListener("load", this), this.img.removeEventListener("error", this) }, d.prototype = Object.create(h.prototype), d.prototype.check = function() { this.img.addEventListener("load", this), this.img.addEventListener("error", this), this.img.src = this.url, this.getIsImageComplete() && (this.confirm(0 !== this.img.naturalWidth, "naturalWidth"), this.unbindEvents()) }, d.prototype.unbindEvents = function() { this.img.removeEventListener("load", this), this.img.removeEventListener("error", this) }, d.prototype.confirm = function(t, e) { this.isLoaded = t, this.emitEvent("progress", [this, this.element, e]) }, n.makeJQueryPlugin = function(e) { (e = e || t.jQuery) && (i = e, i.fn.imagesLoaded = function(t, e) { return new n(this, t, e).jqDeferred.promise(i(this)) }) }, n.makeJQueryPlugin(), n }));