vxe-pc-ui 4.15.2 → 4.15.3

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 (127) hide show
  1. package/dist/all.esm.js +774 -211
  2. package/es/backtop/src/backtop.js +2 -1
  3. package/es/button/src/button.js +3 -2
  4. package/es/calendar/src/calendar.js +2 -1
  5. package/es/cascader/src/cascader.js +2 -1
  6. package/es/checkbox/src/group.js +5 -1
  7. package/es/date-panel/src/util.js +27 -16
  8. package/es/date-picker/src/date-picker.js +572 -74
  9. package/es/date-range-picker/src/date-range-picker.js +3 -2
  10. package/es/drawer/src/drawer.js +2 -0
  11. package/es/form/render/index.js +3 -2
  12. package/es/form/src/form.js +6 -5
  13. package/es/form/src/itemInfo.js +6 -5
  14. package/es/input/src/input.js +2 -1
  15. package/es/menu/src/menu.js +2 -1
  16. package/es/modal/src/modal.js +5 -2
  17. package/es/pager/src/pager.js +4 -3
  18. package/es/radio/src/group.js +5 -1
  19. package/es/select/src/select.js +25 -20
  20. package/es/splitter/src/splitter.js +7 -6
  21. package/es/table-select/src/table-select.js +21 -16
  22. package/es/tabs/src/tabs.js +4 -3
  23. package/es/textarea/src/textarea.js +2 -1
  24. package/es/tree/src/tree.js +3 -2
  25. package/es/tree-select/src/tree-select.js +2 -1
  26. package/es/ui/index.js +1 -1
  27. package/es/ui/src/log.js +7 -1
  28. package/es/upload/src/upload.js +12 -3
  29. package/lib/backtop/src/backtop.js +5 -2
  30. package/lib/backtop/src/backtop.min.js +1 -1
  31. package/lib/button/src/button.js +4 -1
  32. package/lib/button/src/button.min.js +1 -1
  33. package/lib/calendar/src/calendar.js +4 -1
  34. package/lib/calendar/src/calendar.min.js +1 -1
  35. package/lib/cascader/src/cascader.js +4 -1
  36. package/lib/cascader/src/cascader.min.js +1 -1
  37. package/lib/checkbox/src/group.js +5 -1
  38. package/lib/checkbox/src/group.min.js +1 -1
  39. package/lib/date-panel/src/util.js +37 -19
  40. package/lib/date-panel/src/util.min.js +1 -1
  41. package/lib/date-picker/src/date-picker.js +620 -77
  42. package/lib/date-picker/src/date-picker.min.js +1 -1
  43. package/lib/date-range-picker/src/date-range-picker.js +4 -1
  44. package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
  45. package/lib/drawer/src/drawer.js +2 -0
  46. package/lib/drawer/src/drawer.min.js +1 -1
  47. package/lib/form/render/index.js +4 -1
  48. package/lib/form/render/index.min.js +1 -1
  49. package/lib/form/src/form.js +8 -4
  50. package/lib/form/src/form.min.js +1 -1
  51. package/lib/form/src/itemInfo.js +7 -4
  52. package/lib/form/src/itemInfo.min.js +1 -1
  53. package/lib/index.umd.js +847 -177
  54. package/lib/index.umd.min.js +1 -1
  55. package/lib/input/src/input.js +6 -3
  56. package/lib/input/src/input.min.js +1 -1
  57. package/lib/menu/src/menu.js +4 -1
  58. package/lib/menu/src/menu.min.js +1 -1
  59. package/lib/modal/src/modal.js +8 -2
  60. package/lib/modal/src/modal.min.js +1 -1
  61. package/lib/pager/src/pager.js +6 -2
  62. package/lib/pager/src/pager.min.js +1 -1
  63. package/lib/radio/src/group.js +5 -1
  64. package/lib/radio/src/group.min.js +1 -1
  65. package/lib/select/src/select.js +27 -20
  66. package/lib/select/src/select.min.js +1 -1
  67. package/lib/splitter/src/splitter.js +12 -8
  68. package/lib/splitter/src/splitter.min.js +1 -1
  69. package/lib/table-select/src/table-select.js +22 -15
  70. package/lib/table-select/src/table-select.min.js +1 -1
  71. package/lib/tabs/src/tabs.js +7 -3
  72. package/lib/tabs/src/tabs.min.js +1 -1
  73. package/lib/textarea/src/textarea.js +4 -1
  74. package/lib/textarea/src/textarea.min.js +1 -1
  75. package/lib/tree/src/tree.js +7 -4
  76. package/lib/tree/src/tree.min.js +1 -1
  77. package/lib/tree-select/src/tree-select.js +7 -3
  78. package/lib/tree-select/src/tree-select.min.js +1 -1
  79. package/lib/ui/index.js +1 -1
  80. package/lib/ui/index.min.js +1 -1
  81. package/lib/ui/src/log.js +8 -1
  82. package/lib/ui/src/log.min.js +1 -1
  83. package/lib/upload/src/upload.js +20 -3
  84. package/lib/upload/src/upload.min.js +1 -1
  85. package/package.json +1 -1
  86. package/packages/backtop/src/backtop.ts +3 -1
  87. package/packages/button/src/button.ts +4 -2
  88. package/packages/calendar/src/calendar.ts +3 -1
  89. package/packages/cascader/src/cascader.ts +3 -1
  90. package/packages/checkbox/src/group.ts +6 -2
  91. package/packages/date-panel/src/util.ts +28 -16
  92. package/packages/date-picker/src/date-picker.ts +583 -75
  93. package/packages/date-range-picker/src/date-range-picker.ts +4 -2
  94. package/packages/drawer/src/drawer.ts +2 -0
  95. package/packages/form/render/index.ts +4 -2
  96. package/packages/form/src/form.ts +7 -5
  97. package/packages/form/src/itemInfo.ts +7 -5
  98. package/packages/input/src/input.ts +3 -1
  99. package/packages/menu/src/menu.ts +3 -1
  100. package/packages/modal/src/modal.ts +6 -2
  101. package/packages/pager/src/pager.ts +5 -3
  102. package/packages/radio/src/group.ts +6 -2
  103. package/packages/select/src/select.ts +29 -22
  104. package/packages/splitter/src/splitter.ts +8 -6
  105. package/packages/table-select/src/table-select.ts +24 -17
  106. package/packages/tabs/src/tabs.ts +5 -3
  107. package/packages/textarea/src/textarea.ts +3 -1
  108. package/packages/tree/src/tree.ts +4 -2
  109. package/packages/tree-select/src/tree-select.ts +3 -1
  110. package/packages/ui/src/log.ts +7 -0
  111. package/packages/upload/src/upload.ts +14 -3
  112. package/types/components/date-picker.d.ts +14 -6
  113. package/types/components/drawer.d.ts +2 -0
  114. package/types/components/modal.d.ts +2 -0
  115. package/types/components/upload.d.ts +28 -1
  116. /package/es/icon/{iconfont.1781753592499.ttf → iconfont.1781852740683.ttf} +0 -0
  117. /package/es/icon/{iconfont.1781753592499.woff → iconfont.1781852740683.woff} +0 -0
  118. /package/es/icon/{iconfont.1781753592499.woff2 → iconfont.1781852740683.woff2} +0 -0
  119. /package/es/{iconfont.1781753592499.ttf → iconfont.1781852740683.ttf} +0 -0
  120. /package/es/{iconfont.1781753592499.woff → iconfont.1781852740683.woff} +0 -0
  121. /package/es/{iconfont.1781753592499.woff2 → iconfont.1781852740683.woff2} +0 -0
  122. /package/lib/icon/style/{iconfont.1781753592499.ttf → iconfont.1781852740683.ttf} +0 -0
  123. /package/lib/icon/style/{iconfont.1781753592499.woff → iconfont.1781852740683.woff} +0 -0
  124. /package/lib/icon/style/{iconfont.1781753592499.woff2 → iconfont.1781852740683.woff2} +0 -0
  125. /package/lib/{iconfont.1781753592499.ttf → iconfont.1781852740683.ttf} +0 -0
  126. /package/lib/{iconfont.1781753592499.woff → iconfont.1781852740683.woff} +0 -0
  127. /package/lib/{iconfont.1781753592499.woff2 → iconfont.1781852740683.woff2} +0 -0
@@ -15,12 +15,36 @@ var _log = require("../../ui/src/log");
15
15
  var _input = _interopRequireDefault(require("../../input/src/input"));
16
16
  var _button = _interopRequireDefault(require("../../button/src/button"));
17
17
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
18
+ const {
19
+ errLog
20
+ } = (0, _log.createComponentLog)('select');
18
21
  function isOptionVisible(option) {
19
22
  return option.visible !== false;
20
23
  }
21
24
  function getOptUniqueId() {
22
25
  return _xeUtils.default.uniqueId('opt_');
23
26
  }
27
+ function createReactData() {
28
+ return {
29
+ initialized: false,
30
+ scrollYLoad: false,
31
+ bodyHeight: 0,
32
+ topSpaceHeight: 0,
33
+ optList: [],
34
+ staticOptions: [],
35
+ reactFlag: 0,
36
+ currentOption: null,
37
+ searchValue: '',
38
+ searchLoading: false,
39
+ panelIndex: 0,
40
+ panelStyle: {},
41
+ panelPlacement: null,
42
+ triggerFocusPanel: false,
43
+ visiblePanel: false,
44
+ isAniVisible: false,
45
+ isActivated: false
46
+ };
47
+ }
24
48
  function createInternalData() {
25
49
  return {
26
50
  // isLoaded: false,
@@ -190,25 +214,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
190
214
  const {
191
215
  computeSize
192
216
  } = (0, _ui.useSize)(props);
193
- const reactData = (0, _vue.reactive)({
194
- initialized: false,
195
- scrollYLoad: false,
196
- bodyHeight: 0,
197
- topSpaceHeight: 0,
198
- optList: [],
199
- staticOptions: [],
200
- reactFlag: 0,
201
- currentOption: null,
202
- searchValue: '',
203
- searchLoading: false,
204
- panelIndex: 0,
205
- panelStyle: {},
206
- panelPlacement: null,
207
- triggerFocusPanel: false,
208
- visiblePanel: false,
209
- isAniVisible: false,
210
- isActivated: false
211
- });
217
+ const reactData = (0, _vue.reactive)(createReactData());
212
218
  const internalData = createInternalData();
213
219
  const refMaps = {
214
220
  refElem
@@ -1414,7 +1420,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1414
1420
  emitDefaultValue(datas.map(item => item[valueField]));
1415
1421
  });
1416
1422
  } else {
1417
- (0, _log.errLog)('vxe.error.notConflictProp', ['default-config.selectMode=all', 'multiple=true']);
1423
+ errLog('vxe.error.notConflictProp', ['default-config.selectMode=all', 'multiple=true']);
1418
1424
  }
1419
1425
  } else if (selectMode === 'first' || selectMode === 'last') {
1420
1426
  const selectItem = _xeUtils.default[selectMode](datas);
@@ -1883,6 +1889,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1883
1889
  _ui.globalEvents.off($xeSelect, 'keydown');
1884
1890
  _ui.globalEvents.off($xeSelect, 'blur');
1885
1891
  _ui.globalEvents.off($xeSelect, 'resize');
1892
+ _xeUtils.default.assign(reactData, createReactData());
1886
1893
  _xeUtils.default.assign(internalData, createInternalData());
1887
1894
  });
