vxe-pc-ui 4.15.2 → 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 (129) hide show
  1. package/dist/all.esm.js +866 -257
  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 +72 -29
  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 +16 -19
  26. package/es/ui/index.js +4 -1
  27. package/es/ui/src/log.js +14 -4
  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 +80 -30
  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 +941 -215
  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 +14 -10
  78. package/lib/tree-select/src/tree-select.min.js +1 -1
  79. package/lib/ui/index.js +4 -1
  80. package/lib/ui/index.min.js +1 -1
  81. package/lib/ui/src/log.js +16 -3
  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 +71 -29
  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 +17 -19
  110. package/packages/ui/index.ts +3 -0
  111. package/packages/ui/src/log.ts +16 -4
  112. package/packages/upload/src/upload.ts +14 -3
  113. package/types/components/cascader.d.ts +4 -0
  114. package/types/components/date-picker.d.ts +14 -6
  115. package/types/components/drawer.d.ts +2 -0
  116. package/types/components/modal.d.ts +2 -0
  117. package/types/components/upload.d.ts +28 -1
  118. /package/es/icon/{iconfont.1781753592499.ttf → iconfont.1781876596706.ttf} +0 -0
  119. /package/es/icon/{iconfont.1781753592499.woff → iconfont.1781876596706.woff} +0 -0
  120. /package/es/icon/{iconfont.1781753592499.woff2 → iconfont.1781876596706.woff2} +0 -0
  121. /package/es/{iconfont.1781753592499.ttf → iconfont.1781876596706.ttf} +0 -0
  122. /package/es/{iconfont.1781753592499.woff → iconfont.1781876596706.woff} +0 -0
  123. /package/es/{iconfont.1781753592499.woff2 → iconfont.1781876596706.woff2} +0 -0
  124. /package/lib/icon/style/{iconfont.1781753592499.ttf → iconfont.1781876596706.ttf} +0 -0
  125. /package/lib/icon/style/{iconfont.1781753592499.woff → iconfont.1781876596706.woff} +0 -0
  126. /package/lib/icon/style/{iconfont.1781753592499.woff2 → iconfont.1781876596706.woff2} +0 -0
  127. /package/lib/{iconfont.1781753592499.ttf → iconfont.1781876596706.ttf} +0 -0
  128. /package/lib/{iconfont.1781753592499.woff → iconfont.1781876596706.woff} +0 -0
  129. /package/lib/{iconfont.1781753592499.woff2 → iconfont.1781876596706.woff2} +0 -0
