vxe-pc-ui 4.15.3 → 4.15.4

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 (33) hide show
  1. package/dist/all.esm.js +105 -59
  2. package/es/cascader/src/cascader.js +72 -30
  3. package/es/tree-select/src/tree-select.js +14 -18
  4. package/es/ui/index.js +4 -1
  5. package/es/ui/src/log.js +10 -6
  6. package/lib/cascader/src/cascader.js +80 -33
  7. package/lib/cascader/src/cascader.min.js +1 -1
  8. package/lib/index.umd.js +102 -46
  9. package/lib/index.umd.min.js +1 -1
  10. package/lib/tree-select/src/tree-select.js +7 -7
  11. package/lib/tree-select/src/tree-select.min.js +1 -1
  12. package/lib/ui/index.js +4 -1
  13. package/lib/ui/index.min.js +1 -1
  14. package/lib/ui/src/log.js +11 -5
  15. package/lib/ui/src/log.min.js +1 -1
  16. package/package.json +1 -1
  17. package/packages/cascader/src/cascader.ts +71 -31
  18. package/packages/tree-select/src/tree-select.ts +14 -18
  19. package/packages/ui/index.ts +3 -0
  20. package/packages/ui/src/log.ts +11 -6
  21. package/types/components/cascader.d.ts +4 -0
  22. /package/es/icon/{iconfont.1781852740683.ttf → iconfont.1781876596706.ttf} +0 -0
  23. /package/es/icon/{iconfont.1781852740683.woff → iconfont.1781876596706.woff} +0 -0
  24. /package/es/icon/{iconfont.1781852740683.woff2 → iconfont.1781876596706.woff2} +0 -0
  25. /package/es/{iconfont.1781852740683.ttf → iconfont.1781876596706.ttf} +0 -0
  26. /package/es/{iconfont.1781852740683.woff → iconfont.1781876596706.woff} +0 -0
  27. /package/es/{iconfont.1781852740683.woff2 → iconfont.1781876596706.woff2} +0 -0
  28. /package/lib/icon/style/{iconfont.1781852740683.ttf → iconfont.1781876596706.ttf} +0 -0
  29. /package/lib/icon/style/{iconfont.1781852740683.woff → iconfont.1781876596706.woff} +0 -0
  30. /package/lib/icon/style/{iconfont.1781852740683.woff2 → iconfont.1781876596706.woff2} +0 -0
  31. /package/lib/{iconfont.1781852740683.ttf → iconfont.1781876596706.ttf} +0 -0
  32. /package/lib/{iconfont.1781852740683.woff → iconfont.1781876596706.woff} +0 -0
  33. /package/lib/{iconfont.1781852740683.woff2 → iconfont.1781876596706.woff2} +0 -0
@@ -942,7 +942,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
942
942
  class: 'vxe-tree-select--panel-header'