1888
1895
  (0, _vue.provide)('$xeSelect', $xeSelect);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_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 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 _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeSelect",props:{modelValue:[String,Number,Boolean,Array],defaultConfig:Object,clearable:{type:Boolean,default:()=>(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:()=>(0,_ui.getConfig)().select.multiCharOverflow},prefixIcon:String,allowCreate:{type:Boolean,default:()=>(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:()=>(0,_ui.getConfig)().select.showRadio},radioConfig:Object,showCheckbox:{type:Boolean,default:()=>(0,_ui.getConfig)().select.showCheckedButton},checkboxConfig:Object,zIndex:Number,size:{type:String,default:()=>(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:()=>(0,_ui.getConfig)().select.checkedClosable},clearClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().select.clearClosable},showCloseButton:{type:Boolean,default:()=>(0,_ui.getConfig)().select.showCloseButton},showTotalButton:{type:Boolean,default:()=>(0,_ui.getConfig)().select.showTotalButton},showCheckedButton:{type:Boolean,default:()=>(0,_ui.getConfig)().select.showCheckedButton},showClearButton:{type:Boolean,default:()=>(0,_ui.getConfig)().select.showClearButton},transfer:{type:Boolean,default:null},popupConfig:Object,virtualYConfig:Object,scrollY:Object,remoteMethod:Function,optionId:{type:String,default:()=>(0,_ui.getConfig)().select.optionId},optionKey:Boolean},emits:["update:modelValue","change","default-change","all-change","clear","blur","focus","click","scroll","visible-change"],setup(k,e){let{slots:w,emit:a}=e,n=(0,_vue.inject)("$xeModal",null),C=(0,_vue.inject)("$xeDrawer",null),E=(0,_vue.inject)("$xeTable",null),i=(0,_vue.inject)("$xeForm",null),T=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let V=(0,_vue.ref)(),L=(0,_vue.ref)(),K=(0,_vue.ref)(),P=(0,_vue.ref)(),B=(0,_vue.ref)(),q=(0,_vue.ref)(),R=(0,_ui.useSize)(k).computeSize,A=(0,_vue.reactive)({initialized:!1,scrollYLoad:!1,bodyHeight:0,topSpaceHeight:0,optList:[],staticOptions:[],reactFlag:0,currentOption:null,searchValue:"",searchLoading:!1,panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1}),M=createInternalData(),y={refElem:V},D={xID:t,props:k,context:e,reactData:A,internalData:M,getRefMaps:()=>y},$=(0,_vue.computed)(()=>{var e=k.readonly;return null===e?!!i&&i.props.readonly:e}),U=(0,_vue.computed)(()=>{var e=k.disabled;return null===e?!!i&&i.props.disabled:e}),G=(0,_vue.computed)(()=>{var e=k.transfer,t=j.value;if(_xeUtils.default.isBoolean(t.transfer))return t.transfer;if(null===e){t=(0,_ui.getConfig)().select.transfer;if(_xeUtils.default.isBoolean(t))return t;if(E||n||C||i)return!0}return e}),W=(0,_vue.computed)(()=>{var e=k.placeholder;return(e=e||(0,_ui.getConfig)().select.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")}),O=(0,_vue.computed)(()=>Object.assign({},k.defaultConfig)),S=(0,_vue.computed)(()=>Object.assign({},k.optionProps)),I=(0,_vue.computed)(()=>Object.assign({},k.optionGroupProps)),v=(0,_vue.computed)(()=>S.value.label||"label"),N=(0,_vue.computed)(()=>S.value.value||"value"),X=(0,_vue.computed)(()=>I.value.label||"label"),Z=(0,_vue.computed)(()=>I.value.options||"options"),J=(0,_vue.computed)(()=>{var e=F.value;return ce(e)}),j=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.popupConfig,k.popupConfig)),Q=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.virtualYConfig||(0,_ui.getConfig)().select.scrollY,k.virtualYConfig||k.scrollY)),r=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.remoteConfig,k.remoteConfig)),ee=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.filterConfig,k.filterConfig)),te=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.optionConfig,k.optionConfig)),le=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.radioConfig,k.radioConfig)),ae=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.checkboxConfig,k.checkboxConfig)),ie=(0,_vue.computed)(()=>_xeUtils.default.toNumber(k.multiCharOverflow)),oe=(0,_vue.computed)(()=>{var{height:e,width:t}=j.value,l={};return t&&(l.width=(0,_dom.toCssUnit)(t)),e&&(l.height=(0,_dom.toCssUnit)(e),l.maxHeight=(0,_dom.toCssUnit)(e)),l}),F=(0,_vue.computed)(()=>{var{modelValue:e,multiple:t}=k;let l=[];return _xeUtils.default.isArray(e)?l=e:t?(0,_utils.eqEmptyValue)(e)||(l=-1<(""+e).indexOf(",")?(""+e).split(","):[e]):l=null==e?[]:[e],l}),ne=(0,_vue.computed)(()=>{var e=k.remote,t=A.reactFlag,l=F.value;return(e&&t?l.map(e=>ve(e)):l.map(e=>de(e))).join(", ")}),ue=(0,_vue.computed)(()=>{var{remote:e,multiple:t}=k,l=A.reactFlag,a=ie.value,i=F.value;return e&&l?i.map(e=>ve(e)).join(", "):(e=i.map(e=>de(e)),t&&0<a&&e.length>a?e.slice(0,a)+"...":e.join(", "))}),H=(e,t)=>e&&(_xeUtils.default.isString(e)&&(e=w[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[],s=(e,t,l)=>{a(e,(0,_ui.createEvent)(l,{$select:D},t))},re=e=>{a("update:modelValue",e)},se=e=>{re(e),s("default-change",{value:e},null)},c=()=>te.value.keyField||k.optionId||"_X_OPTION_KEY",z=e=>{e=e[c()];return e?encodeURIComponent(e):""},ce=e=>{var{multiple:t,max:l}=k;return!(!t||!l)&&e.length>=_xeUtils.default.toNumber(l)},ve=t=>{var e=k.lazyOptions,{remoteValMaps:l,optFullValMaps:a}=M;let i=N.value;var o=v.value,l=l[t]||a[t],a=l?l.item:null;if(a)return _xeUtils.default.toValueString(a[o]);if(e){l=e.find(e=>e[i]===t);if(l)return l[o]}return t},de=t=>{var e=k.lazyOptions,l=M.optFullValMaps;let a=N.value;var i=v.value,l=A.reactFlag?l[t]:null;if(l)return l.item[i];if(e){l=e.find(e=>e[a]===t);if(l)return l[i]}return t},d=()=>{let{remote:e,modelValue:t,filterable:l}=k,a=A.searchValue,{fullData:i,optFullValMaps:o}=M,n=v.value,u=N.value;let r=ee.value.filterMethod||k.filterMethod,s=(""+(a||"")).toLowerCase(),c=[];return(c=e?i.filter(isOptionVisible):l&&r?i.filter(e=>isOptionVisible(e)&&r({$select:D,group:null,option:e,searchValue:a,value:t})):l?i.filter(e=>isOptionVisible(e)&&(!s||-1<(""+(e[n]||e[u])).toLowerCase().indexOf(s))):i.filter(isOptionVisible)).forEach((e,t)=>{e=o[e[u]];e&&(e._index=t)}),M.afterVisibleList=c,(0,_vue.nextTick)()},pe=e=>{e&&(A.currentOption=e)},fe=()=>{var e=j.value.zIndex||k.zIndex;e?A.panelIndex=_xeUtils.default.toNumber(e):A.panelIndex<(0,_utils.getLastZIndex)()&&(A.panelIndex=(0,_utils.nextZIndex)())},p=()=>{let l=k.placement,a=A.panelIndex,i=V.value,o=B.value,n=G.value,u=j.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(i,o,{placement:u.placement||l,defaultPlacement:u.defaultPlacement,teleportTo:n}),t=Object.assign(e.style,{zIndex:a});A.panelStyle=t,A.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},ge=()=>{(0,_vue.nextTick)(()=>{var{isAniVisible:e,visiblePanel:t}=A,l=M.optFullValMaps,a=F.value;a.length&&e&&t&&(e=A.reactFlag?l[""+a[0]]:null)&&(A.currentOption=e.item,Fe(e.item))})},f=()=>{var{loading:e,filterable:t,remote:l}=k,{fullData:a,hpTimeout:i}=M,o=U.value,n=r.value;let u=F.value;e||o||(i&&(clearTimeout(i),M.hpTimeout=void 0),A.initialized||(A.initialized=!0),A.isActivated=!0,A.isAniVisible=!0,t&&(l&&n.enabled&&(n.autoLoad&&!a.length||a.length&&n.clearOnClose)?Be:(d(),m))(),setTimeout(()=>{A.visiblePanel=!0,Se(),x().then(()=>{(u&&u.length?ge:b)()}),p()},10),setTimeout(()=>{x().then(()=>b())},100),fe(),p(),s("visible-change",{visible:!0},null))},g=e=>{var{filterable:t,remote:l}=k,a=ee.value,i=r.value;l?i.clearOnClose&&(A.searchValue=""):t&&!a.clearOnClose||(A.searchValue=""),A.searchLoading=!1,A.visiblePanel=!1,M.hpTimeout=setTimeout(()=>{A.isAniVisible=!1},350),s("visible-change",{visible:!1},e||null)},u=(e,t,l)=>{re(t),t!==k.modelValue&&(s("change",{value:t,option:l},e),i)&&T&&i.triggerItemEvent(e,T.itemConfig.field,t)},_=(e,t)=>{M.remoteValMaps={},u(e,t,null),s("clear",{value:t},e)},_e=e=>{e=e.$event;_(e,null),g(e)},he=e=>{var e=e.$event,{multiple:t,max:l,checkedClosable:a}=k,i=A.optList,o=N.value;if(t){var n=F.value.slice(0);for(let e=0;e<i.length;e++){let t=i[e][o];if(ce(n)){_ui.VxeUI&&_ui.VxeUI.modal.message({content:(0,_ui.getI18n)("vxe.select.overSizeErr",[l]),status:"warning"});break}n.some(e=>e===t)||n.push(t)}u(e,n,i[0]),a&&g(e),s("all-change",{value:n},e)}},me=e=>{var t=k.clearClosable,e=e.$event;_(e,null),t&&g(e)},be=e=>{e=e.$event;g(e)},Y=(t,l)=>{var e=k.multiple,a=M.remoteValMaps;let i=l[N.value];var o=a[i];if(A.visiblePanel){if(o?o.item=l:a[i]={key:z(l),item:l,_index:-1},e){let e=[];o=F.value,a=_xeUtils.default.findIndexOf(o,e=>e===i);e=-1===a?o.concat([i]):o.filter(e=>e!==i),u(t,e,l)}else u(t,i,l),g(t);A.reactFlag++}},xe=e=>{var t=A.visiblePanel;U.value||t&&(t=B.value,(0,_dom.getEventTargetNode)(e,t).flag?p():g(e))},Ce=e=>{var t,l=A.visiblePanel,a=U.value,i=j.value.trigger;a||(a=V.value,t=B.value,A.isActivated=(0,_dom.getEventTargetNode)(e,a).flag||(0,_dom.getEventTargetNode)(e,t).flag,l&&!A.isActivated&&"manual"!==i&&g(e))},h=e=>{var t=e.disabled,e=z(e);return!t&&!qe(e)},Ee=(e,t)=>{var l=k.allowCreate,a=A.optList,{optFullValMaps:i,optAddMaps:o,afterVisibleList:n}=M,u=N.value;let r=n,s=0;if(l&&a.length&&(n=a[0],o[l=z(n)])&&(s=1,r=[o[l]].concat(r)),!e)if(t)for(let e=0;e<r.length;e++){var c=r[e];if(h(c))return c}else for(let e=r.length-1;0<=e;e--){var v=r[e];if(h(v))return v}let d=0;a=e?i[e[u]]:null;if(-1<(d=a?a._index+s:d))if(t)for(let e=d+1;e<=r.length-1;e++){var p=r[e];if(h(p))return p}else if(0<d)for(let e=d-1;0<=e;e--){var f=r[e];if(h(f))return f}return null},Te=t=>{var e=k.clearable,{visiblePanel:l,currentOption:a}=A,i=U.value,o=j.value.trigger;if(!i){var i=_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.TAB),n=_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.ENTER),u=_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.ESCAPE),r=_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.ARROW_UP),s=_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN),c=_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.DELETE);if(i&&(A.isActivated=!1),l){if(u||i)"manual"!==o&&g(t);else if(n)a&&(t.preventDefault(),t.stopPropagation(),Y(t,a));else if(r||s){t.preventDefault();let e=Ee(a,s);(e=e||Ee(null,s))&&(pe(e),Fe(e,s))}}else(r||s||n)&&A.isActivated&&(t.preventDefault(),f());A.isActivated&&c&&e&&_(t,null)}},ye=e=>{var{visiblePanel:t,isActivated:l}=A,a=j.value.trigger;t&&"manual"!==a&&g(e),l&&(A.isActivated=!1),(t||l)&&(a=L.value)&&a.blur()},Oe=()=>{var e=A.visiblePanel;e&&p()},Se=()=>{k.filterable&&(0,_vue.nextTick)(()=>{var e=K.value;e&&e.focus()})},Ie=e=>{var t=U.value,l=j.value.trigger;t||A.visiblePanel||l&&"default"!==l||(A.triggerFocusPanel=!0,f(),setTimeout(()=>{A.triggerFocusPanel=!1},500)),s("focus",{},e)},Ve=e=>{var t=j.value.trigger;t&&"default"!==t||Me(e),s("click",{triggerButton:!1,visible:A.visiblePanel},e)},Le=e=>{A.isActivated=!1,s("blur",{},e)},ke=e=>{var t=j.value.trigger;t&&"default"!==t&&"icon"!==t||Me(e),s("click",{triggerButton:!0,visible:A.visiblePanel},e)},we=e=>{A.searchValue=e},Pe=()=>{A.isActivated=!0},Be=()=>{var{modelValue:e,remote:t}=k,l=A.searchValue,a=r.value,i=a.queryMethod||k.remoteMethod;t&&i&&a.enabled?(A.searchLoading=!0,Promise.resolve(i({$select:D,searchValue:l,value:e})).then(()=>(0,_vue.nextTick)()).catch(()=>(0,_vue.nextTick)()).finally(()=>{A.searchLoading=!1,d(),m()})):(d(),m())},Ae=_xeUtils.default.debounce(Be,350,{trailing:!0}),Me=e=>{e=e.$event;e.preventDefault(),A.triggerFocusPanel?A.triggerFocusPanel=!1:A.visiblePanel?g(e):f()},De=(e,t)=>!!t.disabled||!(!J.value||e),Ue=()=>{var e=A.scrollYLoad,{scrollYStore:t,afterVisibleList:l}=M;A.bodyHeight=e?l.length*t.rowHeight:0,A.topSpaceHeight=e?Math.max(t.startIndex*t.rowHeight,0):0},Ne=()=>{var{filterable:e,allowCreate:t}=k;let{scrollYLoad:l,searchValue:a}=A;var{optAddMaps:i,scrollYStore:o,afterVisibleList:n}=M;let u=v.value;var r=N.value,o=l?n.slice(o.startIndex,o.endIndex):n.slice(0);return e&&t&&a&&(o.some(e=>e[u]===a)||(n=i[a]||(0,_vue.reactive)({[c()]:a,[u]:a,[r]:a}),i[a]=n,o.unshift(n))),A.optList=o,(0,_vue.nextTick)()},m=()=>{Ne(),Ue()},je=()=>(0,_vue.nextTick)().then(()=>{var e=A.scrollYLoad,t=M.scrollYStore,l=q.value,a=Q.value;let i=0,o;(o=l?o||l.children[0]:o)&&(i=o.offsetHeight),i=Math.max(20,i),t.rowHeight=i,(e?(l=P.value,e=Math.max(8,l?Math.ceil(l.clientHeight/i):0),l=Math.max(0,Math.min(2,_xeUtils.default.toNumber(a.oSize))),t.offsetSize=l,t.visibleSize=e,t.endIndex=Math.max(t.startIndex,e+l,t.endIndex),m):Ue)()}),Fe=(e,t)=>{var l,a,{optFullValMaps:i,scrollYStore:o}=M,i=i[e[N.value]];i&&(e=i.key,-1<(i=i._index))&&(l=P.value,a=B.value)&&(a=a.querySelector(`[optid='${e}']`),l)&&(a?(e=l.offsetHeight,t?Math.ceil(a.offsetTop+a.offsetHeight-l.scrollTop)>=e?l.scrollTop=a.offsetTop+a.offsetHeight-e:(a.offsetTop+1<l.scrollTop||a.offsetTop+1>l.scrollTop+l.clientHeight)&&(l.scrollTop=a.offsetTop-1):a.offsetTop+1<l.scrollTop||a.offsetTop+1>l.scrollTop+l.clientHeight?l.scrollTop=a.offsetTop-1:a.offsetTop+a.offsetHeight-l.scrollTop>e&&(l.scrollTop=a.offsetTop+a.offsetHeight-e)):l.scrollTop=t?i*o.rowHeight-l.clientHeight+o.rowHeight:i*o.rowHeight)},He=(e,t)=>{var l=P.value;return l&&(_xeUtils.default.isNumber(e)&&(l.scrollLeft=e),_xeUtils.default.isNumber(t))&&(l.scrollTop=t),A.scrollYLoad?new Promise(e=>{setTimeout(()=>{(0,_vue.nextTick)(()=>{e()})},50)}):(0,_vue.nextTick)()},b=()=>{let{lastScrollLeft:e,lastScrollTop:t}=M;return o().then(()=>{if(e||t)return M.lastScrollLeft=0,M.lastScrollTop=0,He(e,t)})},x=()=>{var e=V.value;return e&&e.clientWidth&&e.clientHeight?je():Promise.resolve()},ze=e=>{var t=M.scrollYStore,{startIndex:l,endIndex:a,visibleSize:i,offsetSize:o,rowHeight:n}=t,e=e.target.scrollTop,e=Math.floor(e/n),n=Math.max(0,e-1-o),o=e+i+o;!(e<=l||a-i-1<=e)||l===n&&a===o||(t.startIndex=n,t.endIndex=o,m())},Ye=()=>{var e=M.lastScrollTime;return!!(e&&Date.now()<e+250)},Ke=e=>{var t=e.target,l=t.scrollTop,t=t.scrollLeft,a=t!==M.lastScrollLeft,i=l!==M.lastScrollTop;M.lastScrollTop=l,M.lastScrollLeft=t,A.scrollYLoad&&ze(e),M.lastScrollTime=Date.now(),s("scroll",{scrollLeft:t,scrollTop:l,isX:a,isY:i},e)},l=t=>{(e=>{let t=Z.value,l=N.value,a=c(),i={},o={},n=[],u=e=>{n.push(e);let t=z(e);t||(t=getOptUniqueId(),e[a]=t),o[e[l]]={key:t,item:e,_index:-1}};e.forEach(e=>{u(e),e[t]&&(i[e[a]]=e)[t].forEach(u)}),M.fullData=n,M.optGroupKeyMaps=i,M.optFullValMaps=o,A.reactFlag++,d()})(t||[]);var e=k.multiple,{isLoaded:l,fullData:a,scrollYStore:i}=M,o=O.value,n=Q.value;let u=N.value;if(Object.assign(i,{startIndex:0,endIndex:1,visibleSize:0}),M.synchData=t||[],A.scrollYLoad=!!n.enabled&&-1<n.gt&&(0===n.gt||n.gt<=a.length),Ne(),!l){i=o.selectMode;if(0<t.length&&_xeUtils.default.eqNull(k.modelValue)){if("all"===i)e?(0,_vue.nextTick)(()=>{se(t.map(e=>e[u]))}):(0,_log.errLog)("vxe.error.notConflictProp",["default-config.selectMode=all","multiple=true"]);else if("first"===i||"last"===i){let e=_xeUtils.default[i](t);e&&(0,_vue.nextTick)(()=>{_xeUtils.default.eqNull(k.modelValue)&&se(e[u])})}M.isLoaded=!0}}return je().then(()=>{b()})},o=()=>{var e=P.value;return e&&(e.scrollTop=0,e.scrollLeft=0),M.lastScrollTop=0,(M.lastScrollLeft=0,_vue.nextTick)()},qe=e=>{var t=M.optGroupKeyMaps;return!!t[e]};t={dispatchEvent:s,loadData:l,reloadData(e){return M.isLoaded=!1,o(),l(e)},isPanelVisible(){return A.visiblePanel},togglePanel(){return(A.visiblePanel?g:f)(),(0,_vue.nextTick)()},hidePanel(){return A.visiblePanel&&g(),(0,_vue.nextTick)()},showPanel(){return A.visiblePanel||f(),(0,_vue.nextTick)()},refreshOption(){return d(),m(),(0,_vue.nextTick)()},focus(){var e=L.value;return e&&e.blur(),A.isActivated=!0,(0,_vue.nextTick)()},blur(){var e=L.value;return e&&e.blur(),(A.isActivated=!1,_vue.nextTick)()},recalculate:x,clearScroll:o};Object.assign(D,t);let Re=(t,l,e,a)=>{var{showIcon:i,trigger:o}=le.value;return l||!1===i?(0,_ui.renderEmptyElement)(D):(i={},o&&"default"!==o||(i.onClick=e=>{a||l||Y(e,t)}),(0,_vue.h)("div",Object.assign({key:2,class:["vxe-select-option--radio",{"is--checked":e,"is--disabled":a}]},i),[(0,_vue.h)("span",{class:["vxe-radio--icon",e?(0,_ui.getIcon)().RADIO_CHECKED:(0,_ui.getIcon)().RADIO_UNCHECKED]})]))},$e=(t,l,e,a)=>{var{showIcon:i,trigger:o}=ae.value;return l||!1===i?(0,_ui.renderEmptyElement)(D):(i={},o&&"default"!==o||(i.onClick=e=>{a||l||Y(e,t)}),(0,_vue.h)("div",Object.assign({key:3,class:["vxe-select-option--checkbox",{"is--checked":e,"is--disabled":a}]},i),[(0,_vue.h)("span",{class:["vxe-checkbox--icon",e?(0,_ui.getIcon)().CHECKBOX_CHECKED:(0,_ui.getIcon)().CHECKBOX_UNCHECKED]})]))},Ge=e=>{let{allowCreate:g,optionKey:_,multiple:t,showRadio:l,showCheckbox:a}=k,h=A.currentOption,m=M.optAddMaps;var i=te.value;let b=v.value,x=N.value,C=X.value,E=F.value,T=le.value,y=ae.value,{useKey:O,height:S}=i,I=w.option,V=a&&t,L=l&&!t;return e.map((t,e)=>{var{slots:l,className:a}=t,i=z(t),o=t[x];let n=qe(i);var u=!(!g||!m[i]),r=!u&&-1<E.indexOf(o),s=u||!n||isOptionVisible(t);let c=!u&&De(r,t);var l=(l?l.default:null)||I,v={option:t,group:n?t:null,$select:D};let d="";var p=[];V?p.push($e(t,n,r,c)):L&&p.push(Re(t,n,r,c));let f=[];f=l?H(l,v):[d=(0,_utils.getFuncText)(t[n?C:b]||o)],p.push((0,_vue.h)("div",{key:1,class:"vxe-select-option--label"},f));l={onMousedown:e=>{0===e.button&&e.stopPropagation()},onMouseenter:()=>{c||n||Ye()||pe(t)}};return(V?"option"!==y.trigger:L&&"option"!==T.trigger)||(l.onClick=e=>{c||n||Y(e,t)}),s?(0,_vue.h)("div",Object.assign({key:O||_?i:e,class:["vxe-select-option",a?_xeUtils.default.isFunction(a)?a(v):a:"",{"vxe-select-optgroup":n,"is--disabled":c,"is--selected":r,"is--add":u,"is--hover":h&&z(h)===i}],optid:i,title:d||null,style:S?{height:(0,_dom.toCssUnit)(S)}:void 0},l),g?[(0,_vue.h)("div",{key:1,class:"vxe-select-option--add-label"},p),u?(0,_vue.h)("div",{key:2,class:"vxe-select-option--add-icon"},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().SELECT_ADD_OPTION})]):(0,_ui.renderEmptyElement)(D)]:p):(0,_ui.renderEmptyElement)(D)})};return(0,_vue.watch)(()=>A.staticOptions,e=>{l(e)}),(0,_vue.watch)(()=>k.options,e=>{l(e||[])}),(0,_vue.watch)(()=>k.optionGroups,e=>{l(e||[])}),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var{options:e,optionGroups:t}=k;t?l(t):e&&l(e)}),_ui.globalEvents.on(D,"mousewheel",xe),_ui.globalEvents.on(D,"mousedown",Ce),_ui.globalEvents.on(D,"keydown",Te),_ui.globalEvents.on(D,"blur",ye),_ui.globalEvents.on(D,"resize",Oe)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(D,"mousewheel"),_ui.globalEvents.off(D,"mousedown"),_ui.globalEvents.off(D,"keydown"),_ui.globalEvents.off(D,"blur"),_ui.globalEvents.off(D,"resize"),_xeUtils.default.assign(M,createInternalData())}),(0,_vue.provide)("$xeSelect",D),D.renderVN=()=>{var{className:e,multiple:t,loading:l,filterable:a,showTotalButton:i,showCheckedButton:o,showClearButton:n,showCloseButton:u}=k,{initialized:r,isActivated:s,isAniVisible:c,optList:v,visiblePanel:d,bodyHeight:p,topSpaceHeight:f}=A,g=R.value,_=U.value,h=ue.value,m=ne.value,b=G.value,x=$.value,C=W.value,E=oe.value,T=j.value,y=w.default,O=w.header,S=w.footer;let I=w.prefix;T=T.className||k.popupClassName;return x?(0,_vue.h)("div",{ref:V,class:["vxe-select--readonly",e]},[(0,_vue.h)("div",{class:"vxe-select-slots",ref:"hideOption"},y?y({}):[]),(0,_vue.h)("span",{class:"vxe-select-label",title:m},h)]):(x=F.value,(0,_vue.h)("div",{ref:V,class:["vxe-select",e?_xeUtils.default.isFunction(e)?e({$select:D}):e:"",{["size--"+g]:g,"is--visible":d,"is--disabled":_,"is--filter":a,"is--loading":l,"is--active":s}]},[(0,_vue.h)("div",{class:"vxe-select-slots",ref:"hideOption"},y?y({}):[]),(0,_vue.h)(_input.default,{ref:L,clearable:k.clearable,placeholder:C,editable:!1,disabled:_,type:"text",prefixIcon:k.prefixIcon,suffixIcon:l?(0,_ui.getIcon)().SELECT_LOADED:d?(0,_ui.getIcon)().SELECT_OPEN:(0,_ui.getIcon)().SELECT_CLOSE,autoFocus:!1,title:m,modelValue:h,onClear:_e,onClick:Ve,onFocus:Ie,onBlur:Le,onSuffixClick:ke},I?{prefix:()=>I({})}:{}),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!b||!r},[(0,_vue.h)("div",{ref:B,class:["vxe-table--ignore-clear vxe-select--panel",T?_xeUtils.default.isFunction(T)?T({$select:D}):T:"",{["size--"+g]:g,"is--transfer":b,"ani--leave":!l&&c,"ani--enter":!l&&d}],placement:A.panelPlacement,style:A.panelStyle},r&&(d||c)?[(0,_vue.h)("div",{class:"vxe-select--panel-wrapper",style:E},[a?(0,_vue.h)("div",{class:"vxe-select--panel-search"},[(0,_vue.h)(_input.default,{ref:K,class:"vxe-select-search--input",modelValue:A.searchValue,type:"text",clearable:!0,disabled:!1,readonly:!1,placeholder:(0,_ui.getI18n)("vxe.select.search"),prefixIcon:(0,_ui.getIcon)().INPUT_SEARCH,"onUpdate:modelValue":we,onFocus:Pe,onChange:Ae,onSearch:Ae})]):(0,_ui.renderEmptyElement)(D),o&&t||n||O?(0,_vue.h)("div",{class:"vxe-select--panel-header"},O?H(O,{}):[(0,_vue.h)("div",{class:"vxe-select--header-button"},[(0,_vue.h)("div",{class:"vxe-select--header-btns"},[o&&t?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.select.allChecked"),mode:"text",onClick:he}):(0,_ui.renderEmptyElement)(D),n?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.select.clear"),mode:"text",onClick:me}):(0,_ui.renderEmptyElement)(D)])])]):(0,_ui.renderEmptyElement)(D),(0,_vue.h)("div",{class:"vxe-select--panel-body"},[(0,_vue.h)("div",{ref:P,class:"vxe-select-option--wrapper",onScroll:Ke},[(0,_vue.h)("div",{class:"vxe-select--y-space",style:{height:p?p+"px":""}}),(0,_vue.h)("div",{ref:q,class:"vxe-select--body",style:{marginTop:f+"px"}},(()=>{var{optList:e,searchLoading:t}=A;return t?[(0,_vue.h)("div",{class:"vxe-select--search-loading"},[(0,_vue.h)("i",{class:["vxe-select--search-icon",(0,_ui.getIcon)().SELECT_LOADED]}),(0,_vue.h)("span",{class:"vxe-select--search-text"},(0,_ui.getI18n)("vxe.select.loadingText"))])]:e.length?Ge(e):[(0,_vue.h)("div",{class:"vxe-select--empty-placeholder"},k.emptyText||(0,_ui.getI18n)("vxe.select.emptyText"))]})())])]),S||i||u&&t?(0,_vue.h)("div",{class:"vxe-select--panel-footer"},S?H(S,{}):[(0,_vue.h)("div",{class:"vxe-select--footer-button"},[i?(0,_vue.h)("div",{class:"vxe-select--total-btns"},(0,_ui.getI18n)("vxe.select.total",[x.length,v.length])):(0,_ui.renderEmptyElement)(D),u&&t?(0,_vue.h)("div",{class:"vxe-select--oper-btns"},[(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.select.close"),mode:"text",onClick:be})]):(0,_ui.renderEmptyElement)(D)])]):(0,_ui.renderEmptyElement)(D)])]:[])])]))},D},render(){return this.renderVN()}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_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}}let errLog=(0,_log.createComponentLog)("select").errLog;function isOptionVisible(e){return!1!==e.visible}function getOptUniqueId(){return _xeUtils.default.uniqueId("opt_")}function createReactData(){return{initialized:!1,scrollYLoad:!1,bodyHeight:0,topSpaceHeight:0,optList:[],staticOptions:[],reactFlag:0,currentOption:null,searchValue:"",searchLoading:!1,panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1}}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 _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeSelect",props:{modelValue:[String,Number,Boolean,Array],defaultConfig:Object,clearable:{type:Boolean,default:()=>(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:()=>(0,_ui.getConfig)().select.multiCharOverflow},prefixIcon:String,allowCreate:{type:Boolean,default:()=>(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:()=>(0,_ui.getConfig)().select.showRadio},radioConfig:Object,showCheckbox:{type:Boolean,default:()=>(0,_ui.getConfig)().select.showCheckedButton},checkboxConfig:Object,zIndex:Number,size:{type:String,default:()=>(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:()=>(0,_ui.getConfig)().select.checkedClosable},clearClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().select.clearClosable},showCloseButton:{type:Boolean,default:()=>(0,_ui.getConfig)().select.showCloseButton},showTotalButton:{type:Boolean,default:()=>(0,_ui.getConfig)().select.showTotalButton},showCheckedButton:{type:Boolean,default:()=>(0,_ui.getConfig)().select.showCheckedButton},showClearButton:{type:Boolean,default:()=>(0,_ui.getConfig)().select.showClearButton},transfer:{type:Boolean,default:null},popupConfig:Object,virtualYConfig:Object,scrollY:Object,remoteMethod:Function,optionId:{type:String,default:()=>(0,_ui.getConfig)().select.optionId},optionKey:Boolean},emits:["update:modelValue","change","default-change","all-change","clear","blur","focus","click","scroll","visible-change"],setup(k,e){let{slots:w,emit:a}=e,n=(0,_vue.inject)("$xeModal",null),C=(0,_vue.inject)("$xeDrawer",null),E=(0,_vue.inject)("$xeTable",null),i=(0,_vue.inject)("$xeForm",null),T=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let V=(0,_vue.ref)(),L=(0,_vue.ref)(),K=(0,_vue.ref)(),P=(0,_vue.ref)(),B=(0,_vue.ref)(),q=(0,_vue.ref)(),R=(0,_ui.useSize)(k).computeSize,A=(0,_vue.reactive)(createReactData()),M=createInternalData(),y={refElem:V},D={xID:t,props:k,context:e,reactData:A,internalData:M,getRefMaps:()=>y},$=(0,_vue.computed)(()=>{var e=k.readonly;return null===e?!!i&&i.props.readonly:e}),U=(0,_vue.computed)(()=>{var e=k.disabled;return null===e?!!i&&i.props.disabled:e}),G=(0,_vue.computed)(()=>{var e=k.transfer,t=j.value;if(_xeUtils.default.isBoolean(t.transfer))return t.transfer;if(null===e){t=(0,_ui.getConfig)().select.transfer;if(_xeUtils.default.isBoolean(t))return t;if(E||n||C||i)return!0}return e}),W=(0,_vue.computed)(()=>{var e=k.placeholder;return(e=e||(0,_ui.getConfig)().select.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")}),O=(0,_vue.computed)(()=>Object.assign({},k.defaultConfig)),S=(0,_vue.computed)(()=>Object.assign({},k.optionProps)),I=(0,_vue.computed)(()=>Object.assign({},k.optionGroupProps)),v=(0,_vue.computed)(()=>S.value.label||"label"),N=(0,_vue.computed)(()=>S.value.value||"value"),X=(0,_vue.computed)(()=>I.value.label||"label"),Z=(0,_vue.computed)(()=>I.value.options||"options"),J=(0,_vue.computed)(()=>{var e=F.value;return ce(e)}),j=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.popupConfig,k.popupConfig)),Q=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.virtualYConfig||(0,_ui.getConfig)().select.scrollY,k.virtualYConfig||k.scrollY)),r=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.remoteConfig,k.remoteConfig)),ee=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.filterConfig,k.filterConfig)),te=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.optionConfig,k.optionConfig)),le=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.radioConfig,k.radioConfig)),ae=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().select.checkboxConfig,k.checkboxConfig)),ie=(0,_vue.computed)(()=>_xeUtils.default.toNumber(k.multiCharOverflow)),oe=(0,_vue.computed)(()=>{var{height:e,width:t}=j.value,l={};return t&&(l.width=(0,_dom.toCssUnit)(t)),e&&(l.height=(0,_dom.toCssUnit)(e),l.maxHeight=(0,_dom.toCssUnit)(e)),l}),F=(0,_vue.computed)(()=>{var{modelValue:e,multiple:t}=k;let l=[];return _xeUtils.default.isArray(e)?l=e:t?(0,_utils.eqEmptyValue)(e)||(l=-1<(""+e).indexOf(",")?(""+e).split(","):[e]):l=null==e?[]:[e],l}),ne=(0,_vue.computed)(()=>{var e=k.remote,t=A.reactFlag,l=F.value;return(e&&t?l.map(e=>ve(e)):l.map(e=>de(e))).join(", ")}),ue=(0,_vue.computed)(()=>{var{remote:e,multiple:t}=k,l=A.reactFlag,a=ie.value,i=F.value;return e&&l?i.map(e=>ve(e)).join(", "):(e=i.map(e=>de(e)),t&&0<a&&e.length>a?e.slice(0,a)+"...":e.join(", "))}),H=(e,t)=>e&&(_xeUtils.default.isString(e)&&(e=w[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[],s=(e,t,l)=>{a(e,(0,_ui.createEvent)(l,{$select:D},t))},re=e=>{a("update:modelValue",e)},se=e=>{re(e),s("default-change",{value:e},null)},c=()=>te.value.keyField||k.optionId||"_X_OPTION_KEY",z=e=>{e=e[c()];return e?encodeURIComponent(e):""},ce=e=>{var{multiple:t,max:l}=k;return!(!t||!l)&&e.length>=_xeUtils.default.toNumber(l)},ve=t=>{var e=k.lazyOptions,{remoteValMaps:l,optFullValMaps:a}=M;let i=N.value;var o=v.value,l=l[t]||a[t],a=l?l.item:null;if(a)return _xeUtils.default.toValueString(a[o]);if(e){l=e.find(e=>e[i]===t);if(l)return l[o]}return t},de=t=>{var e=k.lazyOptions,l=M.optFullValMaps;let a=N.value;var i=v.value,l=A.reactFlag?l[t]:null;if(l)return l.item[i];if(e){l=e.find(e=>e[a]===t);if(l)return l[i]}return t},d=()=>{let{remote:e,modelValue:t,filterable:l}=k,a=A.searchValue,{fullData:i,optFullValMaps:o}=M,n=v.value,u=N.value;let r=ee.value.filterMethod||k.filterMethod,s=(""+(a||"")).toLowerCase(),c=[];return(c=e?i.filter(isOptionVisible):l&&r?i.filter(e=>isOptionVisible(e)&&r({$select:D,group:null,option:e,searchValue:a,value:t})):l?i.filter(e=>isOptionVisible(e)&&(!s||-1<(""+(e[n]||e[u])).toLowerCase().indexOf(s))):i.filter(isOptionVisible)).forEach((e,t)=>{e=o[e[u]];e&&(e._index=t)}),M.afterVisibleList=c,(0,_vue.nextTick)()},pe=e=>{e&&(A.currentOption=e)},fe=()=>{var e=j.value.zIndex||k.zIndex;e?A.panelIndex=_xeUtils.default.toNumber(e):A.panelIndex<(0,_utils.getLastZIndex)()&&(A.panelIndex=(0,_utils.nextZIndex)())},p=()=>{let l=k.placement,a=A.panelIndex,i=V.value,o=B.value,n=G.value,u=j.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(i,o,{placement:u.placement||l,defaultPlacement:u.defaultPlacement,teleportTo:n}),t=Object.assign(e.style,{zIndex:a});A.panelStyle=t,A.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},ge=()=>{(0,_vue.nextTick)(()=>{var{isAniVisible:e,visiblePanel:t}=A,l=M.optFullValMaps,a=F.value;a.length&&e&&t&&(e=A.reactFlag?l[""+a[0]]:null)&&(A.currentOption=e.item,Fe(e.item))})},f=()=>{var{loading:e,filterable:t,remote:l}=k,{fullData:a,hpTimeout:i}=M,o=U.value,n=r.value;let u=F.value;e||o||(i&&(clearTimeout(i),M.hpTimeout=void 0),A.initialized||(A.initialized=!0),A.isActivated=!0,A.isAniVisible=!0,t&&(l&&n.enabled&&(n.autoLoad&&!a.length||a.length&&n.clearOnClose)?Be:(d(),m))(),setTimeout(()=>{A.visiblePanel=!0,Se(),x().then(()=>{(u&&u.length?ge:b)()}),p()},10),setTimeout(()=>{x().then(()=>b())},100),fe(),p(),s("visible-change",{visible:!0},null))},g=e=>{var{filterable:t,remote:l}=k,a=ee.value,i=r.value;l?i.clearOnClose&&(A.searchValue=""):t&&!a.clearOnClose||(A.searchValue=""),A.searchLoading=!1,A.visiblePanel=!1,M.hpTimeout=setTimeout(()=>{A.isAniVisible=!1},350),s("visible-change",{visible:!1},e||null)},u=(e,t,l)=>{re(t),t!==k.modelValue&&(s("change",{value:t,option:l},e),i)&&T&&i.triggerItemEvent(e,T.itemConfig.field,t)},_=(e,t)=>{M.remoteValMaps={},u(e,t,null),s("clear",{value:t},e)},_e=e=>{e=e.$event;_(e,null),g(e)},he=e=>{var e=e.$event,{multiple:t,max:l,checkedClosable:a}=k,i=A.optList,o=N.value;if(t){var n=F.value.slice(0);for(let e=0;e<i.length;e++){let t=i[e][o];if(ce(n)){_ui.VxeUI&&_ui.VxeUI.modal.message({content:(0,_ui.getI18n)("vxe.select.overSizeErr",[l]),status:"warning"});break}n.some(e=>e===t)||n.push(t)}u(e,n,i[0]),a&&g(e),s("all-change",{value:n},e)}},me=e=>{var t=k.clearClosable,e=e.$event;_(e,null),t&&g(e)},be=e=>{e=e.$event;g(e)},Y=(t,l)=>{var e=k.multiple,a=M.remoteValMaps;let i=l[N.value];var o=a[i];if(A.visiblePanel){if(o?o.item=l:a[i]={key:z(l),item:l,_index:-1},e){let e=[];o=F.value,a=_xeUtils.default.findIndexOf(o,e=>e===i);e=-1===a?o.concat([i]):o.filter(e=>e!==i),u(t,e,l)}else u(t,i,l),g(t);A.reactFlag++}},xe=e=>{var t=A.visiblePanel;U.value||t&&(t=B.value,(0,_dom.getEventTargetNode)(e,t).flag?p():g(e))},Ce=e=>{var t,l=A.visiblePanel,a=U.value,i=j.value.trigger;a||(a=V.value,t=B.value,A.isActivated=(0,_dom.getEventTargetNode)(e,a).flag||(0,_dom.getEventTargetNode)(e,t).flag,l&&!A.isActivated&&"manual"!==i&&g(e))},h=e=>{var t=e.disabled,e=z(e);return!t&&!qe(e)},Ee=(e,t)=>{var l=k.allowCreate,a=A.optList,{optFullValMaps:i,optAddMaps:o,afterVisibleList:n}=M,u=N.value;let r=n,s=0;if(l&&a.length&&(n=a[0],o[l=z(n)])&&(s=1,r=[o[l]].concat(r)),!e)if(t)for(let e=0;e<r.length;e++){var c=r[e];if(h(c))return c}else for(let e=r.length-1;0<=e;e--){var v=r[e];if(h(v))return v}let d=0;a=e?i[e[u]]:null;if(-1<(d=a?a._index+s:d))if(t)for(let e=d+1;e<=r.length-1;e++){var p=r[e];if(h(p))return p}else if(0<d)for(let e=d-1;0<=e;e--){var f=r[e];if(h(f))return f}return null},Te=t=>{var e=k.clearable,{visiblePanel:l,currentOption:a}=A,i=U.value,o=j.value.trigger;if(!i){var i=_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.TAB),n=_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.ENTER),u=_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.ESCAPE),r=_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.ARROW_UP),s=_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN),c=_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.DELETE);if(i&&(A.isActivated=!1),l){if(u||i)"manual"!==o&&g(t);else if(n)a&&(t.preventDefault(),t.stopPropagation(),Y(t,a));else if(r||s){t.preventDefault();let e=Ee(a,s);(e=e||Ee(null,s))&&(pe(e),Fe(e,s))}}else(r||s||n)&&A.isActivated&&(t.preventDefault(),f());A.isActivated&&c&&e&&_(t,null)}},ye=e=>{var{visiblePanel:t,isActivated:l}=A,a=j.value.trigger;t&&"manual"!==a&&g(e),l&&(A.isActivated=!1),(t||l)&&(a=L.value)&&a.blur()},Oe=()=>{var e=A.visiblePanel;e&&p()},Se=()=>{k.filterable&&(0,_vue.nextTick)(()=>{var e=K.value;e&&e.focus()})},Ie=e=>{var t=U.value,l=j.value.trigger;t||A.visiblePanel||l&&"default"!==l||(A.triggerFocusPanel=!0,f(),setTimeout(()=>{A.triggerFocusPanel=!1},500)),s("focus",{},e)},Ve=e=>{var t=j.value.trigger;t&&"default"!==t||Me(e),s("click",{triggerButton:!1,visible:A.visiblePanel},e)},Le=e=>{A.isActivated=!1,s("blur",{},e)},ke=e=>{var t=j.value.trigger;t&&"default"!==t&&"icon"!==t||Me(e),s("click",{triggerButton:!0,visible:A.visiblePanel},e)},we=e=>{A.searchValue=e},Pe=()=>{A.isActivated=!0},Be=()=>{var{modelValue:e,remote:t}=k,l=A.searchValue,a=r.value,i=a.queryMethod||k.remoteMethod;t&&i&&a.enabled?(A.searchLoading=!0,Promise.resolve(i({$select:D,searchValue:l,value:e})).then(()=>(0,_vue.nextTick)()).catch(()=>(0,_vue.nextTick)()).finally(()=>{A.searchLoading=!1,d(),m()})):(d(),m())},Ae=_xeUtils.default.debounce(Be,350,{trailing:!0}),Me=e=>{e=e.$event;e.preventDefault(),A.triggerFocusPanel?A.triggerFocusPanel=!1:A.visiblePanel?g(e):f()},De=(e,t)=>!!t.disabled||!(!J.value||e),Ue=()=>{var e=A.scrollYLoad,{scrollYStore:t,afterVisibleList:l}=M;A.bodyHeight=e?l.length*t.rowHeight:0,A.topSpaceHeight=e?Math.max(t.startIndex*t.rowHeight,0):0},Ne=()=>{var{filterable:e,allowCreate:t}=k;let{scrollYLoad:l,searchValue:a}=A;var{optAddMaps:i,scrollYStore:o,afterVisibleList:n}=M;let u=v.value;var r=N.value,o=l?n.slice(o.startIndex,o.endIndex):n.slice(0);return e&&t&&a&&(o.some(e=>e[u]===a)||(n=i[a]||(0,_vue.reactive)({[c()]:a,[u]:a,[r]:a}),i[a]=n,o.unshift(n))),A.optList=o,(0,_vue.nextTick)()},m=()=>{Ne(),Ue()},je=()=>(0,_vue.nextTick)().then(()=>{var e=A.scrollYLoad,t=M.scrollYStore,l=q.value,a=Q.value;let i=0,o;(o=l?o||l.children[0]:o)&&(i=o.offsetHeight),i=Math.max(20,i),t.rowHeight=i,(e?(l=P.value,e=Math.max(8,l?Math.ceil(l.clientHeight/i):0),l=Math.max(0,Math.min(2,_xeUtils.default.toNumber(a.oSize))),t.offsetSize=l,t.visibleSize=e,t.endIndex=Math.max(t.startIndex,e+l,t.endIndex),m):Ue)()}),Fe=(e,t)=>{var l,a,{optFullValMaps:i,scrollYStore:o}=M,i=i[e[N.value]];i&&(e=i.key,-1<(i=i._index))&&(l=P.value,a=B.value)&&(a=a.querySelector(`[optid='${e}']`),l)&&(a?(e=l.offsetHeight,t?Math.ceil(a.offsetTop+a.offsetHeight-l.scrollTop)>=e?l.scrollTop=a.offsetTop+a.offsetHeight-e:(a.offsetTop+1<l.scrollTop||a.offsetTop+1>l.scrollTop+l.clientHeight)&&(l.scrollTop=a.offsetTop-1):a.offsetTop+1<l.scrollTop||a.offsetTop+1>l.scrollTop+l.clientHeight?l.scrollTop=a.offsetTop-1:a.offsetTop+a.offsetHeight-l.scrollTop>e&&(l.scrollTop=a.offsetTop+a.offsetHeight-e)):l.scrollTop=t?i*o.rowHeight-l.clientHeight+o.rowHeight:i*o.rowHeight)},He=(e,t)=>{var l=P.value;return l&&(_xeUtils.default.isNumber(e)&&(l.scrollLeft=e),_xeUtils.default.isNumber(t))&&(l.scrollTop=t),A.scrollYLoad?new Promise(e=>{setTimeout(()=>{(0,_vue.nextTick)(()=>{e()})},50)}):(0,_vue.nextTick)()},b=()=>{let{lastScrollLeft:e,lastScrollTop:t}=M;return o().then(()=>{if(e||t)return M.lastScrollLeft=0,M.lastScrollTop=0,He(e,t)})},x=()=>{var e=V.value;return e&&e.clientWidth&&e.clientHeight?je():Promise.resolve()},ze=e=>{var t=M.scrollYStore,{startIndex:l,endIndex:a,visibleSize:i,offsetSize:o,rowHeight:n}=t,e=e.target.scrollTop,e=Math.floor(e/n),n=Math.max(0,e-1-o),o=e+i+o;!(e<=l||a-i-1<=e)||l===n&&a===o||(t.startIndex=n,t.endIndex=o,m())},Ye=()=>{var e=M.lastScrollTime;return!!(e&&Date.now()<e+250)},Ke=e=>{var t=e.target,l=t.scrollTop,t=t.scrollLeft,a=t!==M.lastScrollLeft,i=l!==M.lastScrollTop;M.lastScrollTop=l,M.lastScrollLeft=t,A.scrollYLoad&&ze(e),M.lastScrollTime=Date.now(),s("scroll",{scrollLeft:t,scrollTop:l,isX:a,isY:i},e)},l=t=>{(e=>{let t=Z.value,l=N.value,a=c(),i={},o={},n=[],u=e=>{n.push(e);let t=z(e);t||(t=getOptUniqueId(),e[a]=t),o[e[l]]={key:t,item:e,_index:-1}};e.forEach(e=>{u(e),e[t]&&(i[e[a]]=e)[t].forEach(u)}),M.fullData=n,M.optGroupKeyMaps=i,M.optFullValMaps=o,A.reactFlag++,d()})(t||[]);var e=k.multiple,{isLoaded:l,fullData:a,scrollYStore:i}=M,o=O.value,n=Q.value;let u=N.value;if(Object.assign(i,{startIndex:0,endIndex:1,visibleSize:0}),M.synchData=t||[],A.scrollYLoad=!!n.enabled&&-1<n.gt&&(0===n.gt||n.gt<=a.length),Ne(),!l){i=o.selectMode;if(0<t.length&&_xeUtils.default.eqNull(k.modelValue)){if("all"===i)e?(0,_vue.nextTick)(()=>{se(t.map(e=>e[u]))}):errLog("vxe.error.notConflictProp",["default-config.selectMode=all","multiple=true"]);else if("first"===i||"last"===i){let e=_xeUtils.default[i](t);e&&(0,_vue.nextTick)(()=>{_xeUtils.default.eqNull(k.modelValue)&&se(e[u])})}M.isLoaded=!0}}return je().then(()=>{b()})},o=()=>{var e=P.value;return e&&(e.scrollTop=0,e.scrollLeft=0),M.lastScrollTop=0,(M.lastScrollLeft=0,_vue.nextTick)()},qe=e=>{var t=M.optGroupKeyMaps;return!!t[e]};t={dispatchEvent:s,loadData:l,reloadData(e){return M.isLoaded=!1,o(),l(e)},isPanelVisible(){return A.visiblePanel},togglePanel(){return(A.visiblePanel?g:f)(),(0,_vue.nextTick)()},hidePanel(){return A.visiblePanel&&g(),(0,_vue.nextTick)()},showPanel(){return A.visiblePanel||f(),(0,_vue.nextTick)()},refreshOption(){return d(),m(),(0,_vue.nextTick)()},focus(){var e=L.value;return e&&e.blur(),A.isActivated=!0,(0,_vue.nextTick)()},blur(){var e=L.value;return e&&e.blur(),(A.isActivated=!1,_vue.nextTick)()},recalculate:x,clearScroll:o};Object.assign(D,t);let Re=(t,l,e,a)=>{var{showIcon:i,trigger:o}=le.value;return l||!1===i?(0,_ui.renderEmptyElement)(D):(i={},o&&"default"!==o||(i.onClick=e=>{a||l||Y(e,t)}),(0,_vue.h)("div",Object.assign({key:2,class:["vxe-select-option--radio",{"is--checked":e,"is--disabled":a}]},i),[(0,_vue.h)("span",{class:["vxe-radio--icon",e?(0,_ui.getIcon)().RADIO_CHECKED:(0,_ui.getIcon)().RADIO_UNCHECKED]})]))},$e=(t,l,e,a)=>{var{showIcon:i,trigger:o}=ae.value;return l||!1===i?(0,_ui.renderEmptyElement)(D):(i={},o&&"default"!==o||(i.onClick=e=>{a||l||Y(e,t)}),(0,_vue.h)("div",Object.assign({key:3,class:["vxe-select-option--checkbox",{"is--checked":e,"is--disabled":a}]},i),[(0,_vue.h)("span",{class:["vxe-checkbox--icon",e?(0,_ui.getIcon)().CHECKBOX_CHECKED:(0,_ui.getIcon)().CHECKBOX_UNCHECKED]})]))},Ge=e=>{let{allowCreate:g,optionKey:_,multiple:t,showRadio:l,showCheckbox:a}=k,h=A.currentOption,m=M.optAddMaps;var i=te.value;let b=v.value,x=N.value,C=X.value,E=F.value,T=le.value,y=ae.value,{useKey:O,height:S}=i,I=w.option,V=a&&t,L=l&&!t;return e.map((t,e)=>{var{slots:l,className:a}=t,i=z(t),o=t[x];let n=qe(i);var u=!(!g||!m[i]),r=!u&&-1<E.indexOf(o),s=u||!n||isOptionVisible(t);let c=!u&&De(r,t);var l=(l?l.default:null)||I,v={option:t,group:n?t:null,$select:D};let d="";var p=[];V?p.push($e(t,n,r,c)):L&&p.push(Re(t,n,r,c));let f=[];f=l?H(l,v):[d=(0,_utils.getFuncText)(t[n?C:b]||o)],p.push((0,_vue.h)("div",{key:1,class:"vxe-select-option--label"},f));l={onMousedown:e=>{0===e.button&&e.stopPropagation()},onMouseenter:()=>{c||n||Ye()||pe(t)}};return(V?"option"!==y.trigger:L&&"option"!==T.trigger)||(l.onClick=e=>{c||n||Y(e,t)}),s?(0,_vue.h)("div",Object.assign({key:O||_?i:e,class:["vxe-select-option",a?_xeUtils.default.isFunction(a)?a(v):a:"",{"vxe-select-optgroup":n,"is--disabled":c,"is--selected":r,"is--add":u,"is--hover":h&&z(h)===i}],optid:i,title:d||null,style:S?{height:(0,_dom.toCssUnit)(S)}:void 0},l),g?[(0,_vue.h)("div",{key:1,class:"vxe-select-option--add-label"},p),u?(0,_vue.h)("div",{key:2,class:"vxe-select-option--add-icon"},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().SELECT_ADD_OPTION})]):(0,_ui.renderEmptyElement)(D)]:p):(0,_ui.renderEmptyElement)(D)})};return(0,_vue.watch)(()=>A.staticOptions,e=>{l(e)}),(0,_vue.watch)(()=>k.options,e=>{l(e||[])}),(0,_vue.watch)(()=>k.optionGroups,e=>{l(e||[])}),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var{options:e,optionGroups:t}=k;t?l(t):e&&l(e)}),_ui.globalEvents.on(D,"mousewheel",xe),_ui.globalEvents.on(D,"mousedown",Ce),_ui.globalEvents.on(D,"keydown",Te),_ui.globalEvents.on(D,"blur",ye),_ui.globalEvents.on(D,"resize",Oe)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(D,"mousewheel"),_ui.globalEvents.off(D,"mousedown"),_ui.globalEvents.off(D,"keydown"),_ui.globalEvents.off(D,"blur"),_ui.globalEvents.off(D,"resize"),_xeUtils.default.assign(A,createReactData()),_xeUtils.default.assign(M,createInternalData())}),(0,_vue.provide)("$xeSelect",D),D.renderVN=()=>{var{className:e,multiple:t,loading:l,filterable:a,showTotalButton:i,showCheckedButton:o,showClearButton:n,showCloseButton:u}=k,{initialized:r,isActivated:s,isAniVisible:c,optList:v,visiblePanel:d,bodyHeight:p,topSpaceHeight:f}=A,g=R.value,_=U.value,h=ue.value,m=ne.value,b=G.value,x=$.value,C=W.value,E=oe.value,T=j.value,y=w.default,O=w.header,S=w.footer;let I=w.prefix;T=T.className||k.popupClassName;return x?(0,_vue.h)("div",{ref:V,class:["vxe-select--readonly",e]},[(0,_vue.h)("div",{class:"vxe-select-slots",ref:"hideOption"},y?y({}):[]),(0,_vue.h)("span",{class:"vxe-select-label",title:m},h)]):(x=F.value,(0,_vue.h)("div",{ref:V,class:["vxe-select",e?_xeUtils.default.isFunction(e)?e({$select:D}):e:"",{["size--"+g]:g,"is--visible":d,"is--disabled":_,"is--filter":a,"is--loading":l,"is--active":s}]},[(0,_vue.h)("div",{class:"vxe-select-slots",ref:"hideOption"},y?y({}):[]),(0,_vue.h)(_input.default,{ref:L,clearable:k.clearable,placeholder:C,editable:!1,disabled:_,type:"text",prefixIcon:k.prefixIcon,suffixIcon:l?(0,_ui.getIcon)().SELECT_LOADED:d?(0,_ui.getIcon)().SELECT_OPEN:(0,_ui.getIcon)().SELECT_CLOSE,autoFocus:!1,title:m,modelValue:h,onClear:_e,onClick:Ve,onFocus:Ie,onBlur:Le,onSuffixClick:ke},I?{prefix:()=>I({})}:{}),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!b||!r},[(0,_vue.h)("div",{ref:B,class:["vxe-table--ignore-clear vxe-select--panel",T?_xeUtils.default.isFunction(T)?T({$select:D}):T:"",{["size--"+g]:g,"is--transfer":b,"ani--leave":!l&&c,"ani--enter":!l&&d}],placement:A.panelPlacement,style:A.panelStyle},r&&(d||c)?[(0,_vue.h)("div",{class:"vxe-select--panel-wrapper",style:E},[a?(0,_vue.h)("div",{class:"vxe-select--panel-search"},[(0,_vue.h)(_input.default,{ref:K,class:"vxe-select-search--input",modelValue:A.searchValue,type:"text",clearable:!0,disabled:!1,readonly:!1,placeholder:(0,_ui.getI18n)("vxe.select.search"),prefixIcon:(0,_ui.getIcon)().INPUT_SEARCH,"onUpdate:modelValue":we,onFocus:Pe,onChange:Ae,onSearch:Ae})]):(0,_ui.renderEmptyElement)(D),o&&t||n||O?(0,_vue.h)("div",{class:"vxe-select--panel-header"},O?H(O,{}):[(0,_vue.h)("div",{class:"vxe-select--header-button"},[(0,_vue.h)("div",{class:"vxe-select--header-btns"},[o&&t?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.select.allChecked"),mode:"text",onClick:he}):(0,_ui.renderEmptyElement)(D),n?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.select.clear"),mode:"text",onClick:me}):(0,_ui.renderEmptyElement)(D)])])]):(0,_ui.renderEmptyElement)(D),(0,_vue.h)("div",{class:"vxe-select--panel-body"},[(0,_vue.h)("div",{ref:P,class:"vxe-select-option--wrapper",onScroll:Ke},[(0,_vue.h)("div",{class:"vxe-select--y-space",style:{height:p?p+"px":""}}),(0,_vue.h)("div",{ref:q,class:"vxe-select--body",style:{marginTop:f+"px"}},(()=>{var{optList:e,searchLoading:t}=A;return t?[(0,_vue.h)("div",{class:"vxe-select--search-loading"},[(0,_vue.h)("i",{class:["vxe-select--search-icon",(0,_ui.getIcon)().SELECT_LOADED]}),(0,_vue.h)("span",{class:"vxe-select--search-text"},(0,_ui.getI18n)("vxe.select.loadingText"))])]:e.length?Ge(e):[(0,_vue.h)("div",{class:"vxe-select--empty-placeholder"},k.emptyText||(0,_ui.getI18n)("vxe.select.emptyText"))]})())])]),S||i||u&&t?(0,_vue.h)("div",{class:"vxe-select--panel-footer"},S?H(S,{}):[(0,_vue.h)("div",{class:"vxe-select--footer-button"},[i?(0,_vue.h)("div",{class:"vxe-select--total-btns"},(0,_ui.getI18n)("vxe.select.total",[x.length,v.length])):(0,_ui.renderEmptyElement)(D),u&&t?(0,_vue.h)("div",{class:"vxe-select--oper-btns"},[(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.select.close"),mode:"text",onClick:be})]):(0,_ui.renderEmptyElement)(D)])]):(0,_ui.renderEmptyElement)(D)])]:[])])]))},D},render(){return this.renderVN()}});