@@ -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("./util"),_log=require("../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils")),_list=_interopRequireDefault(require("../../list/src/list")),_input=_interopRequireDefault(require("../../input/src/input")),_button=_interopRequireDefault(require("../../button/src/button"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function getNodeUniqueId(){return _xeUtils.default.uniqueId("node_")}function createReactData(){return{initialized:!1,searchValue:"",searchLoading:!1,currentCunkList:[],currentItems:[],currentNode:null,panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1,selectRadioKey:null,treeList:[],updateExpandedFlag:1,updateCheckboxFlag:1,fullOptFlag:1,lazyOptFlag:1}}function createInternalData(){return{listVirtualYOpts:{enabled:!0,gt:20},afterTreeList:[],treeFullData:[],afterVisibleList:[],nodeMaps:{},fullNodeMaps:{},lazyNodeMaps:{},indeterminateRowMaps:{},selectCheckboxMaps:{},treeExpandedMaps:{},treeExpandLazyLoadedMaps:{}}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeCascader",props:{modelValue:[String,Number,Array],clearable:Boolean,placeholder:{type:String,default:()=>_xeUtils.default.eqNull((0,_ui.getConfig)().cascader.placeholder)?(0,_ui.getI18n)("vxe.base.pleaseSelect"):(0,_ui.getConfig)().cascader.placeholder},readonly:{type:Boolean,default:null},loading:Boolean,disabled:{type:Boolean,default:null},filterable:Boolean,filterConfig:Object,showFullLabel:{type:Boolean,default:(0,_ui.getConfig)().cascader.showFullLabel},separator:{type:String,default:(0,_ui.getConfig)().cascader.separator},multiple:Boolean,className:[String,Function],prefixIcon:String,lazyOptions:Array,options:Array,optionProps:Object,size:{type:String,default:()=>(0,_ui.getConfig)().cascader.size||(0,_ui.getConfig)().size},treeConfig:Object,showRadio:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.showRadio},radioConfig:Object,showCheckbox:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.showCheckbox},checkboxConfig:Object,remote:Boolean,remoteConfig:Function,popupConfig:Object,checkedClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.checkedClosable},clearClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.clearClosable},showCloseButton:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.showCloseButton},showTotalButton:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.showTotalButton},showCheckedButton:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.showCheckedButton},showClearButton:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.showClearButton}},emits:["update:modelValue","change","all-change","clear","blur","focus","click","node-click","node-expand","current-change","radio-change","checkbox-change","load-success","load-error","visible-change"],setup(F,e){let{emit:l,slots:V}=e,d=(0,_vue.inject)("$xeModal",null),c=(0,_vue.inject)("$xeDrawer",null),E=(0,_vue.inject)("$xeTable",null),r=(0,_vue.inject)("$xeForm",null),i=(0,_vue.inject)("xeFormItemInfo",null);var a=_xeUtils.default.uniqueId();let $=(0,_ui.useSize)(F).computeSize,I=(0,_vue.ref)(),L=(0,_vue.ref)(),T=(0,_vue.ref)(),j=(0,_vue.ref)(),w=(0,_vue.ref)(),P=(0,_vue.reactive)(createReactData()),U=createInternalData(),k={refElem:I},q=(0,_vue.computed)(()=>{var e=F.readonly;return null===e?!!r&&r.props.readonly:e}),N=(0,_vue.computed)(()=>{var e=F.disabled;return null===e?!!r&&r.props.disabled:e}),D=(0,_vue.computed)(()=>{var e=B.value.transfer;return _xeUtils.default.isBoolean(e)?e:!!(E||d||c||r)}),O=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().cascader.treeConfig,F.treeConfig)),_=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().cascader.radioConfig,F.radioConfig)),g=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().cascader.checkboxConfig,F.checkboxConfig)),B=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().cascader.popupConfig,F.popupConfig)),y=(0,_vue.computed)(()=>F.optionProps||{}),A=(0,_vue.computed)(()=>y.value.label||"label"),p=(0,_vue.computed)(()=>y.value.value||"value"),M=(0,_vue.computed)(()=>O.value.keyField||"id"),K=(0,_vue.computed)(()=>O.value.parentField||"parentId"),z=(0,_vue.computed)(()=>O.value.childrenField||"children"),x=(0,_vue.computed)(()=>O.value.mapChildrenField||"mapChildren"),H=(0,_vue.computed)(()=>O.value.hasChildField||"hasChild"),X=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().cascader.remoteConfig,F.remoteConfig)),Y=(0,_vue.computed)(()=>{var e=F.modelValue;return _xeUtils.default.eqNull(e)?[]:_xeUtils.default.isArray(e)?e:[e]}),W=(0,_vue.computed)(()=>{let t=F.showFullLabel,{fullOptFlag:l,lazyOptFlag:r}=P,{fullNodeMaps:i,lazyNodeMaps:n}=U,u=A.value;return Y.value.map(e=>{var a=i[e];if(l&&a)return t?a.fullLabel:a.item[u];if(r){a=n[e];if(a)return t?a.fullLabel:a.item[u]}return e}).join(", ")}),Z=(0,_vue.computed)(()=>{var{currentCunkList:e,panelStyle:a}=P,{height:t,nodeWidth:l,nodeHeight:r}=B.value,a=Object.assign(Object.assign({},a),{"--vxe-ui-cascader-chunk-size":e.length});return t&&(a["--vxe-ui-cascader-chunk-height"]=(0,_dom.toCssUnit)(t)),l&&(a["--vxe-ui-cascader-node-width"]=(0,_dom.toCssUnit)(l)),r&&(a["--vxe-ui-cascader-node-height"]=(0,_dom.toCssUnit)(r)),a}),G=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().cascader.filterConfig,F.filterConfig)),J={},R={xID:a,props:F,context:e,reactData:P,internalData:U,getRefMaps:()=>k,getComputeMaps:()=>J},m=(e,a,t)=>{l(e,(0,_ui.createEvent)(t,{$cascader:R},a))},Q=e=>{l("update:modelValue",e)};a={dispatchEvent:m};let S=e=>e?(e=e[p.value],(0,_util.enNodeValue)(e)):"";let ee=(e,t)=>{let l=U.selectCheckboxMaps;var a=x.value,r=z.value,i=g.value.checkStrictly,n=O.value.transform,u=e=>{var a=S(e);t?l[a]||(l[a]=e):l[a]&&delete l[a]};i?e.forEach(u):_xeUtils.default.eachTree(e,u,{children:n?a:r}),P.updateCheckboxFlag++,b()},ae=(e,t)=>{let l=U.nodeMaps;if(e){_xeUtils.default.isArray(e)||(e=[e]);let a=[];e.forEach(e=>{e=(0,_util.enNodeValue)(e),e=l[e];e&&a.push(e.item)}),ee(a,t)}return(0,_vue.nextTick)()},te=()=>{var e,a=F.modelValue,t=U.nodeMaps;let l={};F.multiple?a&&a.length&&(e=a,U.selectCheckboxMaps={},ae(e,!0)):a&&(t=t[e=(0,_util.enNodeValue)(_xeUtils.default.isArray(a)?a[0]:a)])&&(t.nodes.forEach(e=>{l[S(e)]=!0}),P.selectRadioKey=e),U.treeExpandedMaps=l},le=()=>{let o=F.separator;var e=U.treeFullData;let s=p.value,d=A.value;var a=z.value;let c={},v={};_xeUtils.default.eachTree(e,(e,a,t,l,r,i)=>{let n=S(e);n||(n=getNodeUniqueId(),e[s]=n);var u=e[s],e={item:e,index:a,$index:-1,_index:-1,items:t,parent:r,nodes:i,level:i.length-1,treeIndex:a,lineCount:0,treeLoaded:!1,fullLabel:i.map(e=>e[d]).join(o||" / ")};c[n]=e,v[u]=e},{children:a}),U.nodeMaps=c,U.fullNodeMaps=v,P.fullOptFlag++},re=()=>{let o=F.separator,{afterTreeList:e,nodeMaps:s}=U,d=A.value;var a=z.value,t=x.value,l=O.value.transform;let c=0;_xeUtils.default.eachTree(e,(e,a,t,l,r,i)=>{var n=S(e),u=s[n];u?(u.items=t,u.treeIndex=a,u._index=c):(u={item:e,index:a,$index:-1,_index:c,items:t,parent:r,nodes:i,level:i.length-1,treeIndex:a,lineCount:0,treeLoaded:!1,fullLabel:i.map(e=>e[d]).join(o||" / ")},s[n]=u),c++},{children:l?t:a})},ie=()=>{var a=P.searchValue,{treeFullData:t,lastFilterValue:e}=U;let l=A.value;var r=z.value,i=x.value,n=O.value.transform;let{beforeFilterMethod:u,filterMethod:o,afterFilterMethod:s}=G.value,d=t,c=d,v="";if(a){v=""+a;a=o?e=>o({$cascader:R,node:e,filterValue:v}):e=>-1<String(e[l]).toLowerCase().indexOf(v.toLowerCase());let e={$cascader:R,filterValue:v};u&&u(e),d=n?c=_xeUtils.default.searchTree(t,a,{original:!0,isEvery:!0,children:r,mapChildren:i}):t.filter(a),U.lastFilterValue=v,(0,_vue.nextTick)(()=>{s&&s(e)})}else{if(n&&(c=_xeUtils.default.searchTree(t,()=>!0,{original:!0,isEvery:!0,children:r,mapChildren:i}),d=c,e)){let e={$cascader:R,filterValue:v};u&&u(e),(0,_vue.nextTick)(()=>{s&&s(e)})}U.lastFilterValue=""}U.afterVisibleList=d,U.afterTreeList=c,re()},v=()=>{let{afterTreeList:e,treeExpandedMaps:o}=U;var a=x.value,t=O.value.transform;let s={};if(t){let u=[];return _xeUtils.default.eachTree(e,(e,a,t,l,r)=>{var i=S(e),n=S(r);(!r||s[n]&&o[n])&&(s[i]=1,u.push(e))},{children:a}),U.afterVisibleList=u}return U.afterVisibleList},h=e=>{let t=U.nodeMaps,a=U.afterVisibleList;e&&(ie(),a=v());e=a.slice(0);e.forEach((e,a)=>{e=S(e),e=t[e];e&&(e.$index=a)}),P.treeList=e},ne=_xeUtils.default.debounce(()=>h(!0),350,{trailing:!0}),ue=e=>{var a=O.value,t=M.value,l=K.value,r=z.value,{rootParentValue:i,rootValues:n}=a,a=a.transform,a=a?_xeUtils.default.toArrayTree(e,{key:t,parentKey:l,mapChildren:r,rootParentValue:i,rootValues:n}):e?e.slice(0):[];return U.treeFullData=a,le(),h(!0),te(),oe(),u(),(0,_vue.nextTick)()},u=()=>{var l=P.currentItems,r=U.treeFullData,i=z.value,n=[r];if(l.length){let e=0,a=l[e],t=r;for(;a&&t&&t.length;){a=l[e++];var u=t.find(e=>a===S(e));if(!(t=u?u[i]:[])||!t.length)break;n.push(t)}}P.currentCunkList=n},oe=()=>{var e=U.treeFullData,t=Y.value,l=z.value,r=x.value,i=O.value.transform;let n=[],u={};if(t.length){let a=(0,_util.enNodeValue)(_xeUtils.default.last(t));t=_xeUtils.default.findTree(e,e=>a===S(e),{children:i?r:l});t&&(e=t.nodes,e.forEach(e=>{e=S(e);u[e]=!0,n.push(e)}))}U.treeExpandedMaps=u,P.currentItems=n},se=()=>{var e=B.value.zIndex;e?P.panelIndex=e:P.panelIndex<(0,_utils.getLastZIndex)()&&(P.panelIndex=(0,_utils.nextZIndex)())},o=()=>{let t=P.panelIndex,l=I.value,r=w.value,i=D.value,n=B.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(l,r,{placement:n.placement,defaultPlacement:n.defaultPlacement,teleportTo:i,isMinWidth:!1}),a=Object.assign(e.style,{zIndex:t});P.panelStyle=a,P.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},t=e=>{var{loading:a,remote:t,filterable:l}=F,r=U.treeFullData,i=N.value,n=X.value;a||i||(clearTimeout(U.hpTimeout),P.initialized||(P.initialized=!0),P.isActivated=!0,P.isAniVisible=!0,l&&t&&n.enabled&&n.autoLoad&&!r.length&&Ue(),setTimeout(()=>{P.visiblePanel=!0,Ee()},10),se(),o(),m("visible-change",{visible:!0},e||null))},s=e=>{P.visiblePanel=!1,U.hpTimeout=setTimeout(()=>{P.isAniVisible=!1},350),m("visible-change",{visible:!1},e||null)},de=e=>(P.currentNode=e,(0,_vue.nextTick)()),ce=e=>{let t={};var a=z.value,l=x.value,r=O.value.transform;let i=[],n=[];return e&&_xeUtils.default.eachTree(U.afterTreeList,e=>{var a=S(e);i.push(a),n.push(e),t[a]=!0},{children:r?l:a}),U.indeterminateRowMaps={},U.selectCheckboxMaps=t,P.updateCheckboxFlag++,b(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:i,checkNodes:n}))},ve=()=>(U.indeterminateRowMaps={},U.selectCheckboxMaps={},P.updateCheckboxFlag++,b(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:[],checkNodes:[]}))),f=(e,a,t)=>{a=_xeUtils.default.isArray(a)?a.map(_util.deNodeValue):(0,_util.deNodeValue)(a);Q(a),a!==F.modelValue&&(m("change",{value:a,node:t,option:t},e),r)&&i&&r.triggerItemEvent(e,i.itemConfig.field,a)},pe=(e,a)=>{f(e,a,null),m("clear",{value:a},e)},he=(e,a)=>{pe(a,null),s(a)},fe=e=>{let t=e.$event,{multiple:a,checkedClosable:l}=F;a&&ce(!0).then(({checkNodeKeys:e,checkNodes:a})=>{f(t,e,a[0]),m("all-change",{value:e},t),l&&s(t)})},_e=e=>{let a=e.$event,{multiple:t,checkedClosable:l}=F;e=t?[]:null;ve().then(()=>{l&&s(a)}),f(a,e,null),m("clear",{value:e},a)},ge=e=>{e=e.$event;s(e)},xe=e=>{var a=P.visiblePanel;N.value||a&&(a=w.value,(0,_dom.getEventTargetNode)(e,a).flag?o():s(e))},me=e=>{var a,t,l=P.visiblePanel;N.value||(a=I.value,t=w.value,P.isActivated=(0,_dom.getEventTargetNode)(e,a).flag||(0,_dom.getEventTargetNode)(e,t).flag,l&&!P.isActivated&&s(e))},be=e=>{var{visiblePanel:a,isActivated:t}=P;a&&s(e),t&&(P.isActivated=!1),(a||t)&&(e=L.value)&&e.blur()},Ce=()=>{var e=P.visiblePanel;e&&o()},Ee=()=>{F.filterable&&(0,_vue.nextTick)(()=>{var e=T.value;e&&e.focus()})},ke=(e,a)=>{e.preventDefault();P.currentNode=a,m("current-change",{node:a,checked:!0},e)},ye=(e,a)=>{e.preventDefault(),e.stopPropagation();var t=U.nodeMaps,l=_.value,r=z.value,{checkMode:l,checkMethod:i}=l,n=S(a),r=a[r],r=r&&0<r.length,t=(t[n]||{}).level;(i?i({$cascader:R,node:a}):C(l,r,t))&&(i=n,P.selectRadioKey=i,f(e,i,a),s(e))},Me=i=>{var e=g.value;let t=O.value.loadMethod,n=e.checkStrictly;return new Promise(e=>{if(t){var a=U.nodeMaps;let l=S(i),r=a[l];U.treeExpandLazyLoadedMaps[l]=!0,Promise.resolve(t({$cascader:R,node:i})).then(t=>{var e=U.treeExpandLazyLoadedMaps;if(r.treeLoaded=!0,e[l]&&(e[l]=!1),t=_xeUtils.default.isArray(t)?t:[])return R.loadChildrenNode(i,t).then(e=>{var a=U.treeExpandedMaps;return e.length&&!a[l]&&(a[l]=!0),P.updateExpandedFlag++,!n&&R.isCheckedByCheckboxNodeId(l)&&ee(e,!0),m("load-success",{node:i,data:t},new Event("load-success")),(0,_vue.nextTick)()});m("load-success",{node:i,data:t},new Event("load-success"))}).catch(e=>{var a=U.treeExpandLazyLoadedMaps;r.treeLoaded=!1,a[l]&&(a[l]=!1),m("load-error",{node:i,data:e},new Event("load-error"))}).finally(()=>{v(),h()})}else e()})},Ie=(e,a)=>{let{treeExpandLazyLoadedMaps:l,treeExpandedMaps:r}=U,i=U.nodeMaps,n=z.value,u=H.value;let{lazy:o,toggleMethod:t}=O.value,s=[];var e=(e=t?e.filter(e=>t({$cascader:R,expanded:a,node:e})):e).length?[e[e.length-1]]:[],d=S(e[0]),d=i[d];d&&d.items.forEach(e=>{e=S(e);r[e]&&delete r[e]});let c=[];return a?e.forEach(e=>{var a,t=S(e);r[t]||(a=i[t],o&&e[u]&&!a.treeLoaded&&!l[t]?s.push(Me(e)):e[n]&&e[n].length&&(r[t]=!0,c.push(e)))}):e.forEach(e=>{var a=S(e);r[a]&&(delete r[a],c.push(e))}),P.updateExpandedFlag++,v(),h(),Promise.all(s)},Le=(e,a,t,l)=>{var r=P.currentItems,i=U.treeExpandLazyLoadedMaps,n=O.value.lazy,r=r.slice(0,l),l=S(a);e.stopPropagation(),r.push(l),P.currentItems=r,n&&i[l]||Ie([a],!0),de(a),u(),m("node-expand",{node:a,expanded:!0},e)},b=()=>{let{selectCheckboxMaps:o,indeterminateRowMaps:s,afterTreeList:e}=U,i=z.value;var a=x.value;let{checkStrictly:t,checkMethod:d}=g.value;var n=O.value.transform;if(!t){let l={},r=[];_xeUtils.default.eachTree(e,e=>{var a=S(e),t=e[i];t&&t.length&&!l[a]&&(l[a]=1,r.unshift([e,a,t]))},{children:n?a:i}),r.forEach(e=>{var a=e[0],t=e[1],e=e[2];let l=0,r=0,i=0;var n=e.length;e.forEach(d?e=>{var a=S(e),t=o[a];d({$cascader:R,node:e})?(t?l++:s[a]&&r++,i++):t?l++:s[a]&&r++}:e=>{e=S(e);o[e]?l++:s[e]&&r++,i++});let u=!1;e=!(u=0<n?0<i?(0<l||0<r)&&l>=i:0<l&&l>=i||!!o[t]:o[t])&&(0<l||0<r);u?(o[t]=a,s[t]&&delete s[t]):(o[t]&&delete o[t],e?s[t]=a:s[t]&&delete s[t])}),P.updateCheckboxFlag++}},Te=(e,t)=>{e.preventDefault(),e.stopPropagation();let{selectCheckboxMaps:l,nodeMaps:a}=U;var r=z.value,i=x.value,{checkStrictly:n,checkMode:u,checkMethod:o}=g.value,s=O.value.transform,d=S(t),c=t[r],c=c&&0<c.length,v=(a[d]||{}).level,o=o?!o({$cascader:R,node:t}):!C(u,c,v);if(!o){let a=!1;l[d]?delete l[d]:(a=!0,l[d]=t),n||_xeUtils.default.eachTree(_xeUtils.default.get(t,s?i:r),e=>{e=S(e);a?l[e]||(l[e]=!0):l[e]&&delete l[e]},{children:s?i:r}),P.updateCheckboxFlag++,b();u=_xeUtils.default.keys(l);f(e,u,t)}},we=(e,a,t,l)=>{var{multiple:r,showCheckbox:i,showRadio:n}=F,u=O.value,o=_.value,s=g.value,d=z.value,c=x.value,{transform:u,trigger:v}=u,u=a[u?c:d];let p=!1,h=!1,f=!1;ke(e,a),"icon"!==v&&(f=!0,Le(e,a,t,l)),r?"node"!==s.trigger&&(i||u&&u.length)||(h=!0,Te(e,a)):"node"!==o.trigger&&(n||u&&u.length)||(p=!0,ye(e,a)),m("node-click",{node:a,triggerCurrent:!0,triggerRadio:p,triggerCheckbox:h,triggerExpand:f},e)},Ne=e=>{N.value||P.visiblePanel||(P.triggerFocusPanel=!0,t(e),setTimeout(()=>{P.triggerFocusPanel=!1},150)),m("focus",{},e)},Fe=e=>{e.preventDefault(),P.triggerFocusPanel?P.triggerFocusPanel=!1:P.visiblePanel||t(e),m("click",{},e)},Ve=e=>{P.isActivated=!1,m("blur",{},e)},Pe=e=>{P.searchValue=e,ne(new Event("filter"))},Ue=()=>{var{modelValue:e,remote:a}=F,t=P.searchValue,l=X.value,r=l.queryMethod;a&&r&&l.enabled&&(P.searchLoading=!0,Promise.resolve(r({$cascader:R,searchValue:t,value:e})).then(()=>(0,_vue.nextTick)()).catch(()=>(0,_vue.nextTick)()).finally(()=>{P.searchLoading=!1}))},De=e=>{e=e.$event;e.preventDefault(),P.triggerFocusPanel?P.triggerFocusPanel=!1:(P.visiblePanel?s:t)(e)},C=(Object.assign(R,a,{isCheckedByCheckboxNodeId:e=>{var a=P.updateCheckboxFlag,t=U.selectCheckboxMaps;return!(!a||!t[e])},loadChildrenNode(a,e){let u=F.separator,o=U.nodeMaps;var t=O.value;let s=A.value,{lazy:l,transform:r}=t;if(!l)return Promise.resolve([]);let i=z.value,n=x.value,d=o[S(a)],c=d?d.level:0,v=d?d.nodes:[];return(e=>{let t=p.value;return Promise.resolve(e.map(e=>{var a,e=Object.assign({},e);return S(e)||(a=getNodeUniqueId(),_xeUtils.default.set(e,t,a)),e}))})(e).then(e=>(_xeUtils.default.eachTree(e,(e,a,t,l,r,i)=>{var n=S(e);o[n]={item:e,index:-1,$index:-1,_index:-1,items:t,parent:r||d.item,nodes:v.concat(i),level:c+i.length,treeIndex:-1,lineCount:0,treeLoaded:!1,fullLabel:i.map(e=>e[s]).join(u||" / ")}},{children:i}),a[i]=e,r&&(a[n]=e),re(),e))}}),(e,a,t)=>{if(e){if("first"===e)return!t;if("last"===e)return!a}return!0}),Oe=(t,e,l,r)=>{var a=F.showRadio,{checkMode:i,checkMethod:n,visibleMode:u,visibleMethod:o}=_.value,o=o?o({$cascader:R,node:t}):C(u,e,l);if(a&&o){let a=n?!n({$cascader:R,node:t}):!C(i,e,l);return(0,_vue.h)("div",{class:["vxe-tree--radio-option",{"is--checked":r,"is--disabled":a}],onClick:e=>{a||ye(e,t)}},[(0,_vue.h)("span",{class:["vxe-radio--icon",r?(0,_ui.getIcon)().RADIO_CHECKED:(0,_ui.getIcon)().RADIO_UNCHECKED]})])}return(0,_ui.renderEmptyElement)(R)},Be=(t,e,l,r,i)=>{var a=F.showCheckbox,{checkMode:n,checkMethod:u,visibleMode:o,visibleMethod:s}=g.value,s=s?s({$cascader:R,node:t}):C(o,e,l);if(a&&s){let a=u?!u({$cascader:R,node:t}):!C(n,e,l);return(0,_vue.h)("div",{class:["vxe-cascader--checkbox-option",{"is--checked":r,"is--indeterminate":i,"is--disabled":a}],onClick:e=>{a||Te(e,t)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",i?(0,_ui.getIcon)().CHECKBOX_INDETERMINATE:r?(0,_ui.getIcon)().CHECKBOX_CHECKED:(0,_ui.getIcon)().CHECKBOX_UNCHECKED]})])}return(0,_ui.renderEmptyElement)(R)};(0,_vue.watch)(()=>F.modelValue,()=>{P.visiblePanel||(te(),oe(),u())}),(0,_vue.watch)(()=>F.options,()=>{le()});let n=(0,_vue.ref)(0);return(0,_vue.watch)(()=>F.options?F.options.length:0,()=>{n.value++}),(0,_vue.watch)(()=>F.options,()=>{n.value++}),(0,_vue.watch)(n,()=>{ue(F.options||[])}),ue(F.options||[]),(0,_vue.onMounted)(()=>{F.filterable&&(0,_log.errLog)("vxe.error.notProp",["filterable"]),_ui.globalEvents.on(R,"mousewheel",xe),_ui.globalEvents.on(R,"mousedown",me),_ui.globalEvents.on(R,"blur",be),_ui.globalEvents.on(R,"resize",Ce)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(R,"mousewheel"),_ui.globalEvents.off(R,"mousedown"),_ui.globalEvents.off(R,"blur"),_ui.globalEvents.off(R,"resize"),_xeUtils.default.assign(U,createInternalData())}),(0,_vue.provide)("$xeCascader",R),R.renderVN=()=>{var{className:e,modelValue:a,multiple:t,loading:l,filterable:r,showTotalButton:i,showCheckedButton:n,showClearButton:u,showCloseButton:o}=F,{initialized:s,isActivated:d,isAniVisible:c,visiblePanel:v,searchValue:p,currentCunkList:h}=P;let f=U.listVirtualYOpts;var _=$.value,g=N.value,x=W.value,m=D.value,b=q.value,C=Z.value,E=V.header,k=V.footer;let y=V.prefix;var M=B.value.className;return b?(0,_vue.h)("div",{ref:I,class:["vxe-cascader--readonly",e]},[(0,_vue.h)("span",{class:"vxe-cascader-label"},x)]):(b=_xeUtils.default.eqNull(a)?[]:_xeUtils.default.isArray(a)?a:[a],(0,_vue.h)("div",{ref:I,class:["vxe-cascader",e?_xeUtils.default.isFunction(e)?e({$cascader:R}):e:"",{["size--"+_]:_,"is--filterable":r,"is--visible":v,"is--disabled":g,"is--loading":l,"is--active":d}]},[(0,_vue.h)(_input.default,{ref:L,clearable:F.clearable,placeholder:l?(0,_ui.getI18n)("vxe.select.loadingText"):F.placeholder,editable:!1,disabled:g,type:"text",prefixIcon:F.prefixIcon,suffixIcon:l?(0,_ui.getIcon)().TREE_SELECT_LOADED:v?(0,_ui.getIcon)().TREE_SELECT_OPEN:(0,_ui.getIcon)().TREE_SELECT_CLOSE,modelValue:l?"":x,title:x,onClear:he,onClick:Fe,onFocus:Ne,onBlur:Ve,onSuffixClick:De},y?{prefix:()=>y({})}:{}),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!m||!s},[(0,_vue.h)("div",{ref:w,class:["vxe-table--ignore-clear vxe-cascader--panel",M?_xeUtils.default.isFunction(M)?M({$cascader:R}):M:"",{["size--"+_]:_,"is--transfer":m,"ani--leave":!l&&c,"ani--enter":!l&&v}],placement:P.panelPlacement,style:C},s?[(0,_vue.h)("div",{class:"vxe-cascader--panel-wrapper"},[r?(0,_vue.h)("div",{class:"vxe-cascader--panel-search"},[(0,_vue.h)(_input.default,{ref:T,class:"vxe-cascader-search--input",modelValue:p,clearable:!0,disabled:!1,readonly:!1,placeholder:(0,_ui.getI18n)("vxe.cascader.search"),prefixIcon:(0,_ui.getIcon)().INPUT_SEARCH,"onUpdate:modelValue":Pe})]):(0,_ui.renderEmptyElement)(R),n&&t||u||E?(0,_vue.h)("div",{class:"vxe-tree-select--panel-header"},E?E({}):[(0,_vue.h)("div",{class:"vxe-tree-select--header-button"},[n&&u?(0,_vue.h)("div",{class:"vxe-tree-select--selected-btns"},[n&&t?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.treeSelect.allChecked"),mode:"text",onClick:fe}):(0,_ui.renderEmptyElement)(R),u?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.treeSelect.clearChecked"),mode:"text",onClick:_e}):(0,_ui.renderEmptyElement)(R)]):(0,_ui.renderEmptyElement)(R)])]):(0,_ui.renderEmptyElement)(R),(0,_vue.h)("div",{class:"vxe-cascader--panel-body"},[(0,_vue.h)("div",{ref:j,class:"vxe-cascader-chunk--wrapper"},[h.map((t,l)=>(0,_vue.h)("div",{key:l,class:"vxe-cascader-chunk--item-wrapper"},[(0,_vue.h)(_list.default,{data:t,virtualYConfig:f},{default(e){e=e.items;return e.map((e,a)=>((a,e,t,l,r)=>{var i=F.multiple,{currentNode:n,selectRadioKey:u,updateCheckboxFlag:o,updateExpandedFlag:s}=P,{nodeMaps:d,selectCheckboxMaps:c,indeterminateRowMaps:v,treeExpandedMaps:p,treeExpandLazyLoadedMaps:h}=U;let f=O.value;var{lazy:_,iconLoaded:g,iconOpen:x,iconClose:m}=f,b=z.value,C=A.value,E=H.value,b=a[b],b=b&&0<b.length,k=V.icon,y=V.title,s=s&&p[e],p=d[e]||{},d=a[C],C=p.level;let M=!1,I=(i||(M=e===u),!1),L=!1,T=(i&&(I=!(!o||!c[e]),L=!(!o||!v[e])),!1),w=!1,N=!1;_&&(w=!!h[e],T=a[E],N=!!p.treeLoaded);u={node:a};return(0,_vue.h)("div",{key:r+"_"+t,class:["vxe-cascader-chunk--node-item",{"is--current":n&&(n===a||S(n)===e),"is-radio--checked":M,"is-checkbox--checked":I,"is-checkbox--indeterminate":L,"is--expand":s}],title:d,onMousedown:e=>{0===e.button&&e.stopPropagation()},onClick(e){we(e,a,l,r)}},[i?Be(a,b,C,I,L):Oe(a,b,C,M),(0,_vue.h)("div",{class:"vxe-cascader-chunk--node-item-inner"},[(0,_vue.h)("div",{class:"vxe-cascader-chunk--node-item-title"},y?(0,_ui.getSlotVNs)(y(u)):d)]),f.showIcon&&(!_||N?b:T)?(0,_vue.h)("div",{class:"vxe-cascader-chunk--node-item-switcher"},[[(0,_vue.h)("div",{class:"vxe-cascader--node-item-icon",onClick(e){"icon"===f.trigger&&Le(e,a,l,r)}},k?(0,_ui.getSlotVNs)(k(u)):[(0,_vue.h)("i",{class:w?g||(0,_ui.getIcon)().CASCADER_NODE_LOADED:s?x||(0,_ui.getIcon)().CASCADER_NODE_OPEN:m||(0,_ui.getIcon)().CASCADER_NODE_CLOSE})])]]):(0,_ui.renderEmptyElement)(R)])})(e,S(e),a,t,l))}})]))])]),k||i||o&&t?(0,_vue.h)("div",{class:"vxe-cascader--panel-footer"},k?k({}):[(0,_vue.h)("div",{class:"vxe-cascader--footer-button"},[i?(0,_vue.h)("div",{class:"vxe-cascader--total-btns"},(0,_ui.getI18n)("vxe.treeSelect.total",[b.length])):(0,_ui.renderEmptyElement)(R),o&&t?(0,_vue.h)("div",{class:"vxe-cascader--oper-btns"},[(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.select.close"),mode:"text",onClick:ge})]):(0,_ui.renderEmptyElement)(R)])]):(0,_ui.renderEmptyElement)(R)])]:[])])]))},R},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("./util"),_xeUtils=_interopRequireDefault(require("xe-utils")),_list=_interopRequireDefault(require("../../list/src/list")),_input=_interopRequireDefault(require("../../input/src/input")),_button=_interopRequireDefault(require("../../button/src/button"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function getNodeUniqueId(){return _xeUtils.default.uniqueId("node_")}function createReactData(){return{initialized:!1,searchValue:"",searchLoading:!1,currentCunkList:[],currentItems:[],currentNode:null,panelIndex:0,panelStyle:{},panelPlacement:null,triggerFocusPanel:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1,selectRadioKey:null,treeList:[],updateExpandedFlag:1,updateCheckboxFlag:1,fullOptFlag:1,lazyOptFlag:1}}function createInternalData(){return{listVirtualYOpts:{enabled:!0,gt:20},afterTreeList:[],treeFullData:[],afterVisibleList:[],nodeMaps:{},fullNodeMaps:{},lazyNodeMaps:{},indeterminateRowMaps:{},selectCheckboxMaps:{},treeExpandedMaps:{},treeExpandLazyLoadedMaps:{}}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeCascader",props:{modelValue:[String,Number,Array],clearable:Boolean,placeholder:{type:String,default:()=>_xeUtils.default.eqNull((0,_ui.getConfig)().cascader.placeholder)?(0,_ui.getI18n)("vxe.base.pleaseSelect"):(0,_ui.getConfig)().cascader.placeholder},readonly:{type:Boolean,default:null},loading:Boolean,disabled:{type:Boolean,default:null},filterable:Boolean,filterConfig:Object,showFullLabel:{type:Boolean,default:(0,_ui.getConfig)().cascader.showFullLabel},separator:{type:String,default:(0,_ui.getConfig)().cascader.separator},multiple:Boolean,className:[String,Function],prefixIcon:String,lazyOptions:Array,options:Array,optionProps:Object,size:{type:String,default:()=>(0,_ui.getConfig)().cascader.size||(0,_ui.getConfig)().size},treeConfig:Object,showRadio:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.showRadio},radioConfig:Object,showCheckbox:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.showCheckbox},checkboxConfig:Object,remote:Boolean,remoteConfig:Function,popupConfig:Object,checkedClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.checkedClosable},clearClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.clearClosable},showCloseButton:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.showCloseButton},showTotalButton:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.showTotalButton},showCheckedButton:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.showCheckedButton},showClearButton:{type:Boolean,default:()=>(0,_ui.getConfig)().cascader.showClearButton}},emits:["update:modelValue","change","all-change","clear","blur","focus","click","node-click","node-expand","current-change","radio-change","checkbox-change","load-success","load-error","visible-change"],setup(V,e){let{emit:l,slots:F}=e,C=(0,_vue.inject)("$xeModal",null),k=(0,_vue.inject)("$xeDrawer",null),E=(0,_vue.inject)("$xeTable",null),r=(0,_vue.inject)("$xeForm",null),i=(0,_vue.inject)("xeFormItemInfo",null);var a=_xeUtils.default.uniqueId();let S=(0,_ui.useSize)(V).computeSize,I=(0,_vue.ref)(),L=(0,_vue.ref)(),$=(0,_vue.ref)(),j=(0,_vue.ref)(),T=(0,_vue.ref)(),U=(0,_vue.reactive)(createReactData()),P=createInternalData(),y={refElem:I},q=(0,_vue.computed)(()=>{var e=V.readonly;return null===e?!!r&&r.props.readonly:e}),w=(0,_vue.computed)(()=>{var e=V.disabled;return null===e?!!r&&r.props.disabled:e}),K=(0,_vue.computed)(()=>{var e=N.value.transfer;return _xeUtils.default.isBoolean(e)?e:!!(E||C||k||r)}),O=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().cascader.treeConfig,V.treeConfig)),_=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().cascader.radioConfig,V.radioConfig)),g=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().cascader.checkboxConfig,V.checkboxConfig)),N=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().cascader.popupConfig,V.popupConfig)),M=(0,_vue.computed)(()=>V.optionProps||{}),D=(0,_vue.computed)(()=>M.value.label||"label"),p=(0,_vue.computed)(()=>M.value.value||"value"),H=(0,_vue.computed)(()=>O.value.keyField||"id"),X=(0,_vue.computed)(()=>O.value.parentField||"parentId"),A=(0,_vue.computed)(()=>O.value.childrenField||"children"),B=(0,_vue.computed)(()=>O.value.mapChildrenField||"mapChildren"),Y=(0,_vue.computed)(()=>O.value.hasChildField||"hasChild"),W=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().cascader.remoteConfig,V.remoteConfig)),Z=(0,_vue.computed)(()=>{var e=V.modelValue;return _xeUtils.default.eqNull(e)?[]:_xeUtils.default.isArray(e)?e:[e]}),G=(0,_vue.computed)(()=>{let t=V.showFullLabel,{fullOptFlag:l,lazyOptFlag:r}=U,{fullNodeMaps:i,lazyNodeMaps:n}=P,u=D.value;return Z.value.map(e=>{var a=i[e];if(l&&a)return t?a.fullLabel:a.item[u];if(r){a=n[e];if(a)return t?a.fullLabel:a.item[u]}return e}).join(", ")}),J=(0,_vue.computed)(()=>{var{currentCunkList:e,panelStyle:a}=U,{height:t,nodeWidth:l,nodeHeight:r}=N.value,a=Object.assign(Object.assign({},a),{"--vxe-ui-cascader-chunk-size":e.length});return t&&(a["--vxe-ui-cascader-chunk-height"]=(0,_dom.toCssUnit)(t)),l&&(a["--vxe-ui-cascader-node-width"]=(0,_dom.toCssUnit)(l)),r&&(a["--vxe-ui-cascader-node-height"]=(0,_dom.toCssUnit)(r)),a}),Q=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().cascader.filterConfig,V.filterConfig)),ee={},R={xID:a,props:V,context:e,reactData:U,internalData:P,getRefMaps:()=>y,getComputeMaps:()=>ee},x=(e,a,t)=>{l(e,(0,_ui.createEvent)(t,{$cascader:R},a))},ae=e=>{l("update:modelValue",e)};a={dispatchEvent:x};let z=e=>e?(e=e[p.value],(0,_util.enNodeValue)(e)):"";let te=(e,t)=>{let l=P.selectCheckboxMaps;var a=B.value,r=A.value,i=g.value.checkStrictly,n=O.value.transform,u=e=>{var a=z(e);t?l[a]||(l[a]=e):l[a]&&delete l[a]};i?e.forEach(u):_xeUtils.default.eachTree(e,u,{children:n?a:r}),U.updateCheckboxFlag++,m()},le=(e,t)=>{let l=P.nodeMaps;if(e){_xeUtils.default.isArray(e)||(e=[e]);let a=[];e.forEach(e=>{e=(0,_util.enNodeValue)(e),e=l[e];e&&a.push(e.item)}),te(a,t)}return(0,_vue.nextTick)()},u=()=>{var e,a=V.modelValue,t=P.nodeMaps;let l={};V.multiple?a&&a.length&&(e=a,P.selectCheckboxMaps={},le(e,!0)):a&&(t=t[e=(0,_util.enNodeValue)(_xeUtils.default.isArray(a)?a[0]:a)])&&(t.nodes.forEach(e=>{l[z(e)]=!0}),U.selectRadioKey=e),P.treeExpandedMaps=l},re=()=>{let o=V.separator;var e=P.treeFullData;let s=p.value,d=D.value;var a=A.value;let c={},v={};_xeUtils.default.eachTree(e,(e,a,t,l,r,i)=>{let n=z(e);n||(n=getNodeUniqueId(),e[s]=n);var u=e[s],e={item:e,index:a,$index:-1,_index:-1,items:t,parent:r,nodes:i,level:i.length-1,treeIndex:a,lineCount:0,treeLoaded:!1,fullLabel:i.map(e=>e[d]).join(o||" / ")};c[n]=e,v[u]=e},{children:a}),P.nodeMaps=c,P.fullNodeMaps=v,U.fullOptFlag++},ie=()=>{let o=V.separator,{afterTreeList:e,nodeMaps:s}=P,d=D.value;var a=A.value,t=B.value,l=O.value.transform;let c=0;_xeUtils.default.eachTree(e,(e,a,t,l,r,i)=>{var n=z(e),u=s[n];u?(u.items=t,u.treeIndex=a,u._index=c):(u={item:e,index:a,$index:-1,_index:c,items:t,parent:r,nodes:i,level:i.length-1,treeIndex:a,lineCount:0,treeLoaded:!1,fullLabel:i.map(e=>e[d]).join(o||" / ")},s[n]=u),c++},{children:l?t:a})},ne=()=>{var a=U.searchValue,{treeFullData:t,lastFilterValue:e}=P;let l=D.value;var r=A.value,i=B.value,n=O.value.transform;let{beforeFilterMethod:u,filterMethod:o,afterFilterMethod:s}=Q.value,d=t,c=d,v="";if(a){v=""+a;a=o?e=>o({$cascader:R,node:e,filterValue:v}):e=>-1<String(e[l]).toLowerCase().indexOf(v.toLowerCase());let e={$cascader:R,filterValue:v};u&&u(e),d=n?c=_xeUtils.default.searchTree(t,a,{original:!0,isEvery:!0,children:r,mapChildren:i}):t.filter(a),P.lastFilterValue=v,(0,_vue.nextTick)(()=>{s&&s(e)})}else{if(n&&(c=_xeUtils.default.searchTree(t,()=>!0,{original:!0,isEvery:!0,children:r,mapChildren:i}),d=c,e)){let e={$cascader:R,filterValue:v};u&&u(e),(0,_vue.nextTick)(()=>{s&&s(e)})}P.lastFilterValue=""}P.afterVisibleList=d,P.afterTreeList=c,ie()},v=()=>{let{afterTreeList:e,treeExpandedMaps:o}=P;var a=B.value,t=O.value.transform;let s={};if(t){let u=[];return _xeUtils.default.eachTree(e,(e,a,t,l,r)=>{var i=z(e),n=z(r);(!r||s[n]&&o[n])&&(s[i]=1,u.push(e))},{children:a}),P.afterVisibleList=u}return P.afterVisibleList},h=e=>{let a=P.afterVisibleList;e&&(ne(),a=v());e=a.slice(0);U.treeList=e};let ue=_xeUtils.default.debounce(()=>{h(!0),u();var e=Q.value.autoExpandMode,a=P.afterTreeList;"first"===e||"last"===e?(a=((e,a)=>{var t=A.value,l=B.value,r=O.value.transform,i=r?l:t,n=[];let u=e;for(;u.length;){let e=null;for(var o of u){var s=o[i];if(_xeUtils.default.isArray(s)&&0<s.length){e=o;break}}if(!e){var d=_xeUtils.default[a](u);n.push(z(d));break}n.push(z(e)),u=e[i]}return n})(a,e),U.currentItems=a):s(),o()},350,{trailing:!0}),oe=e=>{var a=O.value,t=H.value,l=X.value,r=A.value,{rootParentValue:i,rootValues:n}=a,a=a.transform,a=a?_xeUtils.default.toArrayTree(e,{key:t,parentKey:l,mapChildren:r,rootParentValue:i,rootValues:n}):e?e.slice(0):[];return P.treeFullData=a,re(),h(!0),u(),s(),o(),(0,_vue.nextTick)()},o=()=>{var l=U.currentItems,r=P.afterTreeList,i=A.value,n=B.value,u=O.value.transform,o=[r];if(l.length){let e=0,a=l[e],t=r;for(;a&&t&&t.length;){a=l[e++];var s=t.find(e=>a===z(e));if(!(t=s?s[u?n:i]:[])||!t.length)break;o.push(t)}}U.currentCunkList=o},s=()=>{var e=P.afterTreeList,t=Z.value,l=A.value,r=B.value,i=O.value.transform;let n=[],u={};if(t.length){let a=(0,_util.enNodeValue)(_xeUtils.default.last(t));t=_xeUtils.default.findTree(e,e=>a===z(e),{children:i?r:l});t&&(e=t.nodes,e.forEach(e=>{e=z(e);u[e]=!0,n.push(e)}))}P.treeExpandedMaps=u,U.currentItems=n},se=()=>{var e=N.value.zIndex;e?U.panelIndex=e:U.panelIndex<(0,_utils.getLastZIndex)()&&(U.panelIndex=(0,_utils.nextZIndex)())},d=()=>{let t=U.panelIndex,l=I.value,r=T.value,i=K.value,n=N.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(l,r,{placement:n.placement,defaultPlacement:n.defaultPlacement,teleportTo:i,isMinWidth:!1}),a=Object.assign(e.style,{zIndex:t});U.panelStyle=a,U.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},t=e=>{var{loading:a,remote:t,filterable:l}=V,r=P.treeFullData,i=w.value,n=W.value;a||i||(clearTimeout(P.hpTimeout),U.initialized||(U.initialized=!0),U.isActivated=!0,U.isAniVisible=!0,l&&t&&n.enabled&&n.autoLoad&&!r.length&&Pe(),setTimeout(()=>{U.visiblePanel=!0,ke()},10),se(),d(),x("visible-change",{visible:!0},e||null))},c=e=>{U.visiblePanel=!1,P.hpTimeout=setTimeout(()=>{U.isAniVisible=!1},350),x("visible-change",{visible:!1},e||null)},de=e=>(U.currentNode=e,(0,_vue.nextTick)()),ce=e=>{let t={};var a=A.value,l=B.value,r=O.value.transform;let i=[],n=[];return e&&_xeUtils.default.eachTree(P.afterTreeList,e=>{var a=z(e);i.push(a),n.push(e),t[a]=!0},{children:r?l:a}),P.indeterminateRowMaps={},P.selectCheckboxMaps=t,U.updateCheckboxFlag++,m(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:i,checkNodes:n}))},ve=()=>(P.indeterminateRowMaps={},P.selectCheckboxMaps={},U.updateCheckboxFlag++,U.selectRadioKey=null,m(),(0,_vue.nextTick)().then(()=>({checkNodeKeys:[],checkNodes:[]}))),f=(e,a,t)=>{a=_xeUtils.default.isArray(a)?a.map(_util.deNodeValue):(0,_util.deNodeValue)(a);ae(a),a!==V.modelValue&&(x("change",{value:a,node:t,option:t},e),r)&&i&&r.triggerItemEvent(e,i.itemConfig.field,a)},pe=(e,a)=>{f(e,a,null),x("clear",{value:a},e)},he=(e,a)=>{pe(a,null),c(a)},fe=e=>{let t=e.$event,{multiple:a,checkedClosable:l}=V;a&&ce(!0).then(({checkNodeKeys:e,checkNodes:a})=>{f(t,e,a[0]),x("all-change",{value:e},t),l&&c(t)})},_e=e=>{let a=e.$event,{multiple:t,checkedClosable:l}=V;e=t?[]:null;ve().then(()=>{l&&c(a)}),f(a,e,null),x("clear",{value:e},a)},ge=e=>{e=e.$event;c(e)},xe=e=>{var a=U.visiblePanel;w.value||a&&(a=T.value,(0,_dom.getEventTargetNode)(e,a).flag?d():c(e))},me=e=>{var a,t,l=U.visiblePanel;w.value||(a=I.value,t=T.value,U.isActivated=(0,_dom.getEventTargetNode)(e,a).flag||(0,_dom.getEventTargetNode)(e,t).flag,l&&!U.isActivated&&c(e))},be=e=>{var{visiblePanel:a,isActivated:t}=U;a&&c(e),t&&(U.isActivated=!1),(a||t)&&(e=L.value)&&e.blur()},Ce=()=>{var e=U.visiblePanel;e&&d()},ke=()=>{V.filterable&&(0,_vue.nextTick)(()=>{var e=$.value;e&&e.focus()})},Ee=(e,a)=>{e.preventDefault();U.currentNode=a,x("current-change",{node:a,checked:!0},e)},ye=(e,a)=>{e.preventDefault(),e.stopPropagation();var t=P.nodeMaps,l=_.value,r=A.value,i=O.value.transform,n=B.value,{checkMode:l,checkMethod:u}=l,o=z(a),i=a[i?n:r],n=i&&0<i.length,r=(t[o]||{}).level;(u?u({$cascader:R,node:a}):b(l,n,r))&&(i=o,U.selectRadioKey=i,f(e,i,a),c(e))},Me=i=>{var e=g.value;let t=O.value.loadMethod,n=e.checkStrictly;return new Promise(e=>{if(t){var a=P.nodeMaps;let l=z(i),r=a[l];P.treeExpandLazyLoadedMaps[l]=!0,Promise.resolve(t({$cascader:R,node:i})).then(t=>{var e=P.treeExpandLazyLoadedMaps;if(r.treeLoaded=!0,e[l]&&(e[l]=!1),t=_xeUtils.default.isArray(t)?t:[])return R.loadChildrenNode(i,t).then(e=>{var a=P.treeExpandedMaps;return e.length&&!a[l]&&(a[l]=!0),U.updateExpandedFlag++,!n&&R.isCheckedByCheckboxNodeId(l)&&te(e,!0),x("load-success",{node:i,data:t},new Event("load-success")),(0,_vue.nextTick)()});x("load-success",{node:i,data:t},new Event("load-success"))}).catch(e=>{var a=P.treeExpandLazyLoadedMaps;r.treeLoaded=!1,a[l]&&(a[l]=!1),x("load-error",{node:i,data:e},new Event("load-error"))}).finally(()=>{v(),h()})}else e()})},Ie=(e,a)=>{let{treeExpandLazyLoadedMaps:l,treeExpandedMaps:r}=P,i=P.nodeMaps,n=A.value,u=Y.value;let{lazy:o,toggleMethod:t}=O.value,s=[];var e=(e=t?e.filter(e=>t({$cascader:R,expanded:a,node:e})):e).length?[e[e.length-1]]:[],d=z(e[0]),d=i[d];d&&d.items.forEach(e=>{e=z(e);r[e]&&delete r[e]});let c=[];return a?e.forEach(e=>{var a,t=z(e);r[t]||(a=i[t],o&&e[u]&&!a.treeLoaded&&!l[t]?s.push(Me(e)):e[n]&&e[n].length&&(r[t]=!0,c.push(e)))}):e.forEach(e=>{var a=z(e);r[a]&&(delete r[a],c.push(e))}),U.updateExpandedFlag++,v(),h(),Promise.all(s)},Le=(e,a,t,l)=>{var r=U.currentItems,i=P.treeExpandLazyLoadedMaps,n=O.value.lazy,r=r.slice(0,l),l=z(a);e.stopPropagation(),r.push(l),U.currentItems=r,n&&i[l]||Ie([a],!0),de(a),o(),x("node-expand",{node:a,expanded:!0},e)},m=()=>{let{selectCheckboxMaps:o,indeterminateRowMaps:s,afterTreeList:e}=P,i=A.value,n=B.value;let{checkStrictly:a,checkMethod:d}=g.value,u=O.value.transform;if(!a){let l={},r=[];_xeUtils.default.eachTree(e,e=>{var a=z(e),t=e[u?n:i];t&&t.length&&!l[a]&&(l[a]=1,r.unshift([e,a,t]))},{children:u?n:i}),r.forEach(e=>{var a=e[0],t=e[1],e=e[2];let l=0,r=0,i=0;var n=e.length;e.forEach(d?e=>{var a=z(e),t=o[a];d({$cascader:R,node:e})?(t?l++:s[a]&&r++,i++):t?l++:s[a]&&r++}:e=>{e=z(e);o[e]?l++:s[e]&&r++,i++});let u=!1;e=!(u=0<n?0<i?(0<l||0<r)&&l>=i:0<l&&l>=i||!!o[t]:o[t])&&(0<l||0<r);u?(o[t]=a,s[t]&&delete s[t]):(o[t]&&delete o[t],e?s[t]=a:s[t]&&delete s[t])}),U.updateCheckboxFlag++}},Te=(e,t)=>{e.preventDefault(),e.stopPropagation();let{selectCheckboxMaps:l,nodeMaps:a}=P;var r=A.value,i=B.value,{checkStrictly:n,checkMode:u,checkMethod:o}=g.value,s=O.value.transform,d=z(t),c=t[s?i:r],c=c&&0<c.length,v=(a[d]||{}).level,o=o?!o({$cascader:R,node:t}):!b(u,c,v);if(!o){let a=!1;l[d]?delete l[d]:(a=!0,l[d]=t),n||_xeUtils.default.eachTree(_xeUtils.default.get(t,s?i:r),e=>{e=z(e);a?l[e]||(l[e]=!0):l[e]&&delete l[e]},{children:s?i:r}),U.updateCheckboxFlag++,m();u=_xeUtils.default.keys(l);f(e,u,t)}},we=(e,a,t,l)=>{var{multiple:r,showCheckbox:i,showRadio:n}=V,u=O.value,o=_.value,s=g.value,d=A.value,c=B.value,{transform:u,trigger:v}=u,u=a[u?c:d];let p=!1,h=!1,f=!1;Ee(e,a),"icon"!==v&&(f=!0,Le(e,a,t,l)),r?"node"!==s.trigger&&(i||u&&u.length)||(h=!0,Te(e,a)):"node"!==o.trigger&&(n||u&&u.length)||(p=!0,ye(e,a)),x("node-click",{node:a,triggerCurrent:!0,triggerRadio:p,triggerCheckbox:h,triggerExpand:f},e)},Ne=e=>{w.value||U.visiblePanel||(U.triggerFocusPanel=!0,t(e),setTimeout(()=>{U.triggerFocusPanel=!1},150)),x("focus",{},e)},Ve=e=>{e.preventDefault(),U.triggerFocusPanel?U.triggerFocusPanel=!1:U.visiblePanel||t(e),x("click",{},e)},Fe=e=>{U.isActivated=!1,x("blur",{},e)},Ue=e=>{U.searchValue=e,ue(new Event("filter"))},Pe=()=>{var{modelValue:e,remote:a}=V,t=U.searchValue,l=W.value,r=l.queryMethod;a&&r&&l.enabled&&(U.searchLoading=!0,Promise.resolve(r({$cascader:R,searchValue:t,value:e})).then(()=>(0,_vue.nextTick)()).catch(()=>(0,_vue.nextTick)()).finally(()=>{U.searchLoading=!1}))},Oe=e=>{e=e.$event;e.preventDefault(),U.triggerFocusPanel?U.triggerFocusPanel=!1:(U.visiblePanel?c:t)(e)},b=(Object.assign(R,a,{isCheckedByCheckboxNodeId:e=>{var a=U.updateCheckboxFlag,t=P.selectCheckboxMaps;return!(!a||!t[e])},loadChildrenNode(a,e){let u=V.separator,o=P.nodeMaps;var t=O.value;let s=D.value,{lazy:l,transform:r}=t;if(!l)return Promise.resolve([]);let i=A.value,n=B.value,d=o[z(a)],c=d?d.level:0,v=d?d.nodes:[];return(e=>{let t=p.value;return Promise.resolve(e.map(e=>{var a,e=Object.assign({},e);return z(e)||(a=getNodeUniqueId(),_xeUtils.default.set(e,t,a)),e}))})(e).then(e=>(_xeUtils.default.eachTree(e,(e,a,t,l,r,i)=>{var n=z(e);o[n]={item:e,index:-1,$index:-1,_index:-1,items:t,parent:r||d.item,nodes:v.concat(i),level:c+i.length,treeIndex:-1,lineCount:0,treeLoaded:!1,fullLabel:i.map(e=>e[s]).join(u||" / ")}},{children:i}),a[i]=e,r&&(a[n]=e),ie(),e))}}),(e,a,t)=>{if(e){if("first"===e)return!t;if("last"===e)return!a}return!0}),De=(t,e,l,r)=>{var a=V.showRadio,{checkMode:i,checkMethod:n,visibleMode:u,visibleMethod:o}=_.value,o=o?o({$cascader:R,node:t}):b(u,e,l);if(a&&o){let a=n?!n({$cascader:R,node:t}):!b(i,e,l);return(0,_vue.h)("div",{class:["vxe-tree--radio-option",{"is--checked":r,"is--disabled":a}],onClick:e=>{a||ye(e,t)}},[(0,_vue.h)("span",{class:["vxe-radio--icon",r?(0,_ui.getIcon)().RADIO_CHECKED:(0,_ui.getIcon)().RADIO_UNCHECKED]})])}return(0,_ui.renderEmptyElement)(R)},Ae=(t,e,l,r,i)=>{var a=V.showCheckbox,{checkMode:n,checkMethod:u,visibleMode:o,visibleMethod:s}=g.value,s=s?s({$cascader:R,node:t}):b(o,e,l);if(a&&s){let a=u?!u({$cascader:R,node:t}):!b(n,e,l);return(0,_vue.h)("div",{class:["vxe-cascader--checkbox-option",{"is--checked":r,"is--indeterminate":i,"is--disabled":a}],onClick:e=>{a||Te(e,t)}},[(0,_vue.h)("span",{class:["vxe-checkbox--icon",i?(0,_ui.getIcon)().CHECKBOX_INDETERMINATE:r?(0,_ui.getIcon)().CHECKBOX_CHECKED:(0,_ui.getIcon)().CHECKBOX_UNCHECKED]})])}return(0,_ui.renderEmptyElement)(R)};(0,_vue.watch)(()=>V.modelValue,()=>{U.visiblePanel||(u(),s(),o())}),(0,_vue.watch)(()=>V.options,()=>{re()});let n=(0,_vue.ref)(0);return(0,_vue.watch)(()=>V.options?V.options.length:0,()=>{n.value++}),(0,_vue.watch)(()=>V.options,()=>{n.value++}),(0,_vue.watch)(n,()=>{oe(V.options||[])}),oe(V.options||[]),(0,_vue.onMounted)(()=>{_ui.globalEvents.on(R,"mousewheel",xe),_ui.globalEvents.on(R,"mousedown",me),_ui.globalEvents.on(R,"blur",be),_ui.globalEvents.on(R,"resize",Ce)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(R,"mousewheel"),_ui.globalEvents.off(R,"mousedown"),_ui.globalEvents.off(R,"blur"),_ui.globalEvents.off(R,"resize"),_xeUtils.default.assign(P,createInternalData())}),(0,_vue.provide)("$xeCascader",R),R.renderVN=()=>{var{className:e,modelValue:a,multiple:t,loading:l,filterable:r,showTotalButton:i,showCheckedButton:n,showClearButton:u,showCloseButton:o}=V,{initialized:s,isActivated:d,isAniVisible:c,visiblePanel:v,searchValue:p,currentCunkList:h}=U;let f=P.listVirtualYOpts;var _=S.value,g=w.value,x=G.value,m=K.value,b=q.value,C=J.value,k=F.header,E=F.footer;let y=F.prefix;var M=N.value.className;return b?(0,_vue.h)("div",{ref:I,class:["vxe-cascader--readonly",e]},[(0,_vue.h)("span",{class:"vxe-cascader-label"},x)]):(b=_xeUtils.default.eqNull(a)?[]:_xeUtils.default.isArray(a)?a:[a],(0,_vue.h)("div",{ref:I,class:["vxe-cascader",e?_xeUtils.default.isFunction(e)?e({$cascader:R}):e:"",{["size--"+_]:_,"is--filterable":r,"is--visible":v,"is--disabled":g,"is--loading":l,"is--active":d}]},[(0,_vue.h)(_input.default,{ref:L,clearable:V.clearable,placeholder:l?(0,_ui.getI18n)("vxe.select.loadingText"):V.placeholder,editable:!1,disabled:g,type:"text",prefixIcon:V.prefixIcon,suffixIcon:l?(0,_ui.getIcon)().TREE_SELECT_LOADED:v?(0,_ui.getIcon)().TREE_SELECT_OPEN:(0,_ui.getIcon)().TREE_SELECT_CLOSE,modelValue:l?"":x,title:x,onClear:he,onClick:Ve,onFocus:Ne,onBlur:Fe,onSuffixClick:Oe},y?{prefix:()=>y({})}:{}),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!m||!s},[(0,_vue.h)("div",{ref:T,class:["vxe-table--ignore-clear vxe-cascader--panel",M?_xeUtils.default.isFunction(M)?M({$cascader:R}):M:"",{["size--"+_]:_,"is--transfer":m,"ani--leave":!l&&c,"ani--enter":!l&&v}],placement:U.panelPlacement,style:C},s?[(0,_vue.h)("div",{class:"vxe-cascader--panel-wrapper"},[r?(0,_vue.h)("div",{class:"vxe-cascader--panel-search"},[(0,_vue.h)(_input.default,{ref:$,class:"vxe-cascader-search--input",modelValue:p,clearable:!0,disabled:!1,readonly:!1,placeholder:(0,_ui.getI18n)("vxe.cascader.search"),prefixIcon:(0,_ui.getIcon)().INPUT_SEARCH,"onUpdate:modelValue":Ue})]):(0,_ui.renderEmptyElement)(R),n&&t||u||k?(0,_vue.h)("div",{class:"vxe-tree-select--panel-header"},k?k({}):[(0,_vue.h)("div",{class:"vxe-tree-select--header-button"},[n&&t||u?(0,_vue.h)("div",{class:"vxe-tree-select--selected-btns"},[n&&t?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.treeSelect.allChecked"),mode:"text",onClick:fe}):(0,_ui.renderEmptyElement)(R),u?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.treeSelect.clearChecked"),mode:"text",onClick:_e}):(0,_ui.renderEmptyElement)(R)]):(0,_ui.renderEmptyElement)(R)])]):(0,_ui.renderEmptyElement)(R),(0,_vue.h)("div",{class:"vxe-cascader--panel-body"},[(0,_vue.h)("div",{ref:j,class:"vxe-cascader-chunk--wrapper"},[h.map((t,l)=>(0,_vue.h)("div",{key:l,class:"vxe-cascader-chunk--item-wrapper"},[(0,_vue.h)(_list.default,{data:t,virtualYConfig:f},{default(e){e=e.items;return e.map((e,a)=>((a,e,t,l,r)=>{var i=V.multiple,{currentNode:n,selectRadioKey:u,updateCheckboxFlag:o,updateExpandedFlag:s}=U,{nodeMaps:d,selectCheckboxMaps:c,indeterminateRowMaps:v,treeExpandedMaps:p,treeExpandLazyLoadedMaps:h}=P;let f=O.value;var{lazy:_,transform:g,iconLoaded:x,iconOpen:m,iconClose:b}=f,C=A.value,k=B.value,E=D.value,y=Y.value,g=a[g?k:C],k=g&&0<g.length,C=F.icon,g=F.title,s=s&&p[e],p=d[e]||{},d=a[E],E=p.level;let M=!1,I=(i||(M=e===u),!1),L=!1,T=(i&&(I=!(!o||!c[e]),L=!(!o||!v[e])),!1),w=!1,N=!1;_&&(w=!!h[e],T=a[y],N=!!p.treeLoaded);u={node:a};return(0,_vue.h)("div",{key:r+"_"+t,class:["vxe-cascader-chunk--node-item",{"is--current":n&&(n===a||z(n)===e),"is-radio--checked":M,"is-checkbox--checked":I,"is-checkbox--indeterminate":L,"is--expand":s}],title:d,onMousedown:e=>{0===e.button&&e.stopPropagation()},onClick(e){we(e,a,l,r)}},[i?Ae(a,k,E,I,L):De(a,k,E,M),(0,_vue.h)("div",{class:"vxe-cascader-chunk--node-item-inner"},[(0,_vue.h)("div",{class:"vxe-cascader-chunk--node-item-title"},g?(0,_ui.getSlotVNs)(g(u)):d)]),f.showIcon&&(!_||N?k:T)?(0,_vue.h)("div",{class:"vxe-cascader-chunk--node-item-switcher"},[[(0,_vue.h)("div",{class:"vxe-cascader--node-item-icon",onClick(e){"icon"===f.trigger&&Le(e,a,l,r)}},C?(0,_ui.getSlotVNs)(C(u)):[(0,_vue.h)("i",{class:w?x||(0,_ui.getIcon)().CASCADER_NODE_LOADED:s?m||(0,_ui.getIcon)().CASCADER_NODE_OPEN:b||(0,_ui.getIcon)().CASCADER_NODE_CLOSE})])]]):(0,_ui.renderEmptyElement)(R)])})(e,z(e),a,t,l))}})]))])]),E||i||o?(0,_vue.h)("div",{class:"vxe-cascader--panel-footer"},E?E({}):[(0,_vue.h)("div",{class:"vxe-cascader--footer-button"},[i?(0,_vue.h)("div",{class:"vxe-cascader--total-btns"},(0,_ui.getI18n)("vxe.treeSelect.total",[b.length])):(0,_ui.renderEmptyElement)(R),o?(0,_vue.h)("div",{class:"vxe-cascader--oper-btns"},[(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.select.close"),mode:"text",onClick:ge})]):(0,_ui.renderEmptyElement)(R)])]):(0,_ui.renderEmptyElement)(R)])]:[])])]))},R},render(){return this.renderVN()}});
@@ -10,6 +10,9 @@ var _ui = require("../../ui");
10
10
  var _xeUtils = _interopRequireDefault(require("xe-utils"));
11
11
  var _checkbox = _interopRequireDefault(require("./checkbox"));
12
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ function createReactData() {
14
+ return {};
15
+ }
13
16
  function createInternalData() {
14
17
  return {
15
18
  // isLoaded: false
@@ -48,7 +51,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
48
51
  const $xeForm = (0, _vue.inject)('$xeForm', null);
49
52
  const formItemInfo = (0, _vue.inject)('xeFormItemInfo', null);
50
53
  const xID = _xeUtils.default.uniqueId();
51
- const reactData = (0, _vue.reactive)({});
54
+ const reactData = (0, _vue.reactive)(createReactData());
52
55
  const internalData = createInternalData();
53
56
  const computeIsReadonly = (0, _vue.computed)(() => {
54
57
  const {
@@ -227,6 +230,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
227
230
  });
228
231
  });
229
232
  (0, _vue.onUnmounted)(() => {
233
+ _xeUtils.default.assign(reactData, createReactData());
230
234
  _xeUtils.default.assign(internalData, createInternalData());
231
235
  });
232
236
  (0, _vue.provide)('$xeCheckboxGroup', $xeCheckboxGroup);
@@ -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"),_xeUtils=_interopRequireDefault(require("xe-utils")),_checkbox=_interopRequireDefault(require("./checkbox"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function createInternalData(){return{}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeCheckboxGroup",props:{modelValue:Array,options:Array,optionProps:Object,readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},max:{type:[String,Number],default:null},size:{type:String,default:()=>(0,_ui.getConfig)().checkboxGroup.size||(0,_ui.getConfig)().size},defaultConfig:Object},emits:["update:modelValue","change","default-change"],setup(r,e){let{slots:n,emit:l}=e,i=(0,_vue.inject)("$xeForm",null),d=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId(),u=(0,_vue.reactive)({});let a=createInternalData(),s=(0,_vue.computed)(()=>{var e=r.readonly;return null===e?!!i&&i.props.readonly:e}),c=(0,_vue.computed)(()=>{var e=r.disabled;return null===e?!!i&&i.props.disabled:e});var o=(0,_vue.computed)(()=>{var{modelValue:e,max:t}=r;return!!t&&(e?e.length:0)>=_xeUtils.default.toNumber(t)});let p=(0,_vue.computed)(()=>Object.assign({},r.defaultConfig)),v=(0,_vue.computed)(()=>Object.assign({},r.optionProps)),_=(0,_vue.computed)(()=>v.value.label||"label"),f=(0,_vue.computed)(()=>v.value.value||"value"),m=(0,_vue.computed)(()=>v.value.disabled||"disabled"),x={computeIsMaximize:o,computeIsDisabled:c,computeIsReadonly:s},b={xID:t,props:r,context:e,reactData:u,getComputeMaps:()=>x},g=((0,_ui.useSize)(r),(e,t,u)=>{l(e,(0,_ui.createEvent)(u,{$checkboxGroup:b},t))}),h=e=>{l("update:modelValue",e)},k=e=>{h(e),g("default-change",{value:e},null)};o={dispatchEvent:g};let y=t=>{var u=a.isLoaded,e=p.value;let l=f.value;if(!u){u=e.selectMode;if(0<t.length&&_xeUtils.default.eqNull(r.modelValue)){if("all"===u)(0,_vue.nextTick)(()=>{k(t.map(e=>e[l]))});else if("first"===u||"last"===u){let e=_xeUtils.default[u](t);e&&(0,_vue.nextTick)(()=>{_xeUtils.default.eqNull(r.modelValue)&&k([e[l]])})}a.isLoaded=!0}}return(0,_vue.nextTick)()};Object.assign(b,o,{handleChecked(e,t){var{checked:u,label:l}=e,a=r.modelValue||[],o=a.indexOf(l);u?-1===o&&a.push(l):a.splice(o,1),h(a),b.dispatchEvent("change",Object.assign({},e,{checklist:a,value:a}),t),i&&d&&i.triggerItemEvent(t,d.itemConfig.field,a)}});t=()=>{var e=r.options,t=n.default;let u=f.value,l=_.value,a=m.value;var o=s.value,i=c.value;return(0,_vue.h)("div",{class:["vxe-checkbox-group",{"is--readonly":o,"is--disabled":i}]},t?t({}):e?e.map(e=>(0,_vue.h)(_checkbox.default,{key:e[u],label:e[u],content:e[l],disabled:e[a]})):[])};return(0,_vue.watch)(()=>r.options,e=>{y(e||[])}),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=r.options;e&&y(e)})}),(0,_vue.onUnmounted)(()=>{_xeUtils.default.assign(a,createInternalData())}),(0,_vue.provide)("$xeCheckboxGroup",b),b.renderVN=t}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_ui=require("../../ui"),_xeUtils=_interopRequireDefault(require("xe-utils")),_checkbox=_interopRequireDefault(require("./checkbox"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function createReactData(){return{}}function createInternalData(){return{}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeCheckboxGroup",props:{modelValue:Array,options:Array,optionProps:Object,readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},max:{type:[String,Number],default:null},size:{type:String,default:()=>(0,_ui.getConfig)().checkboxGroup.size||(0,_ui.getConfig)().size},defaultConfig:Object},emits:["update:modelValue","change","default-change"],setup(r,e){let{slots:n,emit:a}=e,i=(0,_vue.inject)("$xeForm",null),d=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let u=(0,_vue.reactive)(createReactData()),l=createInternalData(),c=(0,_vue.computed)(()=>{var e=r.readonly;return null===e?!!i&&i.props.readonly:e}),s=(0,_vue.computed)(()=>{var e=r.disabled;return null===e?!!i&&i.props.disabled:e});var o=(0,_vue.computed)(()=>{var{modelValue:e,max:t}=r;return!!t&&(e?e.length:0)>=_xeUtils.default.toNumber(t)});let p=(0,_vue.computed)(()=>Object.assign({},r.defaultConfig)),v=(0,_vue.computed)(()=>Object.assign({},r.optionProps)),_=(0,_vue.computed)(()=>v.value.label||"label"),f=(0,_vue.computed)(()=>v.value.value||"value"),m=(0,_vue.computed)(()=>v.value.disabled||"disabled"),x={computeIsMaximize:o,computeIsDisabled:s,computeIsReadonly:c},b={xID:t,props:r,context:e,reactData:u,getComputeMaps:()=>x},g=((0,_ui.useSize)(r),(e,t,u)=>{a(e,(0,_ui.createEvent)(u,{$checkboxGroup:b},t))}),h=e=>{a("update:modelValue",e)},k=e=>{h(e),g("default-change",{value:e},null)};o={dispatchEvent:g};let y=t=>{var u=l.isLoaded,e=p.value;let a=f.value;if(!u){u=e.selectMode;if(0<t.length&&_xeUtils.default.eqNull(r.modelValue)){if("all"===u)(0,_vue.nextTick)(()=>{k(t.map(e=>e[a]))});else if("first"===u||"last"===u){let e=_xeUtils.default[u](t);e&&(0,_vue.nextTick)(()=>{_xeUtils.default.eqNull(r.modelValue)&&k([e[a]])})}l.isLoaded=!0}}return(0,_vue.nextTick)()};Object.assign(b,o,{handleChecked(e,t){var{checked:u,label:a}=e,l=r.modelValue||[],o=l.indexOf(a);u?-1===o&&l.push(a):l.splice(o,1),h(l),b.dispatchEvent("change",Object.assign({},e,{checklist:l,value:l}),t),i&&d&&i.triggerItemEvent(t,d.itemConfig.field,l)}});t=()=>{var e=r.options,t=n.default;let u=f.value,a=_.value,l=m.value;var o=c.value,i=s.value;return(0,_vue.h)("div",{class:["vxe-checkbox-group",{"is--readonly":o,"is--disabled":i}]},t?t({}):e?e.map(e=>(0,_vue.h)(_checkbox.default,{key:e[u],label:e[u],content:e[a],disabled:e[l]})):[])};return(0,_vue.watch)(()=>r.options,e=>{y(e||[])}),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=r.options;e&&y(e)})}),(0,_vue.onUnmounted)(()=>{_xeUtils.default.assign(u,createReactData()),_xeUtils.default.assign(l,createInternalData())}),(0,_vue.provide)("$xeCheckboxGroup",b),b.renderVN=t}});
@@ -3,18 +3,38 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.getChunkDefaultNum = getChunkDefaultNum;
6
7
  exports.getDateByCode = getDateByCode;
7
8
  exports.getDateQuarter = getDateQuarter;
8
9
  exports.getRangeDateByCode = getRangeDateByCode;
9
- exports.handleInputFormat = handleInputFormat;
10
10
  exports.handleValueFormat = handleValueFormat;
11
11
  exports.hasDateValueType = hasDateValueType;
12
12
  exports.hasTimestampValueType = hasTimestampValueType;
13
+ exports.isAllSameChar = isAllSameChar;
13
14
  exports.parseDateObj = parseDateObj;
14
- exports.parseDateValue = exports.parseDateString = void 0;
15
+ exports.parseDateString = void 0;
16
+ exports.parseDateValue = parseDateValue;
15
17
  exports.toStringTimeDate = toStringTimeDate;
16
18
  var _xeUtils = _interopRequireDefault(require("xe-utils"));
17
19
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
20
+ function getChunkDefaultNum(selectKey) {
21
+ const currDate = new Date();
22
+ switch (selectKey) {
23
+ case 'y':
24
+ return currDate.getFullYear();
25
+ case 'M':
26
+ return currDate.getMonth() + 1;
27
+ case 'd':
28
+ return currDate.getDate();
29
+ case 'H':
30
+ return currDate.getHours();
31
+ case 'm':
32
+ return currDate.getMinutes();
33
+ case 's':
34
+ return currDate.getSeconds();
35
+ }
36
+ return 0;
37
+ }
18
38
  function hasTimestampValueType(valueFormat) {
19
39
  return valueFormat === 'timestamp';
20
40
  }
@@ -35,18 +55,6 @@ function handleValueFormat(type, valueFormat) {
35
55
  }
36
56
  return 'yyyy-MM-dd';
37
57
  }
38
- function handleInputFormat(type, inputFormat) {
39
- if (inputFormat) {
40
- return inputFormat;
41
- }
42
- if (type === 'time') {
43
- return 'HH:mm:ss';
44
- }
45
- if (type === 'datetime') {
46
- return 'yyyy-MM-dd HH:mm:ss';
47
- }
48
- return 'yyyy-MM-dd';
49
- }
50
58
  function toStringTimeDate(str) {
51
59
  const rest = new Date(2e3, 0, 1);
52
60
  if (str) {
@@ -87,7 +95,7 @@ function getDateQuarter(date) {
87
95
  }
88
96
  return 4;
89
97
  }
90
- const parseDateValue = (val, type, options) => {
98
+ function parseDateValue(val, type, options) {
91
99
  const {
92
100
  valueFormat
93
101
  } = options;
@@ -104,8 +112,7 @@ const parseDateValue = (val, type, options) => {
104
112
  return _xeUtils.default.toStringDate(val, valueFormat);
105
113
  }
106
114
  return null;
107
- };
108
- exports.parseDateValue = parseDateValue;
115
+ }
109
116
  const parseDateString = (val, type, options) => {
110
117
  const dValue = parseDateValue(val, type, options);
111
118
  return dValue ? _xeUtils.default.toDateString(dValue, options.valueFormat) : '';
@@ -258,6 +265,17 @@ function getRangeDateByCode(code, val, type, options) {
258
265
  /**
259
266
  * 判断周的年份是否跨年
260
267
  */
261
- const checkWeekOfsetYear = (W, M) => {
268
+ function checkWeekOfsetYear(W, M) {
262
269
  return `${W}` === '1' && `${M}` === '12';
263
- };
270
+ }
271
+ function isAllSameChar(str, char) {
272
+ if (str.length === 0) {
273
+ return false;
274
+ }
275
+ for (let i = 0; i < str.length; i++) {
276
+ if (str[i] !== char) {
277
+ return false;
278
+ }
279
+ }
280
+ return true;
281
+ }
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.getDateByCode=getDateByCode,exports.getDateQuarter=getDateQuarter,exports.getRangeDateByCode=getRangeDateByCode,exports.handleInputFormat=handleInputFormat,exports.handleValueFormat=handleValueFormat,exports.hasDateValueType=hasDateValueType,exports.hasTimestampValueType=hasTimestampValueType,exports.parseDateObj=parseDateObj,exports.parseDateValue=exports.parseDateString=void 0,exports.toStringTimeDate=toStringTimeDate;var _xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function hasTimestampValueType(e){return"timestamp"===e}function hasDateValueType(e){return"date"===e}function handleValueFormat(e,t){return!t||hasDateValueType(t)||hasTimestampValueType(t)?"time"===e?"HH:mm:ss":"datetime"===e?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd":t}function handleInputFormat(e,t){return t||("time"===e?"HH:mm:ss":"datetime"===e?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd")}function toStringTimeDate(s){var r=new Date(2e3,0,1);if(s){let e=0,t=0,a=0;(_xeUtils.default.isNumber(s)||/^[0-9]{11,15}$/.test(""+s))&&(s=new Date(Number(s))),_xeUtils.default.isDate(s)?(e=s.getHours(),t=s.getMinutes(),a=s.getSeconds()):(s=(s=_xeUtils.default.toValueString(s)).match(/^(\d{1,2})(:(\d{1,2}))?(:(\d{1,2}))?/))&&(e=_xeUtils.default.toNumber(s[1]),t=_xeUtils.default.toNumber(s[3]),a=_xeUtils.default.toNumber(s[5])),r.setHours(e),r.setMinutes(t),r.setSeconds(a)}return r}function getDateQuarter(e){e=e.getMonth();return e<3?1:e<6?2:e<9?3:4}let parseDateValue=(e,t,a)=>{a=a.valueFormat;return e?"time"===t?toStringTimeDate(e):_xeUtils.default.isNumber(e)||/^[0-9]{10,15}$/.test(""+e)?new Date(Number(e)):_xeUtils.default.isString(e)?_xeUtils.default.toStringDate(_xeUtils.default.last(e.split(",")),a):_xeUtils.default.toStringDate(e,a):null},parseDateString=(exports.parseDateValue=parseDateValue,(e,t,a)=>{e=parseDateValue(e,t,a);return e?_xeUtils.default.toDateString(e,a.valueFormat):""});function parseDateObj(e,t,a){var{labelFormat:s,firstDay:r}=a;let l=null,u="";return e&&(l=parseDateValue(e,t,a)),_xeUtils.default.isValidDate(l)?(u=_xeUtils.default.toDateString(l,s,{firstDay:r}),s&&"week"===t&&(e=l.getFullYear(),a=l.getMonth()+1,t=_xeUtils.default.getYearWeek(l,r),checkWeekOfsetYear(t,a))&&(r=e+1,-1<(a=s.indexOf(t="yyyy")))&&(u=u.substring(0,a)+r+u.substring(a+t.length))):l=null,{label:u,value:l}}function getDateByCode(e,t,a,s){var{valueFormat:r,firstDay:l}=s;let u=null;var i=("prev"===e||"next"===e?new Date:t?parseDateValue(t,a,s):null)||new Date;switch(e){case"prev":case"next":case"minus":case"plus":var n="plus"===e||"next"===e?1:-1;switch(a){case"date":case"datetime":u=_xeUtils.default.getWhatDay(i,n);break;case"week":u=_xeUtils.default.getWhatWeek(i,n,l,l);break;case"month":u=_xeUtils.default.getWhatMonth(i,n);break;case"quarter":u=_xeUtils.default.getWhatQuarter(i,n);break;case"year":u=_xeUtils.default.getWhatYear(i,n)}break;default:u=new Date}return{value:u?_xeUtils.default.toDateString(u,r):""}}exports.parseDateString=parseDateString;let rangeDateOffsetNumMaps={last180:-180,last90:-90,last60:-60,last30:-30,last7:-7,last3:-3,last1:-1};function getRangeDateOffsetNum(e){return rangeDateOffsetNumMaps[e]||0}function getRangeDateByCode(e,t,a,s){var{valueFormat:r,firstDay:l}=s,u=((t=_xeUtils.default.isArray(t)?t.join(""):t)?parseDateValue(t,a,s):null)||new Date;let i=null;t=u;switch(e){case"last1":case"last3":case"last7":case"last30":case"last60":case"last90":case"last180":var n=getRangeDateOffsetNum(e);switch(a){case"date":case"datetime":i=_xeUtils.default.getWhatDay(u,n);break;case"week":i=_xeUtils.default.getWhatWeek(u,n,l,l);break;case"month":i=_xeUtils.default.getWhatMonth(u,n);break;case"quarter":i=_xeUtils.default.getWhatQuarter(u,n);break;case"year":i=_xeUtils.default.getWhatYear(u,n)}break;default:i=new Date}return{startValue:i?_xeUtils.default.toDateString(i,r):"",endValue:t?_xeUtils.default.toDateString(t,r):""}}let checkWeekOfsetYear=(e,t)=>""+e=="1"&&""+t=="12";
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.getChunkDefaultNum=getChunkDefaultNum,exports.getDateByCode=getDateByCode,exports.getDateQuarter=getDateQuarter,exports.getRangeDateByCode=getRangeDateByCode,exports.handleValueFormat=handleValueFormat,exports.hasDateValueType=hasDateValueType,exports.hasTimestampValueType=hasTimestampValueType,exports.isAllSameChar=isAllSameChar,exports.parseDateObj=parseDateObj,exports.parseDateString=void 0,exports.parseDateValue=parseDateValue,exports.toStringTimeDate=toStringTimeDate;var _xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function getChunkDefaultNum(e){var t=new Date;switch(e){case"y":return t.getFullYear();case"M":return t.getMonth()+1;case"d":return t.getDate();case"H":return t.getHours();case"m":return t.getMinutes();case"s":return t.getSeconds()}return 0}function hasTimestampValueType(e){return"timestamp"===e}function hasDateValueType(e){return"date"===e}function handleValueFormat(e,t){return!t||hasDateValueType(t)||hasTimestampValueType(t)?"time"===e?"HH:mm:ss":"datetime"===e?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd":t}function toStringTimeDate(r){var s=new Date(2e3,0,1);if(r){let e=0,t=0,a=0;(_xeUtils.default.isNumber(r)||/^[0-9]{11,15}$/.test(""+r))&&(r=new Date(Number(r))),_xeUtils.default.isDate(r)?(e=r.getHours(),t=r.getMinutes(),a=r.getSeconds()):(r=(r=_xeUtils.default.toValueString(r)).match(/^(\d{1,2})(:(\d{1,2}))?(:(\d{1,2}))?/))&&(e=_xeUtils.default.toNumber(r[1]),t=_xeUtils.default.toNumber(r[3]),a=_xeUtils.default.toNumber(r[5])),s.setHours(e),s.setMinutes(t),s.setSeconds(a)}return s}function getDateQuarter(e){e=e.getMonth();return e<3?1:e<6?2:e<9?3:4}function parseDateValue(e,t,a){a=a.valueFormat;return e?"time"===t?toStringTimeDate(e):_xeUtils.default.isNumber(e)||/^[0-9]{10,15}$/.test(""+e)?new Date(Number(e)):_xeUtils.default.isString(e)?_xeUtils.default.toStringDate(_xeUtils.default.last(e.split(",")),a):_xeUtils.default.toStringDate(e,a):null}let parseDateString=(e,t,a)=>{e=parseDateValue(e,t,a);return e?_xeUtils.default.toDateString(e,a.valueFormat):""};function parseDateObj(e,t,a){var{labelFormat:r,firstDay:s}=a;let l=null,u="";return e&&(l=parseDateValue(e,t,a)),_xeUtils.default.isValidDate(l)?(u=_xeUtils.default.toDateString(l,r,{firstDay:s}),r&&"week"===t&&(e=l.getFullYear(),a=l.getMonth()+1,checkWeekOfsetYear(_xeUtils.default.getYearWeek(l,s),a))&&(t=e+1,-1<(a=r.indexOf(s="yyyy")))&&(u=u.substring(0,a)+t+u.substring(a+s.length))):l=null,{label:u,value:l}}function getDateByCode(e,t,a,r){var{valueFormat:s,firstDay:l}=r;let u=null;var n=("prev"===e||"next"===e?new Date:t?parseDateValue(t,a,r):null)||new Date;switch(e){case"prev":case"next":case"minus":case"plus":var i="plus"===e||"next"===e?1:-1;switch(a){case"date":case"datetime":u=_xeUtils.default.getWhatDay(n,i);break;case"week":u=_xeUtils.default.getWhatWeek(n,i,l,l);break;case"month":u=_xeUtils.default.getWhatMonth(n,i);break;case"quarter":u=_xeUtils.default.getWhatQuarter(n,i);break;case"year":u=_xeUtils.default.getWhatYear(n,i)}break;default:u=new Date}return{value:u?_xeUtils.default.toDateString(u,s):""}}exports.parseDateString=parseDateString;let rangeDateOffsetNumMaps={last180:-180,last90:-90,last60:-60,last30:-30,last7:-7,last3:-3,last1:-1};function getRangeDateOffsetNum(e){return rangeDateOffsetNumMaps[e]||0}function getRangeDateByCode(e,t,a,r){var{valueFormat:s,firstDay:l}=r,u=((t=_xeUtils.default.isArray(t)?t.join(""):t)?parseDateValue(t,a,r):null)||new Date;let n=null;t=u;switch(e){case"last1":case"last3":case"last7":case"last30":case"last60":case"last90":case"last180":var i=getRangeDateOffsetNum(e);switch(a){case"date":case"datetime":n=_xeUtils.default.getWhatDay(u,i);break;case"week":n=_xeUtils.default.getWhatWeek(u,i,l,l);break;case"month":n=_xeUtils.default.getWhatMonth(u,i);break;case"quarter":n=_xeUtils.default.getWhatQuarter(u,i);break;case"year":n=_xeUtils.default.getWhatYear(u,i)}break;default:n=new Date}return{startValue:n?_xeUtils.default.toDateString(n,s):"",endValue:t?_xeUtils.default.toDateString(t,s):""}}function checkWeekOfsetYear(e,t){return""+e=="1"&&""+t=="12"}function isAllSameChar(t,a){if(0===t.length)return!1;for(let e=0;e<t.length;e++)if(t[e]!==a)return!1;return!0}