@vxe-ui/plugin-menu 4.1.0 → 4.1.2

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/README.md CHANGED
@@ -30,6 +30,9 @@ VxeUI.use(VxeUIPluginMenu)
30
30
 
31
31
  | code 编码 | describe 描述 | params 参数 |
32
32
  |------|------|------|
33
+ | SYSTEM_PAGE_REFRESH | 刷新页面(对应按键F5) | — |
34
+ | SYSTEM_PAGE_FORWARD | 页面前进 | — |
35
+ | SYSTEM_PAGE_BACK | 页面后退 | — |
33
36
  | CLEAR_CELL | 清除单元格数据的值;如果启用 mouse-config.area 功能,则清除区域范围内的单元格数据 | — |
34
37
  | CLEAR_ROW | 清除行数据的值 | — |
35
38
  | CLEAR_CHECKBOX_ROW | 清除复选框选中行数据的值 | — |
@@ -89,6 +92,11 @@ VxeUI.use(VxeUIPluginMenu)
89
92
  | RESET_COLUMN | 重置列的可视状态 | — |
90
93
  | RESET_RESIZABLE | 重置列宽状态 | — |
91
94
  | RESET_ALL | 重置列的所有状态 | — |
95
+ | COMMIT_PROXY_INITIAL | 仅支持 vxe-grid,用于 proxy-config,重新初始化,恢复到初始状态,触发对应的 ajax.query | — |
96
+ | COMMIT_PROXY_QUERY | 仅支持 vxe-grid,用于 proxy-config,重新加载,如果有分页,返回第一页,触发对应的 ajax.query | — |
97
+ | COMMIT_PROXY_RELOAD | 仅支持 vxe-grid,用于 proxy-config,刷新当前页,触发对应的 ajax.query | — |
98
+ | COMMIT_PROXY_DELETE | 仅支持 vxe-grid,用于 proxy-config,直接删除,触发对应的 ajax.delete | — |
99
+ | COMMIT_PROXY_SAVE | 仅支持 vxe-grid,用于 proxy-config,保存数据,触发对应的 ajax.save | — |
92
100
 
93
101
  ## Table Demo
94
102
 
@@ -113,6 +113,14 @@ function handleCopyOrCut(params, isCut) {
113
113
  }
114
114
  }
115
115
  }