@@ -13,6 +13,10 @@ var _utils = require("../../ui/src/utils");
13
13
  var _log = require("../../ui/src/log");
14
14
  var _xeUtils = _interopRequireDefault(require("xe-utils"));
15
15
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
+ const {
17
+ warnLog,
18
+ errLog
19
+ } = (0, _log.createComponentLog)('splitter');
16
20
  var _default = exports.default = (0, _comp.defineVxeComponent)({
17
21
  name: 'VxeSplitter',
18
22
  props: {
@@ -233,13 +237,13 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
233
237
  };
234
238
  reactData.itemList = list.map(item => {
235
239
  if (item.showAction) {
236
- (0, _log.warnLog)('vxe.error.removeProp', ['[splitter] show-action']);
240
+ warnLog('vxe.error.removeProp', ['show-action']);
237
241
  }
238
242
  if (item.slots) {
239
243
  _xeUtils.default.each(item.slots, func => {
240
244
  if (!_xeUtils.default.isFunction(func)) {
241
245
  if (!slots[func]) {
242
- (0, _log.errLog)('vxe.error.notSlot', [`[splitter] ${func}`]);
246
+ errLog('vxe.error.notSlot', [func]);
243
247
  }
244
248
  }
245
249
  });
@@ -249,10 +253,10 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
249
253
  });
250
254
  });
251
255
  if (staticItems.length) {
252
- (0, _log.errLog)('vxe.error.errConflicts', ['<vxe-splitter-panel ...>', 'items']);
256
+ errLog('vxe.error.errConflicts', ['<vxe-splitter-panel ...>', 'items']);
253
257
  }
254
258
  if ((showPrevButton || showNextButton) && reactData.itemList.length > 2) {
255
- (0, _log.errLog)('vxe.error.errConflicts', ['action-config.showPrevButton | action-config.showNextButton', 'Only supports 2 item']);
259
+ errLog('vxe.error.errConflicts', ['action-config.showPrevButton | action-config.showNextButton', 'Only supports 2 item']);
256
260
  }
257
261
  return recalculate();
258
262
  };
