vxe-pc-ui 3.15.2 → 3.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.
- package/es/backtop/src/backtop.js +8 -7
- package/es/button/src/button.js +3 -2
- package/es/calendar/src/calendar.js +2 -1
- package/es/cascader/src/cascader.js +75 -35
- package/es/checkbox/src/group.js +16 -7
- package/es/context-menu/src/context-menu.js +2 -6
- package/es/date-panel/src/util.js +27 -16
- package/es/date-picker/src/date-picker.js +616 -88
- package/es/date-range-picker/src/date-range-picker.js +7 -4
- package/es/drawer/src/drawer.js +3 -0
- package/es/form/render/index.js +3 -2
- package/es/form/src/form.js +11 -12
- package/es/form/src/itemInfo.js +6 -5
- package/es/image/src/image.js +5 -6
- package/es/input/src/input.js +2 -1
- package/es/layout-body/src/layout-body.js +13 -6
- package/es/list/src/list.js +3 -6
- package/es/menu/src/menu.js +2 -1
- package/es/modal/src/modal.js +5 -1
- package/es/pager/src/pager.js +4 -3
- package/es/radio/src/group.js +11 -8
- package/es/select/src/select.js +34 -30
- package/es/splitter/src/splitter.js +6 -5
- package/es/table-select/src/table-select.js +27 -22
- package/es/tabs/src/tabs.js +4 -3
- package/es/textarea/src/textarea.js +2 -1
- package/es/tree/src/tree.js +6 -11
- package/es/tree-select/src/tree-select.js +27 -33
- package/es/ui/index.js +4 -1
- package/es/ui/src/log.js +14 -4
- package/es/upload/src/upload.js +11 -9
- package/lib/backtop/src/backtop.js +10 -6
- package/lib/backtop/src/backtop.min.js +1 -1
- package/lib/button/src/button.js +3 -1
- package/lib/button/src/button.min.js +1 -1
- package/lib/calendar/src/calendar.js +3 -1
- package/lib/calendar/src/calendar.min.js +1 -1
- package/lib/cascader/src/cascader.js +87 -34
- package/lib/cascader/src/cascader.min.js +1 -1
- package/lib/checkbox/src/group.js +18 -6
- package/lib/checkbox/src/group.min.js +1 -1
- package/lib/context-menu/src/context-menu.js +3 -4
- package/lib/context-menu/src/context-menu.min.js +1 -1
- package/lib/date-panel/src/util.js +37 -18
- package/lib/date-panel/src/util.min.js +1 -1
- package/lib/date-picker/src/date-picker.js +659 -86
- package/lib/date-picker/src/date-picker.min.js +1 -1
- package/lib/date-range-picker/src/date-range-picker.js +7 -3
- package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
- package/lib/drawer/src/drawer.js +3 -0
- package/lib/drawer/src/drawer.min.js +1 -1
- package/lib/form/render/index.js +3 -1
- package/lib/form/render/index.min.js +1 -1
- package/lib/form/src/form.js +12 -8
- package/lib/form/src/form.min.js +1 -1
- package/lib/form/src/itemInfo.js +6 -4
- package/lib/form/src/itemInfo.min.js +1 -1
- package/lib/image/src/image.js +7 -5
- package/lib/image/src/image.min.js +1 -1
- package/lib/index.umd.js +1140 -287
- package/lib/index.umd.min.js +1 -1
- package/lib/input/src/input.js +5 -3
- package/lib/input/src/input.min.js +1 -1
- package/lib/layout-body/src/layout-body.js +13 -4
- package/lib/layout-body/src/layout-body.min.js +1 -1
- package/lib/list/src/list.js +4 -5
- package/lib/list/src/list.min.js +1 -1
- package/lib/menu/src/menu.js +3 -1
- package/lib/menu/src/menu.min.js +1 -1
- package/lib/modal/src/modal.js +8 -2
- package/lib/modal/src/modal.min.js +1 -1
- package/lib/pager/src/pager.js +5 -2
- package/lib/pager/src/pager.min.js +1 -1
- package/lib/radio/src/group.js +13 -6
- package/lib/radio/src/group.min.js +1 -1
- package/lib/select/src/select.js +36 -29
- package/lib/select/src/select.min.js +1 -1
- package/lib/splitter/src/splitter.js +9 -6
- package/lib/splitter/src/splitter.min.js +1 -1
- package/lib/table-select/src/table-select.js +27 -19
- package/lib/table-select/src/table-select.min.js +1 -1
- package/lib/tabs/src/tabs.js +6 -3
- package/lib/tabs/src/tabs.min.js +1 -1
- package/lib/textarea/src/textarea.js +3 -1
- package/lib/textarea/src/textarea.min.js +1 -1
- package/lib/tree/src/tree.js +9 -8
- package/lib/tree/src/tree.min.js +1 -1
- package/lib/tree-select/src/tree-select.js +17 -15
- package/lib/tree-select/src/tree-select.min.js +1 -1
- package/lib/ui/index.js +4 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +14 -3
- package/lib/ui/src/log.min.js +1 -1
- package/lib/upload/src/upload.js +22 -7
- package/lib/upload/src/upload.min.js +1 -1
- package/package.json +1 -1
- package/packages/backtop/src/backtop.ts +11 -3
- package/packages/button/src/button.ts +4 -2
- package/packages/calendar/src/calendar.ts +3 -1
- package/packages/cascader/src/cascader.ts +77 -32
- package/packages/checkbox/src/group.ts +22 -5
- package/packages/context-menu/src/context-menu.ts +5 -2
- package/packages/date-panel/src/util.ts +28 -16
- package/packages/date-picker/src/date-picker.ts +630 -89
- package/packages/date-range-picker/src/date-range-picker.ts +8 -4
- package/packages/drawer/src/drawer.ts +3 -0
- package/packages/form/render/index.ts +4 -2
- package/packages/form/src/form.ts +14 -7
- package/packages/form/src/itemInfo.ts +7 -5
- package/packages/image/src/image.ts +9 -3
- package/packages/input/src/input.ts +3 -1
- package/packages/layout-body/src/layout-body.ts +16 -2
- package/packages/list/src/list.ts +6 -3
- package/packages/menu/src/menu.ts +3 -1
- package/packages/modal/src/modal.ts +6 -1
- package/packages/pager/src/pager.ts +5 -3
- package/packages/radio/src/group.ts +16 -5
- package/packages/select/src/select.ts +41 -29
- package/packages/splitter/src/splitter.ts +7 -5
- package/packages/table-select/src/table-select.ts +31 -20
- package/packages/tabs/src/tabs.ts +5 -3
- package/packages/textarea/src/textarea.ts +3 -1
- package/packages/tree/src/tree.ts +9 -4
- package/packages/tree-select/src/tree-select.ts +31 -30
- package/packages/ui/index.ts +3 -0
- package/packages/ui/src/log.ts +16 -4
- package/packages/upload/src/upload.ts +16 -6
- package/types/components/cascader.d.ts +4 -0
- package/types/components/date-picker.d.ts +14 -6
- package/types/components/drawer.d.ts +2 -0
- package/types/components/modal.d.ts +2 -0
- package/types/components/upload.d.ts +28 -1
- /package/es/icon/{iconfont.1781753586592.ttf → iconfont.1781876590487.ttf} +0 -0
- /package/es/icon/{iconfont.1781753586592.woff → iconfont.1781876590487.woff} +0 -0
- /package/es/icon/{iconfont.1781753586592.woff2 → iconfont.1781876590487.woff2} +0 -0
- /package/es/{iconfont.1781753586592.ttf → iconfont.1781876590487.ttf} +0 -0
- /package/es/{iconfont.1781753586592.woff → iconfont.1781876590487.woff} +0 -0
- /package/es/{iconfont.1781753586592.woff2 → iconfont.1781876590487.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1781753586592.ttf → iconfont.1781876590487.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1781753586592.woff → iconfont.1781876590487.woff} +0 -0
- /package/lib/icon/style/{iconfont.1781753586592.woff2 → iconfont.1781876590487.woff2} +0 -0
- /package/lib/{iconfont.1781753586592.ttf → iconfont.1781876590487.ttf} +0 -0
- /package/lib/{iconfont.1781753586592.woff → iconfont.1781876590487.woff} +0 -0
- /package/lib/{iconfont.1781753586592.woff2 → iconfont.1781876590487.woff2} +0 -0
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { defineVxeComponent } from '../../ui/src/comp';
|
|
2
2
|
import XEUtils from 'xe-utils';
|
|
3
3
|
import { getConfig, getIcon, createEvent, globalMixins, renderEmptyElement } from '../../ui';
|
|
4
|
-
import {
|
|
4
|
+
import { createComponentLog } from '../../ui/src/log';
|
|
5
5
|
import { getLastZIndex, nextZIndex } from '../../ui/src/utils';
|
|
6
6
|
import { toCssUnit } from '../../ui/src/dom';
|
|
7
7
|
import VxeButtonComponent from '../../button';
|
|
8
|
+
const { errLog } = createComponentLog('backtop');
|
|
8
9
|
function createInternalData() {
|
|
9
10
|
return {
|
|
10
11
|
targetEl: null
|
|
@@ -86,13 +87,9 @@ export default {
|
|
|
86
87
|
},
|
|
87
88
|
data() {
|
|
88
89
|
const xID = XEUtils.uniqueId();
|
|
89
|
-
const internalData = createInternalData();
|
|
90
90
|
const reactData = createReactData();
|
|
91
|
-
return {
|
|
92
|
-
|
|
93
|
-
internalData,
|
|
94
|
-
reactData
|
|
95
|
-
};
|
|
91
|
+
return Object.assign(Object.assign({}, {}), { xID,
|
|
92
|
+
reactData });
|
|
96
93
|
},
|
|
97
94
|
computed: Object.assign(Object.assign({}, {}), { computeWrapperStyle() {
|
|
98
95
|
const $xeBacktop = this;
|
|
@@ -281,6 +278,10 @@ export default {
|
|
|
281
278
|
]);
|
|
282
279
|
}
|
|
283
280
|
},
|
|
281
|
+
created() {
|
|
282
|
+
const $xeBacktop = this;
|
|
283
|
+
$xeBacktop.internalData = createInternalData();
|
|
284
|
+
},
|
|
284
285
|
mounted() {
|
|
285
286
|
const $xeBacktop = this;
|
|
286
287
|
const props = $xeBacktop;
|
package/es/button/src/button.js
CHANGED
|
@@ -4,8 +4,9 @@ import { defineVxeComponent } from '../../ui/src/comp';
|
|
|
4
4
|
import { getEventTargetNode, updatePanelPlacement } from '../../ui/src/dom';
|
|
5
5
|
import { getFuncText, getLastZIndex, nextZIndex } from '../../ui/src/utils';
|
|
6
6
|
import { getSlotVNs, getEventCaseName } from '../../ui/src/vn';
|
|
7
|
-
import {
|
|
7
|
+
import { createComponentLog } from '../../ui/src/log';
|
|
8
8
|
import VxeTooltipComponent from '../../tooltip';
|
|
9
|
+
const { warnLog } = createComponentLog('button');
|
|
9
10
|
export default {
|
|
10
11
|
name: 'VxeButton',
|
|
11
12
|
mixins: [
|
|
@@ -849,7 +850,7 @@ export default {
|
|
|
849
850
|
const $xeButton = this;
|
|
850
851
|
const props = $xeButton;
|
|
851
852
|
if (props.type === 'text') {
|
|
852
|
-
warnLog('vxe.error.delProp', ['
|
|
853
|
+
warnLog('vxe.error.delProp', ['type=text', 'mode=text']);
|
|
853
854
|
}
|
|
854
855
|
globalEvents.on($xeButton, 'mousewheel', $xeButton.handleGlobalMousewheelEvent);
|
|
855
856
|
globalEvents.on($xeButton, 'mousedown', $xeButton.handleGlobalMousedownEvent);
|
|
@@ -4,8 +4,9 @@ import { VxeUI, createEvent, globalMixins, renderEmptyElement } from '../../ui';
|
|
|
4
4
|
import { getDateQuarter } from '../../date-panel/src/util';
|
|
5
5
|
import { toCssUnit } from '../../ui/src/dom';
|
|
6
6
|
import { isEnableConf } from '../../ui/src/utils';
|
|
7
|
-
import {
|
|
7
|
+
import { createComponentLog } from '../../ui/src/log';
|
|
8
8
|
import VxeButtonComponent from '../../button/src/button';
|
|
9
|
+
const { errLog } = createComponentLog('calendar');
|
|
9
10
|
const { menus, getConfig, getI18n } = VxeUI;
|
|
10
11
|
export default {
|
|
11
12
|
name: 'VxeCalendar',
|
|
@@ -3,7 +3,6 @@ import { getConfig, getI18n, getIcon, globalEvents, createEvent, renderEmptyElem
|
|
|
3
3
|
import { getEventTargetNode, updatePanelPlacement, toCssUnit } from '../../ui/src/dom';
|
|
4
4
|
import { getLastZIndex, nextZIndex } from '../../ui/src/utils';
|
|
5
5
|
import { enNodeValue, deNodeValue } from './util';
|
|
6
|
-
import { errLog } from '../../ui/src/log';
|
|
7
6
|
import XEUtils from 'xe-utils';
|
|
8
7
|
import VxeListComponent from '../../list/src/list';
|
|
9
8
|
import VxeInputComponent from '../../input/src/input';
|
|
@@ -178,12 +177,8 @@ export default {
|
|
|
178
177
|
data() {
|
|
179
178
|
const xID = XEUtils.uniqueId();
|
|
180
179
|
const reactData = createReactData();
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
xID,
|
|
184
|
-
reactData,
|
|
185
|
-
internalData
|
|
186
|
-
};
|
|
180
|
+
return Object.assign(Object.assign({}, {}), { xID,
|
|
181
|
+
reactData });
|
|
187
182
|
},
|
|
188
183
|
computed: Object.assign(Object.assign({}, {}), { computeFormReadonly() {
|
|
189
184
|
const $xeCascader = this;
|
|
@@ -669,7 +664,6 @@ export default {
|
|
|
669
664
|
const $xeCascader = this;
|
|
670
665
|
const reactData = $xeCascader.reactData;
|
|
671
666
|
const internalData = $xeCascader.internalData;
|
|
672
|
-
const { nodeMaps } = internalData;
|
|
673
667
|
let fullList = internalData.afterVisibleList;
|
|
674
668
|
if (force) {
|
|
675
669
|
// 更新数据,处理筛选和排序
|
|
@@ -678,18 +672,59 @@ export default {
|
|
|
678
672
|
fullList = $xeCascader.handleTreeToList();
|
|
679
673
|
}
|
|
680
674
|
const treeList = fullList.slice(0);
|
|
681
|
-
treeList.forEach((item, $index) => {
|
|
682
|
-
const nodeid = $xeCascader.getNodeId(item);
|
|
683
|
-
const itemRest = nodeMaps[nodeid];
|
|
684
|
-
if (itemRest) {
|
|
685
|
-
itemRest.$index = $index;
|
|
686
|
-
}
|
|
687
|
-
});
|
|
688
675
|
reactData.treeList = treeList;
|
|
689
676
|
},
|
|
677
|
+
/**
|
|
678
|
+
* 获取第一个拥有子节点的节点
|
|
679
|
+
*/
|
|
680
|
+
handleHasChildNodeIds(treeList, type) {
|
|
681
|
+
const $xeCascader = this;
|
|
682
|
+
const childrenField = $xeCascader.computeChildrenField;
|
|
683
|
+
const mapChildrenField = $xeCascader.computeMapChildrenField;
|
|
684
|
+
const treeOpts = $xeCascader.computeTreeOpts;
|
|
685
|
+
const { transform } = treeOpts;
|
|
686
|
+
const childField = transform ? mapChildrenField : childrenField;
|
|
687
|
+
const nodeIds = [];
|
|
688
|
+
let currList = treeList;
|
|
689
|
+
while (currList.length) {
|
|
690
|
+
let targetNode = null;
|
|
691
|
+
for (const item of currList) {
|
|
692
|
+
const kids = item[childField];
|
|
693
|
+
if (XEUtils.isArray(kids) && kids.length > 0) {
|
|
694
|
+
targetNode = item;
|
|
695
|
+
break;
|
|
696
|
+
}
|
|
697
|
+
}
|
|
698
|
+
if (targetNode) {
|
|
699
|
+
nodeIds.push($xeCascader.getNodeId(targetNode));
|
|
700
|
+
currList = targetNode[childField];
|
|
701
|
+
}
|
|
702
|
+
else {
|
|
703
|
+
const endNode = XEUtils[type](currList);
|
|
704
|
+
nodeIds.push($xeCascader.getNodeId(endNode));
|
|
705
|
+
break;
|
|
706
|
+
}
|
|
707
|
+
}
|
|
708
|
+
return nodeIds;
|
|
709
|
+
},
|
|
690
710
|
triggerSearchEvent: XEUtils.debounce(function () {
|
|
691
711
|
const $xeCascader = this;
|
|
712
|
+
const reactData = $xeCascader.reactData;
|
|
713
|
+
const internalData = $xeCascader.internalData;
|
|
692
714
|
$xeCascader.handleData(true);
|
|
715
|
+
$xeCascader.updateModelChecked();
|
|
716
|
+
const filterOpts = $xeCascader.computeFilterOpts;
|
|
717
|
+
const { autoExpandMode } = filterOpts;
|
|
718
|
+
const { afterTreeList } = internalData;
|
|
719
|
+
// 默认展开第
|
|
720
|
+
if (autoExpandMode === 'first' || autoExpandMode === 'last') {
|
|
721
|
+
const stItems = $xeCascader.handleHasChildNodeIds(afterTreeList, autoExpandMode);
|
|
722
|
+
reactData.currentItems = stItems;
|
|
723
|
+
}
|
|
724
|
+
else {
|
|
725
|
+
$xeCascader.handleCurrentItems();
|
|
726
|
+
}
|
|
727
|
+
$xeCascader.updateCurrentChunk();
|
|
693
728
|
}, 350, { trailing: true }),
|
|
694
729
|
loadData(list) {
|
|
695
730
|
const $xeCascader = this;
|
|
@@ -722,17 +757,20 @@ export default {
|
|
|
722
757
|
const reactData = $xeCascader.reactData;
|
|
723
758
|
const internalData = $xeCascader.internalData;
|
|
724
759
|
const { currentItems } = reactData;
|
|
725
|
-
const {
|
|
760
|
+
const { afterTreeList } = internalData;
|
|
726
761
|
const childrenField = $xeCascader.computeChildrenField;
|
|
727
|
-
const
|
|
762
|
+
const mapChildrenField = $xeCascader.computeMapChildrenField;
|
|
763
|
+
const treeOpts = $xeCascader.computeTreeOpts;
|
|
764
|
+
const { transform } = treeOpts;
|
|
765
|
+
const currentCunkList = [afterTreeList];
|
|
728
766
|
if (currentItems.length) {
|
|
729
767
|
let chunkIndex = 0;
|
|
730
768
|
let stNodeid = currentItems[chunkIndex];
|
|
731
|
-
let optList =
|
|
769
|
+
let optList = afterTreeList;
|
|
732
770
|
while (stNodeid && optList && optList.length) {
|
|
733
771
|
stNodeid = currentItems[chunkIndex++];
|
|
734
772
|
const currOption = optList.find(item => stNodeid === $xeCascader.getNodeId(item));
|
|
735
|
-
optList = currOption ? currOption[childrenField] : [];
|
|
773
|
+
optList = currOption ? currOption[transform ? mapChildrenField : childrenField] : [];
|
|
736
774
|
if (!optList || !optList.length) {
|
|
737
775
|
break;
|
|
738
776
|
}
|
|
@@ -745,7 +783,7 @@ export default {
|
|
|
745
783
|
const $xeCascader = this;
|
|
746
784
|
const reactData = $xeCascader.reactData;
|
|
747
785
|
const internalData = $xeCascader.internalData;
|
|
748
|
-
const {
|
|
786
|
+
const { afterTreeList } = internalData;
|
|
749
787
|
const selectVals = $xeCascader.computeSelectVals;
|
|
750
788
|
const childrenField = $xeCascader.computeChildrenField;
|
|
751
789
|
const mapChildrenField = $xeCascader.computeMapChildrenField;
|
|
@@ -755,7 +793,7 @@ export default {
|
|
|
755
793
|
const expandedMaps = {};
|
|
756
794
|
if (selectVals.length) {
|
|
757
795
|
const lastVal = enNodeValue(XEUtils.last(selectVals));
|
|
758
|
-
const stRest = XEUtils.findTree(
|
|
796
|
+
const stRest = XEUtils.findTree(afterTreeList, (item) => lastVal === $xeCascader.getNodeId(item), { children: transform ? mapChildrenField : childrenField });
|
|
759
797
|
if (stRest) {
|
|
760
798
|
const { nodes } = stRest;
|
|
761
799
|
nodes.forEach(item => {
|
|
@@ -884,13 +922,14 @@ export default {
|
|
|
884
922
|
return { checkNodeKeys: checkKeys, checkNodes };
|
|
885
923
|
});
|
|
886
924
|
},
|
|
887
|
-
|
|
925
|
+
clearSelectedNode() {
|
|
888
926
|
const $xeCascader = this;
|
|
889
927
|
const reactData = $xeCascader.reactData;
|
|
890
928
|
const internalData = $xeCascader.internalData;
|
|
891
929
|
internalData.indeterminateRowMaps = {};
|
|
892
930
|
internalData.selectCheckboxMaps = {};
|
|
893
931
|
reactData.updateCheckboxFlag++;
|
|
932
|
+
reactData.selectRadioKey = null;
|
|
894
933
|
$xeCascader.updateCheckboxStatus();
|
|
895
934
|
return $xeCascader.$nextTick().then(() => {
|
|
896
935
|
return { checkNodeKeys: [], checkNodes: [] };
|
|
@@ -942,7 +981,7 @@ export default {
|
|
|
942
981
|
const { $event } = params;
|
|
943
982
|
const { multiple, checkedClosable } = props;
|
|
944
983
|
const value = multiple ? [] : null;
|
|
945
|
-
$xeCascader.
|
|
984
|
+
$xeCascader.clearSelectedNode().then(() => {
|
|
946
985
|
if (checkedClosable) {
|
|
947
986
|
$xeCascader.hideOptionPanel($event);
|
|
948
987
|
}
|
|
@@ -1040,9 +1079,12 @@ export default {
|
|
|
1040
1079
|
const { nodeMaps } = internalData;
|
|
1041
1080
|
const radioOpts = $xeCascader.computeRadioOpts;
|
|
1042
1081
|
const childrenField = $xeCascader.computeChildrenField;
|
|
1082
|
+
const mapChildrenField = $xeCascader.computeMapChildrenField;
|
|
1083
|
+
const treeOpts = $xeCascader.computeTreeOpts;
|
|
1084
|
+
const { transform } = treeOpts;
|
|
1043
1085
|
const { checkMode, checkMethod } = radioOpts;
|
|
1044
1086
|
const nodeid = $xeCascader.getNodeId(node);
|
|
1045
|
-
const childList = node[childrenField];
|
|
1087
|
+
const childList = node[transform ? mapChildrenField : childrenField];
|
|
1046
1088
|
const isExistChild = childList && childList.length > 0;
|
|
1047
1089
|
const nodeItem = nodeMaps[nodeid] || {};
|
|
1048
1090
|
const nLevel = nodeItem.level;
|
|
@@ -1214,7 +1256,7 @@ export default {
|
|
|
1214
1256
|
const childRowList = [];
|
|
1215
1257
|
XEUtils.eachTree(afterTreeList, (node) => {
|
|
1216
1258
|
const nodeid = $xeCascader.getNodeId(node);
|
|
1217
|
-
const childList = node[childrenField];
|
|
1259
|
+
const childList = node[transform ? mapChildrenField : childrenField];
|
|
1218
1260
|
if (childList && childList.length && !childRowMaps[nodeid]) {
|
|
1219
1261
|
childRowMaps[nodeid] = 1;
|
|
1220
1262
|
childRowList.unshift([node, nodeid, childList]);
|
|
@@ -1321,7 +1363,7 @@ export default {
|
|
|
1321
1363
|
const treeOpts = $xeCascader.computeTreeOpts;
|
|
1322
1364
|
const { transform } = treeOpts;
|
|
1323
1365
|
const nodeid = $xeCascader.getNodeId(node);
|
|
1324
|
-
const childList = node[childrenField];
|
|
1366
|
+
const childList = node[transform ? mapChildrenField : childrenField];
|
|
1325
1367
|
const isExistChild = childList && childList.length > 0;
|
|
1326
1368
|
const nodeItem = nodeMaps[nodeid] || {};
|
|
1327
1369
|
const nLevel = nodeItem.level;
|
|
@@ -1586,11 +1628,12 @@ export default {
|
|
|
1586
1628
|
const { currentNode, selectRadioKey, updateCheckboxFlag, updateExpandedFlag } = reactData;
|
|
1587
1629
|
const { nodeMaps, selectCheckboxMaps, indeterminateRowMaps, treeExpandedMaps, treeExpandLazyLoadedMaps } = internalData;
|
|
1588
1630
|
const treeOpts = $xeCascader.computeTreeOpts;
|
|
1589
|
-
const { lazy, iconLoaded, iconOpen, iconClose } = treeOpts;
|
|
1631
|
+
const { lazy, transform, iconLoaded, iconOpen, iconClose } = treeOpts;
|
|
1590
1632
|
const childrenField = $xeCascader.computeChildrenField;
|
|
1633
|
+
const mapChildrenField = $xeCascader.computeMapChildrenField;
|
|
1591
1634
|
const labelField = $xeCascader.computeLabelField;
|
|
1592
1635
|
const hasChildField = $xeCascader.computeHasChildField;
|
|
1593
|
-
const childList = node[childrenField];
|
|
1636
|
+
const childList = node[transform ? mapChildrenField : childrenField];
|
|
1594
1637
|
const isExistChild = childList && childList.length > 0;
|
|
1595
1638
|
const iconSlot = slots.icon;
|
|
1596
1639
|
const titleSlot = slots.title;
|
|
@@ -1790,7 +1833,7 @@ export default {
|
|
|
1790
1833
|
h('div', {
|
|
1791
1834
|
class: 'vxe-tree-select--header-button'
|
|
1792
1835
|
}, [
|
|
1793
|
-
showCheckedButton && showClearButton
|
|
1836
|
+
(showCheckedButton && multiple) || showClearButton
|
|
1794
1837
|
? h('div', {
|
|
1795
1838
|
class: 'vxe-tree-select--selected-btns'
|
|
1796
1839
|
}, [
|
|
@@ -1852,7 +1895,7 @@ export default {
|
|
|
1852
1895
|
})
|
|
1853
1896
|
])
|
|
1854
1897
|
]),
|
|
1855
|
-
footerSlot || showTotalButton ||
|
|
1898
|
+
footerSlot || showTotalButton || showCloseButton
|
|
1856
1899
|
? h('div', {
|
|
1857
1900
|
class: 'vxe-cascader--panel-footer'
|
|
1858
1901
|
}, footerSlot
|
|
@@ -1866,7 +1909,7 @@ export default {
|
|
|
1866
1909
|
class: 'vxe-cascader--total-btns'
|
|
1867
1910
|
}, getI18n('vxe.treeSelect.total', [selectVals.length]))
|
|
1868
1911
|
: renderEmptyElement($xeCascader),
|
|
1869
|
-
showCloseButton
|
|
1912
|
+
showCloseButton
|
|
1870
1913
|
? h('div', {
|
|
1871
1914
|
class: 'vxe-cascader--oper-btns'
|
|
1872
1915
|
}, [
|
|
@@ -1910,6 +1953,7 @@ export default {
|
|
|
1910
1953
|
const $xeCascader = this;
|
|
1911
1954
|
const props = $xeCascader;
|
|
1912
1955
|
const reactData = $xeCascader.reactData;
|
|
1956
|
+
$xeCascader.internalData = createInternalData();
|
|
1913
1957
|
if (!props.multiple) {
|
|
1914
1958
|
reactData.selectRadioKey = enNodeValue(props.value);
|
|
1915
1959
|
}
|
|
@@ -1917,10 +1961,6 @@ export default {
|
|
|
1917
1961
|
},
|
|
1918
1962
|
mounted() {
|
|
1919
1963
|
const $xeCascader = this;
|
|
1920
|
-
const props = $xeCascader;
|
|
1921
|
-
if (props.filterable) {
|
|
1922
|
-
errLog('vxe.error.notProp', ['filterable']);
|
|
1923
|
-
}
|
|
1924
1964
|
globalEvents.on($xeCascader, 'mousewheel', $xeCascader.handleGlobalMousewheelEvent);
|
|
1925
1965
|
globalEvents.on($xeCascader, 'mousedown', $xeCascader.handleGlobalMousedownEvent);
|
|
1926
1966
|
globalEvents.on($xeCascader, 'blur', $xeCascader.handleGlobalBlurEvent);
|
package/es/checkbox/src/group.js
CHANGED
|
@@ -2,6 +2,9 @@ import { defineVxeComponent } from '../../ui/src/comp';
|
|
|
2
2
|
import XEUtils from 'xe-utils';
|
|
3
3
|
import { getConfig, createEvent, globalMixins } from '../../ui';
|
|
4
4
|
import VxeCheckboxComponent from './checkbox';
|
|
5
|
+
function createReactData() {
|
|
6
|
+
return {};
|
|
7
|
+
}
|
|
5
8
|
function createInternalData() {
|
|
6
9
|
return {
|
|
7
10
|
// isLoaded: false
|
|
@@ -50,13 +53,8 @@ export default {
|
|
|
50
53
|
};
|
|
51
54
|
},
|
|
52
55
|
data() {
|
|
53
|
-
const reactData =
|
|
54
|
-
|
|
55
|
-
return {
|
|
56
|
-
xID: XEUtils.uniqueId(),
|
|
57
|
-
reactData,
|
|
58
|
-
internalData
|
|
59
|
-
};
|
|
56
|
+
const reactData = createReactData();
|
|
57
|
+
return Object.assign(Object.assign({}, {}), { xID: XEUtils.uniqueId(), reactData });
|
|
60
58
|
},
|
|
61
59
|
computed: Object.assign(Object.assign({}, {}), { computeIsReadonly() {
|
|
62
60
|
const $xeCheckboxGroup = this;
|
|
@@ -236,6 +234,10 @@ export default {
|
|
|
236
234
|
$xeCheckboxGroup.loadData(val);
|
|
237
235
|
}
|
|
238
236
|
},
|
|
237
|
+
created() {
|
|
238
|
+
const $xeCheckboxGroup = this;
|
|
239
|
+
$xeCheckboxGroup.internalData = createInternalData();
|
|
240
|
+
},
|
|
239
241
|
mounted() {
|
|
240
242
|
const $xeCheckboxGroup = this;
|
|
241
243
|
const props = $xeCheckboxGroup;
|
|
@@ -246,6 +248,13 @@ export default {
|
|
|
246
248
|
}
|
|
247
249
|
});
|
|
248
250
|
},
|
|
251
|
+
beforeDestroy() {
|
|
252
|
+
const $xeCheckboxGroup = this;
|
|
253
|
+
const reactData = $xeCheckboxGroup.reactData;
|
|
254
|
+
const internalData = $xeCheckboxGroup.internalData;
|
|
255
|
+
XEUtils.assign(reactData, createReactData());
|
|
256
|
+
XEUtils.assign(internalData, createInternalData());
|
|
257
|
+
},
|
|
249
258
|
render(h) {
|
|
250
259
|
return this.renderVN(h);
|
|
251
260
|
}
|
|
@@ -182,13 +182,8 @@ export default {
|
|
|
182
182
|
}
|
|
183
183
|
},
|
|
184
184
|
data() {
|
|
185
|
-
const internalData = createInternalData();
|
|
186
185
|
const reactData = createReactData();
|
|
187
|
-
return {
|
|
188
|
-
xID: XEUtils.uniqueId(),
|
|
189
|
-
internalData,
|
|
190
|
-
reactData
|
|
191
|
-
};
|
|
186
|
+
return Object.assign(Object.assign({}, {}), { xID: XEUtils.uniqueId(), reactData });
|
|
192
187
|
},
|
|
193
188
|
computed: Object.assign(Object.assign({}, {}), { computeMenuGroups() {
|
|
194
189
|
const $xeContextMenu = this;
|
|
@@ -661,6 +656,7 @@ export default {
|
|
|
661
656
|
},
|
|
662
657
|
created() {
|
|
663
658
|
const $xeContextMenu = this;
|
|
659
|
+
$xeContextMenu.internalData = createInternalData();
|
|
664
660
|
$xeContextMenu.handleVisible();
|
|
665
661
|
globalEvents.on($xeContextMenu, 'mousewheel', $xeContextMenu.handleGlobalMousewheelEvent);
|
|
666
662
|
globalEvents.on($xeContextMenu, 'keydown', $xeContextMenu.handleGlobalKeydownEvent);
|
|
@@ -1,4 +1,16 @@
|
|
|
1
1
|
import XEUtils from 'xe-utils';
|
|
2
|
+
export function getChunkDefaultNum(selectKey) {
|
|
3
|
+
const currDate = new Date();
|
|
4
|
+
switch (selectKey) {
|
|
5
|
+
case 'y': return currDate.getFullYear();
|
|
6
|
+
case 'M': return currDate.getMonth() + 1;
|
|
7
|
+
case 'd': return currDate.getDate();
|
|
8
|
+
case 'H': return currDate.getHours();
|
|
9
|
+
case 'm': return currDate.getMinutes();
|
|
10
|
+
case 's': return currDate.getSeconds();
|
|
11
|
+
}
|
|
12
|
+
return 0;
|
|
13
|
+
}
|
|
2
14
|
export function hasTimestampValueType(valueFormat) {
|
|
3
15
|
return valueFormat === 'timestamp';
|
|
4
16
|
}
|
|
@@ -19,18 +31,6 @@ export function handleValueFormat(type, valueFormat) {
|
|
|
19
31
|
}
|
|
20
32
|
return 'yyyy-MM-dd';
|
|
21
33
|
}
|
|
22
|
-
export function handleInputFormat(type, inputFormat) {
|
|
23
|
-
if (inputFormat) {
|
|
24
|
-
return inputFormat;
|
|
25
|
-
}
|
|
26
|
-
if (type === 'time') {
|
|
27
|
-
return 'HH:mm:ss';
|
|
28
|
-
}
|
|
29
|
-
if (type === 'datetime') {
|
|
30
|
-
return 'yyyy-MM-dd HH:mm:ss';
|
|
31
|
-
}
|
|
32
|
-
return 'yyyy-MM-dd';
|
|
33
|
-
}
|
|
34
34
|
export function toStringTimeDate(str) {
|
|
35
35
|
const rest = new Date(2e3, 0, 1);
|
|
36
36
|
if (str) {
|
|
@@ -90,10 +90,10 @@ export const parseDateValue = (val, type, options) => {
|
|
|
90
90
|
}
|
|
91
91
|
return null;
|
|
92
92
|
};
|
|
93
|
-
export
|
|
93
|
+
export function parseDateString(val, type, options) {
|
|
94
94
|
const dValue = parseDateValue(val, type, options);
|
|
95
95
|
return dValue ? XEUtils.toDateString(dValue, options.valueFormat) : '';
|
|
96
|
-
}
|
|
96
|
+
}
|
|
97
97
|
export function parseDateObj(val, type, options) {
|
|
98
98
|
const { labelFormat, firstDay } = options;
|
|
99
99
|
let dValue = null;
|
|
@@ -226,6 +226,17 @@ export function getRangeDateByCode(code, val, type, options) {
|
|
|
226
226
|
/**
|
|
227
227
|
* 判断周的年份是否跨年
|
|
228
228
|
*/
|
|
229
|
-
|
|
229
|
+
function checkWeekOfsetYear(W, M) {
|
|
230
230
|
return `${W}` === '1' && `${M}` === '12';
|
|
231
|
-
}
|
|
231
|
+
}
|
|
232
|
+
export function isAllSameChar(str, char) {
|
|
233
|
+
if (str.length === 0) {
|
|
234
|
+
return false;
|
|
235
|
+
}
|
|
236
|
+
for (let i = 0; i < str.length; i++) {
|
|
237
|
+
if (str[i] !== char) {
|
|
238
|
+
return false;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
return true;
|
|
242
|
+
}
|