116
+ function createCommitHandle(code) {
117
+ return function (params) {
118
+ var $grid = params.$grid;
119
+ if ($grid) {
120
+ $grid.commitProxy(code);
121
+ }
122
+ };
123
+ }
116
124
  function checkCellOverlay(params, cellAreas) {
117
125
  var $table = params.$table;
118
126
  var _$table$getTableData = $table.getTableData(),
@@ -180,6 +188,7 @@ function handleClearMergeCells(params) {
180
188
  function checkPrivilege(item, params) {
181
189
  var code = item.code;
182
190
  var $table = params.$table,
191
+ $grid = params.$grid,
183
192
  row = params.row,
184
193
  column = params.column,
185
194
  type = params.type;
@@ -223,7 +232,7 @@ function checkPrivilege(item, params) {
223
232
  visibleData = _$table$getTableData3.visibleData;
224
233
  var _$table$getTableColum3 = $table.getTableColumn(),
225
234
  visibleColumn = _$table$getTableColum3.visibleColumn;
226
- item.disabled = !(visibleData.length || visibleColumn.length);
235
+ item.disabled = !visibleData.length || !visibleColumn.length;
227
236
  break;
228
237
  }
229
238
  case 'SELECT_AREA_TO_LEFT':
@@ -234,6 +243,12 @@ function checkPrivilege(item, params) {
234
243
  item.disabled = !column || !row;
235
244
  break;
236
245
  }
246
+ case 'DELETE_CHECKBOX_ROW':
247
+ {
248
+ var selectRecords = $table.getCheckboxRecords();
249
+ item.disabled = !selectRecords.length;
250
+ break;
251
+ }
237
252
  case 'EDIT_CELL':
238
253
  case 'CLEAR_CELL':
239
254
  case 'CLEAR_ROW':
@@ -244,9 +259,6 @@ function checkPrivilege(item, params) {
244
259
  case 'MERGE_CELL':
245
260
  case 'REVERT_CELL':
246
261
  case 'REVERT_ROW':
247
- case 'INSERT_AT_ROW':
248
- case 'INSERT_AT_ACTIVED_ROW':
249
- case 'INSERT_AT_EDIT_ROW':
250
262
  case 'DELETE_ROW':
251
263
  case 'DELETE_AREA_ROW':
252
264
  case 'CLEAR_SORT':
@@ -350,6 +362,15 @@ function checkPrivilege(item, params) {
350
362
  }
351
363
  break;
352
364
  }
365
+ case 'COMMIT_PROXY_INITIAL':
366
+ case 'COMMIT_PROXY_QUERY':
367
+ case 'COMMIT_PROXY_RELOAD':
368
+ case 'COMMIT_PROXY_DELETE':
369
+ case 'COMMIT_PROXY_SAVE':
370
+ {
371
+ item.disabled = !$grid;
372
+ break;
373
+ }
353
374
  }
354
375
  }
355
376
  function handlePrivilegeEvent(params) {
@@ -435,15 +456,33 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
435
456
  var pVersion = 4;
436
457
  var sVersion = 11;
437
458
  if (!VxeUI.checkVersion(VxeUI.tableVersion, pVersion, sVersion)) {
438
- console.error("[@vxe-ui/plugin-menu 4.1.0] ".concat(VxeUI.getI18n('vxe.error.errorVersion', ["vxe-table@".concat(VxeUI.tableVersion || '?'), "vxe-table v".concat(pVersion, ".").concat(sVersion, "+")]), " https://vxeui.com/other4/#/plugin-menu/install"));
459
+ console.error("[@vxe-ui/plugin-menu 4.1.2] ".concat(VxeUI.getI18n('vxe.error.errorVersion', ["vxe-table@".concat(VxeUI.tableVersion || '?'), "vxe-table v".concat(pVersion, ".").concat(sVersion, "+")]), " https://vxeui.com/other4/#/plugin-menu/install"));
439
460
  }
440
461
  } else {
441
462
  if (!/^(4)\./.test(VxeUI.uiVersion || VxeUI.tableVersion)) {
442
- console.error('[@vxe-ui/plugin-menu 4.1.0] Requires vxe-table 4.7.0+ version. https://vxeui.com/other4/#/plugin-menu/install');
463
+ console.error('[@vxe-ui/plugin-menu 4.1.2] Requires vxe-table 4.7.0+ version. https://vxeui.com/other4/#/plugin-menu/install');
443
464
  }
444
465
  }
445
466
  pluginSetup(options);
446
467
  VxeUI.menus.mixin({
468
+ /**
469
+ * 浏览器-刷新页面(对应按键F5)
470
+ */
471
+ SYSTEM_PAGE_REFRESH: function SYSTEM_PAGE_REFRESH() {
472
+ location.reload();
473
+ },
474
+ /**
475
+ * 浏览器-前进
476
+ */
477
+ SYSTEM_PAGE_FORWARD: function SYSTEM_PAGE_FORWARD() {
478
+ history.forward();
479
+ },
480
+ /**
481
+ * 浏览器-后退
482
+ */
483
+ SYSTEM_PAGE_BACK: function SYSTEM_PAGE_BACK() {
484
+ history.back();
485
+ },
447
486
  /**
448
487
  * 清除单元格数据的值;如果启用 mouse-config.area 功能,则清除区域范围内的单元格数据
449
488
  */
@@ -1040,19 +1079,17 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
1040
1079
  var _$table$getComputeMap14 = $table.getComputeMaps(),
1041
1080
  computeMouseOpts = _$table$getComputeMap14.computeMouseOpts;
1042
1081
  var mouseOpts = computeMouseOpts.value;
1043
- if (row) {
1044
- $table.insertAt(menu.params || {}, row).then(function (_ref8) {
1045
- var rows = _ref8.rows;
1046
- if (column && mouseConfig && mouseOpts.area) {
1047
- $table.setCellAreas([{
1048
- startRow: _xeUtils["default"].first(rows),
1049
- endRow: _xeUtils["default"].last(rows),
1050
- startColumn: column,
1051
- endColumn: column
1052
- }]);
1053
- }
1054
- });
1055
- }
1082
+ (row ? $table.insertAt(menu.params || {}, row) : $table.insert(menu.params || {})).then(function (_ref8) {
1083
+ var rows = _ref8.rows;
1084
+ if (column && mouseConfig && mouseOpts.area) {
1085
+ $table.setCellAreas([{
1086
+ startRow: _xeUtils["default"].first(rows),
1087
+ endRow: _xeUtils["default"].last(rows),
1088
+ startColumn: column,
1089
+ endColumn: column
1090
+ }]);
1091
+ }
1092
+ });
1056
1093
  }
1057
1094
  },
1058
1095
  /**
@@ -1069,26 +1106,25 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
1069
1106
  var _$table$getComputeMap15 = $table.getComputeMaps(),
1070
1107
  computeMouseOpts = _$table$getComputeMap15.computeMouseOpts;
1071
1108
  var mouseOpts = computeMouseOpts.value;
1072
- if (row) {
1073
- selectMultipleRows().then(function (_ref9) {
1074
- var size = _ref9.size;
1075
- if (size) {
1076
- $table.insertAt(_xeUtils["default"].range(0, size).map(function () {
1077
- return Object.assign({}, menu.params);
1078
- }), row).then(function (_ref10) {
1079
- var rows = _ref10.rows;
1080
- if (column && mouseConfig && mouseOpts.area) {
1081
- $table.setCellAreas([{
1082
- startRow: _xeUtils["default"].first(rows),
1083
- endRow: _xeUtils["default"].last(rows),
1084
- startColumn: column,
1085
- endColumn: column
1086
- }]);
1087
- }
1088
- });
1089
- }
1090
- });
1091
- }
1109
+ selectMultipleRows().then(function (_ref9) {
1110
+ var size = _ref9.size;
1111
+ if (size) {
1112
+ var records = _xeUtils["default"].range(0, size).map(function () {
1113
+ return Object.assign({}, menu.params);
1114
+ });
1115
+ (row ? $table.insertAt(records, row) : $table.insert(records)).then(function (_ref10) {
1116
+ var rows = _ref10.rows;
1117
+ if (column && mouseConfig && mouseOpts.area) {
1118
+ $table.setCellAreas([{
1119
+ startRow: _xeUtils["default"].first(rows),
1120
+ endRow: _xeUtils["default"].last(rows),
1121
+ startColumn: column,
1122
+ endColumn: column
1123
+ }]);
1124
+ }
1125
+ });
1126
+ }
1127
+ });
1092
1128
  }
1093
1129
  },
1094
1130
  /**
@@ -1105,19 +1141,17 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
1105
1141
  var _$table$getComputeMap16 = $table.getComputeMaps(),
1106
1142
  computeMouseOpts = _$table$getComputeMap16.computeMouseOpts;
1107
1143
  var mouseOpts = computeMouseOpts.value;
1108
- if (row) {
1109
- $table.insertNextAt(menu.params || {}, row).then(function (_ref11) {
1110
- var rows = _ref11.rows;
1111
- if (column && mouseConfig && mouseOpts.area) {
1112
- $table.setCellAreas([{
1113
- startRow: _xeUtils["default"].first(rows),
1114
- endRow: _xeUtils["default"].last(rows),
1115
- startColumn: column,
1116
- endColumn: column
1117
- }]);
1118
- }
1119
- });
1120
- }
1144
+ (row ? $table.insertNextAt(menu.params || {}, row) : $table.insert(menu.params || {})).then(function (_ref11) {
1145
+ var rows = _ref11.rows;
1146
+ if (column && mouseConfig && mouseOpts.area) {
1147
+ $table.setCellAreas([{
1148
+ startRow: _xeUtils["default"].first(rows),
1149
+ endRow: _xeUtils["default"].last(rows),
1150
+ startColumn: column,
1151
+ endColumn: column
1152
+ }]);
1153
+ }
1154
+ });
1121
1155
  }
1122
1156
  },
1123
1157
  /**
@@ -1134,26 +1168,25 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
1134
1168
  var _$table$getComputeMap17 = $table.getComputeMaps(),
1135
1169
  computeMouseOpts = _$table$getComputeMap17.computeMouseOpts;
1136
1170
  var mouseOpts = computeMouseOpts.value;
1137
- if (row) {
1138
- selectMultipleRows().then(function (_ref12) {
1139
- var size = _ref12.size;
1140
- if (size) {
1141
- $table.insertNextAt(_xeUtils["default"].range(0, size).map(function () {
1142
- return Object.assign({}, menu.params);
1143
- }), row).then(function (_ref13) {
1144
- var rows = _ref13.rows;
1145
- if (column && mouseConfig && mouseOpts.area) {
1146
- $table.setCellAreas([{
1147
- startRow: _xeUtils["default"].first(rows),
1148
- endRow: _xeUtils["default"].last(rows),
1149
- startColumn: column,
1150
- endColumn: column
1151
- }]);
1152
- }
1153
- });
1154
- }
1155
- });
1156
- }
1171
+ selectMultipleRows().then(function (_ref12) {
1172
+ var size = _ref12.size;
1173
+ if (size) {
1174
+ var records = _xeUtils["default"].range(0, size).map(function () {
1175
+ return Object.assign({}, menu.params);
1176
+ });
1177
+ (row ? $table.insertNextAt(records, row) : $table.insert(records)).then(function (_ref13) {
1178
+ var rows = _ref13.rows;
1179
+ if (column && mouseConfig && mouseOpts.area) {
1180
+ $table.setCellAreas([{
1181
+ startRow: _xeUtils["default"].first(rows),
1182
+ endRow: _xeUtils["default"].last(rows),
1183
+ startColumn: column,
1184
+ endColumn: column
1185
+ }]);
1186
+ }
1187
+ });
1188
+ }
1189
+ });
1157
1190
  }
1158
1191
  },
1159
1192
  /**
@@ -1166,7 +1199,8 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
1166
1199
  menu = params.menu,
1167
1200
  column = params.column;
1168
1201
  var args = menu.params || []; // [{}, 'field']
1169
- $table.insert(args[0] || {}).then(function (_ref14) {
1202
+ var record = Object.assign({}, args[0] || {});
1203
+ $table.insert(record).then(function (_ref14) {
1170
1204
  var row = _ref14.row;
1171
1205
  if ($table.setEditCell) {
1172
1206
  $table.setEditCell(row, args[1] || column);
@@ -1187,7 +1221,8 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
1187
1221
  menu = params.menu,
1188
1222
  column = params.column;
1189
1223
  var args = menu.params || []; // [{}, 'field']
1190
- $table.insert(args[0] || {}).then(function (_ref15) {
1224
+ var record = Object.assign({}, args[0] || {});
1225
+ $table.insert(record).then(function (_ref15) {
1191
1226
  var row = _ref15.row;
1192
1227
  if ($table.setEditCell) {
1193
1228
  $table.setEditCell(row, args[1] || column);
@@ -1207,18 +1242,17 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
1207
1242
  menu = params.menu,
1208
1243
  row = params.row,
1209
1244
  column = params.column;
1210
- if (row) {
1211
- var args = menu.params || []; // [{}, 'field']
1212
- $table.insertAt(args[0] || {}, row).then(function (_ref16) {
1213
- var row = _ref16.row;
1214
- if ($table.setEditCell) {
1215
- $table.setEditCell(row, args[1] || column);
1216
- } else {
1217
- // 兼容老版本
1218
- $table.setActiveCell(row, args[1] || column.field);
1219
- }
1220
- });
1221
- }
1245
+ var args = menu.params || []; // [{}, 'field']
1246
+ var record = Object.assign({}, args[0] || {});
1247
+ (row ? $table.insertAt(record, row) : $table.insert(record)).then(function (_ref16) {
1248
+ var row = _ref16.row;
1249
+ if ($table.setEditCell) {
1250
+ $table.setEditCell(row, args[1] || column);
1251
+ } else {
1252
+ // 兼容老版本
1253
+ $table.setActiveCell(row, args[1] || column.field);
1254
+ }
1255
+ });
1222
1256
  }
1223
1257
  },
1224
1258
  /**
@@ -1230,18 +1264,17 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
1230
1264
  menu = params.menu,
1231
1265
  row = params.row,
1232
1266
  column = params.column;
1233
- if (row) {
1234
- var args = menu.params || []; // [{}, 'field']
1235
- $table.insertAt(args[0] || {}, row).then(function (_ref17) {
1236
- var row = _ref17.row;
1237
- if ($table.setEditCell) {
1238
- $table.setEditCell(row, args[1] || column);
1239
- } else {
1240
- // 兼容老版本
1241
- $table.setActiveCell(row, args[1] || column.field);
1242
- }
1243
- });
1244
- }
1267
+ var args = menu.params || []; // [{}, 'field']
1268
+ var record = Object.assign({}, args[0] || {});
1269
+ (row ? $table.insertAt(record, row) : $table.insert(record)).then(function (_ref17) {
1270
+ var row = _ref17.row;
1271
+ if ($table.setEditCell) {
1272
+ $table.setEditCell(row, args[1] || column);
1273
+ } else {
1274
+ // 兼容老版本
1275
+ $table.setActiveCell(row, args[1] || column.field);
1276
+ }
1277
+ });
1245
1278
  }
1246
1279
  },
1247
1280
  /**
@@ -1253,25 +1286,24 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
1253
1286
  menu = params.menu,
1254
1287
  row = params.row,
1255
1288
  column = params.column;
1256
- if (row) {
1257
- var args = menu.params || []; // [{}, 'field']
1258
- selectMultipleRows().then(function (_ref18) {
1259
- var size = _ref18.size;
1260
- if (size) {
1261
- $table.insertAt(_xeUtils["default"].range(0, size).map(function () {
1262
- return Object.assign({}, args[0]);
1263
- }), row).then(function (_ref19) {
1264
- var row = _ref19.row;
1265
- if ($table.setEditCell) {
1266
- $table.setEditCell(row, args[1] || column);
1267
- } else {
1268
- // 兼容老版本
1269
- $table.setActiveCell(row, args[1] || column.field);
1270
- }
1271
- });
1272
- }
1273
- });
1274
- }
1289
+ var args = menu.params || []; // [{}, 'field']
1290
+ selectMultipleRows().then(function (_ref18) {
1291
+ var size = _ref18.size;
1292
+ if (size) {
1293
+ var records = _xeUtils["default"].range(0, size).map(function () {
1294
+ return Object.assign({}, args[0]);
1295
+ });
1296
+ (row ? $table.insertAt(records, row) : $table.insert(records)).then(function (_ref19) {
1297
+ var row = _ref19.row;
1298
+ if ($table.setEditCell) {
1299
+ $table.setEditCell(row, args[1] || column);
1300
+ } else {
1301
+ // 兼容老版本
1302
+ $table.setActiveCell(row, args[1] || column.field);
1303
+ }
1304
+ });
1305
+ }
1306
+ });
1275
1307
  }
1276
1308
  },
1277
1309
  /**
@@ -1283,18 +1315,17 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
1283
1315
  menu = params.menu,
1284
1316
  row = params.row,
1285
1317
  column = params.column;
1286
- if (row) {
1287
- var args = menu.params || []; // [{}, 'field']
1288
- $table.insertNextAt(args[0] || {}, row).then(function (_ref20) {
1289
- var row = _ref20.row;
1290
- if ($table.setEditCell) {
1291
- $table.setEditCell(row, args[1] || column);
1292
- } else {
1293
- // 兼容老版本
1294
- $table.setActiveCell(row, args[1] || column.field);
1295
- }
1296
- });
1297
- }
1318
+ var args = menu.params || []; // [{}, 'field']
1319
+ var record = Object.assign({}, args[0] || {});
1320
+ (row ? $table.insertNextAt(record, row) : $table.insert(record)).then(function (_ref20) {
1321
+ var row = _ref20.row;
1322
+ if ($table.setEditCell) {
1323
+ $table.setEditCell(row, args[1] || column);
1324
+ } else {
1325
+ // 兼容老版本
1326
+ $table.setActiveCell(row, args[1] || column.field);
1327
+ }
1328
+ });
1298
1329
  }
1299
1330
  },
1300
1331
  /**
@@ -1306,25 +1337,24 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
1306
1337
  menu = params.menu,
1307
1338
  row = params.row,
1308
1339
  column = params.column;
1309
- if (row) {
1310
- var args = menu.params || []; // [{}, 'field']
1311
- selectMultipleRows().then(function (_ref21) {
1312
- var size = _ref21.size;
1313
- if (size) {
1314
- $table.insertNextAt(_xeUtils["default"].range(0, size).map(function () {
1315
- return Object.assign({}, args[0]);
1316
- }), row).then(function (_ref22) {
1317
- var row = _ref22.row;
1318
- if ($table.setEditCell) {
1319
- $table.setEditCell(row, args[1] || column);
1320
- } else {
1321
- // 兼容老版本
1322
- $table.setActiveCell(row, args[1] || column.field);
1323
- }
1324
- });
1325
- }
1326
- });
1327
- }
1340
+ var args = menu.params || []; // [{}, 'field']
1341
+ selectMultipleRows().then(function (_ref21) {
1342
+ var size = _ref21.size;
1343
+ if (size) {
1344
+ var records = _xeUtils["default"].range(0, size).map(function () {
1345
+ return Object.assign({}, args[0]);
1346
+ });
1347
+ (row ? $table.insertNextAt(records, row) : $table.insert(records)).then(function (_ref22) {
1348
+ var row = _ref22.row;
1349
+ if ($table.setEditCell) {
1350
+ $table.setEditCell(row, args[1] || column);
1351
+ } else {
1352
+ // 兼容老版本
1353
+ $table.setActiveCell(row, args[1] || column.field);
1354
+ }
1355
+ });
1356
+ }
1357
+ });
1328
1358
  }
1329
1359
  },
1330
1360
  /**
@@ -1625,6 +1655,36 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
1625
1655
  var $table = params.$table;
1626
1656
  $table.resetColumn(true);
1627
1657
  }
1658
+ },
1659
+ /**
1660
+ * 用于 proxy-config,重新初始化,恢复到初始状态,触发对应的 ajax.query
1661
+ */
1662
+ COMMIT_PROXY_INITIAL: {
1663
+ menuMethod: createCommitHandle('initial')
1664
+ },
1665
+ /**
1666
+ * 用于 proxy-config,重新加载,如果有分页,返回第一页,触发对应的 ajax.query
1667
+ */
1668
+ COMMIT_PROXY_QUERY: {
1669
+ menuMethod: createCommitHandle('query')
1670
+ },
1671
+ /**
1672
+ * 用于 proxy-config,刷新当前页,触发对应的 ajax.quer
1673
+ */
1674
+ COMMIT_PROXY_RELOAD: {
1675
+ menuMethod: createCommitHandle('reload')
1676
+ },
1677
+ /**
1678
+ * 用于 proxy-config,直接删除,触发对应的 ajax.delete
1679
+ */
1680
+ COMMIT_PROXY_DELETE: {
1681
+ menuMethod: createCommitHandle('delete')
1682
+ },
1683
+ /**
1684
+ * 用于 proxy-config,保存数据,触发对应的 ajax.save
1685
+ */
1686
+ COMMIT_PROXY_SAVE: {
1687
+ menuMethod: createCommitHandle('save')
1628
1688
  }
1629
1689
  });
1630
1690
  VxeUI.interceptor.add('event.showMenu', handlePrivilegeEvent);
package/dist/index.umd.js CHANGED
@@ -125,6 +125,14 @@
125
125
  }
126
126
  }
127
127
  }