@@ -992,15 +996,15 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
992
996
  showNextButton
993
997
  } = actionOpts;
994
998
  if (props.items && props.items.length) {
995
- (0, _log.errLog)('vxe.error.errConflicts', ['<vxe-splitter-panel ...>', 'items']);
999
+ errLog('vxe.error.errConflicts', ['<vxe-splitter-panel ...>', 'items']);
996
1000
  }
997
1001
  reactData.itemList = val || [];
998
1002
  if ((showPrevButton || showNextButton) && reactData.itemList.length > 2) {
999
- (0, _log.errLog)('vxe.error.modelConflicts', ['[splitter] action-config.showPrevButton | action-config.showNextButton', '<vxe-splitter-panel ...> Only supports 2 panel']);
1003
+ errLog('vxe.error.modelConflicts', ['action-config.showPrevButton | action-config.showNextButton', '<vxe-splitter-panel ...> Only supports 2 panel']);
1000
1004
  }
1001
1005
  reactData.itemList.forEach(item => {
1002
1006
  if (item.showAction) {
1003
- (0, _log.warnLog)('vxe.error.removeProp', ['[splitter] showAction']);
1007
+ warnLog('vxe.error.removeProp', ['showAction']);
1004
1008
  }
1005
1009
  });
1006
1010
  recalculate();
@@ -1019,7 +1023,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1019
1023
  }
1020
1024
  const actionOpts = computeActionOpts.value;
1021
1025
  if (actionOpts.direction) {
1022
- (0, _log.errLog)('vxe.error.delProp', ['[splitter] action-config.direction', 'action-config.showPrevButton | action-config.showNextButton']);
1026
+ errLog('vxe.error.delProp', ['action-config.direction', 'action-config.showPrevButton | action-config.showNextButton']);
1023
1027
  }
1024
1028
  _ui.globalEvents.on($xeSplitter, 'resize', handleGlobalResizeEvent);