943
943
  }, headerSlot ? headerSlot({}) : [(0, _vue.h)('div', {
944
944
  class: 'vxe-tree-select--header-button'
945
- }, [showCheckedButton && showClearButton ? (0, _vue.h)('div', {
945
+ }, [showCheckedButton && multiple || showClearButton ? (0, _vue.h)('div', {
946
946
  class: 'vxe-tree-select--selected-btns'
947
947
  }, [showCheckedButton && multiple ? (0, _vue.h)(_button.default, {
948
948
  content: (0, _ui.getI18n)('vxe.treeSelect.allChecked'),
@@ -952,17 +952,17 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
952
952
  content: (0, _ui.getI18n)('vxe.treeSelect.clearChecked'),
953
953
  mode: 'text',
954
954
  onClick: clearCheckedPanelEvent
955
- }) : (0, _ui.renderEmptyElement)($xeTreeSelect)]) : (0, _ui.renderEmptyElement)($xeTreeSelect), showExpandButton && showExpandButton ? (0, _vue.h)('div', {
955
+ }) : (0, _ui.renderEmptyElement)($xeTreeSelect)]) : (0, _ui.renderEmptyElement)($xeTreeSelect), showExpandButton ? (0, _vue.h)('div', {
956
956
  class: 'vxe-tree-select--expand-btns'
957
- }, [showExpandButton ? (0, _vue.h)(_button.default, {
957
+ }, [(0, _vue.h)(_button.default, {
958
958
  content: (0, _ui.getI18n)('vxe.treeSelect.allExpand'),
959
959
  mode: 'text',
960
960
  onClick: allExpandPanelEvent
961
- }) : (0, _ui.renderEmptyElement)($xeTreeSelect), showExpandButton ? (0, _vue.h)(_button.default, {
961
+ }), (0, _vue.h)(_button.default, {
962
962
  content: (0, _ui.getI18n)('vxe.treeSelect.clearExpand'),
963
963
  mode: 'text',
964
964
  onClick: clearExpandPanelEvent
965
- }) : (0, _ui.renderEmptyElement)($xeTreeSelect)]) : (0, _ui.renderEmptyElement)($xeTreeSelect)])]) : (0, _ui.renderEmptyElement)($xeTreeSelect), (0, _vue.h)('div', {
965
+ })]) : (0, _ui.renderEmptyElement)($xeTreeSelect)])]) : (0, _ui.renderEmptyElement)($xeTreeSelect), (0, _vue.h)('div', {
966
966
  class: 'vxe-tree-select--panel-body'
967
967
  }, [(0, _vue.h)('div', {
968
968
  ref: refTreeWrapper,
@@ -1014,13 +1014,13 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1014
1014
  onRadioChange: radioChangeEvent,
1015
1015
  onCheckboxChange: checkboxChangeEvent,
1016
1016
  onLoadSuccess: loadSuccessEvent
1017
- }, treeScopedSlots)])]), footerSlot || showTotalButton || showCloseButton && multiple ? (0, _vue.h)('div', {
1017
+ }, treeScopedSlots)])]), footerSlot || showTotalButton || showCloseButton ? (0, _vue.h)('div', {
1018
1018
  class: 'vxe-tree-select--panel-footer'
1019
1019
  }, footerSlot ? footerSlot({}) : [(0, _vue.h)('div', {
1020
1020
  class: 'vxe-tree-select--footer-button'
1021
1021
  }, [showTotalButton ? (0, _vue.h)('div', {
1022
1022
  class: 'vxe-tree-select--total-btns'
1023
- }, (0, _ui.getI18n)('vxe.treeSelect.total', [selectVals.length])) : (0, _ui.renderEmptyElement)($xeTreeSelect), showCloseButton && multiple ? (0, _vue.h)('div', {
1023
+ }, (0, _ui.getI18n)('vxe.treeSelect.total', [selectVals.length])) : (0, _ui.renderEmptyElement)($xeTreeSelect), showCloseButton ? (0, _vue.h)('div', {
1024
1024
  class: 'vxe-tree-select--oper-btns'
1025
1025
  }, [(0, _vue.h)(_button.default, {
1026
1026
  content: (0, _ui.getI18n)('vxe.select.close'),
@@ -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"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_util=require("../../tree/src/util"),_log=require("../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils")),_input=_interopRequireDefault(require("../../input")),_button=_interopRequireDefault(require("../../button")),_tree=_interopRequireDefault(require("../../tree")),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("tree-select");function getOptUniqueId(){return _xeUtils.default.uniqueId("node_")}function createReactData(){return{initialized:!1,searchValue:"",searchLoading:!1,panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1,fullOptFlag:1,lazyOptFlag:1}}function createInternalData(){return{fullOptionList:[],fullNodeMaps:{},lazyNodeMaps:{}}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTreeSelect",props:{modelValue:[String,Number,Array],clearable:{type:Boolean,default:(0,_ui.getConfig)().treeSelect.clearable},placeholder:{type:String,default:()=>_xeUtils.default.eqNull((0,_ui.getConfig)().treeSelect.placeholder)?(0,_ui.getI18n)("vxe.base.pleaseSelect"):(0,_ui.getConfig)().treeSelect.placeholder},readonly:{type:Boolean,default:null},loading:Boolean,disabled:{type:Boolean,default:null},showFullLabel:{type:Boolean,default:(0,_ui.getConfig)().treeSelect.showFullLabel},separator:{type:String,default:(0,_ui.getConfig)().treeSelect.separator},filterable:Boolean,filterConfig:Object,multiple:Boolean,className:[String,Function],popupClassName:[String,Function],prefixIcon:String,placement:String,lazyOptions:Array,options:Array,optionProps:Object,zIndex:Number,size:{type:String,default:()=>(0,_ui.getConfig)().treeSelect.size||(0,_ui.getConfig)().size},remote:Boolean,remoteConfig:Function,showRadio:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showRadio},showCheckbox:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showCheckbox},popupConfig:Object,treeConfig:Object,menuConfig:Object,virtualYConfig:Object,autoClose:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.autoClose},checkedClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.checkedClosable},clearClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.clearClosable},showCloseButton:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showCloseButton},showTotalButton:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showTotalButton},showCheckedButton:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showCheckedButton},showClearButton:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showClearButton},showExpandButton:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showExpandButton},transfer:{type:Boolean,default:null},remoteMethod:Function},emits:["update:modelValue","change","all-change","clear","blur","focus","click","node-click","visible-change"],setup(D,e){let{emit:a,slots:$}=e,h=(0,_vue.inject)("$xeModal",null),m=(0,_vue.inject)("$xeDrawer",null),x=(0,_vue.inject)("$xeTable",null),o=(0,_vue.inject)("$xeForm",null),n=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let re=(0,_ui.useSize)(D).computeSize,K=(0,_vue.ref)(),H=(0,_vue.ref)(),Y=(0,_vue.ref)(),se=(0,_vue.ref)(),Z=(0,_vue.ref)(),G=(0,_vue.ref)(),J=(0,_vue.reactive)(createReactData()),r=createInternalData(),b={refElem:K},ce=(0,_vue.computed)(()=>{var e=D.readonly;return null===e?!!o&&o.props.readonly:e}),Q=(0,_vue.computed)(()=>{var e=D.disabled;return null===e?!!o&&o.props.disabled:e}),W=(0,_vue.computed)(()=>{var e=X.value.transfer;if(_xeUtils.default.isBoolean(e))return e;if(null===D.transfer){e=(0,_ui.getConfig)().treeSelect.transfer;if(_xeUtils.default.isBoolean(e))return e;if(x||h||m||o)return!0}return D.transfer}),X=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().treeSelect.popupConfig,D.popupConfig)),ee=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().treeSelect.treeConfig,D.treeConfig,{data:void 0})),de=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().treeSelect.menuConfig,D.menuConfig)),ve=(0,_vue.computed)(()=>{var e=ee.value;return Object.assign({isHover:!0},e.nodeConfig)}),pe=(0,_vue.computed)(()=>{var e=D.showCheckbox,t=ee.value;return Object.assign({showIcon:_xeUtils.default.isBoolean(e)?e:!!t.showCheckbox},t.checkboxConfig,{trigger:"node"})}),fe=(0,_vue.computed)(()=>{var e=D.showRadio,t=ee.value;return Object.assign({showIcon:_xeUtils.default.isBoolean(e)?e:!!t.showRadio},t.radioConfig,{trigger:"node"})}),l=(0,_vue.computed)(()=>D.optionProps||{}),te=(0,_vue.computed)(()=>ee.value.keyField||"id"),le=(0,_vue.computed)(()=>l.value.label||"label"),ae=(0,_vue.computed)(()=>l.value.value||"value"),oe=(0,_vue.computed)(()=>l.value.children||"children"),ne=(0,_vue.computed)(()=>{var e=l.value,t=ee.value;return e.parent||t.parentField||"parentId"}),_e=(0,_vue.computed)(()=>l.value.hasChild||"hasChild"),ge=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().treeSelect.virtualYConfig,D.virtualYConfig)),u=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().treeSelect.remoteConfig,D.remoteConfig)),he=(0,_vue.computed)(()=>{var e=ee.value;return Object.assign({},e.filterConfig,D.filterConfig)}),C=(0,_vue.computed)(()=>{var e=D.modelValue;return _xeUtils.default.eqNull(e)?[]:_xeUtils.default.isArray(e)?e:[e]}),me=(0,_vue.computed)(()=>{let l=D.showFullLabel,{fullOptFlag:a,lazyOptFlag:o}=J,{fullNodeMaps:n,lazyNodeMaps:i}=r,u=le.value;return C.value.map(e=>{var t=n[e];if(a&&t)return l?t.fullLabel:t.item[u];if(o){t=i[e];if(t)return l?t.fullLabel:t.item[u]}return e}).join(", ")}),xe=(0,_vue.computed)(()=>{var{height:e,width:t}=X.value,l={};return t&&(l.width=(0,_dom.toCssUnit)(t)),e&&(l.height=(0,_dom.toCssUnit)(e),l.maxHeight=(0,_dom.toCssUnit)(e)),l}),y={},ie={xID:t,props:D,context:e,reactData:J,internalData:r,getRefMaps:()=>b,getComputeMaps:()=>y},s=(e,t,l)=>{a(e,(0,_ui.createEvent)(l,{$treeSelect:ie},t))},E=e=>{a("update:modelValue",e)},ue=(e,t)=>e&&(_xeUtils.default.isString(e)&&(e=$[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[];t={dispatchEvent:s};let S=e=>{e=e[te.value];return e?encodeURIComponent(e):""},i=e=>{let r=D.separator;var t=ee.value;let s=te.value;var l=ne.value,a=oe.value;let c=ae.value,d=le.value;var o=t.transform;let v={},p={};var n=(e,t,l,a,o,n)=>{let i=S(e);i=i||getOptUniqueId(),p[i]&&errLog("vxe.error.repeatKey",[s,i]),p[i]=!0;var u=e[c];v[u]&&errLog("vxe.error.repeatKey",[c,u]),v[u]={item:e,index:t,items:l,parent:o,nodes:n,fullLabel:n.map(e=>e[d]).join(r||" / ")}};return e&&(o?(o=_xeUtils.default.toArrayTree(e,{key:s,parentKey:l,mapChildren:a,rootParentValue:t.rootParentValue,rootValues:t.rootValues}),_xeUtils.default.eachTree(o,n,{children:a})):_xeUtils.default.eachTree(e,n,{children:a})),v},c=()=>{var e=D.options;r.fullNodeMaps=i(e||[]),r.fullOptionList=e||[],J.fullOptFlag++},d=()=>{var e=D.lazyOptions;r.lazyNodeMaps=i(e||[]),J.lazyOptFlag++},w=()=>{var e=X.value.zIndex||D.zIndex;e?J.panelIndex=_xeUtils.default.toNumber(e):J.panelIndex<(0,_utils.getLastZIndex)()&&(J.panelIndex=(0,_utils.nextZIndex)())},v=()=>{let l=D.placement,a=J.panelIndex,o=K.value,n=Z.value,i=W.value,u=X.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(o,n,{placement:u.placement||l,defaultPlacement:u.defaultPlacement,teleportTo:i}),t=Object.assign(e.style,{zIndex:a});J.panelStyle=t,J.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},I=e=>{var{loading:t,remote:l,filterable:a}=D,o=r.fullOptionList,n=Q.value,i=u.value;t||n||(clearTimeout(r.hpTimeout),J.initialized||(J.initialized=!0),J.isActivated=!0,J.isAniVisible=!0,a&&l&&i.enabled&&i.autoLoad&&!o.length&&F(),setTimeout(()=>{J.visiblePanel=!0,V(),v()},10),w(),v(),s("visible-change",{visible:!0},e||null))},p=e=>{J.visiblePanel=!1,r.hpTimeout=setTimeout(()=>{J.isAniVisible=!1},350),s("visible-change",{visible:!1},e||null)},f=(e,t,l)=>{t=_xeUtils.default.isArray(t)?t.map(_util.deNodeValue):(0,_util.deNodeValue)(t);E(t),t!==D.modelValue&&(s("change",{value:t,node:l,option:l},e),o)&&n&&o.triggerItemEvent(e,n.itemConfig.field,t)},B=(e,t)=>{f(e,t,null),s("clear",{value:t},e)},be=e=>{e=e.$event;B(e,null),p(e)},Ce=e=>{let l=e.$event,{multiple:t,autoClose:a,checkedClosable:o}=D;e=G.value;t&&e&&e.setAllCheckboxNode(!0).then(({checkNodeKeys:e,checkNodes:t})=>{f(l,e,t[0]),s("all-change",{value:e},l),(_xeUtils.default.isBoolean(o)?o:a)&&p(l)})},ye=e=>{let t=e.$event,{multiple:l,autoClose:a,clearClosable:o}=D;var n,e=G.value;e&&(n=l?[]:null,e.clearCheckboxNode().then(()=>{(_xeUtils.default.isBoolean(o)?o:a)&&p(t)}),f(t,n,null),s("clear",{value:n},t))},Ee=e=>{e=e.$event;p(e)},Se=()=>{var e=G.value;e&&e.setAllExpandNode(!0)},we=()=>{var e=G.value;e&&e.clearAllExpandNode()},k=e=>{var t=J.visiblePanel;Q.value||t&&(t=Z.value,(0,_dom.getEventTargetNode)(e,t).flag?v():p(e))},N=e=>{var t,l,a=J.visiblePanel;Q.value||(t=K.value,l=Z.value,J.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,l).flag,a&&!J.isActivated&&p(e))},O=e=>{var{visiblePanel:t,isActivated:l}=J;t&&p(e),l&&(J.isActivated=!1),(t||l)&&(e=H.value)&&e.blur()},U=()=>{var e=J.visiblePanel;e&&v()},V=()=>{D.filterable&&(0,_vue.nextTick)(()=>{var e=Y.value;e&&e.focus()})},Ie=e=>{Q.value||J.visiblePanel||(J.triggerFocusPanel=!0,I(e),setTimeout(()=>{J.triggerFocusPanel=!1},150)),s("focus",{},e)},Be=e=>{Oe(e),s("click",{},e)},ke=e=>{J.isActivated=!1,s("blur",{},e)},Ne=e=>{J.searchValue=e},F=()=>{var{modelValue:e,remote:t,remoteMethod:l}=D,a=J.searchValue,o=u.value,l=o.queryMethod||l;t&&l&&o.enabled&&(J.searchLoading=!0,Promise.resolve(l({$treeSelect:ie,searchValue:a,value:e})).then(()=>(0,_vue.nextTick)()).catch(()=>(0,_vue.nextTick)()).finally(()=>{J.searchLoading=!1}))},Oe=e=>{e=e.$event;e.preventDefault(),J.triggerFocusPanel?J.triggerFocusPanel=!1:(J.visiblePanel?p:I)(e)},Ue=()=>{v()},Ve=e=>{var t=e.$event;s("node-click",e,t)},Fe=e=>{var{value:e,$event:t,node:l}=e;f(t,e,l),p(t)},Pe=e=>{var{value:e,$event:t,node:l}=e;f(t,e,l)},Te=()=>{c()};Object.assign(ie,t,{});let _=(0,_vue.ref)(0),g=((0,_vue.watch)(()=>D.options?D.options.length:-1,()=>{_.value++}),(0,_vue.watch)(()=>D.options,()=>{_.value++}),(0,_vue.watch)(_,()=>{c()}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>D.lazyOptions?D.lazyOptions.length:-1,()=>{g.value++}),(0,_vue.watch)(()=>D.lazyOptions,()=>{g.value++}),(0,_vue.watch)(g,()=>{d()}),c(),d(),(0,_vue.onMounted)(()=>{_xeUtils.default.isBoolean(D.autoClose)&&warnLog("vxe.error.delProp",["auto-close","checked-closable | clear-closable"]),_ui.globalEvents.on(ie,"mousewheel",k),_ui.globalEvents.on(ie,"mousedown",N),_ui.globalEvents.on(ie,"blur",O),_ui.globalEvents.on(ie,"resize",U)}),(0,_vue.onBeforeUnmount)(()=>{_ui.globalEvents.off(ie,"mousewheel"),_ui.globalEvents.off(ie,"mousedown"),_ui.globalEvents.off(ie,"blur"),_ui.globalEvents.off(ie,"resize"),_xeUtils.default.assign(J,createReactData()),_xeUtils.default.assign(r,createInternalData())}),(0,_vue.provide)("$xeTreeSelect",ie),ie.renderVN=()=>{var{className:e,modelValue:t,multiple:l,options:a,loading:o,menuConfig:n,filterable:i,showTotalButton:u,showCheckedButton:r,showClearButton:s,showExpandButton:c,showCloseButton:d}=D,{initialized:v,isActivated:p,isAniVisible:f,visiblePanel:_,searchValue:g}=J,h=re.value,m=Q.value,x=me.value,b=W.value,C=ce.value,y=xe.value,E=$.header,S=$.footer;let w=$.prefix;var I=X.value,B=I.className||D.popupClassName;if(C)return(0,_vue.h)("div",{ref:K,class:["vxe-tree-select--readonly",e]},[(0,_vue.h)("span",{class:"vxe-tree-select-label"},x)]);var C=ee.value,k=de.value,N=ve.value,O=pe.value,U=fe.value,V=te.value,F=le.value,z=ae.value,L=oe.value,A=ne.value,j=_e.value,q=ge.value,R=he.value,P=C.slots,M=_xeUtils.default.eqNull(t)?[]:_xeUtils.default.isArray(t)?t:[t],T={};if(P){let{icon:t,title:l,extra:a}=P;t&&(T.icon=e=>ue(t,e)),l&&(T.title=e=>ue(l,e)),a&&(T.extra=e=>ue(a,e))}return(0,_vue.h)("div",{ref:K,class:["vxe-tree-select",e?_xeUtils.default.isFunction(e)?e({$treeSelect:ie}):e:"",{["size--"+h]:h,"is--filterable":i,"is--visible":_,"is--disabled":m,"is--loading":o,"is--active":p}]},[(0,_vue.h)(_input.default,{ref:H,clearable:D.clearable,placeholder:o?(0,_ui.getI18n)("vxe.select.loadingText"):D.placeholder,editable:!1,disabled:m,type:"text",prefixIcon:D.prefixIcon,suffixIcon:o?(0,_ui.getIcon)().TREE_SELECT_LOADED:_?(0,_ui.getIcon)().TREE_SELECT_OPEN:(0,_ui.getIcon)().TREE_SELECT_CLOSE,modelValue:o?"":x,title:x,onClear:be,onClick:Be,onFocus:Ie,onBlur:ke,onSuffixClick:Oe},w?{prefix:()=>w({})}:{}),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!b||!v},[(0,_vue.h)("div",{ref:Z,class:["vxe-table--ignore-clear vxe-tree-select--panel",B?_xeUtils.default.isFunction(B)?B({$treeSelect:ie}):B:"",{["size--"+h]:h,"is--transfer":b,"ani--leave":!o&&f,"ani--enter":!o&&_}],placement:J.panelPlacement,style:J.panelStyle},v?[(0,_vue.h)("div",{class:"vxe-tree-select--panel-wrapper"},[i?(0,_vue.h)("div",{class:"vxe-tree-select--panel-search"},[(0,_vue.h)(_input.default,{ref:Y,class:"vxe-tree-select-search--input",modelValue:g,clearable:!0,disabled:!1,readonly:!1,placeholder:(0,_ui.getI18n)("vxe.treeSelect.search"),prefixIcon:(0,_ui.getIcon)().INPUT_SEARCH,"onUpdate:modelValue":Ne})]):(0,_ui.renderEmptyElement)(ie),r&&l||s||c||E?(0,_vue.h)("div",{class:"vxe-tree-select--panel-header"},E?E({}):[(0,_vue.h)("div",{class:"vxe-tree-select--header-button"},[r&&s?(0,_vue.h)("div",{class:"vxe-tree-select--selected-btns"},[r&&l?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.treeSelect.allChecked"),mode:"text",onClick:Ce}):(0,_ui.renderEmptyElement)(ie),s?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.treeSelect.clearChecked"),mode:"text",onClick:ye}):(0,_ui.renderEmptyElement)(ie)]):(0,_ui.renderEmptyElement)(ie),c?(0,_vue.h)("div",{class:"vxe-tree-select--expand-btns"},[c?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.treeSelect.allExpand"),mode:"text",onClick:Se}):(0,_ui.renderEmptyElement)(ie),c?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.treeSelect.clearExpand"),mode:"text",onClick:we}):(0,_ui.renderEmptyElement)(ie)]):(0,_ui.renderEmptyElement)(ie)])]):(0,_ui.renderEmptyElement)(ie),(0,_vue.h)("div",{class:"vxe-tree-select--panel-body"},[(0,_vue.h)("div",{ref:se,class:"vxe-tree-select-tree--wrapper",style:y},[(0,_vue.h)(_tree.default,{ref:G,class:"vxe-tree-select--tree",height:I.height?"100%":C.height,minHeight:C.minHeight,maxHeight:I.height?"":C.maxHeight,autoResize:!0,data:a,indent:C.indent,showRadio:!l,radioConfig:U,checkNodeKey:l?null:t,showCheckbox:!!l,checkNodeKeys:l?t:null,checkboxConfig:O,titleField:F,valueField:z,keyField:V,childrenField:C.childrenField||L,parentField:A,hasChildField:C.hasChildField||j,accordion:C.accordion,expandAll:C.expandAll,expandNodeKeys:C.expandNodeKeys,nodeConfig:N,lazy:C.lazy,loadMethod:C.loadMethod,toggleMethod:C.toggleMethod,transform:C.transform,rootParentValue:C.rootParentValue,rootValues:C.rootValues,trigger:C.trigger,showIcon:C.showIcon,showLine:C.showLine,iconOpen:C.iconOpen,iconLoaded:C.iconLoaded,iconClose:C.iconClose,filterValue:g,filterConfig:R,menuConfig:n?k:void 0,virtualYConfig:q,onNodeExpand:Ue,onNodeClick:Ve,onRadioChange:Fe,onCheckboxChange:Pe,onLoadSuccess:Te},T)])]),S||u||d&&l?(0,_vue.h)("div",{class:"vxe-tree-select--panel-footer"},S?S({}):[(0,_vue.h)("div",{class:"vxe-tree-select--footer-button"},[u?(0,_vue.h)("div",{class:"vxe-tree-select--total-btns"},(0,_ui.getI18n)("vxe.treeSelect.total",[M.length])):(0,_ui.renderEmptyElement)(ie),d&&l?(0,_vue.h)("div",{class:"vxe-tree-select--oper-btns"},[(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.select.close"),mode:"text",onClick:Ee})]):(0,_ui.renderEmptyElement)(ie)])]):(0,_ui.renderEmptyElement)(ie)])]:[])])])},ie},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"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_util=require("../../tree/src/util"),_log=require("../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils")),_input=_interopRequireDefault(require("../../input")),_button=_interopRequireDefault(require("../../button")),_tree=_interopRequireDefault(require("../../tree")),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{warnLog,errLog}=(0,_log.createComponentLog)("tree-select");function getOptUniqueId(){return _xeUtils.default.uniqueId("node_")}function createReactData(){return{initialized:!1,searchValue:"",searchLoading:!1,panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1,fullOptFlag:1,lazyOptFlag:1}}function createInternalData(){return{fullOptionList:[],fullNodeMaps:{},lazyNodeMaps:{}}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTreeSelect",props:{modelValue:[String,Number,Array],clearable:{type:Boolean,default:(0,_ui.getConfig)().treeSelect.clearable},placeholder:{type:String,default:()=>_xeUtils.default.eqNull((0,_ui.getConfig)().treeSelect.placeholder)?(0,_ui.getI18n)("vxe.base.pleaseSelect"):(0,_ui.getConfig)().treeSelect.placeholder},readonly:{type:Boolean,default:null},loading:Boolean,disabled:{type:Boolean,default:null},showFullLabel:{type:Boolean,default:(0,_ui.getConfig)().treeSelect.showFullLabel},separator:{type:String,default:(0,_ui.getConfig)().treeSelect.separator},filterable:Boolean,filterConfig:Object,multiple:Boolean,className:[String,Function],popupClassName:[String,Function],prefixIcon:String,placement:String,lazyOptions:Array,options:Array,optionProps:Object,zIndex:Number,size:{type:String,default:()=>(0,_ui.getConfig)().treeSelect.size||(0,_ui.getConfig)().size},remote:Boolean,remoteConfig:Function,showRadio:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showRadio},showCheckbox:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showCheckbox},popupConfig:Object,treeConfig:Object,menuConfig:Object,virtualYConfig:Object,autoClose:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.autoClose},checkedClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.checkedClosable},clearClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.clearClosable},showCloseButton:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showCloseButton},showTotalButton:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showTotalButton},showCheckedButton:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showCheckedButton},showClearButton:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showClearButton},showExpandButton:{type:Boolean,default:()=>(0,_ui.getConfig)().treeSelect.showExpandButton},transfer:{type:Boolean,default:null},remoteMethod:Function},emits:["update:modelValue","change","all-change","clear","blur","focus","click","node-click","visible-change"],setup(D,e){let{emit:a,slots:$}=e,h=(0,_vue.inject)("$xeModal",null),m=(0,_vue.inject)("$xeDrawer",null),x=(0,_vue.inject)("$xeTable",null),o=(0,_vue.inject)("$xeForm",null),n=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let re=(0,_ui.useSize)(D).computeSize,K=(0,_vue.ref)(),H=(0,_vue.ref)(),Y=(0,_vue.ref)(),se=(0,_vue.ref)(),Z=(0,_vue.ref)(),G=(0,_vue.ref)(),J=(0,_vue.reactive)(createReactData()),r=createInternalData(),b={refElem:K},ce=(0,_vue.computed)(()=>{var e=D.readonly;return null===e?!!o&&o.props.readonly:e}),Q=(0,_vue.computed)(()=>{var e=D.disabled;return null===e?!!o&&o.props.disabled:e}),W=(0,_vue.computed)(()=>{var e=X.value.transfer;if(_xeUtils.default.isBoolean(e))return e;if(null===D.transfer){e=(0,_ui.getConfig)().treeSelect.transfer;if(_xeUtils.default.isBoolean(e))return e;if(x||h||m||o)return!0}return D.transfer}),X=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().treeSelect.popupConfig,D.popupConfig)),ee=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().treeSelect.treeConfig,D.treeConfig,{data:void 0})),de=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().treeSelect.menuConfig,D.menuConfig)),ve=(0,_vue.computed)(()=>{var e=ee.value;return Object.assign({isHover:!0},e.nodeConfig)}),pe=(0,_vue.computed)(()=>{var e=D.showCheckbox,t=ee.value;return Object.assign({showIcon:_xeUtils.default.isBoolean(e)?e:!!t.showCheckbox},t.checkboxConfig,{trigger:"node"})}),fe=(0,_vue.computed)(()=>{var e=D.showRadio,t=ee.value;return Object.assign({showIcon:_xeUtils.default.isBoolean(e)?e:!!t.showRadio},t.radioConfig,{trigger:"node"})}),l=(0,_vue.computed)(()=>D.optionProps||{}),te=(0,_vue.computed)(()=>ee.value.keyField||"id"),le=(0,_vue.computed)(()=>l.value.label||"label"),ae=(0,_vue.computed)(()=>l.value.value||"value"),oe=(0,_vue.computed)(()=>l.value.children||"children"),ne=(0,_vue.computed)(()=>{var e=l.value,t=ee.value;return e.parent||t.parentField||"parentId"}),_e=(0,_vue.computed)(()=>l.value.hasChild||"hasChild"),ge=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().treeSelect.virtualYConfig,D.virtualYConfig)),u=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().treeSelect.remoteConfig,D.remoteConfig)),he=(0,_vue.computed)(()=>{var e=ee.value;return Object.assign({},e.filterConfig,D.filterConfig)}),C=(0,_vue.computed)(()=>{var e=D.modelValue;return _xeUtils.default.eqNull(e)?[]:_xeUtils.default.isArray(e)?e:[e]}),me=(0,_vue.computed)(()=>{let l=D.showFullLabel,{fullOptFlag:a,lazyOptFlag:o}=J,{fullNodeMaps:n,lazyNodeMaps:i}=r,u=le.value;return C.value.map(e=>{var t=n[e];if(a&&t)return l?t.fullLabel:t.item[u];if(o){t=i[e];if(t)return l?t.fullLabel:t.item[u]}return e}).join(", ")}),xe=(0,_vue.computed)(()=>{var{height:e,width:t}=X.value,l={};return t&&(l.width=(0,_dom.toCssUnit)(t)),e&&(l.height=(0,_dom.toCssUnit)(e),l.maxHeight=(0,_dom.toCssUnit)(e)),l}),y={},ie={xID:t,props:D,context:e,reactData:J,internalData:r,getRefMaps:()=>b,getComputeMaps:()=>y},s=(e,t,l)=>{a(e,(0,_ui.createEvent)(l,{$treeSelect:ie},t))},E=e=>{a("update:modelValue",e)},ue=(e,t)=>e&&(_xeUtils.default.isString(e)&&(e=$[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[];t={dispatchEvent:s};let S=e=>{e=e[te.value];return e?encodeURIComponent(e):""},i=e=>{let r=D.separator;var t=ee.value;let s=te.value;var l=ne.value,a=oe.value;let c=ae.value,d=le.value;var o=t.transform;let v={},p={};var n=(e,t,l,a,o,n)=>{let i=S(e);i=i||getOptUniqueId(),p[i]&&errLog("vxe.error.repeatKey",[s,i]),p[i]=!0;var u=e[c];v[u]&&errLog("vxe.error.repeatKey",[c,u]),v[u]={item:e,index:t,items:l,parent:o,nodes:n,fullLabel:n.map(e=>e[d]).join(r||" / ")}};return e&&(o?(o=_xeUtils.default.toArrayTree(e,{key:s,parentKey:l,mapChildren:a,rootParentValue:t.rootParentValue,rootValues:t.rootValues}),_xeUtils.default.eachTree(o,n,{children:a})):_xeUtils.default.eachTree(e,n,{children:a})),v},c=()=>{var e=D.options;r.fullNodeMaps=i(e||[]),r.fullOptionList=e||[],J.fullOptFlag++},d=()=>{var e=D.lazyOptions;r.lazyNodeMaps=i(e||[]),J.lazyOptFlag++},w=()=>{var e=X.value.zIndex||D.zIndex;e?J.panelIndex=_xeUtils.default.toNumber(e):J.panelIndex<(0,_utils.getLastZIndex)()&&(J.panelIndex=(0,_utils.nextZIndex)())},v=()=>{let l=D.placement,a=J.panelIndex,o=K.value,n=Z.value,i=W.value,u=X.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(o,n,{placement:u.placement||l,defaultPlacement:u.defaultPlacement,teleportTo:i}),t=Object.assign(e.style,{zIndex:a});J.panelStyle=t,J.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},I=e=>{var{loading:t,remote:l,filterable:a}=D,o=r.fullOptionList,n=Q.value,i=u.value;t||n||(clearTimeout(r.hpTimeout),J.initialized||(J.initialized=!0),J.isActivated=!0,J.isAniVisible=!0,a&&l&&i.enabled&&i.autoLoad&&!o.length&&F(),setTimeout(()=>{J.visiblePanel=!0,V(),v()},10),w(),v(),s("visible-change",{visible:!0},e||null))},p=e=>{J.visiblePanel=!1,r.hpTimeout=setTimeout(()=>{J.isAniVisible=!1},350),s("visible-change",{visible:!1},e||null)},f=(e,t,l)=>{t=_xeUtils.default.isArray(t)?t.map(_util.deNodeValue):(0,_util.deNodeValue)(t);E(t),t!==D.modelValue&&(s("change",{value:t,node:l,option:l},e),o)&&n&&o.triggerItemEvent(e,n.itemConfig.field,t)},B=(e,t)=>{f(e,t,null),s("clear",{value:t},e)},be=e=>{e=e.$event;B(e,null),p(e)},Ce=e=>{let l=e.$event,{multiple:t,autoClose:a,checkedClosable:o}=D;e=G.value;t&&e&&e.setAllCheckboxNode(!0).then(({checkNodeKeys:e,checkNodes:t})=>{f(l,e,t[0]),s("all-change",{value:e},l),(_xeUtils.default.isBoolean(o)?o:a)&&p(l)})},ye=e=>{let t=e.$event,{multiple:l,autoClose:a,clearClosable:o}=D;var n,e=G.value;e&&(n=l?[]:null,e.clearCheckboxNode().then(()=>{(_xeUtils.default.isBoolean(o)?o:a)&&p(t)}),f(t,n,null),s("clear",{value:n},t))},Ee=e=>{e=e.$event;p(e)},Se=()=>{var e=G.value;e&&e.setAllExpandNode(!0)},we=()=>{var e=G.value;e&&e.clearAllExpandNode()},k=e=>{var t=J.visiblePanel;Q.value||t&&(t=Z.value,(0,_dom.getEventTargetNode)(e,t).flag?v():p(e))},N=e=>{var t,l,a=J.visiblePanel;Q.value||(t=K.value,l=Z.value,J.isActivated=(0,_dom.getEventTargetNode)(e,t).flag||(0,_dom.getEventTargetNode)(e,l).flag,a&&!J.isActivated&&p(e))},O=e=>{var{visiblePanel:t,isActivated:l}=J;t&&p(e),l&&(J.isActivated=!1),(t||l)&&(e=H.value)&&e.blur()},U=()=>{var e=J.visiblePanel;e&&v()},V=()=>{D.filterable&&(0,_vue.nextTick)(()=>{var e=Y.value;e&&e.focus()})},Ie=e=>{Q.value||J.visiblePanel||(J.triggerFocusPanel=!0,I(e),setTimeout(()=>{J.triggerFocusPanel=!1},150)),s("focus",{},e)},Be=e=>{Oe(e),s("click",{},e)},ke=e=>{J.isActivated=!1,s("blur",{},e)},Ne=e=>{J.searchValue=e},F=()=>{var{modelValue:e,remote:t,remoteMethod:l}=D,a=J.searchValue,o=u.value,l=o.queryMethod||l;t&&l&&o.enabled&&(J.searchLoading=!0,Promise.resolve(l({$treeSelect:ie,searchValue:a,value:e})).then(()=>(0,_vue.nextTick)()).catch(()=>(0,_vue.nextTick)()).finally(()=>{J.searchLoading=!1}))},Oe=e=>{e=e.$event;e.preventDefault(),J.triggerFocusPanel?J.triggerFocusPanel=!1:(J.visiblePanel?p:I)(e)},Ue=()=>{v()},Ve=e=>{var t=e.$event;s("node-click",e,t)},Fe=e=>{var{value:e,$event:t,node:l}=e;f(t,e,l),p(t)},Pe=e=>{var{value:e,$event:t,node:l}=e;f(t,e,l)},Te=()=>{c()};Object.assign(ie,t,{});let _=(0,_vue.ref)(0),g=((0,_vue.watch)(()=>D.options?D.options.length:-1,()=>{_.value++}),(0,_vue.watch)(()=>D.options,()=>{_.value++}),(0,_vue.watch)(_,()=>{c()}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>D.lazyOptions?D.lazyOptions.length:-1,()=>{g.value++}),(0,_vue.watch)(()=>D.lazyOptions,()=>{g.value++}),(0,_vue.watch)(g,()=>{d()}),c(),d(),(0,_vue.onMounted)(()=>{_xeUtils.default.isBoolean(D.autoClose)&&warnLog("vxe.error.delProp",["auto-close","checked-closable | clear-closable"]),_ui.globalEvents.on(ie,"mousewheel",k),_ui.globalEvents.on(ie,"mousedown",N),_ui.globalEvents.on(ie,"blur",O),_ui.globalEvents.on(ie,"resize",U)}),(0,_vue.onBeforeUnmount)(()=>{_ui.globalEvents.off(ie,"mousewheel"),_ui.globalEvents.off(ie,"mousedown"),_ui.globalEvents.off(ie,"blur"),_ui.globalEvents.off(ie,"resize"),_xeUtils.default.assign(J,createReactData()),_xeUtils.default.assign(r,createInternalData())}),(0,_vue.provide)("$xeTreeSelect",ie),ie.renderVN=()=>{var{className:e,modelValue:t,multiple:l,options:a,loading:o,menuConfig:n,filterable:i,showTotalButton:u,showCheckedButton:r,showClearButton:s,showExpandButton:c,showCloseButton:d}=D,{initialized:v,isActivated:p,isAniVisible:f,visiblePanel:_,searchValue:g}=J,h=re.value,m=Q.value,x=me.value,b=W.value,C=ce.value,y=xe.value,E=$.header,S=$.footer;let w=$.prefix;var I=X.value,B=I.className||D.popupClassName;if(C)return(0,_vue.h)("div",{ref:K,class:["vxe-tree-select--readonly",e]},[(0,_vue.h)("span",{class:"vxe-tree-select-label"},x)]);var C=ee.value,k=de.value,N=ve.value,O=pe.value,U=fe.value,V=te.value,F=le.value,z=ae.value,L=oe.value,A=ne.value,j=_e.value,q=ge.value,R=he.value,P=C.slots,M=_xeUtils.default.eqNull(t)?[]:_xeUtils.default.isArray(t)?t:[t],T={};if(P){let{icon:t,title:l,extra:a}=P;t&&(T.icon=e=>ue(t,e)),l&&(T.title=e=>ue(l,e)),a&&(T.extra=e=>ue(a,e))}return(0,_vue.h)("div",{ref:K,class:["vxe-tree-select",e?_xeUtils.default.isFunction(e)?e({$treeSelect:ie}):e:"",{["size--"+h]:h,"is--filterable":i,"is--visible":_,"is--disabled":m,"is--loading":o,"is--active":p}]},[(0,_vue.h)(_input.default,{ref:H,clearable:D.clearable,placeholder:o?(0,_ui.getI18n)("vxe.select.loadingText"):D.placeholder,editable:!1,disabled:m,type:"text",prefixIcon:D.prefixIcon,suffixIcon:o?(0,_ui.getIcon)().TREE_SELECT_LOADED:_?(0,_ui.getIcon)().TREE_SELECT_OPEN:(0,_ui.getIcon)().TREE_SELECT_CLOSE,modelValue:o?"":x,title:x,onClear:be,onClick:Be,onFocus:Ie,onBlur:ke,onSuffixClick:Oe},w?{prefix:()=>w({})}:{}),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!b||!v},[(0,_vue.h)("div",{ref:Z,class:["vxe-table--ignore-clear vxe-tree-select--panel",B?_xeUtils.default.isFunction(B)?B({$treeSelect:ie}):B:"",{["size--"+h]:h,"is--transfer":b,"ani--leave":!o&&f,"ani--enter":!o&&_}],placement:J.panelPlacement,style:J.panelStyle},v?[(0,_vue.h)("div",{class:"vxe-tree-select--panel-wrapper"},[i?(0,_vue.h)("div",{class:"vxe-tree-select--panel-search"},[(0,_vue.h)(_input.default,{ref:Y,class:"vxe-tree-select-search--input",modelValue:g,clearable:!0,disabled:!1,readonly:!1,placeholder:(0,_ui.getI18n)("vxe.treeSelect.search"),prefixIcon:(0,_ui.getIcon)().INPUT_SEARCH,"onUpdate:modelValue":Ne})]):(0,_ui.renderEmptyElement)(ie),r&&l||s||c||E?(0,_vue.h)("div",{class:"vxe-tree-select--panel-header"},E?E({}):[(0,_vue.h)("div",{class:"vxe-tree-select--header-button"},[r&&l||s?(0,_vue.h)("div",{class:"vxe-tree-select--selected-btns"},[r&&l?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.treeSelect.allChecked"),mode:"text",onClick:Ce}):(0,_ui.renderEmptyElement)(ie),s?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.treeSelect.clearChecked"),mode:"text",onClick:ye}):(0,_ui.renderEmptyElement)(ie)]):(0,_ui.renderEmptyElement)(ie),c?(0,_vue.h)("div",{class:"vxe-tree-select--expand-btns"},[(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.treeSelect.allExpand"),mode:"text",onClick:Se}),(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.treeSelect.clearExpand"),mode:"text",onClick:we})]):(0,_ui.renderEmptyElement)(ie)])]):(0,_ui.renderEmptyElement)(ie),(0,_vue.h)("div",{class:"vxe-tree-select--panel-body"},[(0,_vue.h)("div",{ref:se,class:"vxe-tree-select-tree--wrapper",style:y},[(0,_vue.h)(_tree.default,{ref:G,class:"vxe-tree-select--tree",height:I.height?"100%":C.height,minHeight:C.minHeight,maxHeight:I.height?"":C.maxHeight,autoResize:!0,data:a,indent:C.indent,showRadio:!l,radioConfig:U,checkNodeKey:l?null:t,showCheckbox:!!l,checkNodeKeys:l?t:null,checkboxConfig:O,titleField:F,valueField:z,keyField:V,childrenField:C.childrenField||L,parentField:A,hasChildField:C.hasChildField||j,accordion:C.accordion,expandAll:C.expandAll,expandNodeKeys:C.expandNodeKeys,nodeConfig:N,lazy:C.lazy,loadMethod:C.loadMethod,toggleMethod:C.toggleMethod,transform:C.transform,rootParentValue:C.rootParentValue,rootValues:C.rootValues,trigger:C.trigger,showIcon:C.showIcon,showLine:C.showLine,iconOpen:C.iconOpen,iconLoaded:C.iconLoaded,iconClose:C.iconClose,filterValue:g,filterConfig:R,menuConfig:n?k:void 0,virtualYConfig:q,onNodeExpand:Ue,onNodeClick:Ve,onRadioChange:Fe,onCheckboxChange:Pe,onLoadSuccess:Te},T)])]),S||u||d?(0,_vue.h)("div",{class:"vxe-tree-select--panel-footer"},S?S({}):[(0,_vue.h)("div",{class:"vxe-tree-select--footer-button"},[u?(0,_vue.h)("div",{class:"vxe-tree-select--total-btns"},(0,_ui.getI18n)("vxe.treeSelect.total",[M.length])):(0,_ui.renderEmptyElement)(ie),d?(0,_vue.h)("div",{class:"vxe-tree-select--oper-btns"},[(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.select.close"),mode:"text",onClick:Ee})]):(0,_ui.renderEmptyElement)(ie)])]):(0,_ui.renderEmptyElement)(ie)])]:[])])])},ie},render(){return this.renderVN()}});
package/lib/ui/index.js CHANGED
@@ -26,7 +26,7 @@ Object.keys(_core).forEach(function (key) {
26
26
  });
