vxe-table 3.18.18 → 3.18.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/style.css +1 -1
- package/es/table/module/filter/mixin.js +21 -5
- package/es/table/module/filter/panel.js +6 -5
- package/es/table/module/menu/panel.js +27 -13
- package/es/table/src/cell.js +10 -7
- package/es/table/src/table.js +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +54 -26
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/module/filter/mixin.js +21 -5
- package/lib/table/module/filter/mixin.min.js +1 -1
- package/lib/table/module/filter/panel.js +5 -4
- package/lib/table/module/filter/panel.min.js +1 -1
- package/lib/table/module/menu/panel.js +16 -9
- package/lib/table/module/menu/panel.min.js +1 -1
- package/lib/table/src/cell.js +9 -4
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/table.js +1 -1
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +1 -1
- 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/package.json +1 -1
- package/packages/table/module/filter/mixin.ts +21 -5
- package/packages/table/module/filter/panel.ts +6 -5
- package/packages/table/module/menu/panel.ts +35 -21
- package/packages/table/src/cell.ts +10 -7
- package/packages/table/src/table.ts +1 -1
- /package/es/{iconfont.1758524611561.ttf → iconfont.1758609487377.ttf} +0 -0
- /package/es/{iconfont.1758524611561.woff → iconfont.1758609487377.woff} +0 -0
- /package/es/{iconfont.1758524611561.woff2 → iconfont.1758609487377.woff2} +0 -0
- /package/lib/{iconfont.1758524611561.ttf → iconfont.1758609487377.ttf} +0 -0
- /package/lib/{iconfont.1758524611561.woff → iconfont.1758609487377.woff} +0 -0
- /package/lib/{iconfont.1758524611561.woff2 → iconfont.1758609487377.woff2} +0 -0
|
@@ -65,8 +65,11 @@ export default {
|
|
|
65
65
|
*/
|
|
66
66
|
triggerFilterEvent(evnt, column, params) {
|
|
67
67
|
const $xeTable = this;
|
|
68
|
+
const $xeGrid = $xeTable.$xeGrid;
|
|
69
|
+
const $xeGantt = $xeTable.$xeGantt;
|
|
68
70
|
const reactData = $xeTable;
|
|
69
71
|
const internalData = $xeTable;
|
|
72
|
+
const $xeGGWrapper = $xeGrid || $xeGantt;
|
|
70
73
|
const { filterStore } = this;
|
|
71
74
|
if (filterStore.column === column && filterStore.visible) {
|
|
72
75
|
filterStore.visible = false;
|
|
@@ -78,12 +81,14 @@ export default {
|
|
|
78
81
|
filterStore.visible = false;
|
|
79
82
|
}
|
|
80
83
|
else {
|
|
81
|
-
const
|
|
84
|
+
const tableEl = $xeTable.$refs.refElem;
|
|
82
85
|
const { scrollTop, scrollLeft, visibleHeight, visibleWidth } = getDomNode();
|
|
83
86
|
const filterOpts = $xeTable.computeFilterOpts;
|
|
84
87
|
const { transfer } = filterOpts;
|
|
85
|
-
const tableRect =
|
|
88
|
+
const tableRect = tableEl.getBoundingClientRect();
|
|
86
89
|
const btnElem = evnt.currentTarget;
|
|
90
|
+
const filterRender = column ? column.filterRender : null;
|
|
91
|
+
const compConf = filterRender && isEnableConf(filterRender) ? renderer.get(filterRender.name) : null;
|
|
87
92
|
$xeTable.handleFilterOptions(column);
|
|
88
93
|
internalData._currFilterParams = params;
|
|
89
94
|
filterStore.style = null;
|
|
@@ -121,18 +126,29 @@ export default {
|
|
|
121
126
|
else {
|
|
122
127
|
left = btnRect.left - tableRect.left - centerWidth;
|
|
123
128
|
top = btnRect.top - tableRect.top + btnElem.clientHeight;
|
|
124
|
-
maxHeight = Math.max(40,
|
|
129
|
+
maxHeight = Math.max(40, tableEl.clientHeight - top - (filterHeadElem ? filterHeadElem.clientHeight : 0) - (filterFootElem ? filterFootElem.clientHeight : 0) - 14);
|
|
125
130
|
if (left < 1) {
|
|
126
131
|
left = 1;
|
|
127
132
|
}
|
|
128
|
-
else if (left > (
|
|
129
|
-
left =
|
|
133
|
+
else if (left > (tableEl.clientWidth - filterWidth - 1)) {
|
|
134
|
+
left = tableEl.clientWidth - filterWidth - 1;
|
|
135
|
+
}
|
|
136
|
+
if ($xeGGWrapper) {
|
|
137
|
+
const wrapperEl = $xeGGWrapper.$refs.refElem;
|
|
138
|
+
if (wrapperEl) {
|
|
139
|
+
const wrapperRect = wrapperEl.getBoundingClientRect();
|
|
140
|
+
top += tableRect.top - wrapperRect.top;
|
|
141
|
+
}
|
|
130
142
|
}
|
|
131
143
|
}
|
|
132
144
|
filterStore.style = {
|
|
133
145
|
top: toCssUnit(top),
|
|
134
146
|
left: toCssUnit(left)
|
|
135
147
|
};
|
|
148
|
+
// 筛选面板是自适应表格高度
|
|
149
|
+
if (compConf ? !compConf.tableFilterAutoHeight : false) {
|
|
150
|
+
maxHeight = 0;
|
|
151
|
+
}
|
|
136
152
|
// 判断面板不能大于表格高度
|
|
137
153
|
filterStore.maxHeight = maxHeight;
|
|
138
154
|
});
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { VxeUI } from '../../../ui';
|
|
2
|
-
import { formatText, isEnableConf
|
|
2
|
+
import { formatText, isEnableConf } from '../../../ui/src/utils';
|
|
3
|
+
import { getPropClass, toCssUnit } from '../../../ui/src/dom';
|
|
3
4
|
import { getSlotVNs } from '../../../ui/src/vn';
|
|
4
5
|
import { warnLog } from '../../../ui/src/log';
|
|
5
6
|
const { getI18n, getIcon, renderer, globalMixins } = VxeUI;
|
|
@@ -19,7 +20,7 @@ function renderOptions($xeFilterPanel, h, filterRender, compConf) {
|
|
|
19
20
|
class: 'vxe-table--filter-template',
|
|
20
21
|
style: maxHeight
|
|
21
22
|
? {
|
|
22
|
-
maxHeight:
|
|
23
|
+
maxHeight: toCssUnit(maxHeight)
|
|
23
24
|
}
|
|
24
25
|
: {}
|
|
25
26
|
}, $xeTable.callSlot(filterSlot, params, h))
|
|
@@ -31,7 +32,7 @@ function renderOptions($xeFilterPanel, h, filterRender, compConf) {
|
|
|
31
32
|
class: 'vxe-table--filter-template',
|
|
32
33
|
style: maxHeight
|
|
33
34
|
? {
|
|
34
|
-
maxHeight:
|
|
35
|
+
maxHeight: toCssUnit(maxHeight)
|
|
35
36
|
}
|
|
36
37
|
: {}
|
|
37
38
|
}, getSlotVNs(rtFilter.call($xeTable, h, filterRender, params)))
|
|
@@ -72,7 +73,7 @@ function renderOptions($xeFilterPanel, h, filterRender, compConf) {
|
|
|
72
73
|
class: 'vxe-table--filter-body',
|
|
73
74
|
style: maxHeight
|
|
74
75
|
? {
|
|
75
|
-
maxHeight:
|
|
76
|
+
maxHeight: toCssUnit(maxHeight)
|
|
76
77
|
}
|
|
77
78
|
: {}
|
|
78
79
|
}, filterStore.options.map((item) => {
|
|
@@ -196,7 +197,7 @@ export default {
|
|
|
196
197
|
'filter--prevent-default',
|
|
197
198
|
className,
|
|
198
199
|
compConf && compConf.className ? compConf.className : '',
|
|
199
|
-
|
|
200
|
+
getPropClass(filterClassName, params),
|
|
200
201
|
{
|
|
201
202
|
[`size--${vSize}`]: vSize,
|
|
202
203
|
'is--animat': tableProps.animat,
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { VxeUI } from '../../../ui';
|
|
2
|
+
import XEUtils from 'xe-utils';
|
|
2
3
|
import { getFuncText } from '../../../ui/src/utils';
|
|
4
|
+
import { getSlotVNs } from '../../../ui/src/vn';
|
|
3
5
|
const { getIcon, renderEmptyElement } = VxeUI;
|
|
4
6
|
export default {
|
|
5
7
|
name: 'VxeTableMenuPanel',
|
|
@@ -52,7 +54,9 @@ export default {
|
|
|
52
54
|
}, options.map((item, index) => {
|
|
53
55
|
const hasChildMenus = item.children && item.children.some((child) => child.visible !== false);
|
|
54
56
|
const prefixOpts = Object.assign({}, item.prefixConfig);
|
|
57
|
+
const prefixIcon = prefixOpts.icon || item.prefixIcon;
|
|
55
58
|
const suffixOpts = Object.assign({}, item.suffixConfig);
|
|
59
|
+
const suffixIcon = suffixOpts.icon || item.suffixIcon;
|
|
56
60
|
const menuContent = getFuncText(item.name);
|
|
57
61
|
return item.visible === false
|
|
58
62
|
? renderEmptyElement($xeTable)
|
|
@@ -80,9 +84,11 @@ export default {
|
|
|
80
84
|
h('div', {
|
|
81
85
|
class: ['vxe-context-menu--link-prefix', prefixOpts.className || '']
|
|
82
86
|
}, [
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
87
|
+
prefixIcon && XEUtils.isFunction(prefixIcon)
|
|
88
|
+
? h('span', {}, getSlotVNs(prefixIcon.call($xeTable, {})))
|
|
89
|
+
: h('i', {
|
|
90
|
+
class: prefixIcon
|
|
91
|
+
}),
|
|
86
92
|
prefixOpts.content ? h('span', {}, `${prefixOpts.content}`) : renderEmptyElement($xeTable)
|
|
87
93
|
]),
|
|
88
94
|
h('span', {
|
|
@@ -94,20 +100,24 @@ export default {
|
|
|
94
100
|
h('div', {
|
|
95
101
|
class: ['vxe-context-menu--link-suffix', suffixOpts.className || '']
|
|
96
102
|
}, [
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
103
|
+
suffixIcon && XEUtils.isFunction(suffixIcon)
|
|
104
|
+
? h('span', {}, getSlotVNs(suffixIcon.call($xeTable, {})))
|
|
105
|
+
: h('i', {
|
|
106
|
+
class: suffixIcon || (hasChildMenus ? getIcon().TABLE_MENU_OPTIONS : '')
|
|
107
|
+
}),
|
|
100
108
|
suffixOpts.content ? h('span', `${suffixOpts.content}`) : renderEmptyElement($xeTable)
|
|
101
109
|
])
|
|
102
110
|
]),
|
|
103
|
-
hasChildMenus
|
|
111
|
+
hasChildMenus && item.children
|
|
104
112
|
? h('ul', {
|
|
105
113
|
class: ['vxe-table--context-menu-clild-wrapper', {
|
|
106
114
|
'is--show': item === ctxMenuStore.selected && ctxMenuStore.showChild
|
|
107
115
|
}]
|
|
108
116
|
}, item.children.map((child, cIndex) => {
|
|
109
117
|
const childPrefixOpts = Object.assign({}, child.prefixConfig);
|
|
118
|
+
const childPrefixIcon = childPrefixOpts.icon || child.prefixIcon;
|
|
110
119
|
const childSuffixOpts = Object.assign({}, child.suffixConfig);
|
|
120
|
+
const childSuffixIcon = childSuffixOpts.icon || child.suffixIcon;
|
|
111
121
|
const childMenuContent = getFuncText(child.name);
|
|
112
122
|
return child.visible === false
|
|
113
123
|
? null
|
|
@@ -135,9 +145,11 @@ export default {
|
|
|
135
145
|
h('div', {
|
|
136
146
|
class: ['vxe-context-menu--link-prefix', childPrefixOpts.className || '']
|
|
137
147
|
}, [
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
148
|
+
childPrefixIcon && XEUtils.isFunction(childPrefixIcon)
|
|
149
|
+
? h('span', {}, getSlotVNs(childPrefixIcon.call($xeTable, {})))
|
|
150
|
+
: h('i', {
|
|
151
|
+
class: childPrefixIcon
|
|
152
|
+
}),
|
|
141
153
|
childPrefixOpts.content ? h('span', `${childPrefixOpts.content}`) : renderEmptyElement($xeTable)
|
|
142
154
|
]),
|
|
143
155
|
h('span', {
|
|
@@ -149,9 +161,11 @@ export default {
|
|
|
149
161
|
h('div', {
|
|
150
162
|
class: ['vxe-context-menu--link-suffix', childSuffixOpts.className || '']
|
|
151
163
|
}, [
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
164
|
+
childSuffixIcon && XEUtils.isFunction(childSuffixIcon)
|
|
165
|
+
? h('span', {}, getSlotVNs(childSuffixIcon.call($xeTable, {})))
|
|
166
|
+
: h('i', {
|
|
167
|
+
class: childSuffixIcon
|
|
168
|
+
}),
|
|
155
169
|
childSuffixOpts.content ? h('span', `${childSuffixOpts.content}`) : renderEmptyElement($xeTable)
|
|
156
170
|
])
|
|
157
171
|
])
|
package/es/table/src/cell.js
CHANGED
|
@@ -1094,8 +1094,9 @@ export const Cell = {
|
|
|
1094
1094
|
}
|
|
1095
1095
|
let editIconVNs = [];
|
|
1096
1096
|
if (isEnableConf(editConfig)) {
|
|
1097
|
+
const { showAsterisk, showIcon, icon } = editOpts;
|
|
1097
1098
|
editIconVNs = [
|
|
1098
|
-
isRequired &&
|
|
1099
|
+
isRequired && showAsterisk
|
|
1099
1100
|
? h('i', {
|
|
1100
1101
|
class: 'vxe-cell--required-icon'
|
|
1101
1102
|
}, [
|
|
@@ -1104,14 +1105,16 @@ export const Cell = {
|
|
|
1104
1105
|
})
|
|
1105
1106
|
])
|
|
1106
1107
|
: renderEmptyElement($table),
|
|
1107
|
-
isEnableConf(editRender) &&
|
|
1108
|
+
isEnableConf(editRender) && showIcon
|
|
1108
1109
|
? h('i', {
|
|
1109
1110
|
class: 'vxe-cell--edit-icon'
|
|
1110
|
-
},
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1111
|
+
}, XEUtils.isFunction(icon)
|
|
1112
|
+
? getSlotVNs(icon({}))
|
|
1113
|
+
: [
|
|
1114
|
+
h('i', {
|
|
1115
|
+
class: icon || getIcon().TABLE_EDIT
|
|
1116
|
+
})
|
|
1117
|
+
])
|
|
1115
1118
|
: renderEmptyElement($table)
|
|
1116
1119
|
];
|
|
1117
1120
|
}
|
package/es/table/src/table.js
CHANGED
|
@@ -1757,7 +1757,7 @@ export default {
|
|
|
1757
1757
|
}
|
|
1758
1758
|
}
|
|
1759
1759
|
if ($xeGGWrapper) {
|
|
1760
|
-
const popupContainerElem = $
|
|
1760
|
+
const popupContainerElem = $xeGGWrapper.$refs.refPopupContainerElem;
|
|
1761
1761
|
const popupWrapperEl = $xeTable.$refs.refPopupWrapperElem;
|
|
1762
1762
|
if (popupContainerElem) {
|
|
1763
1763
|
if (popupWrapperEl) {
|
package/es/ui/index.js
CHANGED
package/es/ui/src/log.js
CHANGED
package/lib/index.umd.js
CHANGED
|
@@ -2002,7 +2002,7 @@ function getClass(property, params) {
|
|
|
2002
2002
|
;// CONCATENATED MODULE: ./packages/ui/index.ts
|
|
2003
2003
|
|
|
2004
2004
|
|
|
2005
|
-
const version = "3.18.
|
|
2005
|
+
const version = "3.18.19";
|
|
2006
2006
|
core_.VxeUI.version = version;
|
|
2007
2007
|
core_.VxeUI.tableVersion = version;
|
|
2008
2008
|
core_.VxeUI.setConfig({
|
|
@@ -2513,7 +2513,7 @@ function getTpImg() {
|
|
|
2513
2513
|
return tpImgEl;
|
|
2514
2514
|
}
|
|
2515
2515
|
function getPropClass(property, params) {
|
|
2516
|
-
return property ?
|
|
2516
|
+
return property ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(property) ? property(params) : property : '';
|
|
2517
2517
|
}
|
|
2518
2518
|
function getClsRE(cls) {
|
|
2519
2519
|
if (!reClsMap[cls]) {
|
|
@@ -2689,7 +2689,7 @@ function isNodeElement(elem) {
|
|
|
2689
2689
|
const {
|
|
2690
2690
|
log: log_log
|
|
2691
2691
|
} = core_.VxeUI;
|
|
2692
|
-
const log_version = `table v${"3.18.
|
|
2692
|
+
const log_version = `table v${"3.18.19"}`;
|
|
2693
2693
|
const warnLog = log_log.create('warn', log_version);
|
|
2694
2694
|
const errLog = log_log.create('error', log_version);
|
|
2695
2695
|
;// CONCATENATED MODULE: ./packages/table/src/columnInfo.ts
|
|
@@ -5126,14 +5126,19 @@ const Cell = {
|
|
|
5126
5126
|
}
|
|
5127
5127
|
let editIconVNs = [];
|
|
5128
5128
|
if (isEnableConf(editConfig)) {
|
|
5129
|
-
|
|
5129
|
+
const {
|
|
5130
|
+
showAsterisk,
|
|
5131
|
+
showIcon,
|
|
5132
|
+
icon
|
|
5133
|
+
} = editOpts;
|
|
5134
|
+
editIconVNs = [isRequired && showAsterisk ? h('i', {
|
|
5130
5135
|
class: 'vxe-cell--required-icon'
|
|
5131
5136
|
}, [h('i', {
|
|
5132
5137
|
class: 'vxe-cell--required-icon'
|
|
5133
|
-
})]) : renderEmptyElement($table), isEnableConf(editRender) &&
|
|
5138
|
+
})]) : renderEmptyElement($table), isEnableConf(editRender) && showIcon ? h('i', {
|
|
5134
5139
|
class: 'vxe-cell--edit-icon'
|
|
5135
|
-
}, [h('i', {
|
|
5136
|
-
class:
|
|
5140
|
+
}, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(icon) ? getSlotVNs(icon({})) : [h('i', {
|
|
5141
|
+
class: icon || cell_getIcon().TABLE_EDIT
|
|
5137
5142
|
})]) : renderEmptyElement($table)];
|
|
5138
5143
|
}
|
|
5139
5144
|
return renderHeaderCellBaseVNs(h, params, editIconVNs.concat(Cell.renderHeaderTitle(h, params)).concat(sortable ? Cell.renderSortIcon(h, params) : []).concat(filters ? Cell.renderFilterIcon(h, params) : []));
|
|
@@ -22790,6 +22795,7 @@ const renderPopupPanel = (h, $xeTableCustomPanel) => {
|
|
|
22790
22795
|
|
|
22791
22796
|
|
|
22792
22797
|
|
|
22798
|
+
|
|
22793
22799
|
const {
|
|
22794
22800
|
getI18n: filter_panel_getI18n,
|
|
22795
22801
|
getIcon: filter_panel_getIcon,
|
|
@@ -22819,14 +22825,14 @@ function renderOptions($xeFilterPanel, h, filterRender, compConf) {
|
|
|
22819
22825
|
return [h('div', {
|
|
22820
22826
|
class: 'vxe-table--filter-template',
|
|
22821
22827
|
style: maxHeight ? {
|
|
22822
|
-
maxHeight:
|
|
22828
|
+
maxHeight: toCssUnit(maxHeight)
|
|
22823
22829
|
} : {}
|
|
22824
22830
|
}, $xeTable.callSlot(filterSlot, params, h))];
|
|
22825
22831
|
} else if (rtFilter) {
|
|
22826
22832
|
return [h('div', {
|
|
22827
22833
|
class: 'vxe-table--filter-template',
|
|
22828
22834
|
style: maxHeight ? {
|
|
22829
|
-
maxHeight:
|
|
22835
|
+
maxHeight: toCssUnit(maxHeight)
|
|
22830
22836
|
} : {}
|
|
22831
22837
|
}, getSlotVNs(rtFilter.call($xeTable, h, filterRender, params)))];
|
|
22832
22838
|
}
|
|
@@ -22854,7 +22860,7 @@ function renderOptions($xeFilterPanel, h, filterRender, compConf) {
|
|
|
22854
22860
|
}, filter_panel_getI18n('vxe.table.allFilter'))]))]), h('ul', {
|
|
22855
22861
|
class: 'vxe-table--filter-body',
|
|
22856
22862
|
style: maxHeight ? {
|
|
22857
|
-
maxHeight:
|
|
22863
|
+
maxHeight: toCssUnit(maxHeight)
|
|
22858
22864
|
} : {}
|
|
22859
22865
|
}, filterStore.options.map(item => {
|
|
22860
22866
|
const isChecked = item._checked;
|
|
@@ -22977,7 +22983,7 @@ function renderFooter($xeFilterPanel, h) {
|
|
|
22977
22983
|
} = filterOpts;
|
|
22978
22984
|
return h('div', {
|
|
22979
22985
|
ref: 'refElem',
|
|
22980
|
-
class: ['vxe-table--filter-wrapper', 'filter--prevent-default', className, compConf && compConf.className ? compConf.className : '',
|
|
22986
|
+
class: ['vxe-table--filter-wrapper', 'filter--prevent-default', className, compConf && compConf.className ? compConf.className : '', getPropClass(filterClassName, params), {
|
|
22981
22987
|
[`size--${vSize}`]: vSize,
|
|
22982
22988
|
'is--animat': tableProps.animat,
|
|
22983
22989
|
'is--multiple': multiple,
|
|
@@ -23810,6 +23816,8 @@ const {
|
|
|
23810
23816
|
;// CONCATENATED MODULE: ./packages/table/module/menu/panel.ts
|
|
23811
23817
|
|
|
23812
23818
|
|
|
23819
|
+
|
|
23820
|
+
|
|
23813
23821
|
const {
|
|
23814
23822
|
getIcon: menu_panel_getIcon,
|
|
23815
23823
|
renderEmptyElement: menu_panel_renderEmptyElement
|
|
@@ -23872,7 +23880,9 @@ const {
|
|
|
23872
23880
|
}, options.map((item, index) => {
|
|
23873
23881
|
const hasChildMenus = item.children && item.children.some(child => child.visible !== false);
|
|
23874
23882
|
const prefixOpts = Object.assign({}, item.prefixConfig);
|
|
23883
|
+
const prefixIcon = prefixOpts.icon || item.prefixIcon;
|
|
23875
23884
|
const suffixOpts = Object.assign({}, item.suffixConfig);
|
|
23885
|
+
const suffixIcon = suffixOpts.icon || item.suffixIcon;
|
|
23876
23886
|
const menuContent = getFuncText(item.name);
|
|
23877
23887
|
return item.visible === false ? menu_panel_renderEmptyElement($xeTable) : h('li', {
|
|
23878
23888
|
class: [item.className, {
|
|
@@ -23895,8 +23905,8 @@ const {
|
|
|
23895
23905
|
}
|
|
23896
23906
|
}, [h('div', {
|
|
23897
23907
|
class: ['vxe-context-menu--link-prefix', prefixOpts.className || '']
|
|
23898
|
-
}, [h('i', {
|
|
23899
|
-
class:
|
|
23908
|
+
}, [prefixIcon && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(prefixIcon) ? h('span', {}, getSlotVNs(prefixIcon.call($xeTable, {}))) : h('i', {
|
|
23909
|
+
class: prefixIcon
|
|
23900
23910
|
}), prefixOpts.content ? h('span', {}, `${prefixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)]), h('span', {
|
|
23901
23911
|
class: 'vxe-context-menu--link-content',
|
|
23902
23912
|
attrs: {
|
|
@@ -23904,15 +23914,17 @@ const {
|
|
|
23904
23914
|
}
|
|
23905
23915
|
}, menuContent), h('div', {
|
|
23906
23916
|
class: ['vxe-context-menu--link-suffix', suffixOpts.className || '']
|
|
23907
|
-
}, [h('i', {
|
|
23908
|
-
class:
|
|
23909
|
-
}), suffixOpts.content ? h('span', `${suffixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)])]), hasChildMenus ? h('ul', {
|
|
23917
|
+
}, [suffixIcon && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(suffixIcon) ? h('span', {}, getSlotVNs(suffixIcon.call($xeTable, {}))) : h('i', {
|
|
23918
|
+
class: suffixIcon || (hasChildMenus ? menu_panel_getIcon().TABLE_MENU_OPTIONS : '')
|
|
23919
|
+
}), suffixOpts.content ? h('span', `${suffixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)])]), hasChildMenus && item.children ? h('ul', {
|
|
23910
23920
|
class: ['vxe-table--context-menu-clild-wrapper', {
|
|
23911
23921
|
'is--show': item === ctxMenuStore.selected && ctxMenuStore.showChild
|
|
23912
23922
|
}]
|
|
23913
23923
|
}, item.children.map((child, cIndex) => {
|
|
23914
23924
|
const childPrefixOpts = Object.assign({}, child.prefixConfig);
|
|
23925
|
+
const childPrefixIcon = childPrefixOpts.icon || child.prefixIcon;
|
|
23915
23926
|
const childSuffixOpts = Object.assign({}, child.suffixConfig);
|
|
23927
|
+
const childSuffixIcon = childSuffixOpts.icon || child.suffixIcon;
|
|
23916
23928
|
const childMenuContent = getFuncText(child.name);
|
|
23917
23929
|
return child.visible === false ? null : h('li', {
|
|
23918
23930
|
class: [child.className, {
|
|
@@ -23935,8 +23947,8 @@ const {
|
|
|
23935
23947
|
}
|
|
23936
23948
|
}, [h('div', {
|
|
23937
23949
|
class: ['vxe-context-menu--link-prefix', childPrefixOpts.className || '']
|
|
23938
|
-
}, [h('i', {
|
|
23939
|
-
class:
|
|
23950
|
+
}, [childPrefixIcon && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(childPrefixIcon) ? h('span', {}, getSlotVNs(childPrefixIcon.call($xeTable, {}))) : h('i', {
|
|
23951
|
+
class: childPrefixIcon
|
|
23940
23952
|
}), childPrefixOpts.content ? h('span', `${childPrefixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)]), h('span', {
|
|
23941
23953
|
class: 'vxe-context-menu--link-content',
|
|
23942
23954
|
attrs: {
|
|
@@ -23944,8 +23956,8 @@ const {
|
|
|
23944
23956
|
}
|
|
23945
23957
|
}, childMenuContent), h('div', {
|
|
23946
23958
|
class: ['vxe-context-menu--link-suffix', childSuffixOpts.className || '']
|
|
23947
|
-
}, [h('i', {
|
|
23948
|
-
class:
|
|
23959
|
+
}, [childSuffixIcon && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(childSuffixIcon) ? h('span', {}, getSlotVNs(childSuffixIcon.call($xeTable, {}))) : h('i', {
|
|
23960
|
+
class: childSuffixIcon
|
|
23949
23961
|
}), childSuffixOpts.content ? h('span', `${childSuffixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)])])]);
|
|
23950
23962
|
})) : null]);
|
|
23951
23963
|
}));
|
|
@@ -24030,8 +24042,11 @@ const {
|
|
|
24030
24042
|
*/
|
|
24031
24043
|
triggerFilterEvent(evnt, column, params) {
|
|
24032
24044
|
const $xeTable = this;
|
|
24045
|
+
const $xeGrid = $xeTable.$xeGrid;
|
|
24046
|
+
const $xeGantt = $xeTable.$xeGantt;
|
|
24033
24047
|
const reactData = $xeTable;
|
|
24034
24048
|
const internalData = $xeTable;
|
|
24049
|
+
const $xeGGWrapper = $xeGrid || $xeGantt;
|
|
24035
24050
|
const {
|
|
24036
24051
|
filterStore
|
|
24037
24052
|
} = this;
|
|
@@ -24048,7 +24063,7 @@ const {
|
|
|
24048
24063
|
if (filterStore.column === column && filterStore.visible) {
|
|
24049
24064
|
filterStore.visible = false;
|
|
24050
24065
|
} else {
|
|
24051
|
-
const
|
|
24066
|
+
const tableEl = $xeTable.$refs.refElem;
|
|
24052
24067
|
const {
|
|
24053
24068
|
scrollTop,
|
|
24054
24069
|
scrollLeft,
|
|
@@ -24059,8 +24074,10 @@ const {
|
|
|
24059
24074
|
const {
|
|
24060
24075
|
transfer
|
|
24061
24076
|
} = filterOpts;
|
|
24062
|
-
const tableRect =
|
|
24077
|
+
const tableRect = tableEl.getBoundingClientRect();
|
|
24063
24078
|
const btnElem = evnt.currentTarget;
|
|
24079
|
+
const filterRender = column ? column.filterRender : null;
|
|
24080
|
+
const compConf = filterRender && isEnableConf(filterRender) ? mixin_renderer.get(filterRender.name) : null;
|
|
24064
24081
|
$xeTable.handleFilterOptions(column);
|
|
24065
24082
|
internalData._currFilterParams = params;
|
|
24066
24083
|
filterStore.style = null;
|
|
@@ -24096,17 +24113,28 @@ const {
|
|
|
24096
24113
|
} else {
|
|
24097
24114
|
left = btnRect.left - tableRect.left - centerWidth;
|
|
24098
24115
|
top = btnRect.top - tableRect.top + btnElem.clientHeight;
|
|
24099
|
-
maxHeight = Math.max(40,
|
|
24116
|
+
maxHeight = Math.max(40, tableEl.clientHeight - top - (filterHeadElem ? filterHeadElem.clientHeight : 0) - (filterFootElem ? filterFootElem.clientHeight : 0) - 14);
|
|
24100
24117
|
if (left < 1) {
|
|
24101
24118
|
left = 1;
|
|
24102
|
-
} else if (left >
|
|
24103
|
-
left =
|
|
24119
|
+
} else if (left > tableEl.clientWidth - filterWidth - 1) {
|
|
24120
|
+
left = tableEl.clientWidth - filterWidth - 1;
|
|
24121
|
+
}
|
|
24122
|
+
if ($xeGGWrapper) {
|
|
24123
|
+
const wrapperEl = $xeGGWrapper.$refs.refElem;
|
|
24124
|
+
if (wrapperEl) {
|
|
24125
|
+
const wrapperRect = wrapperEl.getBoundingClientRect();
|
|
24126
|
+
top += tableRect.top - wrapperRect.top;
|
|
24127
|
+
}
|
|
24104
24128
|
}
|
|
24105
24129
|
}
|
|
24106
24130
|
filterStore.style = {
|
|
24107
24131
|
top: toCssUnit(top),
|
|
24108
24132
|
left: toCssUnit(left)
|
|
24109
24133
|
};
|
|
24134
|
+
// 筛选面板是自适应表格高度
|
|
24135
|
+
if (compConf ? !compConf.tableFilterAutoHeight : false) {
|
|
24136
|
+
maxHeight = 0;
|
|
24137
|
+
}
|
|
24110
24138
|
// 判断面板不能大于表格高度
|
|
24111
24139
|
filterStore.maxHeight = maxHeight;
|
|
24112
24140
|
});
|
|
@@ -31550,7 +31578,7 @@ function renderBody(h, $xeTable) {
|
|
|
31550
31578
|
}
|
|
31551
31579
|
}
|
|
31552
31580
|
if ($xeGGWrapper) {
|
|
31553
|
-
const popupContainerElem = $
|
|
31581
|
+
const popupContainerElem = $xeGGWrapper.$refs.refPopupContainerElem;
|
|
31554
31582
|
const popupWrapperEl = $xeTable.$refs.refPopupWrapperElem;
|
|
31555
31583
|
if (popupContainerElem) {
|
|
31556
31584
|
if (popupWrapperEl) {
|