1025
1029
  });
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_ui=require("../../ui"),_vn=require("../../ui/src/vn"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeSplitter",props:{width:[Number,String],height:[Number,String],vertical:{type:Boolean,default:()=>(0,_ui.getConfig)().splitter.vertical},border:{type:Boolean,default:()=>(0,_ui.getConfig)().splitter.border},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().splitter.padding},resize:{type:Boolean,default:()=>(0,_ui.getConfig)().splitter.resize},items:Array,itemConfig:Object,barConfig:Object,resizeConfig:Object,actionConfig:Object,size:{type:String,default:()=>(0,_ui.getConfig)().splitter.size||(0,_ui.getConfig)().size}},emits:["action-dblclick","action-click","toggle-expand","resize-start","resize-drag","resize-end"],setup(u,e){let{emit:l,slots:a}=e;var t=_xeUtils.default.uniqueId();let h=(0,_vue.ref)(),p=(0,_vue.ref)(),O=(0,_vue.ref)(),d=(0,_ui.useSize)(u).computeSize,A=(0,_vue.reactive)({staticItems:[],itemList:[],barWidth:0,barHeight:0,resizeFlag:0}),g={wrapperWidth:0,wrapperHeight:0},M=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().splitter.itemConfig,u.itemConfig)),r=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().splitter.barConfig,u.barConfig)),P=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().splitter.resizeConfig,u.resizeConfig)),v=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().splitter.actionConfig,u.actionConfig)),m=(0,_vue.computed)(()=>A.itemList.filter(e=>e.isExpand)),H=(0,_vue.computed)(()=>{var e=u.vertical;let n=[],o=0,a=0;return A.itemList.forEach(e?e=>{var{renderHeight:t,resizeHeight:i,foldHeight:l,isExpand:r,height:s}=e,r=r?l||i||t:0;s||n.push(e),o+=r}:e=>{var{renderWidth:t,resizeWidth:i,foldWidth:l,isExpand:r,width:s}=e,r=r?l||i||t:0;s||n.push(e),a+=r}),{autoItems:n,heightCount:o,heightRatio:o/100,widthCount:a,widthRatio:a/100}}),f=(0,_vue.computed)(()=>{var{width:e,height:t}=r.value,i={};return t&&(i.height=(0,_dom.toCssUnit)(t)),e&&(i.width=(0,_dom.toCssUnit)(e)),i}),i={computeItemOpts:M,computeBarOpts:r,computeActionOpts:v},s={refElem:h},c={xID:t,props:u,context:e,reactData:A,internalData:g,getRefMaps:()=>s,getComputeMaps:()=>i},D=(e,t,i)=>{l(e,(0,_ui.createEvent)(i,{$splitter:c},t))},I=(e,t)=>e&&(_xeUtils.default.isString(e)&&(e=a[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[],x=(e,t,i)=>{var l=u.vertical,r="SPLIT_TOP_ACTION",s="SPLIT_BOTTOM_ACTION",n="SPLIT_LEFT_ACTION",o="SPLIT_RIGHT_ACTION";let a="";return(a=l?i?t.isExpand?s:r:e.isExpand?r:s:i?t.isExpand?o:n:e.isExpand?n:o)?(0,_ui.getIcon)()[a]:""};let n=(e,t)=>{var i=A.staticItems,{showPrevButton:l,showNextButton:r}=v.value;let s={isExpand:!0,renderWidth:0,resizeWidth:0,foldWidth:0,renderHeight:0,resizeHeight:0,foldHeight:0};return A.itemList=e.map(e=>(e.showAction&&(0,_log.warnLog)("vxe.error.removeProp",["[splitter] show-action"]),e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||a[e]||(0,_log.errLog)("vxe.error.notSlot",["[splitter] "+e])}),Object.assign({},t?null:s,e,t?s:null,{id:_xeUtils.default.uniqueId()}))),i.length&&(0,_log.errLog)("vxe.error.errConflicts",["<vxe-splitter-panel ...>","items"]),(l||r)&&2<A.itemList.length&&(0,_log.errLog)("vxe.error.errConflicts",["action-config.showPrevButton | action-config.showNextButton","Only supports 2 item"]),q()},o=e=>n(e||[],!1);let _=t=>{var i=A.itemList;let l=-1,r=null,s=null,n=null;for(let e=0;e<i.length;e++){var o=i[e];if(o.name===t){l=e,r=o,s=i[e-1]||null,n=i[e+1]||null;break}}return{index:l,currItem:r,prevItem:s,nextItem:n}},b=(e,t)=>{var i,l,e=_(e);return e&&({currItem:e,prevItem:i,nextItem:l}=e,e)&&(t?!e.isExpand:e.isExpand)&&(l?l.isExpand&&z(null,e,l,!1):i&&i.isExpand&&z(null,i,e,!0)),(0,_vue.nextTick)()};let q=()=>(0,_vue.nextTick)().then(()=>{var e=u.vertical,t=A.itemList,l=h.value,a=p.value;if(l){var d=l.clientWidth,l=l.clientHeight;if(d&&l){a&&(A.barWidth=a.offsetWidth,A.barHeight=a.offsetHeight);let r=d-(e?0:A.barWidth*(t.length-1)),s=l-(e?A.barHeight*(t.length-1):0);a=M.value;let i=_xeUtils.default.toNumber(a.minWidth),n=_xeUtils.default.toNumber(a.minHeight),o=[];if(e){let l=0;if(t.forEach(e=>{var t=e.height;let i=0;t?(i=(0,_dom.isScale)(t)?s*_xeUtils.default.toNumber(t)/100:_xeUtils.default.toNumber(t),e.renderHeight=i):o.push(e),l+=i}),o.length){let t=(s-l)/o.length;o.forEach(e=>{e.renderHeight=Math.max(_xeUtils.default.toNumber((0,_utils.getGlobalDefaultConfig)(e.minHeight,n)),t)})}}else{let l=0;if(t.forEach(e=>{var t=e.width;let i=0;t?(i=(0,_dom.isScale)(t)?r*_xeUtils.default.toNumber(t)/100:_xeUtils.default.toNumber(t),e.renderWidth=i):o.push(e),l+=i}),o.length){let t=(r-l)/o.length;o.forEach(e=>{e.renderWidth=Math.max(_xeUtils.default.toNumber((0,_utils.getGlobalDefaultConfig)(e.minWidth,i)),t)})}}g.wrapperWidth=r,g.wrapperHeight=s}}}),E=e=>{let{resize:t,vertical:L}=u;var N=A.itemList;if(t){e.preventDefault();var S=e.currentTarget,T=S.parentElement;let U=h.value;if(U){let I=T.previousElementSibling,W=T.nextElementSibling;if(I&&W){let t=I.getAttribute("itemid"),i=W.getAttribute("itemid"),y=N.find(e=>e.id===t),H=N.find(e=>e.id===i);if(y&&H){let s=U.getBoundingClientRect();T=S.getBoundingClientRect();let n=O.value,o=n?n.children[0]:null;N=M.value;let t=P.value.immediate;var S=_xeUtils.default.toNumber(N.minWidth),N=_xeUtils.default.toNumber(N.minHeight),k=Math.ceil(T.width-(e.clientX-T.left)),T=Math.ceil(e.clientY-T.top);let i=I.offsetWidth,l=W.offsetWidth;var B=_xeUtils.default.toNumber(y?(0,_utils.getGlobalDefaultConfig)(y.minWidth,S):S),S=_xeUtils.default.toNumber(H?(0,_utils.getGlobalDefaultConfig)(H.minWidth,S):S);let r=I.offsetLeft+B-k,a=W.offsetLeft+W.offsetWidth-S-k,d=e.clientX-s.left,u=-1,h=0,p=0,g=d,v=I.offsetHeight,m=W.offsetHeight;B=_xeUtils.default.toNumber(y?(0,_utils.getGlobalDefaultConfig)(y.minHeight,N):N),S=_xeUtils.default.toNumber(H?(0,_utils.getGlobalDefaultConfig)(H.minHeight,N):N);let f=I.offsetTop+B+T,c=W.offsetTop+W.offsetHeight-S+T,x=e.clientY-s.top,_=-1,b=0,E=0,z=x,C=i=>{if(n){var l=o?o.children[0]:null,r=o?o.children[1]:null;if(L){let e=0,t=(l&&(_<0?l.style.display="none":(l.textContent=Math.floor(b)+"px",l.style.display="block",e=l.offsetWidth)),r&&(_<0?(r.textContent=Math.floor(E)+"px",r.style.display="block",e=r.offsetWidth):r.style.display="none"),Math.max(1,i.clientX-s.left-e/2));t>s.width-e-1&&(t=s.width-e-1),n.style.left="0",n.style.top=z+"px",o&&(o.style.left=t+"px")}else{let e=0,t=(l&&(u<0?l.style.display="none":(l.textContent=Math.floor(h)+"px",l.style.display="block",e=l.offsetHeight)),r&&(u<0?(r.textContent=Math.floor(p)+"px",r.style.display="block",e=r.offsetHeight):r.style.display="none"),Math.max(1,i.clientY-s.top-e/2));t>s.height-e-1&&(t=s.height-e-1),n.style.top="0",n.style.left=g+"px",o&&(o.style.top=t+"px")}}},w=e=>{L?((z=(z=e.clientY-s.top)<f?f:z)>c&&(z=c),_=z-x,b=v+_,E=m-_):((g=(g=e.clientX-s.left)<r?r:g)>a&&(g=a),u=g-d,h=i+u,p=l-u),t&&(L?(I.style.height=(0,_dom.toCssUnit)(b),W.style.height=(0,_dom.toCssUnit)(E)):(I.style.width=(0,_dom.toCssUnit)(h),W.style.width=(0,_dom.toCssUnit)(p))),n&&C(e),D("resize-drag",{prevItem:y,nextItem:H,offsetHeight:_,offsetWidth:u},e)};document.onmousemove=e=>{e.preventDefault(),w(e),A.resizeFlag++},document.onmouseup=e=>{document.onmousemove=null,document.onmouseup=null,n&&(n.style.display=""),L?(y.resizeHeight=b,H.resizeHeight=E):(y.resizeWidth=h,H.resizeWidth=p),(0,_dom.removeClass)(U,"is--drag"),D("resize-end",{prevItem:y,nextItem:H,offsetHeight:_,offsetWidth:u},e),q(),A.resizeFlag++},n&&(n.style.display="block",C(e)),w(e),(0,_dom.addClass)(U,"is--drag"),D("resize-start",{prevItem:y,nextItem:H},e)}}}}},z=(e,t,i,l)=>{var r=u.vertical;let s=!1,n=t;l?(n=i,s=!i.isExpand,i.isExpand=s):(s=!t.isExpand,t.isExpand=s),r?t.isExpand&&i.isExpand?(t.foldHeight=0,i.foldHeight=0):t.isExpand?(i.foldHeight=0,t.foldHeight=(t.resizeHeight||t.renderHeight)+(i.resizeHeight||i.renderHeight)):(t.foldHeight=0,i.foldHeight=(t.resizeHeight||t.renderHeight)+(i.resizeHeight||i.renderHeight)):t.isExpand&&i.isExpand?(t.foldWidth=0,i.foldWidth=0):t.isExpand?(i.foldWidth=0,t.foldWidth=(t.resizeWidth||t.renderWidth)+(i.resizeWidth||i.renderWidth)):(t.foldWidth=0,i.foldWidth=(t.resizeWidth||t.renderWidth)+(i.resizeWidth||i.renderWidth)),e&&D("toggle-expand",{prevItem:t,nextItem:i,expanded:s,item:n},e),q(),A.resizeFlag++},C=e=>{var t=A.itemList,i=v.value,l=e.currentTarget.parentElement.parentElement;let r=l.previousElementSibling.getAttribute("itemid");var s=t.find(e=>e.id===r);let n=l.nextElementSibling.getAttribute("itemid");l=t.find(e=>e.id===n);"dblclick"===i.trigger&&s&&l&&l.isExpand&&z(e,s,l,!1),D("action-dblclick",{prevItem:s,nextItem:l},e)},w=e=>{var t=A.itemList,i=v.value,l=e.currentTarget.parentElement.parentElement;let r=l.previousElementSibling.getAttribute("itemid");var s=t.find(e=>e.id===r);let n=l.nextElementSibling.getAttribute("itemid");l=t.find(e=>e.id===n);"dblclick"!==i.trigger&&s&&l&&l.isExpand&&z(e,s,l,!1),D("action-click",{prevItem:s,nextItem:l},e)},y=e=>{var t=A.itemList,i=v.value,l=e.currentTarget.parentElement.parentElement;let r=l.previousElementSibling.getAttribute("itemid");var s=t.find(e=>e.id===r);let n=l.nextElementSibling.getAttribute("itemid");l=t.find(e=>e.id===n);"dblclick"===i.trigger&&s&&l&&s.isExpand&&z(e,s,l,!0),D("action-dblclick",{prevItem:s,nextItem:l},e)},L=e=>{var t=A.itemList,i=v.value,l=e.currentTarget.parentElement.parentElement;let r=l.previousElementSibling.getAttribute("itemid");var s=t.find(e=>e.id===r);let n=l.nextElementSibling.getAttribute("itemid");l=t.find(e=>e.id===n);"dblclick"!==i.trigger&&s&&l&&s.isExpand&&z(e,s,l,!0),D("action-click",{prevItem:s,nextItem:l},e)},N=()=>{q()};t={dispatchEvent:D,setItemExpand:b,toggleItemExpand:e=>{var t=_(e);if(t){t=t.currItem;if(t)return b(e,!t.isExpand)}return(0,_vue.nextTick)()},getItemExpand:e=>{e=_(e);if(e){e=e.currItem;if(e)return e.isExpand}return!1},recalculate:q,reset:()=>{var e=A.itemList;return e.forEach(e=>{e.isExpand=!0,e.foldHeight=0,e.foldWidth=0,e.resizeHeight=0,e.resizeWidth=0}),(0,_vue.nextTick)()},loadItem:o,reloadItem:e=>n(e||[],!0)};Object.assign(c,t,{});let S=(e,t)=>{var{border:i,resize:l,vertical:r}=u,s=A.itemList,n=f.value,o=v.value,a=o.direction,d=_xeUtils.default.isBoolean(o.showPrevButton)?o.showPrevButton:s.some(e=>e.showAction),o=_xeUtils.default.isBoolean(o.showNextButton)?o.showNextButton:"next"===a&&s.some(e=>e.showAction),a=P.value.immediate;return(0,_vue.h)("div",{class:["vxe-splitter-panel-handle",r?"is--vertical":"is--horizontal",a?"is-resize--immediate":"is-resize--lazy",{"is--resize":l,"is--border":i}]},[(0,_vue.h)("div",{class:"vxe-splitter-panel-handle-bar",style:n,onMousedown:E}),2===s.length?(0,_vue.h)("div",{class:"vxe-splitter-panel-action-btn-wrapper"},[d&&t.isExpand?(0,_vue.h)("div",{class:"vxe-splitter-panel-action-btn",onDblclick:C,onClick:w},[(0,_vue.h)("i",{class:x(e,t,!1)})]):(0,_ui.renderEmptyElement)(c),o&&e.isExpand?(0,_vue.h)("div",{class:"vxe-splitter-panel-action-btn",onDblclick:y,onClick:L},[(0,_vue.h)("i",{class:x(e,t,!0)})]):(0,_ui.renderEmptyElement)(c)]):(0,_ui.renderEmptyElement)(c)])};let W=(0,_vue.ref)(0);(0,_vue.watch)(()=>u.items?u.items.length:-1,()=>{W.value++}),(0,_vue.watch)(()=>u.items,()=>{W.value++}),(0,_vue.watch)(W,()=>{o(u.items||[])}),(0,_vue.watch)(()=>A.staticItems,e=>{var{showPrevButton:t,showNextButton:i}=v.value;u.items&&u.items.length&&(0,_log.errLog)("vxe.error.errConflicts",["<vxe-splitter-panel ...>","items"]),A.itemList=e||[],(t||i)&&2<A.itemList.length&&(0,_log.errLog)("vxe.error.modelConflicts",["[splitter] action-config.showPrevButton | action-config.showNextButton","<vxe-splitter-panel ...> Only supports 2 panel"]),A.itemList.forEach(e=>{e.showAction&&(0,_log.warnLog)("vxe.error.removeProp",["[splitter] showAction"])}),q()});let U;return(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{q()});var e=h.value,e=(e&&(U=_ui.globalResize.create(()=>{q()})).observe(e),v.value);e.direction&&(0,_log.errLog)("vxe.error.delProp",["[splitter] action-config.direction","action-config.showPrevButton | action-config.showNextButton"]),_ui.globalEvents.on(c,"resize",N)}),(0,_vue.onUnmounted)(()=>{U&&U.disconnect(),_ui.globalEvents.off(c,"resize")}),(0,_vue.onActivated)(()=>{q()}),u.items&&o(u.items),(0,_vue.provide)("$xeSplitter",c),c.renderVN=()=>{var{vertical:e,width:t,height:i}=u,l=d.value,{immediate:r,showTip:s}=P.value,n=a.default,o={};return i&&(o.height=(0,_dom.toCssUnit)(i)),t&&(o.width=(0,_dom.toCssUnit)(t)),(0,_vue.h)("div",{ref:h,class:["vxe-splitter",e?"is--vertical":"is--horizontal",r?"is-resize--immediate":"is-resize--lazy",{["size--"+l]:l}],style:o},[(0,_vue.h)("div",{class:"vxe-splitter-slots"},n?n({}):[]),(()=>{let{border:f,padding:c,resize:x,vertical:_}=u,b=A.itemList,E=d.value;let z=P.value.immediate,C=m.value,w=H.value.autoItems,y=[];return b.forEach((e,t)=>{var{id:i,name:l,slots:r,renderHeight:s,resizeHeight:n,foldHeight:o,renderWidth:a,resizeWidth:d,foldWidth:u,isExpand:h}=e,t=b[t+1],r=r?r.default:null,p={};let g=h?u||d||a:0,v=h?o||n||s:0,m=(1===w.length&&(_?e.height||(v=0):e.width||(g=0)),!0);_?v&&1<C.length&&(m=!1,p.height=(0,_dom.toCssUnit)(v)):g&&1<C.length&&(m=!1,p.width=(0,_dom.toCssUnit)(g)),y.push((0,_vue.h)("div",{itemid:i,class:["vxe-splitter-panel",_?"is--vertical":"is--horizontal",z?"is-resize--immediate":"is-resize--lazy",{["size--"+E]:E,"is--resize":x,"is--padding":c,"is--border":f,"is--height":v,"is--width":g,"is--visible":h,"is--hidden":!h,"is--fill":h&&m}],style:p},[(0,_vue.h)("div",{itemid:i,class:"vxe-splitter-panel--wrapper"},[(0,_vue.h)("div",{class:"vxe-splitter-panel--inner"},r?I(r,{name:l,isExpand:h}):[])])])),t&&y.push(S(e,t))}),(0,_vue.h)("div",{class:"vxe-splitter-wrapper"},y)})(),(0,_vue.h)("div",{ref:O,class:["vxe-splitter--resizable-splitter-tip",e?"is--vertical":"is--horizontal",r?"is-resize--immediate":"is-resize--lazy"]},s?[(0,_vue.h)("div",{class:"vxe-splitter--resizable-splitter-tip-number"},[(0,_vue.h)("div",{class:"vxe-splitter--resizable-splitter-number-prev"}),(0,_vue.h)("div",{class:"vxe-splitter--resizable-splitter-number-next"})])]:[]),(0,_vue.h)("div",{class:"vxe-splitter--render-vars"},[(0,_vue.h)("div",{ref:p,class:"vxe-splitter--handle-bar-info"})])])},c},render(){return this.renderVN()}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_ui=require("../../ui"),_vn=require("../../ui/src/vn"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("splitter");var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeSplitter",props:{width:[Number,String],height:[Number,String],vertical:{type:Boolean,default:()=>(0,_ui.getConfig)().splitter.vertical},border:{type:Boolean,default:()=>(0,_ui.getConfig)().splitter.border},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().splitter.padding},resize:{type:Boolean,default:()=>(0,_ui.getConfig)().splitter.resize},items:Array,itemConfig:Object,barConfig:Object,resizeConfig:Object,actionConfig:Object,size:{type:String,default:()=>(0,_ui.getConfig)().splitter.size||(0,_ui.getConfig)().size}},emits:["action-dblclick","action-click","toggle-expand","resize-start","resize-drag","resize-end"],setup(u,e){let{emit:r,slots:a}=e;var t=_xeUtils.default.uniqueId();let h=(0,_vue.ref)(),p=(0,_vue.ref)(),O=(0,_vue.ref)(),d=(0,_ui.useSize)(u).computeSize,A=(0,_vue.reactive)({staticItems:[],itemList:[],barWidth:0,barHeight:0,resizeFlag:0}),g={wrapperWidth:0,wrapperHeight:0},M=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().splitter.itemConfig,u.itemConfig)),l=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().splitter.barConfig,u.barConfig)),P=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().splitter.resizeConfig,u.resizeConfig)),v=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().splitter.actionConfig,u.actionConfig)),m=(0,_vue.computed)(()=>A.itemList.filter(e=>e.isExpand)),H=(0,_vue.computed)(()=>{var e=u.vertical;let n=[],o=0,a=0;return A.itemList.forEach(e?e=>{var{renderHeight:t,resizeHeight:i,foldHeight:r,isExpand:l,height:s}=e,l=l?r||i||t:0;s||n.push(e),o+=l}:e=>{var{renderWidth:t,resizeWidth:i,foldWidth:r,isExpand:l,width:s}=e,l=l?r||i||t:0;s||n.push(e),a+=l}),{autoItems:n,heightCount:o,heightRatio:o/100,widthCount:a,widthRatio:a/100}}),f=(0,_vue.computed)(()=>{var{width:e,height:t}=l.value,i={};return t&&(i.height=(0,_dom.toCssUnit)(t)),e&&(i.width=(0,_dom.toCssUnit)(e)),i}),i={computeItemOpts:M,computeBarOpts:l,computeActionOpts:v},s={refElem:h},c={xID:t,props:u,context:e,reactData:A,internalData:g,getRefMaps:()=>s,getComputeMaps:()=>i},D=(e,t,i)=>{r(e,(0,_ui.createEvent)(i,{$splitter:c},t))},I=(e,t)=>e&&(_xeUtils.default.isString(e)&&(e=a[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[],x=(e,t,i)=>{var r=u.vertical,l="SPLIT_TOP_ACTION",s="SPLIT_BOTTOM_ACTION",n="SPLIT_LEFT_ACTION",o="SPLIT_RIGHT_ACTION";let a="";return(a=r?i?t.isExpand?s:l:e.isExpand?l:s:i?t.isExpand?o:n:e.isExpand?n:o)?(0,_ui.getIcon)()[a]:""};let n=(e,t)=>{var i=A.staticItems,{showPrevButton:r,showNextButton:l}=v.value;let s={isExpand:!0,renderWidth:0,resizeWidth:0,foldWidth:0,renderHeight:0,resizeHeight:0,foldHeight:0};return A.itemList=e.map(e=>(e.showAction&&warnLog("vxe.error.removeProp",["show-action"]),e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||a[e]||errLog("vxe.error.notSlot",[e])}),Object.assign({},t?null:s,e,t?s:null,{id:_xeUtils.default.uniqueId()}))),i.length&&errLog("vxe.error.errConflicts",["<vxe-splitter-panel ...>","items"]),(r||l)&&2<A.itemList.length&&errLog("vxe.error.errConflicts",["action-config.showPrevButton | action-config.showNextButton","Only supports 2 item"]),q()},o=e=>n(e||[],!1);let _=t=>{var i=A.itemList;let r=-1,l=null,s=null,n=null;for(let e=0;e<i.length;e++){var o=i[e];if(o.name===t){r=e,l=o,s=i[e-1]||null,n=i[e+1]||null;break}}return{index:r,currItem:l,prevItem:s,nextItem:n}},b=(e,t)=>{var i,r,e=_(e);return e&&({currItem:e,prevItem:i,nextItem:r}=e,e)&&(t?!e.isExpand:e.isExpand)&&(r?r.isExpand&&z(null,e,r,!1):i&&i.isExpand&&z(null,i,e,!0)),(0,_vue.nextTick)()};let q=()=>(0,_vue.nextTick)().then(()=>{var e=u.vertical,t=A.itemList,r=h.value,a=p.value;if(r){var d=r.clientWidth,r=r.clientHeight;if(d&&r){a&&(A.barWidth=a.offsetWidth,A.barHeight=a.offsetHeight);let l=d-(e?0:A.barWidth*(t.length-1)),s=r-(e?A.barHeight*(t.length-1):0);a=M.value;let i=_xeUtils.default.toNumber(a.minWidth),n=_xeUtils.default.toNumber(a.minHeight),o=[];if(e){let r=0;if(t.forEach(e=>{var t=e.height;let i=0;t?(i=(0,_dom.isScale)(t)?s*_xeUtils.default.toNumber(t)/100:_xeUtils.default.toNumber(t),e.renderHeight=i):o.push(e),r+=i}),o.length){let t=(s-r)/o.length;o.forEach(e=>{e.renderHeight=Math.max(_xeUtils.default.toNumber((0,_utils.getGlobalDefaultConfig)(e.minHeight,n)),t)})}}else{let r=0;if(t.forEach(e=>{var t=e.width;let i=0;t?(i=(0,_dom.isScale)(t)?l*_xeUtils.default.toNumber(t)/100:_xeUtils.default.toNumber(t),e.renderWidth=i):o.push(e),r+=i}),o.length){let t=(l-r)/o.length;o.forEach(e=>{e.renderWidth=Math.max(_xeUtils.default.toNumber((0,_utils.getGlobalDefaultConfig)(e.minWidth,i)),t)})}}g.wrapperWidth=l,g.wrapperHeight=s}}}),E=e=>{let{resize:t,vertical:U}=u;var N=A.itemList;if(t){e.preventDefault();var S=e.currentTarget,T=S.parentElement;let L=h.value;if(L){let I=T.previousElementSibling,W=T.nextElementSibling;if(I&&W){let t=I.getAttribute("itemid"),i=W.getAttribute("itemid"),y=N.find(e=>e.id===t),H=N.find(e=>e.id===i);if(y&&H){let s=L.getBoundingClientRect();T=S.getBoundingClientRect();let n=O.value,o=n?n.children[0]:null;N=M.value;let t=P.value.immediate;var S=_xeUtils.default.toNumber(N.minWidth),N=_xeUtils.default.toNumber(N.minHeight),k=Math.ceil(T.width-(e.clientX-T.left)),T=Math.ceil(e.clientY-T.top);let i=I.offsetWidth,r=W.offsetWidth;var B=_xeUtils.default.toNumber(y?(0,_utils.getGlobalDefaultConfig)(y.minWidth,S):S),S=_xeUtils.default.toNumber(H?(0,_utils.getGlobalDefaultConfig)(H.minWidth,S):S);let l=I.offsetLeft+B-k,a=W.offsetLeft+W.offsetWidth-S-k,d=e.clientX-s.left,u=-1,h=0,p=0,g=d,v=I.offsetHeight,m=W.offsetHeight;B=_xeUtils.default.toNumber(y?(0,_utils.getGlobalDefaultConfig)(y.minHeight,N):N),S=_xeUtils.default.toNumber(H?(0,_utils.getGlobalDefaultConfig)(H.minHeight,N):N);let f=I.offsetTop+B+T,c=W.offsetTop+W.offsetHeight-S+T,x=e.clientY-s.top,_=-1,b=0,E=0,z=x,C=i=>{if(n){var r=o?o.children[0]:null,l=o?o.children[1]:null;if(U){let e=0,t=(r&&(_<0?r.style.display="none":(r.textContent=Math.floor(b)+"px",r.style.display="block",e=r.offsetWidth)),l&&(_<0?(l.textContent=Math.floor(E)+"px",l.style.display="block",e=l.offsetWidth):l.style.display="none"),Math.max(1,i.clientX-s.left-e/2));t>s.width-e-1&&(t=s.width-e-1),n.style.left="0",n.style.top=z+"px",o&&(o.style.left=t+"px")}else{let e=0,t=(r&&(u<0?r.style.display="none":(r.textContent=Math.floor(h)+"px",r.style.display="block",e=r.offsetHeight)),l&&(u<0?(l.textContent=Math.floor(p)+"px",l.style.display="block",e=l.offsetHeight):l.style.display="none"),Math.max(1,i.clientY-s.top-e/2));t>s.height-e-1&&(t=s.height-e-1),n.style.top="0",n.style.left=g+"px",o&&(o.style.top=t+"px")}}},w=e=>{U?((z=(z=e.clientY-s.top)<f?f:z)>c&&(z=c),_=z-x,b=v+_,E=m-_):((g=(g=e.clientX-s.left)<l?l:g)>a&&(g=a),u=g-d,h=i+u,p=r-u),t&&(U?(I.style.height=(0,_dom.toCssUnit)(b),W.style.height=(0,_dom.toCssUnit)(E)):(I.style.width=(0,_dom.toCssUnit)(h),W.style.width=(0,_dom.toCssUnit)(p))),n&&C(e),D("resize-drag",{prevItem:y,nextItem:H,offsetHeight:_,offsetWidth:u},e)};document.onmousemove=e=>{e.preventDefault(),w(e),A.resizeFlag++},document.onmouseup=e=>{document.onmousemove=null,document.onmouseup=null,n&&(n.style.display=""),U?(y.resizeHeight=b,H.resizeHeight=E):(y.resizeWidth=h,H.resizeWidth=p),(0,_dom.removeClass)(L,"is--drag"),D("resize-end",{prevItem:y,nextItem:H,offsetHeight:_,offsetWidth:u},e),q(),A.resizeFlag++},n&&(n.style.display="block",C(e)),w(e),(0,_dom.addClass)(L,"is--drag"),D("resize-start",{prevItem:y,nextItem:H},e)}}}}},z=(e,t,i,r)=>{var l=u.vertical;let s=!1,n=t;r?(n=i,s=!i.isExpand,i.isExpand=s):(s=!t.isExpand,t.isExpand=s),l?t.isExpand&&i.isExpand?(t.foldHeight=0,i.foldHeight=0):t.isExpand?(i.foldHeight=0,t.foldHeight=(t.resizeHeight||t.renderHeight)+(i.resizeHeight||i.renderHeight)):(t.foldHeight=0,i.foldHeight=(t.resizeHeight||t.renderHeight)+(i.resizeHeight||i.renderHeight)):t.isExpand&&i.isExpand?(t.foldWidth=0,i.foldWidth=0):t.isExpand?(i.foldWidth=0,t.foldWidth=(t.resizeWidth||t.renderWidth)+(i.resizeWidth||i.renderWidth)):(t.foldWidth=0,i.foldWidth=(t.resizeWidth||t.renderWidth)+(i.resizeWidth||i.renderWidth)),e&&D("toggle-expand",{prevItem:t,nextItem:i,expanded:s,item:n},e),q(),A.resizeFlag++},C=e=>{var t=A.itemList,i=v.value,r=e.currentTarget.parentElement.parentElement;let l=r.previousElementSibling.getAttribute("itemid");var s=t.find(e=>e.id===l);let n=r.nextElementSibling.getAttribute("itemid");r=t.find(e=>e.id===n);"dblclick"===i.trigger&&s&&r&&r.isExpand&&z(e,s,r,!1),D("action-dblclick",{prevItem:s,nextItem:r},e)},w=e=>{var t=A.itemList,i=v.value,r=e.currentTarget.parentElement.parentElement;let l=r.previousElementSibling.getAttribute("itemid");var s=t.find(e=>e.id===l);let n=r.nextElementSibling.getAttribute("itemid");r=t.find(e=>e.id===n);"dblclick"!==i.trigger&&s&&r&&r.isExpand&&z(e,s,r,!1),D("action-click",{prevItem:s,nextItem:r},e)},y=e=>{var t=A.itemList,i=v.value,r=e.currentTarget.parentElement.parentElement;let l=r.previousElementSibling.getAttribute("itemid");var s=t.find(e=>e.id===l);let n=r.nextElementSibling.getAttribute("itemid");r=t.find(e=>e.id===n);"dblclick"===i.trigger&&s&&r&&s.isExpand&&z(e,s,r,!0),D("action-dblclick",{prevItem:s,nextItem:r},e)},U=e=>{var t=A.itemList,i=v.value,r=e.currentTarget.parentElement.parentElement;let l=r.previousElementSibling.getAttribute("itemid");var s=t.find(e=>e.id===l);let n=r.nextElementSibling.getAttribute("itemid");r=t.find(e=>e.id===n);"dblclick"!==i.trigger&&s&&r&&s.isExpand&&z(e,s,r,!0),D("action-click",{prevItem:s,nextItem:r},e)},N=()=>{q()};t={dispatchEvent:D,setItemExpand:b,toggleItemExpand:e=>{var t=_(e);if(t){t=t.currItem;if(t)return b(e,!t.isExpand)}return(0,_vue.nextTick)()},getItemExpand:e=>{e=_(e);if(e){e=e.currItem;if(e)return e.isExpand}return!1},recalculate:q,reset:()=>{var e=A.itemList;return e.forEach(e=>{e.isExpand=!0,e.foldHeight=0,e.foldWidth=0,e.resizeHeight=0,e.resizeWidth=0}),(0,_vue.nextTick)()},loadItem:o,reloadItem:e=>n(e||[],!0)};Object.assign(c,t,{});let S=(e,t)=>{var{border:i,resize:r,vertical:l}=u,s=A.itemList,n=f.value,o=v.value,a=o.direction,d=_xeUtils.default.isBoolean(o.showPrevButton)?o.showPrevButton:s.some(e=>e.showAction),o=_xeUtils.default.isBoolean(o.showNextButton)?o.showNextButton:"next"===a&&s.some(e=>e.showAction),a=P.value.immediate;return(0,_vue.h)("div",{class:["vxe-splitter-panel-handle",l?"is--vertical":"is--horizontal",a?"is-resize--immediate":"is-resize--lazy",{"is--resize":r,"is--border":i}]},[(0,_vue.h)("div",{class:"vxe-splitter-panel-handle-bar",style:n,onMousedown:E}),2===s.length?(0,_vue.h)("div",{class:"vxe-splitter-panel-action-btn-wrapper"},[d&&t.isExpand?(0,_vue.h)("div",{class:"vxe-splitter-panel-action-btn",onDblclick:C,onClick:w},[(0,_vue.h)("i",{class:x(e,t,!1)})]):(0,_ui.renderEmptyElement)(c),o&&e.isExpand?(0,_vue.h)("div",{class:"vxe-splitter-panel-action-btn",onDblclick:y,onClick:U},[(0,_vue.h)("i",{class:x(e,t,!0)})]):(0,_ui.renderEmptyElement)(c)]):(0,_ui.renderEmptyElement)(c)])};let W=(0,_vue.ref)(0);(0,_vue.watch)(()=>u.items?u.items.length:-1,()=>{W.value++}),(0,_vue.watch)(()=>u.items,()=>{W.value++}),(0,_vue.watch)(W,()=>{o(u.items||[])}),(0,_vue.watch)(()=>A.staticItems,e=>{var{showPrevButton:t,showNextButton:i}=v.value;u.items&&u.items.length&&errLog("vxe.error.errConflicts",["<vxe-splitter-panel ...>","items"]),A.itemList=e||[],(t||i)&&2<A.itemList.length&&errLog("vxe.error.modelConflicts",["action-config.showPrevButton | action-config.showNextButton","<vxe-splitter-panel ...> Only supports 2 panel"]),A.itemList.forEach(e=>{e.showAction&&warnLog("vxe.error.removeProp",["showAction"])}),q()});let L;return(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{q()});var e=h.value,e=(e&&(L=_ui.globalResize.create(()=>{q()})).observe(e),v.value);e.direction&&errLog("vxe.error.delProp",["action-config.direction","action-config.showPrevButton | action-config.showNextButton"]),_ui.globalEvents.on(c,"resize",N)}),(0,_vue.onUnmounted)(()=>{L&&L.disconnect(),_ui.globalEvents.off(c,"resize")}),(0,_vue.onActivated)(()=>{q()}),u.items&&o(u.items),(0,_vue.provide)("$xeSplitter",c),c.renderVN=()=>{var{vertical:e,width:t,height:i}=u,r=d.value,{immediate:l,showTip:s}=P.value,n=a.default,o={};return i&&(o.height=(0,_dom.toCssUnit)(i)),t&&(o.width=(0,_dom.toCssUnit)(t)),(0,_vue.h)("div",{ref:h,class:["vxe-splitter",e?"is--vertical":"is--horizontal",l?"is-resize--immediate":"is-resize--lazy",{["size--"+r]:r}],style:o},[(0,_vue.h)("div",{class:"vxe-splitter-slots"},n?n({}):[]),(()=>{let{border:f,padding:c,resize:x,vertical:_}=u,b=A.itemList,E=d.value;let z=P.value.immediate,C=m.value,w=H.value.autoItems,y=[];return b.forEach((e,t)=>{var{id:i,name:r,slots:l,renderHeight:s,resizeHeight:n,foldHeight:o,renderWidth:a,resizeWidth:d,foldWidth:u,isExpand:h}=e,t=b[t+1],l=l?l.default:null,p={};let g=h?u||d||a:0,v=h?o||n||s:0,m=(1===w.length&&(_?e.height||(v=0):e.width||(g=0)),!0);_?v&&1<C.length&&(m=!1,p.height=(0,_dom.toCssUnit)(v)):g&&1<C.length&&(m=!1,p.width=(0,_dom.toCssUnit)(g)),y.push((0,_vue.h)("div",{itemid:i,class:["vxe-splitter-panel",_?"is--vertical":"is--horizontal",z?"is-resize--immediate":"is-resize--lazy",{["size--"+E]:E,"is--resize":x,"is--padding":c,"is--border":f,"is--height":v,"is--width":g,"is--visible":h,"is--hidden":!h,"is--fill":h&&m}],style:p},[(0,_vue.h)("div",{itemid:i,class:"vxe-splitter-panel--wrapper"},[(0,_vue.h)("div",{class:"vxe-splitter-panel--inner"},l?I(l,{name:r,isExpand:h}):[])])])),t&&y.push(S(e,t))}),(0,_vue.h)("div",{class:"vxe-splitter-wrapper"},y)})(),(0,_vue.h)("div",{ref:O,class:["vxe-splitter--resizable-splitter-tip",e?"is--vertical":"is--horizontal",l?"is-resize--immediate":"is-resize--lazy"]},s?[(0,_vue.h)("div",{class:"vxe-splitter--resizable-splitter-tip-number"},[(0,_vue.h)("div",{class:"vxe-splitter--resizable-splitter-number-prev"}),(0,_vue.h)("div",{class:"vxe-splitter--resizable-splitter-number-next"})])]:[]),(0,_vue.h)("div",{class:"vxe-splitter--render-vars"},[(0,_vue.h)("div",{ref:p,class:"vxe-splitter--handle-bar-info"})])])},c},render(){return this.renderVN()}});
@@ -15,9 +15,26 @@ var _utils = require("../../ui/src/utils");
15
15
  var _log = require("../../ui/src/log");
16
16
  var _input = _interopRequireDefault(require("../../input/src/input"));
17
17
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
18
+ const {
19
+ errLog
20
+ } = (0, _log.createComponentLog)('table-select');
18
21
  function getRowUniqueId() {
19
22
  return _xeUtils.default.uniqueId('row_');
20
23
  }
