vxe-pc-ui 3.14.27 → 3.14.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/es/date-panel/src/date-panel.js +11 -10
  2. package/es/date-panel/style.css +4 -0
  3. package/es/date-panel/style.min.css +1 -1
  4. package/es/date-range-picker/src/date-range-picker.js +17 -0
  5. package/es/select/src/select.js +4 -1
  6. package/es/style.css +1 -1
  7. package/es/style.min.css +1 -1
  8. package/es/table-select/src/table-select.js +4 -1
  9. package/es/tree-select/src/tree-select.js +4 -1
  10. package/es/ui/index.js +1 -1
  11. package/es/ui/src/log.js +1 -1
  12. package/es/upload/src/upload.js +53 -3
  13. package/es/vxe-date-panel/style.css +4 -0
  14. package/es/vxe-date-panel/style.min.css +1 -1
  15. package/lib/date-panel/src/date-panel.js +46 -10
  16. package/lib/date-panel/src/date-panel.min.js +1 -1
  17. package/lib/date-panel/style/style.css +4 -0
  18. package/lib/date-panel/style/style.min.css +1 -1
  19. package/lib/date-range-picker/src/date-range-picker.js +21 -3
  20. package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
  21. package/lib/index.umd.js +148 -23
  22. package/lib/index.umd.min.js +1 -1
  23. package/lib/select/src/select.js +6 -1
  24. package/lib/select/src/select.min.js +1 -1
  25. package/lib/style.css +1 -1
  26. package/lib/style.min.css +1 -1
  27. package/lib/table-select/src/table-select.js +4 -1
  28. package/lib/table-select/src/table-select.min.js +1 -1
  29. package/lib/tree-select/src/tree-select.js +4 -1
  30. package/lib/tree-select/src/tree-select.min.js +1 -1
  31. package/lib/ui/index.js +1 -1
  32. package/lib/ui/index.min.js +1 -1
  33. package/lib/ui/src/log.js +1 -1
  34. package/lib/ui/src/log.min.js +1 -1
  35. package/lib/upload/src/upload.js +65 -5
  36. package/lib/upload/src/upload.min.js +1 -1
  37. package/lib/vxe-date-panel/style/style.css +4 -0
  38. package/lib/vxe-date-panel/style/style.min.css +1 -1
  39. package/package.json +1 -1
  40. package/packages/date-panel/src/date-panel.ts +11 -10
  41. package/packages/date-range-picker/src/date-range-picker.ts +18 -0
  42. package/packages/select/src/select.ts +4 -1
  43. package/packages/table-select/src/table-select.ts +4 -1
  44. package/packages/tree-select/src/tree-select.ts +4 -1
  45. package/packages/upload/src/upload.ts +73 -5
  46. package/styles/components/date-panel.scss +4 -0
  47. package/types/components/date-panel.d.ts +7 -0
  48. package/types/components/upload.d.ts +36 -1
  49. /package/es/icon/{iconfont.1780477610393.ttf → iconfont.1780570410811.ttf} +0 -0
  50. /package/es/icon/{iconfont.1780477610393.woff → iconfont.1780570410811.woff} +0 -0
  51. /package/es/icon/{iconfont.1780477610393.woff2 → iconfont.1780570410811.woff2} +0 -0
  52. /package/es/{iconfont.1780477610393.ttf → iconfont.1780570410811.ttf} +0 -0
  53. /package/es/{iconfont.1780477610393.woff → iconfont.1780570410811.woff} +0 -0
  54. /package/es/{iconfont.1780477610393.woff2 → iconfont.1780570410811.woff2} +0 -0
  55. /package/lib/icon/style/{iconfont.1780477610393.ttf → iconfont.1780570410811.ttf} +0 -0
  56. /package/lib/icon/style/{iconfont.1780477610393.woff → iconfont.1780570410811.woff} +0 -0
  57. /package/lib/icon/style/{iconfont.1780477610393.woff2 → iconfont.1780570410811.woff2} +0 -0
  58. /package/lib/{iconfont.1780477610393.ttf → iconfont.1780570410811.ttf} +0 -0
  59. /package/lib/{iconfont.1780477610393.woff → iconfont.1780570410811.woff} +0 -0
  60. /package/lib/{iconfont.1780477610393.woff2 → iconfont.1780570410811.woff2} +0 -0
