vxe-pc-ui 3.14.17 → 3.14.19
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.
- package/es/language/ar-EG.js +4 -2
- package/es/language/de-DE.js +4 -2
- package/es/language/en-US.js +4 -2
- package/es/language/es-ES.js +4 -2
- package/es/language/fr-FR.js +4 -2
- package/es/language/hu-HU.js +4 -2
- package/es/language/hy-AM.js +4 -2
- package/es/language/id-ID.js +4 -2
- package/es/language/it-IT.js +4 -2
- package/es/language/ja-JP.js +4 -2
- package/es/language/ko-KR.js +4 -2
- package/es/language/ms-MY.js +4 -2
- package/es/language/nb-NO.js +4 -2
- package/es/language/pt-BR.js +4 -2
- package/es/language/ru-RU.js +4 -2
- package/es/language/th-TH.js +4 -2
- package/es/language/ug-CN.js +4 -2
- package/es/language/uk-UA.js +4 -2
- package/es/language/uz-UZ.js +4 -2
- package/es/language/vi-VN.js +4 -2
- package/es/language/zh-CHT.js +4 -2
- package/es/language/zh-CN.js +4 -2
- package/es/select/src/select.js +192 -48
- package/es/select/style.css +121 -10
- package/es/select/style.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/tree-select/src/tree-select.js +63 -20
- package/es/tree-select/style.css +8 -0
- package/es/tree-select/style.min.css +1 -1
- package/es/ui/index.js +10 -2
- package/es/ui/src/log.js +1 -1
- package/es/vxe-select/style.css +121 -10
- package/es/vxe-select/style.min.css +1 -1
- package/es/vxe-tree-select/style.css +8 -0
- package/es/vxe-tree-select/style.min.css +1 -1
- package/lib/index.umd.js +278 -69
- package/lib/index.umd.min.js +1 -1
- package/lib/language/ar-EG.js +4 -2
- package/lib/language/ar-EG.min.js +1 -1
- package/lib/language/ar-EG.umd.js +4 -2
- package/lib/language/de-DE.js +4 -2
- package/lib/language/de-DE.min.js +1 -1
- package/lib/language/de-DE.umd.js +4 -2
- package/lib/language/en-US.js +4 -2
- package/lib/language/en-US.min.js +1 -1
- package/lib/language/en-US.umd.js +4 -2
- package/lib/language/es-ES.js +4 -2
- package/lib/language/es-ES.min.js +1 -1
- package/lib/language/es-ES.umd.js +4 -2
- package/lib/language/fr-FR.js +4 -2
- package/lib/language/fr-FR.min.js +1 -1
- package/lib/language/fr-FR.umd.js +4 -2
- package/lib/language/hu-HU.js +4 -2
- package/lib/language/hu-HU.min.js +1 -1
- package/lib/language/hu-HU.umd.js +4 -2
- package/lib/language/hy-AM.js +4 -2
- package/lib/language/hy-AM.min.js +1 -1
- package/lib/language/hy-AM.umd.js +4 -2
- package/lib/language/id-ID.js +4 -2
- package/lib/language/id-ID.min.js +1 -1
- package/lib/language/id-ID.umd.js +4 -2
- package/lib/language/it-IT.js +4 -2
- package/lib/language/it-IT.min.js +1 -1
- package/lib/language/it-IT.umd.js +4 -2
- package/lib/language/ja-JP.js +4 -2
- package/lib/language/ja-JP.min.js +1 -1
- package/lib/language/ja-JP.umd.js +4 -2
- package/lib/language/ko-KR.js +4 -2
- package/lib/language/ko-KR.min.js +1 -1
- package/lib/language/ko-KR.umd.js +4 -2
- package/lib/language/ms-MY.js +4 -2
- package/lib/language/ms-MY.min.js +1 -1
- package/lib/language/ms-MY.umd.js +4 -2
- package/lib/language/nb-NO.js +4 -2
- package/lib/language/nb-NO.min.js +1 -1
- package/lib/language/nb-NO.umd.js +4 -2
- package/lib/language/pt-BR.js +4 -2
- package/lib/language/pt-BR.min.js +1 -1
- package/lib/language/pt-BR.umd.js +4 -2
- package/lib/language/ru-RU.js +4 -2
- package/lib/language/ru-RU.min.js +1 -1
- package/lib/language/ru-RU.umd.js +4 -2
- package/lib/language/th-TH.js +4 -2
- package/lib/language/th-TH.min.js +1 -1
- package/lib/language/th-TH.umd.js +4 -2
- package/lib/language/ug-CN.js +4 -2
- package/lib/language/ug-CN.min.js +1 -1
- package/lib/language/ug-CN.umd.js +4 -2
- package/lib/language/uk-UA.js +4 -2
- package/lib/language/uk-UA.min.js +1 -1
- package/lib/language/uk-UA.umd.js +4 -2
- package/lib/language/uz-UZ.js +4 -2
- package/lib/language/uz-UZ.min.js +1 -1
- package/lib/language/uz-UZ.umd.js +4 -2
- package/lib/language/vi-VN.js +4 -2
- package/lib/language/vi-VN.min.js +1 -1
- package/lib/language/vi-VN.umd.js +4 -2
- package/lib/language/zh-CHT.js +4 -2
- package/lib/language/zh-CHT.min.js +1 -1
- package/lib/language/zh-CHT.umd.js +4 -2
- package/lib/language/zh-CN.js +4 -2
- package/lib/language/zh-CN.min.js +1 -1
- package/lib/language/zh-CN.umd.js +4 -2
- package/lib/select/src/select.js +192 -44
- package/lib/select/src/select.min.js +1 -1
- package/lib/select/style/style.css +121 -10
- package/lib/select/style/style.min.css +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/tree-select/src/tree-select.js +71 -20
- package/lib/tree-select/src/tree-select.min.js +1 -1
- package/lib/tree-select/style/style.css +8 -0
- package/lib/tree-select/style/style.min.css +1 -1
- package/lib/ui/index.js +10 -2
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-select/style/style.css +121 -10
- package/lib/vxe-select/style/style.min.css +1 -1
- package/lib/vxe-tree-select/style/style.css +8 -0
- package/lib/vxe-tree-select/style/style.min.css +1 -1
- package/package.json +1 -1
- package/packages/language/ar-EG.ts +4 -2
- package/packages/language/de-DE.ts +4 -2
- package/packages/language/en-US.ts +4 -2
- package/packages/language/es-ES.ts +4 -2
- package/packages/language/fr-FR.ts +4 -2
- package/packages/language/hu-HU.ts +4 -2
- package/packages/language/hy-AM.ts +4 -2
- package/packages/language/id-ID.ts +4 -2
- package/packages/language/it-IT.ts +4 -2
- package/packages/language/ja-JP.ts +4 -2
- package/packages/language/ko-KR.ts +4 -2
- package/packages/language/ms-MY.ts +4 -2
- package/packages/language/nb-NO.ts +4 -2
- package/packages/language/pt-BR.ts +4 -2
- package/packages/language/ru-RU.ts +4 -2
- package/packages/language/th-TH.ts +4 -2
- package/packages/language/ug-CN.ts +4 -2
- package/packages/language/uk-UA.ts +4 -2
- package/packages/language/uz-UZ.ts +4 -2
- package/packages/language/vi-VN.ts +4 -2
- package/packages/language/zh-CHT.ts +4 -2
- package/packages/language/zh-CN.ts +4 -2
- package/packages/select/src/select.ts +210 -49
- package/packages/tree-select/src/tree-select.ts +65 -21
- package/packages/ui/index.ts +9 -1
- package/styles/components/select.scss +40 -10
- package/styles/components/tree-select.scss +7 -0
- package/styles/theme/dark.scss +3 -0
- package/styles/theme/light.scss +3 -0
- package/styles/variable.scss +3 -0
- package/types/components/select.d.ts +20 -0
- package/types/components/table.d.ts +4 -0
- package/types/components/tree-select.d.ts +22 -1
- /package/es/icon/{iconfont.1779331536287.ttf → iconfont.1779445582657.ttf} +0 -0
- /package/es/icon/{iconfont.1779331536287.woff → iconfont.1779445582657.woff} +0 -0
- /package/es/icon/{iconfont.1779331536287.woff2 → iconfont.1779445582657.woff2} +0 -0
- /package/es/{iconfont.1779331536287.ttf → iconfont.1779445582657.ttf} +0 -0
- /package/es/{iconfont.1779331536287.woff → iconfont.1779445582657.woff} +0 -0
- /package/es/{iconfont.1779331536287.woff2 → iconfont.1779445582657.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1779331536287.ttf → iconfont.1779445582657.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1779331536287.woff → iconfont.1779445582657.woff} +0 -0
- /package/lib/icon/style/{iconfont.1779331536287.woff2 → iconfont.1779445582657.woff2} +0 -0
- /package/lib/{iconfont.1779331536287.ttf → iconfont.1779445582657.ttf} +0 -0
- /package/lib/{iconfont.1779331536287.woff → iconfont.1779445582657.woff} +0 -0
- /package/lib/{iconfont.1779331536287.woff2 → iconfont.1779445582657.woff2} +0 -0
|
@@ -5,13 +5,13 @@ import { getConfig, getI18n, getIcon, globalEvents, createEvent, globalMixins, r
|
|
|
5
5
|
import { getEventTargetNode, updatePanelPlacement, toCssUnit } from '../../ui/src/dom'
|
|
6
6
|
import { getLastZIndex, nextZIndex } from '../../ui/src/utils'
|
|
7
7
|
import { deNodeValue } from '../../tree/src/util'
|
|
8
|
-
import { errLog } from '../../ui/src/log'
|
|
8
|
+
import { warnLog, errLog } from '../../ui/src/log'
|
|
9
9
|
import VxeInputComponent from '../../input'
|
|
10
10
|
import VxeButtonComponent from '../../button'
|
|
11
11
|
import VxeTreeComponent from '../../tree'
|
|
12
12
|
import { getSlotVNs } from '../../ui/src/vn'
|
|
13
13
|
|
|
14
|
-
import type { TreeSelectReactData, VxeTreeSelectEmits, TreeSelectInternalData, VxeComponentSizeType, VxeButtonDefines, VxeTreeDefines, ValueOf, VxeComponentStyleType, VxeTreeSelectPropTypes, VxeFormDefines, VxeDrawerConstructor, VxeDrawerMethods, VxeFormConstructor, VxeFormPrivateMethods, VxeModalConstructor, VxeModalMethods, VxeInputConstructor, VxeTreeConstructor } from '../../../types'
|
|
14
|
+
import type { TreeSelectReactData, VxeTreeSelectEmits, TreeSelectInternalData, VxeComponentSizeType, VxeButtonDefines, VxeInputDefines, VxeTreeDefines, ValueOf, VxeComponentStyleType, VxeTreeSelectPropTypes, VxeFormDefines, VxeDrawerConstructor, VxeDrawerMethods, VxeFormConstructor, VxeFormPrivateMethods, VxeModalConstructor, VxeModalMethods, VxeInputConstructor, VxeTreeConstructor } from '../../../types'
|
|
15
15
|
import type { VxeTableConstructor, VxeTablePrivateMethods } from '../../../types/components/table'
|
|
16
16
|
|
|
17
17
|
function getOptUniqueId () {
|
|
@@ -95,10 +95,26 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
95
95
|
treeConfig: Object as PropType<VxeTreeSelectPropTypes.TreeConfig>,
|
|
96
96
|
menuConfig: Object as PropType<VxeTreeSelectPropTypes.MenuConfig>,
|
|
97
97
|
virtualYConfig: Object as PropType<VxeTreeSelectPropTypes.VirtualYConfig>,
|
|
98
|
+
/**
|
|
99
|
+
* 已废弃,被 checked-closable, clear-closable 替换
|
|
100
|
+
* @deprecated
|
|
101
|
+
*/
|
|
98
102
|
autoClose: {
|
|
99
103
|
type: Boolean as PropType<VxeTreeSelectPropTypes.AutoClose>,
|
|
100
104
|
default: () => getConfig().treeSelect.autoClose
|
|
101
105
|
},
|
|
106
|
+
checkedClosable: {
|
|
107
|
+
type: Boolean as PropType<VxeTreeSelectPropTypes.CheckedClosable>,
|
|
108
|
+
default: () => getConfig().treeSelect.checkedClosable
|
|
109
|
+
},
|
|
110
|
+
clearClosable: {
|
|
111
|
+
type: Boolean as PropType<VxeTreeSelectPropTypes.ClearClosable>,
|
|
112
|
+
default: () => getConfig().treeSelect.clearClosable
|
|
113
|
+
},
|
|
114
|
+
showCloseButton: {
|
|
115
|
+
type: Boolean as PropType<VxeTreeSelectPropTypes.ShowCloseButton>,
|
|
116
|
+
default: () => getConfig().treeSelect.showCloseButton
|
|
117
|
+
},
|
|
102
118
|
showTotalButoon: {
|
|
103
119
|
type: Boolean as PropType<VxeTreeSelectPropTypes.ShowTotalButoon>,
|
|
104
120
|
default: () => getConfig().treeSelect.showTotalButoon
|
|
@@ -517,9 +533,10 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
517
533
|
}, 10)
|
|
518
534
|
$xeTreeSelect.updateZindex()
|
|
519
535
|
$xeTreeSelect.updatePlacement()
|
|
536
|
+
$xeTreeSelect.dispatchEvent('visible-change', { visible: true }, null)
|
|
520
537
|
}
|
|
521
538
|
},
|
|
522
|
-
hideOptionPanel () {
|
|
539
|
+
hideOptionPanel (evnt?: Event) {
|
|
523
540
|
const $xeTreeSelect = this
|
|
524
541
|
const reactData = $xeTreeSelect.reactData
|
|
525
542
|
const internalData = $xeTreeSelect.internalData
|
|
@@ -528,6 +545,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
528
545
|
internalData.hpTimeout = setTimeout(() => {
|
|
529
546
|
reactData.isAniVisible = false
|
|
530
547
|
}, 350)
|
|
548
|
+
$xeTreeSelect.dispatchEvent('visible-change', { visible: false }, evnt || null)
|
|
531
549
|
},
|
|
532
550
|
changeEvent (evnt: Event, selectValue: any, node: any) {
|
|
533
551
|
const $xeTreeSelect = this
|
|
@@ -551,26 +569,27 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
551
569
|
$xeTreeSelect.changeEvent(evnt, selectValue, null)
|
|
552
570
|
$xeTreeSelect.dispatchEvent('clear', { value: selectValue }, evnt)
|
|
553
571
|
},
|
|
554
|
-
clearEvent (params:
|
|
572
|
+
clearEvent (params: VxeInputDefines.ClearEventParams) {
|
|
555
573
|
const $xeTreeSelect = this
|
|
556
574
|
|
|
557
|
-
$
|
|
558
|
-
$xeTreeSelect.
|
|
575
|
+
const { $event } = params
|
|
576
|
+
$xeTreeSelect.clearValueEvent($event, null)
|
|
577
|
+
$xeTreeSelect.hideOptionPanel($event)
|
|
559
578
|
},
|
|
560
579
|
allCheckedPanelEvent (params: VxeButtonDefines.ClickEventParams) {
|
|
561
580
|
const $xeTreeSelect = this
|
|
562
581
|
const props = $xeTreeSelect
|
|
563
582
|
|
|
564
583
|
const { $event } = params
|
|
565
|
-
const { multiple, autoClose } = props
|
|
584
|
+
const { multiple, autoClose, checkedClosable } = props
|
|
566
585
|
const $tree = $xeTreeSelect.$refs.refTree as VxeTreeConstructor
|
|
567
586
|
if (multiple) {
|
|
568
587
|
if ($tree) {
|
|
569
588
|
$tree.setAllCheckboxNode(true).then(({ checkNodeKeys, checkNodes }) => {
|
|
570
589
|
$xeTreeSelect.changeEvent($event, checkNodeKeys, checkNodes[0])
|
|
571
590
|
$xeTreeSelect.dispatchEvent('all-change', { value: checkNodeKeys }, $event)
|
|
572
|
-
if (autoClose) {
|
|
573
|
-
$xeTreeSelect.hideOptionPanel()
|
|
591
|
+
if (XEUtils.isBoolean(autoClose) ? autoClose : checkedClosable) {
|
|
592
|
+
$xeTreeSelect.hideOptionPanel($event)
|
|
574
593
|
}
|
|
575
594
|
})
|
|
576
595
|
}
|
|
@@ -581,19 +600,25 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
581
600
|
const props = $xeTreeSelect
|
|
582
601
|
|
|
583
602
|
const { $event } = params
|
|
584
|
-
const { multiple, autoClose } = props
|
|
603
|
+
const { multiple, autoClose, clearClosable } = props
|
|
585
604
|
const $tree = $xeTreeSelect.$refs.refTree as VxeTreeConstructor
|
|
586
605
|
if ($tree) {
|
|
587
606
|
const value = multiple ? [] : null
|
|
588
607
|
$tree.clearCheckboxNode().then(() => {
|
|
589
|
-
if (autoClose) {
|
|
590
|
-
$xeTreeSelect.hideOptionPanel()
|
|
608
|
+
if (XEUtils.isBoolean(autoClose) ? autoClose : clearClosable) {
|
|
609
|
+
$xeTreeSelect.hideOptionPanel($event)
|
|
591
610
|
}
|
|
592
611
|
})
|
|
593
612
|
$xeTreeSelect.changeEvent($event, value, null)
|
|
594
613
|
$xeTreeSelect.dispatchEvent('clear', { value }, $event)
|
|
595
614
|
}
|
|
596
615
|
},
|
|
616
|
+
closePanelEvent (params: VxeButtonDefines.ClickEventParams) {
|
|
617
|
+
const $xeTreeSelect = this
|
|
618
|
+
|
|
619
|
+
const { $event } = params
|
|
620
|
+
$xeTreeSelect.hideOptionPanel($event)
|
|
621
|
+
},
|
|
597
622
|
allExpandPanelEvent () {
|
|
598
623
|
const $xeTreeSelect = this
|
|
599
624
|
|
|
@@ -622,7 +647,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
622
647
|
if (getEventTargetNode(evnt, panelElem).flag) {
|
|
623
648
|
$xeTreeSelect.updatePlacement()
|
|
624
649
|
} else {
|
|
625
|
-
$xeTreeSelect.hideOptionPanel()
|
|
650
|
+
$xeTreeSelect.hideOptionPanel(evnt)
|
|
626
651
|
}
|
|
627
652
|
}
|
|
628
653
|
}
|
|
@@ -638,17 +663,17 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
638
663
|
const panelElem = $xeTreeSelect.$refs.refOptionPanel as HTMLElement
|
|
639
664
|
reactData.isActivated = getEventTargetNode(evnt, el).flag || getEventTargetNode(evnt, panelElem).flag
|
|
640
665
|
if (visiblePanel && !reactData.isActivated) {
|
|
641
|
-
$xeTreeSelect.hideOptionPanel()
|
|
666
|
+
$xeTreeSelect.hideOptionPanel(evnt)
|
|
642
667
|
}
|
|
643
668
|
}
|
|
644
669
|
},
|
|
645
|
-
handleGlobalBlurEvent () {
|
|
670
|
+
handleGlobalBlurEvent (evnt: Event) {
|
|
646
671
|
const $xeTreeSelect = this
|
|
647
672
|
const reactData = $xeTreeSelect.reactData
|
|
648
673
|
|
|
649
674
|
const { visiblePanel, isActivated } = reactData
|
|
650
675
|
if (visiblePanel) {
|
|
651
|
-
$xeTreeSelect.hideOptionPanel()
|
|
676
|
+
$xeTreeSelect.hideOptionPanel(evnt)
|
|
652
677
|
}
|
|
653
678
|
if (isActivated) {
|
|
654
679
|
reactData.isActivated = false
|
|
@@ -747,7 +772,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
747
772
|
reactData.triggerFocusPanel = false
|
|
748
773
|
} else {
|
|
749
774
|
if (reactData.visiblePanel) {
|
|
750
|
-
$xeTreeSelect.hideOptionPanel()
|
|
775
|
+
$xeTreeSelect.hideOptionPanel($event)
|
|
751
776
|
} else {
|
|
752
777
|
$xeTreeSelect.showOptionPanel()
|
|
753
778
|
}
|
|
@@ -769,7 +794,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
769
794
|
|
|
770
795
|
const { value, $event, node } = params
|
|
771
796
|
$xeTreeSelect.changeEvent($event, value, node)
|
|
772
|
-
$xeTreeSelect.hideOptionPanel()
|
|
797
|
+
$xeTreeSelect.hideOptionPanel($event)
|
|
773
798
|
},
|
|
774
799
|
checkboxChangeEvent (params: VxeTreeDefines.CheckboxChangeEventParams) {
|
|
775
800
|
const $xeTreeSelect = this
|
|
@@ -792,7 +817,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
792
817
|
const slots = $xeTreeSelect.$scopedSlots
|
|
793
818
|
const reactData = $xeTreeSelect.reactData
|
|
794
819
|
|
|
795
|
-
const { className, value: modelValue, multiple, options, loading, menuConfig, filterable, showTotalButoon, showCheckedButoon, showClearButton, showExpandButton } = props
|
|
820
|
+
const { className, value: modelValue, multiple, options, loading, menuConfig, filterable, showTotalButoon, showCheckedButoon, showClearButton, showExpandButton, showCloseButton } = props
|
|
796
821
|
const { initialized, isActivated, isAniVisible, visiblePanel, searchValue } = reactData
|
|
797
822
|
const vSize = $xeTreeSelect.computeSize
|
|
798
823
|
const isDisabled = $xeTreeSelect.computeIsDisabled
|
|
@@ -923,7 +948,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
923
948
|
})
|
|
924
949
|
])
|
|
925
950
|
: renderEmptyElement($xeTreeSelect),
|
|
926
|
-
|
|
951
|
+
(showCheckedButoon && multiple) || showClearButton || showExpandButton || headerSlot
|
|
927
952
|
? h('div', {
|
|
928
953
|
class: 'vxe-tree-select--panel-header'
|
|
929
954
|
}, headerSlot
|
|
@@ -1053,7 +1078,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1053
1078
|
})
|
|
1054
1079
|
])
|
|
1055
1080
|
]),
|
|
1056
|
-
footerSlot || showTotalButoon
|
|
1081
|
+
footerSlot || showTotalButoon || (showCloseButton && multiple)
|
|
1057
1082
|
? h('div', {
|
|
1058
1083
|
class: 'vxe-tree-select--panel-footer'
|
|
1059
1084
|
}, footerSlot
|
|
@@ -1066,6 +1091,21 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1066
1091
|
? h('div', {
|
|
1067
1092
|
class: 'vxe-tree-select--total-btns'
|
|
1068
1093
|
}, getI18n('vxe.treeSelect.total', [selectVals.length]))
|
|
1094
|
+
: renderEmptyElement($xeTreeSelect),
|
|
1095
|
+
showCloseButton && multiple
|
|
1096
|
+
? h('div', {
|
|
1097
|
+
class: 'vxe-tree-select--oper-btns'
|
|
1098
|
+
}, [
|
|
1099
|
+
h(VxeButtonComponent, {
|
|
1100
|
+
props: {
|
|
1101
|
+
content: getI18n('vxe.select.close'),
|
|
1102
|
+
mode: 'text'
|
|
1103
|
+
},
|
|
1104
|
+
on: {
|
|
1105
|
+
click: $xeTreeSelect.closePanelEvent
|
|
1106
|
+
}
|
|
1107
|
+
})
|
|
1108
|
+
])
|
|
1069
1109
|
: renderEmptyElement($xeTreeSelect)
|
|
1070
1110
|
])
|
|
1071
1111
|
])
|
|
@@ -1090,7 +1130,11 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1090
1130
|
},
|
|
1091
1131
|
mounted () {
|
|
1092
1132
|
const $xeTreeSelect = this
|
|
1133
|
+
const props = $xeTreeSelect
|
|
1093
1134
|
|
|
1135
|
+
if (XEUtils.isBoolean(props.autoClose)) {
|
|
1136
|
+
warnLog('vxe.error.delProp', ['auto-close', 'checked-closable | clear-closable'])
|
|
1137
|
+
}
|
|
1094
1138
|
globalEvents.on($xeTreeSelect, 'mousewheel', $xeTreeSelect.handleGlobalMousewheelEvent)
|
|
1095
1139
|
globalEvents.on($xeTreeSelect, 'mousedown', $xeTreeSelect.handleGlobalMousedownEvent)
|
|
1096
1140
|
globalEvents.on($xeTreeSelect, 'blur', $xeTreeSelect.handleGlobalBlurEvent)
|
package/packages/ui/index.ts
CHANGED
|
@@ -323,6 +323,14 @@ setConfig({
|
|
|
323
323
|
segmented: {},
|
|
324
324
|
select: {
|
|
325
325
|
multiCharOverflow: 8,
|
|
326
|
+
radioConfig: {
|
|
327
|
+
showIcon: true,
|
|
328
|
+
trigger: 'option'
|
|
329
|
+
},
|
|
330
|
+
checkboxConfig: {
|
|
331
|
+
showIcon: true,
|
|
332
|
+
trigger: 'option'
|
|
333
|
+
},
|
|
326
334
|
remoteConfig: {
|
|
327
335
|
enabled: true,
|
|
328
336
|
autoLoad: true
|
|
@@ -417,7 +425,7 @@ setConfig({
|
|
|
417
425
|
}
|
|
418
426
|
},
|
|
419
427
|
treeSelect: {
|
|
420
|
-
autoClose:
|
|
428
|
+
autoClose: null as any,
|
|
421
429
|
virtualYConfig: {
|
|
422
430
|
enabled: true,
|
|
423
431
|
gt: 0,
|
|
@@ -85,20 +85,28 @@
|
|
|
85
85
|
display: flex;
|
|
86
86
|
flex-direction: row;
|
|
87
87
|
}
|
|
88
|
-
|
|
88
|
+
|
|
89
|
+
.vxe-select--header-button,
|
|
90
|
+
.vxe-select--footer-button {
|
|
89
91
|
display: flex;
|
|
90
92
|
flex-direction: row;
|
|
91
|
-
|
|
92
|
-
|
|
93
|
+
white-space: nowrap;
|
|
94
|
+
}
|
|
95
|
+
.vxe-select--total-btns {
|
|
96
|
+
padding-left: var(--vxe-ui-current-padding);
|
|
93
97
|
flex-shrink: 0;
|
|
94
|
-
padding-left: 0.8em;
|
|
95
98
|
}
|
|
96
|
-
.vxe-select--
|
|
99
|
+
.vxe-select--oper-btns {
|
|
97
100
|
display: flex;
|
|
98
101
|
flex-direction: row;
|
|
99
102
|
flex-grow: 1;
|
|
100
103
|
justify-content: right;
|
|
101
104
|
}
|
|
105
|
+
.vxe-select--footer-button {
|
|
106
|
+
display: flex;
|
|
107
|
+
flex-direction: row;
|
|
108
|
+
}
|
|
109
|
+
|
|
102
110
|
|
|
103
111
|
.vxe-select--panel-header {
|
|
104
112
|
border-bottom: 1px solid var(--vxe-ui-base-popup-border-color);
|
|
@@ -133,11 +141,9 @@
|
|
|
133
141
|
}
|
|
134
142
|
.vxe-select-option {
|
|
135
143
|
position: relative;
|
|
144
|
+
flex-direction: row;
|
|
145
|
+
display: flex;
|
|
136
146
|
padding: 0 0.6em;
|
|
137
|
-
white-space: nowrap;
|
|
138
|
-
overflow: hidden;
|
|
139
|
-
text-overflow: ellipsis;
|
|
140
|
-
white-space: nowrap;
|
|
141
147
|
user-select: none;
|
|
142
148
|
cursor: pointer;
|
|
143
149
|
&.is--add {
|
|
@@ -156,7 +162,7 @@
|
|
|
156
162
|
}
|
|
157
163
|
&:not(.is--disabled) {
|
|
158
164
|
&.is--hover {
|
|
159
|
-
background-color: var(--vxe-ui-
|
|
165
|
+
background-color: var(--vxe-ui-select-option-hover-background-color);
|
|
160
166
|
}
|
|
161
167
|
}
|
|
162
168
|
&.is--disabled {
|
|
@@ -170,6 +176,12 @@
|
|
|
170
176
|
cursor: default;
|
|
171
177
|
}
|
|
172
178
|
|
|
179
|
+
.vxe-select-option--label {
|
|
180
|
+
flex-grow: 1;
|
|
181
|
+
overflow: hidden;
|
|
182
|
+
text-overflow: ellipsis;
|
|
183
|
+
white-space: nowrap;
|
|
184
|
+
}
|
|
173
185
|
.vxe-select-option--add-icon {
|
|
174
186
|
display: none;
|
|
175
187
|
position: absolute;
|
|
@@ -177,6 +189,15 @@
|
|
|
177
189
|
right: 0.6em;
|
|
178
190
|
}
|
|
179
191
|
|
|
192
|
+
.vxe-select-option--checkbox {
|
|
193
|
+
padding-right: 0.4em;
|
|
194
|
+
@include baseMixin.createCheckboxIcon();
|
|
195
|
+
}
|
|
196
|
+
.vxe-select-option--radio {
|
|
197
|
+
padding-right: 0.4em;
|
|
198
|
+
@include baseMixin.createRadioIcon();
|
|
199
|
+
}
|
|
200
|
+
|
|
180
201
|
.vxe-select--search-icon {
|
|
181
202
|
margin-right: 0.5em;
|
|
182
203
|
}
|
|
@@ -202,6 +223,15 @@
|
|
|
202
223
|
}
|
|
203
224
|
}
|
|
204
225
|
|
|
226
|
+
.vxe-select,
|
|
227
|
+
.vxe-select--panel {
|
|
228
|
+
--vxe-ui-current-padding: var(--vxe-ui-layout-padding-default);
|
|
229
|
+
&.size--small,
|
|
230
|
+
&.size--mini {
|
|
231
|
+
--vxe-ui-current-padding: var(--vxe-ui-layout-padding-half);
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
|
|
205
235
|
.vxe-select--panel {
|
|
206
236
|
.vxe-select-option {
|
|
207
237
|
height: var(--vxe-ui-select-option-height-default);
|
|
@@ -74,6 +74,13 @@
|
|
|
74
74
|
}
|
|
75
75
|
.vxe-tree-select--total-btns {
|
|
76
76
|
padding-left: var(--vxe-ui-current-padding);
|
|
77
|
+
flex-shrink: 0;
|
|
78
|
+
}
|
|
79
|
+
.vxe-tree-select--oper-btns {
|
|
80
|
+
display: flex;
|
|
81
|
+
flex-direction: row;
|
|
82
|
+
flex-grow: 1;
|
|
83
|
+
justify-content: right;
|
|
77
84
|
}
|
|
78
85
|
.vxe-tree-select--footer-button,
|
|
79
86
|
.vxe-tree-select--selected-btns,
|
package/styles/theme/dark.scss
CHANGED
package/styles/theme/light.scss
CHANGED
|
@@ -94,6 +94,9 @@
|
|
|
94
94
|
|
|
95
95
|
/*switch*/
|
|
96
96
|
--vxe-ui-switch-close-background-color: #{light_variable.$vxe-ui-switch-close-background-color};
|
|
97
|
+
|
|
98
|
+
/*select*/
|
|
99
|
+
--vxe-ui-select-option-hover-background-color: #{light_variable.$vxe-ui-select-option-hover-background-color};
|
|
97
100
|
|
|
98
101
|
/*upload*/
|
|
99
102
|
--vxe-ui-upload-drag-over-background-color:#{light_variable.$vxe-ui-upload-drag-over-background-color};
|
package/styles/variable.scss
CHANGED
|
@@ -88,6 +88,9 @@ $vxe-ui-list-design-table-header-background-color: #f8f8f9 !default;
|
|
|
88
88
|
/*switch*/
|
|
89
89
|
$vxe-ui-switch-close-background-color: rgba(0,0,0,0.35) !default;
|
|
90
90
|
|
|
91
|
+
/*select*/
|
|
92
|
+
$vxe-ui-select-option-hover-background-color: #f5f7fa !default;
|
|
93
|
+
|
|
91
94
|
/*upload*/
|
|
92
95
|
$vxe-ui-upload-drag-over-background-color:rgba(255,255,200,0.8) !default;
|
|
93
96
|
|
|
@@ -36,6 +36,9 @@ export namespace VxeSelectPropTypes {
|
|
|
36
36
|
export type Readonly = boolean
|
|
37
37
|
export type Loading = boolean
|
|
38
38
|
export type Disabled = boolean
|
|
39
|
+
export type CheckedClosable = boolean
|
|
40
|
+
export type ClearClosable = boolean
|
|
41
|
+
export type ShowCloseButton = boolean
|
|
39
42
|
export type ShowTotalButoon = boolean
|
|
40
43
|
export type ShowCheckedButoon = boolean
|
|
41
44
|
export type ShowClearButton = boolean
|
|
@@ -63,6 +66,16 @@ export namespace VxeSelectPropTypes {
|
|
|
63
66
|
label?: string
|
|
64
67
|
key?: string
|
|
65
68
|
}
|
|
69
|
+
export type ShowRadio = boolean
|
|
70
|
+
export interface RadioConfig {
|
|
71
|
+
showIcon?: boolean
|
|
72
|
+
trigger?: '' | 'default' | 'icon' | 'option'
|
|
73
|
+
}
|
|
74
|
+
export type ShowCheckbox = boolean
|
|
75
|
+
export interface CheckboxConfig {
|
|
76
|
+
showIcon?: boolean
|
|
77
|
+
trigger?: '' | 'default' | 'icon' | 'option'
|
|
78
|
+
}
|
|
66
79
|
export type Filterable = boolean
|
|
67
80
|
export type FilterMethod = (params: {
|
|
68
81
|
$select: VxeSelectConstructor
|
|
@@ -187,6 +200,9 @@ export interface VxeSelectProps {
|
|
|
187
200
|
readonly?: VxeSelectPropTypes.Readonly
|
|
188
201
|
loading?: VxeSelectPropTypes.Loading
|
|
189
202
|
disabled?: VxeSelectPropTypes.Disabled
|
|
203
|
+
checkedClosable?: VxeSelectPropTypes.CheckedClosable
|
|
204
|
+
clearClosable?: VxeSelectPropTypes.ClearClosable
|
|
205
|
+
showCloseButton?: VxeSelectPropTypes.ShowCloseButton
|
|
190
206
|
showTotalButoon?: VxeSelectPropTypes.ShowTotalButoon
|
|
191
207
|
showCheckedButoon?: VxeSelectPropTypes.ShowCheckedButoon
|
|
192
208
|
showClearButton?: VxeSelectPropTypes.ShowClearButton
|
|
@@ -208,6 +224,10 @@ export interface VxeSelectProps {
|
|
|
208
224
|
optionGroupProps?: VxeSelectPropTypes.OptionGroupProps
|
|
209
225
|
optionConfig?: VxeSelectPropTypes.OptionConfig
|
|
210
226
|
emptyText?: VxeSelectPropTypes.EmptyText
|
|
227
|
+
showRadio?: VxeSelectPropTypes.ShowRadio
|
|
228
|
+
radioConfig?: VxeSelectPropTypes.RadioConfig
|
|
229
|
+
showCheckbox?: VxeSelectPropTypes.ShowCheckbox
|
|
230
|
+
checkboxConfig?: VxeSelectPropTypes.CheckboxConfig
|
|
211
231
|
/**
|
|
212
232
|
* 是否启用本地筛选
|
|
213
233
|
*/
|
|
@@ -29,7 +29,14 @@ export namespace VxeTreeSelectPropTypes {
|
|
|
29
29
|
export type Readonly = boolean
|
|
30
30
|
export type Loading = boolean
|
|
31
31
|
export type Disabled = boolean
|
|
32
|
+
/**
|
|
33
|
+
* 已废弃,被 CheckedClosable, ClearClosable 替换
|
|
34
|
+
* @deprecated
|
|
35
|
+
*/
|
|
32
36
|
export type AutoClose = boolean
|
|
37
|
+
export type CheckedClosable = boolean
|
|
38
|
+
export type ClearClosable = boolean
|
|
39
|
+
export type ShowCloseButton = boolean
|
|
33
40
|
export type ShowTotalButoon = boolean
|
|
34
41
|
export type ShowCheckedButoon = boolean
|
|
35
42
|
export type ShowExpandButton = boolean
|
|
@@ -146,7 +153,14 @@ export interface VxeTreeSelectProps<D = any> {
|
|
|
146
153
|
readonly?: VxeTreeSelectPropTypes.Readonly
|
|
147
154
|
loading?: VxeTreeSelectPropTypes.Loading
|
|
148
155
|
disabled?: VxeTreeSelectPropTypes.Disabled
|
|
156
|
+
/**
|
|
157
|
+
* 已废弃,被 checked-closable, clear-closable 替换
|
|
158
|
+
* @deprecated
|
|
159
|
+
*/
|
|
149
160
|
autoClose?: VxeTreeSelectPropTypes.AutoClose
|
|
161
|
+
checkedClosable?: VxeTreeSelectPropTypes.CheckedClosable
|
|
162
|
+
clearClosable?: VxeTreeSelectPropTypes.ClearClosable
|
|
163
|
+
showCloseButton?: VxeTreeSelectPropTypes.ShowCloseButton
|
|
150
164
|
showTotalButoon?: VxeTreeSelectPropTypes.ShowTotalButoon
|
|
151
165
|
showCheckedButoon?: VxeTreeSelectPropTypes.ShowCheckedButoon
|
|
152
166
|
showClearButton?: VxeTreeSelectPropTypes.ShowClearButton
|
|
@@ -230,7 +244,8 @@ export type VxeTreeSelectEmits = [
|
|
|
230
244
|
'blur',
|
|
231
245
|
'focus',
|
|
232
246
|
'click',
|
|
233
|
-
'node-click'
|
|
247
|
+
'node-click',
|
|
248
|
+
'visible-change'
|
|
234
249
|
]
|
|
235
250
|
|
|
236
251
|
export namespace VxeTreeSelectDefines {
|
|
@@ -250,6 +265,9 @@ export namespace VxeTreeSelectDefines {
|
|
|
250
265
|
export interface FocusEventParams extends TreeSelectEventParams { }
|
|
251
266
|
export interface BlurEventParams extends TreeSelectEventParams { }
|
|
252
267
|
export interface ClickEventParams extends TreeSelectEventParams { }
|
|
268
|
+
export interface VisibleChangeEventParams extends TreeSelectEventParams {
|
|
269
|
+
visible: boolean
|
|
270
|
+
}
|
|
253
271
|
}
|
|
254
272
|
|
|
255
273
|
export interface VxeTreeSelectEventProps<D = any> {
|
|
@@ -258,6 +276,7 @@ export interface VxeTreeSelectEventProps<D = any> {
|
|
|
258
276
|
onFocus?: VxeTreeSelectEvents.Focus
|
|
259
277
|
onBlur?: VxeTreeSelectEvents.Blur
|
|
260
278
|
onClick?: VxeTreeSelectEvents.Click
|
|
279
|
+
onVisibleChange?: VxeTreeSelectEvents.VisibleChange
|
|
261
280
|
}
|
|
262
281
|
|
|
263
282
|
export interface VxeTreeSelectListeners<D = any> {
|
|
@@ -266,6 +285,7 @@ export interface VxeTreeSelectListeners<D = any> {
|
|
|
266
285
|
focus?: VxeTreeSelectEvents.Focus
|
|
267
286
|
blur?: VxeTreeSelectEvents.Blur
|
|
268
287
|
click?: VxeTreeSelectEvents.Click
|
|
288
|
+
visibleChange?: VxeTreeSelectEvents.VisibleChange
|
|
269
289
|
}
|
|
270
290
|
|
|
271
291
|
export namespace VxeTreeSelectEvents {
|
|
@@ -274,6 +294,7 @@ export namespace VxeTreeSelectEvents {
|
|
|
274
294
|
export type Focus = (params: VxeTreeSelectDefines.FocusEventParams) => void
|
|
275
295
|
export type Blur = (params: VxeTreeSelectDefines.BlurEventParams) => void
|
|
276
296
|
export type Click = (params: VxeTreeSelectDefines.ClickEventParams) => void
|
|
297
|
+
export type VisibleChange = (params: VxeTreeSelectDefines.VisibleChangeEventParams) => void
|
|
277
298
|
}
|
|
278
299
|
|
|
279
300
|
export namespace VxeTreeSelectSlotTypes {
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|