24
+ function createReactData() {
25
+ return {
26
+ initialized: false,
27
+ tableColumns: [],
28
+ fullOptionList: [],
29
+ panelIndex: 0,
30
+ panelStyle: {},
31
+ panelPlacement: null,
32
+ triggerFocusPanel: false,
33
+ visiblePanel: false,
34
+ isAniVisible: false,
35
+ isActivated: false
36
+ };
37
+ }
21
38
  function createInternalData() {
22
39
  return {
23
40
  // hpTimeout: undefined,
@@ -91,18 +108,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
91
108
  const refGridWrapper = (0, _vue.ref)();
92
109
  const refOptionPanel = (0, _vue.ref)();
93
110
  const refGrid = (0, _vue.ref)();
94
- const reactData = (0, _vue.reactive)({
95
- initialized: false,
96
- tableColumns: [],
97
- fullOptionList: [],
98
- panelIndex: 0,
99
- panelStyle: {},
100
- panelPlacement: null,
101
- triggerFocusPanel: false,
102
- visiblePanel: false,
103
- isAniVisible: false,
104
- isActivated: false
105
- });
111
+ const reactData = (0, _vue.reactive)(createReactData());
106
112
  const internalData = createInternalData();
107
113
  const refMaps = {
108
114
  refElem
@@ -393,12 +399,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
393
399
  rowid = getRowUniqueId();
394
400
  }
395
401
  if (keyMaps[rowid]) {
396
- (0, _log.errLog)('vxe.error.repeatKey', [`[table-select] ${rowKeyField}`, rowid]);
402
+ errLog('vxe.error.repeatKey', [rowKeyField, rowid]);
397
403
  }
398
404
  keyMaps[rowid] = true;
399
405
  const value = item[valueField];
400
406
  if (rowMaps[value]) {
401
- (0, _log.errLog)('vxe.error.repeatKey', [`[table-select] ${valueField}`, value]);
407
+ errLog('vxe.error.repeatKey', [valueField, value]);
402
408
  }
403
409
  rowMaps[value] = {
404
410
  item,
@@ -774,11 +780,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
774
780
  _ui.globalEvents.off($xeTableSelect, 'mousedown');
775
781
  _ui.globalEvents.off($xeTableSelect, 'blur');
776
782
  _ui.globalEvents.off($xeTableSelect, 'resize');
783
+ _xeUtils.default.assign(reactData, createReactData());
777
784
  _xeUtils.default.assign(internalData, createInternalData());
778
785
  });
779
786
  (0, _vue.nextTick)(() => {
780
787
  if (!VxeTableGridComponent) {
781
- (0, _log.errLog)('vxe.error.reqComp', ['[table-select] vxe-grid']);
788
+ errLog('vxe.error.reqComp', ['vxe-grid']);
782
789
  }
783
790
  });
784
791
  (0, _vue.provide)('$xeTableSelect', $xeTableSelect);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.getRowUniqueId=getRowUniqueId;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log"),_input=_interopRequireDefault(require("../../input/src/input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function getRowUniqueId(){return _xeUtils.default.uniqueId("row_")}function createInternalData(){return{fullRowMaps:{}}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableSelect",props:{modelValue:[String,Number,Array],clearable:{type:Boolean,default:(0,_ui.getConfig)().tableSelect.clearable},placeholder:{type:String,default:()=>_xeUtils.default.eqNull((0,_ui.getConfig)().tableSelect.placeholder)?(0,_ui.getI18n)("vxe.base.pleaseSelect"):(0,_ui.getConfig)().tableSelect.placeholder},readonly:{type:Boolean,default:null},loading:Boolean,disabled:{type:Boolean,default:null},multiple:Boolean,className:[String,Function],prefixIcon:String,placement:String,columns:Array,options:Array,optionProps:Object,lazyOptions:Array,zIndex:Number,size:{type:String,default:()=>(0,_ui.getConfig)().tableSelect.size||(0,_ui.getConfig)().size},popupConfig:Object,gridConfig:Object,transfer:{type:Boolean,default:null}},emits:["update:modelValue","change","clear","blur","focus","click","form-submit","form-reset","form-collapse","page-change"],setup(h,e){let{emit:a,slots:C}=e,y=_ui.VxeUI.getComponent("vxe-grid"),t=(0,_vue.inject)("$xeModal",null),i=(0,_vue.inject)("$xeDrawer",null),$=(0,_vue.inject)("$xeTable",null),u=(0,_vue.inject)("$xeForm",null),n=(0,_vue.inject)("xeFormItemInfo",null);var l=_xeUtils.default.uniqueId();let V=(0,_ui.useSize)(h).computeSize,E=(0,_vue.ref)(),T=(0,_vue.ref)(),L=(0,_vue.ref)(),I=(0,_vue.ref)(),w=(0,_vue.ref)(),S=(0,_vue.reactive)({initialized:!1,tableColumns:[],fullOptionList:[],panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1}),s=createInternalData(),k={refElem:E},N=(0,_vue.computed)(()=>{var e=h.readonly;return null===e?!!u&&u.props.readonly:e}),U=(0,_vue.computed)(()=>{var e=h.disabled;return null===e?!!u&&u.props.disabled:e}),P=(0,_vue.computed)(()=>{var e=h.transfer,l=j.value;if(_xeUtils.default.isBoolean(l.transfer))return l.transfer;if(null===e){l=(0,_ui.getConfig)().tableSelect.transfer;if(_xeUtils.default.isBoolean(l))return l;if($||t||i||u)return!0}return e}),r=(0,_vue.computed)(()=>h.optionProps||{}),O=(0,_vue.computed)(()=>{var e=d.value;return Object.assign({},e.rowConfig,{isCurrent:!0})}),v=(0,_vue.computed)(()=>O.value.keyField||"_X_ROW_KEY"),F=(0,_vue.computed)(()=>r.value.label||"label"),c=(0,_vue.computed)(()=>r.value.value||"value"),j=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tableSelect.popupConfig,h.popupConfig)),d=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tableSelect.gridConfig,h.gridConfig,{data:void 0})),B=(0,_vue.computed)(()=>{var e=d.value;let{pagerConfig:i,proxyConfig:l}=e;if(l){var a=l.ajax;if(a&&a.query){var u=_xeUtils.default.clone(l,!0);let t=a.query;if(t){let a=l.response||l.props||{};Object.assign(u.ajax,{query(e,...l){return Promise.resolve(t(e,...l)).then(e=>{let l=[];var t;return l=i?(t=a.result,(_xeUtils.default.isFunction(t)?t({data:e,$table:null,$grid:null,$gantt:null}):_xeUtils.default.get(e,t||"result"))||[]):((t=a.list)?_xeUtils.default.isFunction(t)?t({data:e,$table:null,$grid:null,$gantt:null}):_xeUtils.default.get(e,t):e)||[],g(l||[]),e})}})}return Object.assign({},e,{proxyConfig:u})}}return e}),D=(0,_vue.computed)(()=>{let{modelValue:e,lazyOptions:t}=h;var l=S.fullOptionList;let a=s.fullRowMaps,i=c.value,u=F.value;return l?(_xeUtils.default.isArray(e)?e:[e]).map(l=>{var e=a[l];if(e)return e.item[u];if(t){e=t.find(e=>e[i]===l);if(e)return e[u]}return l}).join(", "):""}),M=(0,_vue.computed)(()=>{var{height:e,width:l}=j.value,t={};return l&&(t.width=(0,_dom.toCssUnit)(l)),e&&(t.height=(0,_dom.toCssUnit)(e)),t}),K={},q={xID:l,props:h,context:e,reactData:S,getRefMaps:()=>k,getComputeMaps:()=>K};let R={},o=(["form-submit","form-reset","form-collapse","page-change"].forEach(l=>{R[(0,_vn.getOnName)(_xeUtils.default.camelCase(l))]=e=>{o(l,e,e.$event)}}),(e,l,t)=>{a(e,(0,_ui.createEvent)(t,{$tableSelect:q},l))}),Z=e=>{a("update:modelValue",e)};l={dispatchEvent:o};let W=e=>{let l=s.fullRowMaps,t=[];return(_xeUtils.default.eqNull(e)?[]:_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=l[e];e&&t.push(e.item)}),t},p=t=>{let a=h.multiple;(0,_vue.nextTick)(()=>{var e,l=w.value;l&&(e=W(t)).length&&(a?l.setCheckboxRow(e,!0):l.setRadioRow(e[0]))})},f=e=>{if(e&&e.length){var i=h.multiple;let l=[],t=!1,a=!1;e.forEach(e=>{t||"radio"!==e.type?a||"checkbox"!==e.type||(a=!0):t=!0,l.push(e)}),i?a||l.unshift({type:"checkbox",width:70}):t||l.unshift({type:"radio",width:70}),S.tableColumns=l}},g=e=>{var l=h.options;let u=v.value,n=c.value;var{treeConfig:t,pagerConfig:a}=d.value;let r={},o={};t||_xeUtils.default.arrayEach(e||l||[],(e,l,t)=>{let a=(e=>{e=e[v.value];return e?encodeURIComponent(e):""})(e);a=a||getRowUniqueId(),o[a]&&(0,_log.errLog)("vxe.error.repeatKey",["[table-select] "+u,a]),o[a]=!0;var i=e[n];r[i]&&(0,_log.errLog)("vxe.error.repeatKey",["[table-select] "+n,i]),r[i]={item:e,index:l,items:t,parent:null,nodes:[]}}),S.fullOptionList=e||l||[],s.fullRowMaps=a?Object.assign({},s.fullRowMaps,r):r,p(h.modelValue)},X=()=>{var e=j.value.zIndex||h.zIndex;e?S.panelIndex=_xeUtils.default.toNumber(e):S.panelIndex<(0,_utils.getLastZIndex)()&&(S.panelIndex=(0,_utils.nextZIndex)())},_=()=>{let t=h.placement,a=S.panelIndex,i=E.value,u=I.value,n=P.value,r=j.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(i,u,{placement:r.placement||t,defaultPlacement:r.defaultPlacement,teleportTo:n}),l=Object.assign(e.style,{zIndex:a});S.panelStyle=l,S.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},m=()=>{var e=h.loading,l=U.value;e||l||(s.vpTimeout&&clearTimeout(s.vpTimeout),s.hpTimeout&&clearTimeout(s.hpTimeout),S.initialized||(S.initialized=!0),S.isActivated=!0,S.isAniVisible=!0,s.vpTimeout=setTimeout(()=>{S.visiblePanel=!0,p(h.modelValue),s.vpTimeout=void 0,_()},10),X(),_())},b=()=>{S.visiblePanel=!1,s.vpTimeout&&clearTimeout(s.vpTimeout),s.hpTimeout&&clearTimeout(s.hpTimeout),s.hpTimeout=setTimeout(()=>{S.isAniVisible=!1,s.hpTimeout=void 0},350)},x=(e,l,t)=>{Z(l),l!==h.modelValue&&(o("change",{value:l,row:t,option:t},e),u)&&n&&u.triggerItemEvent(e,n.itemConfig.field,l)},Y=(e,l)=>{x(e,l,null),o("clear",{value:l},e)},G=(e,l)=>{var t=w.value;t&&(t.clearRadioRow(),t.clearCheckboxRow()),Y(l,null),b()},H=e=>{var l=S.visiblePanel;U.value||l&&(l=I.value,((0,_dom.getEventTargetNode)(e,l).flag?_:b)())},J=e=>{var l,t,a=S.visiblePanel;U.value||(l=E.value,t=I.value,S.isActivated=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,t).flag,a&&!S.isActivated&&b())},Q=()=>{var{visiblePanel:e,isActivated:l}=S;e&&b(),l&&(S.isActivated=!1),(e||l)&&(e=T.value)&&e.blur()},ee=()=>{var e=S.visiblePanel;e&&_()},le=e=>{U.value||S.visiblePanel||(S.triggerFocusPanel=!0,m(),setTimeout(()=>{S.triggerFocusPanel=!1},150)),o("focus",{},e)},te=e=>{A(e),o("click",{},e)},ae=e=>{S.isActivated=!1,o("blur",{},e)},A=e=>{e=e.$event;e.preventDefault(),S.triggerFocusPanel?S.triggerFocusPanel=!1:(S.visiblePanel?b:m)()},ie=e=>{var{$event:e,row:l}=e,t=l[c.value];x(e,t,l),b()},z=e=>{var{$grid:e,$event:l,row:t}=e;let a=c.value;e&&(e=e.getCheckboxRecords().map(e=>e[a]),x(l,e,t))},ue=e=>{z(e)};Object.assign(q,l,{});return(0,_vue.watch)(()=>h.options,()=>{g()}),(0,_vue.watch)(()=>h.columns,e=>{f(e)}),(0,_vue.watch)(()=>h.modelValue,e=>{p(e)}),f(h.columns),g(),(0,_vue.onMounted)(()=>{var e=h.gridConfig;e&&e.proxyConfig&&!1!==e.proxyConfig.autoLoad&&(S.initialized=!0),_ui.globalEvents.on(q,"mousewheel",H),_ui.globalEvents.on(q,"mousedown",J),_ui.globalEvents.on(q,"blur",Q),_ui.globalEvents.on(q,"resize",ee)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(q,"mousewheel"),_ui.globalEvents.off(q,"mousedown"),_ui.globalEvents.off(q,"blur"),_ui.globalEvents.off(q,"resize"),_xeUtils.default.assign(s,createInternalData())}),(0,_vue.nextTick)(()=>{y||(0,_log.errLog)("vxe.error.reqComp",["[table-select] vxe-grid"])}),(0,_vue.provide)("$xeTableSelect",q),q.renderVN=()=>{var{className:e,options:l,loading:t}=h,{initialized:a,isActivated:i,isAniVisible:u,visiblePanel:n,tableColumns:r}=S,o=V.value,s=U.value,v=D.value,c=P.value,d=N.value,p=j.value,f=B.value,g=O.value,_=M.value,m=C.header,b=C.footer;let x=C.prefix;p=p.className;return d?(0,_vue.h)("div",{ref:E,class:["vxe-table-select--readonly",e]},[(0,_vue.h)("span",{class:"vxe-table-select-label"},v)]):(0,_vue.h)("div",{ref:E,class:["vxe-table-select",e?_xeUtils.default.isFunction(e)?e({$tableSelect:q}):e:"",{["size--"+o]:o,"is--visible":n,"is--disabled":s,"is--loading":t,"is--active":i}]},[(0,_vue.h)(_input.default,{ref:T,clearable:h.clearable,placeholder:t?(0,_ui.getI18n)("vxe.select.loadingText"):h.placeholder,editable:!1,disabled:s,type:"text",prefixIcon:h.prefixIcon,suffixIcon:t?(0,_ui.getIcon)().TABLE_SELECT_LOADED:n?(0,_ui.getIcon)().TABLE_SELECT_OPEN:(0,_ui.getIcon)().TABLE_SELECT_CLOSE,modelValue:t?"":v,onClear:G,onClick:te,onFocus:le,onBlur:ae,onSuffixClick:A},x?{prefix:()=>x({})}:{}),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!c||!a},[(0,_vue.h)("div",{ref:I,class:["vxe-table--ignore-clear vxe-table-select--panel",p?_xeUtils.default.isFunction(p)?p({$tableSelect:q}):p:"",{["size--"+o]:o,"is--transfer":c,"ani--leave":!t&&u,"ani--enter":!t&&n}],placement:S.panelPlacement,style:S.panelStyle},a?[(0,_vue.h)("div",{class:"vxe-table-select--panel-wrapper"},[m?(0,_vue.h)("div",{class:"vxe-table-select--panel-header"},m({})):(0,_ui.renderEmptyElement)(q),(0,_vue.h)("div",{class:"vxe-table-select--panel-body"},[(0,_vue.h)("div",{ref:L,class:"vxe-table-select-grid--wrapper",style:_},[y?(0,_vue.h)(y,Object.assign(Object.assign(Object.assign({},f),R),{class:"vxe-table-select--grid",ref:w,rowConfig:g,data:l,columns:r.length?r:f.columns,height:"100%",autoResize:!0,onRadioChange:ie,onCheckboxChange:z,onCheckboxAll:ue}),Object.assign({},C,{header:void 0,footer:void 0,prefixSlot:void 0})):(0,_ui.renderEmptyElement)(q)])]),b?(0,_vue.h)("div",{class:"vxe-table-select--panel-footer"},b({})):(0,_ui.renderEmptyElement)(q)])]:[])])])},q},render(){return this.renderVN()}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.getRowUniqueId=getRowUniqueId;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log"),_input=_interopRequireDefault(require("../../input/src/input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let errLog=(0,_log.createComponentLog)("table-select").errLog;function getRowUniqueId(){return _xeUtils.default.uniqueId("row_")}function createReactData(){return{initialized:!1,tableColumns:[],fullOptionList:[],panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1}}function createInternalData(){return{fullRowMaps:{}}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableSelect",props:{modelValue:[String,Number,Array],clearable:{type:Boolean,default:(0,_ui.getConfig)().tableSelect.clearable},placeholder:{type:String,default:()=>_xeUtils.default.eqNull((0,_ui.getConfig)().tableSelect.placeholder)?(0,_ui.getI18n)("vxe.base.pleaseSelect"):(0,_ui.getConfig)().tableSelect.placeholder},readonly:{type:Boolean,default:null},loading:Boolean,disabled:{type:Boolean,default:null},multiple:Boolean,className:[String,Function],prefixIcon:String,placement:String,columns:Array,options:Array,optionProps:Object,lazyOptions:Array,zIndex:Number,size:{type:String,default:()=>(0,_ui.getConfig)().tableSelect.size||(0,_ui.getConfig)().size},popupConfig:Object,gridConfig:Object,transfer:{type:Boolean,default:null}},emits:["update:modelValue","change","clear","blur","focus","click","form-submit","form-reset","form-collapse","page-change"],setup(h,e){let{emit:a,slots:C}=e,y=_ui.VxeUI.getComponent("vxe-grid"),l=(0,_vue.inject)("$xeModal",null),i=(0,_vue.inject)("$xeDrawer",null),L=(0,_vue.inject)("$xeTable",null),u=(0,_vue.inject)("$xeForm",null),n=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let $=(0,_ui.useSize)(h).computeSize,E=(0,_vue.ref)(),T=(0,_vue.ref)(),V=(0,_vue.ref)(),I=(0,_vue.ref)(),w=(0,_vue.ref)(),S=(0,_vue.reactive)(createReactData()),s=createInternalData(),k={refElem:E},D=(0,_vue.computed)(()=>{var e=h.readonly;return null===e?!!u&&u.props.readonly:e}),U=(0,_vue.computed)(()=>{var e=h.disabled;return null===e?!!u&&u.props.disabled:e}),P=(0,_vue.computed)(()=>{var e=h.transfer,t=O.value;if(_xeUtils.default.isBoolean(t.transfer))return t.transfer;if(null===e){t=(0,_ui.getConfig)().tableSelect.transfer;if(_xeUtils.default.isBoolean(t))return t;if(L||l||i||u)return!0}return e}),r=(0,_vue.computed)(()=>h.optionProps||{}),R=(0,_vue.computed)(()=>{var e=d.value;return Object.assign({},e.rowConfig,{isCurrent:!0})}),v=(0,_vue.computed)(()=>R.value.keyField||"_X_ROW_KEY"),N=(0,_vue.computed)(()=>r.value.label||"label"),c=(0,_vue.computed)(()=>r.value.value||"value"),O=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tableSelect.popupConfig,h.popupConfig)),d=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tableSelect.gridConfig,h.gridConfig,{data:void 0})),F=(0,_vue.computed)(()=>{var e=d.value;let{pagerConfig:i,proxyConfig:t}=e;if(t){var a=t.ajax;if(a&&a.query){var u=_xeUtils.default.clone(t,!0);let l=a.query;if(l){let a=t.response||t.props||{};Object.assign(u.ajax,{query(e,...t){return Promise.resolve(l(e,...t)).then(e=>{let t=[];var l;return t=i?(l=a.result,(_xeUtils.default.isFunction(l)?l({data:e,$table:null,$grid:null,$gantt:null}):_xeUtils.default.get(e,l||"result"))||[]):((l=a.list)?_xeUtils.default.isFunction(l)?l({data:e,$table:null,$grid:null,$gantt:null}):_xeUtils.default.get(e,l):e)||[],g(t||[]),e})}})}return Object.assign({},e,{proxyConfig:u})}}return e}),B=(0,_vue.computed)(()=>{let{modelValue:e,lazyOptions:l}=h;var t=S.fullOptionList;let a=s.fullRowMaps,i=c.value,u=N.value;return t?(_xeUtils.default.isArray(e)?e:[e]).map(t=>{var e=a[t];if(e)return e.item[u];if(l){e=l.find(e=>e[i]===t);if(e)return e[u]}return t}).join(", "):""}),M=(0,_vue.computed)(()=>{var{height:e,width:t}=O.value,l={};return t&&(l.width=(0,_dom.toCssUnit)(t)),e&&(l.height=(0,_dom.toCssUnit)(e)),l}),K={},j={xID:t,props:h,context:e,reactData:S,getRefMaps:()=>k,getComputeMaps:()=>K};let q={},o=(["form-submit","form-reset","form-collapse","page-change"].forEach(t=>{q[(0,_vn.getOnName)(_xeUtils.default.camelCase(t))]=e=>{o(t,e,e.$event)}}),(e,t,l)=>{a(e,(0,_ui.createEvent)(l,{$tableSelect:j},t))}),Z=e=>{a("update:modelValue",e)};t={dispatchEvent:o};let W=e=>{let t=s.fullRowMaps,l=[];return(_xeUtils.default.eqNull(e)?[]:_xeUtils.default.isArray(e)?e:[e]).forEach(e=>{e=t[e];e&&l.push(e.item)}),l},p=l=>{let a=h.multiple;(0,_vue.nextTick)(()=>{var e,t=w.value;t&&(e=W(l)).length&&(a?t.setCheckboxRow(e,!0):t.setRadioRow(e[0]))})},f=e=>{if(e&&e.length){var i=h.multiple;let t=[],l=!1,a=!1;e.forEach(e=>{l||"radio"!==e.type?a||"checkbox"!==e.type||(a=!0):l=!0,t.push(e)}),i?a||t.unshift({type:"checkbox",width:70}):l||t.unshift({type:"radio",width:70}),S.tableColumns=t}},g=e=>{var t=h.options;let u=v.value,n=c.value;var{treeConfig:l,pagerConfig:a}=d.value;let r={},o={};l||_xeUtils.default.arrayEach(e||t||[],(e,t,l)=>{let a=(e=>{e=e[v.value];return e?encodeURIComponent(e):""})(e);a=a||getRowUniqueId(),o[a]&&errLog("vxe.error.repeatKey",[u,a]),o[a]=!0;var i=e[n];r[i]&&errLog("vxe.error.repeatKey",[n,i]),r[i]={item:e,index:t,items:l,parent:null,nodes:[]}}),S.fullOptionList=e||t||[],s.fullRowMaps=a?Object.assign({},s.fullRowMaps,r):r,p(h.modelValue)},X=()=>{var e=O.value.zIndex||h.zIndex;e?S.panelIndex=_xeUtils.default.toNumber(e):S.panelIndex<(0,_utils.getLastZIndex)()&&(S.panelIndex=(0,_utils.nextZIndex)())},_=()=>{let l=h.placement,a=S.panelIndex,i=E.value,u=I.value,n=P.value,r=O.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(i,u,{placement:r.placement||l,defaultPlacement:r.defaultPlacement,teleportTo:n}),t=Object.assign(e.style,{zIndex:a});S.panelStyle=t,S.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},m=()=>{var e=h.loading,t=U.value;e||t||(s.vpTimeout&&clearTimeout(s.vpTimeout),s.hpTimeout&&clearTimeout(s.hpTimeout),S.initialized||(S.initialized=!0),S.isActivated=!0,S.isAniVisible=!0,s.vpTimeout=setTimeout(()=>{S.visiblePanel=!0,p(h.modelValue),s.vpTimeout=void 0,_()},10),X(),_())},b=()=>{S.visiblePanel=!1,s.vpTimeout&&clearTimeout(s.vpTimeout),s.hpTimeout&&clearTimeout(s.hpTimeout),s.hpTimeout=setTimeout(()=>{S.isAniVisible=!1,s.hpTimeout=void 0},350)},x=(e,t,l)=>{Z(t),t!==h.modelValue&&(o("change",{value:t,row:l,option:l},e),u)&&n&&u.triggerItemEvent(e,n.itemConfig.field,t)},Y=(e,t)=>{x(e,t,null),o("clear",{value:t},e)},G=(e,t)=>{var l=w.value;l&&(l.clearRadioRow(),l.clearCheckboxRow()),Y(t,null),b()},H=e=>{var t=S.visiblePanel;U.value||t&&(t=I.value,((0,_dom.getEventTargetNode)(e,t).flag?_:b)())},J=e=>{var t,l,a=S.visiblePanel;U.value||(t=E.value,l=I.value,S.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,l).flag,a&&!S.isActivated&&b())},Q=()=>{var{visiblePanel:e,isActivated:t}=S;e&&b(),t&&(S.isActivated=!1),(e||t)&&(e=T.value)&&e.blur()},ee=()=>{var e=S.visiblePanel;e&&_()},te=e=>{U.value||S.visiblePanel||(S.triggerFocusPanel=!0,m(),setTimeout(()=>{S.triggerFocusPanel=!1},150)),o("focus",{},e)},le=e=>{A(e),o("click",{},e)},ae=e=>{S.isActivated=!1,o("blur",{},e)},A=e=>{e=e.$event;e.preventDefault(),S.triggerFocusPanel?S.triggerFocusPanel=!1:(S.visiblePanel?b:m)()},ie=e=>{var{$event:e,row:t}=e,l=t[c.value];x(e,l,t),b()},z=e=>{var{$grid:e,$event:t,row:l}=e;let a=c.value;e&&(e=e.getCheckboxRecords().map(e=>e[a]),x(t,e,l))},ue=e=>{z(e)};Object.assign(j,t,{});return(0,_vue.watch)(()=>h.options,()=>{g()}),(0,_vue.watch)(()=>h.columns,e=>{f(e)}),(0,_vue.watch)(()=>h.modelValue,e=>{p(e)}),f(h.columns),g(),(0,_vue.onMounted)(()=>{var e=h.gridConfig;e&&e.proxyConfig&&!1!==e.proxyConfig.autoLoad&&(S.initialized=!0),_ui.globalEvents.on(j,"mousewheel",H),_ui.globalEvents.on(j,"mousedown",J),_ui.globalEvents.on(j,"blur",Q),_ui.globalEvents.on(j,"resize",ee)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(j,"mousewheel"),_ui.globalEvents.off(j,"mousedown"),_ui.globalEvents.off(j,"blur"),_ui.globalEvents.off(j,"resize"),_xeUtils.default.assign(S,createReactData()),_xeUtils.default.assign(s,createInternalData())}),(0,_vue.nextTick)(()=>{y||errLog("vxe.error.reqComp",["vxe-grid"])}),(0,_vue.provide)("$xeTableSelect",j),j.renderVN=()=>{var{className:e,options:t,loading:l}=h,{initialized:a,isActivated:i,isAniVisible:u,visiblePanel:n,tableColumns:r}=S,o=$.value,s=U.value,v=B.value,c=P.value,d=D.value,p=O.value,f=F.value,g=R.value,_=M.value,m=C.header,b=C.footer;let x=C.prefix;p=p.className;return d?(0,_vue.h)("div",{ref:E,class:["vxe-table-select--readonly",e]},[(0,_vue.h)("span",{class:"vxe-table-select-label"},v)]):(0,_vue.h)("div",{ref:E,class:["vxe-table-select",e?_xeUtils.default.isFunction(e)?e({$tableSelect:j}):e:"",{["size--"+o]:o,"is--visible":n,"is--disabled":s,"is--loading":l,"is--active":i}]},[(0,_vue.h)(_input.default,{ref:T,clearable:h.clearable,placeholder:l?(0,_ui.getI18n)("vxe.select.loadingText"):h.placeholder,editable:!1,disabled:s,type:"text",prefixIcon:h.prefixIcon,suffixIcon:l?(0,_ui.getIcon)().TABLE_SELECT_LOADED:n?(0,_ui.getIcon)().TABLE_SELECT_OPEN:(0,_ui.getIcon)().TABLE_SELECT_CLOSE,modelValue:l?"":v,onClear:G,onClick:le,onFocus:te,onBlur:ae,onSuffixClick:A},x?{prefix:()=>x({})}:{}),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!c||!a},[(0,_vue.h)("div",{ref:I,class:["vxe-table--ignore-clear vxe-table-select--panel",p?_xeUtils.default.isFunction(p)?p({$tableSelect:j}):p:"",{["size--"+o]:o,"is--transfer":c,"ani--leave":!l&&u,"ani--enter":!l&&n}],placement:S.panelPlacement,style:S.panelStyle},a?[(0,_vue.h)("div",{class:"vxe-table-select--panel-wrapper"},[m?(0,_vue.h)("div",{class:"vxe-table-select--panel-header"},m({})):(0,_ui.renderEmptyElement)(j),(0,_vue.h)("div",{class:"vxe-table-select--panel-body"},[(0,_vue.h)("div",{ref:V,class:"vxe-table-select-grid--wrapper",style:_},[y?(0,_vue.h)(y,Object.assign(Object.assign(Object.assign({},f),q),{class:"vxe-table-select--grid",ref:w,rowConfig:g,data:t,columns:r.length?r:f.columns,height:"100%",autoResize:!0,onRadioChange:ie,onCheckboxChange:z,onCheckboxAll:ue}),Object.assign({},C,{header:void 0,footer:void 0,prefixSlot:void 0})):(0,_ui.renderEmptyElement)(j)])]),b?(0,_vue.h)("div",{class:"vxe-table-select--panel-footer"},b({})):(0,_ui.renderEmptyElement)(j)])]:[])])])},j},render(){return this.renderVN()}});
