"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_size=_interopRequireDefault(require("../../mixins/size")),_tools=require("../../tools");function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}var browse=_tools.DomTools.browse,_default2={name:"VxeList",mixins:[_size.default],props:{data:Array,height:[Number,String],maxHeight:[Number,String],loading:Boolean,size:{type:String,default:function(){return _conf.default.list.size||_conf.default.size}},autoResize:{type:Boolean,default:function(){return _conf.default.list.autoResize}},syncResize:[Boolean,String,Number],scrollY:Object},data:function(){return{scrollYLoad:!1,bodyHeight:0,topSpaceHeight:0,items:[]}},computed:{sYOpts:function(){return Object.assign({},_conf.default.list.scrollY,this.scrollY)},styles:function(){var t=this.height,e=this.maxHeight,i={};return t?i.height=isNaN(t)?t:"".concat(t,"px"):e&&(i.height="auto",i.maxHeight=isNaN(e)?e:"".concat(e,"px")),i}},watch:{data:function(t){this.loadData(t)},syncResize:function(t){var e=this;t&&(this.recalculate(),this.$nextTick(function(){return setTimeout(function(){return e.recalculate()})}))}},created:function(){Object.assign(this,{fullData:[],lastScrollLeft:0,lastScrollTop:0,scrollYStore:{startIndex:0,endIndex:0,visibleSize:0}}),this.loadData(this.data),_tools.GlobalEvent.on(this,"resize",this.handleGlobalResizeEvent)},mounted:function(){var t,e=this;this.autoResize&&((t=(0,_tools.createResizeEvent)(function(){return e.recalculate()})).observe(this.$el),this.$resize=t)},beforeDestroy:function(){this.$resize&&this.$resize.disconnect()},destroyed:function(){_tools.GlobalEvent.off(this,"resize")},render:function(t){var e=this.$scopedSlots,i=this.styles,s=this.bodyHeight,l=this.topSpaceHeight,o=this.items,r=this.loading;return t("div",{class:["vxe-list",{"is--loading":r}]},[t("div",{ref:"virtualWrapper",class:"vxe-list--virtual-wrapper",style:i,on:{scroll:this.scrollEvent}},[t("div",{ref:"ySpace",class:"vxe-list--y-space",style:{height:s?"".concat(s,"px"):""}}),t("div",{ref:"body",class:"vxe-list--body",style:{marginTop:l?"".concat(l,"px"):""}},e.default?e.default.call(this,{items:o,$list:this},t):[])]),t("div",{class:["vxe-list--loading vxe-loading",{"is--visible":r}]},[t("div",{class:"vxe-loading--spinner"})])])},methods:{getParentElem:function(){return this.$el.parentNode},loadData:function(t){var e=this,i=this.sYOpts,s=this.scrollYStore,t=t||[];return s.startIndex=0,s.visibleIndex=0,this.fullData=t,this.scrollYLoad=i.enabled&&-1