@vxe-ui/plugin-menu 4.0.1 → 4.0.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/README.md CHANGED
@@ -82,7 +82,7 @@ VxeUI.use(VxeUIPluginMenu)
82
82
  ```html
83
83
  <vxe-table
84
84
  :data="tableData"
85
- :context-menu="contextMenu"
85
+ :menu-config="menuConfig"
86
86
  :edit-config="{trigger: 'click', mode: 'cell'}">
87
87
  <vxe-column type="seq" width="60"></vxe-column>
88
88
  <vxe-column field="name" title="Name" :edit-render="{name: 'input'}"></vxe-column>
@@ -100,7 +100,7 @@ export default {
100
100
  { id: 101, name: 'test2', age: 32, sex: '0' },
101
101
  { id: 102, name: 'test3', age: 36, sex: '1' }
102
102
  ],
103
- contextMenu: {
103
+ menuConfig: {
104
104
  body: {
105
105
  options: [
106
106
  [
@@ -82,8 +82,8 @@ function handleCopyOrCut(params, isCut) {
82
82
  row = params.row,
83
83
  column = params.column;
84
84
  if (row && column) {
85
- var props = $table.props;
86
- var mouseConfig = props.mouseConfig;
85
+ var tableProps = $table.props;
86
+ var mouseConfig = tableProps.mouseConfig;
87
87
  var _$table$getComputeMap = $table.getComputeMaps(),
88
88
  computeMouseOpts = _$table$getComputeMap.computeMouseOpts;
89
89
  var mouseOpts = computeMouseOpts.value;
@@ -141,8 +141,8 @@ function checkCellOverlay(params, cellAreas) {
141
141
  }
142
142
  function getBeenMerges(params) {
143
143
  var $table = params.$table;
144
- var props = $table.props;
145
- var mouseConfig = props.mouseConfig;
144
+ var tableProps = $table.props;
145
+ var mouseConfig = tableProps.mouseConfig;
146
146
  var _$table$getComputeMap2 = $table.getComputeMaps(),
147
147
  computeMouseOpts = _$table$getComputeMap2.computeMouseOpts;
148
148
  var mouseOpts = computeMouseOpts.value;
@@ -181,9 +181,9 @@ function checkPrivilege(item, params) {
181
181
  var $table = params.$table,
182
182
  row = params.row,
183
183
  column = params.column;
184
- var props = $table.props;
185
- var editConfig = props.editConfig,
186
- mouseConfig = props.mouseConfig;
184
+ var tableProps = $table.props;
185
+ var editConfig = tableProps.editConfig,
186
+ mouseConfig = tableProps.mouseConfig;
187
187
  switch (code) {
188
188
  case 'CLEAR_ALL_SORT':
189
189
  {
@@ -222,6 +222,7 @@ function checkPrivilege(item, params) {
222
222
  case 'REVERT_ROW':
223
223
  case 'INSERT_AT_ROW':
224
224
  case 'INSERT_AT_ACTIVED_ROW':
225
+ case 'INSERT_AT_EDIT_ROW':
225
226
  case 'DELETE_ROW':
226
227
  case 'DELETE_AREA_ROW':
227
228
  case 'CLEAR_SORT':
@@ -345,6 +346,9 @@ function pluginSetup(options) {
345
346
  handleCopy = options.copy;
346
347
  }
347
348
  }
349
+ /**
350
+ * 基于 Vxe UI 的扩展插件,支持右键菜单
351
+ */
348
352
  var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
349
353
  setConfig: pluginSetup,
350
354
  install: function install(core, options) {
@@ -364,8 +368,8 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
364
368
  row = params.row,
365
369
  column = params.column;
366
370
  if (row && column) {
367
- var props = $table.props;
368
- var mouseConfig = props.mouseConfig;
371
+ var tableProps = $table.props;
372
+ var mouseConfig = tableProps.mouseConfig;
369
373
  var _$table$getComputeMap4 = $table.getComputeMaps(),
370
374
  computeMouseOpts = _$table$getComputeMap4.computeMouseOpts;
371
375
  var mouseOpts = computeMouseOpts.value;
@@ -427,8 +431,8 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
427
431
  row = params.row,
428
432
  column = params.column;
429
433
  if (row && column) {
430
- var props = $table.props;
431
- var mouseConfig = props.mouseConfig;
434
+ var tableProps = $table.props;
435
+ var mouseConfig = tableProps.mouseConfig;
432
436
  var _$table$getComputeMap5 = $table.getComputeMaps(),
433
437
  computeMouseOpts = _$table$getComputeMap5.computeMouseOpts;
434
438
  var mouseOpts = computeMouseOpts.value;
@@ -506,8 +510,8 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
506
510
  $table = params.$table,
507
511
  row = params.row,
508
512
  column = params.column;
509
- var props = $table.props;
510
- var mouseConfig = props.mouseConfig;
513
+ var tableProps = $table.props;
514
+ var mouseConfig = tableProps.mouseConfig;
511
515
  var _$table$getComputeMap6 = $table.getComputeMaps(),
512
516
  computeMouseOpts = _$table$getComputeMap6.computeMouseOpts;
513
517
  var mouseOpts = computeMouseOpts.value;
@@ -804,8 +808,8 @@ var VxeUIPluginMenu = exports.VxeUIPluginMenu = {
804
808
  DELETE_AREA_ROW: {
805
809
  menuMethod: function menuMethod(params) {
806
810
  var $table = params.$table;
807
- var props = $table.props;
808
- var mouseConfig = props.mouseConfig;
811
+ var tableProps = $table.props;
812
+ var mouseConfig = tableProps.mouseConfig;
809
813
  var _$table$getComputeMap7 = $table.getComputeMaps(),
810
814
  computeMouseOpts = _$table$getComputeMap7.computeMouseOpts;
811
815
  var mouseOpts = computeMouseOpts.value;
package/dist/index.umd.js CHANGED
@@ -8,7 +8,7 @@
8
8
  exports: {}
9
9
  };
10
10
  factory(mod.exports, global.XEUtils);
11
- global.VxeUIPluginExportPDF = mod.exports;
11
+ global.VxeUIPluginMenu = mod.exports;
12
12
  }
13
13
  })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _xeUtils) {
14
14
  "use strict";
@@ -95,8 +95,8 @@
95
95
  row = params.row,
96
96
  column = params.column;
97
97
  if (row && column) {
98
- var props = $table.props;
99
- var mouseConfig = props.mouseConfig;
98
+ var tableProps = $table.props;
99
+ var mouseConfig = tableProps.mouseConfig;
100
100
  var _$table$getComputeMap = $table.getComputeMaps(),
101
101
  computeMouseOpts = _$table$getComputeMap.computeMouseOpts;
102
102
  var mouseOpts = computeMouseOpts.value;
@@ -154,8 +154,8 @@
154
154
  }
155
155
  function getBeenMerges(params) {
156
156
  var $table = params.$table;
157
- var props = $table.props;
158
- var mouseConfig = props.mouseConfig;
157
+ var tableProps = $table.props;
158
+ var mouseConfig = tableProps.mouseConfig;
159
159
  var _$table$getComputeMap2 = $table.getComputeMaps(),
160
160
  computeMouseOpts = _$table$getComputeMap2.computeMouseOpts;
161
161
  var mouseOpts = computeMouseOpts.value;
@@ -194,9 +194,9 @@
194
194
  var $table = params.$table,
195
195
  row = params.row,
196
196
  column = params.column;
197
- var props = $table.props;
198
- var editConfig = props.editConfig,
199
- mouseConfig = props.mouseConfig;
197
+ var tableProps = $table.props;
198
+ var editConfig = tableProps.editConfig,
199
+ mouseConfig = tableProps.mouseConfig;
200
200
  switch (code) {
201
201
  case 'CLEAR_ALL_SORT':
202
202
  {
@@ -235,6 +235,7 @@
235
235
  case 'REVERT_ROW':
236
236
  case 'INSERT_AT_ROW':
237
237
  case 'INSERT_AT_ACTIVED_ROW':
238
+ case 'INSERT_AT_EDIT_ROW':
238
239
  case 'DELETE_ROW':
239
240
  case 'DELETE_AREA_ROW':
240
241
  case 'CLEAR_SORT':
@@ -358,6 +359,9 @@
358
359
  handleCopy = options.copy;
359
360
  }
360
361
  }
362
+ /**
363
+ * 基于 Vxe UI 的扩展插件,支持右键菜单
364
+ */
361
365
  var VxeUIPluginMenu = _exports.VxeUIPluginMenu = {
362
366
  setConfig: pluginSetup,
363
367
  install: function install(core, options) {
@@ -377,8 +381,8 @@
377
381
  row = params.row,
378
382
  column = params.column;
379
383
  if (row && column) {
380
- var props = $table.props;
381
- var mouseConfig = props.mouseConfig;
384
+ var tableProps = $table.props;
385
+ var mouseConfig = tableProps.mouseConfig;
382
386
  var _$table$getComputeMap4 = $table.getComputeMaps(),
383
387
  computeMouseOpts = _$table$getComputeMap4.computeMouseOpts;
384
388
  var mouseOpts = computeMouseOpts.value;
@@ -440,8 +444,8 @@
440
444
  row = params.row,
441
445
  column = params.column;
442
446
  if (row && column) {
443
- var props = $table.props;
444
- var mouseConfig = props.mouseConfig;
447
+ var tableProps = $table.props;
448
+ var mouseConfig = tableProps.mouseConfig;
445
449
  var _$table$getComputeMap5 = $table.getComputeMaps(),
446
450
  computeMouseOpts = _$table$getComputeMap5.computeMouseOpts;
447
451
  var mouseOpts = computeMouseOpts.value;
@@ -519,8 +523,8 @@
519
523
  $table = params.$table,
520
524
  row = params.row,
521
525
  column = params.column;
522
- var props = $table.props;
523
- var mouseConfig = props.mouseConfig;
526
+ var tableProps = $table.props;
527
+ var mouseConfig = tableProps.mouseConfig;
524
528
  var _$table$getComputeMap6 = $table.getComputeMaps(),
525
529
  computeMouseOpts = _$table$getComputeMap6.computeMouseOpts;
526
530
  var mouseOpts = computeMouseOpts.value;
@@ -817,8 +821,8 @@
817
821
  DELETE_AREA_ROW: {
818
822
  menuMethod: function menuMethod(params) {
819
823
  var $table = params.$table;
820
- var props = $table.props;
821
- var mouseConfig = props.mouseConfig;
824
+ var tableProps = $table.props;
825
+ var mouseConfig = tableProps.mouseConfig;
822
826
  var _$table$getComputeMap7 = $table.getComputeMaps(),
823
827
  computeMouseOpts = _$table$getComputeMap7.computeMouseOpts;
824
828
  var mouseOpts = computeMouseOpts.value;
@@ -1 +1 @@
1
- ((e,t)=>{"function"==typeof define&&define.amd?define("@vxe-ui/plugin-menu",["exports","xe-utils"],t):"undefined"!=typeof exports?t(exports,require("xe-utils")):(t(t={},e.XEUtils),e.VxeUIPluginExportPDF=t)})("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:this,function(e,i){var u,c;Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.VxeUIPluginMenu=void 0,i=(t=i)&&t.__esModule?t:{default:t};var a,_=function(e,t){return i.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;i.default.eachTree([e.column],function(e){e.fixed=n}),t.refreshColumn()}}}function C(){var e=u.globalStore;return e?e.clipboard||"":(e=u.config)&&e.clipboard?e.clipboard:null}function E(e){var t,n;try{t=e,a||((a=document.createElement("textarea")).id="$XECopy",(n=a.style).width="48px",n.height="24px",n.position="fixed",n.zIndex="0",n.left="-500px",n.top="-500px",document.body.appendChild(a)),a.value=null==t?"":""+t,a.select(),a.setSelectionRange(0,a.value.length),document.execCommand("copy"),a.blur()}catch(e){}}function o(e,t){var n,a,o,r=e.$event,l=e.$table,s=e.row,e=e.column;s&&e&&(n=l.props.mouseConfig,o=l.getComputeMaps().computeMouseOpts.value,a="",n&&o.area?(t?l.triggerCutCellAreaEvent(r):l.triggerCopyCellAreaEvent(r),a=(n=C())?n.text:""):(a=i.default.toValueString(i.default.get(s,e.field)),o={text:a,html:""},(t=u.globalStore)?t.clipboard=o:u.config&&(u.config.clipboard=o)),(i.default.isFunction(c)?c:E)(a))}function m(e){var i=e.$table,e=i.props.mouseConfig,t=i.getComputeMaps().computeMouseOpts.value,u=i.getTableData().visibleData,c=i.getTableColumn().visibleColumn,n=e&&t.area?i.getCellAreas():[];return i.getMergeCells().filter(function(e){var o=e.row,r=e.col,l=e.rowspan,s=e.colspan;return n.some(function(e){var t=e.rows,e=e.cols,n=g(i,u,t[0]),t=g(i,u,t[t.length-1]),a=_(c,e[0]),e=_(c,e[e.length-1]);return n<=o&&o+l-1<=t&&a<=r&&r+s-1<=e})})}function l(e){var t=e.$table,e=m(e);return e.length&&t.removeMergeCells(e),e}function r(e,t){var n=e.code,a=t.$table,o=t.row,r=t.column,l=a.props,s=l.editConfig,i=l.mouseConfig;switch(n){case"CLEAR_ALL_SORT":var u=a.getSortColumns();e.disabled=!u.length;break;case"CLEAR_ALL_FILTER":u=a.getCheckedFilters();e.disabled=!u.length;break;case"CLEAR_ALL_MERGE":var u=a.getMergeCells(),c=a.getMergeFooterItems();e.disabled=!u.length&&!c.length;break;case"CLEAR_MERGE_CELL":u=m(t);e.disabled=!u.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"INSERT_AT_ROW":case"INSERT_AT_ACTIVED_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,d=!!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=!o||!r.field||!a.isUpdateByRow(o,r.field);break;case"REVERT_ROW":e.disabled=!o||!r.field||!a.isUpdateByRow(o);break;case"OPEN_FIND":case"OPEN_REPLACE":e.disabled=!(i&&E.area);break;case"EDIT_CELL":e.disabled=!s||!r.editRender;break;case"COPY_CELL":case"CUT_CELL":case"PASTE_CELL":var f=i&&E.area?a.getCellAreas():[];e.disabled=1<f.length,e.disabled||"PASTE_CELL"===n&&(f=C(),e.disabled=!f||!f.text);break;case"MERGE_OR_CLEAR":case"MERGE_CELL":f=i&&E.area?a.getCellAreas():[];e.disabled=!f.length||1===f.length&&1===f[0].rows.length&&1===f[0].cols.length||!((e,t)=>{for(var n=e.$table,a=n.getTableData().visibleData,o=n.getTableColumn().visibleColumn,r={},l=0,s=t.length;l<s;l++)for(var i=t[l],u=i.rows,c=i.cols,E=0,d=u.length;E<d;E++)for(var f=u[E],C=g(n,a,f),m=0,R=c.length;m<R;m++){var L=c[m],L=C+":"+_(o,L);if(r[L])return;r[L]=!0}return 1})(t,f);break;case"FIXED_LEFT_COLUMN":e.disabled=d||"left"===r.fixed;break;case"FIXED_RIGHT_COLUMN":e.disabled=d||"right"===r.fixed;break;case"CLEAR_FIXED_COLUMN":e.disabled=d||!r.fixed}}}}function s(t){return t.options.forEach(function(e){e.forEach(function(e){r(e,t),e.children&&e.children.forEach(function(e){r(e,t)})})}),!0}function d(e){e&&e.copy&&(c=e.copy)}var t=e.VxeUIPluginMenu={setConfig:d,install:function(e,t){u=e,/^(4)\./.test(u.uiVersion)||console.error("[plugin-menu 4.x] Version 4.x is required"),d(t),u.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_ALL:{menuMethod:function(e){e.$table.clearData()}},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_CELL:{menuMethod:function(e){o(e)}},CUT_CELL:{menuMethod:function(e){o(e,!0)}},PASTE_CELL:{menuMethod:function(e){var t=e.$event,n=e.$table,a=e.row,e=e.column,o=n.props.mouseConfig,r=n.getComputeMaps().computeMouseOpts.value;o&&r.area?n.triggerPasteCellAreaEvent(t):(o=C())&&o.text&&i.default.set(a,e.field,o.text)}},MERGE_OR_CLEAR:{menuMethod:function(e){var t=e.$event,n=e.$table,a=n.getCellAreas(),e=m(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,r=n.getCellAreas();l(e),r.some(function(e){return e.rows.length===a.length||e.cols.length===o.length})?u.modal&&u.modal.message({content:u.getI18n("vxe.pro.area.mergeErr"),status:"error",id:"operErr"}):(n.setMergeCells(r.map(function(e){var t=e.rows,e=e.cols;return{row:t[0],col:e[0],rowspan:t.length,colspan:e.length}})),e=r.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=l(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){e.$table.insert(e.menu.params)}},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_ROW:{menuMethod:function(e){var t=e.$table,n=e.row;n&&t.insertAt(e.menu.params,n)}},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)}))}},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=t.props.mouseConfig,n=t.getComputeMaps().computeMouseOpts.value;return(e&&n.area?t.getCellAreas():[]).forEach(function(e){e=e.rows;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=i.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(i.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(i.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(i.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)}}}),u.interceptor.add("event.showMenu",s)}};"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"],t):"undefined"!=typeof exports?t(exports,require("xe-utils")):(t(t={},e.XEUtils),e.VxeUIPluginMenu=t)})("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:this,function(e,i){var u,c;Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.VxeUIPluginMenu=void 0,i=(t=i)&&t.__esModule?t:{default:t};var a,L=function(e,t){return i.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;i.default.eachTree([e.column],function(e){e.fixed=n}),t.refreshColumn()}}}function C(){var e=u.globalStore;return e?e.clipboard||"":(e=u.config)&&e.clipboard?e.clipboard:null}function E(e){var t,n;try{t=e,a||((a=document.createElement("textarea")).id="$XECopy",(n=a.style).width="48px",n.height="24px",n.position="fixed",n.zIndex="0",n.left="-500px",n.top="-500px",document.body.appendChild(a)),a.value=null==t?"":""+t,a.select(),a.setSelectionRange(0,a.value.length),document.execCommand("copy"),a.blur()}catch(e){}}function o(e,t){var n,a,o,r=e.$event,l=e.$table,s=e.row,e=e.column;s&&e&&(n=l.props.mouseConfig,o=l.getComputeMaps().computeMouseOpts.value,a="",n&&o.area?(t?l.triggerCutCellAreaEvent(r):l.triggerCopyCellAreaEvent(r),a=(n=C())?n.text:""):(a=i.default.toValueString(i.default.get(s,e.field)),o={text:a,html:""},(t=u.globalStore)?t.clipboard=o:u.config&&(u.config.clipboard=o)),(i.default.isFunction(c)?c:E)(a))}function m(e){var i=e.$table,e=i.props.mouseConfig,t=i.getComputeMaps().computeMouseOpts.value,u=i.getTableData().visibleData,c=i.getTableColumn().visibleColumn,n=e&&t.area?i.getCellAreas():[];return i.getMergeCells().filter(function(e){var o=e.row,r=e.col,l=e.rowspan,s=e.colspan;return n.some(function(e){var t=e.rows,e=e.cols,n=g(i,u,t[0]),t=g(i,u,t[t.length-1]),a=L(c,e[0]),e=L(c,e[e.length-1]);return n<=o&&o+l-1<=t&&a<=r&&r+s-1<=e})})}function l(e){var t=e.$table,e=m(e);return e.length&&t.removeMergeCells(e),e}function r(e,t){var n=e.code,a=t.$table,o=t.row,r=t.column,l=a.props,s=l.editConfig,i=l.mouseConfig;switch(n){case"CLEAR_ALL_SORT":var u=a.getSortColumns();e.disabled=!u.length;break;case"CLEAR_ALL_FILTER":u=a.getCheckedFilters();e.disabled=!u.length;break;case"CLEAR_ALL_MERGE":var u=a.getMergeCells(),c=a.getMergeFooterItems();e.disabled=!u.length&&!c.length;break;case"CLEAR_MERGE_CELL":u=m(t);e.disabled=!u.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"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=!r,r){var E=a.getComputeMaps().computeMouseOpts.value,d=!!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=!o||!r.field||!a.isUpdateByRow(o,r.field);break;case"REVERT_ROW":e.disabled=!o||!r.field||!a.isUpdateByRow(o);break;case"OPEN_FIND":case"OPEN_REPLACE":e.disabled=!(i&&E.area);break;case"EDIT_CELL":e.disabled=!s||!r.editRender;break;case"COPY_CELL":case"CUT_CELL":case"PASTE_CELL":var f=i&&E.area?a.getCellAreas():[];e.disabled=1<f.length,e.disabled||"PASTE_CELL"===n&&(f=C(),e.disabled=!f||!f.text);break;case"MERGE_OR_CLEAR":case"MERGE_CELL":f=i&&E.area?a.getCellAreas():[];e.disabled=!f.length||1===f.length&&1===f[0].rows.length&&1===f[0].cols.length||!((e,t)=>{for(var n=e.$table,a=n.getTableData().visibleData,o=n.getTableColumn().visibleColumn,r={},l=0,s=t.length;l<s;l++)for(var i=t[l],u=i.rows,c=i.cols,E=0,d=u.length;E<d;E++)for(var f=u[E],C=g(n,a,f),m=0,R=c.length;m<R;m++){var _=c[m],_=C+":"+L(o,_);if(r[_])return;r[_]=!0}return 1})(t,f);break;case"FIXED_LEFT_COLUMN":e.disabled=d||"left"===r.fixed;break;case"FIXED_RIGHT_COLUMN":e.disabled=d||"right"===r.fixed;break;case"CLEAR_FIXED_COLUMN":e.disabled=d||!r.fixed}}}}function s(t){return t.options.forEach(function(e){e.forEach(function(e){r(e,t),e.children&&e.children.forEach(function(e){r(e,t)})})}),!0}function d(e){e&&e.copy&&(c=e.copy)}var t=e.VxeUIPluginMenu={setConfig:d,install:function(e,t){u=e,/^(4)\./.test(u.uiVersion)||console.error("[plugin-menu 4.x] Version 4.x is required"),d(t),u.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_ALL:{menuMethod:function(e){e.$table.clearData()}},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_CELL:{menuMethod:function(e){o(e)}},CUT_CELL:{menuMethod:function(e){o(e,!0)}},PASTE_CELL:{menuMethod:function(e){var t=e.$event,n=e.$table,a=e.row,e=e.column,o=n.props.mouseConfig,r=n.getComputeMaps().computeMouseOpts.value;o&&r.area?n.triggerPasteCellAreaEvent(t):(o=C())&&o.text&&i.default.set(a,e.field,o.text)}},MERGE_OR_CLEAR:{menuMethod:function(e){var t=e.$event,n=e.$table,a=n.getCellAreas(),e=m(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,r=n.getCellAreas();l(e),r.some(function(e){return e.rows.length===a.length||e.cols.length===o.length})?u.modal&&u.modal.message({content:u.getI18n("vxe.pro.area.mergeErr"),status:"error",id:"operErr"}):(n.setMergeCells(r.map(function(e){var t=e.rows,e=e.cols;return{row:t[0],col:e[0],rowspan:t.length,colspan:e.length}})),e=r.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=l(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){e.$table.insert(e.menu.params)}},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_ROW:{menuMethod:function(e){var t=e.$table,n=e.row;n&&t.insertAt(e.menu.params,n)}},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)}))}},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=t.props.mouseConfig,n=t.getComputeMaps().computeMouseOpts.value;return(e&&n.area?t.getCellAreas():[]).forEach(function(e){e=e.rows;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=i.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(i.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(i.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(i.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)}}}),u.interceptor.add("event.showMenu",s)}};"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.0.1",
3
+ "version": "4.0.3",
4
4
  "description": "Vxe UI plug-in supports context menu.",
5
5
  "scripts": {
6
6
  "lib": "gulp build"