@@ -14,6 +14,10 @@ var _log = require("../../ui/src/log");
14
14
  var _xeUtils = _interopRequireDefault(require("xe-utils"));
15
15
  var _loading = _interopRequireDefault(require("../../loading/src/loading"));
16
16
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
+ const {
18
+ warnLog,
19
+ errLog
20
+ } = (0, _log.createComponentLog)('tabs');
17
21
  const scrollbarOffsetSize = 20;
18
22
  var _default = exports.default = (0, _comp.defineVxeComponent)({
19
23
  name: 'VxeTabs',
@@ -448,7 +452,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
448
452
  cacheItem.loading = false;
449
453
  });
450
454
  } else {
451
- (0, _log.errLog)('vxe.error.notFunc', ['refresh-config.queryMethod']);
455
+ errLog('vxe.error.notFunc', ['refresh-config.queryMethod']);
452
456
  }
453
457
  }
454
458
  };
@@ -665,11 +669,11 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
665
669
  return handlePrevNext(true);
666
670
  },
667
671
  prevTab() {
668
- (0, _log.warnLog)('vxe.error.delFunc', ['[tabs] prevTab', 'prev']);
672
+ warnLog('vxe.error.delFunc', ['prevTab', 'prev']);
669
673
  return tabsMethods.prev();
670
674
  },
671
675
  nextTab() {
672
- (0, _log.warnLog)('vxe.error.delFunc', ['[tabs] nextTab', 'next']);
676
+ warnLog('vxe.error.delFunc', ['nextTab', 'next']);
673
677
  return tabsMethods.next();
674
678
  }