27
27
  var _dynamics = require("../dynamics");
28
28
  var _log = require("./src/log");
29
- const version = exports.version = "4.15.3";
29
+ const version = exports.version = "4.15.4";
30
30
  _core.VxeUI.uiVersion = version;
31
31
  _core.VxeUI.dynamicApp = _dynamics.dynamicApp;
32
32
  function config(options) {
@@ -89,6 +89,9 @@ _core.VxeUI.setup = setup;
89
89
  showFullLabel: true,
90
90
  treeConfig: {
91
91
  showIcon: true
92
+ },
93
+ filterConfig: {
94
+ autoExpandMode: 'first'
92
95
  }
93
96
  },
94
97
  checkbox: {},
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={version:!0,config:!0,setup:!0},_core=(exports.config=config,exports.default=void 0,exports.setup=setup,exports.version=void 0,require("@vxe-ui/core")),_dynamics=(Object.keys(_core).forEach(function(e){"default"===e||"__esModule"===e||Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_core[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _core[e]}})}),require("../dynamics")),_log=require("./src/log");let version=exports.version="4.15.3";function config(e){return(0,_log.warnLog)("vxe.error.delFunc",["config","setConfig"]),(0,_core.setConfig)(e)}function setup(e){return(0,_log.warnLog)("vxe.error.delFunc",["setup","setConfig"]),(0,_core.setConfig)(e)}_core.VxeUI.uiVersion=version,_core.VxeUI.dynamicApp=_dynamics.dynamicApp,_core.VxeUI.config=config,_core.VxeUI.setup=setup,(0,_core.setConfig)({alert:{},anchor:{},anchorLink:{},avatar:{},backtop:{showIcon:!0,showContent:!0,showTop:!0,showBottom:!0,shadow:!0,threshold:20},badge:{},breadcrumb:{separator:"/"},breadcrumbItem:{},button:{trigger:"hover",prefixTooltip:{enterable:!0},suffixTooltip:{enterable:!0},showDropdownIcon:!0},buttonGroup:{},calendar:{minDate:new Date(1900,0,1),maxDate:new Date(2100,0,1),startDay:1,selectDay:1},card:{border:!0,padding:!0},carousel:{height:200,loop:!0,interval:5e3},carouselItem:{},cascader:{showFullLabel:!0,treeConfig:{showIcon:!0}},checkbox:{},checkboxButton:{},checkboxGroup:{},col:{},collapse:{padding:!0,expandConfig:{showIcon:!0}},collapsePane:{},contextMenu:{autoLocate:!0},countdown:{},colorPicker:{type:"rgb",clearable:!0,showAlpha:!0,clickToCopy:!0,showColorExtractor:!0,showQuick:!0},datePanel:{startDate:new Date(1900,0,1),endDate:new Date(2100,0,1),startDay:1,selectDay:1},datePicker:{shortcutConfig:{align:"left",mode:"text",autoClose:!0},startDay:1,selectDay:1,autoClose:!0,showClearButton:null,showConfirmButton:null},dateRangePicker:{shortcutConfig:{align:"left",mode:"text",autoClose:!0},startDay:1,selectDay:1,separator:" ~ ",autoClose:!0,showClearButton:null,showConfirmButton:null},drawer:{position:"right",showHeader:!0,lockView:!0,mask:!0,showTitleOverflow:!0,showClose:!0,padding:!0,cancelClosable:!0,confirmClosable:!0},empty:{},form:{validConfig:{showErrorMessage:!0,autoPos:!0,theme:"beautify"},tooltipConfig:{enterable:!0},titleAsterisk:!0,titleOverflow:!1,padding:!0},formDesign:{height:400,showHeader:!0,showPc:!0},formGather:{},formGroup:{},formItem:{},formView:{},icon:{},iconPicker:{icons:["home","company","comment","setting","send","envelope","envelope-open","bell","search","print","pc","goods","chart-line","edit","delete","save","folder","microphone","flag","link","location","sunny","rmb","usd","user","add-user","add-users","star","unlock","time","text","feedback","calendar","association-form","cloud-download","cloud-upload","file","subtable","chart-bar-x","chart-bar-y","chart-line","chart-pie","chart-radar"]},image:{draggable:null,showPreview:!0,showPrintButton:!0},imageGroup:{showPreview:!0,showPrintButton:!0},imagePreview:{showPrintButton:!0,maskClosable:!0},input:{startDate:new Date(1900,0,1),endDate:new Date(2100,0,1),startDay:1,selectDay:1,digits:2,controls:!0},layoutAside:{},layoutBody:{backtopConfig:{}},layoutContainer:{},layoutFooter:{},layoutHeader:{},link:{underline:!0},listDesign:{height:400,showPc:!0},listView:{},list:{virtualYConfig:{enabled:!0,gt:100}},loading:{showIcon:!0,showText:!0},menu:{},modal:{top:16,showHeader:!0,minWidth:340,minHeight:140,lockView:!0,mask:!0,duration:3e3,marginSize:0,dblclickZoom:!0,showTitleOverflow:!0,animat:!0,showClose:!0,padding:!0,draggable:!0,showConfirmButton:null,cancelClosable:!0,confirmClosable:!0,zoomConfig:{minimizeMaxSize:10,minimizeVerticalOffset:{top:-24,left:0},minimizeHorizontalOffset:{top:0,left:32}},storageKey:"VXE_MODAL_POSITION"},noticeBar:{},numberInput:{digits:2,autoFill:!0,controlConfig:{enabled:!0,layout:"right",showButton:!0,isWheel:!0,isArrow:!0}},optgroup:{},option:{},pager:{pageSizePlacement:"top"},print:{pageStyle:{}},passwordInput:{controls:!0},printPageBreak:{},pulldown:{},radio:{strict:!0},radioButton:{strict:!0},radioGroup:{strict:!0},rate:{},result:{},row:{},segmented:{},select:{multiCharOverflow:8,radioConfig:{showIcon:!0,trigger:"option"},checkboxConfig:{showIcon:!0,trigger:"option"},remoteConfig:{enabled:!0,autoLoad:!0},virtualYConfig:{enabled:!0,gt:50,oSize:2}},splitter:{resize:!0,itemConfig:{minWidth:40,minHeight:40},resizeConfig:{showTip:!0}},splitterPanel:{},slider:{max:100,min:0},steps:{},switch:{},tabPane:{},tableSelect:{gridConfig:{showOverflow:!0,showHeaderOverflow:!0,showFooterOverflow:!0,rowConfig:{isHover:!0},virtualXConfig:{enabled:!0,gt:0},virtualYConfig:{enabled:!0,gt:0}}},tabs:{},tag:{},textEllipsis:{underline:!0},text:{copyConfig:{showMessage:!0}},textarea:{resize:"none"},timeline:{},timelineItem:{},tip:{},tooltip:{trigger:"hover",theme:"dark",enterDelay:500,leaveDelay:300,isArrow:!0},tree:{indent:20,minHeight:60,radioConfig:{strict:!0},dragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},virtualYConfig:{enabled:!0,gt:50,oSize:2}},treeSelect:{virtualYConfig:{enabled:!0,gt:0,oSize:2},treeConfig:{maxHeight:300,radioConfig:{},checkboxConfig:{},filterConfig:{autoExpandAll:!0}}},upload:{mode:"all",imageTypes:["jpg","jpeg","png","gif"],showList:!0,showUploadButton:!0,showButtonText:!0,showRemoveButton:!0,showButtonIcon:!0,showPreview:!0,dragToUpload:!0,showLimitSize:!0,showLimitCount:!0,autoSubmit:!0,maxSimultaneousUploads:5,previewImageConfig:{}},watermark:{rotate:-30,gap:[100,100]},table:{},colgroup:{},column:{},toolbar:{},grid:{},gantt:{}});let iconPrefix="vxe-icon-";(0,_core.setIcon)({LOADING:iconPrefix+"spinner roll vxe-loading--default-icon",BUTTON_DROPDOWN:iconPrefix+"arrow-down",BUTTON_LOADING:iconPrefix+"spinner roll",BUTTON_TOOLTIP_ICON:iconPrefix+"question-circle-fill",MENU_ITEM_EXPAND_OPEN:iconPrefix+"arrow-down rotate180",MENU_ITEM_EXPAND_CLOSE:iconPrefix+"arrow-down",SELECT_LOADED:iconPrefix+"spinner roll",SELECT_OPEN:iconPrefix+"caret-down rotate180",SELECT_CLOSE:iconPrefix+"caret-down",SELECT_ADD_OPTION:iconPrefix+"add",ICON_PICKER_OPEN:iconPrefix+"caret-down rotate180",ICON_PICKER_CLOSE:iconPrefix+"caret-down",PAGER_HOME:iconPrefix+"home-page",PAGER_END:iconPrefix+"end-page",PAGER_JUMP_PREV:iconPrefix+"arrow-double-left",PAGER_JUMP_NEXT:iconPrefix+"arrow-double-right",PAGER_PREV_PAGE:iconPrefix+"arrow-left",PAGER_NEXT_PAGE:iconPrefix+"arrow-right",PAGER_JUMP_MORE:iconPrefix+"ellipsis-h",RADIO_CHECKED:iconPrefix+"radio-checked-fill",RADIO_UNCHECKED:iconPrefix+"radio-unchecked",RADIO_DISABLED_UNCHECKED:iconPrefix+"radio-unchecked-fill",CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",CHECKBOX_DISABLED_UNCHECKED:iconPrefix+"checkbox-unchecked-fill",INPUT_CLEAR:iconPrefix+"error-circle-fill",INPUT_SEARCH:iconPrefix+"search",INPUT_PLUS_NUM:iconPrefix+"caret-up",INPUT_MINUS_NUM:iconPrefix+"caret-down",NUMBER_INPUT_MINUS_NUM:iconPrefix+"minus",NUMBER_INPUT_PLUS_NUM:iconPrefix+"add",DATE_PICKER_DATE:iconPrefix+"calendar",PASSWORD_INPUT_SHOW_PWD:iconPrefix+"eye-fill-close",PASSWORD_INPUT_HIDE_PWD:iconPrefix+"eye-fill",MODAL_ZOOM_MIN:iconPrefix+"minus",MODAL_ZOOM_REVERT:iconPrefix+"recover",MODAL_ZOOM_IN:iconPrefix+"square",MODAL_ZOOM_OUT:iconPrefix+"maximize",MODAL_CLOSE:iconPrefix+"close",MODAL_INFO:iconPrefix+"info-circle-fill",MODAL_SUCCESS:iconPrefix+"success-circle-fill",MODAL_WARNING:iconPrefix+"warning-circle-fill",MODAL_ERROR:iconPrefix+"error-circle-fill",MODAL_QUESTION:iconPrefix+"question-circle-fill",MODAL_LOADING:iconPrefix+"spinner roll",DRAWER_CLOSE:iconPrefix+"close",FORM_PREFIX:iconPrefix+"question-circle-fill",FORM_SUFFIX:iconPrefix+"question-circle-fill",FORM_FOLDING:iconPrefix+"arrow-up rotate180",FORM_UNFOLDING:iconPrefix+"arrow-up",FORM_VALID_ERROR_ICON:iconPrefix+"warning-circle-fill",FORM_DESIGN_STYLE_SETTING:iconPrefix+"layout",FORM_DESIGN_PROPS_PC:iconPrefix+"pc",FORM_DESIGN_PROPS_MOBILE:iconPrefix+"mobile",FORM_DESIGN_PROPS_ADD:iconPrefix+"add",FORM_DESIGN_PROPS_EDIT:iconPrefix+"edit",FORM_DESIGN_WIDGET_ADD:iconPrefix+"square-plus-fill",FORM_DESIGN_WIDGET_COPY:iconPrefix+"copy",FORM_DESIGN_WIDGET_DELETE:iconPrefix+"delete",FORM_DESIGN_WIDGET_SWAP_LR:iconPrefix+"swap",FORM_DESIGN_WIDGET_OPTION_DELETE:iconPrefix+"delete",FORM_DESIGN_WIDGET_OPTION_EXPAND_OPEN:iconPrefix+"square-plus",FORM_DESIGN_WIDGET_OPTION_EXPAND_CLOSE:iconPrefix+"square-minus",LIST_DESIGN_FIELD_SETTING:iconPrefix+"custom-column",LIST_DESIGN_LIST_SETTING:iconPrefix+"menu",LIST_DESIGN_LIST_SETTING_SEARCH_DELETE:iconPrefix+"delete",LIST_DESIGN_LIST_SETTING_ACTIVE_DELETE:iconPrefix+"delete",UPLOAD_FILE_ERROR:iconPrefix+"warning-circle-fill",UPLOAD_FILE_ADD:iconPrefix+"upload",UPLOAD_FILE_REMOVE:iconPrefix+"delete",UPLOAD_FILE_DOWNLOAD:iconPrefix+"download",UPLOAD_IMAGE_UPLOAD:iconPrefix+"upload",UPLOAD_IMAGE_RE_UPLOAD:iconPrefix+"repeat",UPLOAD_IMAGE_ADD:iconPrefix+"add",UPLOAD_IMAGE_REMOVE:iconPrefix+"close",UPLOAD_LOADING:iconPrefix+"spinner roll vxe-loading--default-icon",UPLOAD_FILE_TYPE_DEFAULT:iconPrefix+"file",UPLOAD_FILE_TYPE_XLSX:iconPrefix+"file-excel",UPLOAD_FILE_TYPE_XLS:iconPrefix+"file-excel",UPLOAD_FILE_TYPE_PDF:iconPrefix+"file-pdf",UPLOAD_FILE_TYPE_PNG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_GIF:iconPrefix+"file-image",UPLOAD_FILE_TYPE_JPG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_JPEG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_MD:iconPrefix+"file-markdown",UPLOAD_FILE_TYPE_PPD:iconPrefix+"file-ppt",UPLOAD_FILE_TYPE_DOCX:iconPrefix+"file-word",UPLOAD_FILE_TYPE_DOC:iconPrefix+"file-word",UPLOAD_FILE_TYPE_ZIP:iconPrefix+"file-zip",UPLOAD_FILE_TYPE_TXT:iconPrefix+"file-txt",IMAGE_PREVIEW_CLOSE:iconPrefix+"close",IMAGE_PREVIEW_PREVIOUS:iconPrefix+"arrow-left",IMAGE_PREVIEW_NEXT:iconPrefix+"arrow-right",IMAGE_PREVIEW_PCT_FULL:iconPrefix+"pct-full",IMAGE_PREVIEW_PCT_1_1:iconPrefix+"pct-1-1",IMAGE_PREVIEW_ZOOM_OUT:iconPrefix+"search-zoom-out",IMAGE_PREVIEW_ZOOM_IN:iconPrefix+"search-zoom-in",IMAGE_PREVIEW_ROTATE_LEFT:iconPrefix+"rotate-left",IMAGE_PREVIEW_ROTATE_RIGHT:iconPrefix+"rotate-right",IMAGE_PREVIEW_PRINT:iconPrefix+"print",IMAGE_PREVIEW_DOWNLOAD:iconPrefix+"download",ALERT_CLOSE:iconPrefix+"close",ALERT_INFO:iconPrefix+"info-circle-fill",ALERT_SUCCESS:iconPrefix+"success-circle-fill",ALERT_WARNING:iconPrefix+"warning-circle-fill",ALERT_ERROR:iconPrefix+"error-circle-fill",TREE_NODE_OPEN:iconPrefix+"caret-right rotate90",TREE_NODE_CLOSE:iconPrefix+"caret-right",TREE_NODE_LOADED:iconPrefix+"spinner roll",TREE_DRAG:iconPrefix+"drag-handle",TREE_DRAG_STATUS_NODE:iconPrefix+"sort",TREE_DRAG_STATUS_SUB_NODE:iconPrefix+"add-sub",TREE_DRAG_DISABLED:iconPrefix+"no-drop",TREE_SELECT_LOADED:iconPrefix+"spinner roll",TREE_SELECT_OPEN:iconPrefix+"caret-down rotate180",TREE_SELECT_CLOSE:iconPrefix+"caret-down",TABLE_SELECT_LOADED:iconPrefix+"spinner roll",TABLE_SELECT_OPEN:iconPrefix+"caret-down rotate180",TABLE_SELECT_CLOSE:iconPrefix+"caret-down",TABS_TAB_BUTTON_TOP:iconPrefix+"arrow-up",TABS_TAB_BUTTON_BOTTOM:iconPrefix+"arrow-down",TABS_TAB_BUTTON_LEFT:iconPrefix+"arrow-left",TABS_TAB_BUTTON_RIGHT:iconPrefix+"arrow-right",TABS_TAB_CLOSE:iconPrefix+"close",TABS_TAB_REFRESH:iconPrefix+"refresh",TABS_TAB_REFRESH_LOADING:iconPrefix+"refresh roll",TEXT_COPY:iconPrefix+"copy",TEXT_LOADING:iconPrefix+"spinner roll",TAG_CLOSE:iconPrefix+"close",TAG_LOADING:iconPrefix+"spinner roll",CAROUSEL_HORIZONTAL_PREVIOUS:iconPrefix+"arrow-left",CAROUSEL_HORIZONTAL_NEXT:iconPrefix+"arrow-right",CAROUSEL_VERTICAL_PREVIOUS:iconPrefix+"arrow-up",CAROUSEL_VERTICAL_NEXT:iconPrefix+"arrow-down",COLLAPSE_OPEN:iconPrefix+"arrow-right rotate90",COLLAPSE_CLOSE:iconPrefix+"arrow-right",EMPTY_DEFAULT:iconPrefix+"empty",RESULT_INFO:iconPrefix+"info-circle-fill",RESULT_SUCCESS:iconPrefix+"success-circle-fill",RESULT_WARNING:iconPrefix+"warning-circle-fill",RESULT_ERROR:iconPrefix+"error-circle-fill",RESULT_QUESTION:iconPrefix+"question-circle-fill",RESULT_LOADING:iconPrefix+"spinner roll",RATE_CHECKED:iconPrefix+"star-fill",RATE_UNCHECKED:iconPrefix+"star",COLOR_PICKER_COLOR_COPY:iconPrefix+"copy",COLOR_PICKER_EYE_DROPPER:iconPrefix+"dropper",COLOR_PICKER_TPTY_OPEN:iconPrefix+"arrow-down rotate180",COLOR_PICKER_TPTY_CLOSE:iconPrefix+"arrow-down",SPLIT_TOP_ACTION:iconPrefix+"arrow-up",SPLIT_BOTTOM_ACTION:iconPrefix+"arrow-down",SPLIT_LEFT_ACTION:iconPrefix+"arrow-left",SPLIT_RIGHT_ACTION:iconPrefix+"arrow-right",BACKTOP_TOP:iconPrefix+"top",CONTEXT_MENU_OPTION_LOADING:iconPrefix+"spinner roll",CONTEXT_MENU_CHILDREN:iconPrefix+"arrow-right",CASCADER_NODE_OPEN:iconPrefix+"arrow-right",CASCADER_NODE_CLOSE:iconPrefix+"arrow-right",CASCADER_NODE_LOADED:iconPrefix+"spinner roll"});var _default=exports.default=_core.VxeUI;
1
+ Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={version:!0,config:!0,setup:!0},_core=(exports.config=config,exports.default=void 0,exports.setup=setup,exports.version=void 0,require("@vxe-ui/core")),_dynamics=(Object.keys(_core).forEach(function(e){"default"===e||"__esModule"===e||Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_core[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _core[e]}})}),require("../dynamics")),_log=require("./src/log");let version=exports.version="4.15.4";function config(e){return(0,_log.warnLog)("vxe.error.delFunc",["config","setConfig"]),(0,_core.setConfig)(e)}function setup(e){return(0,_log.warnLog)("vxe.error.delFunc",["setup","setConfig"]),(0,_core.setConfig)(e)}_core.VxeUI.uiVersion=version,_core.VxeUI.dynamicApp=_dynamics.dynamicApp,_core.VxeUI.config=config,_core.VxeUI.setup=setup,(0,_core.setConfig)({alert:{},anchor:{},anchorLink:{},avatar:{},backtop:{showIcon:!0,showContent:!0,showTop:!0,showBottom:!0,shadow:!0,threshold:20},badge:{},breadcrumb:{separator:"/"},breadcrumbItem:{},button:{trigger:"hover",prefixTooltip:{enterable:!0},suffixTooltip:{enterable:!0},showDropdownIcon:!0},buttonGroup:{},calendar:{minDate:new Date(1900,0,1),maxDate:new Date(2100,0,1),startDay:1,selectDay:1},card:{border:!0,padding:!0},carousel:{height:200,loop:!0,interval:5e3},carouselItem:{},cascader:{showFullLabel:!0,treeConfig:{showIcon:!0},filterConfig:{autoExpandMode:"first"}},checkbox:{},checkboxButton:{},checkboxGroup:{},col:{},collapse:{padding:!0,expandConfig:{showIcon:!0}},collapsePane:{},contextMenu:{autoLocate:!0},countdown:{},colorPicker:{type:"rgb",clearable:!0,showAlpha:!0,clickToCopy:!0,showColorExtractor:!0,showQuick:!0},datePanel:{startDate:new Date(1900,0,1),endDate:new Date(2100,0,1),startDay:1,selectDay:1},datePicker:{shortcutConfig:{align:"left",mode:"text",autoClose:!0},startDay:1,selectDay:1,autoClose:!0,showClearButton:null,showConfirmButton:null},dateRangePicker:{shortcutConfig:{align:"left",mode:"text",autoClose:!0},startDay:1,selectDay:1,separator:" ~ ",autoClose:!0,showClearButton:null,showConfirmButton:null},drawer:{position:"right",showHeader:!0,lockView:!0,mask:!0,showTitleOverflow:!0,showClose:!0,padding:!0,cancelClosable:!0,confirmClosable:!0},empty:{},form:{validConfig:{showErrorMessage:!0,autoPos:!0,theme:"beautify"},tooltipConfig:{enterable:!0},titleAsterisk:!0,titleOverflow:!1,padding:!0},formDesign:{height:400,showHeader:!0,showPc:!0},formGather:{},formGroup:{},formItem:{},formView:{},icon:{},iconPicker:{icons:["home","company","comment","setting","send","envelope","envelope-open","bell","search","print","pc","goods","chart-line","edit","delete","save","folder","microphone","flag","link","location","sunny","rmb","usd","user","add-user","add-users","star","unlock","time","text","feedback","calendar","association-form","cloud-download","cloud-upload","file","subtable","chart-bar-x","chart-bar-y","chart-line","chart-pie","chart-radar"]},image:{draggable:null,showPreview:!0,showPrintButton:!0},imageGroup:{showPreview:!0,showPrintButton:!0},imagePreview:{showPrintButton:!0,maskClosable:!0},input:{startDate:new Date(1900,0,1),endDate:new Date(2100,0,1),startDay:1,selectDay:1,digits:2,controls:!0},layoutAside:{},layoutBody:{backtopConfig:{}},layoutContainer:{},layoutFooter:{},layoutHeader:{},link:{underline:!0},listDesign:{height:400,showPc:!0},listView:{},list:{virtualYConfig:{enabled:!0,gt:100}},loading:{showIcon:!0,showText:!0},menu:{},modal:{top:16,showHeader:!0,minWidth:340,minHeight:140,lockView:!0,mask:!0,duration:3e3,marginSize:0,dblclickZoom:!0,showTitleOverflow:!0,animat:!0,showClose:!0,padding:!0,draggable:!0,showConfirmButton:null,cancelClosable:!0,confirmClosable:!0,zoomConfig:{minimizeMaxSize:10,minimizeVerticalOffset:{top:-24,left:0},minimizeHorizontalOffset:{top:0,left:32}},storageKey:"VXE_MODAL_POSITION"},noticeBar:{},numberInput:{digits:2,autoFill:!0,controlConfig:{enabled:!0,layout:"right",showButton:!0,isWheel:!0,isArrow:!0}},optgroup:{},option:{},pager:{pageSizePlacement:"top"},print:{pageStyle:{}},passwordInput:{controls:!0},printPageBreak:{},pulldown:{},radio:{strict:!0},radioButton:{strict:!0},radioGroup:{strict:!0},rate:{},result:{},row:{},segmented:{},select:{multiCharOverflow:8,radioConfig:{showIcon:!0,trigger:"option"},checkboxConfig:{showIcon:!0,trigger:"option"},remoteConfig:{enabled:!0,autoLoad:!0},virtualYConfig:{enabled:!0,gt:50,oSize:2}},splitter:{resize:!0,itemConfig:{minWidth:40,minHeight:40},resizeConfig:{showTip:!0}},splitterPanel:{},slider:{max:100,min:0},steps:{},switch:{},tabPane:{},tableSelect:{gridConfig:{showOverflow:!0,showHeaderOverflow:!0,showFooterOverflow:!0,rowConfig:{isHover:!0},virtualXConfig:{enabled:!0,gt:0},virtualYConfig:{enabled:!0,gt:0}}},tabs:{},tag:{},textEllipsis:{underline:!0},text:{copyConfig:{showMessage:!0}},textarea:{resize:"none"},timeline:{},timelineItem:{},tip:{},tooltip:{trigger:"hover",theme:"dark",enterDelay:500,leaveDelay:300,isArrow:!0},tree:{indent:20,minHeight:60,radioConfig:{strict:!0},dragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},virtualYConfig:{enabled:!0,gt:50,oSize:2}},treeSelect:{virtualYConfig:{enabled:!0,gt:0,oSize:2},treeConfig:{maxHeight:300,radioConfig:{},checkboxConfig:{},filterConfig:{autoExpandAll:!0}}},upload:{mode:"all",imageTypes:["jpg","jpeg","png","gif"],showList:!0,showUploadButton:!0,showButtonText:!0,showRemoveButton:!0,showButtonIcon:!0,showPreview:!0,dragToUpload:!0,showLimitSize:!0,showLimitCount:!0,autoSubmit:!0,maxSimultaneousUploads:5,previewImageConfig:{}},watermark:{rotate:-30,gap:[100,100]},table:{},colgroup:{},column:{},toolbar:{},grid:{},gantt:{}});let iconPrefix="vxe-icon-";(0,_core.setIcon)({LOADING:iconPrefix+"spinner roll vxe-loading--default-icon",BUTTON_DROPDOWN:iconPrefix+"arrow-down",BUTTON_LOADING:iconPrefix+"spinner roll",BUTTON_TOOLTIP_ICON:iconPrefix+"question-circle-fill",MENU_ITEM_EXPAND_OPEN:iconPrefix+"arrow-down rotate180",MENU_ITEM_EXPAND_CLOSE:iconPrefix+"arrow-down",SELECT_LOADED:iconPrefix+"spinner roll",SELECT_OPEN:iconPrefix+"caret-down rotate180",SELECT_CLOSE:iconPrefix+"caret-down",SELECT_ADD_OPTION:iconPrefix+"add",ICON_PICKER_OPEN:iconPrefix+"caret-down rotate180",ICON_PICKER_CLOSE:iconPrefix+"caret-down",PAGER_HOME:iconPrefix+"home-page",PAGER_END:iconPrefix+"end-page",PAGER_JUMP_PREV:iconPrefix+"arrow-double-left",PAGER_JUMP_NEXT:iconPrefix+"arrow-double-right",PAGER_PREV_PAGE:iconPrefix+"arrow-left",PAGER_NEXT_PAGE:iconPrefix+"arrow-right",PAGER_JUMP_MORE:iconPrefix+"ellipsis-h",RADIO_CHECKED:iconPrefix+"radio-checked-fill",RADIO_UNCHECKED:iconPrefix+"radio-unchecked",RADIO_DISABLED_UNCHECKED:iconPrefix+"radio-unchecked-fill",CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",CHECKBOX_DISABLED_UNCHECKED:iconPrefix+"checkbox-unchecked-fill",INPUT_CLEAR:iconPrefix+"error-circle-fill",INPUT_SEARCH:iconPrefix+"search",INPUT_PLUS_NUM:iconPrefix+"caret-up",INPUT_MINUS_NUM:iconPrefix+"caret-down",NUMBER_INPUT_MINUS_NUM:iconPrefix+"minus",NUMBER_INPUT_PLUS_NUM:iconPrefix+"add",DATE_PICKER_DATE:iconPrefix+"calendar",PASSWORD_INPUT_SHOW_PWD:iconPrefix+"eye-fill-close",PASSWORD_INPUT_HIDE_PWD:iconPrefix+"eye-fill",MODAL_ZOOM_MIN:iconPrefix+"minus",MODAL_ZOOM_REVERT:iconPrefix+"recover",MODAL_ZOOM_IN:iconPrefix+"square",MODAL_ZOOM_OUT:iconPrefix+"maximize",MODAL_CLOSE:iconPrefix+"close",MODAL_INFO:iconPrefix+"info-circle-fill",MODAL_SUCCESS:iconPrefix+"success-circle-fill",MODAL_WARNING:iconPrefix+"warning-circle-fill",MODAL_ERROR:iconPrefix+"error-circle-fill",MODAL_QUESTION:iconPrefix+"question-circle-fill",MODAL_LOADING:iconPrefix+"spinner roll",DRAWER_CLOSE:iconPrefix+"close",FORM_PREFIX:iconPrefix+"question-circle-fill",FORM_SUFFIX:iconPrefix+"question-circle-fill",FORM_FOLDING:iconPrefix+"arrow-up rotate180",FORM_UNFOLDING:iconPrefix+"arrow-up",FORM_VALID_ERROR_ICON:iconPrefix+"warning-circle-fill",FORM_DESIGN_STYLE_SETTING:iconPrefix+"layout",FORM_DESIGN_PROPS_PC:iconPrefix+"pc",FORM_DESIGN_PROPS_MOBILE:iconPrefix+"mobile",FORM_DESIGN_PROPS_ADD:iconPrefix+"add",FORM_DESIGN_PROPS_EDIT:iconPrefix+"edit",FORM_DESIGN_WIDGET_ADD:iconPrefix+"square-plus-fill",FORM_DESIGN_WIDGET_COPY:iconPrefix+"copy",FORM_DESIGN_WIDGET_DELETE:iconPrefix+"delete",FORM_DESIGN_WIDGET_SWAP_LR:iconPrefix+"swap",FORM_DESIGN_WIDGET_OPTION_DELETE:iconPrefix+"delete",FORM_DESIGN_WIDGET_OPTION_EXPAND_OPEN:iconPrefix+"square-plus",FORM_DESIGN_WIDGET_OPTION_EXPAND_CLOSE:iconPrefix+"square-minus",LIST_DESIGN_FIELD_SETTING:iconPrefix+"custom-column",LIST_DESIGN_LIST_SETTING:iconPrefix+"menu",LIST_DESIGN_LIST_SETTING_SEARCH_DELETE:iconPrefix+"delete",LIST_DESIGN_LIST_SETTING_ACTIVE_DELETE:iconPrefix+"delete",UPLOAD_FILE_ERROR:iconPrefix+"warning-circle-fill",UPLOAD_FILE_ADD:iconPrefix+"upload",UPLOAD_FILE_REMOVE:iconPrefix+"delete",UPLOAD_FILE_DOWNLOAD:iconPrefix+"download",UPLOAD_IMAGE_UPLOAD:iconPrefix+"upload",UPLOAD_IMAGE_RE_UPLOAD:iconPrefix+"repeat",UPLOAD_IMAGE_ADD:iconPrefix+"add",UPLOAD_IMAGE_REMOVE:iconPrefix+"close",UPLOAD_LOADING:iconPrefix+"spinner roll vxe-loading--default-icon",UPLOAD_FILE_TYPE_DEFAULT:iconPrefix+"file",UPLOAD_FILE_TYPE_XLSX:iconPrefix+"file-excel",UPLOAD_FILE_TYPE_XLS:iconPrefix+"file-excel",UPLOAD_FILE_TYPE_PDF:iconPrefix+"file-pdf",UPLOAD_FILE_TYPE_PNG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_GIF:iconPrefix+"file-image",UPLOAD_FILE_TYPE_JPG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_JPEG:iconPrefix+"file-image",UPLOAD_FILE_TYPE_MD:iconPrefix+"file-markdown",UPLOAD_FILE_TYPE_PPD:iconPrefix+"file-ppt",UPLOAD_FILE_TYPE_DOCX:iconPrefix+"file-word",UPLOAD_FILE_TYPE_DOC:iconPrefix+"file-word",UPLOAD_FILE_TYPE_ZIP:iconPrefix+"file-zip",UPLOAD_FILE_TYPE_TXT:iconPrefix+"file-txt",IMAGE_PREVIEW_CLOSE:iconPrefix+"close",IMAGE_PREVIEW_PREVIOUS:iconPrefix+"arrow-left",IMAGE_PREVIEW_NEXT:iconPrefix+"arrow-right",IMAGE_PREVIEW_PCT_FULL:iconPrefix+"pct-full",IMAGE_PREVIEW_PCT_1_1:iconPrefix+"pct-1-1",IMAGE_PREVIEW_ZOOM_OUT:iconPrefix+"search-zoom-out",IMAGE_PREVIEW_ZOOM_IN:iconPrefix+"search-zoom-in",IMAGE_PREVIEW_ROTATE_LEFT:iconPrefix+"rotate-left",IMAGE_PREVIEW_ROTATE_RIGHT:iconPrefix+"rotate-right",IMAGE_PREVIEW_PRINT:iconPrefix+"print",IMAGE_PREVIEW_DOWNLOAD:iconPrefix+"download",ALERT_CLOSE:iconPrefix+"close",ALERT_INFO:iconPrefix+"info-circle-fill",ALERT_SUCCESS:iconPrefix+"success-circle-fill",ALERT_WARNING:iconPrefix+"warning-circle-fill",ALERT_ERROR:iconPrefix+"error-circle-fill",TREE_NODE_OPEN:iconPrefix+"caret-right rotate90",TREE_NODE_CLOSE:iconPrefix+"caret-right",TREE_NODE_LOADED:iconPrefix+"spinner roll",TREE_DRAG:iconPrefix+"drag-handle",TREE_DRAG_STATUS_NODE:iconPrefix+"sort",TREE_DRAG_STATUS_SUB_NODE:iconPrefix+"add-sub",TREE_DRAG_DISABLED:iconPrefix+"no-drop",TREE_SELECT_LOADED:iconPrefix+"spinner roll",TREE_SELECT_OPEN:iconPrefix+"caret-down rotate180",TREE_SELECT_CLOSE:iconPrefix+"caret-down",TABLE_SELECT_LOADED:iconPrefix+"spinner roll",TABLE_SELECT_OPEN:iconPrefix+"caret-down rotate180",TABLE_SELECT_CLOSE:iconPrefix+"caret-down",TABS_TAB_BUTTON_TOP:iconPrefix+"arrow-up",TABS_TAB_BUTTON_BOTTOM:iconPrefix+"arrow-down",TABS_TAB_BUTTON_LEFT:iconPrefix+"arrow-left",TABS_TAB_BUTTON_RIGHT:iconPrefix+"arrow-right",TABS_TAB_CLOSE:iconPrefix+"close",TABS_TAB_REFRESH:iconPrefix+"refresh",TABS_TAB_REFRESH_LOADING:iconPrefix+"refresh roll",TEXT_COPY:iconPrefix+"copy",TEXT_LOADING:iconPrefix+"spinner roll",TAG_CLOSE:iconPrefix+"close",TAG_LOADING:iconPrefix+"spinner roll",CAROUSEL_HORIZONTAL_PREVIOUS:iconPrefix+"arrow-left",CAROUSEL_HORIZONTAL_NEXT:iconPrefix+"arrow-right",CAROUSEL_VERTICAL_PREVIOUS:iconPrefix+"arrow-up",CAROUSEL_VERTICAL_NEXT:iconPrefix+"arrow-down",COLLAPSE_OPEN:iconPrefix+"arrow-right rotate90",COLLAPSE_CLOSE:iconPrefix+"arrow-right",EMPTY_DEFAULT:iconPrefix+"empty",RESULT_INFO:iconPrefix+"info-circle-fill",RESULT_SUCCESS:iconPrefix+"success-circle-fill",RESULT_WARNING:iconPrefix+"warning-circle-fill",RESULT_ERROR:iconPrefix+"error-circle-fill",RESULT_QUESTION:iconPrefix+"question-circle-fill",RESULT_LOADING:iconPrefix+"spinner roll",RATE_CHECKED:iconPrefix+"star-fill",RATE_UNCHECKED:iconPrefix+"star",COLOR_PICKER_COLOR_COPY:iconPrefix+"copy",COLOR_PICKER_EYE_DROPPER:iconPrefix+"dropper",COLOR_PICKER_TPTY_OPEN:iconPrefix+"arrow-down rotate180",COLOR_PICKER_TPTY_CLOSE:iconPrefix+"arrow-down",SPLIT_TOP_ACTION:iconPrefix+"arrow-up",SPLIT_BOTTOM_ACTION:iconPrefix+"arrow-down",SPLIT_LEFT_ACTION:iconPrefix+"arrow-left",SPLIT_RIGHT_ACTION:iconPrefix+"arrow-right",BACKTOP_TOP:iconPrefix+"top",CONTEXT_MENU_OPTION_LOADING:iconPrefix+"spinner roll",CONTEXT_MENU_CHILDREN:iconPrefix+"arrow-right",CASCADER_NODE_OPEN:iconPrefix+"arrow-right",CASCADER_NODE_CLOSE:iconPrefix+"arrow-right",CASCADER_NODE_LOADED:iconPrefix+"spinner roll"});var _default=exports.default=_core.VxeUI;
package/lib/ui/src/log.js CHANGED
@@ -6,12 +6,18 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.createComponentLog = createComponentLog;
7
7
  exports.warnLog = exports.errLog = void 0;
8
8
  var _core = require("@vxe-ui/core");
9
- const version = `ui v${"4.15.3"}`;
9
+ const {
10
+ log
11
+ } = _core.VxeUI;
12
+ const uiVersion = `ui v${"4.15.4"}`;
10
13
  function createComponentLog(name) {
14
+ const tableVersion = _core.VxeUI.tableVersion ? `table v${_core.VxeUI.tableVersion}` : '';
15
+ const ganttVersion = _core.VxeUI.ganttVersion ? `gantt v${_core.VxeUI.ganttVersion}` : '';
16
+ const designVersion = _core.VxeUI.designVersion ? `design v${_core.VxeUI.designVersion}` : '';
11
17
  return {
12
- warnLog: _core.log.create('warn', `${version} ${name}`),
13
- errLog: _core.log.create('error', `${version} ${name}`)
18
+ warnLog: log.create('warn', uiVersion + tableVersion + ganttVersion + designVersion + '] [' + name),
19
+ errLog: log.create('error', uiVersion + tableVersion + ganttVersion + designVersion + '] [' + name)
14
20
  };
15
21
  }
16
- const warnLog = exports.warnLog = _core.log.create('warn', version);
17
- const errLog = exports.errLog = _core.log.create('error', version);
22
+ const warnLog = exports.warnLog = log.create('warn', uiVersion);
23
+ const errLog = exports.errLog = log.create('error', uiVersion);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.createComponentLog=createComponentLog,exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let version="ui v4.15.3";function createComponentLog(e){return{warnLog:_core.log.create("warn",version+" "+e),errLog:_core.log.create("error",version+" "+e)}}let warnLog=exports.warnLog=_core.log.create("warn",version),errLog=exports.errLog=_core.log.create("error",version);
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.createComponentLog=createComponentLog,exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");let log=_core.VxeUI.log,uiVersion="ui v4.15.4";function createComponentLog(e){var r=_core.VxeUI.tableVersion?"table v"+_core.VxeUI.tableVersion:"",o=_core.VxeUI.ganttVersion?"gantt v"+_core.VxeUI.ganttVersion:"",n=_core.VxeUI.designVersion?"design v"+_core.VxeUI.designVersion:"";return{warnLog:log.create("warn",uiVersion+r+o+n+"] ["+e),errLog:log.create("error",uiVersion+r+o+n+"] ["+e)}}let warnLog=exports.warnLog=log.create("warn",uiVersion),errLog=exports.errLog=log.create("error",uiVersion);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxe-pc-ui",
3
- "version": "4.15.3",
3
+ "version": "4.15.4",
4
4
  "description": "A vue based PC component library",
5
5
  "scripts": {
6
6
  "update": "npm install --legacy-peer-deps",
@@ -4,7 +4,6 @@ import { getConfig, getI18n, getIcon, globalEvents, createEvent, useSize, render
4
4
  import { getEventTargetNode, updatePanelPlacement, toCssUnit } from '../../ui/src/dom'
5
5
  import { getLastZIndex, nextZIndex } from '../../ui/src/utils'
6
6
  import { enNodeValue, deNodeValue } from './util'
7
- import { createComponentLog } from '../../ui/src/log'
8
7
  import XEUtils from 'xe-utils'
9
8
  import VxeListComponent from '../../list/src/list'
10
9
  import VxeInputComponent from '../../input/src/input'
@@ -13,8 +12,6 @@ import VxeButtonComponent from '../../button/src/button'
13
12
  import type { CascaderReactData, VxeCascaderEmits, CascaderInternalData, VxeButtonEvents, ValueOf, VxeComponentStyleType, VxeCascaderDefines, CascaderPrivateRef, CascaderPrivateMethods, CascaderMethods, VxeCascaderPrivateComputed, VxeCascaderPropTypes, VxeCascaderConstructor, VxeListSlotTypes, VxeFormDefines, VxeDrawerConstructor, VxeDrawerMethods, VxeCascaderPrivateMethods, VxeFormConstructor, VxeFormPrivateMethods, VxeInputConstructor, VxeModalConstructor, VxeModalMethods } from '../../../types'
14
13
  import type { VxeTableConstructor, VxeTablePrivateMethods } from '../../../types/components/table'
15
14
 
16
- const { errLog } = createComponentLog('cascader')
17
-
18
15
  /**
19
16
  * 生成节点的唯一主键
20
17
  */
@@ -639,7 +636,6 @@ export default defineVxeComponent({
639
636
  }
640
637
 
641
638
  const handleData = (force?: boolean) => {
642
- const { nodeMaps } = internalData
643
639
  let fullList: any[] = internalData.afterVisibleList
644
640
  if (force) {
645
641
  // 更新数据,处理筛选和排序
@@ -648,17 +644,56 @@ export default defineVxeComponent({
648
644
  fullList = handleTreeToList()
649
645
  }
650
646
  const treeList = fullList.slice(0)
651
- treeList.forEach((item, $index) => {
652
- const nodeid = getNodeId(item)
653
- const itemRest = nodeMaps[nodeid]
654
- if (itemRest) {
655
- itemRest.$index = $index
656
- }
657
- })
658
647
  reactData.treeList = treeList
659
648
  }
660
649
 
661
- const triggerSearchEvent = XEUtils.debounce(() => handleData(true), 350, { trailing: true })
650
+ /**
651
+ * 获取第一个拥有子节点的节点
652
+ */
653
+ function handleHasChildNodeIds (treeList: any[], type: 'first' | 'last') {
654
+ const childrenField = computeChildrenField.value
655
+ const mapChildrenField = computeMapChildrenField.value
656
+ const treeOpts = computeTreeOpts.value
657
+ const { transform } = treeOpts
658
+ const childField = transform ? mapChildrenField : childrenField
659
+ const nodeIds = []
660
+ let currList = treeList
661
+ while (currList.length) {
662
+ let targetNode = null
663
+ for (const item of currList) {
664
+ const kids = item[childField]
665
+ if (XEUtils.isArray(kids) && kids.length > 0) {
666
+ targetNode = item
667
+ break
668
+ }
669
+ }
670
+ if (targetNode) {
671
+ nodeIds.push(getNodeId(targetNode))
672
+ currList = targetNode[childField]
673
+ } else {
674
+ const endNode = XEUtils[type](currList)
675
+ nodeIds.push(getNodeId(endNode))
676
+ break
677
+ }
678
+ }
679
+ return nodeIds
680
+ }
681
+
682
+ const triggerSearchEvent = XEUtils.debounce(() => {
683
+ handleData(true)
684
+ updateModelChecked()
685
+ const filterOpts = computeFilterOpts.value
686
+ const { autoExpandMode } = filterOpts
687
+ const { afterTreeList } = internalData
688
+ // 默认展开第
689
+ if (autoExpandMode === 'first' || autoExpandMode === 'last') {
690
+ const stItems = handleHasChildNodeIds(afterTreeList, autoExpandMode)
691
+ reactData.currentItems = stItems
692
+ } else {
693
+ handleCurrentItems()
694
+ }
695
+ updateCurrentChunk()
696
+ }, 350, { trailing: true })
662
697
 
663
698
  const loadData = (list: any[]) => {
664
699
  const treeOpts = computeTreeOpts.value
@@ -687,17 +722,20 @@ export default defineVxeComponent({
687
722
 
688
723
  const updateCurrentChunk = () => {
689
724
  const { currentItems } = reactData
690
- const { treeFullData } = internalData
725
+ const { afterTreeList } = internalData
691
726
  const childrenField = computeChildrenField.value
692
- const currentCunkList: any[][] = [treeFullData]
727
+ const mapChildrenField = computeMapChildrenField.value
728
+ const treeOpts = computeTreeOpts.value
729
+ const { transform } = treeOpts
730
+ const currentCunkList: any[][] = [afterTreeList]
693
731
  if (currentItems.length) {
694
732
  let chunkIndex = 0
695
733
  let stNodeid = currentItems[chunkIndex]
696
- let optList = treeFullData
734
+ let optList = afterTreeList
697
735
  while (stNodeid && optList && optList.length) {
698
736
  stNodeid = currentItems[chunkIndex++]
699
737
  const currOption = optList.find(item => stNodeid === getNodeId(item))
700
- optList = currOption ? currOption[childrenField] : []
738
+ optList = currOption ? currOption[transform ? mapChildrenField : childrenField] : []
701
739
  if (!optList || !optList.length) {
702
740
  break
703
741
  }
@@ -708,7 +746,7 @@ export default defineVxeComponent({
708
746
  }
709
747
 
710
748
  const handleCurrentItems = () => {
711
- const { treeFullData } = internalData
749
+ const { afterTreeList } = internalData
712
750
  const selectVals = computeSelectVals.value
713
751
  const childrenField = computeChildrenField.value
714
752
  const mapChildrenField = computeMapChildrenField.value
@@ -718,7 +756,7 @@ export default defineVxeComponent({
718
756
  const expandedMaps: Record<string, boolean> = {}
719
757
  if (selectVals.length) {
720
758
  const lastVal = enNodeValue(XEUtils.last(selectVals))
721
- const stRest = XEUtils.findTree(treeFullData, (item) => lastVal === getNodeId(item), { children: transform ? mapChildrenField : childrenField })
759
+ const stRest = XEUtils.findTree(afterTreeList, (item) => lastVal === getNodeId(item), { children: transform ? mapChildrenField : childrenField })
722
760
  if (stRest) {
723
761
  const { nodes } = stRest
724
762
  nodes.forEach(item => {
@@ -830,10 +868,11 @@ export default defineVxeComponent({
830
868
  })
831
869
  }
832
870
 
833
- const clearCheckboxNode = () => {
871
+ const clearSelectedNode = () => {
834
872
  internalData.indeterminateRowMaps = {}
835
873
  internalData.selectCheckboxMaps = {}
836
874
  reactData.updateCheckboxFlag++
875
+ reactData.selectRadioKey = null
837
876
  updateCheckboxStatus()
838
877
  return nextTick().then(() => {
839
878
  return { checkNodeKeys: [], checkNodes: [] }
@@ -880,7 +919,7 @@ export default defineVxeComponent({
880
919
  const { $event } = params
881
920
  const { multiple, checkedClosable } = props
882
921
  const value = multiple ? [] : null
883
- clearCheckboxNode().then(() => {
922
+ clearSelectedNode().then(() => {
884
923
  if (checkedClosable) {
885
924
  hideOptionPanel($event)
886
925
  }
@@ -969,9 +1008,12 @@ export default defineVxeComponent({
969
1008
  const { nodeMaps } = internalData
970
1009
  const radioOpts = computeRadioOpts.value
971
1010
  const childrenField = computeChildrenField.value
1011
+ const treeOpts = computeTreeOpts.value
1012
+ const { transform } = treeOpts
1013
+ const mapChildrenField = computeMapChildrenField.value
972
1014
  const { checkMode, checkMethod } = radioOpts
973
1015
  const nodeid = getNodeId(node)
974
- const childList: any[] = node[childrenField]
1016
+ const childList: any[] = node[transform ? mapChildrenField : childrenField]
975
1017
  const isExistChild = childList && childList.length > 0
976
1018
  const nodeItem = nodeMaps[nodeid] || {}
977
1019
  const nLevel = nodeItem.level
@@ -1135,7 +1177,7 @@ export default defineVxeComponent({
1135
1177
  const childRowList: any[][] = []
1136
1178
  XEUtils.eachTree(afterTreeList, (node) => {
1137
1179
  const nodeid = getNodeId(node)
1138
- const childList = node[childrenField]
1180
+ const childList = node[transform ? mapChildrenField : childrenField]
1139
1181
  if (childList && childList.length && !childRowMaps[nodeid]) {
1140
1182
  childRowMaps[nodeid] = 1
1141
1183
  childRowList.unshift([node, nodeid, childList])
@@ -1235,7 +1277,7 @@ export default defineVxeComponent({
1235
1277
  const treeOpts = computeTreeOpts.value
1236
1278
  const { transform } = treeOpts
1237
1279
  const nodeid = getNodeId(node)
1238
- const childList: any[] = node[childrenField]
1280
+ const childList: any[] = node[transform ? mapChildrenField : childrenField]
1239
1281
  const isExistChild = childList && childList.length > 0
1240
1282
  const nodeItem = nodeMaps[nodeid] || {}
1241
1283
  const nLevel = nodeItem.level
@@ -1490,11 +1532,12 @@ export default defineVxeComponent({
1490
1532
  const { currentNode, selectRadioKey, updateCheckboxFlag, updateExpandedFlag } = reactData
1491
1533
  const { nodeMaps, selectCheckboxMaps, indeterminateRowMaps, treeExpandedMaps, treeExpandLazyLoadedMaps } = internalData
1492
1534
  const treeOpts = computeTreeOpts.value
1493
- const { lazy, iconLoaded, iconOpen, iconClose } = treeOpts
1535
+ const { lazy, transform, iconLoaded, iconOpen, iconClose } = treeOpts
1494
1536
  const childrenField = computeChildrenField.value
1537
+ const mapChildrenField = computeMapChildrenField.value
1495
1538
  const labelField = computeLabelField.value
1496
1539
  const hasChildField = computeHasChildField.value
1497
- const childList: any[] = node[childrenField]
1540
+ const childList: any[] = node[transform ? mapChildrenField : childrenField]
1498
1541
  const isExistChild = childList && childList.length > 0
1499
1542
  const iconSlot = slots.icon
1500
1543
  const titleSlot = slots.title
@@ -1681,7 +1724,7 @@ export default defineVxeComponent({
1681
1724
  h('div', {
1682
1725
  class: 'vxe-tree-select--header-button'
1683
1726
  }, [
1684
- showCheckedButton && showClearButton
1727
+ (showCheckedButton && multiple) || showClearButton
1685
1728
  ? h('div', {
1686
1729
  class: 'vxe-tree-select--selected-btns'
1687
1730
  }, [
@@ -1732,7 +1775,7 @@ export default defineVxeComponent({
1732
1775
  })
1733
1776
  ])
1734
1777
  ]),
1735
- footerSlot || showTotalButton || (showCloseButton && multiple)
1778
+ footerSlot || showTotalButton || showCloseButton
1736
1779
  ? h('div', {
1737
1780
  class: 'vxe-cascader--panel-footer'
1738
1781
  }, footerSlot
@@ -1746,7 +1789,7 @@ export default defineVxeComponent({
1746
1789
  class: 'vxe-cascader--total-btns'
1747
1790
  }, getI18n('vxe.treeSelect.total', [selectVals.length]))
1748
1791
  : renderEmptyElement($xeCascader),
1749
- showCloseButton && multiple
1792
+ showCloseButton
1750
1793
  ? h('div', {
1751
1794
  class: 'vxe-cascader--oper-btns'
1752
1795
  }, [
@@ -1793,9 +1836,6 @@ export default defineVxeComponent({
1793
1836
  loadData(props.options || [])
1794
1837
 
1795
1838
  onMounted(() => {
1796
- if (props.filterable) {
1797
- errLog('vxe.error.notProp', ['filterable'])
1798
- }
1799
1839
  globalEvents.on($xeCascader, 'mousewheel', handleGlobalMousewheelEvent)
1800
1840
  globalEvents.on($xeCascader, 'mousedown', handleGlobalMousedownEvent)
1801
1841
  globalEvents.on($xeCascader, 'blur', handleGlobalBlurEvent)
@@ -904,7 +904,7 @@ export default defineVxeComponent({
904
904
  h('div', {
905
905
  class: 'vxe-tree-select--header-button'
906
906
  }, [
907
- showCheckedButton && showClearButton
907
+ (showCheckedButton && multiple) || showClearButton
908
908
  ? h('div', {
909
909
  class: 'vxe-tree-select--selected-btns'
910
910
  }, [
@@ -924,24 +924,20 @@ export default defineVxeComponent({
924
924
  : renderEmptyElement($xeTreeSelect)
925
925
  ])
926
926
  : renderEmptyElement($xeTreeSelect),
927
- showExpandButton && showExpandButton
927
+ showExpandButton
928
928
  ? h('div', {
929
929
  class: 'vxe-tree-select--expand-btns'
930
930
  }, [
931
- showExpandButton
932
- ? h(VxeButtonComponent, {
933
- content: getI18n('vxe.treeSelect.allExpand'),
934
- mode: 'text',
935
- onClick: allExpandPanelEvent
936
- })
937
- : renderEmptyElement($xeTreeSelect),
938
- showExpandButton
939
- ? h(VxeButtonComponent, {
940
- content: getI18n('vxe.treeSelect.clearExpand'),
941
- mode: 'text',
942
- onClick: clearExpandPanelEvent
943
- })
944
- : renderEmptyElement($xeTreeSelect)
931
+ h(VxeButtonComponent, {
932
+ content: getI18n('vxe.treeSelect.allExpand'),
933
+ mode: 'text',
934
+ onClick: allExpandPanelEvent
935
+ }),
936
+ h(VxeButtonComponent, {
937
+ content: getI18n('vxe.treeSelect.clearExpand'),
938
+ mode: 'text',
939
+ onClick: clearExpandPanelEvent
940
+ })
945
941
  ])
946
942
  : renderEmptyElement($xeTreeSelect)
947
943
  ])
@@ -1004,7 +1000,7 @@ export default defineVxeComponent({
1004
1000
  }, treeScopedSlots)
1005
1001
  ])
1006
1002
  ]),
1007
- footerSlot || showTotalButton || (showCloseButton && multiple)
1003
+ footerSlot || showTotalButton || showCloseButton
1008
1004
  ? h('div', {
1009
1005
  class: 'vxe-tree-select--panel-footer'
1010
1006
  }, footerSlot
@@ -1018,7 +1014,7 @@ export default defineVxeComponent({
1018
1014
  class: 'vxe-tree-select--total-btns'
1019
1015
  }, getI18n('vxe.treeSelect.total', [selectVals.length]))
1020
1016
  : renderEmptyElement($xeTreeSelect),
1021
- showCloseButton && multiple
1017
+ showCloseButton
1022
1018
  ? h('div', {
1023
1019
  class: 'vxe-tree-select--oper-btns'
1024
1020
  }, [
@@ -73,6 +73,9 @@ setConfig({
73
73
  showFullLabel: true,
74
74
  treeConfig: {
75
75
  showIcon: true
76
+ },
77
+ filterConfig: {
78
+ autoExpandMode: 'first'
76
79
  }
77
80
  },
78
81
  checkbox: {},
@@ -1,13 +1,18 @@
1
- import { log } from '@vxe-ui/core'
1
+ import { VxeUI } from '@vxe-ui/core'
2
2
 
3
- const version = `ui v${process.env.VUE_APP_VXE_VERSION}`
3
+ const { log } = VxeUI
4
+
5
+ const uiVersion = `ui v${process.env.VUE_APP_VXE_VERSION}`
4
6
 
5
7
  export function createComponentLog (name: string) {
8
+ const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : ''
9
+ const ganttVersion = VxeUI.ganttVersion ? `gantt v${VxeUI.ganttVersion}` : ''
10
+ const designVersion = VxeUI.designVersion ? `design v${VxeUI.designVersion}` : ''
6
11
  return {
7
- warnLog: log.create('warn', `${version} ${name}`),
8
- errLog: log.create('error', `${version} ${name}`)
12
+ warnLog: log.create('warn', uiVersion + tableVersion + ganttVersion + designVersion + '] [' + name),
13
+ errLog: log.create('error', uiVersion + tableVersion + ganttVersion + designVersion + '] [' + name)
9
14
  }
10
15
  }
11
16
 
12
- export const warnLog = log.create('warn', version)
13
- export const errLog = log.create('error', version)
17
+ export const warnLog = log.create('warn', uiVersion)
18
+ export const errLog = log.create('error', uiVersion)
@@ -46,6 +46,10 @@ export namespace VxeCascaderPropTypes {
46
46
  */
47
47
  type FilterValue = string | number | null | undefined
48
48
  export interface FilterConfig<D = any> {
49
+ /**
50
+ * 过滤后是否自动展开第一个节点
51
+ */
52
+ autoExpandMode?: 'first' | 'last' | ''
49
53
  /**
50
54
  * 过滤之前的方法
51
55
  */