128
+ function createCommitHandle(code) {
129
+ return function (params) {
130
+ var $grid = params.$grid;
131
+ if ($grid) {
132
+ $grid.commitProxy(code);
133
+ }
134
+ };
135
+ }
128
136
  function checkCellOverlay(params, cellAreas) {
129
137
  var $table = params.$table;
130
138
  var _$table$getTableData = $table.getTableData(),
@@ -192,6 +200,7 @@
192
200
  function checkPrivilege(item, params) {
193
201
  var code = item.code;
194
202
  var $table = params.$table,
203
+ $grid = params.$grid,
195
204
  row = params.row,
196
205
  column = params.column,
197
206
  type = params.type;
@@ -235,7 +244,7 @@
235
244
  visibleData = _$table$getTableData3.visibleData;
236
245
  var _$table$getTableColum3 = $table.getTableColumn(),
237
246
  visibleColumn = _$table$getTableColum3.visibleColumn;
238
- item.disabled = !(visibleData.length || visibleColumn.length);
247
+ item.disabled = !visibleData.length || !visibleColumn.length;
239
248
  break;
240
249
  }
241
250
  case 'SELECT_AREA_TO_LEFT':
@@ -246,6 +255,12 @@
246
255
  item.disabled = !column || !row;
247
256
  break;
248
257
  }
258
+ case 'DELETE_CHECKBOX_ROW':
259
+ {
260
+ var selectRecords = $table.getCheckboxRecords();
261
+ item.disabled = !selectRecords.length;
262
+ break;
263
+ }
249
264
  case 'EDIT_CELL':
250
265
  case 'CLEAR_CELL':
251
266
  case 'CLEAR_ROW':
@@ -256,9 +271,6 @@
256
271
  case 'MERGE_CELL':
257
272
  case 'REVERT_CELL':
258
273
  case 'REVERT_ROW':
259
- case 'INSERT_AT_ROW':
260
- case 'INSERT_AT_ACTIVED_ROW':
261
- case 'INSERT_AT_EDIT_ROW':
262
274
  case 'DELETE_ROW':
263
275
  case 'DELETE_AREA_ROW':
264
276
  case 'CLEAR_SORT':
@@ -362,6 +374,15 @@
362
374
  }
363
375
  break;
364
376
  }
377
+ case 'COMMIT_PROXY_INITIAL':
378
+ case 'COMMIT_PROXY_QUERY':
379
+ case 'COMMIT_PROXY_RELOAD':
380
+ case 'COMMIT_PROXY_DELETE':
381
+ case 'COMMIT_PROXY_SAVE':
382
+ {
383
+ item.disabled = !$grid;
384
+ break;
385
+ }
365
386
  }
366
387
  }
367
388
  function handlePrivilegeEvent(params) {
@@ -447,15 +468,33 @@
447
468
  var pVersion = 4;
448
469
  var sVersion = 11;
449
470
  if (!VxeUI.checkVersion(VxeUI.tableVersion, pVersion, sVersion)) {
450
- console.error("[@vxe-ui/plugin-menu 4.1.0] ".concat(VxeUI.getI18n('vxe.error.errorVersion', ["vxe-table@".concat(VxeUI.tableVersion || '?'), "vxe-table v".concat(pVersion, ".").concat(sVersion, "+")]), " https://vxeui.com/other4/#/plugin-menu/install"));
471
+ console.error("[@vxe-ui/plugin-menu 4.1.2] ".concat(VxeUI.getI18n('vxe.error.errorVersion', ["vxe-table@".concat(VxeUI.tableVersion || '?'), "vxe-table v".concat(pVersion, ".").concat(sVersion, "+")]), " https://vxeui.com/other4/#/plugin-menu/install"));
451
472
  }
452
473
  } else {
453
474
  if (!/^(4)\./.test(VxeUI.uiVersion || VxeUI.tableVersion)) {
454
- console.error('[@vxe-ui/plugin-menu 4.1.0] Requires vxe-table 4.7.0+ version. https://vxeui.com/other4/#/plugin-menu/install');
475
+ console.error('[@vxe-ui/plugin-menu 4.1.2] Requires vxe-table 4.7.0+ version. https://vxeui.com/other4/#/plugin-menu/install');
455
476
  }
456
477
  }
457
478
  pluginSetup(options);
458
479
  VxeUI.menus.mixin({
480
+ /**
481
+ * 浏览器-刷新页面(对应按键F5)
482
+ */
483
+ SYSTEM_PAGE_REFRESH: function SYSTEM_PAGE_REFRESH() {
484
+ location.reload();
485
+ },
486
+ /**
487
+ * 浏览器-前进
488
+ */
489
+ SYSTEM_PAGE_FORWARD: function SYSTEM_PAGE_FORWARD() {
490
+ history.forward();
491
+ },
492
+ /**
493
+ * 浏览器-后退
494
+ */
495
+ SYSTEM_PAGE_BACK: function SYSTEM_PAGE_BACK() {
496
+ history.back();
497
+ },
459
498
  /**
460
499
  * 清除单元格数据的值;如果启用 mouse-config.area 功能,则清除区域范围内的单元格数据
461
500
  */
@@ -1052,19 +1091,17 @@
1052
1091
  var _$table$getComputeMap14 = $table.getComputeMaps(),
1053
1092
  computeMouseOpts = _$table$getComputeMap14.computeMouseOpts;
1054
1093
  var mouseOpts = computeMouseOpts.value;
1055
- if (row) {
1056
- $table.insertAt(menu.params || {}, row).then(function (_ref8) {
1057
- var rows = _ref8.rows;
1058
- if (column && mouseConfig && mouseOpts.area) {
1059
- $table.setCellAreas([{
1060
- startRow: _xeUtils["default"].first(rows),
1061
- endRow: _xeUtils["default"].last(rows),
1062
- startColumn: column,
1063
- endColumn: column
1064
- }]);
1065
- }
1066
- });
1067
- }
1094
+ (row ? $table.insertAt(menu.params || {}, row) : $table.insert(menu.params || {})).then(function (_ref8) {
1095
+ var rows = _ref8.rows;
1096
+ if (column && mouseConfig && mouseOpts.area) {
1097
+ $table.setCellAreas([{
1098
+ startRow: _xeUtils["default"].first(rows),
1099
+ endRow: _xeUtils["default"].last(rows),
1100
+ startColumn: column,
1101
+ endColumn: column
1102
+ }]);
1103
+ }
1104
+ });
1068
1105
  }
1069
1106
  },