675
679
  };
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_ui=require("../../ui"),_vn=require("../../ui/src/vn"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils")),_loading=_interopRequireDefault(require("../../loading/src/loading"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let scrollbarOffsetSize=20;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTabs",props:{modelValue:[String,Number,Boolean],options:Array,width:[String,Number],height:[String,Number],destroyOnClose:{type:Boolean,default:()=>(0,_ui.getConfig)().tabs.destroyOnClose},titleWidth:[String,Number],titleAlign:[String,Number],type:{type:String,default:()=>(0,_ui.getConfig)().tabs.type},position:{type:String,default:()=>(0,_ui.getConfig)().tabs.position},showClose:Boolean,showBody:{type:Boolean,default:!0},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().tabs.padding},trigger:String,beforeChangeMethod:Function,closeConfig:Object,refreshConfig:Object,size:{type:String,default:()=>(0,_ui.getConfig)().tabs.size||(0,_ui.getConfig)().size},beforeCloseMethod:Function},emits:["update:modelValue","change","tab-change","tab-change-fail","tab-close","tab-close-fail","tab-click","tab-load"],setup(c,e){let{slots:w,emit:i}=e;var E=_xeUtils.default.uniqueId();let t=(0,_vue.inject)("$xeTabs",null),h=(0,_ui.useSize)(c).computeSize,d=(0,_vue.ref)(),S=(0,_vue.ref)(),u=(0,_vue.ref)(),v=(0,_vue.ref)(),O=(0,_vue.reactive)({staticTabs:[],activeName:null,initNames:[],lintLeft:0,lintTop:0,lintWidth:0,lintHeight:0,scrollbarWidth:0,scrollbarHeight:0,isTabOver:!1,resizeFlag:1,cacheTabMaps:{}}),m={slTimeout:void 0},M={refElem:d},B=(0,_vue.computed)(()=>{var e=c.type;return e||"default"}),z=(0,_vue.computed)(()=>{var e=c.position;return e||"top"}),L=(0,_vue.computed)(()=>{var e=z.value;return"left"===e||"right"===e}),q=(0,_vue.computed)(()=>{var{lintLeft:e,lintTop:t,lintWidth:a,lintHeight:i}=O;return L.value?{top:t+"px",height:i+"px"}:{left:e+"px",width:a+"px"}}),U=(0,_vue.computed)(()=>{var{width:e,height:t}=c,a={};return e&&(a.width=(0,_dom.toCssUnit)(e)),t&&(a.height="auto"===t?"100%":(0,_dom.toCssUnit)(t)),a}),W=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tabs.closeConfig,c.closeConfig)),H=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tabs.refreshConfig,c.refreshConfig)),g=(0,_vue.computed)(()=>{var e=c.options;return(e||[]).filter(e=>a(e))}),b=(0,_vue.computed)(()=>{var e=O.staticTabs;return e.filter(e=>a(e))});var I=(0,_vue.computed)(()=>t?t.reactData.resizeFlag:null);let V={},A={xID:E,props:c,context:e,reactData:O,getRefMaps:()=>M,getComputeMaps:()=>V},a=e=>{e=e.permissionCode;return!(e&&!_ui.permission.checkVisible(e))},k=(e,t)=>e&&(_xeUtils.default.isString(e)&&(e=w[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[],F=()=>{var e,t,a,i,l,s=L.value,r=S.value,n=u.value,o=v.value;r&&({scrollLeft:r,scrollTop:e,clientWidth:t,clientHeight:a,scrollWidth:i,scrollHeight:l}=r,n&&(0<(s?e:r)?(0,_dom.addClass):(0,_dom.removeClass))(n,"scrolling--middle"),o)&&((s?a<l-Math.ceil(e):t<i-Math.ceil(r))?(0,_dom.addClass):(0,_dom.removeClass))(o,"scrolling--middle")},p=()=>{var e=()=>{let t=O.activeName;var e,a,i,l,s,r=B.value,n=g.value,o=b.value,u=S.value,v=L.value;let d=0,c=0,h=0,m=0,p=0,f=0,_=!1;u&&(o=_xeUtils.default.findIndexOf(o.length?o:n,e=>e.name===t),{children:n,offsetWidth:u,scrollWidth:e,offsetHeight:i,scrollHeight:l,clientWidth:a,clientHeight:s}=u,p=u-a,f=i-s,v?(_=l!==s,-1<o&&(u=n[o])&&(i=u.clientHeight,v=u.clientWidth,m="card"===r?(d=v,c=i,u.offsetTop):"border-card"===r?(d=v,c=i,u.offsetTop-1):(c=Math.max(4,Math.floor(.6*i)),u.offsetTop+Math.floor((i-c)/2)))):(_=e!==a,-1<o&&(l=n[o])&&(s=l.clientWidth,h="card"===r?(d=s+1,l.offsetLeft):"border-card"===r?(d=s,l.offsetLeft-1):(d=Math.max(4,Math.floor(.6*s)),l.offsetLeft+Math.floor((s-d)/2))))),O.scrollbarWidth=p,O.scrollbarHeight=f,O.lintLeft=h,O.lintTop=m,O.lintWidth=d,O.lintHeight=c,O.isTabOver=_,F()};e(),(0,_vue.nextTick)(e)},f=(e,t,a)=>{i(e,(0,_ui.createEvent)(a,{$tabs:A},t))},n=e=>{i("update:modelValue",e)},o=(e,t)=>{var a=O.initNames;return!(!e||a.includes(e)||(f("tab-load",{name:e},t),a.push(e),0))},l=e=>{let i=null,l={};if(e&&e.length){let a=!1;i=c.modelValue,e.forEach(e=>{var{name:e,preload:t}=e||{};e&&(l[""+e]={loading:!1},i===e&&(a=!0),t)&&o(e,null)}),a||(i=e[0].name,o(i,null),n(i))}O.activeName=i,O.cacheTabMaps=l},R=(t,a)=>{var e=c.trigger,i=c.beforeChangeMethod||(0,_ui.getConfig)().tabs.beforeChangeMethod;let l=O.activeName,s=a.name,r=s;f("tab-click",{name:s},t),"manual"!==e&&s!==l&&Promise.resolve(!i||i({$tabs:A,name:s,oldName:l,newName:s,option:a})).then(e=>{e?(O.activeName=s,n(r),o(s,t),f("change",{value:r,name:s,oldName:l,newName:s,option:a},t),f("tab-change",{value:r,name:s,oldName:l,newName:s,option:a},t)):f("tab-change-fail",{value:r,name:s,oldName:l,newName:s,option:a},t)}).catch(()=>{f("tab-change-fail",{value:r,name:s,oldName:l,newName:s,option:a},t)})},P=(e,t)=>{e.stopPropagation();var{activeName:e,cacheTabMaps:a}=O,i=t.name,l=H.value.queryMethod;let s=i?a[""+i]:null;s&&(l?s.loading||(s.loading=!0,Promise.resolve(l({$tabs:A,value:e,name:i,option:t})).finally(()=>{s.loading=!1})):(0,_log.errLog)("vxe.error.notFunc",["refresh-config.queryMethod"]))},$=(t,e,a,i)=>{t.stopPropagation();var l=O.activeName,s=W.value.beforeMethod||c.beforeCloseMethod||(0,_ui.getConfig)().tabs.beforeCloseMethod;let r=e.name,n=l,o=n;l===r&&(l=a<i.length-1?i[a+1]:i[a-1],o=l?l.name:null),Promise.resolve(!s||s({$tabs:A,value:n,name:r,nextName:o,option:e})).then(e=>{e?f("tab-close",{value:n,name:r,nextName:o},t):f("tab-close-fail",{value:n,name:r,nextName:o},t)}).catch(()=>{f("tab-close-fail",{value:n,name:r,nextName:o},t)})},j=(n,e)=>{var t=m.slTimeout;let o=L.value,u=o?0:e,v=o?e:0,d=6,c=35,h=(t&&(clearTimeout(t),m.slTimeout=void 0),()=>{var e,t,a,i,l,s,r=S.value;0<d&&(d--,r)&&({clientWidth:e,clientHeight:t,scrollWidth:a,scrollHeight:i,scrollLeft:l,scrollTop:s}=r,o?(v=Math.floor(v/2),0<n?t+s<i&&(r.scrollTop+=v,c-=4,m.slTimeout=setTimeout(h,c)):0<s&&(r.scrollTop-=v,c-=4,m.slTimeout=setTimeout(h,c))):(u=Math.floor(u/2),0<n?e+l<a&&(r.scrollLeft+=u,c-=4,m.slTimeout=setTimeout(h,c)):0<l&&(r.scrollLeft-=u,c-=4,m.slTimeout=setTimeout(h,c))),p())});h()},s=e=>{var t,a=L.value,i=S.value;i&&({clientWidth:i,clientHeight:t}=i,a=Math.floor(.75*(a?t:i)),j(e,a))},D=()=>{s(-1)},G=()=>{s(1)},r=n=>{let o=g.value,u=b.value,v=L.value;return(0,_vue.nextTick)().then(()=>{var e,t,a,i,l,s,r=S.value;r&&(-1<(i=_xeUtils.default.findIndexOf(u.length?u:o,e=>e.name===n))&&({scrollLeft:e,scrollTop:s,clientWidth:t,clientHeight:l,children:a}=r,a=a[i])&&(v?(0<(l=(i=a.offsetTop)+a.clientHeight-(s+l))&&(r.scrollTop+=l),i<s&&(r.scrollTop=i)):(0<(s=(l=a.offsetLeft)+a.clientWidth-(e+t))&&(r.scrollLeft+=s),l<e&&(r.scrollLeft=l))),p())})},_=t=>{let a=O.activeName;var i=g.value,l=b.value,l=l.length?l:i,i=_xeUtils.default.findIndexOf(l,e=>e.name===a);if(-1<i){let e=null;t?i<l.length-1&&(e=l[i+1]):0<i&&(e=l[i-1]),e&&(l=t=e.name,O.activeName=t,n(l),o(t,null))}return(0,_vue.nextTick)()},x={dispatchEvent:f,scrollToTab:r,prev(){return _(!1)},next(){return _(!0)},prevTab(){return(0,_log.warnLog)("vxe.error.delFunc",["[tabs] prevTab","prev"]),x.prev()},nextTab(){return(0,_log.warnLog)("vxe.error.delFunc",["[tabs] nextTab","next"]),x.next()}};Object.assign(A,x,{});let T=h=>{let{titleWidth:m,titleAlign:p,showClose:f,closeConfig:_,refreshConfig:g}=c,{activeName:b,scrollbarWidth:e,scrollbarHeight:t,isTabOver:a,cacheTabMaps:x}=O,T=B.value,y=z.value;var i=L.value,l=q.value,s=w.tabPrefix||w["tab-prefix"]||w.prefix,r=w.tabSuffix||w["tab-suffix"]||w.suffix||w.extra;let C=W.value,N=C.visibleMethod,E=H.value,M=E.visibleMethod;return(0,_vue.h)("div",{key:"th",class:["vxe-tabs-header","type--"+T,"pos--"+y]},[s?(0,_vue.h)("div",{class:["vxe-tabs-header--prefix","type--"+T,"pos--"+y]},k(s,{name:b})):(0,_ui.renderEmptyElement)(A),a?(0,_vue.h)("div",{ref:u,class:["vxe-tabs-header--bar vxe-tabs-header--prev-bar","type--"+T,"pos--"+y],onClick:D},[(0,_vue.h)("span",{class:i?(0,_ui.getIcon)().TABS_TAB_BUTTON_TOP:(0,_ui.getIcon)().TABS_TAB_BUTTON_LEFT})]):(0,_ui.renderEmptyElement)(A),(0,_vue.h)("div",{class:["vxe-tabs-header--wrapper","type--"+T,"pos--"+y]},[(0,_vue.h)("div",{ref:S,class:"vxe-tabs-header--item-wrapper",style:i?{marginRight:`-${e+scrollbarOffsetSize}px`,paddingRight:scrollbarOffsetSize+"px"}:{marginBottom:`-${t+scrollbarOffsetSize}px`,paddingBottom:scrollbarOffsetSize+"px"},onScroll:F},h.map((t,a)=>{var{title:e,titleWidth:i,titleAlign:l,icon:s,name:r}=t,n=t.slots||{},o=n.title||n.tab,u=n.titlePrefix||n["title-prefix"],n=n.titleSuffix||n["title-suffix"],i=i||m,l=l||p,v={$tabs:A,value:b,name:r,option:t},d=b===r,c=r?x[""+r]:null,c=!!c&&c.loading;return(0,_vue.h)("div",{key:""+r,class:["vxe-tabs-header--item","type--"+T,"pos--"+y,l?"align--"+l:"",{"is--active":d}],style:i?{width:(0,_dom.toCssUnit)(i)}:void 0,onClick(e){R(e,t)}},[(0,_vue.h)("div",{class:"vxe-tabs-header--item-inner"},[(0,_vue.h)("div",{class:"vxe-tabs-header--item-content"},[s?(0,_vue.h)("span",{class:"vxe-tabs-header--item-icon"},[(0,_vue.h)("i",{class:s})]):(0,_ui.renderEmptyElement)(A),u?(0,_vue.h)("span",{class:"vxe-tabs-header--item-prefix"},k(u,{name:r,title:e})):(0,_ui.renderEmptyElement)(A),(0,_vue.h)("span",{class:"vxe-tabs-header--item-name"},o?k(o,{name:r,title:e}):""+e),n?(0,_vue.h)("span",{class:"vxe-tabs-header--item-suffix"},k(n,{name:r,title:e})):(0,_ui.renderEmptyElement)(A)]),!(0,_utils.isEnableConf)(g)&&!E.enabled||M&&!M(v)?(0,_ui.renderEmptyElement)(A):(0,_vue.h)("div",{class:["vxe-tabs-header--refresh-btn",{"is--active":d,"is--loading":c,"is--disabled":c}],onClick(e){P(e,t)}},[(0,_vue.h)("i",{class:c?(0,_ui.getIcon)().TABS_TAB_REFRESH_LOADING:(0,_ui.getIcon)().TABS_TAB_REFRESH})]),!(f||(0,_utils.isEnableConf)(_)||C.enabled)||N&&!N(v)?(0,_ui.renderEmptyElement)(A):(0,_vue.h)("div",{class:["vxe-tabs-header--close-btn",{"is--active":d}],onClick(e){$(e,t,a,h)}},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().TABS_TAB_CLOSE})])])])}).concat([(0,_vue.h)("span",{key:"line",class:["vxe-tabs-header--active-line","type--"+T,"pos--"+y],style:l})]))]),a?(0,_vue.h)("div",{ref:v,class:["vxe-tabs-header--bar vxe-tabs-header--next-bar","type--"+T,"pos--"+y],onClick:G},[(0,_vue.h)("span",{class:i?(0,_ui.getIcon)().TABS_TAB_BUTTON_BOTTOM:(0,_ui.getIcon)().TABS_TAB_BUTTON_RIGHT})]):(0,_ui.renderEmptyElement)(A),r?(0,_vue.h)("div",{class:["vxe-tabs-header--suffix","type--"+T,"pos--"+y]},k(r,{name:b})):(0,_ui.renderEmptyElement)(A)])},y=e=>{var{initNames:t,activeName:a}=O,{name:e,slots:i}=e,i=i?i.default:null;return e&&t.includes(e)?(0,_vue.h)("div",{key:""+e,class:["vxe-tabs-pane--item",{"is--visible":a===e}]},i?k(i,{name:e}):[]):(0,_ui.renderEmptyElement)(A)},J=e=>{var t=c.destroyOnClose;let a=O.activeName;return t?[(t=e.find(e=>e.name===a))?y(t):(0,_ui.renderEmptyElement)(A)]:e.map(e=>y(e))},K=e=>{var{height:t,padding:a,showBody:i}=c,{activeName:l,cacheTabMaps:s}=O,r=h.value,n=B.value,o=z.value,u=H.value.showLoading,v=w.header,d=w.footer;return i?(s=!!(s=l?s[""+l]:null)&&s.loading,l={name:l},(0,_vue.h)("div",{key:"tb",class:["vxe-tabs-pane--wrapper","type--"+n,"pos--"+o,{"is--content":i}]},[v?(0,_vue.h)("div",{class:"vxe-tabs-pane--header"},k(v,l)):(0,_ui.renderEmptyElement)(A),(0,_vue.h)("div",{class:["vxe-tabs-pane--body","type--"+n,"pos--"+o,{["size--"+r]:r,"is--padding":a,"is--height":t}]},J(e)),d?(0,_vue.h)("div",{class:"vxe-tabs-pane--footer"},k(d,l)):(0,_ui.renderEmptyElement)(A),u&&s?(0,_ui.renderEmptyElement)(A):(0,_vue.h)(_loading.default,{class:"vxe-tabs--loading",modelValue:s})])):(0,_ui.renderEmptyElement)(A)};(0,_vue.watch)(()=>c.position,()=>{O.resizeFlag++}),(0,_vue.watch)(()=>c.modelValue,e=>{o(e,null),O.activeName=e}),(0,_vue.watch)(()=>O.activeName,e=>{r(e)});let C=(0,_vue.ref)(0),N=((0,_vue.watch)(()=>c.options?c.options.length:-1,()=>{C.value++}),(0,_vue.watch)(()=>c.options,()=>{C.value++}),(0,_vue.watch)(C,()=>{l(c.options),O.resizeFlag++}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>O.staticTabs?O.staticTabs.length:-1,()=>{N.value++}),(0,_vue.watch)(()=>O.staticTabs,()=>{N.value++}),(0,_vue.watch)(N,()=>{l(O.staticTabs),O.resizeFlag++}),(0,_vue.watch)(I,()=>{O.resizeFlag++}),(0,_vue.watch)(()=>O.resizeFlag,()=>{(0,_vue.nextTick)(()=>{p()})}),(0,_vue.onMounted)(()=>{p(),_ui.globalEvents.on(A,"resize",p)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(A,"resize")}),(0,_vue.provide)("$xeTabs",A),o(c.modelValue,null),l(O.staticTabs.length?O.staticTabs:c.options),A.renderVN=()=>{var{height:e,padding:t,trigger:a}=c,i=O.activeName,l=h.value,s=g.value,r=b.value,n=B.value,o=z.value,u=U.value,v=w.default,r=v?r:s,s=[(0,_vue.h)("div",{key:"ts",class:"vxe-tabs-slots"},v?v({name:i}):[])];return"right"===o||"bottom"===o?s.push(K(r),T(r)):s.push(T(r),K(r)),(0,_vue.h)("div",{ref:d,class:["vxe-tabs","pos--"+o,"vxe-tabs--"+n,"trigger--"+("manual"===a?"trigger":"default"),{["size--"+l]:l,"is--padding":t,"is--height":e}],style:u},s)},A},render(){return this.renderVN()}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_ui=require("../../ui"),_vn=require("../../ui/src/vn"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils")),_loading=_interopRequireDefault(require("../../loading/src/loading"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("tabs"),scrollbarOffsetSize=20;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTabs",props:{modelValue:[String,Number,Boolean],options:Array,width:[String,Number],height:[String,Number],destroyOnClose:{type:Boolean,default:()=>(0,_ui.getConfig)().tabs.destroyOnClose},titleWidth:[String,Number],titleAlign:[String,Number],type:{type:String,default:()=>(0,_ui.getConfig)().tabs.type},position:{type:String,default:()=>(0,_ui.getConfig)().tabs.position},showClose:Boolean,showBody:{type:Boolean,default:!0},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().tabs.padding},trigger:String,beforeChangeMethod:Function,closeConfig:Object,refreshConfig:Object,size:{type:String,default:()=>(0,_ui.getConfig)().tabs.size||(0,_ui.getConfig)().size},beforeCloseMethod:Function},emits:["update:modelValue","change","tab-change","tab-change-fail","tab-close","tab-close-fail","tab-click","tab-load"],setup(d,e){let{slots:w,emit:i}=e;var E=_xeUtils.default.uniqueId();let t=(0,_vue.inject)("$xeTabs",null),h=(0,_ui.useSize)(d).computeSize,c=(0,_vue.ref)(),S=(0,_vue.ref)(),u=(0,_vue.ref)(),v=(0,_vue.ref)(),O=(0,_vue.reactive)({staticTabs:[],activeName:null,initNames:[],lintLeft:0,lintTop:0,lintWidth:0,lintHeight:0,scrollbarWidth:0,scrollbarHeight:0,isTabOver:!1,resizeFlag:1,cacheTabMaps:{}}),m={slTimeout:void 0},M={refElem:c},B=(0,_vue.computed)(()=>{var e=d.type;return e||"default"}),L=(0,_vue.computed)(()=>{var e=d.position;return e||"top"}),z=(0,_vue.computed)(()=>{var e=L.value;return"left"===e||"right"===e}),q=(0,_vue.computed)(()=>{var{lintLeft:e,lintTop:t,lintWidth:a,lintHeight:i}=O;return z.value?{top:t+"px",height:i+"px"}:{left:e+"px",width:a+"px"}}),U=(0,_vue.computed)(()=>{var{width:e,height:t}=d,a={};return e&&(a.width=(0,_dom.toCssUnit)(e)),t&&(a.height="auto"===t?"100%":(0,_dom.toCssUnit)(t)),a}),W=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tabs.closeConfig,d.closeConfig)),H=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tabs.refreshConfig,d.refreshConfig)),_=(0,_vue.computed)(()=>{var e=d.options;return(e||[]).filter(e=>a(e))}),b=(0,_vue.computed)(()=>{var e=O.staticTabs;return e.filter(e=>a(e))});var I=(0,_vue.computed)(()=>t?t.reactData.resizeFlag:null);let V={},A={xID:E,props:d,context:e,reactData:O,getRefMaps:()=>M,getComputeMaps:()=>V},a=e=>{e=e.permissionCode;return!(e&&!_ui.permission.checkVisible(e))},k=(e,t)=>e&&(_xeUtils.default.isString(e)&&(e=w[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[],F=()=>{var e,t,a,i,l,r=z.value,s=S.value,n=u.value,o=v.value;s&&({scrollLeft:s,scrollTop:e,clientWidth:t,clientHeight:a,scrollWidth:i,scrollHeight:l}=s,n&&(0<(r?e:s)?(0,_dom.addClass):(0,_dom.removeClass))(n,"scrolling--middle"),o)&&((r?a<l-Math.ceil(e):t<i-Math.ceil(s))?(0,_dom.addClass):(0,_dom.removeClass))(o,"scrolling--middle")},p=()=>{var e=()=>{let t=O.activeName;var e,a,i,l,r,s=B.value,n=_.value,o=b.value,u=S.value,v=z.value;let c=0,d=0,h=0,m=0,p=0,f=0,g=!1;u&&(o=_xeUtils.default.findIndexOf(o.length?o:n,e=>e.name===t),{children:n,offsetWidth:u,scrollWidth:e,offsetHeight:i,scrollHeight:l,clientWidth:a,clientHeight:r}=u,p=u-a,f=i-r,v?(g=l!==r,-1<o&&(u=n[o])&&(i=u.clientHeight,v=u.clientWidth,m="card"===s?(c=v,d=i,u.offsetTop):"border-card"===s?(c=v,d=i,u.offsetTop-1):(d=Math.max(4,Math.floor(.6*i)),u.offsetTop+Math.floor((i-d)/2)))):(g=e!==a,-1<o&&(l=n[o])&&(r=l.clientWidth,h="card"===s?(c=r+1,l.offsetLeft):"border-card"===s?(c=r,l.offsetLeft-1):(c=Math.max(4,Math.floor(.6*r)),l.offsetLeft+Math.floor((r-c)/2))))),O.scrollbarWidth=p,O.scrollbarHeight=f,O.lintLeft=h,O.lintTop=m,O.lintWidth=c,O.lintHeight=d,O.isTabOver=g,F()};e(),(0,_vue.nextTick)(e)},f=(e,t,a)=>{i(e,(0,_ui.createEvent)(a,{$tabs:A},t))},n=e=>{i("update:modelValue",e)},o=(e,t)=>{var a=O.initNames;return!(!e||a.includes(e)||(f("tab-load",{name:e},t),a.push(e),0))},l=e=>{let i=null,l={};if(e&&e.length){let a=!1;i=d.modelValue,e.forEach(e=>{var{name:e,preload:t}=e||{};e&&(l[""+e]={loading:!1},i===e&&(a=!0),t)&&o(e,null)}),a||(i=e[0].name,o(i,null),n(i))}O.activeName=i,O.cacheTabMaps=l},R=(t,a)=>{var e=d.trigger,i=d.beforeChangeMethod||(0,_ui.getConfig)().tabs.beforeChangeMethod;let l=O.activeName,r=a.name,s=r;f("tab-click",{name:r},t),"manual"!==e&&r!==l&&Promise.resolve(!i||i({$tabs:A,name:r,oldName:l,newName:r,option:a})).then(e=>{e?(O.activeName=r,n(s),o(r,t),f("change",{value:s,name:r,oldName:l,newName:r,option:a},t),f("tab-change",{value:s,name:r,oldName:l,newName:r,option:a},t)):f("tab-change-fail",{value:s,name:r,oldName:l,newName:r,option:a},t)}).catch(()=>{f("tab-change-fail",{value:s,name:r,oldName:l,newName:r,option:a},t)})},P=(e,t)=>{e.stopPropagation();var{activeName:e,cacheTabMaps:a}=O,i=t.name,l=H.value.queryMethod;let r=i?a[""+i]:null;r&&(l?r.loading||(r.loading=!0,Promise.resolve(l({$tabs:A,value:e,name:i,option:t})).finally(()=>{r.loading=!1})):errLog("vxe.error.notFunc",["refresh-config.queryMethod"]))},$=(t,e,a,i)=>{t.stopPropagation();var l=O.activeName,r=W.value.beforeMethod||d.beforeCloseMethod||(0,_ui.getConfig)().tabs.beforeCloseMethod;let s=e.name,n=l,o=n;l===s&&(l=a<i.length-1?i[a+1]:i[a-1],o=l?l.name:null),Promise.resolve(!r||r({$tabs:A,value:n,name:s,nextName:o,option:e})).then(e=>{e?f("tab-close",{value:n,name:s,nextName:o},t):f("tab-close-fail",{value:n,name:s,nextName:o},t)}).catch(()=>{f("tab-close-fail",{value:n,name:s,nextName:o},t)})},j=(n,e)=>{var t=m.slTimeout;let o=z.value,u=o?0:e,v=o?e:0,c=6,d=35,h=(t&&(clearTimeout(t),m.slTimeout=void 0),()=>{var e,t,a,i,l,r,s=S.value;0<c&&(c--,s)&&({clientWidth:e,clientHeight:t,scrollWidth:a,scrollHeight:i,scrollLeft:l,scrollTop:r}=s,o?(v=Math.floor(v/2),0<n?t+r<i&&(s.scrollTop+=v,d-=4,m.slTimeout=setTimeout(h,d)):0<r&&(s.scrollTop-=v,d-=4,m.slTimeout=setTimeout(h,d))):(u=Math.floor(u/2),0<n?e+l<a&&(s.scrollLeft+=u,d-=4,m.slTimeout=setTimeout(h,d)):0<l&&(s.scrollLeft-=u,d-=4,m.slTimeout=setTimeout(h,d))),p())});h()},r=e=>{var t,a=z.value,i=S.value;i&&({clientWidth:i,clientHeight:t}=i,a=Math.floor(.75*(a?t:i)),j(e,a))},D=()=>{r(-1)},G=()=>{r(1)},s=n=>{let o=_.value,u=b.value,v=z.value;return(0,_vue.nextTick)().then(()=>{var e,t,a,i,l,r,s=S.value;s&&(-1<(i=_xeUtils.default.findIndexOf(u.length?u:o,e=>e.name===n))&&({scrollLeft:e,scrollTop:r,clientWidth:t,clientHeight:l,children:a}=s,a=a[i])&&(v?(0<(l=(i=a.offsetTop)+a.clientHeight-(r+l))&&(s.scrollTop+=l),i<r&&(s.scrollTop=i)):(0<(r=(l=a.offsetLeft)+a.clientWidth-(e+t))&&(s.scrollLeft+=r),l<e&&(s.scrollLeft=l))),p())})},g=t=>{let a=O.activeName;var i=_.value,l=b.value,l=l.length?l:i,i=_xeUtils.default.findIndexOf(l,e=>e.name===a);if(-1<i){let e=null;t?i<l.length-1&&(e=l[i+1]):0<i&&(e=l[i-1]),e&&(l=t=e.name,O.activeName=t,n(l),o(t,null))}return(0,_vue.nextTick)()},x={dispatchEvent:f,scrollToTab:s,prev(){return g(!1)},next(){return g(!0)},prevTab(){return warnLog("vxe.error.delFunc",["prevTab","prev"]),x.prev()},nextTab(){return warnLog("vxe.error.delFunc",["nextTab","next"]),x.next()}};Object.assign(A,x,{});let T=h=>{let{titleWidth:m,titleAlign:p,showClose:f,closeConfig:g,refreshConfig:_}=d,{activeName:b,scrollbarWidth:e,scrollbarHeight:t,isTabOver:a,cacheTabMaps:x}=O,T=B.value,y=L.value;var i=z.value,l=q.value,r=w.tabPrefix||w["tab-prefix"]||w.prefix,s=w.tabSuffix||w["tab-suffix"]||w.suffix||w.extra;let C=W.value,N=C.visibleMethod,E=H.value,M=E.visibleMethod;return(0,_vue.h)("div",{key:"th",class:["vxe-tabs-header","type--"+T,"pos--"+y]},[r?(0,_vue.h)("div",{class:["vxe-tabs-header--prefix","type--"+T,"pos--"+y]},k(r,{name:b})):(0,_ui.renderEmptyElement)(A),a?(0,_vue.h)("div",{ref:u,class:["vxe-tabs-header--bar vxe-tabs-header--prev-bar","type--"+T,"pos--"+y],onClick:D},[(0,_vue.h)("span",{class:i?(0,_ui.getIcon)().TABS_TAB_BUTTON_TOP:(0,_ui.getIcon)().TABS_TAB_BUTTON_LEFT})]):(0,_ui.renderEmptyElement)(A),(0,_vue.h)("div",{class:["vxe-tabs-header--wrapper","type--"+T,"pos--"+y]},[(0,_vue.h)("div",{ref:S,class:"vxe-tabs-header--item-wrapper",style:i?{marginRight:`-${e+scrollbarOffsetSize}px`,paddingRight:scrollbarOffsetSize+"px"}:{marginBottom:`-${t+scrollbarOffsetSize}px`,paddingBottom:scrollbarOffsetSize+"px"},onScroll:F},h.map((t,a)=>{var{title:e,titleWidth:i,titleAlign:l,icon:r,name:s}=t,n=t.slots||{},o=n.title||n.tab,u=n.titlePrefix||n["title-prefix"],n=n.titleSuffix||n["title-suffix"],i=i||m,l=l||p,v={$tabs:A,value:b,name:s,option:t},c=b===s,d=s?x[""+s]:null,d=!!d&&d.loading;return(0,_vue.h)("div",{key:""+s,class:["vxe-tabs-header--item","type--"+T,"pos--"+y,l?"align--"+l:"",{"is--active":c}],style:i?{width:(0,_dom.toCssUnit)(i)}:void 0,onClick(e){R(e,t)}},[(0,_vue.h)("div",{class:"vxe-tabs-header--item-inner"},[(0,_vue.h)("div",{class:"vxe-tabs-header--item-content"},[r?(0,_vue.h)("span",{class:"vxe-tabs-header--item-icon"},[(0,_vue.h)("i",{class:r})]):(0,_ui.renderEmptyElement)(A),u?(0,_vue.h)("span",{class:"vxe-tabs-header--item-prefix"},k(u,{name:s,title:e})):(0,_ui.renderEmptyElement)(A),(0,_vue.h)("span",{class:"vxe-tabs-header--item-name"},o?k(o,{name:s,title:e}):""+e),n?(0,_vue.h)("span",{class:"vxe-tabs-header--item-suffix"},k(n,{name:s,title:e})):(0,_ui.renderEmptyElement)(A)]),!(0,_utils.isEnableConf)(_)&&!E.enabled||M&&!M(v)?(0,_ui.renderEmptyElement)(A):(0,_vue.h)("div",{class:["vxe-tabs-header--refresh-btn",{"is--active":c,"is--loading":d,"is--disabled":d}],onClick(e){P(e,t)}},[(0,_vue.h)("i",{class:d?(0,_ui.getIcon)().TABS_TAB_REFRESH_LOADING:(0,_ui.getIcon)().TABS_TAB_REFRESH})]),!(f||(0,_utils.isEnableConf)(g)||C.enabled)||N&&!N(v)?(0,_ui.renderEmptyElement)(A):(0,_vue.h)("div",{class:["vxe-tabs-header--close-btn",{"is--active":c}],onClick(e){$(e,t,a,h)}},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().TABS_TAB_CLOSE})])])])}).concat([(0,_vue.h)("span",{key:"line",class:["vxe-tabs-header--active-line","type--"+T,"pos--"+y],style:l})]))]),a?(0,_vue.h)("div",{ref:v,class:["vxe-tabs-header--bar vxe-tabs-header--next-bar","type--"+T,"pos--"+y],onClick:G},[(0,_vue.h)("span",{class:i?(0,_ui.getIcon)().TABS_TAB_BUTTON_BOTTOM:(0,_ui.getIcon)().TABS_TAB_BUTTON_RIGHT})]):(0,_ui.renderEmptyElement)(A),s?(0,_vue.h)("div",{class:["vxe-tabs-header--suffix","type--"+T,"pos--"+y]},k(s,{name:b})):(0,_ui.renderEmptyElement)(A)])},y=e=>{var{initNames:t,activeName:a}=O,{name:e,slots:i}=e,i=i?i.default:null;return e&&t.includes(e)?(0,_vue.h)("div",{key:""+e,class:["vxe-tabs-pane--item",{"is--visible":a===e}]},i?k(i,{name:e}):[]):(0,_ui.renderEmptyElement)(A)},J=e=>{var t=d.destroyOnClose;let a=O.activeName;return t?[(t=e.find(e=>e.name===a))?y(t):(0,_ui.renderEmptyElement)(A)]:e.map(e=>y(e))},K=e=>{var{height:t,padding:a,showBody:i}=d,{activeName:l,cacheTabMaps:r}=O,s=h.value,n=B.value,o=L.value,u=H.value.showLoading,v=w.header,c=w.footer;return i?(r=!!(r=l?r[""+l]:null)&&r.loading,l={name:l},(0,_vue.h)("div",{key:"tb",class:["vxe-tabs-pane--wrapper","type--"+n,"pos--"+o,{"is--content":i}]},[v?(0,_vue.h)("div",{class:"vxe-tabs-pane--header"},k(v,l)):(0,_ui.renderEmptyElement)(A),(0,_vue.h)("div",{class:["vxe-tabs-pane--body","type--"+n,"pos--"+o,{["size--"+s]:s,"is--padding":a,"is--height":t}]},J(e)),c?(0,_vue.h)("div",{class:"vxe-tabs-pane--footer"},k(c,l)):(0,_ui.renderEmptyElement)(A),u&&r?(0,_ui.renderEmptyElement)(A):(0,_vue.h)(_loading.default,{class:"vxe-tabs--loading",modelValue:r})])):(0,_ui.renderEmptyElement)(A)};(0,_vue.watch)(()=>d.position,()=>{O.resizeFlag++}),(0,_vue.watch)(()=>d.modelValue,e=>{o(e,null),O.activeName=e}),(0,_vue.watch)(()=>O.activeName,e=>{s(e)});let C=(0,_vue.ref)(0),N=((0,_vue.watch)(()=>d.options?d.options.length:-1,()=>{C.value++}),(0,_vue.watch)(()=>d.options,()=>{C.value++}),(0,_vue.watch)(C,()=>{l(d.options),O.resizeFlag++}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>O.staticTabs?O.staticTabs.length:-1,()=>{N.value++}),(0,_vue.watch)(()=>O.staticTabs,()=>{N.value++}),(0,_vue.watch)(N,()=>{l(O.staticTabs),O.resizeFlag++}),(0,_vue.watch)(I,()=>{O.resizeFlag++}),(0,_vue.watch)(()=>O.resizeFlag,()=>{(0,_vue.nextTick)(()=>{p()})}),(0,_vue.onMounted)(()=>{p(),_ui.globalEvents.on(A,"resize",p)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(A,"resize")}),(0,_vue.provide)("$xeTabs",A),o(d.modelValue,null),l(O.staticTabs.length?O.staticTabs:d.options),A.renderVN=()=>{var{height:e,padding:t,trigger:a}=d,i=O.activeName,l=h.value,r=_.value,s=b.value,n=B.value,o=L.value,u=U.value,v=w.default,s=v?s:r,r=[(0,_vue.h)("div",{key:"ts",class:"vxe-tabs-slots"},v?v({name:i}):[])];return"right"===o||"bottom"===o?r.push(K(s),T(s)):r.push(T(s),K(s)),(0,_vue.h)("div",{ref:c,class:["vxe-tabs","pos--"+o,"vxe-tabs--"+n,"trigger--"+("manual"===a?"trigger":"default"),{["size--"+l]:l,"is--padding":t,"is--height":e}],style:u},r)},A},render(){return this.renderVN()}});
@@ -11,6 +11,9 @@ var _ui = require("../../ui");
11
11
  var _utils = require("../../ui/src/utils");
12
12
  var _log = require("../../ui/src/log");
13
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ const {
15
+ warnLog
16
+ } = (0, _log.createComponentLog)('textarea');
14
17
  let autoTxtElem;
15
18
  var _default = exports.default = (0, _comp.defineVxeComponent)({
16
19
  name: 'VxeTextarea',
@@ -427,7 +430,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
427
430
  autoSize
428
431
  } = props;
429
432
  if (autosize) {
430
- (0, _log.warnLog)('vxe.error.delProp', ['autosize', 'auto-size']);
433
+ warnLog('vxe.error.delProp', ['autosize', 'auto-size']);
431
434
  }
432
435
  if (autosize || autoSize) {
433
436
  updateAutoTxt();