(function(t,i){e.exports=i(n("8bbf"))})(0,(function(e){"use strict";functiont(e,t){if(!(einstanceoft))thrownewTypeError("Cannot call a class as a function")}functionn(e,t){for(varn=0;n<t.length;n++){vari=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"ini&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}functioni(e,t,i){returnt&&n(e.prototype,t),i&&n(e,i),e}functionr(e){returno(e)||a(e)||s(e)||c()}functiono(e){if(Array.isArray(e))returnl(e)}functiona(e){if("undefined"!==typeofSymbol&&Symbol.iteratorinObject(e))returnArray.from(e)}functions(e,t){if(e){if("string"===typeofe)returnl(e,t);varn=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?l(e,t):void0}}functionl(e,t){(null==t||t>e.length)&&(t=e.length);for(varn=0,i=newArray(t);n<t;n++)i[n]=e[n];returni}functionc(){thrownewTypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}e=e&&Object.prototype.hasOwnProperty.call(e,"default")?e["default"]:e;varu={FRONT:"FRONT",BEHIND:"BEHIND"},d={INIT:"INIT",FIXED:"FIXED",DYNAMIC:"DYNAMIC"},h=2,f=function(){functione(n,i){t(this,e),this.init(n,i)}returni(e,[{key:"init",value:function(e,t){this.param=e,this.callUpdate=t,this.sizes=newMap,this.firstRangeTotalSize=0,this.firstRangeAverageSize=0,this.lastCalcIndex=0,this.fixedSizeValue=0,this.calcType=d.INIT,this.offset=0,this.direction="",this.range=Object.create(null),e&&this.checkRange(0,e.keeps-1)}},{key:"destroy",value:function(){this.init(null,null)}},{key:"getRange",value:function(){vare=Object.create(null);returne.start=this.range.start,e.end=this.range.end,e.padFront=this.range.padFront,e.padBehind=this.range.padBehind,e}},{key:"isBehind",value:function(){returnthis.direction===u.BEHIND}},{key:"isFront",value:function(){returnthis.direction===u.FRONT}},{key:"getOffset",value:function(e){return(e<1?0:this.getIndexOffset(e))+this.param.slotHeaderSize}},{key:"updateParam",value:function(e,t){varn=this;this.param&&einthis.param&&("uniqueIds"===e&&this.sizes.forEach((function(e,i){t.includes(i)||n.sizes["delete"](i)})),this.param[e]=t)}},{key:"saveSize",value:function(e,t){this.sizes.set(e,t),this.calcType===d.INIT?(this.fixedSizeValue=t,this.calcType=d.FIXED):this.calcType===d.FIXED&&this.fixedSizeValue!==t&&(this.calcType=d.DYNAMIC,deletethis.fixedSizeValue),this.calcType!==d.FIXED&&"undefined"!==typeofthis.firstRangeTotalSize&&(this.sizes.size<Math.min(this.param.keeps,this.param.uniqueIds.length)?(this.firstRangeTotalSize=r(this.sizes.values()).reduce((function(e,t){returne+t}),0),this.firstRangeAverageSize=Math.round(this.firstRangeTotalSize/this.sizes.size)):deletethis.firstRangeTotalSize)}},{key:"handleDataSourcesChange",value:function(){vare=this.range.start;this.isFront()?e-=h:this.isBehind()&&(e+=h),e=Math.max(e,0),this.updateRange(this.range.start,this.getEndByStart(e))}},{key:"handleSlotSizeChange",value:function(){this.handleDataSourcesChange()}},{key:"handleScroll",value:function(e){this.direction=e<this.offset?u.FRONT:u.BEHIND,this.offset=e,this.param&&(this.direction===u.FRONT?this.handleFront():this.direction===u.BEHIND&&this.handleBehind())}},{key:"handleFront",value:function(){vare=this.getScrollOvers();if(!(e>this.range.start)){vart=Math.max(e-this.param.buffer,0);this.checkRange(t,this.getEndByStart(t))}}},{key:"handleBehind",value:function(){vare=this.getScrollOvers();e<this.range.start+this.param.buffer||this.checkRange(e,this.getEndByStart(e))}},{key:"getScrollOvers",value:function(){vare=this.offset-this.param.slotHeaderSize;if(e<=0)return0;if(this.isFixedType())returnMath.floor(e/this.fixedSizeValue);vart=0,n=0,i=0,r=this.param.uniqueIds.length;while(t<=r){if(n=t+Math.floor((r-t)/2),i=this.getIndexOffset(n),i===e)returnn;i<e?t=n+1:i>e&&(r=n-1)}returnt>0?--t:0}},{key:"getIndexOffset",value:function(e){if(!e)return0;for(vart=0,n=0,i=0;i<e;i++)n