1070
1107
  /**
@@ -1081,26 +1118,25 @@
1081
1118
  var _$table$getComputeMap15 = $table.getComputeMaps(),
1082
1119
  computeMouseOpts = _$table$getComputeMap15.computeMouseOpts;
1083
1120
  var mouseOpts = computeMouseOpts.value;
1084
- if (row) {
1085
- selectMultipleRows().then(function (_ref9) {
1086
- var size = _ref9.size;
1087
- if (size) {
1088
- $table.insertAt(_xeUtils["default"].range(0, size).map(function () {
1089
- return Object.assign({}, menu.params);
1090
- }), row).then(function (_ref10) {
1091
- var rows = _ref10.rows;
1092
- if (column && mouseConfig && mouseOpts.area) {
1093
- $table.setCellAreas([{
1094
- startRow: _xeUtils["default"].first(rows),
1095
- endRow: _xeUtils["default"].last(rows),
1096
- startColumn: column,
1097
- endColumn: column
1098
- }]);
1099
- }
1100
- });
1101
- }
1102
- });
1103
- }
1121
+ selectMultipleRows().then(function (_ref9) {
1122
+ var size = _ref9.size;
1123
+ if (size) {
1124
+ var records = _xeUtils["default"].range(0, size).map(function () {
1125
+ return Object.assign({}, menu.params);
1126
+ });
1127
+ (row ? $table.insertAt(records, row) : $table.insert(records)).then(function (_ref10) {
1128
+ var rows = _ref10.rows;
1129
+ if (column && mouseConfig && mouseOpts.area) {
1130
+ $table.setCellAreas([{
1131
+ startRow: _xeUtils["default"].first(rows),
1132
+ endRow: _xeUtils["default"].last(rows),
1133
+ startColumn: column,
1134
+ endColumn: column
1135
+ }]);
1136
+ }
1137
+ });
1138
+ }
1139
+ });
1104
1140
  }
1105
1141
  },
1106
1142
  /**
@@ -1117,19 +1153,17 @@
1117
1153
  var _$table$getComputeMap16 = $table.getComputeMaps(),
1118
1154
  computeMouseOpts = _$table$getComputeMap16.computeMouseOpts;
1119
1155
  var mouseOpts = computeMouseOpts.value;
1120
- if (row) {
1121
- $table.insertNextAt(menu.params || {}, row).then(function (_ref11) {
1122
- var rows = _ref11.rows;
1123
- if (column && mouseConfig && mouseOpts.area) {
1124
- $table.setCellAreas([{
1125
- startRow: _xeUtils["default"].first(rows),
1126
- endRow: _xeUtils["default"].last(rows),
1127
- startColumn: column,
1128
- endColumn: column
1129
- }]);
1130
- }
1131
- });
1132
- }
1156
+ (row ? $table.insertNextAt(menu.params || {}, row) : $table.insert(menu.params || {})).then(function (_ref11) {
1157
+ var rows = _ref11.rows;
1158
+ if (column && mouseConfig && mouseOpts.area) {
1159
+ $table.setCellAreas([{
1160
+ startRow: _xeUtils["default"].first(rows),
1161
+ endRow: _xeUtils["default"].last(rows),
1162
+ startColumn: column,
1163
+ endColumn: column
1164
+ }]);
1165
+ }
1166
+ });
1133
1167
  }
1134
1168
  },
1135
1169
  /**
@@ -1146,26 +1180,25 @@
1146
1180
  var _$table$getComputeMap17 = $table.getComputeMaps(),
1147
1181
  computeMouseOpts = _$table$getComputeMap17.computeMouseOpts;
1148
1182
  var mouseOpts = computeMouseOpts.value;
1149
- if (row) {
1150
- selectMultipleRows().then(function (_ref12) {
1151
- var size = _ref12.size;
1152
- if (size) {
1153
- $table.insertNextAt(_xeUtils["default"].range(0, size).map(function () {
1154
- return Object.assign({}, menu.params);
1155
- }), row).then(function (_ref13) {
1156
- var rows = _ref13.rows;
1157
- if (column && mouseConfig && mouseOpts.area) {
1158
- $table.setCellAreas([{
1159
- startRow: _xeUtils["default"].first(rows),
1160
- endRow: _xeUtils["default"].last(rows),
1161
- startColumn: column,
1162
- endColumn: column
1163
- }]);
1164
- }
1165
- });
1166
- }
1167
- });
1168
- }
1183
+ selectMultipleRows().then(function (_ref12) {
1184
+ var size = _ref12.size;
1185
+ if (size) {
1186
+ var records = _xeUtils["default"].range(0, size).map(function () {
1187
+ return Object.assign({}, menu.params);
1188
+ });
1189
+ (row ? $table.insertNextAt(records, row) : $table.insert(records)).then(function (_ref13) {
1190
+ var rows = _ref13.rows;
1191
+ if (column && mouseConfig && mouseOpts.area) {
1192
+ $table.setCellAreas([{
1193
+ startRow: _xeUtils["default"].first(rows),
1194
+ endRow: _xeUtils["default"].last(rows),
1195
+ startColumn: column,
1196
+ endColumn: column
1197
+ }]);
1198
+ }
1199
+ });
1200
+ }
1201
+ });
1169
1202
  }
1170
1203
  },
1171
1204
  /**
@@ -1178,7 +1211,8 @@
1178
1211
  menu = params.menu,
1179
1212
  column = params.column;
1180
1213
  var args = menu.params || []; // [{}, 'field']
1181
- $table.insert(args[0] || {}).then(function (_ref14) {
1214
+ var record = Object.assign({}, args[0] || {});
1215
+ $table.insert(record).then(function (_ref14) {
1182
1216
  var row = _ref14.row;
1183
1217
  if ($table.setEditCell) {
1184
1218
  $table.setEditCell(row, args[1] || column);
@@ -1199,7 +1233,8 @@
1199
1233
  menu = params.menu,
1200
1234
  column = params.column;
1201
1235
  var args = menu.params || []; // [{}, 'field']
1202
- $table.insert(args[0] || {}).then(function (_ref15) {
1236
+ var record = Object.assign({}, args[0] || {});
1237
+ $table.insert(record).then(function (_ref15) {
1203
1238
  var row = _ref15.row;
1204
1239
  if ($table.setEditCell) {
1205
1240
  $table.setEditCell(row, args[1] || column);
@@ -1219,18 +1254,17 @@
1219
1254
  menu = params.menu,
1220
1255
  row = params.row,
1221
1256
  column = params.column;
1222
- if (row) {
1223
- var args = menu.params || []; // [{}, 'field']
1224
- $table.insertAt(args[0] || {}, row).then(function (_ref16) {
1225
- var row = _ref16.row;
1226
- if ($table.setEditCell) {
1227
- $table.setEditCell(row, args[1] || column);
1228
- } else {
1229
- // 兼容老版本
1230
- $table.setActiveCell(row, args[1] || column.field);
1231
- }
1232
- });
1233
- }
1257
+ var args = menu.params || []; // [{}, 'field']
1258
+ var record = Object.assign({}, args[0] || {});
1259
+ (row ? $table.insertAt(record, row) : $table.insert(record)).then(function (_ref16) {
1260
+ var row = _ref16.row;
1261
+ if ($table.setEditCell) {
1262
+ $table.setEditCell(row, args[1] || column);
1263
+ } else {
1264
+ // 兼容老版本
1265
+ $table.setActiveCell(row, args[1] || column.field);
1266
+ }
1267
+ });
1234
1268
  }
1235
1269
  },
1236
1270
  /**
@@ -1242,18 +1276,17 @@
1242
1276
  menu = params.menu,
1243
1277
  row = params.row,
1244
1278
  column = params.column;
1245
- if (row) {
1246
- var args = menu.params || []; // [{}, 'field']
1247
- $table.insertAt(args[0] || {}, row).then(function (_ref17) {
1248
- var row = _ref17.row;
1249
- if ($table.setEditCell) {
1250
- $table.setEditCell(row, args[1] || column);
1251
- } else {
1252
- // 兼容老版本
1253
- $table.setActiveCell(row, args[1] || column.field);
1254
- }
1255
- });
1256
- }
1279
+ var args = menu.params || []; // [{}, 'field']
1280
+ var record = Object.assign({}, args[0] || {});
1281
+ (row ? $table.insertAt(record, row) : $table.insert(record)).then(function (_ref17) {
1282
+ var row = _ref17.row;
1283
+ if ($table.setEditCell) {
1284
+ $table.setEditCell(row, args[1] || column);
1285
+ } else {
1286
+ // 兼容老版本
1287
+ $table.setActiveCell(row, args[1] || column.field);
1288
+ }
1289
+ });
1257
1290
  }
1258
1291
  },
1259
1292
  /**
@@ -1265,25 +1298,24 @@
1265
1298
  menu = params.menu,
1266
1299
  row = params.row,
1267
1300
  column = params.column;
1268
- if (row) {
1269
- var args = menu.params || []; // [{}, 'field']
1270
- selectMultipleRows().then(function (_ref18) {
1271
- var size = _ref18.size;
1272
- if (size) {
1273
- $table.insertAt(_xeUtils["default"].range(0, size).map(function () {
1274
- return Object.assign({}, args[0]);
1275
- }), row).then(function (_ref19) {
1276
- var row = _ref19.row;
1277
- if ($table.setEditCell) {
1278
- $table.setEditCell(row, args[1] || column);
1279
- } else {
1280
- // 兼容老版本
1281
- $table.setActiveCell(row, args[1] || column.field);
1282
- }
1283
- });
1284
- }
1285
- });
1286
- }
1301
+ var args = menu.params || []; // [{}, 'field']
1302
+ selectMultipleRows().then(function (_ref18) {
1303
+ var size = _ref18.size;
1304
+ if (size) {
1305
+ var records = _xeUtils["default"].range(0, size).map(function () {
1306
+ return Object.assign({}, args[0]);
1307
+ });
1308
+ (row ? $table.insertAt(records, row) : $table.insert(records)).then(function (_ref19) {
1309
+ var row = _ref19.row;
1310
+ if ($table.setEditCell) {
1311
+ $table.setEditCell(row, args[1] || column);
1312
+ } else {
1313
+ // 兼容老版本
1314
+ $table.setActiveCell(row, args[1] || column.field);
1315
+ }
1316
+ });
1317
+ }
1318
+ });
1287
1319
  }
1288
1320
  },
1289
1321
  /**
@@ -1295,18 +1327,17 @@
1295
1327
  menu = params.menu,
1296
1328
  row = params.row,
1297
1329
  column = params.column;
1298
- if (row) {
1299
- var args = menu.params || []; // [{}, 'field']
1300
- $table.insertNextAt(args[0] || {}, row).then(function (_ref20) {
1301
- var row = _ref20.row;
1302
- if ($table.setEditCell) {
1303
- $table.setEditCell(row, args[1] || column);
1304
- } else {
1305
- // 兼容老版本
1306
- $table.setActiveCell(row, args[1] || column.field);
1307
- }
1308
- });
1309
- }
1330
+ var args = menu.params || []; // [{}, 'field']
1331
+ var record = Object.assign({}, args[0] || {});
1332
+ (row ? $table.insertNextAt(record, row) : $table.insert(record)).then(function (_ref20) {
1333
+ var row = _ref20.row;
1334
+ if ($table.setEditCell) {
1335
+ $table.setEditCell(row, args[1] || column);
1336
+ } else {
1337
+ // 兼容老版本
1338
+ $table.setActiveCell(row, args[1] || column.field);
1339
+ }
1340
+ });
1310
1341
  }
1311
1342
  },
1312
1343
  /**
@@ -1318,25 +1349,24 @@
1318
1349
  menu = params.menu,
1319
1350
  row = params.row,
1320
1351
  column = params.column;
1321
- if (row) {
1322
- var args = menu.params || []; // [{}, 'field']
1323
- selectMultipleRows().then(function (_ref21) {
1324
- var size = _ref21.size;
1325
- if (size) {
1326
- $table.insertNextAt(_xeUtils["default"].range(0, size).map(function () {
1327
- return Object.assign({}, args[0]);
1328
- }), row).then(function (_ref22) {
1329
- var row = _ref22.row;
1330
- if ($table.setEditCell) {
1331
- $table.setEditCell(row, args[1] || column);
1332
- } else {
1333
- // 兼容老版本
1334
- $table.setActiveCell(row, args[1] || column.field);
1335
- }
1336
- });
1337
- }
1338
- });
1339
- }
1352
+ var args = menu.params || []; // [{}, 'field']
1353
+ selectMultipleRows().then(function (_ref21) {
1354
+ var size = _ref21.size;
1355
+ if (size) {
1356
+ var records = _xeUtils["default"].range(0, size).map(function () {
1357
+ return Object.assign({}, args[0]);
1358
+ });
1359
+ (row ? $table.insertNextAt(records, row) : $table.insert(records)).then(function (_ref22) {
1360
+ var row = _ref22.row;
1361
+ if ($table.setEditCell) {
1362
+ $table.setEditCell(row, args[1] || column);
1363
+ } else {
1364
+ // 兼容老版本
1365
+ $table.setActiveCell(row, args[1] || column.field);
1366
+ }
1367
+ });
1368
+ }
1369
+ });
1340
1370
  }
1341
1371
  },
1342
1372
  /**
@@ -1637,6 +1667,36 @@
1637
1667
  var $table = params.$table;
1638
1668
  $table.resetColumn(true);
1639
1669
  }
1670
+ },
1671
+ /**
1672
+ * 用于 proxy-config,重新初始化,恢复到初始状态,触发对应的 ajax.query
1673
+ */
1674
+ COMMIT_PROXY_INITIAL: {
1675
+ menuMethod: createCommitHandle('initial')
1676
+ },
1677
+ /**
1678
+ * 用于 proxy-config,重新加载,如果有分页,返回第一页,触发对应的 ajax.query
1679
+ */
1680
+ COMMIT_PROXY_QUERY: {
1681
+ menuMethod: createCommitHandle('query')
1682
+ },
1683
+ /**
1684
+ * 用于 proxy-config,刷新当前页,触发对应的 ajax.quer
1685
+ */
1686
+ COMMIT_PROXY_RELOAD: {
1687
+ menuMethod: createCommitHandle('reload')
1688
+ },
1689
+ /**
1690
+ * 用于 proxy-config,直接删除,触发对应的 ajax.delete
1691
+ */
1692
+ COMMIT_PROXY_DELETE: {
1693
+ menuMethod: createCommitHandle('delete')
1694
+ },
1695
+ /**
1696
+ * 用于 proxy-config,保存数据,触发对应的 ajax.save
1697
+ */
1698
+ COMMIT_PROXY_SAVE: {
1699
+ menuMethod: createCommitHandle('save')
1640
1700
  }
1641
1701
  });
1642
1702
  VxeUI.interceptor.add('event.showMenu', handlePrivilegeEvent);
