vxe-table 3.18.2 → 3.18.3
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/grid/src/grid.js +5 -1
- package/es/index.css +1 -1
- package/es/index.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/menu/mixin.js +67 -43
- package/es/table/module/menu/panel.js +10 -8
- package/es/table/src/body.js +12 -14
- package/es/table/style.css +0 -4
- package/es/table/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/es/ui/src/vn.js +16 -11
- package/es/vxe-table/style.css +0 -4
- package/es/vxe-table/style.min.css +1 -1
- package/lib/grid/src/grid.js +6 -0
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.css +1 -1
- package/lib/index.min.css +1 -1
- package/lib/index.umd.js +130 -93
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/menu/mixin.js +84 -58
- package/lib/table/module/menu/mixin.min.js +1 -1
- package/lib/table/module/menu/panel.js +11 -10
- package/lib/table/module/menu/panel.min.js +1 -1
- package/lib/table/src/body.js +11 -13
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/style/style.css +0 -4
- package/lib/table/style/style.min.css +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/lib/ui/src/vn.js +16 -10
- package/lib/ui/src/vn.min.js +1 -1
- package/lib/vxe-table/style/style.css +0 -4
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +1 -1
- package/packages/grid/src/grid.ts +5 -1
- package/packages/table/module/menu/mixin.ts +79 -50
- package/packages/table/module/menu/panel.ts +11 -9
- package/packages/table/src/body.ts +11 -13
- package/packages/ui/src/vn.ts +16 -11
- package/styles/components/table.scss +0 -1
- /package/es/{iconfont.1756452257212.ttf → iconfont.1756629700380.ttf} +0 -0
- /package/es/{iconfont.1756452257212.woff → iconfont.1756629700380.woff} +0 -0
- /package/es/{iconfont.1756452257212.woff2 → iconfont.1756629700380.woff2} +0 -0
- /package/lib/{iconfont.1756452257212.ttf → iconfont.1756629700380.ttf} +0 -0
- /package/lib/{iconfont.1756452257212.woff → iconfont.1756629700380.woff} +0 -0
- /package/lib/{iconfont.1756452257212.woff2 → iconfont.1756629700380.woff2} +0 -0
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.3";
|
|
2006
2006
|
core_.VxeUI.version = version;
|
|
2007
2007
|
core_.VxeUI.tableVersion = version;
|
|
2008
2008
|
core_.VxeUI.setConfig({
|
|
@@ -2678,7 +2678,7 @@ function isNodeElement(elem) {
|
|
|
2678
2678
|
const {
|
|
2679
2679
|
log: log_log
|
|
2680
2680
|
} = core_.VxeUI;
|
|
2681
|
-
const log_version = `table v${"3.18.
|
|
2681
|
+
const log_version = `table v${"3.18.3"}`;
|
|
2682
2682
|
const warnLog = log_log.create('warn', log_version);
|
|
2683
2683
|
const errLog = log_log.create('error', log_version);
|
|
2684
2684
|
;// CONCATENATED MODULE: ./packages/table/src/columnInfo.ts
|
|
@@ -3687,25 +3687,31 @@ function colToVisible($xeTable, column, row) {
|
|
|
3687
3687
|
function getOnName(type) {
|
|
3688
3688
|
return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().kebabCase(type);
|
|
3689
3689
|
}
|
|
3690
|
-
function getModelEvent(
|
|
3691
|
-
switch (
|
|
3692
|
-
case '
|
|
3693
|
-
case '
|
|
3694
|
-
|
|
3690
|
+
function getModelEvent(name) {
|
|
3691
|
+
switch (name) {
|
|
3692
|
+
case 'VxeInput':
|
|
3693
|
+
case 'VxeTextarea':
|
|
3694
|
+
case 'VxeNumberInput':
|
|
3695
|
+
case 'VxeSelect':
|
|
3696
|
+
case 'VxeTreeSelect':
|
|
3697
|
+
case 'VxeTableSelect':
|
|
3698
|
+
case 'VxeDatePicker':
|
|
3699
|
+
case 'VxeDateRangePicker':
|
|
3700
|
+
return 'modelValue';
|
|
3695
3701
|
case 'select':
|
|
3696
3702
|
return 'change';
|
|
3697
3703
|
}
|
|
3698
|
-
return '
|
|
3704
|
+
return 'input';
|
|
3699
3705
|
}
|
|
3700
|
-
function getChangeEvent(
|
|
3701
|
-
switch (
|
|
3706
|
+
function getChangeEvent(name) {
|
|
3707
|
+
switch (name) {
|
|
3702
3708
|
case 'input':
|
|
3703
3709
|
case 'textarea':
|
|
3704
3710
|
case 'VxeInput':
|
|
3705
|
-
case 'VxeNumberInput':
|
|
3706
3711
|
case 'VxeTextarea':
|
|
3707
|
-
case '$input':
|
|
3712
|
+
case '$input': // 已废弃
|
|
3708
3713
|
case '$textarea':
|
|
3714
|
+
// 已废弃
|
|
3709
3715
|
return 'input';
|
|
3710
3716
|
}
|
|
3711
3717
|
return 'change';
|
|
@@ -19557,14 +19563,13 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
|
|
|
19557
19563
|
// hover 进入事件
|
|
19558
19564
|
if (showTitle || showTooltip || showAllTip || tooltipConfig) {
|
|
19559
19565
|
tdOns.mouseenter = evnt => {
|
|
19560
|
-
if (isVMScrollProcess($xeTable)) {
|
|
19561
|
-
|
|
19562
|
-
|
|
19563
|
-
|
|
19564
|
-
|
|
19565
|
-
|
|
19566
|
-
|
|
19567
|
-
$xeTable.triggerBodyTooltipEvent(evnt, cellParams);
|
|
19566
|
+
if (!isVMScrollProcess($xeTable)) {
|
|
19567
|
+
if (showTitle) {
|
|
19568
|
+
updateCellTitle(evnt.currentTarget, column);
|
|
19569
|
+
} else if (showTooltip || showAllTip) {
|
|
19570
|
+
// 如果配置了显示 tooltip
|
|
19571
|
+
$xeTable.triggerBodyTooltipEvent(evnt, cellParams);
|
|
19572
|
+
}
|
|
19568
19573
|
}
|
|
19569
19574
|
$xeTable.dispatchEvent('cell-mouseenter', Object.assign({
|
|
19570
19575
|
cell: evnt.currentTarget
|
|
@@ -19574,11 +19579,10 @@ function renderTdColumn(h, $xeTable, seq, rowid, fixedType, isOptimizeMode, rowL
|
|
|
19574
19579
|
// hover 退出事件
|
|
19575
19580
|
if (showTooltip || showAllTip || tooltipConfig) {
|
|
19576
19581
|
tdOns.mouseleave = evnt => {
|
|
19577
|
-
if (isVMScrollProcess($xeTable)) {
|
|
19578
|
-
|
|
19579
|
-
|
|
19580
|
-
|
|
19581
|
-
$xeTable.handleTargetLeaveEvent(evnt);
|
|
19582
|
+
if (!isVMScrollProcess($xeTable)) {
|
|
19583
|
+
if (showTooltip || showAllTip) {
|
|
19584
|
+
$xeTable.handleTargetLeaveEvent(evnt);
|
|
19585
|
+
}
|
|
19582
19586
|
}
|
|
19583
19587
|
$xeTable.dispatchEvent('cell-mouseleave', Object.assign({
|
|
19584
19588
|
cell: evnt.currentTarget
|
|
@@ -23609,7 +23613,8 @@ const {
|
|
|
23609
23613
|
|
|
23610
23614
|
|
|
23611
23615
|
const {
|
|
23612
|
-
getIcon: menu_panel_getIcon
|
|
23616
|
+
getIcon: menu_panel_getIcon,
|
|
23617
|
+
renderEmptyElement: menu_panel_renderEmptyElement
|
|
23613
23618
|
} = core_.VxeUI;
|
|
23614
23619
|
/* harmony default export */ var menu_panel = ({
|
|
23615
23620
|
name: 'VxeTableMenuPanel',
|
|
@@ -23630,18 +23635,18 @@ const {
|
|
|
23630
23635
|
},
|
|
23631
23636
|
render(h) {
|
|
23632
23637
|
const $xeTable = this.$parent;
|
|
23638
|
+
const tableReactData = $xeTable;
|
|
23633
23639
|
const {
|
|
23634
|
-
_e,
|
|
23635
|
-
ctxMenuOpts,
|
|
23636
23640
|
ctxMenuStore
|
|
23637
|
-
} =
|
|
23641
|
+
} = tableReactData;
|
|
23642
|
+
const menuOpts = $xeTable.computeMenuOpts;
|
|
23638
23643
|
return h('div', {
|
|
23639
|
-
class: ['vxe-table--context-menu-wrapper',
|
|
23644
|
+
class: ['vxe-table--context-menu-wrapper', menuOpts.className, {
|
|
23640
23645
|
'is--visible': ctxMenuStore.visible
|
|
23641
23646
|
}],
|
|
23642
23647
|
style: ctxMenuStore.style
|
|
23643
23648
|
}, ctxMenuStore.list.map((options, gIndex) => {
|
|
23644
|
-
return options.every(item => item.visible === false) ?
|
|
23649
|
+
return options.every(item => item.visible === false) ? menu_panel_renderEmptyElement($xeTable) : h('ul', {
|
|
23645
23650
|
class: 'vxe-context-menu--option-wrapper',
|
|
23646
23651
|
key: gIndex
|
|
23647
23652
|
}, options.map((item, index) => {
|
|
@@ -23672,7 +23677,7 @@ const {
|
|
|
23672
23677
|
class: ['vxe-context-menu--link-prefix', prefixOpts.className || '']
|
|
23673
23678
|
}, [h('i', {
|
|
23674
23679
|
class: prefixOpts.icon || item.prefixIcon
|
|
23675
|
-
}), prefixOpts.content ? h('span', {}, `${prefixOpts.content}`) :
|
|
23680
|
+
}), prefixOpts.content ? h('span', {}, `${prefixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)]), h('span', {
|
|
23676
23681
|
class: 'vxe-context-menu--link-content',
|
|
23677
23682
|
attrs: {
|
|
23678
23683
|
title: menuContent
|
|
@@ -23681,7 +23686,7 @@ const {
|
|
|
23681
23686
|
class: ['vxe-context-menu--link-suffix', suffixOpts.className || '']
|
|
23682
23687
|
}, [h('i', {
|
|
23683
23688
|
class: suffixOpts.icon || item.suffixIcon || (hasChildMenus ? menu_panel_getIcon().TABLE_MENU_OPTIONS : '')
|
|
23684
|
-
}), suffixOpts.content ? h('span', `${suffixOpts.content}`) :
|
|
23689
|
+
}), suffixOpts.content ? h('span', `${suffixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)])]), hasChildMenus ? h('ul', {
|
|
23685
23690
|
class: ['vxe-table--context-menu-clild-wrapper', {
|
|
23686
23691
|
'is--show': item === ctxMenuStore.selected && ctxMenuStore.showChild
|
|
23687
23692
|
}]
|
|
@@ -23712,7 +23717,7 @@ const {
|
|
|
23712
23717
|
class: ['vxe-context-menu--link-prefix', childPrefixOpts.className || '']
|
|
23713
23718
|
}, [h('i', {
|
|
23714
23719
|
class: childPrefixOpts.icon || child.prefixIcon
|
|
23715
|
-
}), childPrefixOpts.content ? h('span', `${childPrefixOpts.content}`) :
|
|
23720
|
+
}), childPrefixOpts.content ? h('span', `${childPrefixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)]), h('span', {
|
|
23716
23721
|
class: 'vxe-context-menu--link-content',
|
|
23717
23722
|
attrs: {
|
|
23718
23723
|
title: childMenuContent
|
|
@@ -23721,7 +23726,7 @@ const {
|
|
|
23721
23726
|
class: ['vxe-context-menu--link-suffix', childSuffixOpts.className || '']
|
|
23722
23727
|
}, [h('i', {
|
|
23723
23728
|
class: childSuffixOpts.icon
|
|
23724
|
-
}), childSuffixOpts.content ? h('span', `${childSuffixOpts.content}`) :
|
|
23729
|
+
}), childSuffixOpts.content ? h('span', `${childSuffixOpts.content}`) : menu_panel_renderEmptyElement($xeTable)])])]);
|
|
23725
23730
|
})) : null]);
|
|
23726
23731
|
}));
|
|
23727
23732
|
}));
|
|
@@ -24152,13 +24157,15 @@ const {
|
|
|
24152
24157
|
* 关闭快捷菜单
|
|
24153
24158
|
*/
|
|
24154
24159
|
_closeMenu() {
|
|
24155
|
-
|
|
24160
|
+
const $xeTable = this;
|
|
24161
|
+
const reactData = $xeTable;
|
|
24162
|
+
Object.assign(reactData.ctxMenuStore, {
|
|
24156
24163
|
visible: false,
|
|
24157
24164
|
selected: null,
|
|
24158
24165
|
selectChild: null,
|
|
24159
24166
|
showChild: false
|
|
24160
24167
|
});
|
|
24161
|
-
return
|
|
24168
|
+
return $xeTable.$nextTick();
|
|
24162
24169
|
},
|
|
24163
24170
|
// 处理菜单的移动
|
|
24164
24171
|
moveCtxMenu(evnt, ctxMenuStore, property, hasOper, operRest, menuList) {
|
|
@@ -24199,25 +24206,34 @@ const {
|
|
|
24199
24206
|
const $xeTable = this;
|
|
24200
24207
|
const $xeGrid = $xeTable.$xeGrid;
|
|
24201
24208
|
const $xeGantt = $xeTable.$xeGantt;
|
|
24209
|
+
const props = $xeTable;
|
|
24210
|
+
const reactData = $xeTable;
|
|
24202
24211
|
const internalData = $xeTable;
|
|
24203
24212
|
const {
|
|
24204
|
-
|
|
24205
|
-
|
|
24206
|
-
|
|
24207
|
-
menuConfig,
|
|
24208
|
-
contextMenu,
|
|
24209
|
-
ctxMenuStore,
|
|
24210
|
-
ctxMenuOpts,
|
|
24213
|
+
xID
|
|
24214
|
+
} = $xeTable;
|
|
24215
|
+
const {
|
|
24211
24216
|
mouseConfig,
|
|
24212
|
-
|
|
24213
|
-
} =
|
|
24217
|
+
menuConfig
|
|
24218
|
+
} = props;
|
|
24219
|
+
const {
|
|
24220
|
+
editStore,
|
|
24221
|
+
ctxMenuStore
|
|
24222
|
+
} = reactData;
|
|
24223
|
+
const {
|
|
24224
|
+
visibleColumn
|
|
24225
|
+
} = internalData;
|
|
24226
|
+
const tableFilter = $xeTable.$refs.refTableFilter;
|
|
24227
|
+
const tableMenu = $xeTable.$refs.refTableMenu;
|
|
24228
|
+
const mouseOpts = $xeTable.computeMouseOpts;
|
|
24229
|
+
const menuOpts = $xeTable.computeMenuOpts;
|
|
24230
|
+
const el = $xeTable.$refs.refElem;
|
|
24214
24231
|
const {
|
|
24215
24232
|
selected
|
|
24216
24233
|
} = editStore;
|
|
24217
|
-
const tableFilter = $xeTable.$refs.refTableFilter;
|
|
24218
24234
|
const layoutList = ['header', 'body', 'footer'];
|
|
24219
|
-
if (isEnableConf(menuConfig)
|
|
24220
|
-
if (ctxMenuStore.visible &&
|
|
24235
|
+
if (isEnableConf(menuConfig)) {
|
|
24236
|
+
if (ctxMenuStore.visible && tableMenu && getEventTargetNode(evnt, tableMenu.$el).flag) {
|
|
24221
24237
|
evnt.preventDefault();
|
|
24222
24238
|
return;
|
|
24223
24239
|
}
|
|
@@ -24229,16 +24245,16 @@ const {
|
|
|
24229
24245
|
$grid: $xeGrid,
|
|
24230
24246
|
$gantt: $xeGantt,
|
|
24231
24247
|
keyboard: true,
|
|
24232
|
-
columns:
|
|
24248
|
+
columns: visibleColumn.slice(0),
|
|
24233
24249
|
$event: evnt
|
|
24234
24250
|
};
|
|
24235
24251
|
// 如果开启单元格区域
|
|
24236
24252
|
if (mouseConfig && mouseOpts.area) {
|
|
24237
|
-
const activeArea =
|
|
24253
|
+
const activeArea = $xeTable.getActiveCellArea();
|
|
24238
24254
|
if (activeArea && activeArea.row && activeArea.column) {
|
|
24239
24255
|
params.row = activeArea.row;
|
|
24240
24256
|
params.column = activeArea.column;
|
|
24241
|
-
|
|
24257
|
+
$xeTable.handleOpenMenuEvent(evnt, type, params);
|
|
24242
24258
|
return;
|
|
24243
24259
|
}
|
|
24244
24260
|
} else if (mouseConfig && mouseOpts.selected) {
|
|
@@ -24246,7 +24262,7 @@ const {
|
|
|
24246
24262
|
if (selected.row && selected.column) {
|
|
24247
24263
|
params.row = selected.row;
|
|
24248
24264
|
params.column = selected.column;
|
|
24249
|
-
|
|
24265
|
+
$xeTable.handleOpenMenuEvent(evnt, type, params);
|
|
24250
24266
|
return;
|
|
24251
24267
|
}
|
|
24252
24268
|
}
|
|
@@ -24254,16 +24270,16 @@ const {
|
|
|
24254
24270
|
// 分别匹配表尾、内容、表尾的快捷菜单
|
|
24255
24271
|
for (let index = 0; index < layoutList.length; index++) {
|
|
24256
24272
|
const layout = layoutList[index];
|
|
24257
|
-
const columnTargetNode = getEventTargetNode(evnt,
|
|
24273
|
+
const columnTargetNode = getEventTargetNode(evnt, el, `vxe-${layout}--column`, target => {
|
|
24258
24274
|
// target=td|th,直接向上找 table 去匹配即可
|
|
24259
|
-
return target.parentNode.parentNode.parentNode.getAttribute('xid') ===
|
|
24275
|
+
return target.parentNode.parentNode.parentNode.getAttribute('xid') === xID;
|
|
24260
24276
|
});
|
|
24261
24277
|
const params = {
|
|
24262
24278
|
type: layout,
|
|
24263
24279
|
$table: $xeTable,
|
|
24264
24280
|
$grid: $xeGrid,
|
|
24265
24281
|
$gantt: $xeGantt,
|
|
24266
|
-
columns:
|
|
24282
|
+
columns: visibleColumn.slice(0),
|
|
24267
24283
|
$event: evnt
|
|
24268
24284
|
};
|
|
24269
24285
|
if (columnTargetNode.flag) {
|
|
@@ -24288,41 +24304,44 @@ const {
|
|
|
24288
24304
|
}
|
|
24289
24305
|
}
|
|
24290
24306
|
const eventType = `${typePrefix}cell-menu`;
|
|
24291
|
-
|
|
24307
|
+
$xeTable.handleOpenMenuEvent(evnt, layout, params);
|
|
24292
24308
|
// 在 v4 中废弃事件 cell-context-menu、header-cell-context-menu、footer-cell-context-menu
|
|
24293
|
-
if (
|
|
24309
|
+
if ($xeTable.$listeners[`${typePrefix}cell-context-menu`]) {
|
|
24294
24310
|
warnLog('vxe.error.delEvent', [`${typePrefix}cell-context-menu`, `${typePrefix}cell-menu`]);
|
|
24295
24311
|
$xeTable.dispatchEvent(`${typePrefix}cell-context-menu`, params, evnt);
|
|
24296
24312
|
} else {
|
|
24297
24313
|
$xeTable.dispatchEvent(eventType, params, evnt);
|
|
24298
24314
|
}
|
|
24299
24315
|
return;
|
|
24300
|
-
} else if (getEventTargetNode(evnt,
|
|
24301
|
-
if (
|
|
24316
|
+
} else if (getEventTargetNode(evnt, $xeTable.$el, `vxe-table--${layout}-wrapper`, target => target.getAttribute('xid') === xID).flag) {
|
|
24317
|
+
if (menuOpts.trigger === 'cell') {
|
|
24302
24318
|
evnt.preventDefault();
|
|
24303
24319
|
} else {
|
|
24304
|
-
|
|
24320
|
+
$xeTable.handleOpenMenuEvent(evnt, layout, params);
|
|
24305
24321
|
}
|
|
24306
24322
|
return;
|
|
24307
24323
|
}
|
|
24308
24324
|
}
|
|
24309
24325
|
}
|
|
24310
24326
|
if (tableFilter && !getEventTargetNode(evnt, tableFilter.$el).flag) {
|
|
24311
|
-
|
|
24327
|
+
$xeTable.closeFilter();
|
|
24312
24328
|
}
|
|
24313
|
-
|
|
24329
|
+
$xeTable.closeMenu();
|
|
24314
24330
|
},
|
|
24315
24331
|
/**
|
|
24316
24332
|
* 显示快捷菜单
|
|
24317
24333
|
*/
|
|
24318
24334
|
handleOpenMenuEvent(evnt, type, params) {
|
|
24335
|
+
const $xeTable = this;
|
|
24336
|
+
const reactData = $xeTable;
|
|
24337
|
+
const internalData = $xeTable;
|
|
24319
24338
|
const {
|
|
24320
|
-
|
|
24321
|
-
|
|
24322
|
-
|
|
24323
|
-
|
|
24324
|
-
const config =
|
|
24325
|
-
const visibleMethod =
|
|
24339
|
+
ctxMenuStore
|
|
24340
|
+
} = reactData;
|
|
24341
|
+
const isMenu = $xeTable.computeIsMenu;
|
|
24342
|
+
const menuOpts = $xeTable.computeMenuOpts;
|
|
24343
|
+
const config = menuOpts[type];
|
|
24344
|
+
const visibleMethod = menuOpts.visibleMethod;
|
|
24326
24345
|
if (config) {
|
|
24327
24346
|
const {
|
|
24328
24347
|
options,
|
|
@@ -24330,12 +24349,12 @@ const {
|
|
|
24330
24349
|
} = config;
|
|
24331
24350
|
if (disabled) {
|
|
24332
24351
|
evnt.preventDefault();
|
|
24333
|
-
} else if (
|
|
24352
|
+
} else if (isMenu && options && options.length) {
|
|
24334
24353
|
params.options = options;
|
|
24335
|
-
|
|
24354
|
+
$xeTable.preventEvent(evnt, 'event.showMenu', params, () => {
|
|
24336
24355
|
if (!visibleMethod || visibleMethod(params)) {
|
|
24337
24356
|
evnt.preventDefault();
|
|
24338
|
-
|
|
24357
|
+
$xeTable.updateZindex();
|
|
24339
24358
|
const {
|
|
24340
24359
|
scrollTop,
|
|
24341
24360
|
scrollLeft,
|
|
@@ -24345,21 +24364,22 @@ const {
|
|
|
24345
24364
|
let top = evnt.clientY + scrollTop;
|
|
24346
24365
|
let left = evnt.clientX + scrollLeft;
|
|
24347
24366
|
const handleVisible = () => {
|
|
24367
|
+
internalData._currMenuParams = params;
|
|
24348
24368
|
Object.assign(ctxMenuStore, {
|
|
24349
|
-
args: params,
|
|
24350
24369
|
visible: true,
|
|
24351
24370
|
list: options,
|
|
24352
24371
|
selected: null,
|
|
24353
24372
|
selectChild: null,
|
|
24354
24373
|
showChild: false,
|
|
24355
24374
|
style: {
|
|
24356
|
-
zIndex:
|
|
24375
|
+
zIndex: internalData.tZindex,
|
|
24357
24376
|
top: `${top}px`,
|
|
24358
24377
|
left: `${left}px`
|
|
24359
24378
|
}
|
|
24360
24379
|
});
|
|
24361
|
-
|
|
24362
|
-
const
|
|
24380
|
+
$xeTable.$nextTick(() => {
|
|
24381
|
+
const tableMenu = $xeTable.$refs.refTableMenu;
|
|
24382
|
+
const ctxElem = tableMenu.$el;
|
|
24363
24383
|
const clientHeight = ctxElem.clientHeight;
|
|
24364
24384
|
const clientWidth = ctxElem.clientWidth;
|
|
24365
24385
|
const {
|
|
@@ -24382,30 +24402,36 @@ const {
|
|
|
24382
24402
|
column
|
|
24383
24403
|
} = params;
|
|
24384
24404
|
if (keyboard && row && column) {
|
|
24385
|
-
|
|
24386
|
-
const cell =
|
|
24387
|
-
|
|
24388
|
-
|
|
24389
|
-
|
|
24390
|
-
|
|
24391
|
-
|
|
24392
|
-
|
|
24405
|
+
$xeTable.scrollToRow(row, column).then(() => {
|
|
24406
|
+
const cell = $xeTable.getCellElement(row, column);
|
|
24407
|
+
if (cell) {
|
|
24408
|
+
const {
|
|
24409
|
+
boundingTop,
|
|
24410
|
+
boundingLeft
|
|
24411
|
+
} = getAbsolutePos(cell);
|
|
24412
|
+
top = boundingTop + scrollTop + Math.floor(cell.offsetHeight / 2);
|
|
24413
|
+
left = boundingLeft + scrollLeft + Math.floor(cell.offsetWidth / 2);
|
|
24414
|
+
}
|
|
24393
24415
|
handleVisible();
|
|
24394
24416
|
});
|
|
24395
24417
|
} else {
|
|
24396
24418
|
handleVisible();
|
|
24397
24419
|
}
|
|
24398
24420
|
} else {
|
|
24399
|
-
|
|
24421
|
+
$xeTable.closeMenu();
|
|
24400
24422
|
}
|
|
24401
24423
|
});
|
|
24402
24424
|
}
|
|
24403
24425
|
}
|
|
24404
|
-
|
|
24426
|
+
$xeTable.closeFilter();
|
|
24405
24427
|
},
|
|
24406
24428
|
ctxMenuMouseoverEvent(evnt, item, child) {
|
|
24429
|
+
const $xeTable = this;
|
|
24430
|
+
const reactData = $xeTable;
|
|
24407
24431
|
const menuElem = evnt.currentTarget;
|
|
24408
|
-
const
|
|
24432
|
+
const {
|
|
24433
|
+
ctxMenuStore
|
|
24434
|
+
} = reactData;
|
|
24409
24435
|
evnt.preventDefault();
|
|
24410
24436
|
evnt.stopPropagation();
|
|
24411
24437
|
ctxMenuStore.selected = item;
|
|
@@ -24413,7 +24439,7 @@ const {
|
|
|
24413
24439
|
if (!child) {
|
|
24414
24440
|
ctxMenuStore.showChild = hasChildrenList(item);
|
|
24415
24441
|
if (ctxMenuStore.showChild) {
|
|
24416
|
-
|
|
24442
|
+
$xeTable.$nextTick(() => {
|
|
24417
24443
|
const childWrapperElem = menuElem.nextElementSibling;
|
|
24418
24444
|
if (childWrapperElem) {
|
|
24419
24445
|
const {
|
|
@@ -24448,7 +24474,11 @@ const {
|
|
|
24448
24474
|
}
|
|
24449
24475
|
},
|
|
24450
24476
|
ctxMenuMouseoutEvent(evnt, item) {
|
|
24451
|
-
const
|
|
24477
|
+
const $xeTable = this;
|
|
24478
|
+
const reactData = $xeTable;
|
|
24479
|
+
const {
|
|
24480
|
+
ctxMenuStore
|
|
24481
|
+
} = reactData;
|
|
24452
24482
|
if (!item.children) {
|
|
24453
24483
|
ctxMenuStore.selected = null;
|
|
24454
24484
|
}
|
|
@@ -24461,27 +24491,28 @@ const {
|
|
|
24461
24491
|
const $xeTable = this;
|
|
24462
24492
|
const $xeGrid = $xeTable.$xeGrid;
|
|
24463
24493
|
const $xeGantt = $xeTable.$xeGantt;
|
|
24494
|
+
const internalData = $xeTable;
|
|
24464
24495
|
// 如果一级菜单有配置 code 则允许点击,否则不能点击
|
|
24465
24496
|
if (!menu.disabled && (menu.code || !menu.children || !menu.children.length)) {
|
|
24466
24497
|
const gMenuOpts = mixin_menus.get(menu.code);
|
|
24467
|
-
const params = Object.assign({
|
|
24498
|
+
const params = Object.assign({}, internalData._currMenuParams, {
|
|
24468
24499
|
menu,
|
|
24469
24500
|
$table: $xeTable,
|
|
24470
24501
|
$grid: $xeGrid,
|
|
24471
24502
|
$gantt: $xeGantt,
|
|
24472
24503
|
$event: evnt
|
|
24473
|
-
}
|
|
24504
|
+
});
|
|
24474
24505
|
if (gMenuOpts && gMenuOpts.menuMethod) {
|
|
24475
24506
|
gMenuOpts.menuMethod(params, evnt);
|
|
24476
24507
|
}
|
|
24477
24508
|
// 在 v4 中废弃事件 context-menu-click
|
|
24478
|
-
if (
|
|
24509
|
+
if ($xeTable.$listeners['context-menu-click']) {
|
|
24479
24510
|
warnLog('vxe.error.delEvent', ['context-menu-click', 'menu-click']);
|
|
24480
24511
|
$xeTable.dispatchEvent('context-menu-click', params, evnt);
|
|
24481
24512
|
} else {
|
|
24482
24513
|
$xeTable.dispatchEvent('menu-click', params, evnt);
|
|
24483
24514
|
}
|
|
24484
|
-
|
|
24515
|
+
$xeTable.closeMenu();
|
|
24485
24516
|
}
|
|
24486
24517
|
}
|
|
24487
24518
|
}
|
|
@@ -33093,6 +33124,8 @@ function grid_createInternalData() {
|
|
|
33093
33124
|
let itemValue = null;
|
|
33094
33125
|
if (itemRender) {
|
|
33095
33126
|
const {
|
|
33127
|
+
startField,
|
|
33128
|
+
endField,
|
|
33096
33129
|
defaultValue
|
|
33097
33130
|
} = itemRender;
|
|
33098
33131
|
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(defaultValue)) {
|
|
@@ -33102,6 +33135,10 @@ function grid_createInternalData() {
|
|
|
33102
33135
|
} else if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isUndefined(defaultValue)) {
|
|
33103
33136
|
itemValue = defaultValue;
|
|
33104
33137
|
}
|
|
33138
|
+
if (startField && endField) {
|
|
33139
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(fData, startField, null);
|
|
33140
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(fData, endField, null);
|
|
33141
|
+
}
|
|
33105
33142
|
}
|
|
33106
33143
|
fData[field] = itemValue;
|
|
33107
33144
|
}
|