9 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).InfiniteGrid=t()}(this,function(){"use strict";var i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var _=function(){return(_=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};function z(e,t){var n={};for(r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function n(e,t,n,i){var r,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var u=e.length-1;0<=u;u--)(r=e[u])&&(s=(o<3?r(s):3<o?r(t,n,s):r(t,n))||s);return 3<o&&s&&Object.defineProperty(t,n,s),s}function h(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(var i=Array(e),r=0,t=0;t<n;t++)for(var o=arguments[t],s=0,u=o.length;s<u;s++,r++)i[r]=o[s];return i}function l(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],i=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return{value:(e=e&&i>=e.length?void 0:e)&&e[i++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function s(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(function(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var i,r,o=n.call(e),s=[];try{for(;(void 0===t||0<t--)&&!(i=o.next()).done;)s.push(i.value)}catch(e){r={error:e}}finally{try{i&&!i.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return s}(arguments[t]));return e}function f(e){return void 0===e}var r=function(){function e(e,t){var n,i;if(this.eventType=e,this._canceled=!1,t)try{for(var r=l(Object.keys(t)),o=r.next();!o.done;o=r.next()){var s=o.value;this[s]=t[s]}}catch(e){n={error:e}}finally{try{o&&!o.done&&(i=r.return)&&i.call(r)}finally{if(n)throw n.error}}}var t=e.prototype;return t.stop=function(){this._canceled=!0},t.isCanceled=function(){return this._canceled},e}(),u=function(){function e(){this._eventHandler={}}var t=e.prototype;return t.trigger=function(t){for(var n=[],e=1;e<arguments.length;e++)n[e-1]=arguments[e];var i=t instanceof r?t.eventType:t,i=s(this._eventHandler[i]||[]);return i.length<=0||(t instanceof r?(t.currentTarget=this,i.forEach(function(e){e(t)})):i.forEach(function(e){e.apply(void 0,s(n))})),this},t.once=function(n,i){var r,o=this;if("object"==typeof n&&f(i)){var e,t=n;for(e in t)this.once(e,t[e]);return this}return"string"==typeof n&&"function"==typeof i&&this.on(n,r=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];i.apply(void 0,s(e)),o.off(n,r)}),this},t.hasOn=function(e){return!!this._eventHandler[e]},t.on=function(e,t){if("object"==typeof e&&f(t)){var n,i=e;for(n in i)this.on(n,i[n]);return this}var r;return"string"==typeof e&&"function"==typeof t&&(r=this._eventHandler[e],f(r)&&(this._eventHandler[e]=[],r=this._eventHandler[e]),r.push(t)),this},t.off=function(e,t){var n,i;if(f(e))return this._eventHandler={},this;if(f(t)){if("string"==typeof e)return delete this._eventHandler[e],this;var r,o=e;for(r in o)this.off(r,o[r]);return this}var s=this._eventHandler[e];if(s){var u=0;try{for(var a=l(s),c=a.next();!c.done;c=a.next()){if(c.value===t){s.splice(u,1),s.length<=0&&delete this._eventHandler[e];break}u++}}catch(e){n={error:e}}finally{try{c&&!c.done&&(i=a.return)&&i.call(a)}finally{if(n)throw n.error}}}return this},e.VERSION="3.0.1",e}(),E=r,m=function(){function e(){this.keys=[],this.values=[]}var t=e.prototype;return t.get=function(e){return this.values[this.keys.indexOf(e)]},t.set=function(e,t){var n=this.keys,i=this.values,r=n.indexOf(e),r=-1===r?n.length:r;n[r]=e,i[r]=t},e}(),y=function(){function e(){this.object={}}var t=e.prototype;return t.get=function(e){return this.object[e]},t.set=function(e,t){this.object[e]=t},e}(),v="function"==typeof Map,a=function(){function e(){}var t=e.prototype;return t.connect=function(e,t){this.prev=e,this.next=t,e&&(e.next=this),t&&(t.prev=this)},t.disconnect=function(){var e=this.prev,t=this.next;e&&(e.next=t),t&&(t.prev=e)},t.getIndex=function(){for(var e=this,t=-1;e;)e=e.prev,++t;return t},e}();var R=function(){function e(e,t,n,i,r,o,s,u){this.prevList=e,this.list=t,this.added=n,this.removed=i,this.changed=r,this.maintained=o,this.changedBeforeAdded=s,this.fixed=u}var t=e.prototype;return Object.defineProperty(t,"ordered",{get:function(){return this.cacheOrdered||this.caculateOrdered(),this.cacheOrdered},enumerable:!0,configurable:!0}),Object.defineProperty(t,"pureChanged",{get:function(){return this.cachePureChanged||this.caculateOrdered(),this.cachePureChanged},enumerable:!0,configurable:!0}),t.caculateOrdered=function(){var e,n,r,o,e=(e=this.changedBeforeAdded,n=this.fixed,r=[],o=[],e.forEach(function(e){var t=e[0],n=e[1],e=new a;r[t]=e,o[n]=e}),r.forEach(function(e,t){e.connect(r[t-1])}),e.filter(function(e,t){return!n[t]}).map(function(e,t){var n=e[0],i=e[1];if(n===i)return[0,0];e=r[n],n=o[i-1],i=e.getIndex();return e.disconnect(),n?e.connect(n,n.next):e.connect(void 0,r[0]),[i,e.getIndex()]})),s=this.changed,u=[];this.cacheOrdered=e.filter(function(e,t){var n=e[0],i=e[1],e=s[t],t=e[0],e=e[1];if(n!==i)return u.push([t,e]),!0}),this.cachePureChanged=u},e}();function c(e,t,n){var i=v?Map:n?y:m,r=n||function(e){return e},o=[],s=[],u=[],n=e.map(r),r=t.map(r),a=new i,c=new i,h=[],l=[],f={},d=[],p=0,g=0;return n.forEach(function(e,t){a.set(e,t)}),r.forEach(function(e,t){c.set(e,t)}),n.forEach(function(e,t){e=c.get(e);void 0===e?(++g,s.push(t)):f[e]=g}),r.forEach(function(e,t){e=a.get(e);void 0===e?(o.push(t),++p):(u.push([e,t]),g=f[t]||0,h.push([e-g,t-p]),l.push(t===e),e!==t&&d.push([e,t]))}),s.reverse(),new R(e,t,o,s,d,u,h,l)}var t,d="function"==typeof Map?void 0:(t=0,function(e){return e.__DIFF_KEY__||(e.__DIFF_KEY__=++t)});function p(e,t){return c(e,t,d)}var g=function(e,t){return(g=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function S(e,t){function n(){this.constructor=e}g(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var I=function(){return(I=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};var e="undefined"!=typeof window,C=e?window.navigator.userAgent:"",O=e&&!!("getComputedStyle"in window),P=/MSIE|Trident|Windows Phone|Edge/.test(C),T=e&&!!("addEventListener"in document),b="width",M="height";function w(e,t){return e.getAttribute(t)||""}function x(e){return[].slice.call(e)}function D(e,t){return void 0===t&&(t="data-"),"loading"in e&&"lazy"===e.getAttribute("loading")||!!e.getAttribute(t+"lazy")}function L(e,t,n){T?e.addEventListener(t,n,!1):e.attachEvent?e.attachEvent("on"+t,n):e["on"+t]=n}function N(e,t,n){e.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent?e.detachEvent("on"+t,n):e["on"+t]=null}function k(e,t){var n=e["client"+t]||e["offset"+t];return parseFloat(n||(e=e,((O?window.getComputedStyle(e):e.currentStyle)||{})[t.toLowerCase()]))||0}function A(e,t,n){var i=x(e.querySelectorAll(function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(var i=Array(e),r=0,t=0;t<n;t++)for(var o=arguments[t],s=0,u=o.length;s<u;s++,r++)i[r]=o[s];return i}(["["+n+"skip] ["+n+"width]"],t.map(function(e){return["["+n+"skip] "+e,e+"["+n+"skip]","["+n+"width] "+e].join(", ")})).join(", ")));return x(e.querySelectorAll("["+n+"width], "+t.join(", "))).filter(function(e){return-1===i.indexOf(e)})}var G=[];function V(e,t){G.length||L(window,"resize",U),e.__PREFIX__=t,G.push(e),K(e)}function K(e,t){void 0===t&&(t="data-");var n,i=e.__PREFIX__||t,r=parseInt(w(e,""+i+b),10)||0,t=parseInt(w(e,""+i+M),10)||0;w(e,i+"fixed")===M?(n=k(e,"Height")||t,e.style[b]=r/t*n+"px"):(n=k(e,"Width")||r,e.style[M]=t/r*n+"px")}function U(){G.forEach(function(e){K(e)})}var j=function(r){function e(e,t){void 0===t&&(t={});var n=r.call(this)||this;n.isReady=!1,n.isPreReady=!1,n.hasDataSize=!1,n.hasLoading=!1,n.isSkip=!1,n.onCheck=function(e){n.clear(),e&&"error"===e.type&&n.onError(n.element),n.hasLoading&&n.checkElement()||(e=!n.hasDataSize&&!n.hasLoading,n.onReady(e))},n.options=I({prefix:"data-"},t),n.element=e;var i=n.options.prefix;return n.hasDataSize=(t=i,!!e.getAttribute((t=void 0===t?"data-":t)+"width")),n.isSkip=(t=i,!!e.getAttribute((t=void 0===t?"data-":t)+"skip")),n.hasLoading=D(e,i),n}S(e,r);var t=e.prototype;return t.check=function(){return this.isSkip||!this.checkElement()?(this.onAlreadyReady(!0),!1):(this.hasDataSize&&V(this.element,this.options.prefix),(this.hasDataSize||this.hasLoading)&&this.onAlreadyPreReady(),!0)},t.addEvents=function(){var t=this,n=this.element;this.constructor.EVENTS.forEach(function(e){L(n,e,t.onCheck)})},t.clear=function(){var t=this,n=this.element;this.constructor.EVENTS.forEach(function(e){N(n,e,t.onCheck)}),this.removeAutoSizer()},t.destroy=function(){this.clear(),this.off()},t.removeAutoSizer=function(){var e,t,n;this.hasDataSize&&(n=this.options.prefix,e=this.element,t=n,(n=G.indexOf(e))<0||(t=w(e,t+"fixed"),delete e.__PREFIX__,e.style[t===M?b:M]="",G.splice(n,1),G.length||N(window,"resize",U)))},t.onError=function(e){this.trigger("error",{element:this.element,target:e})},t.onPreReady=function(){this.isPreReady||(this.isPreReady=!0,this.trigger("preReady",{element:this.element,hasLoading:this.hasLoading,isSkip:this.isSkip}))},t.onReady=function(e){this.isReady||((e=!this.isPreReady&&e)&&(this.isPreReady=!0),this.removeAutoSizer(),this.isReady=!0,this.trigger("ready",{element:this.element,withPreReady:e,hasLoading:this.hasLoading,isSkip:this.isSkip}))},t.onAlreadyError=function(e){var t=this;setTimeout(function(){t.onError(e)})},t.onAlreadyPreReady=function(){var e=this;setTimeout(function(){e.onPreReady()})},t.onAlreadyReady=function(e){var t=this;setTimeout(function(){t.onReady(e)})},e.EVENTS=[],e}(u),F=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}S(t,e);var n=t.prototype;return n.setHasLoading=function(e){this.hasLoading=e},n.check=function(){return this.isSkip?(this.onAlreadyReady(!0),!1):(this.hasDataSize?(V(this.element,this.options.prefix),this.onAlreadyPreReady()):this.trigger("requestChildren"),!0)},n.checkElement=function(){return!0},n.destroy=function(){this.clear(),this.trigger("requestDestroy"),this.off()},n.onAlreadyPreReady=function(){e.prototype.onAlreadyPreReady.call(this),this.trigger("reqeustReadyChildren")},t.EVENTS=[],t}(j),C=function(n){function e(e){void 0===e&&(e={});var t=n.call(this)||this;return t.readyCount=0,t.preReadyCount=0,t.totalCount=0,t.totalErrorCount=0,t.isPreReadyOver=!0,t.elementInfos=[],t.options=I({loaders:{},prefix:"data-"},e),t}S(e,n);var t=e.prototype;return t.check=function(e){var o=this,n=this.options.prefix;this.clear(),this.elementInfos=x(e).map(function(e,r){var t=o.getLoader(e,{prefix:n});return t.check(),t.on("error",function(e){o.onError(r,e.target)}).on("preReady",function(e){var t=o.elementInfos[r];t.hasLoading=e.hasLoading,t.isSkip=e.isSkip;e=o.checkPreReady(r);o.onPreReadyElement(r),e&&o.onPreReady()}).on("ready",function(e){var t=e.withPreReady,n=e.hasLoading,i=e.isSkip,e=o.elementInfos[r];e.hasLoading=n,e.isSkip=i;e=t&&o.checkPreReady(r),i=o.checkReady(r);t&&o.onPreReadyElement(r),o.onReadyElement(r),e&&o.onPreReady(),i&&o.onReady()}),{loader:t,element:e,hasLoading:!1,hasError:!1,isPreReady:!1,isReady:!1,isSkip:!1}});e=this.elementInfos.length;return(this.totalCount=e)||setTimeout(function(){o.onPreReady(),o.onReady()}),this},t.getTotalCount=function(){return this.totalCount},t.isPreReady=function(){return this.elementInfos.every(function(e){return e.isPreReady})},t.isReady=function(){return this.elementInfos.every(function(e){return e.isReady})},t.hasError=function(){return 0<this.totalErrorCount},t.clear=function(){this.isPreReadyOver=!1,this.totalCount=0,this.preReadyCount=0,this.readyCount=0,this.totalErrorCount=0,this.elementInfos.forEach(function(e){!e.isReady&&e.loader&&e.loader.destroy()}),this.elementInfos=[]},t.destroy=function(){this.clear(),this.off()},t.getLoader=function(t,e){var n=this,i=t.tagName.toLowerCase(),r=this.options.loaders,o=e.prefix,s=Object.keys(r);if(r[i])return new r[i](t,e);var u=new F(t,e),a=x(t.querySelectorAll(s.join(", ")));u.setHasLoading(a.some(function(e){return D(e,o)}));var c=!1,h=this.clone().on("error",function(e){u.onError(e.target)}).on("ready",function(){u.onReady(c)});return u.on("requestChildren",function(){var e=A(t,s,n.options.prefix);h.check(e).on("preReady",function(e){(c=e.isReady)||u.onPreReady()})}).on("reqeustReadyChildren",function(){h.check(a)}).on("requestDestroy",function(){h.destroy()}),u},t.clone=function(){return new e(I({},this.options))},t.checkPreReady=function(e){return this.elementInfos[e].isPreReady=!0,++this.preReadyCount,!(this.preReadyCount<this.totalCount)},t.checkReady=function(e){return this.elementInfos[e].isReady=!0,++this.readyCount,!(this.readyCount<this.totalCount)},t.onError=function(e,t){var n=this.elementInfos[e];n.hasError=!0,this.trigger(new E("error",{element:n.element,index:e,target:t,errorCount:this.getErrorCount(),totalErrorCount:++this.totalErrorCount}))},t.onPreReadyElement=function(e){var t=this.elementInfos[e];this.trigger(new E("preReadyElement",{element:t.element,index:e,preReadyCount:this.preReadyCount,readyCount:this.readyCount,totalCount:this.totalCount,isPreReady:this.isPreReady(),isReady:this.isReady(),hasLoading:t.hasLoading,isSkip:t.isSkip}))},t.onPreReady=function(){this.isPreReadyOver=!0,this.trigger(new E("preReady",{readyCount:this.readyCount,totalCount:this.totalCount,isReady:this.isReady(),hasLoading:this.hasLoading()}))},t.onReadyElement=function(e){var t=this.elementInfos[e];this.trigger(new E("readyElement",{index:e,element:t.element,hasError:t.hasError,errorCount:this.getErrorCount(),totalErrorCount:this.totalErrorCount,preReadyCount:this.preReadyCount,readyCount:this.readyCount,totalCount:this.totalCount,isPreReady:this.isPreReady(),isReady:this.isReady(),hasLoading:t.hasLoading,isPreReadyOver:this.isPreReadyOver,isSkip:t.isSkip}))},t.onReady=function(){this.trigger(new E("ready",{errorCount:this.getErrorCount(),totalErrorCount:this.totalErrorCount,totalCount:this.totalCount}))},t.getErrorCount=function(){return this.elementInfos.filter(function(e){return e.hasError}).length},t.hasLoading=function(){return this.elementInfos.some(function(e){return e.hasLoading})},e}(u),q=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return S(t,e),t.prototype.checkElement=function(){var e=this.element,t=e.getAttribute("src");if(e.complete){if(t)return e.naturalWidth||this.onAlreadyError(e),!1;this.onAlreadyPreReady()}return this.addEvents(),P&&e.setAttribute("src",t),!0},t.EVENTS=["load","error"],t}(j),B=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return S(t,e),t.prototype.checkElement=function(){var e=this.element;return!(1<=e.readyState)&&(e.error?(this.onAlreadyError(e),!1):(this.addEvents(),!0))},t.EVENTS=["loadedmetadata","error"],t}(j),Y=function(t){function e(e){return t.call(this,I({loaders:{img:q,video:B}},e=void 0===e?{}:e))||this}return S(e,t),e}(C),W=function(e,t){return(W=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function H(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}W(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var Z=function(){return(Z=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};function X(e,t,n,i){var r,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var u=e.length-1;0<=u;u--)(r=e[u])&&(s=(o<3?r(s):3<o?r(t,n,s):r(t,n))||s);return 3<o&&s&&Object.defineProperty(t,n,s),s}function Q(e,t){for(var n=0,i=t.length,r=e.length;n<i;n++,r++)e[r]=t[n];return e}var J,$,ee,te={horizontal:!1,useTransform:!1,percentage:!1,isEqualSize:!1,isConstantSize:!1,gap:0,attributePrefix:"data-grid-",resizeDebounce:100,maxResizeDebounce:0,autoResize:!0,preserveUIOnDestroy:!1,defaultDirection:"end",externalContainerManager:null,externalItemRenderer:null,renderOnPropertyChange:!0,useFit:!0,outlineLength:0,outlineSize:0,useRoundedSize:!0,useResizeObserver:!1,observeChildren:!1};(e=J=J||{})[e.PROPERTY=1]="PROPERTY",e[e.RENDER_PROPERTY=2]="RENDER_PROPERTY",(j=$=$||{})[j.UNCHECKED=1]="UNCHECKED",j[j.UNMOUNTED=2]="UNMOUNTED",j[j.MOUNTED=3]="MOUNTED",(C=ee=ee||{})[C.NEED_UPDATE=1]="NEED_UPDATE",C[C.WAIT_LOADING=2]="WAIT_LOADING",C[C.UPDATED=3]="UPDATED";var ne={gap:J.RENDER_PROPERTY,defaultDirection:J.PROPERTY,renderOnPropertyChange:J.PROPERTY,preserveUIOnDestroy:J.PROPERTY,useFit:J.PROPERTY,outlineSize:J.RENDER_PROPERTY,outlineLength:J.RENDER_PROPERTY},ie={horizontal:{inlinePos:"top",contentPos:"left",inlineSize:"height",contentSize:"width"},vertical:{inlinePos:"left",contentPos:"top",inlineSize:"width",contentSize:"height"}};function re(n,i){var e=oe(n);return p(i.map(function(e){return e.target}),e.map(function(e){return e.element})).maintained.filter(function(e){var t=e[0],e=e[1],t=i[t].size,e=n[e];return t.inlineSize!==e.computedInlineSize||t.blockSize!==e.computedContentSize}).map(function(e){e=e[1];return n[e]})}function oe(e){return e.filter(function(e){return e.element})}function se(e){return oe(e).map(function(e){return e.element})}function ue(e){return"string"==typeof e}function ae(e){return"object"==typeof e}function ce(e){var t,r=e.prototype,o=e.propertyTypes;for(t in o)!function(n){var i=o[n]===J.RENDER_PROPERTY,e=Object.getOwnPropertyDescriptor(r,n)||{};Object.defineProperty(r,n,{enumerable:!0,configurable:!0,get:e.get||function(){return this.options[n]},set:e.set||function(e){var t=this.options;t[n]!==e&&(t[n]=e,i&&t.renderOnPropertyChange&&this.scheduleRender())}})}(t)}function he(e){for(var t=[],n=0;n<e;++n)t.push(n);return t}function le(e,t){return Math.max(e-t[1],t[0]-e,0)+1}var fe=function(){function e(e,t){var a=this;void 0===t&&(t={}),this._resizeTimer=0,this._maxResizeDebounceTimer=0,this.rect={width:0,height:0},this._updatedEntries=[],this._onWindowResize=function(){a._scheduleResize([{target:a.container}])},this._onObserve=function(e){var t=a._options,n=a.container,i=t.rectBox,r=t.childrenRectBox;a._scheduleResize(e.map(function(e){var t="border-box"===(e.target===n?i:r)?e.borderBoxSize:e.contentBoxSize;return{size:t[0]||t,target:e.target}}))},this._scheduleResize=function(e){var t=a._options,n=t.resizeDebounce,t=t.maxResizeDebounce,i=a._updatedEntries;i.push.apply(i,e),a._updatedEntries=i.filter(function(e,t){return i.lastIndexOf(e)===t}),!a._maxResizeDebounceTimer&&n<=t&&(a._maxResizeDebounceTimer=window.setTimeout(a._onResize,t)),a._resizeTimer&&(clearTimeout(a._resizeTimer),a._resizeTimer=0),a._resizeTimer=window.setTimeout(a._onResize,n)},this._onResize=function(){clearTimeout(a._resizeTimer),clearTimeout(a._maxResizeDebounceTimer),a._maxResizeDebounceTimer=0,a._resizeTimer=0;var t,e,n,i=a._updatedEntries,r=a.container,o=i.filter(function(e){return e.target!==r||(t=e,!1)}),s=0<o.length,u=!!t;u&&(e=a._options.watchDirection,n=a.rect,(i=t.size)?a.setRect({width:i.inlineSize,height:i.blockSize}):a.resize(),i=a.rect,u=!e||("box"===e||"width"===e)&&n.width!==i.width||("box"===e||"height"===e)&&n.height!==i.height),a._updatedEntries=[],(u||s)&&a._emitter.trigger("resize",{isResizeContainer:u,childEntries:o})},this._options=Z({resizeDebounce:100,maxResizeDebounce:0,useResizeObserver:!1,useWindowResize:!0,watchDirection:!1,rectBox:"content-box",childrenRectBox:"border-box"},t),this.container=ue(e)?document.querySelector(e):e,this._init()}var t=e.prototype;return t.getRect=function(){return this.rect},t.setRect=function(e){this.rect=Z({},e)},t.resize=function(){var e=this.container;this.setRect("border-box"===this._options.rectBox?{width:e.offsetWidth,height:e.offsetHeight}:{width:e.clientWidth,height:e.clientHeight})},t.observeChildren=function(e){var t,n=this._observer;n&&(t=this._options.childrenRectBox,e.forEach(function(e){n.observe(e,{box:t})}))},t.unobserveChildren=function(e){var t=this._observer;t&&e.forEach(function(e){t.unobserve(e)})},t.listen=function(e){return this._emitter.on("resize",e),this},t.destroy=function(){var e;null!==(e=this._observer)&&void 0!==e&&e.disconnect(),this._options.useWindowResize&&window.removeEventListener("resize",this._onWindowResize)},t._init=function(){var e=this.container,t=this._options;this._emitter=new u,t.useResizeObserver&&window.ResizeObserver&&(this._observer=new window.ResizeObserver(this._onObserve),this._observer.observe(e,{box:t.rectBox})),t.useWindowResize&&window.addEventListener("resize",this._onWindowResize),this.resize()},e}(),de=function(i){function e(e,t){var n=i.call(this)||this;return n.container=e,n._onResize=function(e){n.trigger("resize",e)},n.options=Z({horizontal:te.horizontal,autoResize:te.autoResize,resizeDebounce:te.resizeDebounce,maxResizeDebounce:te.maxResizeDebounce,useResizeObserver:te.useResizeObserver},t),n._init(),n}H(e,i);var t=e.prototype;return t.resize=function(){var e=this.container;this.setRect({width:e.clientWidth,height:e.clientHeight})},t.getRect=function(){return this._watcher.getRect()},t.observeChildren=function(e){this._watcher.observeChildren(e)},t.unobserveChildren=function(e){this._watcher.unobserveChildren(e)},t.setRect=function(e){this._watcher.setRect(e)},t.getInlineSize=function(){return this.getRect()[this._names.inlineSize]},t.getContentSize=function(){return this.getRect()[this._names.contentSize]},t.getStatus=function(){return{rect:this._watcher.getRect()}},t.setStatus=function(e){this.setRect(e.rect),this.setContentSize(this.getContentSize())},t.setContentSize=function(e){var t,n=this.options.horizontal?"width":"height";this.setRect(Z(Z({},this.getRect()),((t={})[n]=e,t))),this.container.style[n]=e+"px"},t.destroy=function(e){void 0===e&&(e={}),this._watcher.destroy(),e.preserveUI||(this.container.style.cssText=this.orgCSSText)},t._init=function(){var e=this.container,t=window.getComputedStyle(e);this.orgCSSText=e.style.cssText,"static"===t.position&&(e.style.position="relative");t=this.options;this._watcher=new fe(e,{useWindowResize:t.autoResize,useResizeObserver:t.useResizeObserver,resizeDebounce:t.resizeDebounce,maxResizeDebounce:t.maxResizeDebounce,watchDirection:!!t.useResizeObserver&&this._names.inlineSize}).listen(this._onResize)},Object.defineProperty(t,"_names",{get:function(){return ie[this.options.horizontal?"horizontal":"vertical"]},enumerable:!1,configurable:!0}),e}(u),pe=function(){function e(e){this.initialRect=null,this.sizePercetage=!1,this.posPercetage=!1,this.options=Z({attributePrefix:te.attributePrefix,useTransform:te.useTransform,horizontal:te.horizontal,percentage:te.percentage,isEqualSize:te.isEqualSize,isConstantSize:te.isConstantSize,useRoundedSize:te.useRoundedSize},e),this._init()}var t=e.prototype;return t.resize=function(){this.initialRect=null},t.renderItems=function(e){var t=this;e.forEach(function(e){t._renderItem(e)})},t.getInlineSize=function(){return this.containerRect[this.options.horizontal?"height":"width"]},t.setContainerRect=function(e){this.containerRect=e},t.updateItems=function(e){var t=this;e.forEach(function(e){t._updateItem(e)})},t.getStatus=function(){return{initialRect:this.initialRect}},t.setStatus=function(e){this.initialRect=e.initialRect},t._init=function(){var e=this.options.percentage,t=!1,n=!1;!0===e?n=t=!0:e&&(-1<e.indexOf("position")&&(n=!0),-1<e.indexOf("size")&&(t=!0)),this.posPercetage=n,this.sizePercetage=t},t._updateItem=function(e){var t=this.options,n=t.isEqualSize,i=t.isConstantSize,r=t.useRoundedSize,o=this.initialRect,s=e.orgRect,u=e.element,a=e.updateState===ee.WAIT_LOADING,t=s&&s.width&&s.height;if(n&&o)c=o;else if(i&&t&&!a)c=s;else{if(!u)return;var c={left:u.offsetLeft,top:u.offsetTop,width:0,height:0};r?(c.width=u.offsetWidth,c.height=u.offsetHeight):(r=u.getBoundingClientRect(),c.width=r.width,c.height=r.height)}return e.isFirstUpdate&&t||(e.orgRect=Z({},c)),e.rect=Z({},c),e.element&&(e.mountState=$.MOUNTED),e.updateState===ee.NEED_UPDATE&&(e.updateState=ee.UPDATED,e.isFirstUpdate=!0),e.attributes=u?function(e,t){for(var n={},i=e.attributes,r=i.length,o=0;o<r;++o){var s=i[o],u=s.name,s=s.value;-1!==u.indexOf(t)&&(n[u.replace(t,"").replace(/[\s-_]([a-z])/g,function(e,t){return t.toUpperCase()})]=s)}return n}(u,this.options.attributePrefix):{},a||this.initialRect||(this.initialRect=Z({},c)),c},t._renderItem=function(e){var n,i,t,r,o,s,u,a=e.element,c=e.cssRect;a&&c&&(u=(t=this.options).horizontal,e=t.useTransform,n=this.posPercetage,i=this.sizePercetage,t=["position: absolute;"],r=(u=ie[u?"horizontal":"vertical"]).inlineSize,o=u.inlinePos,s=this.getInlineSize(),u=c,u=Object.keys(u),e&&(u=u.filter(function(e){return"top"!==e&&"left"!==e}),t.push("transform: translate("+(c.left||0)+"px, "+(c.top||0)+"px);")),t.push.apply(t,u.map(function(e){var t=c[e];return e===r&&i||e===o&&n?e+": "+t/s*100+"%;":e+": "+t+"px;"})),a.style.cssText+=t.join(""))},e}(),ge=function(){function e(e,t){void 0===t&&(t={}),this.horizontal=e,this.isUpdate=!1,this.hasTransition=!1,this.transitionDuration="";var n,e=t.element,i=Z({key:"",orgRect:{left:0,top:0,width:0,height:0},rect:{left:0,top:0,width:0,height:0},cssRect:{},attributes:{},data:{},isFirstUpdate:!1,mountState:$.UNCHECKED,updateState:ee.NEED_UPDATE,element:e||null,orgCSSText:null!==(e=null==e?void 0:e.style.cssText)&&void 0!==e?e:"",gridData:{}},t);for(n in i)this[n]=i[n]}var t=e.prototype;return Object.defineProperty(t,"orgInlineSize",{get:function(){var e=this._names.inlineSize;return this.orgRect[e]||this.rect[e]},enumerable:!1,configurable:!0}),Object.defineProperty(t,"orgContentSize",{get:function(){var e=this._names.contentSize;return this.orgRect[e]||this.rect[e]},enumerable:!1,configurable:!0}),Object.defineProperty(t,"inlineSize",{get:function(){return this.rect[this._names.inlineSize]},enumerable:!1,configurable:!0}),Object.defineProperty(t,"contentSize",{get:function(){return this.rect[this._names.contentSize]},enumerable:!1,configurable:!0}),Object.defineProperty(t,"cssInlineSize",{get:function(){return this.cssRect[this._names.inlineSize]},set:function(e){this.cssRect[this._names.inlineSize]=e},enumerable:!1,configurable:!0}),Object.defineProperty(t,"cssContentSize",{get:function(){return this.cssRect[this._names.contentSize]},set:function(e){this.cssRect[this._names.contentSize]=e},enumerable:!1,configurable:!0}),Object.defineProperty(t,"cssInlinePos",{get:function(){return this.cssRect[this._names.inlinePos]},set:function(e){this.cssRect[this._names.inlinePos]=e},enumerable:!1,configurable:!0}),Object.defineProperty(t,"cssContentPos",{get:function(){return this.cssRect[this._names.contentPos]},set:function(e){this.cssRect[this._names.contentPos]=e},enumerable:!1,configurable:!0}),Object.defineProperty(t,"computedInlineSize",{get:function(){var e=this._names.inlineSize;return this.cssRect[e]||this.rect[e]||this.orgRect[e]},enumerable:!1,configurable:!0}),Object.defineProperty(t,"computedContentSize",{get:function(){var e=this._names.contentSize;return this.cssRect[e]||this.rect[e]||this.orgRect[e]},enumerable:!1,configurable:!0}),Object.defineProperty(t,"computedInlinePos",{get:function(){var e,t=this._names.inlinePos;return null!==(e=this.cssRect[t])&&void 0!==e?e:this.rect[t]},enumerable:!1,configurable:!0}),Object.defineProperty(t,"computedContentPos",{get:function(){var e,t=this._names.contentPos;return null!==(e=this.cssRect[t])&&void 0!==e?e:this.rect[t]},enumerable:!1,configurable:!0}),t.setCSSGridRect=function(e){var t,n=ie[this.horizontal?"horizontal":"vertical"],i={};for(t in e)i[n[t]]=e[t];this.cssRect=i},t.getStatus=function(){return{mountState:this.mountState,updateState:this.updateState,attributes:this.attributes,orgCSSText:this.orgCSSText,isFirstUpdate:this.isFirstUpdate,element:null,key:this.key,orgRect:this.orgRect,rect:this.rect,cssRect:this.cssRect,gridData:this.gridData,data:this.data}},t.getMinimizedStatus=function(){var e={orgRect:this.orgRect,rect:this.rect,cssRect:this.cssRect,attributes:this.attributes,gridData:this.gridData},t=this,n=t.key,i=t.mountState,r=t.updateState,o=t.isFirstUpdate,t=t.orgCSSText;return void 0!==n&&(e.key=n),i!==$.UNCHECKED&&(e.mountState=i),r!==ee.NEED_UPDATE&&(e.updateState=r),o&&(e.isFirstUpdate=!0),t&&(e.orgCSSText=t),e},Object.defineProperty(t,"_names",{get:function(){return this.horizontal?ie.horizontal:ie.vertical},enumerable:!1,configurable:!0}),e}(),me=function(d){function e(e,t){void 0===t&&(t={});var n=d.call(this)||this;n.items=[],n.outlines={start:[],end:[]},n._renderTimer=0,n._onResize=function(e){e.isResizeContainer?n._renderItems({useResize:!0},!0):0<(e=re(n.items,e.childEntries)).length&&n.updateItems(e)},n.options=Z(Z({},n.constructor.defaultOptions),t),n.containerElement=ue(e)?document.querySelector(e):e;var i=n.options,r=i.isEqualSize,o=i.isConstantSize,s=i.useTransform,u=i.horizontal,a=i.percentage,c=i.externalContainerManager,h=i.externalItemRenderer,l=i.resizeDebounce,f=i.maxResizeDebounce,t=i.autoResize,e=i.useRoundedSize,i=i.useResizeObserver;return n.containerManager=c||new de(n.containerElement,{horizontal:u,resizeDebounce:l,maxResizeDebounce:f,autoResize:t,useResizeObserver:i}).on("resize",n._onResize),n.itemRenderer=h||new pe({useTransform:s,isEqualSize:r,isConstantSize:o,percentage:a,useRoundedSize:e}),n._init(),n}H(e,d);var t=e.prototype;return t.getContainerElement=function(){return this.containerElement},t.getItems=function(){return this.items},t.getChildren=function(){return[].slice.call(this.containerElement.children)},t.setItems=function(e){var t=this.options;return t.useResizeObserver&&t.observeChildren&&((t=this.containerManager).unobserveChildren(se(this.items)),t.observeChildren(se(e))),this.items=e,this},t.getContainerInlineSize=function(){return this.containerManager.getInlineSize()},t.getOutlines=function(){return this.outlines},t.setOutlines=function(e){return this.outlines=e,this},t.syncElements=function(e){void 0===e&&(e={});var n=this.items,t=this.options.horizontal,i=this.getChildren(),r=p(this.items.map(function(e){return e.element}),i),o=r.added,s=r.maintained,u=r.changed,r=r.removed,a=[];return s.forEach(function(e){var t=e[0],e=e[1];a[e]=n[t]}),o.forEach(function(e){a[e]=new ge(t,{element:i[e]})}),this.setItems(a),(o.length||r.length||u.length)&&this.renderItems(e),this},t.updateItems=function(e,t){void 0===e&&(e=this.items);var n=(t=void 0===t?{}:t).useOrgResize;return e.forEach(function(e){var t;n&&((t=e.orgRect).width=0,t.height=0),e.updateState=ee.NEED_UPDATE}),this.checkReady(t),this},t.renderItems=function(e){return this._renderItems(e=void 0===e?{}:e),this},t.getStatus=function(t){return{outlines:this.outlines,items:this.items.map(function(e){return t?e.getMinimizedStatus():e.getStatus()}),containerManager:this.containerManager.getStatus(),itemRenderer:this.itemRenderer.getStatus()}},t.setStatus=function(e){var t=this,n=this.options.horizontal,i=this.containerManager,r=i.getInlineSize(),o=this.getChildren();return this.itemRenderer.setStatus(e.itemRenderer),i.setStatus(e.containerManager),this.outlines=e.outlines,this.items=e.items.map(function(e,t){return new ge(n,Z(Z({},e),{element:o[t]}))}),this.itemRenderer.renderItems(this.items),r!==i.getInlineSize()?this.renderItems({useResize:!0}):window.setTimeout(function(){t._renderComplete({direction:t.defaultDirection,mounted:t.items,updated:[],isResize:!1})}),this},t.getComputedOutlineSize=function(e){return void 0===e&&(e=this.items),this.options.outlineSize||this.getContainerInlineSize()},t.getComputedOutlineLength=function(e){return void 0===e&&(e=this.items),this.options.outlineLength||1},t.destroy=function(e){var e=(e=void 0===e?{}:e).preserveUI,e=void 0===e?this.options.preserveUIOnDestroy:e;this.containerManager.destroy({preserveUI:e}),e||this.items.forEach(function(e){var t=e.element,e=e.orgCSSText;t&&(t.style.cssText=e)}),null!==(e=this._im)&&void 0!==e&&e.destroy()},t.checkReady=function(n){var i=this;void 0===n&&(n={});var e=this.items,r=e.filter(function(e){var t;return(null===(t=e.element)||void 0===t?void 0:t.parentNode)&&e.updateState!==ee.UPDATED}),t=e.filter(function(e){var t;return(null===(t=e.element)||void 0===t?void 0:t.parentNode)&&e.mountState!==$.MOUNTED}),o=[];t.filter(function(e){if(e.hasTransition)return!0;var t=e.element;return 0<parseFloat(getComputedStyle(t).transitionDuration)&&(e.hasTransition=!0,e.transitionDuration=t.style.transitionDuration,!0)}).forEach(function(e){e.element.style.transitionDuration="0s"}),null!==(e=this._im)&&void 0!==e&&e.destroy(),this._im=new Y({prefix:this.options.attributePrefix}).on("preReadyElement",function(e){r[e.index].updateState=ee.WAIT_LOADING}).on("preReady",function(){r.forEach(function(e){var t=e.orgRect.width&&e.orgRect.height,n=e.cssRect.width||e.cssRect.height;!t&&n&&(e.element.style.cssText=e.orgCSSText)}),i.itemRenderer.updateItems(r),i.readyItems(t,r,n)}).on("readyElement",function(e){var t=r[e.index];t.updateState=ee.NEED_UPDATE,e.isPreReadyOver&&(t.element.style.cssText=t.orgCSSText,i.itemRenderer.updateItems([t]),i.readyItems([],[t],n))}).on("error",function(e){var t=r[e.index];i.trigger("contentError",{element:e.element,target:e.target,item:t,update:function(){o.push(t)}})}).on("ready",function(){o.length&&i.updateItems(o)}).check(r.map(function(e){return e.element}))},t.scheduleRender=function(){var e=this;this._clearRenderTimer(),this._renderTimer=window.setTimeout(function(){e.renderItems()})},t.fitOutlines=function(e){void 0===e&&(e=this.useFit);var t=this.outlines,n=t.start,i=t.end,r=n.length?Math.min.apply(Math,n):0;!e&&0<r||(t.start=n.map(function(e){return e-r}),t.end=i.map(function(e){return e-r}),this.items.forEach(function(e){var t=e.cssContentPos;"number"==typeof t&&(e.cssContentPos=t-r)}))},t.readyItems=function(e,t,n){var i=this.outlines,r=n.direction||this.options.defaultDirection,o=n.outline||i["end"===r?"start":"end"],s=this.items,i={start:Q([],o),end:Q([],o)};e.forEach(function(e){e.mountState=$.MOUNTED}),t.forEach(function(e){e.isUpdate=!0}),s.length&&(i=this.applyGrid(this.items,r,o)),t.forEach(function(e){e.isUpdate=!1}),this.setOutlines(i),this.fitOutlines(),this.itemRenderer.renderItems(this.items),this._refreshContainerContentSize();i=e.filter(function(e){return e.hasTransition});i.length&&(this.containerManager.resize(),i.forEach(function(e){e.element.style.transitionDuration=e.transitionDuration})),this._renderComplete({direction:r,mounted:e,updated:t,isResize:!!n.useResize})},t._renderComplete=function(e){this.trigger("renderComplete",e)},t._clearRenderTimer=function(){clearTimeout(this._renderTimer),this._renderTimer=0},t._refreshContainerContentSize=function(){var e=this.outlines,t=e.start,n=e.end,e=this.options.gap,n=n.length?Math.max.apply(Math,n):0,t=t.length?Math.max.apply(Math,t):0,e=Math.max(t,n-e);this.containerManager.setContentSize(e)},t._resizeContainer=function(){this.containerManager.resize(),this.itemRenderer.setContainerRect(this.containerManager.getRect())},t._init=function(){this._resizeContainer()},t._renderItems=function(e,t){void 0===e&&(e={}),this._clearRenderTimer();var n=e.useResize||e.useOrgResize;n&&!t&&(this._resizeContainer(),this.itemRenderer.resize()),!this.getItems().length&&this.getChildren().length?this.syncElements(e):n?this.updateItems(this.items,e):this.checkReady(e)},e.defaultOptions=te,e.propertyTypes=ne,X([ce],e)}(u);function ye(e,t,n,i){return Math[i].apply(Math,e.slice(t,t+n))}var ve=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}H(t,e);var n=t.prototype;return n.applyGrid=function(m,e,t){for(var n,y=this.getComputedOutlineSize(m),v=this.getComputedOutlineLength(m),i=this.options,R=i.gap,r=i.align,S=i.columnSizeRatio,i=t.length,_=m.length,z=this._getAlignPoses(v,y),E="end"===e,I=E?"min":"max",C=E?"max":"min",e=[0],O=(e=i===v?t.slice():(n=i?Math[C].apply(Math,t):0,he(v).map(function(){return n}))).slice(),P=1<v?z[1]-z[0]:0,T="stretch"===r,o=function(e){for(var t,n,i,r,o=m[E?e:_-1-e],s=parseInt(o.attributes.column||"1",10),u=parseInt(o.attributes.maxColumn||"1",10),a=o.contentSize,c=Math.min(v,s||Math.max(1,Math.ceil((o.inlineSize+R)/P))),h=Math.min(v,Math.max(c,u)),l=(n=c,i=I,e=(t=O).length-n+1,r="max"===i?"min":"max",u="max"===i?"lastIndexOf":"indexOf",(e=he(e).map(function(e){return ye(t,e,n,r)}))[u](Math[i].apply(Math,e))),f=ye(O,l,c,C);c<h;){var d=l+c,p=l-1;if(E&&(v<=d||O[d]>f))break;if(!E&&(p<0||O[p])<f)break;E||--l,++c}l=Math.max(0,l),c=Math.min(v-l,c),(0<s&&1<c||T)&&(o.cssInlineSize=(c-1)*P+y),0<S&&(a=o.computedInlineSize/S,o.cssContentSize=a);s=z[l],f=E?f:f-R-a;o.cssInlinePos=s,o.cssContentPos=f;var g=E?f+a+R:f;he(c).forEach(function(e){O[l+e]=g})},s=0;s<_;++s)o(s);return{start:E?e:O,end:E?O:e}},n.getComputedOutlineSize=function(e){void 0===e&&(e=this.items);var t=this.options,n=t.gap,i=t.align,r=this.getContainerInlineSize(),o=this.columnSize||this.outlineSize,s=this.column||this.outlineLength,u=s||1,t=0;if("stretch"===i)s||(s=this.maxStretchColumnSize||1/0,u=Math.max(1,Math.ceil((r+n)/(s+n)))),t=(r+n)/(u||1)-n;else if(o)t=o;else if(e.length){for(var a=e[0],c=0,h=e;c<h.length;c++){var l=h[c],f=l.attributes;if(l.updateState===ee.UPDATED&&l.inlineSize&&!f.column&&!f.maxColumnCount){a=l;break}}t=a.inlineSize||0}else t=r;return t||0},n.getComputedOutlineLength=function(e){void 0===e&&(e=this.items);var t=this.gap,n=this.column||this.outlineLength,i=this.columnCalculationThreshold;return n||(n=this.getComputedOutlineSize(e),Math.min(e.length,Math.max(1,Math.floor((this.getContainerInlineSize()+t)/(n-i+t)))))},n._getAlignPoses=function(e,t){var n=this.options,i=n.align,r=n.gap,o=this.getContainerInlineSize(),s=he(e),u=0,a=0;return"justify"===i||"stretch"===i?(a=(n=e-1)?Math.max((o-t)/n,t+r):0,u=Math.min(0,o/2-(n*a+t)/2)):(t=(e-1)*(a=t+r)+t,"center"===i?u=(o-t)/2:"end"===i&&(u=o-t)),s.map(function(e){return u+e*a})},t.propertyTypes=Z(Z({},me.propertyTypes),{column:J.RENDER_PROPERTY,columnSize:J.RENDER_PROPERTY,columnSizeRatio:J.RENDER_PROPERTY,align:J.RENDER_PROPERTY,columnCalculationThreshold:J.RENDER_PROPERTY,maxStretchColumnSize:J.RENDER_PROPERTY}),t.defaultOptions=Z(Z({},me.defaultOptions),{align:"justify",column:0,columnSize:0,columnSizeRatio:0,columnCalculationThreshold:.5,maxStretchColumnSize:1/0}),X([ce],t)}(me);function Re(e,t,n){return function(e,t){for(var n=[],i=t;i;)n.push(i),i=e[i];return n.reverse(),n}(function(e,t,n){var i={},r={};r[t]=0;var o,s,u,a,c,h,l=new Se(function(e){return e.cost});for(l.push({value:t,cost:0});l.size();)for(var f in s=(o=l.pop()).value,u=o.cost,a=e(s)||{})c=u+a[f],h=r[f],(void 0===r[f]||c<h)&&(r[f]=c,l.push({value:f,cost:c}),i[f]=s);if(void 0!==r[n])return i;throw n=["Could not find a path from ",t," to ",n,"."].join(""),new Error(n)}(e,t,n),n)}var Se=function(){function e(e){this.content=[],this.scoreFunction=e}var t=e.prototype;return t.push=function(e){this.content.push(e),this.bubbleUp(this.content.length-1)},t.pop=function(){var e=this.content[0],t=this.content.pop();return 0<this.content.length&&(this.content[0]=t,this.sinkDown(0)),e},t.size=function(){return this.content.length},t.bubbleUp=function(e){for(var t=e,n=this.content[t];0<t;){var i=Math.floor((t+1)/2)-1,r=this.content[i];if(!(this.scoreFunction(n)<this.scoreFunction(r)))break;this.content[i]=n,this.content[t]=r,t=i}},t.sinkDown=function(e){for(var t=this.content.length,n=this.content[e],i=this.scoreFunction(n);;){var r,o=2*(e+1),s=o-1,u=null;if(s<t&&(r=this.content[s],(r=this.scoreFunction(r))<i&&(u=s)),o<t&&(s=this.content[o],this.scoreFunction(s)<(null==u?i:r)&&(u=o)),null===u)break;this.content[e]=this.content[u],this.content[u]=n,e=u}},e}();function _e(e,t){var n=e.orgInlineSize,i=e.orgContentSize;if(!n||!i)return t;var r=parseFloat(e.gridData.inlineOffset)||0,e=parseFloat(e.gridData.contentOffset)||0;return(i<=e?1:(n-r)/(i-e))*(t-e)+r}var ze=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}H(t,e);var n=t.prototype;return n.applyGrid=function(e,t,n){var i=this.options,s=i.attributePrefix,u=i.horizontal;e.forEach(function(e){var t,n,i,r,o;e.isUpdate&&(t=e.element,r=e.attributes,n=e.gridData,i=parseFloat(r.inlineOffset)||n.inlineOffset||0,o=parseFloat(r.contentOffset)||0|n.contentOffset,!t||"inlineOffset"in r||"contentOffset"in r||e.mountState!==$.MOUNTED||(r=t.querySelector("["+s+"maintained-target]"))&&(e=t.offsetWidth-t.clientWidth+t.scrollWidth-r.clientWidth,r=t.offsetHeight-t.clientHeight+t.scrollHeight-r.clientHeight,o=u?(i=r,e):(i=e,r)),n.inlineOffset=i,n.contentOffset=o)});var r=this.options.rowRange,i=[];return e.length&&(i=r?this._getRowPath(e):this._getPath(e)),this._setStyle(e,i,n,"end"===t)},n._getRowPath=function(e){var t=this._getColumnRange(),n=this._getRowRange(),n=this._getRowLink(e,{path:[0],cost:0,length:0,currentNode:0},t,n);return null!==(n=null==n?void 0:n.path.map(function(e){return""+e}))&&void 0!==n?n:[]},n._getRowLink=function(e,t,n,i){var r=n[0],o=i[0],s=i[1],u=e.length,a=t.path,c=t.length,h=t.cost,l=t.currentNode;if(l<u&&(s<=c||u<l+r)){r=le(u-l,n)*Math.abs(this._getCost(e,l,u));return Z(Z({},t),{length:c+1,path:Q(Q([],a),[u]),currentNode:u,cost:h+r,isOver:!0})}return u<=l?Z(Z({},t),{currentNode:u,isOver:c<o||s<c}):this._searchRowLink(e,t,u,n,i)},n._searchRowLink=function(e,t,n,i,r){for(var o,s=i[0],u=i[1],a=t.currentNode,c=t.path,h=t.length,l=t.cost,f=Math.min(n,a+u),d=[],p=a+s;p<=f;++p)p!==a&&(o=Math.abs(this._getCost(e,a,p)),(o=this._getRowLink(e,{path:Q(Q([],c),[p]),length:h+1,cost:l+o,currentNode:p},i,r))&&d.push(o));return d.sort(function(e,t){var n=e.isOver;return n!==t.isOver?n?1:-1:le(e.length,r)-le(t.length,r)||e.cost-t.cost}),d[0]},n._getExpectedRowSize=function(e){var t=this.options.gap,r=this.getContainerInlineSize()-t*(e.length-1),o=0,s=0;return e.forEach(function(e){var t,n=e.orgInlineSize,i=e.orgContentSize;n&&i?(t=parseFloat(e.gridData.inlineOffset)||0,e=parseFloat(e.gridData.contentOffset)||0,o+=i=i<=e?1:(n-t)/(i-e),s+=e*i,r-=t):o+=1}),o?(r+s)/o:0},n._getExpectedInlineSize=function(e,n){var t=this.options.gap,i=e.reduce(function(e,t){return e+_e(t,n)},0);return i?i+t*(e.length-1):0},n._getCost=function(e,t,n){var i=e.slice(t,n),e=this._getExpectedRowSize(i),t=this._getSizeRange(),n=t[0],t=t[1];if(this.isCroppedSize){if(n<=e&&e<=t)return 0;i=this._getExpectedInlineSize(i,e<n?n:t);return Math.pow(i-this.getContainerInlineSize(),2)}if(isFinite(t)){if(e<n)return Math.pow(e-n,2)+Math.pow(t,2);if(t<e)return Math.pow(e-t,2)+Math.pow(t,2)}else if(e<n)return Math.max(Math.pow(n,2),Math.pow(e,2))+Math.pow(t,2);return e-n},n._getPath=function(o){var s=this,u=o.length,e=this.options.columnRange,e=ae(e)?e:[e,e],a=e[0],c=e[1];return Re(function(e){for(var t={},n=parseInt(e,10),i=Math.min(n+a,u);i<=u&&!(c<i-n);++i){var r=s._getCost(o,n,i);r<0&&i===u&&(r=0),t[""+i]=Math.pow(r,2)}return t},"0",""+u)},n._setStyle=function(e,t,n,i){var s=this;void 0===n&&(n=[]);var r=this.options,u=r.gap,a=r.isCroppedSize,c=r.displayedRow,h=this._getSizeRange(),n=n[0]||0,l=this.getContainerInlineSize(),t=function(e,t){for(var n=t.length,i=[],r=0;r<n-1;++r){var o=parseInt(t[r],10),s=parseInt(t[r+1],10);i.push(e.slice(o,s))}return i}(e,t),f=n,d=0;if(t.forEach(function(i,e){var t=i.length,r=s._getExpectedRowSize(i);a&&(r=Math.max(h[0],Math.min(r,h[1])));var n=s._getExpectedInlineSize(i,r),t=u*(t-1),o=(l-t)/(n-t);i.forEach(function(e,t){var n=_e(e,r),t=i[t-1],t=t?t.cssInlinePos+t.cssInlineSize+u:0;a&&(n*=o),e.setCSSGridRect({inlinePos:t,contentPos:f,inlineSize:n,contentSize:r})}),f+=u+r,(c<0||e<c)&&(d=f)}),i)return{start:[n],end:[d]};var o=f-n;return e.forEach(function(e){e.cssContentPos-=o}),{start:[n-o],end:[n]}},n.getComputedOutlineLength=function(){return 1},n.getComputedOutlineSize=function(){return this.getContainerInlineSize()},n._getRowRange=function(){var e=this.rowRange;return ae(e)?e:[e,e]},n._getColumnRange=function(){var e=this.columnRange;return ae(e)?e:[e,e]},n._getSizeRange=function(){var e=this.sizeRange;return ae(e)?e:[e,e]},t.propertyTypes=Z(Z({},me.propertyTypes),{columnRange:J.RENDER_PROPERTY,rowRange:J.RENDER_PROPERTY,sizeRange:J.RENDER_PROPERTY,isCroppedSize:J.RENDER_PROPERTY,displayedRow:J.RENDER_PROPERTY}),t.defaultOptions=Z(Z({},me.defaultOptions),{columnRange:[1,8],rowRange:0,sizeRange:[0,1/0],displayedRow:-1,isCroppedSize:!1}),X([ce],t)}(me);function Ee(e){var t=-1/0;return e.forEach(function(e){isFinite(e)&&(t=Math.max(t,e))}),isFinite(t)?t:0}function Ie(e,t,n){return Ee(e)+function(e,t,n){var i=e.length;if(!i)return 0;var r=function(e){var t=1/0;return e.forEach(function(e){isFinite(e)&&(t=Math.min(t,e))}),isFinite(t)?t:0}(t),o=Ee(e),s=0;if(!n)return 0;for(var u=0;u<i;++u){var a=e[u],c=t[u];isFinite(a)&&isFinite(c)&&(a=a-o,c=c-r,s=u?Math.max(s,s+a-c):a-c)}return s}(e,t,n)}function Ce(e,t,n){for(var i=n.inlinePos,r=n.inlineSize,o=n.contentPos,s=n.contentSize,u=i;u<i+r;++u)e[u]=Math.min(e[u],o),t[u]=Math.max(t[u],o+s)}var Oe=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}H(t,e);var n=t.prototype;return n.applyGrid=function(e,t,n){var i=this._getFrame(),r=i.inlineSize,o=i.contentSize,s=i.rects,u=this.options,a=u.gap,c=u.useFrameFill,u=this.getRectSize(r),h=u.inlineSize,l=u.contentSize,f=e.length;if(!f||!r||!o)return{start:n,end:n};for(var d=s.length,p=he(r).map(function(){return 1/0}),g=he(r).map(function(){return-1/0}),m=i.outline.map(function(e){return e*(l+a)}),y=0;y<f;y+=d)for(var v=Ie(g,m,c),R=0;R<d&&y+R<f;++R){var S=e[y+R],_=s[R],z=_.contentPos,E=_.inlinePos,I=_.contentSize,C=_.inlineSize,O=v+z*(l+a),_=E*(h+a),z=I*(l+a)-a,I=C*(h+a)-a;Ce(p,g,{inlinePos:E,inlineSize:C,contentPos:O,contentSize:z+a}),S.setCSSGridRect({inlinePos:_,contentPos:O,inlineSize:I,contentSize:z})}var P,t="end"===t,n=n.length?n:[0];n.length!==r&&(P=(t?Math.max:Math.min).apply(Math,n),n=he(r).map(function(){return P}));var p=p.map(function(e){return isFinite(e)?e:0}),g=g.map(function(e){return isFinite(e)?e:0}),T=t?Ie(n,p,c):Ie(g,n,c);return e.forEach(function(e){e.cssContentPos+=T}),{start:p.map(function(e){return e+T}),end:g.map(function(e){return e+T})}},n.getComputedOutlineLength=function(){var e=this.options.frame;return e.length?e[0].length:0},n.getComputedOutlineSize=function(){var e=this.options,t=e.gap,e=e.rectSize;return"object"==typeof e?e.inlineSize:e||(this.getContainerInlineSize()+t)/this.getComputedOutlineLength()-t},n.getRectSize=function(e){var t=this.options,n=t.gap,t=t.rectSize;if("object"==typeof t)return t;n=t||(this.getContainerInlineSize()+n)/e-n;return{inlineSize:n,contentSize:n}},n._getFrame=function(){for(var e=this.options.frame,t=e.length,n=t?e[0].length:0,i=[],r={},o=he(n).map(function(){return 1/0}),s=he(n).map(function(){return-1/0}),u=0;u<t;++u)for(var a=0;a<n;++a){var c=e[u][a];c&&(r[u+","+a]||(Ce(o,s,c=this._findRect(r,c,u,a,n,t)),i.push(c)))}return i.sort(function(e,t){return e.type<t.type?-1:1}),{rects:i,inlineSize:n,contentSize:t,outline:o}},n._findRect=function(e,t,n,i,r,o){for(var s=this.options.frame,u=1,a=1,c=i;c<r&&s[n][c]===t;++c)a=c-i+1;for(var h=n;h<o&&s[h][i]===t;++h)u=h-n+1;for(var l=n;l<n+u;++l)for(var f=i;f<i+a;++f)e[l+","+f]=!0;return{type:t,inlinePos:i,contentPos:n,inlineSize:a,contentSize:u}},t.propertyTypes=Z(Z({},me.propertyTypes),{frame:J.RENDER_PROPERTY,useFrameFill:J.RENDER_PROPERTY,rectSize:J.RENDER_PROPERTY}),t.defaultOptions=Z(Z({},me.defaultOptions),{frame:[],rectSize:0,useFrameFill:!0}),X([ce],t)}(me),Pe=function(){function e(e){var t,n=Z({orgInlineSize:0,orgContentSize:0,inlineSize:0,contentSize:0,inlinePos:0,contentPos:0,items:[]},e);for(t in n)this[t]=n[t]}var t=e.prototype;return t.scaleTo=function(e,t){var n=this.inlineSize?e/this.inlineSize:0,i=this.contentSize?t/this.contentSize:0;this.items.forEach(function(e){0!=n&&(e.inlinePos*=n,e.inlineSize*=n),0!=i&&(e.contentPos*=i,e.contentSize*=i)}),this.inlineSize=e,this.contentSize=t},t.push=function(e){this.items.push(e)},t.getOrgSizeWeight=function(){return this.orgInlineSize*this.orgContentSize},t.getSize=function(){return this.inlineSize*this.contentSize},t.getOrgRatio=function(){return 0===this.orgContentSize?0:this.orgInlineSize/this.orgContentSize},t.getRatio=function(){return 0===this.contentSize?0:this.inlineSize/this.contentSize},e}();function Te(e,t){t=e/t;return(t=t<1?1/t:t)-1}var be,Me,we,xe=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}H(t,e);var n=t.prototype;return n.applyGrid=function(e,t,n){var i=this,r=this.options,o=r.aspectRatio,s=r.gap,u=this.getContainerInlineSize(),a=u/o,n=n.length?n:[0],c="end"===t?Math.max.apply(Math,n):Math.min.apply(Math,n)-a-s,n=c+a+s,h=new Pe({});return e.forEach(function(e){e=new Pe({inlineSize:e.orgInlineSize,contentSize:e.orgContentSize,orgInlineSize:e.orgInlineSize,orgContentSize:e.orgContentSize});i._findBestFitArea(h,e),h.push(e),h.scaleTo(u+s,a+s)}),e.forEach(function(e,t){var n=h.items[t],i=n.inlineSize-s,r=n.contentSize-s,t=c+n.contentPos,n=n.inlinePos;e.setCSSGridRect({inlinePos:n,contentPos:t,inlineSize:i,contentSize:r})}),{start:[c],end:[n]}},n._findBestFitArea=function(e,p){if(0===e.getRatio())return e.orgInlineSize=p.inlineSize,e.orgContentSize=p.contentSize,e.inlineSize=p.inlineSize,void(e.contentSize=p.contentSize);var g,t,n,i,r,m=1/0,y=!1,v={inlineSize:0,contentSize:0},R={inlineSize:0,contentSize:0},S=this._getWeight("size"),_=this._getWeight("ratio");e.items.forEach(function(e){for(var t=Te(e.getOrgSizeWeight(),e.getSize())*S,n=Te(e.getOrgRatio(),e.getRatio())*_,i=e.inlineSize,r=e.contentSize,o=0;o<2;++o){var s=void 0,u=void 0,a=void 0,c=void 0;0===o?(a=s=i,c=r-(u=r*(p.contentSize/(e.orgContentSize+p.contentSize)))):(c=u=r,a=i-(s=i*(p.inlineSize/(e.orgInlineSize+p.inlineSize))));var h=s*u,l=s/u,f=a*c,d=c/c,h=Te(p.getSize(),h)*S;h+=Te(p.getRatio(),l)*_,h+=Te(e.getOrgSizeWeight(),f)*S-t,(h+=Te(e.getOrgRatio(),d)*_-n)===Math.min(h,m)&&(m=h,g=e,y=0===o,v.inlineSize=s,v.contentSize=u,R.inlineSize=a,R.contentSize=c)}}),t=g,n=v,i=R,r=y,(e=p).contentSize=n.contentSize,e.inlineSize=n.inlineSize,t.contentSize=i.contentSize,t.inlineSize=i.inlineSize,r?(e.contentPos=t.contentPos+t.contentSize,e.inlinePos=t.inlinePos):(e.inlinePos=t.inlinePos+t.inlineSize,e.contentPos=t.contentPos)},n.getComputedOutlineLength=function(){return 1},n.getComputedOutlineSize=function(){return this.getContainerInlineSize()},n._getWeight=function(e){var t=this.options,n=t.weightPriority;return n===e?100:"custom"===n?t[e+"Weight"]:1},t.propertyTypes=Z(Z({},me.propertyTypes),{aspectRatio:J.RENDER_PROPERTY,sizeWeight:J.RENDER_PROPERTY,ratioWeight:J.RENDER_PROPERTY,weightPriority:J.RENDER_PROPERTY}),t.defaultOptions=Z(Z({},me.defaultOptions),{aspectRatio:1,sizeWeight:1,ratioWeight:1,weightPriority:"custom"}),X([ce],t)}(me),e="undefined"!=typeof window?window.navigator.userAgent:"",De=/iPhone|iPad/.test(e),Le="infinitegrid-container",Ne={renderOnPropertyChange:!0,useFit:!0,autoResize:!0},ke=_({},ne),Ae={START:"start",END:"end",NONE:""},Ge={CHANGE_SCROLL:"changeScroll",REQUEST_APPEND:"requestAppend",REQUEST_PREPEND:"requestPrepend",RENDER_COMPLETE:"renderComplete",CONTENT_ERROR:"contentError"},Ve={type:!0,groupKey:!0,key:!0,element:!0,html:!0,data:!0},j=["insertByGroupIndex","updateItems","getItems","getVisibleItems","getGroups","getVisibleGroups","renderItems","getContainerElement","getScrollContainerElement","getWrapperElement","setStatus","getStatus","removePlaceholders","prependPlaceholders","appendPlaceholders","getStartCursor","getEndCursor","setCursors"];(C=be=be||{})[C.NORMAL=0]="NORMAL",C[C.VIRTUAL=1]="VIRTUAL",C[C.LOADING=2]="LOADING",(e=Me=Me||{})[e.NORMAL=0]="NORMAL",e[e.VIRTUAL=1]="VIRTUAL",e[e.LOADING=2]="LOADING",(C=we=we||{})[C.NOT_REMOVE=0]="NOT_REMOVE",C[C.MINIMIZE_INVISIBLE_ITEMS=1]="MINIMIZE_INVISIBLE_ITEMS",C[C.MINIMIZE_INVISIBLE_GROUPS=2]="MINIMIZE_INVISIBLE_GROUPS",C[C.REMOVE_INVISIBLE_GROUPS=3]="REMOVE_INVISIBLE_GROUPS";var Ke=function(r){function e(e,t){var n,i=r.call(this,e,_({html:"",type:Me.NORMAL,cssRect:{top:-9999,left:-9999}},t))||this;return i.type===Me.VIRTUAL&&((i.rect.width||i.rect.height)&&(i.mountState=$.UNMOUNTED),n=i.orgRect,e=i.rect,(t=i.cssRect).width?e.width=t.width:n.width&&(e.width=n.width),t.height?e.height=t.height:n.height&&(e.height=n.height)),i}o(e,r);var t=e.prototype;return t.getVirtualStatus=function(){return{type:Me.VIRTUAL,groupKey:this.groupKey,key:this.key,orgRect:this.orgRect,rect:this.rect,cssRect:this.cssRect,attributes:this.attributes}},t.getMinimizedStatus=function(){var e=_(_({},r.prototype.getMinimizedStatus.call(this)),{type:Me.NORMAL,groupKey:this.groupKey});return this.html&&(e.html=this.html),e},e}(ge),Ue=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="",e}o(e,t);var n=e.prototype;return n.getLoadingItem=function(){return this.items[0]||null},n.setLoadingItem=function(e){if(e){var t=this.getLoadingItem();if(t)for(var n in e)t[n]=e[n];else this.items=[new Ke(this.options.horizontal,_(_({},e),{type:Me.LOADING,key:"__INFINITEGRID__LOADING_ITEM"}))]}else this.items=[]},n.applyGrid=function(e,t,n){if(!e.length)return{start:n,end:n};var n=n.length?h(n):[0],e=e[0],i=e.contentSize+this.gap;if(e.cssInlinePos=this.getContainerInlineSize()/2-e.inlineSize/2,"end"===t){var r=Math.max.apply(Math,n);return e.cssContentPos=r,{start:n,end:n.map(function(e){return e+i})}}r=Math.min.apply(Math,n);return e.cssContentPos=r-i,{start:n.map(function(e){return e-i}),end:n}},e}(me);function je(e){return e===window}function Fe(e){return"number"==typeof e}function qe(e){return"string"==typeof e}function Be(e){return e.reduce(function(e,t){return h(e,t)},[])}function Ye(e){var t,n={},i={},r=me.defaultOptions;for(t in e){var o=e[t];t in Ne||(i[t]=o),t in r&&(n[t]=o)}return _(_({},n),{gridOptions:i})}function We(e){var i,r=[],o={},s={};e.filter(function(e){return null!=e.groupKey}).forEach(function(e){e=e.groupKey;s[e]=!0});var u=!1;return e.forEach(function(e){null!=e.groupKey?u=!1:(u||(i=Qe(s),u=!0,s[i]=!0),e.groupKey=i);var t=e.groupKey,n=o[t];n||(o[t]=n={groupKey:t,items:[]},r.push(n)),n.items.push(e)}),r}function He(e,t,n,i){var t=c(e,t,function(e){return e}),r=-1,o=-1;return t.maintained.forEach(function(e){var t=e[0],e=e[1];n<=t&&t<=i&&(o=-1===r?r=e:(r=Math.min(r,e),Math.max(o,e)))}),{startCursor:r,endCursor:o}}function Ze(e,t,n){var i=[];if("start"===t){if(-1===(o=tt(e,function(e){return e.type===be.NORMAL})))return[];var r=tt(e,function(t){return 0<=tt(n,function(e){return e.groupKey===t.groupKey})}),r=0<=r?Math.min(o,r):o,i=e.slice(0,r)}else{if(-1===(o=nt(e,function(e){return e.type===be.NORMAL})))return[];var r=nt(e,function(t){return 0<=tt(n,function(e){return e.groupKey===t.groupKey})}),o=0<=r?Math.max(o,r):o;i=e.slice(o+1)}return i}function Xe(e){var t,i=e.prototype;for(t in e.propertyTypes)!function(n){Object.defineProperty(i,n,{enumerable:!0,configurable:!0,get:function(){var e=this.groupManager.options;return(n in e?e:e.gridOptions)[n]},set:function(e){var t;this.groupManager[n]!==e&&(this.groupManager.gridOptions=((t={})[n]=e,t))}})}(t)}function Qe(e){for(var t=0;;){var n="infinitegrid_"+t++;if(!(n in e))return n}}function Je(e){var t=document.createElement("div");return t.innerHTML=e,et(t.children)}function $e(e,i){e=qe(e)?Je(e):e;return e.map(function(e){var t,n="";if(qe(e))n=e;else{if(!("parentNode"in e))return _({groupKey:i},e);n=(t=e).outerHTML}return{key:void 0,groupKey:i,html:n,element:t}})}function et(e){var t=[];if(e)for(var n=e.length,i=0;i<n;i++)t.push(e[i]);return t}function tt(e,t){for(var n=e.length,i=0;i<n;++i)if(t(e[i],i))return i;return-1}function nt(e,t){for(var n=e.length-1;0<=n;--n)if(t(e[n],n))return n;return-1}function it(e,n){return e.length===n.length&&e.every(function(e,t){return n[t]===e})}function rt(e){return Be(e.map(function(e){return e.grid.getItems()}))}function ot(e,t){return t?e:e.filter(function(e){return e.type!==Me.VIRTUAL})}var st,ut,e=(st=j,function(e,r){st.forEach(function(i){i in e||(e[i]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=(n=this[r])[i].apply(n,e);return n===this[r]?this:n})})}),at=function(i){function e(e,t){var n,n=i.call(this,e,(t=(n=t).gridOptions,n=z(n,["gridOptions"]),_(_({},Ye(t)),n)))||this;return n.groupItems=[],n.groups=[],n.itemKeys={},n.groupKeys={},n.startCursor=0,n.endCursor=0,n._placeholder=null,n._loadingGrid=new Ue(e,{externalContainerManager:n.containerManager,useFit:!1,autoResize:!1,renderOnPropertyChange:!1,gap:n.gap}),n._mainGrid=n._makeGrid(),n}o(e,i);var t=e.prototype;return Object.defineProperty(t,"gridOptions",{set:function(n){var e,t=Ye(n),i=t.gridOptions,r=z(t,["gridOptions"]),t=this._checkShouldRender(n);for(e in this.options.gridOptions=_(_({},this.options.gridOptions),i),h([this._mainGrid],this.groups.map(function(e){return e.grid})).forEach(function(e){for(var t in n)e[t]=n[t]}),r)this[e]=r[e];this._loadingGrid.gap=this.gap,t&&this.scheduleRender()},enumerable:!1,configurable:!0}),t.getItemByKey=function(e){return this.itemKeys[e]||null},t.getGroupItems=function(e){return ot(this.groupItems,e)},t.getVisibleItems=function(e){return ot(this.items,e)},t.getRenderingItems=function(){return this.hasPlaceholder()?this.items:this.items.filter(function(e){return e.type!==Me.VIRTUAL})},t.getGroups=function(e){return ot(this.groups,e)},t.hasVisibleVirtualGroups=function(){return this.getVisibleGroups(!0).some(function(e){return e.type===be.VIRTUAL})},t.hasPlaceholder=function(){return!!this._placeholder},t.hasLoadingItem=function(){return!!this._getLoadingItem()},t.updateItems=function(e,t){return void 0===e&&(e=this.groupItems),i.prototype.updateItems.call(this,e,t)},t.setPlaceholder=function(e){this._placeholder=e,this._updatePlaceholder()},t.getLoadingType=function(){return this._loadingGrid.type},t.startLoading=function(e){return this._loadingGrid.type=e,this.items=this._getRenderingItems(),!0},t.endLoading=function(){var e=this._loadingGrid.type;return this._loadingGrid.type="",this.items=this._getRenderingItems(),!!e},t.setLoading=function(e){this._loadingGrid.setLoadingItem(e),this.items=this._getRenderingItems()},t.getVisibleGroups=function(e){return ot(this.groups.slice(this.startCursor,this.endCursor+1),e)},t.getComputedOutlineLength=function(e){return void 0===e&&(e=this.items),this._mainGrid.getComputedOutlineLength(e)},t.getComputedOutlineSize=function(e){return void 0===e&&(e=this.items),this._mainGrid.getComputedOutlineSize(e)},t.applyGrid=function(e,i,t){var r=this,n=this.groups.slice();if(!n.length)return{start:[],end:[]};var o=this._loadingGrid;o.getLoadingItem()&&("start"===o.type?n.unshift(this._getLoadingGroup()):"end"===o.type&&n.push(this._getLoadingGroup()));var o=n.slice(),s=t;"start"===i&&o.reverse();var t=this.groupItems,u=this.getComputedOutlineLength(t),a=this.getComputedOutlineSize(t);return o.forEach(function(e){var t=e.grid,n=t.getItems(),e=e.type===be.VIRTUAL&&!n[0],n=n.filter(function(e){return e.mountState!==$.UNCHECKED&&e.rect.width});t.outlineLength=u,t.outlineSize=a,n=e?r._applyVirtualGrid(t,i,s):n.length?t.applyGrid(n,i,s):{start:h(s),end:h(s)},t.setOutlines(n),s=n[i]}),{start:n[0].grid.getOutlines().start,end:n[n.length-1].grid.getOutlines().end}},t.syncItems=function(e){var o=this,t=this.itemKeys;this.itemKeys={};var n=this._syncItemInfos(e.map(function(e){var t,n={};for(t in e)t in Ve&&(n[t]=e[t]);return n}),t),s=this.groupKeys,e=We(n),t=this._splitVirtualGroups("start",e),n=this._splitVirtualGroups("end",e),e=(e=h(t,this._mergeVirtualGroups(e),n)).map(function(e){var t=e.groupKey,n=e.items,i=!n[0]||n[0].type===Me.VIRTUAL,r=null!==(e=null===(r=s[t])||void 0===r?void 0:r.grid)&&void 0!==e?e:o._makeGrid(),e=i?n:n.filter(function(e){return e.type===Me.NORMAL});return r.setItems(e),{type:i?be.VIRTUAL:be.NORMAL,groupKey:t,grid:r,items:e,renderItems:n}});this._registerGroups(e)},t.renderItems=function(e){var t;return(e=void 0===e?{}:e).useResize&&(this.groupItems.forEach(function(e){e.updateState=ee.NEED_UPDATE}),(t=this._getLoadingItem())&&(t.updateState=ee.NEED_UPDATE)),i.prototype.renderItems.call(this,e)},t.setCursors=function(e,t){this.startCursor=e,this.endCursor=t,this.items=this._getRenderingItems()},t.getStartCursor=function(){return this.startCursor},t.getEndCursor=function(){return this.endCursor},t.getGroupStatus=function(e,t){var n,i=this.startCursor,r=this.endCursor,o=this.groups,s=o[i],u=o[r],a=i,c=r,h=e===we.MINIMIZE_INVISIBLE_ITEMS,l=e===we.MINIMIZE_INVISIBLE_GROUPS;if(e===we.REMOVE_INVISIBLE_GROUPS)n=this.getVisibleGroups(t),c=n.length-1,a=0;else if(n=this.getGroups(t),!t){for(var a=-1,c=-1,f=i;f<=r;++f)if((d=o[f])&&d.type!==be.VIRTUAL){a=n.indexOf(d);break}for(var d,f=r;i<=f;--f)if((d=o[f])&&d.type!==be.VIRTUAL){c=n.lastIndexOf(d);break}}var p=n.map(function(e,t){var n=e.grid,i=e.groupKey,e=t<a||c<t,r=h&&e,t=l&&e,e=n.getItems(),e=t?[]:e.map(function(e){return r?e.getVirtualStatus():e.getMinimizedStatus()});return{type:t||r?be.VIRTUAL:be.NORMAL,groupKey:i,outlines:n.getOutlines(),items:e}}),e=this.getGroupItems(),t=e.indexOf(null==s?void 0:s.items[0]),e=e.indexOf(null==u?void 0:u.items.slice().reverse()[0]);return{cursors:[a,c],orgCursors:[i,r],itemCursors:[t,e],startGroupKey:null==s?void 0:s.groupKey,endGroupKey:null==u?void 0:u.groupKey,groups:p,outlines:this.outlines}},t.fitOutlines=function(e){void 0===e&&(e=this.useFit);var i,t=this.groups,n=t[0];n&&(n=n.grid.getOutlines().start,i=n.length?Math.min.apply(Math,n):0,!e&&0<i||(t.forEach(function(e){var t=e.grid,n=t.getOutlines(),e=n.start,n=n.end;t.setOutlines({start:e.map(function(e){return e-i}),end:n.map(function(e){return e-i})})}),this.groupItems.forEach(function(e){var t=e.cssContentPos;Fe(t)&&(e.cssContentPos=t-i)})))},t.setGroupStatus=function(e){var o=this;this.itemKeys={},this.groupItems=[],this.items=[];var s=this.groupKeys,t=e.groups.map(function(e){var t=e.type,n=e.groupKey,i=e.items,r=e.outlines,e=o._syncItemInfos(i),i=null!==(i=null===(i=s[n])||void 0===i?void 0:i.grid)&&void 0!==i?i:o._makeGrid();return i.setOutlines(r),i.setItems(e),{type:t,groupKey:n,grid:i,items:e,renderItems:e}});this.setOutlines(e.outlines),this._registerGroups(t),this._updatePlaceholder(),this.setCursors(e.cursors[0],e.cursors[1])},t.appendPlaceholders=function(e,t){return this.insertPlaceholders("end",e,t)},t.prependPlaceholders=function(e,t){return this.insertPlaceholders("start",e,t)},t.removePlaceholders=function(e){var t,n,i=this.groups,r=i.length;"start"===e?(n=tt(i,function(e){return e.type===be.NORMAL}),i.splice(0,n)):"end"===e?(n=nt(i,function(e){return e.type===be.NORMAL}),i.splice(n+1,r-n-1)):(t=e.groupKey,-1<(n=tt(i,function(e){return e.groupKey===t}))&&i.splice(n,1)),this.syncItems(rt(this.getGroups()))},t.insertPlaceholders=function(e,t,n){var i;void 0===n&&(n=Qe(this.groupKeys));var r=[];Fe(t)?r=function(e){for(var t=[],n=0;n<e;++n)t.push(n);return t}(t).map(function(){return{type:Me.VIRTUAL,groupKey:n}}):Array.isArray(t)&&(r=t.map(function(e){return _(_({groupKey:n},e),{type:Me.VIRTUAL})}));t=this._makeGrid(),r=this._syncItemInfos(r,this.itemKeys);this._updatePlaceholder(r),t.setItems(r);t={type:be.VIRTUAL,groupKey:n,grid:t,items:r,renderItems:r};return this.groupKeys[n]=t,"end"===e?(this.groups.push(t),(i=this.groupItems).push.apply(i,r)):(this.groups.splice(0,0,t),(i=this.groupItems).splice.apply(i,h([0,0],r)),-1<this.startCursor&&(++this.startCursor,++this.endCursor)),{group:t,items:r}},t.shouldRerenderItems=function(){var n=!1;return this.getVisibleGroups().forEach(function(e){var t=e.items;t.length===e.renderItems.length||t.every(function(e){return e.mountState===$.UNCHECKED})||(n=!0,e.renderItems=h(t))}),n&&(this.items=this._getRenderingItems()),n},t._getGroupItems=function(){return rt(this.getGroups(!0))},t._getRenderingItems=function(){var e=Be(this.getVisibleGroups(!0).map(function(e){return e.renderItems})),t=this._loadingGrid,n=t.getLoadingItem();return n&&("end"===t.type?e.push(n):"start"===t.type&&e.unshift(n)),e},t._checkShouldRender=function(e){var t,n=this.options.gridConstructor,i=this.gridOptions,r=n.propertyTypes;for(t in i)if(!(t in e)&&r[t]===J.RENDER_PROPERTY)return!0;for(t in e)if(i[t]!==e[t]&&r[t]===J.RENDER_PROPERTY)return!0;return!1},t._applyVirtualGrid=function(e,t,n){var i=n.length?h(n):[0],e=e.getOutlines(),t=e["end"===t?"start":"end"];return t.length!==i.length||t.some(function(e,t){return e!==i[t]})?{start:h(i),end:h(i)}:e},t._syncItemInfos=function(e,r){void 0===r&&(r={});var o=this.options.horizontal,s=this.itemKeys;return e.filter(function(e){return null!=e.key}).forEach(function(e){var t=e.key,n=r[t];n?n.type===Me.VIRTUAL&&e.type!==Me.VIRTUAL?s[t]=new Ke(o,_({orgRect:n.orgRect,rect:n.rect},e)):(e.data&&(n.data=e.data),s[t]=n):s[t]=new Ke(o,_({},e))}),e.map(function(e){var t=e.key;null==e.key&&(t=Qe(s));var n,i=s[t];return i||((n=r[t])?(i=n,e.data&&(i.data=e.data)):i=new Ke(o,_(_({},e),{key:t})),s[t]=i),i})},t._registerGroups=function(e){var t={};e.forEach(function(e){t[e.groupKey]=e}),this.groups=e,this.groupKeys=t,this.groupItems=this._getGroupItems()},t._splitVirtualGroups=function(e,t){var t=Ze(this.groups,e,t),n=this.itemKeys;return t.forEach(function(e){e.renderItems.forEach(function(e){n[e.key]=e})}),t},t._mergeVirtualGroups=function(e){var i=this.itemKeys,r=this.groupKeys;return e.forEach(function(e){var t,n=r[e.groupKey];!n||(t=e.items).every(function(e){return e.mountState===$.UNCHECKED})&&n.renderItems.forEach(function(e){e.type!==Me.VIRTUAL||i[e.key]||(t.push(e),i[e.key]=e)})}),e},t._updatePlaceholder=function(e){void 0===e&&(e=this.groupItems);var t=this._placeholder;t&&e.filter(function(e){return e.type===Me.VIRTUAL}).forEach(function(e){!function(e,t){for(var n in t){var i=t[n];e[n]="object"==typeof i?_(_({},e[n]),i):t[n]}}(e,t)})},t._makeGrid=function(){var e=this.options.gridConstructor,t=this.gridOptions;return new e(this.containerElement,_(_({},t),{useFit:!1,autoResize:!1,useResizeObserver:!1,observeChildren:!1,renderOnPropertyChange:!1,externalContainerManager:this.containerManager,externalItemRenderer:this.itemRenderer}))},t._getLoadingGroup=function(){var e=this._loadingGrid,t=e.getItems();return{groupKey:"__INFINITEGRID__LOADING_GRID",type:be.NORMAL,grid:e,items:t,renderItems:t}},t._getLoadingItem=function(){return this._loadingGrid.getLoadingItem()},e.defaultOptions=_(_({},me.defaultOptions),{gridConstructor:null,gridOptions:{}}),e.propertyTypes=_(_({},me.propertyTypes),{gridConstructor:J.PROPERTY,gridOptions:J.PROPERTY}),n([ce],e)}(me),ct=function(n){function e(e){var t=n.call(this)||this;return t.startCursor=-1,t.endCursor=-1,t.size=0,t.items=[],t.itemKeys={},t.options=_({threshold:0,useRecycle:!0,defaultDirection:"end"},e),t}o(e,n);var t=e.prototype;return t.scroll=function(n){var e=this.startCursor,t=this.endCursor,i=this.items,r=i.length,o=this.size,s=this.options,u=s.defaultDirection,a=s.threshold,c=s.useRecycle,h="end"===u;if(r)if(-1!==e&&-1!==t){var l=n+o,f=Math.max.apply(Math,i[e].startOutline),d=Math.min.apply(Math,i[t].endOutline),s=i.map(function(e){var t=e.startOutline,e=e.endOutline;if(!t.length||!e.length)return!1;t=Math.min.apply(Math,t),e=Math.max.apply(Math,e);return t-a<=l&&n<=e+a}),u=0<e,o=t<r-1,f=n<=f+a,d=d-a<=l,p=s.indexOf(!0),g=s.lastIndexOf(!0);-1===p&&(p=e,g=t),c||(p=Math.min(p,e),g=Math.max(g,t)),p===e&&u&&f&&--p,g===t&&o&&d&&(g+=1);c=i.slice(p,g+1);if(c.every(function(e){return!0===e.isVirtual})){for(var m=!1,y=p-1;0<=y;--y)if(!i[y].isVirtual){p=y,m=!0;break}if(!m)for(y=g+1;y<r;++y)if(!i[y].isVirtual){g=y,m=!0;break}m&&(c=i.slice(p,g+1))}var v,R,u=c.some(function(e){return!0===e.isVirtual});(e===p&&t===g||(this.trigger("change",{prevStartCursor:e,prevEndCursor:t,nextStartCursor:p,nextEndCursor:g}),u))&&(u?(u=null===(o=c[0])||void 0===o?void 0:o.isVirtual,o=null===(o=c[c.length-1])||void 0===o?void 0:o.isVirtual,h&&d||!u?!h&&f||!o||c[R=(v=nt(c,function(e){return!e.isVirtual}))+1]&&this.trigger("requestAppend",{key:c[v].key,nextKey:c[R].key,nextKeys:c.slice(R).map(function(e){return e.key}),isVirtual:!0}):c[R=(-1===(v=tt(c,function(e){return!e.isVirtual}))?c.length:v)-1]&&this.trigger("requestPrepend",{key:c[v].key,nextKey:c[R].key,nextKeys:c.slice(0,1+R).map(function(e){return e.key}),isVirtual:!0})):this._requestVirtualItems()||(h&&d||!f?!h&&f||!d||this.trigger("requestAppend",{key:i[t].key,isVirtual:!1}):this.trigger("requestPrepend",{key:i[e].key,isVirtual:!1})))}else{d=h?0:r-1;this.trigger("change",{prevStartCursor:e,prevEndCursor:t,nextStartCursor:d,nextEndCursor:d})}else this.trigger(h?"requestAppend":"requestPrepend",{key:void 0,isVirtual:!1})},t._requestVirtualItems=function(){var e="end"===this.options.defaultDirection,t=this.items,n=this.getVisibleItems(),i=n.filter(function(e){return!e.isVirtual}),r=n.length,o=i.length,s=this.getStartCursor(),u=this.getEndCursor();if(o===r)return!1;if(o){var a=i[0].key,c=i[o-1].key,i=tt(t,function(e){return e.key===a})-1,o=tt(t,function(e){return e.key===c})+1,u=o<=u,s=s<=i;if((e||!s)&&u)return this.trigger("requestAppend",{key:c,nextKey:t[o].key,isVirtual:!0}),!0;if((!e||!u)&&s)return this.trigger("requestPrepend",{key:a,nextKey:t[i].key,isVirtual:!0}),!0}else if(r){r=n[r-1];return e?this.trigger("requestAppend",{nextKey:n[0].key,isVirtual:!0}):this.trigger("requestPrepend",{nextKey:r.key,isVirtual:!0}),!0}return!1},t.setCursors=function(e,t){this.startCursor=e,this.endCursor=t},t.setSize=function(e){this.size=e},t.getStartCursor=function(){return this.startCursor},t.getEndCursor=function(){return this.endCursor},t.isLoading=function(e){var t=this.startCursor,n=this.endCursor,i=this.items,r=i[t],o=i[n],i=i.length;return!(e===Ae.END&&-1<n&&n<i-1&&!o.isVirtual&&!it(o.startOutline,o.endOutline))&&!(e===Ae.START&&0<t&&!r.isVirtual&&!it(r.startOutline,r.endOutline))},t.setItems=function(e){this.items=e;var t={};e.forEach(function(e){t[e.key]=e}),this.itemKeys=t},t.syncItems=function(e){var t=this.items,n=this.startCursor,i=this.endCursor,r=He(this.items.map(function(e){return e.key}),e.map(function(e){return e.key}),n,i),o=r.startCursor,s=r.endCursor,r=s-o!=i-n||-1===n||-1===o;return r||(r=0<(i=c(t.slice(n,i+1),e.slice(o,s+1),function(e){return e.key})).added.length||0<i.removed.length||0<i.changed.length),this.setItems(e),this.setCursors(o,s),r},t.getItems=function(){return this.items},t.getVisibleItems=function(){var e=this.startCursor,t=this.endCursor;return-1===e?[]:this.items.slice(e,t+1)},t.getItemByKey=function(e){return this.itemKeys[e]},t.getRenderedVisibleItems=function(){var e=this.getVisibleItems(),t=e.map(function(e){var t=e.startOutline,n=e.endOutline,e=t.length;return 0!==e&&e===n.length&&t.some(function(e,t){return n[t]!==e})}),n=t.indexOf(!0),t=t.lastIndexOf(!0);return-1===t?[]:e.slice(n,t+1)},t.destroy=function(){this.off(),this.startCursor=-1,this.endCursor=-1,this.items=[],this.size=0},e}(u),C=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.items=[],e.container=null,e.rendererKey=0,e._updateTimer=0,e._state={},e._isItemChanged=!1,e}o(e,t);var n=e.prototype;return n.updateKey=function(){this.rendererKey=Date.now()},n.getItems=function(){return this.items},n.setContainer=function(e){this.container=e},n.render=function(e,t){return this.syncItems(e,t)},n.update=function(e){var t=this;void 0===e&&(e={}),this._state=_(_({},this._state),e),this.trigger("update",{state:e}),clearTimeout(this._updateTimer),this._updateTimer=window.setTimeout(function(){t.trigger("requestUpdate",{state:e})})},n.updated=function(n){void 0===n&&(n=null!==(r=null===(i=this.container)||void 0===i?void 0:i.children)&&void 0!==r?r:[]);var e=this._diffResult,t=!!(e.added.length||e.removed.length||e.changed.length),i=this._state,r=this._isItemChanged,e=e.list;return this._isItemChanged=!1,this._state={},(this.items=e).forEach(function(e,t){e.element=n[t]}),this.trigger("updated",{items:e,elements:et(n),diffResult:this._diffResult,state:i,isItemChanged:r,isChanged:t}),t},n.syncItems=function(e,t){void 0===t&&(t={});var n=this.rendererKey,e=c(this.items,e.map(function(e){return _(_({},e),{renderKey:n+"_"+e.key})}),function(e){return e.renderKey});return this._isItemChanged=!!e.added.length||!!e.removed.length||!!e.changed.length,this._state=_(_({},this._state),t),this._diffResult=e},n.destroy=function(){this.off()},e}(u),ht=function(r){function e(){return null!==r&&r.apply(this,arguments)||this}return o(e,r),e.prototype.syncItems=function(n){var e=r.prototype.syncItems.call(this,n),t=e.added,i=e.list;return t.forEach(function(e){var t=n[e].orgItem;t.html&&!t.element&&(t.element=Je(t.html)[0]),i[e].element=t.element}),e},e}(function(a){function e(){return null!==a&&a.apply(this,arguments)||this}return o(e,a),e.prototype.render=function(e,t){var n=this.container,i=a.prototype.render.call(this,e,t),r=i.prevList,o=i.removed,e=i.ordered,t=i.added,s=i.list,u=h(r);return o.forEach(function(e){u.splice(e,1),n.removeChild(r[e].element)}),e.forEach(function(e){var t=e[0],e=e[1],t=u.splice(t,1)[0];u.splice(e,0,t),n.insertBefore(t.element,null!==(e=null===(e=u[e+1])||void 0===e?void 0:e.element)&&void 0!==e?e:null)}),t.forEach(function(e){var t=s[e];u.splice(e,0,t),n.insertBefore(t.element,null!==(e=null===(e=u[e+1])||void 0===e?void 0:e.element)&&void 0!==e?e:null)}),this.updated(n.children),i},e}(C)),lt=function(i){function e(e,t){var n=i.call(this)||this;return n.wrapper=e,n.prevScrollPos=null,n.scrollOffset=0,n.contentSize=0,n._isScrollIssue=De,n._onCheck=function(){var e=n.getScrollPos(),t=n.getOrgScrollPos();n.setScrollPos(t),null===e||n._isScrollIssue&&0===t||e===t?t&&(n._isScrollIssue=!1):(n._isScrollIssue=!1,n.trigger(new E("scroll",{direction:e<t?"end":"start",scrollPos:t,relativeScrollPos:n.getRelativeScrollPos()})))},n.options=_({container:!1,containerTag:"div",horizontal:!1},t),n._init(),n}o(e,i);var t=e.prototype;return t.getWrapper=function(){return this.wrapper},t.getContainer=function(){return this.container},t.getScrollContainer=function(){return this.scrollContainer},t.getScrollOffset=function(){return this.scrollOffset},t.getContentSize=function(){return this.contentSize},t.getRelativeScrollPos=function(){return(this.prevScrollPos||0)-this.scrollOffset},t.getScrollPos=function(){return this.prevScrollPos},t.setScrollPos=function(e){this.prevScrollPos=e},t.getOrgScrollPos=function(){var e=this.eventTarget,t=this.options.horizontal,n="scroll"+(t?"Left":"Top");return je(e)?window[t?"pageXOffset":"pageYOffset"]||document.documentElement[n]||document.body[n]:e[n]},t.setStatus=function(e){this.contentSize=e.contentSize,this.scrollOffset=e.scrollOffset,this.prevScrollPos=e.prevScrollPos,this.scrollTo(this.prevScrollPos)},t.getStatus=function(){return{contentSize:this.contentSize,scrollOffset:this.scrollOffset,prevScrollPos:this.prevScrollPos}},t.scrollTo=function(e){var t=this.eventTarget,n=this.options.horizontal?[e,0]:[0,e],e=n[0],n=n[1];je(t)?t.scroll(e,n):(t.scrollLeft=e,t.scrollTop=n)},t.scrollBy=function(e){var t,n,i;e&&(t=this.eventTarget,n=(i=this.options.horizontal?[e,0]:[0,e])[0],i=i[1],this.prevScrollPos+=e,je(t)?t.scrollBy(n,i):(t.scrollLeft+=n,t.scrollTop+=i))},t.resize=function(){var e=this.scrollContainer,t=this.options.horizontal,n=e===document.body,i=n?{top:0,left:0}:e.getBoundingClientRect(),r=this.container.getBoundingClientRect();this.scrollOffset=(this.prevScrollPos||0)+(t?r.left-i.left:r.top-i.top),this.contentSize=n?t?window.innerWidth:window.innerHeight:t?e.offsetWidth:e.offsetHeight},t.destroy=function(){var e,t,n,i=this.container;this.eventTarget.removeEventListener("scroll",this._onCheck),this._isCreateElement?(e=this.scrollContainer,t=document.createDocumentFragment(),n=et(i.childNodes),e.removeChild(i),n.forEach(function(e){t.appendChild(e)}),e.appendChild(t)):this.options.container&&(i.style.cssText=this._orgCSSText)},t._init=function(){var e=this.options,t=e.container,n=e.containerTag,i=e.horizontal,r=this.wrapper,e=r,o=r,r="";t?(t instanceof HTMLElement?o=t:!0===t?((o=document.createElement(n)).style.position="relative",o.className=Le,et(e.childNodes).forEach(function(e){o.appendChild(e)}),e.appendChild(o),this._isCreateElement=!0):o=e.querySelector(t),r=o.style.cssText,(n=e.style).overflowX=(t=i?["scroll","hidden"]:["hidden","scroll"])[0],n.overflowY=t[1],i&&(o.style.height="100%")):(e=document.body,r=o.style.cssText);i=e===document.body?window:e;i.addEventListener("scroll",this._onCheck),this._orgCSSText=r,this.container=o,this.scrollContainer=e,this.eventTarget=i,this.resize(),this.setScrollPos(this.getOrgScrollPos())},e}(u),ft=function(S){function e(e,t){var a=S.call(this)||this;a._waitType="",a._onScroll=function(e){var t=e.direction,n=e.scrollPos,e=e.relativeScrollPos;a._scroll(),a.trigger(new E(Ge.CHANGE_SCROLL,{direction:t,scrollPos:n,relativeScrollPos:e}))},a._onChange=function(e){a.setCursors(e.nextStartCursor,e.nextEndCursor)},a._onRendererUpdated=function(e){if(!e.isChanged)return a._checkEndLoading(),void a._scroll();var t=e.items,n=e.diffResult,i=n.added,r=n.removed,o=n.prevList,s=n.list;r.forEach(function(e){e=o[e].orgItem;e.mountState!==$.UNCHECKED&&(e.mountState=$.UNMOUNTED)}),t.forEach(function(e){e.orgItem.element=e.element});var u=a.options.horizontal,n=i.map(function(e){var t=s[e].orgItem,n=t.element;if(t.type!==Me.VIRTUAL)return t;e=_({},t.cssRect),t=t.rect;return!e.width&&t.width&&(e.width=t.width),!e.height&&t.height&&(e.height=t.height),new ge(u,{element:n,cssRect:e})}),t=a.containerManager;a.options.observeChildren&&(t.observeChildren(i.map(function(e){return s[e].element})),t.unobserveChildren(r.map(function(e){return o[e].element})));t=e.state,r=t.isRestore,t=t.isResize;a.itemRenderer.renderItems(n),r&&a._onRenderComplete({mounted:i.map(function(e){return s[e].orgItem}),updated:[],isResize:!1,direction:a.defaultDirection}),r&&!t&&!e.isItemChanged||a.groupManager.renderItems()},a._onResize=function(e){e.isResizeContainer?a._renderItems({useResize:!0},!0):0<(e=re(a.getVisibleItems(),e.childEntries)).length&&a.updateItems(e)},a._onRequestAppend=function(e){a._onRequestInsert(Ae.END,Ge.REQUEST_APPEND,e)},a._onRequestPrepend=function(e){a._onRequestInsert(Ae.START,Ge.REQUEST_PREPEND,e)},a._onContentError=function(e){var t=e.element,n=e.target,i=e.item,e=e.update;a.trigger(new E(Ge.CONTENT_ERROR,{element:t,target:n,item:i,update:e,remove:function(){a.removeByKey(i.key)}}))},a._onRenderComplete=function(e){var t=e.isResize,n=e.mounted,i=e.updated,r=e.direction,o=a.infinite,s=o.getRenderedVisibleItems(),u=s.length,e=r===Ae.END;a._syncInfinite(),u&&(u=s[e?0:u-1],o=o.getItemByKey(u.key),u=e?Math.min.apply(Math,o.startOutline)-Math.min.apply(Math,u.startOutline):Math.max.apply(Math,o.endOutline)-Math.max.apply(Math,u.endOutline),a.scrollManager.scrollBy(u)),a.trigger(new E(Ge.RENDER_COMPLETE,{isResize:t,direction:r,mounted:n.filter(function(e){return e.type!==Me.LOADING}),updated:i.filter(function(e){return e.type!==Me.LOADING}),startCursor:a.getStartCursor(),endCursor:a.getEndCursor(),items:a.getVisibleItems(!0),groups:a.getVisibleGroups(!0)})),a.groupManager.shouldRerenderItems()?a._update():(a._checkEndLoading(),a._scroll())},a.options=_(_(_({},a.constructor.defaultOptions),{renderer:(new ht).on("requestUpdate",function(){return a._render()})}),t);var n=a.options,i=n.gridConstructor,r=n.containerTag,o=n.container,s=n.renderer,u=n.threshold,c=n.useRecycle,h=z(n,["gridConstructor","containerTag","container","renderer","threshold","useRecycle"]),l=h.horizontal,f=h.attributePrefix,d=h.useTransform,p=h.percentage,g=h.isConstantSize,m=h.isEqualSize,y=h.autoResize,v=h.useResizeObserver,R=h.resizeDebounce,t=h.maxResizeDebounce,n=h.defaultDirection,e=qe(e)?document.querySelector(e):e,o=new lt(e,{container:o,containerTag:r,horizontal:l}).on({scroll:a._onScroll}),r=o.getContainer(),v=new de(r,{horizontal:l,autoResize:y,resizeDebounce:R,maxResizeDebounce:t,useResizeObserver:v}).on("resize",a._onResize),g=new pe({attributePrefix:f,horizontal:l,useTransform:d,percentage:p,isEqualSize:m,isConstantSize:g}),u=new ct({defaultDirection:n,useRecycle:c,threshold:u}).on({change:a._onChange,requestAppend:a._onRequestAppend,requestPrepend:a._onRequestPrepend});u.setSize(o.getContentSize());h=new at(r,{gridConstructor:i,externalItemRenderer:g,externalContainerManager:v,gridOptions:h});return h.on({renderComplete:a._onRenderComplete,contentError:a._onContentError}),s.setContainer(r),s.on("updated",a._onRendererUpdated),a.itemRenderer=g,a.groupManager=h,a.wrapperElement=e,a.scrollManager=o,a.containerManager=v,a.infinite=u,a.containerManager.resize(),a}o(e,S);var t=e.prototype;return t.renderItems=function(e){return this._renderItems(e=void 0===e?{}:e),this},t.getWrapperElement=function(){return this.scrollManager.getWrapper()},t.getScrollContainerElement=function(){return this.scrollManager.getScrollContainer()},t.getContainerElement=function(){return this.scrollManager.getContainer()},t.syncItems=function(e){return this.groupManager.syncItems(e),this._syncGroups(),this},t.setCursors=function(e,t,n){return this.groupManager.setCursors(e,t),this.infinite.setCursors(e,t),n?this._syncItems():(this._update(),this._checkEndLoading()),this},t.getStartCursor=function(){return this.infinite.getStartCursor()},t.getEndCursor=function(){return this.infinite.getEndCursor()},t.append=function(e,t){return this.insert(-1,e,t)},t.prepend=function(e,t){return this.insert(0,e,t)},t.insert=function(e,t,n){var i=this.groupManager.getGroupItems(),n=$e(t,n);return-1===e?i.push.apply(i,n):i.splice.apply(i,h([e,0],n)),this.syncItems(i)},t.insertByGroupIndex=function(e,t,n){var i=this.groupManager.getGroups()[e];if(!i)return this.append(t,n);var e=this.groupManager.getGroupItems(),r=i.groupKey,e=tt(e,function(e){return e.groupKey===r});return this.insert(e,t,n)},t.getStatus=function(e,t){return{containerManager:this.containerManager.getStatus(),itemRenderer:this.itemRenderer.getStatus(),groupManager:this.groupManager.getGroupStatus(e,t),scrollManager:this.scrollManager.getStatus()}},t.setPlaceholder=function(e){return this.groupManager.setPlaceholder(e),this},t.setLoading=function(e){return this.groupManager.setLoading(e),this},t.appendPlaceholders=function(e,t){var n=this,i=this.groupManager.appendPlaceholders(e,t);return this._syncGroups(!0),_(_({},i),{remove:function(){n.removePlaceholders({groupKey:i.group.groupKey})}})},t.prependPlaceholders=function(e,t){var n=this,i=this.groupManager.prependPlaceholders(e,t);return this._syncGroups(!0),_(_({},i),{remove:function(){n.removePlaceholders({groupKey:i.group.groupKey})}})},t.removePlaceholders=function(e){this.groupManager.removePlaceholders(e),this._syncGroups(!0)},t.setStatus=function(e,t){this.itemRenderer.setStatus(e.itemRenderer),this.containerManager.setStatus(e.containerManager),this.scrollManager.setStatus(e.scrollManager);var n=this.groupManager,i=this.containerManager.getInlineSize();n.setGroupStatus(e.groupManager),this._syncInfinite(),this.infinite.setCursors(n.getStartCursor(),n.getEndCursor()),this._getRenderer().updateKey();i={isResize:this.containerManager.getInlineSize()!==i,isRestore:!0};return t?this._syncItems(i):this._update(i),this},t.removeGroupByIndex=function(e){var t=this.getGroups();return this.removeGroupByKey(t[e].groupKey)},t.removeGroupByKey=function(t){var e=this.getItems(),n=tt(e,function(e){return e.groupKey===t}),i=nt(e,function(e){return e.groupKey===t});return-1===n?this:(e.splice(n,i-n+1),this.syncItems(e))},t.removeByIndex=function(e){var t=this.getItems(!0);return t.splice(e,1),this.syncItems(t)},t.removeByKey=function(t){var e=tt(this.getItems(!0),function(e){return e.key===t});return this.removeByIndex(e)},t.updateItems=function(e,t){return this.groupManager.updateItems(e,t=void 0===t?{}:t),this},t.getItems=function(e){return this.groupManager.getGroupItems(e)},t.getVisibleItems=function(e){return this.groupManager.getVisibleItems(e)},t.getRenderingItems=function(){return this.groupManager.getRenderingItems()},t.getGroups=function(e){return this.groupManager.getGroups(e)},t.getVisibleGroups=function(e){return this.groupManager.getVisibleGroups(e)},t.wait=function(e){this._waitType=e=void 0===e?Ae.END:e,this._checkStartLoading(e)},t.ready=function(){this._waitType=""},t.isWait=function(){return!!this._waitType},t.destroy=function(){this.off(),this._getRenderer().destroy(),this.containerManager.destroy(),this.groupManager.destroy(),this.scrollManager.destroy(),this.infinite.destroy()},t._getRenderer=function(){return this.options.renderer},t._getRendererItems=function(){return this.getRenderingItems().map(function(e){return{element:e.element,key:e.type+"_"+e.key,orgItem:e}})},t._syncItems=function(e){this._getRenderer().syncItems(this._getRendererItems(),e)},t._render=function(e){this._getRenderer().render(this._getRendererItems(),e)},t._update=function(e){void 0===e&&(e={}),this._getRenderer().update(e)},t._resizeScroll=function(){var e=this.scrollManager;e.resize(),this.infinite.setSize(e.getContentSize())},t._syncGroups=function(e){var t=this.infinite;this.scrollManager.getContentSize()||this._resizeScroll(),this._syncInfinite(),this.groupManager.setCursors(t.getStartCursor(),t.getEndCursor()),e?this._update():this._render()},t._syncInfinite=function(){this.infinite.syncItems(this.getGroups(!0).map(function(e){var t=e.groupKey,n=e.grid,e=e.type,n=n.getOutlines();return{key:t,isVirtual:e===be.VIRTUAL,startOutline:n.start,endOutline:n.end}}))},t._scroll=function(){this.infinite.scroll(this.scrollManager.getRelativeScrollPos())},t._onRequestInsert=function(e,t,n){var i=this;this._waitType?this._checkStartLoading(this._waitType):this.trigger(new E(t,{groupKey:n.key,nextGroupKey:n.nextKey,nextGroupKeys:n.nextKeys||[],isVirtual:n.isVirtual,wait:function(){i.wait(e)},ready:function(){i.ready()}}))},t._renderItems=function(e,t){if(void 0===e&&(e={}),!t&&e.useResize&&this.containerManager.resize(),this._resizeScroll(),this.getRenderingItems().length)return this.getVisibleGroups(!0).length?this.groupManager.renderItems(e):this.setCursors(0,0),this;e=et(this.getContainerElement().children);return 0<e.length?(this.groupManager.syncItems($e(e)),this._syncInfinite(),this.setCursors(0,0,!0),this._getRenderer().updated()):this.infinite.scroll(0),this},t._checkStartLoading=function(e){var t=this.groupManager,n=this.infinite;!t.getLoadingType()&&n.isLoading(e)&&t.startLoading(e)&&t.hasLoadingItem()&&this._update()},t._checkEndLoading=function(){var e=this.groupManager,t=this.groupManager.getLoadingType();!t||this._waitType&&this.infinite.isLoading(t)||!e.endLoading()||!e.hasLoadingItem()||this._update()},e.defaultOptions=_(_({},te),{container:!1,containerTag:"div",renderer:null,threshold:100,useRecycle:!0}),e.propertyTypes=ke,n([Xe],e)}(u),dt={__proto__:null,default:ft,withInfiniteGridMethods:e,getRenderingItems:function(e,t){var n,i,r=t.status,o=t.usePlaceholder,s=t.useLoading,u=t.horizontal,a=t.useFirstRender,c=t.grid,t=[];return c?(c.setPlaceholder(o?{}:null),c.setLoading(s?{}:null),c.syncItems(e),t=c.getRenderingItems()):r?(s=r.groupManager,c=e,r=!!o,i=!!u,o=s.groups,c=We(c),c=h(Ze(o,"start",c),c,Ze(o,"end",c)),s=(o=He(o.map(function(e){return e.groupKey}),c.map(function(e){return e.groupKey}),s.cursors[0],s.cursors[1])).startCursor,o=o.endCursor,o=Be(c.slice(s,o+1).map(function(e){return e.items.map(function(e){return new Ke(i,_({},e))})})),t=o=r?o:o.filter(function(e){return e.type!==Me.VIRTUAL})):a&&(n=!!u,t=(e=We(e=e))[0]?e[0].items.map(function(e){return new Ke(n,_({},e))}):[]),t},mountRenderingItems:function(e,t){var n=t.grid,i=t.usePlaceholder,r=t.useLoading,o=t.useFirstRender,t=t.status;n&&(i&&n.setPlaceholder({}),r&&n.setLoading({}),t&&n.setStatus(t,!0),n.syncItems(e),o&&!t&&n.getGroups().length&&n.setCursors(0,0,!0))},InfiniteGridItem:Ke,MasonryInfiniteGrid:function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.propertyTypes=_(_({},ft.propertyTypes),ve.propertyTypes),t.defaultOptions=_(_(_({},ft.defaultOptions),ve.defaultOptions),{gridConstructor:ve}),n([Xe],t)}(ft),JustifiedInfiniteGrid:function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.propertyTypes=_(_({},ft.propertyTypes),ze.propertyTypes),t.defaultOptions=_(_(_({},ft.defaultOptions),ze.defaultOptions),{gridConstructor:ze}),n([Xe],t)}(ft),FrameInfiniteGrid:function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.propertyTypes=_(_({},ft.propertyTypes),Oe.propertyTypes),t.defaultOptions=_(_(_({},ft.defaultOptions),Oe.defaultOptions),{gridConstructor:Oe}),n([Xe],t)}(ft),PackingInfiniteGrid:function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.propertyTypes=_(_({},ft.propertyTypes),xe.propertyTypes),t.defaultOptions=_(_(_({},ft.defaultOptions),xe.defaultOptions),{gridConstructor:xe}),n([Xe],t)}(ft),Renderer:C,IS_IOS:De,CONTAINER_CLASS_NAME:Le,IGNORE_PROPERITES_MAP:Ne,INFINITEGRID_PROPERTY_TYPES:ke,DIRECTION:Ae,INFINITEGRID_EVENTS:Ge,ITEM_INFO_PROPERTIES:Ve,INFINITEGRID_METHODS:j,get GROUP_TYPE(){return be},get ITEM_TYPE(){return Me},get STATUS_TYPE(){return we},INVISIBLE_POS:-9999};for(ut in dt)ft[ut]=dt[ut];return ft});
|