@@ -1 +1 @@
1
- ((e,t)=>{"function"==typeof define&&define.amd?define("@vxe-ui/plugin-menu",["exports","xe-utils","vue"],t):"undefined"!=typeof exports?t(exports,require("xe-utils"),require("vue")):(t(t={},e.XEUtils,e.Vue),e.VxeUIPluginMenu=t)})("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:this,function(e,u,a){var i,c;Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.VxeUIPluginMenu=void 0,u=(t=u)&&t.__esModule?t:{default:t};var o,_=function(e,t){return u.default.findIndexOf(e,function(e){return e.id===t.id})},g=function(e,t,n){return e.findRowIndexOf(t,n)};function n(n){return{menuMethod:function(e){var t=e.$table;u.default.eachTree([e.column],function(e){e.fixed=n}),t.refreshColumn()}}}function C(){var e=i.globalStore;return e?e.clipboard||"":(e=i.config)&&e.clipboard?e.clipboard:null}function d(e){var t,n;try{t=e,o||((o=document.createElement("textarea")).id="$XECopy",(n=o.style).width="48px",n.height="24px",n.position="fixed",n.zIndex="0",n.left="-500px",n.top="-500px",document.body.appendChild(o)),o.value=null==t?"":""+t,o.select(),o.setSelectionRange(0,o.value.length),document.execCommand("copy"),o.blur()}catch(e){}}function l(e,t){var n,a,o,l=e.$event,r=e.$table,s=e.row,e=e.column;s&&e&&(n=r.props.mouseConfig,o=r.getComputeMaps().computeMouseOpts.value,a="",n&&o.area?(t?r.triggerCutCellAreaEvent(l):r.triggerCopyCellAreaEvent(l),a=(n=C())?n.text:""):(a=u.default.toValueString(u.default.get(s,e.field)),o={text:a,html:""},(t=i.globalStore)?t.clipboard=o:i.config&&(i.config.clipboard=o)),(u.default.isFunction(c)?c:d)(a))}function p(e){var u=e.$table,e=u.props.mouseConfig,t=u.getComputeMaps().computeMouseOpts.value,i=u.getTableData().visibleData,c=u.getTableColumn().visibleColumn,n=e&&t.area?u.getCellAreas():[];return u.getMergeCells().filter(function(e){var o=e.row,l=e.col,r=e.rowspan,s=e.colspan;return n.some(function(e){var t=e.rows,e=e.cols,n=g(u,i,t[0]),t=g(u,i,t[t.length-1]),a=_(c,e[0]),e=_(c,e[e.length-1]);return n<=o&&o+r-1<=t&&a<=l&&l+s-1<=e})})}function r(e){var t=e.$table,e=p(e);return e.length&&t.removeMergeCells(e),e}function s(e,t){var n=e.code,a=t.$table,o=t.row,l=t.column,r=t.type,s=a.props,u=s.editConfig,i=s.mouseConfig;switch(n){case"CLEAR_ALL_SORT":var c=a.getSortColumns();e.disabled=!c.length;break;case"CLEAR_ALL_FILTER":c=a.getCheckedFilters();e.disabled=!c.length;break;case"CLEAR_ALL_MERGE":var c=a.getMergeCells(),d=a.getMergeFooterItems();e.disabled=!c.length&&!d.length;break;case"CLEAR_MERGE_CELL":c=p(t);e.disabled=!c.length;break;case"COPY_TITLE":e.disabled=!l||"header"!==r;break;case"SELECT_ALL_AREA":d=a.getTableData().visibleData,c=a.getTableColumn().visibleColumn;e.disabled=!(d.length||c.length);break;case"SELECT_AREA_TO_LEFT":case"SELECT_AREA_TO_RIGHT":case"SELECT_AREA_TO_TOP":case"SELECT_AREA_TO_BOTTON":e.disabled=!l||!o;break;case"EDIT_CELL":case"CLEAR_CELL":case"CLEAR_ROW":case"COPY_CELL":case"CUT_CELL":case"PASTE_CELL":case"MERGE_OR_CLEAR":case"MERGE_CELL":case"REVERT_CELL":case"REVERT_ROW":case"INSERT_AT_ROW":case"INSERT_AT_ACTIVED_ROW":case"INSERT_AT_EDIT_ROW":case"DELETE_ROW":case"DELETE_AREA_ROW":case"CLEAR_SORT":case"SORT_ASC":case"SORT_DESC":case"CLEAR_FILTER":case"FILTER_CELL":case"EXPORT_ROW":case"OPEN_FIND":case"OPEN_REPLACE":case"HIDDEN_COLUMN":case"FIXED_LEFT_COLUMN":case"FIXED_RIGHT_COLUMN":case"CLEAR_FIXED_COLUMN":if(e.disabled=!l,l){var m=a.getComputeMaps().computeMouseOpts.value,f=!!l.parentId;switch(n){case"CLEAR_SORT":e.disabled=!l.sortable||!l.order;break;case"SORT_ASC":case"SORT_DESC":e.disabled=!l.sortable;break;case"FILTER_CELL":case"CLEAR_FILTER":e.disabled=!l.filters||!l.filters.length,e.disabled||"CLEAR_FILTER"===n&&(e.disabled=!l.filters.some(function(e){return e.checked}));break;case"REVERT_CELL":e.disabled=!o||!l.field||!a.isUpdateByRow(o,l.field);break;case"REVERT_ROW":e.disabled=!o||!l.field||!a.isUpdateByRow(o);break;case"OPEN_FIND":case"OPEN_REPLACE":e.disabled=!(i&&m.area);break;case"EDIT_CELL":e.disabled=!u||!l.editRender;break;case"COPY_CELL":case"CUT_CELL":case"PASTE_CELL":var E=i&&m.area?a.getCellAreas():[];e.disabled=1<E.length,e.disabled||"PASTE_CELL"===n&&(E=C(),e.disabled=!E||!E.text);break;case"MERGE_OR_CLEAR":case"MERGE_CELL":E=i&&m.area?a.getCellAreas():[];e.disabled=!E.length||1===E.length&&1===E[0].rows.length&&1===E[0].cols.length||!((e,t)=>{for(var n=e.$table,a=n.getTableData().visibleData,o=n.getTableColumn().visibleColumn,l={},r=0,s=t.length;r<s;r++)for(var u=t[r],i=u.rows,c=u.cols,d=0,m=i.length;d<m;d++)for(var f=i[d],E=g(n,a,f),C=0,p=c.length;C<p;C++){var R=c[C],R=E+":"+_(o,R);if(l[R])return;l[R]=!0}return 1})(t,E);break;case"FIXED_LEFT_COLUMN":e.disabled=f||"left"===l.fixed;break;case"FIXED_RIGHT_COLUMN":e.disabled=f||"right"===l.fixed;break;case"CLEAR_FIXED_COLUMN":e.disabled=f||!l.fixed}}}}function m(t){return t.options.forEach(function(e){e.forEach(function(e){s(e,t),e.children&&e.children.forEach(function(e){s(e,t)})})}),!0}function f(){return new Promise(function(t){var e,n;i.modal?(e=i.getComponent("VxeNumberInput"))?(n=(0,a.ref)(1),i.modal.alert({title:"请输入行数",width:220,maskClosable:!1,slots:{default:function(){return(0,a.h)(e,{modelValue:n.value,min:1,max:100,align:"center",controlConfig:{layout:"default"},style:{width:"100%"},"onUpdate:modelValue":function(e){n.value=e}})}}}).then(function(e){t("confirm"===e?{size:n.value||1}:{size:0})})):(console.error(i.getI18n("vxe.error.reqComp",["vxe-number-input"])),t({size:0})):t({size:0})})}function E(e){e&&e.copy&&(c=e.copy)}var t=e.VxeUIPluginMenu={setConfig:E,install:function(e,t){(i=e).checkVersion?i.checkVersion(i.tableVersion,4,11)||console.error("[@vxe-ui/plugin-menu 4.1.0] ".concat(i.getI18n("vxe.error.errorVersion",["vxe-table@".concat(i.tableVersion||"?"),"vxe-table v".concat(4,".").concat(11,"+")])," https://vxeui.com/other4/#/plugin-menu/install")):/^(4)\./.test(i.uiVersion||i.tableVersion)||console.error("[@vxe-ui/plugin-menu 4.1.0] Requires vxe-table 4.7.0+ version. https://vxeui.com/other4/#/plugin-menu/install"),E(t),i.menus.mixin({CLEAR_CELL:{menuMethod:function(e){var t,n,a=e.$table,o=e.row,e=e.column;o&&e&&(n=a.props.mouseConfig,t=a.getComputeMaps().computeMouseOpts.value,n&&t.area?(n=a.getCellAreas())&&n.length&&n.forEach(function(e){var n=e.rows;e.cols.forEach(function(t){n.forEach(function(e){a.clearData(e,t.field)})})}):a.clearData(o,e.field))}},CLEAR_ROW:{menuMethod:function(e){var t=e.$table,e=e.row;e&&t.clearData(e)}},CLEAR_CHECKBOX_ROW:{menuMethod:function(e){e=e.$table;e.clearData(e.getCheckboxRecords())}},CLEAR_AREA_ROW:{menuMethod:function(e){var t=e.$table,n=e.row,e=e.column,a=t.props.mouseConfig,o=t.getComputeMaps().computeMouseOpts.value;a&&o.area?(a&&o.area?t.getCellAreas():[]).forEach(function(e){e=e.rows;t.clearData(e)}):n&&e&&t.clearData(n)}},CLEAR_ALL:{menuMethod:function(e){e.$table.clearData()}},SELECT_ALL_AREA:{menuMethod:function(e){var e=e.$table,t=e.props.mouseConfig,n=e.getComputeMaps().computeMouseOpts.value;t&&n.area&&(t=e.getTableData().visibleData,n=e.getTableColumn().visibleColumn,e.setCellAreas([{startRow:u.default.first(t),endRow:u.default.last(t),startColumn:u.default.first(n),endColumn:u.default.last(n)}]))}},SELECT_AREA_TO_LEFT:{menuMethod:function(e){var t=e.$table,n=e.row,e=e.column,a=t.props.mouseConfig,o=t.getComputeMaps().computeMouseOpts.value;n&&e&&a&&o.area&&(a=t.getTableColumn().visibleColumn,1===(o=t.getCellAreas()).length?(o=o[0],t.setCellAreas([{startRow:u.default.first(o.rows),endRow:u.default.last(o.rows),startColumn:u.default.first(a),endColumn:u.default.last(o.cols)}],{column:e,row:n})):t.setCellAreas([{startRow:n,endRow:n,startColumn:u.default.first(a),endColumn:e}],{column:e,row:n}))}},SELECT_AREA_TO_RIGHT:{menuMethod:function(e){var t=e.$table,n=e.row,e=e.column,a=t.props.mouseConfig,o=t.getComputeMaps().computeMouseOpts.value;n&&e&&a&&o.area&&(a=t.getTableColumn().visibleColumn,1===(o=t.getCellAreas()).length?(o=o[0],t.setCellAreas([{startRow:u.default.first(o.rows),endRow:u.default.last(o.rows),startColumn:u.default.first(o.cols),endColumn:u.default.last(a)}],{column:e,row:n})):t.setCellAreas([{startRow:n,endRow:n,startColumn:e,endColumn:u.default.last(a)}],{column:e,row:n}))}},SELECT_AREA_TO_TOP:{menuMethod:function(e){var t=e.$table,n=e.row,e=e.column,a=t.props.mouseConfig,o=t.getComputeMaps().computeMouseOpts.value;n&&e&&a&&o.area&&(a=t.getTableData().visibleData,1===(o=t.getCellAreas()).length?(o=o[0],t.setCellAreas([{startRow:u.default.first(a),endRow:u.default.last(o.rows),startColumn:u.default.first(o.cols),endColumn:u.default.last(o.cols)}],{column:e,row:n})):t.setCellAreas([{startRow:u.default.first(a),endRow:n,startColumn:e,endColumn:e}],{column:e,row:n}))}},SELECT_AREA_TO_BOTTON:{menuMethod:function(e){var t=e.$table,n=e.row,e=e.column,a=t.props.mouseConfig,o=t.getComputeMaps().computeMouseOpts.value;n&&e&&a&&o.area&&(a=t.getTableData().visibleData,1===(o=t.getCellAreas()).length?(o=o[0],t.setCellAreas([{startRow:u.default.first(o.rows),endRow:u.default.last(a),startColumn:u.default.first(o.cols),endColumn:u.default.last(o.cols)}],{column:e,row:n})):t.setCellAreas([{startRow:n,endRow:u.default.last(a),startColumn:e,endColumn:e}],{column:e,row:n}))}},REVERT_CELL:{menuMethod:function(e){var t,n,a=e.$table,o=e.row,e=e.column;o&&e&&(n=a.props.mouseConfig,t=a.getComputeMaps().computeMouseOpts.value,n&&t.area?(n=a.getCellAreas())&&n.length&&n.forEach(function(e){var n=e.rows;e.cols.forEach(function(t){n.forEach(function(e){a.revertData(e,t.field)})})}):a.revertData(o,e.field))}},REVERT_ROW:{menuMethod:function(e){var t=e.$table,e=e.row;e&&t.revertData(e)}},REVERT_CHECKBOX_ROW:{menuMethod:function(e){e=e.$table;e.revertData(e.getCheckboxRecords())}},REVERT_ALL:{menuMethod:function(e){e.$table.revertData()}},COPY_TITLE:{menuMethod:function(e){e=e.column.getTitle();e&&(u.default.isFunction(c)?c:d)(e)}},COPY_CELL:{menuMethod:function(e){l(e)}},CUT_CELL:{menuMethod:function(e){l(e,!0)}},PASTE_CELL:{menuMethod:function(e){var t=e.$event,n=e.$table,a=e.row,e=e.column,o=n.props.mouseConfig,l=n.getComputeMaps().computeMouseOpts.value;o&&l.area?n.triggerPasteCellAreaEvent(t):(o=C())&&o.text&&u.default.set(a,e.field,o.text)}},MERGE_OR_CLEAR:{menuMethod:function(e){var t=e.$event,n=e.$table,a=n.getCellAreas(),e=p(e),o=!1,e=(e.length?n.removeMergeCells(e):(o=!0,n.setMergeCells(a.map(function(e){var t=e.rows,e=e.cols;return{row:t[0],col:e[0],rowspan:t.length,colspan:e.length}}))),a.map(function(e){return{rows:e.rows,cols:e.cols}}));n.dispatchEvent("cell-area-merge",{status:o,targetAreas:e},t)}},MERGE_CELL:{menuMethod:function(e){var t=e.$event,n=e.$table,a=n.getTableData().visibleData,o=n.getTableColumn().visibleColumn,l=n.getCellAreas();r(e),l.some(function(e){return e.rows.length===a.length||e.cols.length===o.length})?i.modal&&i.modal.message({content:i.getI18n("vxe.pro.area.mergeErr"),status:"error",id:"operErr"}):(n.setMergeCells(l.map(function(e){var t=e.rows,e=e.cols;return{row:t[0],col:e[0],rowspan:t.length,colspan:e.length}})),e=l.map(function(e){return{rows:e.rows,cols:e.cols}}),n.dispatchEvent("cell-area-merge",{status:!0,targetAreas:e},t))}},CLEAR_MERGE_CELL:{menuMethod:function(e){var t=e.$event,n=e.$table,e=r(e);e.length&&n.dispatchEvent("clear-cell-area-merge",{mergeCells:e},t)}},CLEAR_ALL_MERGE:{menuMethod:function(e){var t=e.$event,e=e.$table,n=e.getMergeCells(),a=e.getMergeFooterItems();e.clearMergeCells(),e.clearMergeFooterItems(),e.dispatchEvent("clear-merge",{mergeCells:n,mergeFooterItems:a},t)}},EDIT_CELL:{menuMethod:function(e){var t=e.$table,n=e.row,e=e.column;t.setEditCell?t.setEditCell(n,e):t.setActiveCell(n,e.field)}},EDIT_ROW:{menuMethod:function(e){var t=e.$table,e=e.row;t.setEditRow?t.setEditRow(e):t.setActiveRow(e)}},INSERT_ROW:{menuMethod:function(e){var t=e.$table,n=e.menu,a=e.column,o=t.props.mouseConfig,l=t.getComputeMaps().computeMouseOpts.value;t.insert(n.params||{}).then(function(e){e=e.rows;a&&o&&l.area&&t.setCellAreas([{startRow:u.default.first(e),endRow:u.default.last(e),startColumn:a,endColumn:a}])})}},INSERT_AT_ROW:{menuMethod:function(e){var t=e.$table,n=e.menu,a=e.row,o=e.column,l=t.props.mouseConfig,r=t.getComputeMaps().computeMouseOpts.value;a&&t.insertAt(n.params||{},a).then(function(e){e=e.rows;o&&l&&r.area&&t.setCellAreas([{startRow:u.default.first(e),endRow:u.default.last(e),startColumn:o,endColumn:o}])})}},BATCH_INSERT_AT_ROW:{menuMethod:function(e){var t=e.$table,n=e.menu,a=e.row,o=e.column,l=t.props.mouseConfig,r=t.getComputeMaps().computeMouseOpts.value;a&&f().then(function(e){e=e.size;e&&t.insertAt(u.default.range(0,e).map(function(){return Object.assign({},n.params)}),a).then(function(e){e=e.rows;o&&l&&r.area&&t.setCellAreas([{startRow:u.default.first(e),endRow:u.default.last(e),startColumn:o,endColumn:o}])})})}},INSERT_NEXT_AT_ROW:{menuMethod:function(e){var t=e.$table,n=e.menu,a=e.row,o=e.column,l=t.props.mouseConfig,r=t.getComputeMaps().computeMouseOpts.value;a&&t.insertNextAt(n.params||{},a).then(function(e){e=e.rows;o&&l&&r.area&&t.setCellAreas([{startRow:u.default.first(e),endRow:u.default.last(e),startColumn:o,endColumn:o}])})}},BATCH_INSERT_NEXT_AT_ROW:{menuMethod:function(e){var t=e.$table,n=e.menu,a=e.row,o=e.column,l=t.props.mouseConfig,r=t.getComputeMaps().computeMouseOpts.value;a&&f().then(function(e){e=e.size;e&&t.insertNextAt(u.default.range(0,e).map(function(){return Object.assign({},n.params)}),a).then(function(e){e=e.rows;o&&l&&r.area&&t.setCellAreas([{startRow:u.default.first(e),endRow:u.default.last(e),startColumn:o,endColumn:o}])})})}},INSERT_ACTIVED_ROW:{menuMethod:function(e){var t=e.$table,n=e.column,a=e.menu.params||[];t.insert(a[0]||{}).then(function(e){e=e.row;t.setEditCell?t.setEditCell(e,a[1]||n):t.setActiveCell(e,a[1]||n.field)})}},INSERT_EDIT_ROW:{menuMethod:function(e){var t=e.$table,n=e.column,a=e.menu.params||[];t.insert(a[0]||{}).then(function(e){e=e.row;t.setEditCell?t.setEditCell(e,a[1]||n):t.setActiveCell(e,a[1]||n.field)})}},INSERT_AT_ACTIVED_ROW:{menuMethod:function(e){var t,n=e.$table,a=e.row,o=e.column;a&&(t=e.menu.params||[],n.insertAt(t[0]||{},a).then(function(e){e=e.row;n.setEditCell?n.setEditCell(e,t[1]||o):n.setActiveCell(e,t[1]||o.field)}))}},INSERT_AT_EDIT_ROW:{menuMethod:function(e){var t,n=e.$table,a=e.row,o=e.column;a&&(t=e.menu.params||[],n.insertAt(t[0]||{},a).then(function(e){e=e.row;n.setEditCell?n.setEditCell(e,t[1]||o):n.setActiveCell(e,t[1]||o.field)}))}},BATCH_INSERT_AT_EDIT_ROW:{menuMethod:function(e){var t,n=e.$table,a=e.row,o=e.column;a&&(t=e.menu.params||[],f().then(function(e){e=e.size;e&&n.insertAt(u.default.range(0,e).map(function(){return Object.assign({},t[0])}),a).then(function(e){e=e.row;n.setEditCell?n.setEditCell(e,t[1]||o):n.setActiveCell(e,t[1]||o.field)})}))}},INSERT_NEXT_AT_EDIT_ROW:{menuMethod:function(e){var t,n=e.$table,a=e.row,o=e.column;a&&(t=e.menu.params||[],n.insertNextAt(t[0]||{},a).then(function(e){e=e.row;n.setEditCell?n.setEditCell(e,t[1]||o):n.setActiveCell(e,t[1]||o.field)}))}},BATCH_INSERT_NEXT_AT_EDIT_ROW:{menuMethod:function(e){var t,n=e.$table,a=e.row,o=e.column;a&&(t=e.menu.params||[],f().then(function(e){e=e.size;e&&n.insertNextAt(u.default.range(0,e).map(function(){return Object.assign({},t[0])}),a).then(function(e){e=e.row;n.setEditCell?n.setEditCell(e,t[1]||o):n.setActiveCell(e,t[1]||o.field)})}))}},DELETE_ROW:{menuMethod:function(e){var t=e.$table,e=e.row;e&&t.remove(e)}},DELETE_AREA_ROW:{menuMethod:function(e){var t=e.$table,e=e.row,n=t.props.mouseConfig,a=t.getComputeMaps().computeMouseOpts.value;n&&a.area?t.getCellAreas().forEach(function(e){e=e.rows;t.remove(e)}):e&&t.remove(e)}},DELETE_CHECKBOX_ROW:{menuMethod:function(e){e.$table.removeCheckboxRow()}},DELETE_ALL:{menuMethod:function(e){e.$table.remove()}},CLEAR_SORT:{menuMethod:function(e){var t=e.$event,n=e.$table,e=e.column;e&&n.triggerSortEvent(t,e,null)}},CLEAR_ALL_SORT:{menuMethod:function(e){var t=e.$event,e=e.$table,n=e.getSortColumns();n.length&&(e.clearSort(),e.dispatchEvent("clear-sort",{sortList:n},t))}},SORT_ASC:{menuMethod:function(e){var t=e.$event,n=e.$table,e=e.column;e&&n.triggerSortEvent(t,e,"asc")}},SORT_DESC:{menuMethod:function(e){var t=e.$event,n=e.$table,e=e.column;e&&n.triggerSortEvent(t,e,"desc")}},CLEAR_FILTER:{menuMethod:function(e){var t=e.$event,n=e.$table,e=e.column;e&&(n.handleClearFilter(e),n.confirmFilterEvent(t))}},CLEAR_ALL_FILTER:{menuMethod:function(e){var t=e.$event,e=e.$table,n=e.getCheckedFilters();n.length&&(e.clearFilter(),e.dispatchEvent("clear-filter",{filterList:n},t))}},FILTER_CELL:{menuMethod:function(e){var t,n=e.$table,a=e.row,e=e.column;a&&e&&(t=e.field,(e=e.filters).length)&&((e=e[0]).data=u.default.get(a,t),e.checked=!0,n.updateData())}},EXPORT_ROW:{menuMethod:function(e){var t=e.$table,n=e.menu,e=e.row;e&&t.exportData(u.default.assign({},n.params?n.params[0]:{},{data:[e]}))}},EXPORT_CHECKBOX_ROW:{menuMethod:function(e){var t=e.$table,e=e.menu,n={data:t.getCheckboxRecords()};t.exportData(u.default.assign({},e.params?e.params[0]:{},n))}},EXPORT_ALL:{menuMethod:function(e){e.$table.exportData(e.menu.params)}},PRINT_ALL:{menuMethod:function(e){e.$table.print(e.menu.params)}},PRINT_CHECKBOX_ROW:{menuMethod:function(e){var t=e.$table,e=e.menu,n={data:t.getCheckboxRecords()};t.print(u.default.assign(n,e.params))}},OPEN_FIND:{menuMethod:function(e){var t=e.$event;e.$table.triggerFNROpenEvent(t,"find")}},OPEN_REPLACE:{menuMethod:function(e){var t=e.$event;e.$table.triggerFNROpenEvent(t,"replace")}},HIDDEN_COLUMN:{menuMethod:function(e){var t=e.$table,e=e.column;e&&t.hideColumn(e)}},FIXED_LEFT_COLUMN:n("left"),FIXED_RIGHT_COLUMN:n("right"),CLEAR_FIXED_COLUMN:n(null),RESET_COLUMN:{menuMethod:function(e){e.$table.resetColumn({visible:!0,resizable:!1})}},RESET_RESIZABLE:{menuMethod:function(e){e.$table.resetColumn({visible:!1,resizable:!0})}},RESET_ALL:{menuMethod:function(e){e.$table.resetColumn(!0)}}}),i.interceptor.add("event.showMenu",m)}};"undefined"!=typeof window&&window.VxeUI&&window.VxeUI.use&&window.VxeUI.use(t),e.default=t});
1
+ ((e,t)=>{"function"==typeof define&&define.amd?define("@vxe-ui/plugin-menu",["exports","xe-utils","vue"],t):"undefined"!=typeof exports?t(exports,require("xe-utils"),require("vue")):(t(t={},e.XEUtils,e.Vue),e.VxeUIPluginMenu=t)})("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:this,function(e,u,a){var i,c;Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.VxeUIPluginMenu=void 0,u=(t=u)&&t.__esModule?t:{default:t};var o,p=function(e,t){return u.default.findIndexOf(e,function(e){return e.id===t.id})},g=function(e,t,n){return e.findRowIndexOf(t,n)};function n(n){return{menuMethod:function(e){var t=e.$table;u.default.eachTree([e.column],function(e){e.fixed=n}),t.refreshColumn()}}}function _(){var e=i.globalStore;return e?e.clipboard||"":(e=i.config)&&e.clipboard?e.clipboard:null}function d(e){var t,n;try{t=e,o||((o=document.createElement("textarea")).id="$XECopy",(n=o.style).width="48px",n.height="24px",n.position="fixed",n.zIndex="0",n.left="-500px",n.top="-500px",document.body.appendChild(o)),o.value=null==t?"":""+t,o.select(),o.setSelectionRange(0,o.value.length),document.execCommand("copy"),o.blur()}catch(e){}}function l(e,t){var n,a,o,l=e.$event,r=e.$table,s=e.row,e=e.column;s&&e&&(n=r.props.mouseConfig,o=r.getComputeMaps().computeMouseOpts.value,a="",n&&o.area?(t?r.triggerCutCellAreaEvent(l):r.triggerCopyCellAreaEvent(l),a=(n=_())?n.text:""):(a=u.default.toValueString(u.default.get(s,e.field)),o={text:a,html:""},(t=i.globalStore)?t.clipboard=o:i.config&&(i.config.clipboard=o)),(u.default.isFunction(c)?c:d)(a))}function r(t){return function(e){e=e.$grid;e&&e.commitProxy(t)}}function R(e){var u=e.$table,e=u.props.mouseConfig,t=u.getComputeMaps().computeMouseOpts.value,i=u.getTableData().visibleData,c=u.getTableColumn().visibleColumn,n=e&&t.area?u.getCellAreas():[];return u.getMergeCells().filter(function(e){var o=e.row,l=e.col,r=e.rowspan,s=e.colspan;return n.some(function(e){var t=e.rows,e=e.cols,n=g(u,i,t[0]),t=g(u,i,t[t.length-1]),a=p(c,e[0]),e=p(c,e[e.length-1]);return n<=o&&o+r-1<=t&&a<=l&&l+s-1<=e})})}function s(e){var t=e.$table,e=R(e);return e.length&&t.removeMergeCells(e),e}function m(e,t){var n=e.code,a=t.$table,o=t.$grid,l=t.row,r=t.column,s=t.type,u=a.props,i=u.editConfig,c=u.mouseConfig;switch(n){case"CLEAR_ALL_SORT":var d=a.getSortColumns();e.disabled=!d.length;break;case"CLEAR_ALL_FILTER":d=a.getCheckedFilters();e.disabled=!d.length;break;case"CLEAR_ALL_MERGE":var d=a.getMergeCells(),m=a.getMergeFooterItems();e.disabled=!d.length&&!m.length;break;case"CLEAR_MERGE_CELL":d=R(t);e.disabled=!d.length;break;case"COPY_TITLE":e.disabled=!r||"header"!==s;break;case"SELECT_ALL_AREA":m=a.getTableData().visibleData,d=a.getTableColumn().visibleColumn;e.disabled=!m.length||!d.length;break;case"SELECT_AREA_TO_LEFT":case"SELECT_AREA_TO_RIGHT":case"SELECT_AREA_TO_TOP":case"SELECT_AREA_TO_BOTTON":e.disabled=!r||!l;break;case"DELETE_CHECKBOX_ROW":m=a.getCheckboxRecords();e.disabled=!m.length;break;case"EDIT_CELL":case"CLEAR_CELL":case"CLEAR_ROW":case"COPY_CELL":case"CUT_CELL":case"PASTE_CELL":case"MERGE_OR_CLEAR":case"MERGE_CELL":case"REVERT_CELL":case"REVERT_ROW":case"DELETE_ROW":case"DELETE_AREA_ROW":case"CLEAR_SORT":case"SORT_ASC":case"SORT_DESC":case"CLEAR_FILTER":case"FILTER_CELL":case"EXPORT_ROW":case"OPEN_FIND":case"OPEN_REPLACE":case"HIDDEN_COLUMN":case"FIXED_LEFT_COLUMN":case"FIXED_RIGHT_COLUMN":case"CLEAR_FIXED_COLUMN":if(e.disabled=!r,r){var E=a.getComputeMaps().computeMouseOpts.value,f=!!r.parentId;switch(n){case"CLEAR_SORT":e.disabled=!r.sortable||!r.order;break;case"SORT_ASC":case"SORT_DESC":e.disabled=!r.sortable;break;case"FILTER_CELL":case"CLEAR_FILTER":e.disabled=!r.filters||!r.filters.length,e.disabled||"CLEAR_FILTER"===n&&(e.disabled=!r.filters.some(function(e){return e.checked}));break;case"REVERT_CELL":e.disabled=!l||!r.field||!a.isUpdateByRow(l,r.field);break;case"REVERT_ROW":e.disabled=!l||!r.field||!a.isUpdateByRow(l);break;case"OPEN_FIND":case"OPEN_REPLACE":e.disabled=!(c&&E.area);break;case"EDIT_CELL":e.disabled=!i||!r.editRender;break;case"COPY_CELL":case"CUT_CELL":case"PASTE_CELL":var C=c&&E.area?a.getCellAreas():[];e.disabled=1<C.length,e.disabled||"PASTE_CELL"===n&&(C=_(),e.disabled=!C||!C.text);break;case"MERGE_OR_CLEAR":case"MERGE_CELL":C=c&&E.area?a.getCellAreas():[];e.disabled=!C.length||1===C.length&&1===C[0].rows.length&&1===C[0].cols.length||!((e,t)=>{for(var n=e.$table,a=n.getTableData().visibleData,o=n.getTableColumn().visibleColumn,l={},r=0,s=t.length;r<s;r++)for(var u=t[r],i=u.rows,c=u.cols,d=0,m=i.length;d<m;d++)for(var E=i[d],f=g(n,a,E),C=0,_=c.length;C<_;C++){var R=c[C],R=f+":"+p(o,R);if(l[R])return;l[R]=!0}return 1})(t,C);break;case"FIXED_LEFT_COLUMN":e.disabled=f||"left"===r.fixed;break;case"FIXED_RIGHT_COLUMN":e.disabled=f||"right"===r.fixed;break;case"CLEAR_FIXED_COLUMN":e.disabled=f||!r.fixed}}break;case"COMMIT_PROXY_INITIAL":case"COMMIT_PROXY_QUERY":case"COMMIT_PROXY_RELOAD":case"COMMIT_PROXY_DELETE":case"COMMIT_PROXY_SAVE":e.disabled=!o}}function E(t){return t.options.forEach(function(e){e.forEach(function(e){m(e,t),e.children&&e.children.forEach(function(e){m(e,t)})})}),!0}function f(){return new Promise(function(t){var e,n;i.modal?(e=i.getComponent("VxeNumberInput"))?(n=(0,a.ref)(1),i.modal.alert({title:"请输入行数",width:220,maskClosable:!1,slots:{default:function(){return(0,a.h)(e,{modelValue:n.value,min:1,max:100,align:"center",controlConfig:{layout:"default"},style:{width:"100%"},"onUpdate:modelValue":function(e){n.value=e}})}}}).then(function(e){t("confirm"===e?{size:n.value||1}:{size:0})})):(console.error(i.getI18n("vxe.error.reqComp",["vxe-number-input"])),t({size:0})):t({size:0})})}function C(e){e&&e.copy&&(c=e.copy)}var t=e.VxeUIPluginMenu={setConfig:C,install:function(e,t){(i=e).checkVersion?i.checkVersion(i.tableVersion,4,11)||console.error("[@vxe-ui/plugin-menu 4.1.2] ".concat(i.getI18n("vxe.error.errorVersion",["vxe-table@".concat(i.tableVersion||"?"),"vxe-table v".concat(4,".").concat(11,"+")])," https://vxeui.com/other4/#/plugin-menu/install")):/^(4)\./.test(i.uiVersion||i.tableVersion)||console.error("[@vxe-ui/plugin-menu 4.1.2] Requires vxe-table 4.7.0+ version. https://vxeui.com/other4/#/plugin-menu/install"),C(t),i.menus.mixin({SYSTEM_PAGE_REFRESH:function(){location.reload()},SYSTEM_PAGE_FORWARD:function(){history.forward()},SYSTEM_PAGE_BACK:function(){history.back()},CLEAR_CELL:{menuMethod:function(e){var t,n,a=e.$table,o=e.row,e=e.column;o&&e&&(n=a.props.mouseConfig,t=a.getComputeMaps().computeMouseOpts.value,n&&t.area?(n=a.getCellAreas())&&n.length&&n.forEach(function(e){var n=e.rows;e.cols.forEach(function(t){n.forEach(function(e){a.clearData(e,t.field)})})}):a.clearData(o,e.field))}},CLEAR_ROW:{menuMethod:function(e){var t=e.$table,e=e.row;e&&t.clearData(e)}},CLEAR_CHECKBOX_ROW:{menuMethod:function(e){e=e.$table;e.clearData(e.getCheckboxRecords())}},CLEAR_AREA_ROW:{menuMethod:function(e){var t=e.$table,n=e.row,e=e.column,a=t.props.mouseConfig,o=t.getComputeMaps().computeMouseOpts.value;a&&o.area?(a&&o.area?t.getCellAreas():[]).forEach(function(e){e=e.rows;t.clearData(e)}):n&&e&&t.clearData(n)}},CLEAR_ALL:{menuMethod:function(e){e.$table.clearData()}},SELECT_ALL_AREA:{menuMethod:function(e){var e=e.$table,t=e.props.mouseConfig,n=e.getComputeMaps().computeMouseOpts.value;t&&n.area&&(t=e.getTableData().visibleData,n=e.getTableColumn().visibleColumn,e.setCellAreas([{startRow:u.default.first(t),endRow:u.default.last(t),startColumn:u.default.first(n),endColumn:u.default.last(n)}]))}},SELECT_AREA_TO_LEFT:{menuMethod:function(e){var t=e.$table,n=e.row,e=e.column,a=t.props.mouseConfig,o=t.getComputeMaps().computeMouseOpts.value;n&&e&&a&&o.area&&(a=t.getTableColumn().visibleColumn,1===(o=t.getCellAreas()).length?(o=o[0],t.setCellAreas([{startRow:u.default.first(o.rows),endRow:u.default.last(o.rows),startColumn:u.default.first(a),endColumn:u.default.last(o.cols)}],{column:e,row:n})):t.setCellAreas([{startRow:n,endRow:n,startColumn:u.default.first(a),endColumn:e}],{column:e,row:n}))}},SELECT_AREA_TO_RIGHT:{menuMethod:function(e){var t=e.$table,n=e.row,e=e.column,a=t.props.mouseConfig,o=t.getComputeMaps().computeMouseOpts.value;n&&e&&a&&o.area&&(a=t.getTableColumn().visibleColumn,1===(o=t.getCellAreas()).length?(o=o[0],t.setCellAreas([{startRow:u.default.first(o.rows),endRow:u.default.last(o.rows),startColumn:u.default.first(o.cols),endColumn:u.default.last(a)}],{column:e,row:n})):t.setCellAreas([{startRow:n,endRow:n,startColumn:e,endColumn:u.default.last(a)}],{column:e,row:n}))}},SELECT_AREA_TO_TOP:{menuMethod:function(e){var t=e.$table,n=e.row,e=e.column,a=t.props.mouseConfig,o=t.getComputeMaps().computeMouseOpts.value;n&&e&&a&&o.area&&(a=t.getTableData().visibleData,1===(o=t.getCellAreas()).length?(o=o[0],t.setCellAreas([{startRow:u.default.first(a),endRow:u.default.last(o.rows),startColumn:u.default.first(o.cols),endColumn:u.default.last(o.cols)}],{column:e,row:n})):t.setCellAreas([{startRow:u.default.first(a),endRow:n,startColumn:e,endColumn:e}],{column:e,row:n}))}},SELECT_AREA_TO_BOTTON:{menuMethod:function(e){var t=e.$table,n=e.row,e=e.column,a=t.props.mouseConfig,o=t.getComputeMaps().computeMouseOpts.value;n&&e&&a&&o.area&&(a=t.getTableData().visibleData,1===(o=t.getCellAreas()).length?(o=o[0],t.setCellAreas([{startRow:u.default.first(o.rows),endRow:u.default.last(a),startColumn:u.default.first(o.cols),endColumn:u.default.last(o.cols)}],{column:e,row:n})):t.setCellAreas([{startRow:n,endRow:u.default.last(a),startColumn:e,endColumn:e}],{column:e,row:n}))}},REVERT_CELL:{menuMethod:function(e){var t,n,a=e.$table,o=e.row,e=e.column;o&&e&&(n=a.props.mouseConfig,t=a.getComputeMaps().computeMouseOpts.value,n&&t.area?(n=a.getCellAreas())&&n.length&&n.forEach(function(e){var n=e.rows;e.cols.forEach(function(t){n.forEach(function(e){a.revertData(e,t.field)})})}):a.revertData(o,e.field))}},REVERT_ROW:{menuMethod:function(e){var t=e.$table,e=e.row;e&&t.revertData(e)}},REVERT_CHECKBOX_ROW:{menuMethod:function(e){e=e.$table;e.revertData(e.getCheckboxRecords())}},REVERT_ALL:{menuMethod:function(e){e.$table.revertData()}},COPY_TITLE:{menuMethod:function(e){e=e.column.getTitle();e&&(u.default.isFunction(c)?c:d)(e)}},COPY_CELL:{menuMethod:function(e){l(e)}},CUT_CELL:{menuMethod:function(e){l(e,!0)}},PASTE_CELL:{menuMethod:function(e){var t=e.$event,n=e.$table,a=e.row,e=e.column,o=n.props.mouseConfig,l=n.getComputeMaps().computeMouseOpts.value;o&&l.area?n.triggerPasteCellAreaEvent(t):(o=_())&&o.text&&u.default.set(a,e.field,o.text)}},MERGE_OR_CLEAR:{menuMethod:function(e){var t=e.$event,n=e.$table,a=n.getCellAreas(),e=R(e),o=!1,e=(e.length?n.removeMergeCells(e):(o=!0,n.setMergeCells(a.map(function(e){var t=e.rows,e=e.cols;return{row:t[0],col:e[0],rowspan:t.length,colspan:e.length}}))),a.map(function(e){return{rows:e.rows,cols:e.cols}}));n.dispatchEvent("cell-area-merge",{status:o,targetAreas:e},t)}},MERGE_CELL:{menuMethod:function(e){var t=e.$event,n=e.$table,a=n.getTableData().visibleData,o=n.getTableColumn().visibleColumn,l=n.getCellAreas();s(e),l.some(function(e){return e.rows.length===a.length||e.cols.length===o.length})?i.modal&&i.modal.message({content:i.getI18n("vxe.pro.area.mergeErr"),status:"error",id:"operErr"}):(n.setMergeCells(l.map(function(e){var t=e.rows,e=e.cols;return{row:t[0],col:e[0],rowspan:t.length,colspan:e.length}})),e=l.map(function(e){return{rows:e.rows,cols:e.cols}}),n.dispatchEvent("cell-area-merge",{status:!0,targetAreas:e},t))}},CLEAR_MERGE_CELL:{menuMethod:function(e){var t=e.$event,n=e.$table,e=s(e);e.length&&n.dispatchEvent("clear-cell-area-merge",{mergeCells:e},t)}},CLEAR_ALL_MERGE:{menuMethod:function(e){var t=e.$event,e=e.$table,n=e.getMergeCells(),a=e.getMergeFooterItems();e.clearMergeCells(),e.clearMergeFooterItems(),e.dispatchEvent("clear-merge",{mergeCells:n,mergeFooterItems:a},t)}},EDIT_CELL:{menuMethod:function(e){var t=e.$table,n=e.row,e=e.column;t.setEditCell?t.setEditCell(n,e):t.setActiveCell(n,e.field)}},EDIT_ROW:{menuMethod:function(e){var t=e.$table,e=e.row;t.setEditRow?t.setEditRow(e):t.setActiveRow(e)}},INSERT_ROW:{menuMethod:function(e){var t=e.$table,n=e.menu,a=e.column,o=t.props.mouseConfig,l=t.getComputeMaps().computeMouseOpts.value;t.insert(n.params||{}).then(function(e){e=e.rows;a&&o&&l.area&&t.setCellAreas([{startRow:u.default.first(e),endRow:u.default.last(e),startColumn:a,endColumn:a}])})}},INSERT_AT_ROW:{menuMethod:function(e){var t=e.$table,n=e.menu,a=e.row,o=e.column,l=t.props.mouseConfig,r=t.getComputeMaps().computeMouseOpts.value;(a?t.insertAt(n.params||{},a):t.insert(n.params||{})).then(function(e){e=e.rows;o&&l&&r.area&&t.setCellAreas([{startRow:u.default.first(e),endRow:u.default.last(e),startColumn:o,endColumn:o}])})}},BATCH_INSERT_AT_ROW:{menuMethod:function(e){var t=e.$table,n=e.menu,a=e.row,o=e.column,l=t.props.mouseConfig,r=t.getComputeMaps().computeMouseOpts.value;f().then(function(e){var e=e.size;e&&(e=u.default.range(0,e).map(function(){return Object.assign({},n.params)}),(a?t.insertAt(e,a):t.insert(e)).then(function(e){e=e.rows;o&&l&&r.area&&t.setCellAreas([{startRow:u.default.first(e),endRow:u.default.last(e),startColumn:o,endColumn:o}])}))})}},INSERT_NEXT_AT_ROW:{menuMethod:function(e){var t=e.$table,n=e.menu,a=e.row,o=e.column,l=t.props.mouseConfig,r=t.getComputeMaps().computeMouseOpts.value;(a?t.insertNextAt(n.params||{},a):t.insert(n.params||{})).then(function(e){e=e.rows;o&&l&&r.area&&t.setCellAreas([{startRow:u.default.first(e),endRow:u.default.last(e),startColumn:o,endColumn:o}])})}},BATCH_INSERT_NEXT_AT_ROW:{menuMethod:function(e){var t=e.$table,n=e.menu,a=e.row,o=e.column,l=t.props.mouseConfig,r=t.getComputeMaps().computeMouseOpts.value;f().then(function(e){var e=e.size;e&&(e=u.default.range(0,e).map(function(){return Object.assign({},n.params)}),(a?t.insertNextAt(e,a):t.insert(e)).then(function(e){e=e.rows;o&&l&&r.area&&t.setCellAreas([{startRow:u.default.first(e),endRow:u.default.last(e),startColumn:o,endColumn:o}])}))})}},INSERT_ACTIVED_ROW:{menuMethod:function(e){var t=e.$table,n=e.column,a=e.menu.params||[],e=Object.assign({},a[0]||{});t.insert(e).then(function(e){e=e.row;t.setEditCell?t.setEditCell(e,a[1]||n):t.setActiveCell(e,a[1]||n.field)})}},INSERT_EDIT_ROW:{menuMethod:function(e){var t=e.$table,n=e.column,a=e.menu.params||[],e=Object.assign({},a[0]||{});t.insert(e).then(function(e){e=e.row;t.setEditCell?t.setEditCell(e,a[1]||n):t.setActiveCell(e,a[1]||n.field)})}},INSERT_AT_ACTIVED_ROW:{menuMethod:function(e){var t=e.$table,n=e.row,a=e.column,o=e.menu.params||[],e=Object.assign({},o[0]||{});(n?t.insertAt(e,n):t.insert(e)).then(function(e){e=e.row;t.setEditCell?t.setEditCell(e,o[1]||a):t.setActiveCell(e,o[1]||a.field)})}},INSERT_AT_EDIT_ROW:{menuMethod:function(e){var t=e.$table,n=e.row,a=e.column,o=e.menu.params||[],e=Object.assign({},o[0]||{});(n?t.insertAt(e,n):t.insert(e)).then(function(e){e=e.row;t.setEditCell?t.setEditCell(e,o[1]||a):t.setActiveCell(e,o[1]||a.field)})}},BATCH_INSERT_AT_EDIT_ROW:{menuMethod:function(e){var t=e.$table,n=e.row,a=e.column,o=e.menu.params||[];f().then(function(e){var e=e.size;e&&(e=u.default.range(0,e).map(function(){return Object.assign({},o[0])}),(n?t.insertAt(e,n):t.insert(e)).then(function(e){e=e.row;t.setEditCell?t.setEditCell(e,o[1]||a):t.setActiveCell(e,o[1]||a.field)}))})}},INSERT_NEXT_AT_EDIT_ROW:{menuMethod:function(e){var t=e.$table,n=e.row,a=e.column,o=e.menu.params||[],e=Object.assign({},o[0]||{});(n?t.insertNextAt(e,n):t.insert(e)).then(function(e){e=e.row;t.setEditCell?t.setEditCell(e,o[1]||a):t.setActiveCell(e,o[1]||a.field)})}},BATCH_INSERT_NEXT_AT_EDIT_ROW:{menuMethod:function(e){var t=e.$table,n=e.row,a=e.column,o=e.menu.params||[];f().then(function(e){var e=e.size;e&&(e=u.default.range(0,e).map(function(){return Object.assign({},o[0])}),(n?t.insertNextAt(e,n):t.insert(e)).then(function(e){e=e.row;t.setEditCell?t.setEditCell(e,o[1]||a):t.setActiveCell(e,o[1]||a.field)}))})}},DELETE_ROW:{menuMethod:function(e){var t=e.$table,e=e.row;e&&t.remove(e)}},DELETE_AREA_ROW:{menuMethod:function(e){var t=e.$table,e=e.row,n=t.props.mouseConfig,a=t.getComputeMaps().computeMouseOpts.value;n&&a.area?t.getCellAreas().forEach(function(e){e=e.rows;t.remove(e)}):e&&t.remove(e)}},DELETE_CHECKBOX_ROW:{menuMethod:function(e){e.$table.removeCheckboxRow()}},DELETE_ALL:{menuMethod:function(e){e.$table.remove()}},CLEAR_SORT:{menuMethod:function(e){var t=e.$event,n=e.$table,e=e.column;e&&n.triggerSortEvent(t,e,null)}},CLEAR_ALL_SORT:{menuMethod:function(e){var t=e.$event,e=e.$table,n=e.getSortColumns();n.length&&(e.clearSort(),e.dispatchEvent("clear-sort",{sortList:n},t))}},SORT_ASC:{menuMethod:function(e){var t=e.$event,n=e.$table,e=e.column;e&&n.triggerSortEvent(t,e,"asc")}},SORT_DESC:{menuMethod:function(e){var t=e.$event,n=e.$table,e=e.column;e&&n.triggerSortEvent(t,e,"desc")}},CLEAR_FILTER:{menuMethod:function(e){var t=e.$event,n=e.$table,e=e.column;e&&(n.handleClearFilter(e),n.confirmFilterEvent(t))}},CLEAR_ALL_FILTER:{menuMethod:function(e){var t=e.$event,e=e.$table,n=e.getCheckedFilters();n.length&&(e.clearFilter(),e.dispatchEvent("clear-filter",{filterList:n},t))}},FILTER_CELL:{menuMethod:function(e){var t,n=e.$table,a=e.row,e=e.column;a&&e&&(t=e.field,(e=e.filters).length)&&((e=e[0]).data=u.default.get(a,t),e.checked=!0,n.updateData())}},EXPORT_ROW:{menuMethod:function(e){var t=e.$table,n=e.menu,e=e.row;e&&t.exportData(u.default.assign({},n.params?n.params[0]:{},{data:[e]}))}},EXPORT_CHECKBOX_ROW:{menuMethod:function(e){var t=e.$table,e=e.menu,n={data:t.getCheckboxRecords()};t.exportData(u.default.assign({},e.params?e.params[0]:{},n))}},EXPORT_ALL:{menuMethod:function(e){e.$table.exportData(e.menu.params)}},PRINT_ALL:{menuMethod:function(e){e.$table.print(e.menu.params)}},PRINT_CHECKBOX_ROW:{menuMethod:function(e){var t=e.$table,e=e.menu,n={data:t.getCheckboxRecords()};t.print(u.default.assign(n,e.params))}},OPEN_FIND:{menuMethod:function(e){var t=e.$event;e.$table.triggerFNROpenEvent(t,"find")}},OPEN_REPLACE:{menuMethod:function(e){var t=e.$event;e.$table.triggerFNROpenEvent(t,"replace")}},HIDDEN_COLUMN:{menuMethod:function(e){var t=e.$table,e=e.column;e&&t.hideColumn(e)}},FIXED_LEFT_COLUMN:n("left"),FIXED_RIGHT_COLUMN:n("right"),CLEAR_FIXED_COLUMN:n(null),RESET_COLUMN:{menuMethod:function(e){e.$table.resetColumn({visible:!0,resizable:!1})}},RESET_RESIZABLE:{menuMethod:function(e){e.$table.resetColumn({visible:!1,resizable:!0})}},RESET_ALL:{menuMethod:function(e){e.$table.resetColumn(!0)}},COMMIT_PROXY_INITIAL:{menuMethod:r("initial")},COMMIT_PROXY_QUERY:{menuMethod:r("query")},COMMIT_PROXY_RELOAD:{menuMethod:r("reload")},COMMIT_PROXY_DELETE:{menuMethod:r("delete")},COMMIT_PROXY_SAVE:{menuMethod:r("save")}}),i.interceptor.add("event.showMenu",E)}};"undefined"!=typeof window&&window.VxeUI&&window.VxeUI.use&&window.VxeUI.use(t),e.default=t});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vxe-ui/plugin-menu",
3
- "version": "4.1.0",
3
+ "version": "4.1.2",
4
4
  "description": "Vxe UI plug-in supports context menu.",
5
5
  "scripts": {
6
6
  "lib": "gulp build"
@@ -51,8 +51,8 @@
51
51
  "sass": "^1.55.0",
52
52
  "typescript": "~4.7.4",
53
53
  "vue": "3.4.27",
54
- "vxe-pc-ui": "^4.8.19",
55
- "vxe-table": "^4.15.2"
54
+ "vxe-pc-ui": "^4.10.18",
55
+ "vxe-table": "^4.17.0"
56
56
  },
57
57
  "repository": {
58
58
  "type": "git",