@@ -57,7 +57,12 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
57
57
  props: {
58
58
  value: [String, Number, Boolean, Array],
59
59
  defaultConfig: Object,
60
- clearable: Boolean,
60
+ clearable: {
61
+ type: Boolean,
62
+ default: function _default() {
63
+ return (0, _ui.getConfig)().select.clearable;
64
+ }
65
+ },
61
66
  placeholder: String,
62
67
  readonly: {
63
68
  type: Boolean,
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log"),_input=_interopRequireDefault(require("../../input/src/input")),_button=_interopRequireDefault(require("../../button/src/button"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperty(e,t,n){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0===n)return("string"===t?String:Number)(e);n=n.call(e,t||"default");if("object"!=_typeof(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}function isOptionVisible(e){return!1!==e.visible}function getOptUniqueId(){return _xeUtils.default.uniqueId("opt_")}function createInternalData(){return{synchData:[],fullData:[],afterVisibleList:[],optAddMaps:{},optGroupKeyMaps:{},optFullValMaps:{},remoteValMaps:{},lastScrollLeft:0,lastScrollTop:0,scrollYStore:{startIndex:0,endIndex:0,visibleSize:0,offsetSize:0,rowHeight:0},lastScrollTime:0,hpTimeout:void 0}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeSelect",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:[String,Number,Boolean,Array],defaultConfig:Object,clearable:Boolean,placeholder:String,readonly:{type:Boolean,default:null},loading:Boolean,disabled:{type:Boolean,default:null},multiple:Boolean,multiCharOverflow:{type:[Number,String],default:function(){return(0,_ui.getConfig)().select.multiCharOverflow}},prefixIcon:String,allowCreate:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.allowCreate}},placement:String,lazyOptions:Array,options:Array,optionProps:Object,optionGroups:Array,optionGroupProps:Object,optionConfig:Object,className:[String,Function],popupClassName:[String,Function],max:{type:[String,Number],default:null},showRadio:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.showRadio}},radioConfig:Object,showCheckbox:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.showCheckedButoon}},checkboxConfig:Object,zIndex:Number,size:{type:String,default:function(){return(0,_ui.getConfig)().select.size||(0,_ui.getConfig)().size}},filterable:Boolean,filterMethod:Function,filterConfig:Object,remote:Boolean,remoteConfig:Object,emptyText:String,checkedClosable:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.checkedClosable}},clearClosable:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.clearClosable}},showCloseButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.showCloseButton}},showTotalButoon:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.showTotalButoon}},showCheckedButoon:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.showCheckedButoon}},showClearButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.showClearButton}},transfer:{type:Boolean,default:null},popupConfig:Object,virtualYConfig:Object,scrollY:Object,remoteMethod:Function,optionId:{type:String,default:function(){return(0,_ui.getConfig)().select.optionId}},optionKey:Boolean},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeSelect:this}},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:{initialized:!1,scrollYLoad:!1,bodyHeight:0,topSpaceHeight:0,optList:[],staticOptions:[],reactFlag:1,currentOption:null,searchValue:"",searchLoading:!1,panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1},internalData:createInternalData()}},computed:Object.assign(Object.assign({},{}),{computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeBtnTransfer:function(){var e=this,t=e.$xeTable,n=e.$xeModal,i=e.$xeDrawer,l=e.$xeForm,o=e.transfer,e=e.computePopupOpts;if(_xeUtils.default.isBoolean(e.transfer))return e.transfer;if(null===o){e=(0,_ui.getConfig)().select.transfer;if(_xeUtils.default.isBoolean(e))return e;if(t||n||i||l)return!0}return o},computeInpPlaceholder:function(){var e=this.placeholder;return(e=e||(0,_ui.getConfig)().select.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")},computeDefaultOpts:function(){return Object.assign({},this.defaultConfig)},computePropsOpts:function(){return Object.assign({},this.optionProps)},computeGroupPropsOpts:function(){return Object.assign({},this.optionGroupProps)},computeLabelField:function(){return this.computePropsOpts.label||"label"},computeValueField:function(){return this.computePropsOpts.value||"value"},computeGroupLabelField:function(){return this.computeGroupPropsOpts.label||"label"},computeGroupOptionsField:function(){return this.computeGroupPropsOpts.options||"options"},computeIsMaximize:function(){var e=this.computeSelectVals;return this.checkMaxLimit(e)},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.popupConfig,this.popupConfig)},computeVirtualYOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.virtualYConfig||(0,_ui.getConfig)().select.scrollY,this.virtualYConfig||this.scrollY)},computeRemoteOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.remoteConfig,this.remoteConfig)},computeFilterOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.filterConfig,this.filterConfig)},computeOptionOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.optionConfig,this.optionConfig)},computeRadioOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.radioConfig,this.radioConfig)},computeCheckboxOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.checkboxConfig,this.checkboxConfig)},computeIsGroup:function(){return this.reactData.fullGroupList.some(function(e){return e.options&&e.options.length})},computeMultiMaxCharNum:function(){return _xeUtils.default.toNumber(this.multiCharOverflow)},computePopupWrapperStyle:function(){var e=this.computePopupOpts,t=e.height,e=e.width,n={};return e&&(n.width=(0,_dom.toCssUnit)(e)),t&&(n.height=(0,_dom.toCssUnit)(t),n.maxHeight=(0,_dom.toCssUnit)(t)),n},computeSelectVals:function(){var e=this.value,t=this.multiple,n=[];return _xeUtils.default.isArray(e)?n=e:t?(0,_utils.eqEmptyValue)(e)||(n=-1<"".concat(e).indexOf(",")?"".concat(e).split(","):[e]):n=null==e?[]:[e],n},computeFullLabel:function(){var t=this,e=t.reactData,n=t.remote,e=e.reactFlag,i=t.computeSelectVals;return(n&&e?i.map(function(e){return t.getRemoteSelectLabel(e)}):i.map(function(e){return t.getSelectLabel(e)})).join(", ")},computeSelectLabel:function(){var t=this,e=t.reactData,n=t.remote,i=t.multiple,e=e.reactFlag,l=t.computeMultiMaxCharNum,o=t.computeSelectVals;return n&&e?o.map(function(e){return t.getRemoteSelectLabel(e)}).join(", "):(n=o.map(function(e){return t.getSelectLabel(e)}),i&&0<l&&n.length>l?"".concat(n.slice(0,l),"..."):n.join(", "))}}),methods:{dispatchEvent:function(e,t,n){this.$emit(e,(0,_ui.createEvent)(n,{$select:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},emitDefaultValue:function(e){this.emitModel(e),this.dispatchEvent("default-change",{value:e},null)},isPanelVisible:function(){return this.reactData.visiblePanel},togglePanel:function(){return this.reactData.visiblePanel?this.hideOptionPanel():this.showOptionPanel(),this.$nextTick()},hidePanel:function(){return this.reactData.visiblePanel&&this.hideOptionPanel(),this.$nextTick()},showPanel:function(){return this.reactData.visiblePanel||this.showOptionPanel(),this.$nextTick()},focus:function(){var e=this.reactData,t=this.$refs.refInput;return t&&t.blur(),e.isActivated=!0,this.$nextTick()},blur:function(){var e=this.reactData,t=this.$refs.refInput;return t&&t.blur(),e.isActivated=!1,this.$nextTick()},callSlot:function(e,t,n){var i=this.$scopedSlots;return e&&(_xeUtils.default.isString(e)&&(e=i[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e.call(this,t,n)):[]},getOptKey:function(){return this.computeOptionOpts.keyField||this.optionId||"_X_OPTION_KEY"},getOptId:function(e){e=e[this.getOptKey()];return e?encodeURIComponent(e):""},checkMaxLimit:function(e){var t=this.multiple,n=this.max;return!(!t||!n)&&e.length>=_xeUtils.default.toNumber(n)},getRemoteSelectLabel:function(t){var e=this.internalData,n=this.lazyOptions,i=e.remoteValMaps,l=this.computeValueField,o=this.computeLabelField,i=i[t]||e.optFullValMaps[t],e=i?i.item:null;if(e)return _xeUtils.default.toValueString(e[o]);if(n){i=n.find(function(e){return e[l]===t});if(i)return i[o]}return t},getSelectLabel:function(t){var e=this,n=e.reactData,i=e.lazyOptions,l=e.internalData.optFullValMaps,o=e.computeValueField,e=e.computeLabelField,n=n.reactFlag?l[t]:null;if(n)return n.item[e];if(i){l=i.find(function(e){return e[o]===t});if(l)return l[e]}return t},getOptkey:function(){return this.computeOptionOpts.keyField||this.optionId||"_X_OPTION_KEY"},getOptid:function(e){e=e[this.getOptkey()];return e?encodeURIComponent(e):""},handleOption:function(){var t=this,e=t.reactData,n=t.internalData,i=t.remote,l=t.value,o=t.filterable,a=e.searchValue,e=n.fullData,r=n.optFullValMaps,s=t.computeLabelField,c=t.computeValueField,u=t.computeFilterOpts.filterMethod||t.filterMethod,p="".concat(a||"").toLowerCase(),f=[];return(f=i?e.filter(isOptionVisible):o&&u?e.filter(function(e){return isOptionVisible(e)&&u({$select:t,group:null,option:e,searchValue:a,value:l})}):o?e.filter(function(e){return isOptionVisible(e)&&(!p||-1<"".concat(e[s]||e[c]).toLowerCase().indexOf(p))}):e.filter(isOptionVisible)).forEach(function(e,t){e=r[e[c]];e&&(e._index=t)}),n.afterVisibleList=f,t.$nextTick()},refreshOption:function(){return this.handleOption(),this.updateYData(),this.$nextTick()},cacheItemMap:function(e){function t(e){u.push(e);var t=n.getOptId(e);t||(t=getOptUniqueId(),e[r]=t),c[e[a]]={key:t,item:e,_index:-1}}var n=this,i=n.reactData,l=n.internalData,o=n.computeGroupOptionsField,a=n.computeValueField,r=n.getOptKey(),s={},c={},u=[];e.forEach(function(e){t(e),e[o]&&(s[e[r]]=e)[o].forEach(t)}),l.fullData=u,l.optGroupKeyMaps=s,l.optFullValMaps=c,i.reactFlag++,n.handleOption()},setCurrentOption:function(e){var t=this.reactData;e&&(t.currentOption=e)},scrollToOption:function(i,l){var o=this;return o.$nextTick().then(function(){var e,t,n;i&&(e=o.$refs.refOptionWrapper,t=o.$refs.refOptionPanel.querySelector("[optid='".concat(o.getOptid(i),"']")),e)&&t&&(n=e.offsetHeight,l?t.offsetTop+t.offsetHeight-e.scrollTop>n&&(e.scrollTop=t.offsetTop+t.offsetHeight-n):(t.offsetTop+5<e.scrollTop||t.offsetTop+5>e.scrollTop+e.clientHeight)&&(e.scrollTop=t.offsetTop-5))})},updateZindex:function(){var e=this.reactData,t=this.computePopupOpts.zIndex||this.zIndex;t?e.panelIndex=_xeUtils.default.toNumber(t):e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updateZIndex:function(){var e=this.reactData;e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updatePlacement:function(){function e(){var e=(0,_dom.updatePanelPlacement)(o,a,{placement:s.placement||i,defaultPlacement:s.defaultPlacement,teleportTo:r}),t=Object.assign(e.style,{zIndex:l});n.panelStyle=t,n.panelPlacement=e.placement}var t=this,n=t.reactData,i=t.placement,l=n.panelIndex,o=t.$refs.refElem,a=t.$refs.refOptionPanel,r=t.computeBtnTransfer,s=t.computePopupOpts;return e(),t.$nextTick().then(e)},handleScrollSelect:function(){var l=this,o=l.reactData,a=l.internalData;l.$nextTick(function(){var e=o.isAniVisible,t=o.visiblePanel,n=a.optFullValMaps,i=l.computeSelectVals;i.length&&e&&t&&(e=o.reactFlag?n["".concat(i[0])]:null)&&(o.currentOption=e.item,l.handleScrollToOption(e.item))})},showOptionPanel:function(){var e=this,t=e.reactData,n=e.internalData,i=e.loading,l=e.filterable,o=e.remote,a=n.fullData,r=n.hpTimeout,s=e.computeRemoteOpts,c=e.computeSelectVals;i||e.computeIsDisabled||(r&&(clearTimeout(r),n.hpTimeout=void 0),t.initialized||(t.initialized=!0,i=e.computeBtnTransfer,r=e.$refs.refOptionPanel,i&&r&&document.body.appendChild(r)),t.isActivated=!0,t.isAniVisible=!0,l&&(o&&s.enabled&&(s.autoLoad&&!a.length||a.length&&s.clearOnClose)?e.handleSearchEvent():(e.handleOption(),e.updateYData())),setTimeout(function(){t.visiblePanel=!0,e.handleFocusSearch(),e.recalculate().then(function(){c&&c.length?e.handleScrollSelect():e.refreshScroll()}),e.updatePlacement()},10),setTimeout(function(){e.recalculate().then(function(){return e.refreshScroll()})},100),e.updateZIndex(),e.updatePlacement(),e.dispatchEvent("visible-change",{visible:!0},null))},hideOptionPanel:function(e){var t=this,n=t.reactData,i=t.internalData,l=t.filterable,o=t.computeFilterOpts;t.remote?t.computeRemoteOpts.clearOnClose&&(n.searchValue=""):l&&!o.clearOnClose||(n.searchValue=""),n.searchLoading=!1,n.visiblePanel=!1,i.hpTimeout=setTimeout(function(){n.isAniVisible=!1},350),t.dispatchEvent("visible-change",{visible:!1},e||null)},changeEvent:function(e,t,n){var i=this,l=i,o=i.$xeForm,a=i.formItemInfo;i.emitModel(t),t!==l.value&&(i.dispatchEvent("change",{value:t,option:n},e),o)&&a&&o.triggerItemEvent(e,a.itemConfig.field,t)},clearValueEvent:function(e,t){this.internalData.remoteValMaps={},this.changeEvent(e,t,null),this.dispatchEvent("clear",{value:t},e)},clearEvent:function(e){e=e.$event;this.clearValueEvent(e,null),this.hideOptionPanel(e)},allCheckedPanelEvent:function(e){var n=this,t=n.reactData,e=e.$event,i=n.multiple,l=n.max,o=n.checkedClosable,a=t.optList,r=n.computeValueField;if(i){for(var s=n.computeSelectVals.slice(0),c=0;c<a.length&&!(()=>{var t=a[c][r];if(n.checkMaxLimit(s))return _ui.VxeUI&&_ui.VxeUI.modal.message({content:(0,_ui.getI18n)("vxe.select.overSizeErr",[l]),status:"warning"}),1;s.some(function(e){return e===t})||s.push(t)})();c++);n.changeEvent(e,s,a[0]),o&&n.hideOptionPanel(e),n.dispatchEvent("all-change",{value:s},e)}},clearCheckedPanelEvent:function(e){var t=this.clearClosable,e=e.$event;this.clearValueEvent(e,null),t&&this.hideOptionPanel(e)},closePanelEvent:function(e){e=e.$event;this.hideOptionPanel(e)},changeOptionEvent:function(e,t){var n=this,i=n.reactData,l=n.multiple,o=n.internalData.remoteValMaps,a=t[n.computeValueField],r=o[a];i.visiblePanel&&(r?r.item=t:o[a]={key:n.getOptId(t),item:t,_index:-1},l?(r=[],o=n.computeSelectVals,r=-1===_xeUtils.default.findIndexOf(o,function(e){return e===a})?o.concat([a]):o.filter(function(e){return e!==a}),n.changeEvent(e,r,t)):(n.changeEvent(e,a,t),n.hideOptionPanel(e)),i.reactFlag++)},handleGlobalMousewheelEvent:function(e){var t=this,n=t.reactData.visiblePanel;t.computeIsDisabled||n&&(n=t.$refs.refOptionPanel,(0,_dom.getEventTargetNode)(e,n).flag?t.updatePlacement():t.hideOptionPanel(e))},handleGlobalMousedownEvent:function(e){var t,n,i=this,l=i.reactData,o=l.visiblePanel,a=i.computePopupOpts.trigger;i.computeIsDisabled||(t=i.$refs.refElem,n=i.$refs.refOptionPanel,l.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,n).flag,o&&!l.isActivated&&"manual"!==a&&i.hideOptionPanel(e))},validOffsetOption:function(e){var t=e.disabled,e=this.getOptId(e);return!t&&!this.hasOptGroupById(e)},findOffsetOption:function(e,t){var n=this,i=n.reactData,l=n.internalData,o=n.allowCreate,i=i.optList,a=l.optFullValMaps,r=l.optAddMaps,s=n.computeValueField,c=l.afterVisibleList,l=0;if(o&&i.length&&(o=i[0],r[i=n.getOptId(o)])&&(l=1,c=[r[i]].concat(c)),!e)if(t)for(var u=0;u<c.length;u++){var p=c[u];if(n.validOffsetOption(p))return p}else for(var f=c.length-1;0<=f;f--){var d=c[f];if(n.validOffsetOption(d))return d}o=0,r=e?a[e[s]]:null;if(-1<(o=r?r._index+l:o))if(t)for(var h=o+1;h<=c.length-1;h++){var v=c[h];if(n.validOffsetOption(v))return v}else if(0<o)for(var m=o-1;0<=m;m--){var g=c[m];if(n.validOffsetOption(g))return g}return null},handleGlobalKeydownEvent:function(e){var t,n,i,l,o,a,r=this,s=r.reactData,c=r.clearable,u=s.visiblePanel,p=s.currentOption,f=r.computePopupOpts.trigger;r.computeIsDisabled||(t=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.TAB),n=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ENTER),i=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE),l=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_UP),o=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN),a=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.DELETE),t&&(s.isActivated=!1),u?i||t?"manual"!==f&&r.hideOptionPanel(e):n?p&&(e.preventDefault(),e.stopPropagation(),r.changeOptionEvent(e,p)):(l||o)&&(e.preventDefault(),u=(u=r.findOffsetOption(p,o))||r.findOffsetOption(null,o))&&(r.setCurrentOption(u),r.handleScrollToOption(u,o)):(l||o||n)&&s.isActivated&&(e.preventDefault(),r.showOptionPanel()),s.isActivated&&a&&c&&r.clearValueEvent(e,null))},handleGlobalBlurEvent:function(e){var t=this.reactData,n=t.visiblePanel,i=t.isActivated,l=this.computePopupOpts.trigger;n&&"manual"!==l&&this.hideOptionPanel(e),i&&(t.isActivated=!1),(n||i)&&(l=this.$refs.refInput)&&l.blur()},handleGlobalResizeEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},handleFocusSearch:function(){var t=this;t.filterable&&t.$nextTick(function(){var e=t.$refs.refInpSearch;e&&e.focus()})},focusEvent:function(e){var t=this,n=t.reactData,i=t.computePopupOpts.trigger;t.computeIsDisabled||n.visiblePanel||i&&"default"!==i||(n.triggerFocusPanel=!0,t.showOptionPanel(),setTimeout(function(){n.triggerFocusPanel=!1},500)),t.dispatchEvent("focus",{},e)},clickEvent:function(e){var t=this.reactData,n=this.computePopupOpts.trigger;n&&"default"!==n||this.togglePanelEvent(e),this.dispatchEvent("click",{triggerButton:!1,visible:t.visiblePanel},e)},blurEvent:function(e){this.reactData.isActivated=!1,this.dispatchEvent("blur",{},e)},suffixClickEvent:function(e){var t=this.reactData,n=this.computePopupOpts.trigger;n&&"default"!==n&&"icon"!==n||this.togglePanelEvent(e),this.dispatchEvent("click",{triggerButton:!0,visible:t.visiblePanel},e)},modelSearchEvent:function(e){this.reactData.searchValue=e},focusSearchEvent:function(){this.reactData.isActivated=!0},handleSearchEvent:function(){var e=this,t=e.reactData,n=e.value,i=t.searchValue,l=e.computeRemoteOpts,o=l.queryMethod||e.remoteMethod;e.remote&&o&&l.enabled?(t.searchLoading=!0,Promise.resolve(o({$select:e,searchValue:i,value:n})).then(function(){return e.$nextTick()}).catch(function(){return e.$nextTick()}).finally(function(){t.searchLoading=!1,e.handleOption(),e.updateYData()})):(e.handleOption(),e.updateYData())},triggerSearchEvent:_xeUtils.default.debounce(function(){this.handleSearchEvent()},350,{trailing:!0}),togglePanelEvent:function(e){var t=this.reactData,e=e.$event;e.preventDefault(),t.triggerFocusPanel?t.triggerFocusPanel=!1:t.visiblePanel?this.hideOptionPanel(e):this.showOptionPanel()},checkOptionDisabled:function(e,t){return!!t.disabled||!(!this.computeIsMaximize||e)},updateYSpace:function(){var e=this.reactData,t=this.internalData,n=e.scrollYLoad,i=t.scrollYStore;e.bodyHeight=n?t.afterVisibleList.length*i.rowHeight:0,e.topSpaceHeight=n?Math.max(i.startIndex*i.rowHeight,0):0},handleData:function(){var e=this,t=e.reactData,n=e.internalData,i=e.filterable,l=e.allowCreate,o=t.scrollYLoad,a=t.searchValue,r=n.optAddMaps,s=n.scrollYStore,n=n.afterVisibleList,c=e.computeLabelField,u=e.computeValueField,o=o?n.slice(s.startIndex,s.endIndex):n.slice(0);return i&&l&&a&&(o.some(function(e){return e[c]===a})||(s=r[a]||_defineProperty(_defineProperty(_defineProperty({},e.getOptKey(),a),c,a),u,a),r[a]=s,o.unshift(s))),t.optList=o,e.$nextTick()},updateYData:function(){this.handleData(),this.updateYSpace()},computeScrollLoad:function(){var a=this,r=a.reactData,s=a.internalData;return a.$nextTick().then(function(){var e,t=r.scrollYLoad,n=s.scrollYStore,i=a.$refs.refVirtualBody,l=a.computeVirtualYOpts,o=0;(e=i?e||i.children[0]:e)&&(o=e.offsetHeight),o=Math.max(20,o),n.rowHeight=o,t?(i=a.$refs.refVirtualWrapper,e=Math.max(8,i?Math.ceil(i.clientHeight/o):0),t=Math.max(0,Math.min(2,_xeUtils.default.toNumber(l.oSize))),n.offsetSize=t,n.visibleSize=e,n.endIndex=Math.max(n.startIndex,e+t,n.endIndex),a.updateYData()):a.updateYSpace()})},handleScrollToOption:function(e,t){var n,i,l=this.internalData,o=l.optFullValMaps,l=l.scrollYStore,o=o[e[this.computeValueField]];o&&(e=o.key,-1<(o=o._index))&&(n=this.$refs.refVirtualWrapper,e=this.$refs.refOptionPanel.querySelector("[optid='".concat(e,"']")),n)&&(e?(i=n.offsetHeight,t?Math.ceil(e.offsetTop+e.offsetHeight-n.scrollTop)>=i?n.scrollTop=e.offsetTop+e.offsetHeight-i:(e.offsetTop+1<n.scrollTop||e.offsetTop+1>n.scrollTop+n.clientHeight)&&(n.scrollTop=e.offsetTop-1):e.offsetTop+1<n.scrollTop||e.offsetTop+1>n.scrollTop+n.clientHeight?n.scrollTop=e.offsetTop-1:e.offsetTop+e.offsetHeight-n.scrollTop>i&&(n.scrollTop=e.offsetTop+e.offsetHeight-i)):n.scrollTop=t?o*l.rowHeight-n.clientHeight+l.rowHeight:o*l.rowHeight)},scrollTo:function(e,t){var n=this,i=n.reactData,l=n.$refs.refVirtualWrapper;return l&&(_xeUtils.default.isNumber(e)&&(l.scrollLeft=e),_xeUtils.default.isNumber(t))&&(l.scrollTop=t),i.scrollYLoad?new Promise(function(e){setTimeout(function(){n.$nextTick(function(){e()})},50)}):n.$nextTick()},refreshScroll:function(){var e=this,t=e.internalData,n=t.lastScrollLeft,i=t.lastScrollTop;return e.clearScroll().then(function(){if(n||i)return t.lastScrollLeft=0,t.lastScrollTop=0,e.scrollTo(n,i)})},recalculate:function(){var e=this.$refs.refElem;return e&&e.clientWidth&&e.clientHeight?this.computeScrollLoad():Promise.resolve()},loadYData:function(e){var t=this.internalData.scrollYStore,n=t.startIndex,i=t.endIndex,l=t.visibleSize,o=t.offsetSize,e=e.target.scrollTop,e=Math.floor(e/t.rowHeight),a=Math.max(0,e-1-o),o=e+l+o;!(e<=n||i-l-1<=e)||n===a&&i===o||(t.startIndex=a,t.endIndex=o,this.updateYData())},isVMScrollProcess:function(){var e=this.internalData.lastScrollTime;return!!(e&&Date.now()<e+250)},scrollEvent:function(e){var t=this.reactData,n=this.internalData,i=e.target,l=i.scrollTop,i=i.scrollLeft,o=i!==n.lastScrollLeft,a=l!==n.lastScrollTop;n.lastScrollTop=l,n.lastScrollLeft=i,t.scrollYLoad&&this.loadYData(e),n.lastScrollTime=Date.now(),this.dispatchEvent("scroll",{scrollLeft:i,scrollTop:l,isX:o,isY:a},e)},loadData:function(e){var t,n=this,i=n,l=n.reactData,o=n.internalData,a=(n.cacheItemMap(e||[]),i.multiple),r=o.isLoaded,s=o.fullData,c=o.scrollYStore,u=n.computeDefaultOpts,p=n.computeVirtualYOpts,f=n.computeValueField;return Object.assign(c,{startIndex:0,endIndex:1,visibleSize:0}),o.synchData=e||[],l.scrollYLoad=!!p.enabled&&-1<p.gt&&(0===p.gt||p.gt<=s.length),n.handleData(),r||(c=u.selectMode,0<e.length&&_xeUtils.default.eqNull(i.value)&&("all"===c?a?n.$nextTick(function(){n.emitDefaultValue(e.map(function(e){return e[f]}))}):(0,_log.errLog)("vxe.error.notConflictProp",["default-config.selectMode=all","multiple=true"]):"first"!==c&&"last"!==c||(t=_xeUtils.default[c](e))&&n.$nextTick(function(){_xeUtils.default.eqNull(i.value)&&n.emitDefaultValue(t[f])}),o.isLoaded=!0)),n.computeScrollLoad().then(function(){n.refreshScroll()})},reloadData:function(e){return this.internalData.isLoaded=!1,this.clearScroll(),this.loadData(e)},clearScroll:function(){var e=this.internalData,t=this.$refs.refVirtualWrapper;return t&&(t.scrollTop=0,t.scrollLeft=0),e.lastScrollTop=0,e.lastScrollLeft=0,this.$nextTick()},hasOptGroupById:function(e){return!!this.internalData.optGroupKeyMaps[e]},renderRadio:function(e,t,n,i,l){var o=this,a=o.computeRadioOpts,r=a.showIcon,a=a.trigger;return n||!1===r?(0,_ui.renderEmptyElement)(o):(r={},a&&"default"!==a||(r.click=function(e){l||n||o.changeOptionEvent(e,t)}),e("div",{key:2,class:["vxe-select-option--radio",{"is--checked":i,"is--disabled":l}],on:r},[e("span",{class:["vxe-radio--icon",i?(0,_ui.getIcon)().RADIO_CHECKED:(0,_ui.getIcon)().RADIO_UNCHECKED]})]))},renderCheckbox:function(e,t,n,i,l){var o=this,a=o.computeCheckboxOpts,r=a.showIcon,a=a.trigger;return n||!1===r?(0,_ui.renderEmptyElement)(o):(r={},a&&"default"!==a||(r.click=function(e){l||n||o.changeOptionEvent(e,t)}),e("div",{key:3,class:["vxe-select-option--checkbox",{"is--checked":i,"is--disabled":l}],on:r},[e("span",{class:["vxe-checkbox--icon",i?(0,_ui.getIcon)().CHECKBOX_CHECKED:(0,_ui.getIcon)().CHECKBOX_UNCHECKED]})]))},renderOption:function(v,e){var m=this,t=m.$scopedSlots,g=m.allowCreate,b=m.optionKey,n=m.multiple,O=m.reactData.currentOption,x=m.internalData.optAddMaps,i=m.computeOptionOpts,_=m.computeLabelField,E=m.computeValueField,y=m.computeGroupLabelField,D=m.computeSelectVals,S=m.computeRadioOpts,P=m.computeCheckboxOpts,C=i.useKey,T=i.height,I=t.option,V=m.showCheckbox&&n,L=m.showRadio&&!n;return e.map(function(t,e){var n=t.slots,i=t.className,l=m.getOptId(t),o=t[E],a=m.hasOptGroupById(l),r=!(!g||!x[l]),s=!r&&-1<D.indexOf(o),c=r||!a||isOptionVisible(t),u=!r&&m.checkOptionDisabled(s,t),n=(n?n.default:null)||I,p={option:t,group:a?t:null,$select:m},f="",d=[],h=(V?d.push(m.renderCheckbox(v,t,a,s,u)):L&&d.push(m.renderRadio(v,t,a,s,u)),[]),h=n?m.callSlot(n,p,v):[f=(0,_utils.getFuncText)(t[a?y:_]||o)],n=(d.push(v("div",{key:1,class:"vxe-select-option--label"},h)),{mousedown:function(e){0===e.button&&e.stopPropagation()},mouseenter:function(){u||a||m.isVMScrollProcess()||m.setCurrentOption(t)}});return(V?"option"!==P.trigger:L&&"option"!==S.trigger)||(n.click=function(e){u||a||m.changeOptionEvent(e,t)}),c?v("div",{key:C||b?l:e,class:["vxe-select-option",i?_xeUtils.default.isFunction(i)?i(p):i:"",{"vxe-select-optgroup":a,"is--disabled":u,"is--selected":s,"is--add":r,"is--hover":O&&m.getOptId(O)===l}],attrs:{optid:l,title:f||null},style:T?{height:(0,_dom.toCssUnit)(T)}:void 0,on:n},g?[v("span",{key:1,class:"vxe-select-option--add-label"},d),r?v("span",{key:2,class:"vxe-select-option--add-icon"},[v("i",{class:(0,_ui.getIcon)().SELECT_ADD_OPTION})]):(0,_ui.renderEmptyElement)(m)]:d):(0,_ui.renderEmptyElement)(m)})},renderOpts:function(e){var t=this.reactData,n=t.optList;return t.searchLoading?[e("div",{class:"vxe-select--search-loading"},[e("i",{class:["vxe-select--search-icon",(0,_ui.getIcon)().SELECT_LOADED]}),e("span",{class:"vxe-select--search-text"},(0,_ui.getI18n)("vxe.select.loadingText"))])]:n.length?this.renderOption(e,n):[e("div",{class:"vxe-select--empty-placeholder"},this.emptyText||(0,_ui.getI18n)("vxe.select.emptyText"))]},renderVN:function(e){var t,n=this,i=n,l=n.$scopedSlots,o=n.reactData,a=i.className,r=i.multiple,s=i.loading,c=i.filterable,u=i.showTotalButoon,p=i.showCheckedButoon,f=i.showClearButton,d=i.showCloseButton,h=o.initialized,v=o.isActivated,m=o.isAniVisible,g=o.optList,b=o.visiblePanel,O=o.bodyHeight,x=o.topSpaceHeight,_=n.computeSize,E=n.computeIsDisabled,y=n.computeSelectLabel,D=n.computeFullLabel,S=n.computeBtnTransfer,P=n.computeInpPlaceholder,C=n.computePopupWrapperStyle,T=l.default,I=l.header,V=l.footer,L=l.prefix,l=n.computePopupOpts.className||i.popupClassName;return n.computeFormReadonly?e("div",{ref:"refElem",class:["vxe-select--readonly",a]},[e("div",{class:"vxe-select-slots",ref:"hideOption"},T?n.callSlot(T,{},e):[]),e("span",{class:"vxe-select-label",attrs:{fullLabel:D}},y)]):(t=n.computeSelectVals,e("div",{ref:"refElem",class:["vxe-select",a?_xeUtils.default.isFunction(a)?a({$select:n}):a:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(_),_),"is--visible",b),"is--disabled",E),"is--filter",c),"is--loading",s),"is--active",v)]},[e("div",{class:"vxe-select-slots",ref:"hideOption"},T?T.call(n,{}):[]),e(_input.default,{ref:"refInput",props:{clearable:i.clearable,placeholder:P,editable:!1,disabled:E,type:"text",prefixIcon:i.prefixIcon,suffixIcon:s?(0,_ui.getIcon)().SELECT_LOADED:b?(0,_ui.getIcon)().SELECT_OPEN:(0,_ui.getIcon)().SELECT_CLOSE,autoFocus:!1,title:D,value:y},on:{clear:n.clearEvent,click:n.clickEvent,focus:n.focusEvent,blur:n.blurEvent,"suffix-click":n.suffixClickEvent},scopedSlots:L?{prefix:function(){return L({})}}:{}}),e("div",{ref:"refOptionPanel",class:["vxe-table--ignore-clear vxe-select--panel",l?_xeUtils.default.isFunction(l)?l({$select:n}):l:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(_),_),"is--transfer",S),"ani--leave",!s&&m),"ani--enter",!s&&b)],attrs:{placement:o.panelPlacement},style:o.panelStyle},h&&(b||m)?[e("div",{class:"vxe-select--panel-wrapper",style:C},[c?e("div",{class:"vxe-select--panel-search"},[e(_input.default,{ref:"refInpSearch",class:"vxe-select-search--input",props:{value:o.searchValue,type:"text",clearable:!0,disabled:!1,readonly:!1,placeholder:(0,_ui.getI18n)("vxe.select.search"),prefixIcon:(0,_ui.getIcon)().INPUT_SEARCH},on:{"model-value":n.modelSearchEvent,focus:n.focusSearchEvent,change:n.triggerSearchEvent,search:n.triggerSearchEvent}})]):(0,_ui.renderEmptyElement)(n),p&&r||f||I?e("div",{class:"vxe-select--panel-header"},I?n.callSlot(I,{},e):[e("div",{class:"vxe-tree-select--header-button"},[e("div",{class:"vxe-tree-select--header-btns"},[p&&r?e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.select.allChecked"),mode:"text"},on:{click:n.allCheckedPanelEvent}}):(0,_ui.renderEmptyElement)(n),f?e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.select.clear"),mode:"text"},on:{click:n.clearCheckedPanelEvent}}):(0,_ui.renderEmptyElement)(n)])])]):(0,_ui.renderEmptyElement)(n),e("div",{class:"vxe-select--panel-body"},[e("div",{ref:"refVirtualWrapper",class:"vxe-select-option--wrapper",on:{scroll:n.scrollEvent}},[e("div",{class:"vxe-select--y-space",style:{height:O?"".concat(O,"px"):""}}),e("div",{ref:"refVirtualBody",class:"vxe-select--body",style:{transform:"translateY(".concat(x,"px)")}},n.renderOpts(e))])]),V||u||d&&r?e("div",{class:"vxe-select--panel-footer"},V?n.callSlot(V,{},e):[e("div",{class:"vxe-select--footer-button"},[u?e("div",{class:"vxe-select--total-btns"},(0,_ui.getI18n)("vxe.select.total",[t.length,g.length])):(0,_ui.renderEmptyElement)(n),d&&r?e("div",{class:"vxe-select--oper-btns"},[e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.select.close"),mode:"text"},on:{click:n.closePanelEvent}})]):(0,_ui.renderEmptyElement)(n)])]):(0,_ui.renderEmptyElement)(n)])]:[])]))}},watch:{"reactData.staticOptions":function(e){this.loadData(e)},options:function(e){this.loadData(e)},optionGroups:function(e){this.loadData(e)}},mounted:function(){var n=this,i=n;n.$nextTick(function(){var e=i.options,t=i.optionGroups;t?n.loadData(t):e&&n.loadData(e)}),_ui.globalEvents.on(n,"mousewheel",n.handleGlobalMousewheelEvent),_ui.globalEvents.on(n,"mousedown",n.handleGlobalMousedownEvent),_ui.globalEvents.on(n,"keydown",n.handleGlobalKeydownEvent),_ui.globalEvents.on(n,"blur",n.handleGlobalBlurEvent),_ui.globalEvents.on(n,"resize",n.handleGlobalResizeEvent)},beforeDestroy:function(){var e=this,t=e.$refs.refOptionPanel;t&&t.parentNode&&t.parentNode.removeChild(t),_ui.globalEvents.off(e,"mousewheel"),_ui.globalEvents.off(e,"mousedown"),_ui.globalEvents.off(e,"keydown"),_ui.globalEvents.off(e,"blur"),_ui.globalEvents.off(e,"resize")},destroyed:function(){var e=this.internalData;_xeUtils.default.assign(e,createInternalData())},render:function(e){return this.renderVN(e)}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log"),_input=_interopRequireDefault(require("../../input/src/input")),_button=_interopRequireDefault(require("../../button/src/button"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperty(e,t,n){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0===n)return("string"===t?String:Number)(e);n=n.call(e,t||"default");if("object"!=_typeof(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}function isOptionVisible(e){return!1!==e.visible}function getOptUniqueId(){return _xeUtils.default.uniqueId("opt_")}function createInternalData(){return{synchData:[],fullData:[],afterVisibleList:[],optAddMaps:{},optGroupKeyMaps:{},optFullValMaps:{},remoteValMaps:{},lastScrollLeft:0,lastScrollTop:0,scrollYStore:{startIndex:0,endIndex:0,visibleSize:0,offsetSize:0,rowHeight:0},lastScrollTime:0,hpTimeout:void 0}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeSelect",mixins:[_ui.globalMixins.sizeMixin],model:{prop:"value",event:"modelValue"},props:{value:[String,Number,Boolean,Array],defaultConfig:Object,clearable:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.clearable}},placeholder:String,readonly:{type:Boolean,default:null},loading:Boolean,disabled:{type:Boolean,default:null},multiple:Boolean,multiCharOverflow:{type:[Number,String],default:function(){return(0,_ui.getConfig)().select.multiCharOverflow}},prefixIcon:String,allowCreate:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.allowCreate}},placement:String,lazyOptions:Array,options:Array,optionProps:Object,optionGroups:Array,optionGroupProps:Object,optionConfig:Object,className:[String,Function],popupClassName:[String,Function],max:{type:[String,Number],default:null},showRadio:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.showRadio}},radioConfig:Object,showCheckbox:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.showCheckedButoon}},checkboxConfig:Object,zIndex:Number,size:{type:String,default:function(){return(0,_ui.getConfig)().select.size||(0,_ui.getConfig)().size}},filterable:Boolean,filterMethod:Function,filterConfig:Object,remote:Boolean,remoteConfig:Object,emptyText:String,checkedClosable:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.checkedClosable}},clearClosable:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.clearClosable}},showCloseButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.showCloseButton}},showTotalButoon:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.showTotalButoon}},showCheckedButoon:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.showCheckedButoon}},showClearButton:{type:Boolean,default:function(){return(0,_ui.getConfig)().select.showClearButton}},transfer:{type:Boolean,default:null},popupConfig:Object,virtualYConfig:Object,scrollY:Object,remoteMethod:Function,optionId:{type:String,default:function(){return(0,_ui.getConfig)().select.optionId}},optionKey:Boolean},inject:{$xeModal:{default:null},$xeDrawer:{default:null},$xeTable:{default:null},$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},provide:function(){return{$xeSelect:this}},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:{initialized:!1,scrollYLoad:!1,bodyHeight:0,topSpaceHeight:0,optList:[],staticOptions:[],reactFlag:1,currentOption:null,searchValue:"",searchLoading:!1,panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1},internalData:createInternalData()}},computed:Object.assign(Object.assign({},{}),{computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeBtnTransfer:function(){var e=this,t=e.$xeTable,n=e.$xeModal,i=e.$xeDrawer,l=e.$xeForm,o=e.transfer,e=e.computePopupOpts;if(_xeUtils.default.isBoolean(e.transfer))return e.transfer;if(null===o){e=(0,_ui.getConfig)().select.transfer;if(_xeUtils.default.isBoolean(e))return e;if(t||n||i||l)return!0}return o},computeInpPlaceholder:function(){var e=this.placeholder;return(e=e||(0,_ui.getConfig)().select.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")},computeDefaultOpts:function(){return Object.assign({},this.defaultConfig)},computePropsOpts:function(){return Object.assign({},this.optionProps)},computeGroupPropsOpts:function(){return Object.assign({},this.optionGroupProps)},computeLabelField:function(){return this.computePropsOpts.label||"label"},computeValueField:function(){return this.computePropsOpts.value||"value"},computeGroupLabelField:function(){return this.computeGroupPropsOpts.label||"label"},computeGroupOptionsField:function(){return this.computeGroupPropsOpts.options||"options"},computeIsMaximize:function(){var e=this.computeSelectVals;return this.checkMaxLimit(e)},computePopupOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.popupConfig,this.popupConfig)},computeVirtualYOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.virtualYConfig||(0,_ui.getConfig)().select.scrollY,this.virtualYConfig||this.scrollY)},computeRemoteOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.remoteConfig,this.remoteConfig)},computeFilterOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.filterConfig,this.filterConfig)},computeOptionOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.optionConfig,this.optionConfig)},computeRadioOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.radioConfig,this.radioConfig)},computeCheckboxOpts:function(){return Object.assign({},(0,_ui.getConfig)().select.checkboxConfig,this.checkboxConfig)},computeIsGroup:function(){return this.reactData.fullGroupList.some(function(e){return e.options&&e.options.length})},computeMultiMaxCharNum:function(){return _xeUtils.default.toNumber(this.multiCharOverflow)},computePopupWrapperStyle:function(){var e=this.computePopupOpts,t=e.height,e=e.width,n={};return e&&(n.width=(0,_dom.toCssUnit)(e)),t&&(n.height=(0,_dom.toCssUnit)(t),n.maxHeight=(0,_dom.toCssUnit)(t)),n},computeSelectVals:function(){var e=this.value,t=this.multiple,n=[];return _xeUtils.default.isArray(e)?n=e:t?(0,_utils.eqEmptyValue)(e)||(n=-1<"".concat(e).indexOf(",")?"".concat(e).split(","):[e]):n=null==e?[]:[e],n},computeFullLabel:function(){var t=this,e=t.reactData,n=t.remote,e=e.reactFlag,i=t.computeSelectVals;return(n&&e?i.map(function(e){return t.getRemoteSelectLabel(e)}):i.map(function(e){return t.getSelectLabel(e)})).join(", ")},computeSelectLabel:function(){var t=this,e=t.reactData,n=t.remote,i=t.multiple,e=e.reactFlag,l=t.computeMultiMaxCharNum,o=t.computeSelectVals;return n&&e?o.map(function(e){return t.getRemoteSelectLabel(e)}).join(", "):(n=o.map(function(e){return t.getSelectLabel(e)}),i&&0<l&&n.length>l?"".concat(n.slice(0,l),"..."):n.join(", "))}}),methods:{dispatchEvent:function(e,t,n){this.$emit(e,(0,_ui.createEvent)(n,{$select:this},t))},emitModel:function(e){var t=this._events;t&&t.modelValue?this.$emit("modelValue",e):this.$emit("model-value",e)},emitDefaultValue:function(e){this.emitModel(e),this.dispatchEvent("default-change",{value:e},null)},isPanelVisible:function(){return this.reactData.visiblePanel},togglePanel:function(){return this.reactData.visiblePanel?this.hideOptionPanel():this.showOptionPanel(),this.$nextTick()},hidePanel:function(){return this.reactData.visiblePanel&&this.hideOptionPanel(),this.$nextTick()},showPanel:function(){return this.reactData.visiblePanel||this.showOptionPanel(),this.$nextTick()},focus:function(){var e=this.reactData,t=this.$refs.refInput;return t&&t.blur(),e.isActivated=!0,this.$nextTick()},blur:function(){var e=this.reactData,t=this.$refs.refInput;return t&&t.blur(),e.isActivated=!1,this.$nextTick()},callSlot:function(e,t,n){var i=this.$scopedSlots;return e&&(_xeUtils.default.isString(e)&&(e=i[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e.call(this,t,n)):[]},getOptKey:function(){return this.computeOptionOpts.keyField||this.optionId||"_X_OPTION_KEY"},getOptId:function(e){e=e[this.getOptKey()];return e?encodeURIComponent(e):""},checkMaxLimit:function(e){var t=this.multiple,n=this.max;return!(!t||!n)&&e.length>=_xeUtils.default.toNumber(n)},getRemoteSelectLabel:function(t){var e=this.internalData,n=this.lazyOptions,i=e.remoteValMaps,l=this.computeValueField,o=this.computeLabelField,i=i[t]||e.optFullValMaps[t],e=i?i.item:null;if(e)return _xeUtils.default.toValueString(e[o]);if(n){i=n.find(function(e){return e[l]===t});if(i)return i[o]}return t},getSelectLabel:function(t){var e=this,n=e.reactData,i=e.lazyOptions,l=e.internalData.optFullValMaps,o=e.computeValueField,e=e.computeLabelField,n=n.reactFlag?l[t]:null;if(n)return n.item[e];if(i){l=i.find(function(e){return e[o]===t});if(l)return l[e]}return t},getOptkey:function(){return this.computeOptionOpts.keyField||this.optionId||"_X_OPTION_KEY"},getOptid:function(e){e=e[this.getOptkey()];return e?encodeURIComponent(e):""},handleOption:function(){var t=this,e=t.reactData,n=t.internalData,i=t.remote,l=t.value,o=t.filterable,a=e.searchValue,e=n.fullData,r=n.optFullValMaps,s=t.computeLabelField,c=t.computeValueField,u=t.computeFilterOpts.filterMethod||t.filterMethod,p="".concat(a||"").toLowerCase(),f=[];return(f=i?e.filter(isOptionVisible):o&&u?e.filter(function(e){return isOptionVisible(e)&&u({$select:t,group:null,option:e,searchValue:a,value:l})}):o?e.filter(function(e){return isOptionVisible(e)&&(!p||-1<"".concat(e[s]||e[c]).toLowerCase().indexOf(p))}):e.filter(isOptionVisible)).forEach(function(e,t){e=r[e[c]];e&&(e._index=t)}),n.afterVisibleList=f,t.$nextTick()},refreshOption:function(){return this.handleOption(),this.updateYData(),this.$nextTick()},cacheItemMap:function(e){function t(e){u.push(e);var t=n.getOptId(e);t||(t=getOptUniqueId(),e[r]=t),c[e[a]]={key:t,item:e,_index:-1}}var n=this,i=n.reactData,l=n.internalData,o=n.computeGroupOptionsField,a=n.computeValueField,r=n.getOptKey(),s={},c={},u=[];e.forEach(function(e){t(e),e[o]&&(s[e[r]]=e)[o].forEach(t)}),l.fullData=u,l.optGroupKeyMaps=s,l.optFullValMaps=c,i.reactFlag++,n.handleOption()},setCurrentOption:function(e){var t=this.reactData;e&&(t.currentOption=e)},scrollToOption:function(i,l){var o=this;return o.$nextTick().then(function(){var e,t,n;i&&(e=o.$refs.refOptionWrapper,t=o.$refs.refOptionPanel.querySelector("[optid='".concat(o.getOptid(i),"']")),e)&&t&&(n=e.offsetHeight,l?t.offsetTop+t.offsetHeight-e.scrollTop>n&&(e.scrollTop=t.offsetTop+t.offsetHeight-n):(t.offsetTop+5<e.scrollTop||t.offsetTop+5>e.scrollTop+e.clientHeight)&&(e.scrollTop=t.offsetTop-5))})},updateZindex:function(){var e=this.reactData,t=this.computePopupOpts.zIndex||this.zIndex;t?e.panelIndex=_xeUtils.default.toNumber(t):e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updateZIndex:function(){var e=this.reactData;e.panelIndex<(0,_utils.getLastZIndex)()&&(e.panelIndex=(0,_utils.nextZIndex)())},updatePlacement:function(){function e(){var e=(0,_dom.updatePanelPlacement)(o,a,{placement:s.placement||i,defaultPlacement:s.defaultPlacement,teleportTo:r}),t=Object.assign(e.style,{zIndex:l});n.panelStyle=t,n.panelPlacement=e.placement}var t=this,n=t.reactData,i=t.placement,l=n.panelIndex,o=t.$refs.refElem,a=t.$refs.refOptionPanel,r=t.computeBtnTransfer,s=t.computePopupOpts;return e(),t.$nextTick().then(e)},handleScrollSelect:function(){var l=this,o=l.reactData,a=l.internalData;l.$nextTick(function(){var e=o.isAniVisible,t=o.visiblePanel,n=a.optFullValMaps,i=l.computeSelectVals;i.length&&e&&t&&(e=o.reactFlag?n["".concat(i[0])]:null)&&(o.currentOption=e.item,l.handleScrollToOption(e.item))})},showOptionPanel:function(){var e=this,t=e.reactData,n=e.internalData,i=e.loading,l=e.filterable,o=e.remote,a=n.fullData,r=n.hpTimeout,s=e.computeRemoteOpts,c=e.computeSelectVals;i||e.computeIsDisabled||(r&&(clearTimeout(r),n.hpTimeout=void 0),t.initialized||(t.initialized=!0,i=e.computeBtnTransfer,r=e.$refs.refOptionPanel,i&&r&&document.body.appendChild(r)),t.isActivated=!0,t.isAniVisible=!0,l&&(o&&s.enabled&&(s.autoLoad&&!a.length||a.length&&s.clearOnClose)?e.handleSearchEvent():(e.handleOption(),e.updateYData())),setTimeout(function(){t.visiblePanel=!0,e.handleFocusSearch(),e.recalculate().then(function(){c&&c.length?e.handleScrollSelect():e.refreshScroll()}),e.updatePlacement()},10),setTimeout(function(){e.recalculate().then(function(){return e.refreshScroll()})},100),e.updateZIndex(),e.updatePlacement(),e.dispatchEvent("visible-change",{visible:!0},null))},hideOptionPanel:function(e){var t=this,n=t.reactData,i=t.internalData,l=t.filterable,o=t.computeFilterOpts;t.remote?t.computeRemoteOpts.clearOnClose&&(n.searchValue=""):l&&!o.clearOnClose||(n.searchValue=""),n.searchLoading=!1,n.visiblePanel=!1,i.hpTimeout=setTimeout(function(){n.isAniVisible=!1},350),t.dispatchEvent("visible-change",{visible:!1},e||null)},changeEvent:function(e,t,n){var i=this,l=i,o=i.$xeForm,a=i.formItemInfo;i.emitModel(t),t!==l.value&&(i.dispatchEvent("change",{value:t,option:n},e),o)&&a&&o.triggerItemEvent(e,a.itemConfig.field,t)},clearValueEvent:function(e,t){this.internalData.remoteValMaps={},this.changeEvent(e,t,null),this.dispatchEvent("clear",{value:t},e)},clearEvent:function(e){e=e.$event;this.clearValueEvent(e,null),this.hideOptionPanel(e)},allCheckedPanelEvent:function(e){var n=this,t=n.reactData,e=e.$event,i=n.multiple,l=n.max,o=n.checkedClosable,a=t.optList,r=n.computeValueField;if(i){for(var s=n.computeSelectVals.slice(0),c=0;c<a.length&&!(()=>{var t=a[c][r];if(n.checkMaxLimit(s))return _ui.VxeUI&&_ui.VxeUI.modal.message({content:(0,_ui.getI18n)("vxe.select.overSizeErr",[l]),status:"warning"}),1;s.some(function(e){return e===t})||s.push(t)})();c++);n.changeEvent(e,s,a[0]),o&&n.hideOptionPanel(e),n.dispatchEvent("all-change",{value:s},e)}},clearCheckedPanelEvent:function(e){var t=this.clearClosable,e=e.$event;this.clearValueEvent(e,null),t&&this.hideOptionPanel(e)},closePanelEvent:function(e){e=e.$event;this.hideOptionPanel(e)},changeOptionEvent:function(e,t){var n=this,i=n.reactData,l=n.multiple,o=n.internalData.remoteValMaps,a=t[n.computeValueField],r=o[a];i.visiblePanel&&(r?r.item=t:o[a]={key:n.getOptId(t),item:t,_index:-1},l?(r=[],o=n.computeSelectVals,r=-1===_xeUtils.default.findIndexOf(o,function(e){return e===a})?o.concat([a]):o.filter(function(e){return e!==a}),n.changeEvent(e,r,t)):(n.changeEvent(e,a,t),n.hideOptionPanel(e)),i.reactFlag++)},handleGlobalMousewheelEvent:function(e){var t=this,n=t.reactData.visiblePanel;t.computeIsDisabled||n&&(n=t.$refs.refOptionPanel,(0,_dom.getEventTargetNode)(e,n).flag?t.updatePlacement():t.hideOptionPanel(e))},handleGlobalMousedownEvent:function(e){var t,n,i=this,l=i.reactData,o=l.visiblePanel,a=i.computePopupOpts.trigger;i.computeIsDisabled||(t=i.$refs.refElem,n=i.$refs.refOptionPanel,l.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,n).flag,o&&!l.isActivated&&"manual"!==a&&i.hideOptionPanel(e))},validOffsetOption:function(e){var t=e.disabled,e=this.getOptId(e);return!t&&!this.hasOptGroupById(e)},findOffsetOption:function(e,t){var n=this,i=n.reactData,l=n.internalData,o=n.allowCreate,i=i.optList,a=l.optFullValMaps,r=l.optAddMaps,s=n.computeValueField,c=l.afterVisibleList,l=0;if(o&&i.length&&(o=i[0],r[i=n.getOptId(o)])&&(l=1,c=[r[i]].concat(c)),!e)if(t)for(var u=0;u<c.length;u++){var p=c[u];if(n.validOffsetOption(p))return p}else for(var f=c.length-1;0<=f;f--){var d=c[f];if(n.validOffsetOption(d))return d}o=0,r=e?a[e[s]]:null;if(-1<(o=r?r._index+l:o))if(t)for(var h=o+1;h<=c.length-1;h++){var v=c[h];if(n.validOffsetOption(v))return v}else if(0<o)for(var m=o-1;0<=m;m--){var g=c[m];if(n.validOffsetOption(g))return g}return null},handleGlobalKeydownEvent:function(e){var t,n,i,l,o,a,r=this,s=r.reactData,c=r.clearable,u=s.visiblePanel,p=s.currentOption,f=r.computePopupOpts.trigger;r.computeIsDisabled||(t=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.TAB),n=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ENTER),i=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE),l=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_UP),o=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN),a=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.DELETE),t&&(s.isActivated=!1),u?i||t?"manual"!==f&&r.hideOptionPanel(e):n?p&&(e.preventDefault(),e.stopPropagation(),r.changeOptionEvent(e,p)):(l||o)&&(e.preventDefault(),u=(u=r.findOffsetOption(p,o))||r.findOffsetOption(null,o))&&(r.setCurrentOption(u),r.handleScrollToOption(u,o)):(l||o||n)&&s.isActivated&&(e.preventDefault(),r.showOptionPanel()),s.isActivated&&a&&c&&r.clearValueEvent(e,null))},handleGlobalBlurEvent:function(e){var t=this.reactData,n=t.visiblePanel,i=t.isActivated,l=this.computePopupOpts.trigger;n&&"manual"!==l&&this.hideOptionPanel(e),i&&(t.isActivated=!1),(n||i)&&(l=this.$refs.refInput)&&l.blur()},handleGlobalResizeEvent:function(){this.reactData.visiblePanel&&this.updatePlacement()},handleFocusSearch:function(){var t=this;t.filterable&&t.$nextTick(function(){var e=t.$refs.refInpSearch;e&&e.focus()})},focusEvent:function(e){var t=this,n=t.reactData,i=t.computePopupOpts.trigger;t.computeIsDisabled||n.visiblePanel||i&&"default"!==i||(n.triggerFocusPanel=!0,t.showOptionPanel(),setTimeout(function(){n.triggerFocusPanel=!1},500)),t.dispatchEvent("focus",{},e)},clickEvent:function(e){var t=this.reactData,n=this.computePopupOpts.trigger;n&&"default"!==n||this.togglePanelEvent(e),this.dispatchEvent("click",{triggerButton:!1,visible:t.visiblePanel},e)},blurEvent:function(e){this.reactData.isActivated=!1,this.dispatchEvent("blur",{},e)},suffixClickEvent:function(e){var t=this.reactData,n=this.computePopupOpts.trigger;n&&"default"!==n&&"icon"!==n||this.togglePanelEvent(e),this.dispatchEvent("click",{triggerButton:!0,visible:t.visiblePanel},e)},modelSearchEvent:function(e){this.reactData.searchValue=e},focusSearchEvent:function(){this.reactData.isActivated=!0},handleSearchEvent:function(){var e=this,t=e.reactData,n=e.value,i=t.searchValue,l=e.computeRemoteOpts,o=l.queryMethod||e.remoteMethod;e.remote&&o&&l.enabled?(t.searchLoading=!0,Promise.resolve(o({$select:e,searchValue:i,value:n})).then(function(){return e.$nextTick()}).catch(function(){return e.$nextTick()}).finally(function(){t.searchLoading=!1,e.handleOption(),e.updateYData()})):(e.handleOption(),e.updateYData())},triggerSearchEvent:_xeUtils.default.debounce(function(){this.handleSearchEvent()},350,{trailing:!0}),togglePanelEvent:function(e){var t=this.reactData,e=e.$event;e.preventDefault(),t.triggerFocusPanel?t.triggerFocusPanel=!1:t.visiblePanel?this.hideOptionPanel(e):this.showOptionPanel()},checkOptionDisabled:function(e,t){return!!t.disabled||!(!this.computeIsMaximize||e)},updateYSpace:function(){var e=this.reactData,t=this.internalData,n=e.scrollYLoad,i=t.scrollYStore;e.bodyHeight=n?t.afterVisibleList.length*i.rowHeight:0,e.topSpaceHeight=n?Math.max(i.startIndex*i.rowHeight,0):0},handleData:function(){var e=this,t=e.reactData,n=e.internalData,i=e.filterable,l=e.allowCreate,o=t.scrollYLoad,a=t.searchValue,r=n.optAddMaps,s=n.scrollYStore,n=n.afterVisibleList,c=e.computeLabelField,u=e.computeValueField,o=o?n.slice(s.startIndex,s.endIndex):n.slice(0);return i&&l&&a&&(o.some(function(e){return e[c]===a})||(s=r[a]||_defineProperty(_defineProperty(_defineProperty({},e.getOptKey(),a),c,a),u,a),r[a]=s,o.unshift(s))),t.optList=o,e.$nextTick()},updateYData:function(){this.handleData(),this.updateYSpace()},computeScrollLoad:function(){var a=this,r=a.reactData,s=a.internalData;return a.$nextTick().then(function(){var e,t=r.scrollYLoad,n=s.scrollYStore,i=a.$refs.refVirtualBody,l=a.computeVirtualYOpts,o=0;(e=i?e||i.children[0]:e)&&(o=e.offsetHeight),o=Math.max(20,o),n.rowHeight=o,t?(i=a.$refs.refVirtualWrapper,e=Math.max(8,i?Math.ceil(i.clientHeight/o):0),t=Math.max(0,Math.min(2,_xeUtils.default.toNumber(l.oSize))),n.offsetSize=t,n.visibleSize=e,n.endIndex=Math.max(n.startIndex,e+t,n.endIndex),a.updateYData()):a.updateYSpace()})},handleScrollToOption:function(e,t){var n,i,l=this.internalData,o=l.optFullValMaps,l=l.scrollYStore,o=o[e[this.computeValueField]];o&&(e=o.key,-1<(o=o._index))&&(n=this.$refs.refVirtualWrapper,e=this.$refs.refOptionPanel.querySelector("[optid='".concat(e,"']")),n)&&(e?(i=n.offsetHeight,t?Math.ceil(e.offsetTop+e.offsetHeight-n.scrollTop)>=i?n.scrollTop=e.offsetTop+e.offsetHeight-i:(e.offsetTop+1<n.scrollTop||e.offsetTop+1>n.scrollTop+n.clientHeight)&&(n.scrollTop=e.offsetTop-1):e.offsetTop+1<n.scrollTop||e.offsetTop+1>n.scrollTop+n.clientHeight?n.scrollTop=e.offsetTop-1:e.offsetTop+e.offsetHeight-n.scrollTop>i&&(n.scrollTop=e.offsetTop+e.offsetHeight-i)):n.scrollTop=t?o*l.rowHeight-n.clientHeight+l.rowHeight:o*l.rowHeight)},scrollTo:function(e,t){var n=this,i=n.reactData,l=n.$refs.refVirtualWrapper;return l&&(_xeUtils.default.isNumber(e)&&(l.scrollLeft=e),_xeUtils.default.isNumber(t))&&(l.scrollTop=t),i.scrollYLoad?new Promise(function(e){setTimeout(function(){n.$nextTick(function(){e()})},50)}):n.$nextTick()},refreshScroll:function(){var e=this,t=e.internalData,n=t.lastScrollLeft,i=t.lastScrollTop;return e.clearScroll().then(function(){if(n||i)return t.lastScrollLeft=0,t.lastScrollTop=0,e.scrollTo(n,i)})},recalculate:function(){var e=this.$refs.refElem;return e&&e.clientWidth&&e.clientHeight?this.computeScrollLoad():Promise.resolve()},loadYData:function(e){var t=this.internalData.scrollYStore,n=t.startIndex,i=t.endIndex,l=t.visibleSize,o=t.offsetSize,e=e.target.scrollTop,e=Math.floor(e/t.rowHeight),a=Math.max(0,e-1-o),o=e+l+o;!(e<=n||i-l-1<=e)||n===a&&i===o||(t.startIndex=a,t.endIndex=o,this.updateYData())},isVMScrollProcess:function(){var e=this.internalData.lastScrollTime;return!!(e&&Date.now()<e+250)},scrollEvent:function(e){var t=this.reactData,n=this.internalData,i=e.target,l=i.scrollTop,i=i.scrollLeft,o=i!==n.lastScrollLeft,a=l!==n.lastScrollTop;n.lastScrollTop=l,n.lastScrollLeft=i,t.scrollYLoad&&this.loadYData(e),n.lastScrollTime=Date.now(),this.dispatchEvent("scroll",{scrollLeft:i,scrollTop:l,isX:o,isY:a},e)},loadData:function(e){var t,n=this,i=n,l=n.reactData,o=n.internalData,a=(n.cacheItemMap(e||[]),i.multiple),r=o.isLoaded,s=o.fullData,c=o.scrollYStore,u=n.computeDefaultOpts,p=n.computeVirtualYOpts,f=n.computeValueField;return Object.assign(c,{startIndex:0,endIndex:1,visibleSize:0}),o.synchData=e||[],l.scrollYLoad=!!p.enabled&&-1<p.gt&&(0===p.gt||p.gt<=s.length),n.handleData(),r||(c=u.selectMode,0<e.length&&_xeUtils.default.eqNull(i.value)&&("all"===c?a?n.$nextTick(function(){n.emitDefaultValue(e.map(function(e){return e[f]}))}):(0,_log.errLog)("vxe.error.notConflictProp",["default-config.selectMode=all","multiple=true"]):"first"!==c&&"last"!==c||(t=_xeUtils.default[c](e))&&n.$nextTick(function(){_xeUtils.default.eqNull(i.value)&&n.emitDefaultValue(t[f])}),o.isLoaded=!0)),n.computeScrollLoad().then(function(){n.refreshScroll()})},reloadData:function(e){return this.internalData.isLoaded=!1,this.clearScroll(),this.loadData(e)},clearScroll:function(){var e=this.internalData,t=this.$refs.refVirtualWrapper;return t&&(t.scrollTop=0,t.scrollLeft=0),e.lastScrollTop=0,e.lastScrollLeft=0,this.$nextTick()},hasOptGroupById:function(e){return!!this.internalData.optGroupKeyMaps[e]},renderRadio:function(e,t,n,i,l){var o=this,a=o.computeRadioOpts,r=a.showIcon,a=a.trigger;return n||!1===r?(0,_ui.renderEmptyElement)(o):(r={},a&&"default"!==a||(r.click=function(e){l||n||o.changeOptionEvent(e,t)}),e("div",{key:2,class:["vxe-select-option--radio",{"is--checked":i,"is--disabled":l}],on:r},[e("span",{class:["vxe-radio--icon",i?(0,_ui.getIcon)().RADIO_CHECKED:(0,_ui.getIcon)().RADIO_UNCHECKED]})]))},renderCheckbox:function(e,t,n,i,l){var o=this,a=o.computeCheckboxOpts,r=a.showIcon,a=a.trigger;return n||!1===r?(0,_ui.renderEmptyElement)(o):(r={},a&&"default"!==a||(r.click=function(e){l||n||o.changeOptionEvent(e,t)}),e("div",{key:3,class:["vxe-select-option--checkbox",{"is--checked":i,"is--disabled":l}],on:r},[e("span",{class:["vxe-checkbox--icon",i?(0,_ui.getIcon)().CHECKBOX_CHECKED:(0,_ui.getIcon)().CHECKBOX_UNCHECKED]})]))},renderOption:function(v,e){var m=this,t=m.$scopedSlots,g=m.allowCreate,b=m.optionKey,n=m.multiple,O=m.reactData.currentOption,x=m.internalData.optAddMaps,i=m.computeOptionOpts,_=m.computeLabelField,E=m.computeValueField,y=m.computeGroupLabelField,D=m.computeSelectVals,S=m.computeRadioOpts,P=m.computeCheckboxOpts,C=i.useKey,T=i.height,I=t.option,V=m.showCheckbox&&n,L=m.showRadio&&!n;return e.map(function(t,e){var n=t.slots,i=t.className,l=m.getOptId(t),o=t[E],a=m.hasOptGroupById(l),r=!(!g||!x[l]),s=!r&&-1<D.indexOf(o),c=r||!a||isOptionVisible(t),u=!r&&m.checkOptionDisabled(s,t),n=(n?n.default:null)||I,p={option:t,group:a?t:null,$select:m},f="",d=[],h=(V?d.push(m.renderCheckbox(v,t,a,s,u)):L&&d.push(m.renderRadio(v,t,a,s,u)),[]),h=n?m.callSlot(n,p,v):[f=(0,_utils.getFuncText)(t[a?y:_]||o)],n=(d.push(v("div",{key:1,class:"vxe-select-option--label"},h)),{mousedown:function(e){0===e.button&&e.stopPropagation()},mouseenter:function(){u||a||m.isVMScrollProcess()||m.setCurrentOption(t)}});return(V?"option"!==P.trigger:L&&"option"!==S.trigger)||(n.click=function(e){u||a||m.changeOptionEvent(e,t)}),c?v("div",{key:C||b?l:e,class:["vxe-select-option",i?_xeUtils.default.isFunction(i)?i(p):i:"",{"vxe-select-optgroup":a,"is--disabled":u,"is--selected":s,"is--add":r,"is--hover":O&&m.getOptId(O)===l}],attrs:{optid:l,title:f||null},style:T?{height:(0,_dom.toCssUnit)(T)}:void 0,on:n},g?[v("span",{key:1,class:"vxe-select-option--add-label"},d),r?v("span",{key:2,class:"vxe-select-option--add-icon"},[v("i",{class:(0,_ui.getIcon)().SELECT_ADD_OPTION})]):(0,_ui.renderEmptyElement)(m)]:d):(0,_ui.renderEmptyElement)(m)})},renderOpts:function(e){var t=this.reactData,n=t.optList;return t.searchLoading?[e("div",{class:"vxe-select--search-loading"},[e("i",{class:["vxe-select--search-icon",(0,_ui.getIcon)().SELECT_LOADED]}),e("span",{class:"vxe-select--search-text"},(0,_ui.getI18n)("vxe.select.loadingText"))])]:n.length?this.renderOption(e,n):[e("div",{class:"vxe-select--empty-placeholder"},this.emptyText||(0,_ui.getI18n)("vxe.select.emptyText"))]},renderVN:function(e){var t,n=this,i=n,l=n.$scopedSlots,o=n.reactData,a=i.className,r=i.multiple,s=i.loading,c=i.filterable,u=i.showTotalButoon,p=i.showCheckedButoon,f=i.showClearButton,d=i.showCloseButton,h=o.initialized,v=o.isActivated,m=o.isAniVisible,g=o.optList,b=o.visiblePanel,O=o.bodyHeight,x=o.topSpaceHeight,_=n.computeSize,E=n.computeIsDisabled,y=n.computeSelectLabel,D=n.computeFullLabel,S=n.computeBtnTransfer,P=n.computeInpPlaceholder,C=n.computePopupWrapperStyle,T=l.default,I=l.header,V=l.footer,L=l.prefix,l=n.computePopupOpts.className||i.popupClassName;return n.computeFormReadonly?e("div",{ref:"refElem",class:["vxe-select--readonly",a]},[e("div",{class:"vxe-select-slots",ref:"hideOption"},T?n.callSlot(T,{},e):[]),e("span",{class:"vxe-select-label",attrs:{fullLabel:D}},y)]):(t=n.computeSelectVals,e("div",{ref:"refElem",class:["vxe-select",a?_xeUtils.default.isFunction(a)?a({$select:n}):a:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(_),_),"is--visible",b),"is--disabled",E),"is--filter",c),"is--loading",s),"is--active",v)]},[e("div",{class:"vxe-select-slots",ref:"hideOption"},T?T.call(n,{}):[]),e(_input.default,{ref:"refInput",props:{clearable:i.clearable,placeholder:P,editable:!1,disabled:E,type:"text",prefixIcon:i.prefixIcon,suffixIcon:s?(0,_ui.getIcon)().SELECT_LOADED:b?(0,_ui.getIcon)().SELECT_OPEN:(0,_ui.getIcon)().SELECT_CLOSE,autoFocus:!1,title:D,value:y},on:{clear:n.clearEvent,click:n.clickEvent,focus:n.focusEvent,blur:n.blurEvent,"suffix-click":n.suffixClickEvent},scopedSlots:L?{prefix:function(){return L({})}}:{}}),e("div",{ref:"refOptionPanel",class:["vxe-table--ignore-clear vxe-select--panel",l?_xeUtils.default.isFunction(l)?l({$select:n}):l:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(_),_),"is--transfer",S),"ani--leave",!s&&m),"ani--enter",!s&&b)],attrs:{placement:o.panelPlacement},style:o.panelStyle},h&&(b||m)?[e("div",{class:"vxe-select--panel-wrapper",style:C},[c?e("div",{class:"vxe-select--panel-search"},[e(_input.default,{ref:"refInpSearch",class:"vxe-select-search--input",props:{value:o.searchValue,type:"text",clearable:!0,disabled:!1,readonly:!1,placeholder:(0,_ui.getI18n)("vxe.select.search"),prefixIcon:(0,_ui.getIcon)().INPUT_SEARCH},on:{"model-value":n.modelSearchEvent,focus:n.focusSearchEvent,change:n.triggerSearchEvent,search:n.triggerSearchEvent}})]):(0,_ui.renderEmptyElement)(n),p&&r||f||I?e("div",{class:"vxe-select--panel-header"},I?n.callSlot(I,{},e):[e("div",{class:"vxe-tree-select--header-button"},[e("div",{class:"vxe-tree-select--header-btns"},[p&&r?e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.select.allChecked"),mode:"text"},on:{click:n.allCheckedPanelEvent}}):(0,_ui.renderEmptyElement)(n),f?e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.select.clear"),mode:"text"},on:{click:n.clearCheckedPanelEvent}}):(0,_ui.renderEmptyElement)(n)])])]):(0,_ui.renderEmptyElement)(n),e("div",{class:"vxe-select--panel-body"},[e("div",{ref:"refVirtualWrapper",class:"vxe-select-option--wrapper",on:{scroll:n.scrollEvent}},[e("div",{class:"vxe-select--y-space",style:{height:O?"".concat(O,"px"):""}}),e("div",{ref:"refVirtualBody",class:"vxe-select--body",style:{transform:"translateY(".concat(x,"px)")}},n.renderOpts(e))])]),V||u||d&&r?e("div",{class:"vxe-select--panel-footer"},V?n.callSlot(V,{},e):[e("div",{class:"vxe-select--footer-button"},[u?e("div",{class:"vxe-select--total-btns"},(0,_ui.getI18n)("vxe.select.total",[t.length,g.length])):(0,_ui.renderEmptyElement)(n),d&&r?e("div",{class:"vxe-select--oper-btns"},[e(_button.default,{props:{content:(0,_ui.getI18n)("vxe.select.close"),mode:"text"},on:{click:n.closePanelEvent}})]):(0,_ui.renderEmptyElement)(n)])]):(0,_ui.renderEmptyElement)(n)])]:[])]))}},watch:{"reactData.staticOptions":function(e){this.loadData(e)},options:function(e){this.loadData(e)},optionGroups:function(e){this.loadData(e)}},mounted:function(){var n=this,i=n;n.$nextTick(function(){var e=i.options,t=i.optionGroups;t?n.loadData(t):e&&n.loadData(e)}),_ui.globalEvents.on(n,"mousewheel",n.handleGlobalMousewheelEvent),_ui.globalEvents.on(n,"mousedown",n.handleGlobalMousedownEvent),_ui.globalEvents.on(n,"keydown",n.handleGlobalKeydownEvent),_ui.globalEvents.on(n,"blur",n.handleGlobalBlurEvent),_ui.globalEvents.on(n,"resize",n.handleGlobalResizeEvent)},beforeDestroy:function(){var e=this,t=e.$refs.refOptionPanel;t&&t.parentNode&&t.parentNode.removeChild(t),_ui.globalEvents.off(e,"mousewheel"),_ui.globalEvents.off(e,"mousedown"),_ui.globalEvents.off(e,"keydown"),_ui.globalEvents.off(e,"blur"),_ui.globalEvents.off(e,"resize")},destroyed:function(){var e=this.internalData;_xeUtils.default.assign(e,createInternalData())},render:function(e){return this.renderVN(e)}});