@fecp/designer 5.4.106 → 5.4.107

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.
Files changed (63) hide show
  1. package/es/designer/package.json.mjs +1 -1
  2. package/es/designer/src/packages/dialog/useDialogDialog.mjs +1 -1
  3. package/es/designer/src/packages/dialogGlobal/useDialogGlobalDialog.mjs +1 -1
  4. package/es/designer/src/packages/form/property/widgets.vue.mjs +2 -2
  5. package/es/designer.css +2 -2
  6. package/es/node_modules/vxe-table/es/components.mjs +2 -1
  7. package/es/node_modules/vxe-table/es/grid/index.mjs +5 -1
  8. package/es/node_modules/vxe-table/es/grid/src/grid.mjs +20 -24
  9. package/es/node_modules/vxe-table/es/locale/lang/zh-CN.mjs +0 -6
  10. package/es/node_modules/vxe-table/es/table/module/custom/hook.mjs +8 -25
  11. package/es/node_modules/vxe-table/es/table/module/custom/panel.mjs +9 -14
  12. package/es/node_modules/vxe-table/es/table/module/export/export-panel.mjs +5 -11
  13. package/es/node_modules/vxe-table/es/table/module/export/import-panel.mjs +4 -11
  14. package/es/node_modules/vxe-table/es/table/module/filter/hook.mjs +19 -63
  15. package/es/node_modules/vxe-table/es/table/module/keyboard/hook.mjs +7 -18
  16. package/es/node_modules/vxe-table/es/table/module/menu/hook.mjs +2 -2
  17. package/es/node_modules/vxe-table/es/table/module/validator/hook.mjs +19 -19
  18. package/es/node_modules/vxe-table/es/table/src/body.mjs +17 -28
  19. package/es/node_modules/vxe-table/es/table/src/column.mjs +1 -1
  20. package/es/node_modules/vxe-table/es/table/src/columnInfo.mjs +0 -2
  21. package/es/node_modules/vxe-table/es/table/src/emits.mjs +0 -1
  22. package/es/node_modules/vxe-table/es/table/src/footer.mjs +2 -2
  23. package/es/node_modules/vxe-table/es/table/src/group.mjs +1 -2
  24. package/es/node_modules/vxe-table/es/table/src/props.mjs +0 -4
  25. package/es/node_modules/vxe-table/es/table/src/table.mjs +496 -619
  26. package/es/node_modules/vxe-table/es/table/src/util.mjs +22 -286
  27. package/es/node_modules/vxe-table/es/toolbar/src/toolbar.mjs +7 -11
  28. package/es/node_modules/vxe-table/es/ui/index.mjs +4 -12
  29. package/es/node_modules/vxe-table/es/ui/src/dom.mjs +1 -24
  30. package/es/node_modules/vxe-table/es/ui/src/log.mjs +1 -1
  31. package/es/packages/mobile/src/components/dataDisplay/table/Table.vue.mjs +3 -3
  32. package/lib/designer/package.json.js +1 -1
  33. package/lib/designer/src/packages/dialog/useDialogDialog.js +1 -1
  34. package/lib/designer/src/packages/dialogGlobal/useDialogGlobalDialog.js +1 -1
  35. package/lib/designer/src/packages/form/property/widgets.vue.js +2 -2
  36. package/lib/designer.css +2 -2
  37. package/lib/node_modules/vxe-table/es/components.js +4 -3
  38. package/lib/node_modules/vxe-table/es/grid/index.js +4 -1
  39. package/lib/node_modules/vxe-table/es/grid/src/grid.js +19 -23
  40. package/lib/node_modules/vxe-table/es/locale/lang/zh-CN.js +0 -6
  41. package/lib/node_modules/vxe-table/es/table/module/custom/hook.js +8 -25
  42. package/lib/node_modules/vxe-table/es/table/module/custom/panel.js +8 -13
  43. package/lib/node_modules/vxe-table/es/table/module/export/export-panel.js +5 -11
  44. package/lib/node_modules/vxe-table/es/table/module/export/import-panel.js +4 -11
  45. package/lib/node_modules/vxe-table/es/table/module/filter/hook.js +19 -63
  46. package/lib/node_modules/vxe-table/es/table/module/keyboard/hook.js +7 -18
  47. package/lib/node_modules/vxe-table/es/table/module/menu/hook.js +2 -2
  48. package/lib/node_modules/vxe-table/es/table/module/validator/hook.js +19 -19
  49. package/lib/node_modules/vxe-table/es/table/src/body.js +17 -28
  50. package/lib/node_modules/vxe-table/es/table/src/column.js +1 -1
  51. package/lib/node_modules/vxe-table/es/table/src/columnInfo.js +0 -2
  52. package/lib/node_modules/vxe-table/es/table/src/emits.js +0 -1
  53. package/lib/node_modules/vxe-table/es/table/src/footer.js +2 -2
  54. package/lib/node_modules/vxe-table/es/table/src/group.js +1 -2
  55. package/lib/node_modules/vxe-table/es/table/src/props.js +0 -4
  56. package/lib/node_modules/vxe-table/es/table/src/table.js +494 -617
  57. package/lib/node_modules/vxe-table/es/table/src/util.js +22 -286
  58. package/lib/node_modules/vxe-table/es/toolbar/src/toolbar.js +6 -10
  59. package/lib/node_modules/vxe-table/es/ui/index.js +4 -12
  60. package/lib/node_modules/vxe-table/es/ui/src/dom.js +0 -23
  61. package/lib/node_modules/vxe-table/es/ui/src/log.js +1 -1
  62. package/lib/packages/mobile/src/components/dataDisplay/table/Table.vue.js +3 -3
  63. package/package.json +1 -1
@@ -106,20 +106,19 @@ function validRuleValue(rule, val, required) {
106
106
  }
107
107
  return true;
108
108
  }
109
- function checkRuleStatus(rule, row, val) {
110
- const { required, field } = rule;
111
- const currVal = field ? index.default.get(row, field) : val;
112
- const isEmptyVal = index.default.isArray(currVal) ? !currVal.length : utils.eqEmptyValue(currVal);
109
+ function checkRuleStatus(rule, val) {
110
+ const { required } = rule;
111
+ const isEmptyVal = index.default.isArray(val) ? !val.length : utils.eqEmptyValue(val);
113
112
  if (required) {
114
113
  if (isEmptyVal) {
115
114
  return false;
116
115
  }
117
- if (!validRuleValue(rule, currVal, required)) {
116
+ if (!validRuleValue(rule, val, required)) {
118
117
  return false;
119
118
  }
120
119
  } else {
121
120
  if (!isEmptyVal) {
122
- if (!validRuleValue(rule, currVal, required)) {
121
+ if (!validRuleValue(rule, val, required)) {
123
122
  return false;
124
123
  }
125
124
  }
@@ -134,6 +133,7 @@ hooks.add("tableValidatorModule", {
134
133
  const { computeValidOpts, computeTreeOpts, computeEditOpts, computeAggregateOpts } = $xeTable.getComputeMaps();
135
134
  let validatorMethods = {};
136
135
  let validatorPrivateMethods = {};
136
+ let validRuleErr;
137
137
  const handleValidError = (params) => {
138
138
  return new Promise((resolve) => {
139
139
  const validOpts = computeValidOpts.value;
@@ -142,7 +142,7 @@ hooks.add("tableValidatorModule", {
142
142
  resolve();
143
143
  } else {
144
144
  $xeTable.handleEdit(params, { type: "valid-error", trigger: "call" }).then(() => {
145
- resolve($xeTable.showValidTooltip(params));
145
+ resolve(validatorPrivateMethods.showValidTooltip(params));
146
146
  });
147
147
  }
148
148
  });
@@ -187,8 +187,8 @@ hooks.add("tableValidatorModule", {
187
187
  }
188
188
  const rowValidErrs = [];
189
189
  internalData._lastCallTime = Date.now();
190
- internalData.validRuleErr = false;
191
- $xeTable.clearValidate();
190
+ validRuleErr = false;
191
+ validatorMethods.clearValidate();
192
192
  const validErrMaps = {};
193
193
  if (editRules) {
194
194
  const columns = cols && cols.length ? cols : $xeTable.getColumns();
@@ -203,11 +203,11 @@ hooks.add("tableValidatorModule", {
203
203
  if ($xeTable.isAggregateRecord(row)) {
204
204
  return;
205
205
  }
206
- if (isFull || !internalData.validRuleErr) {
206
+ if (isFull || !validRuleErr) {
207
207
  const colVailds = [];
208
208
  columns.forEach((column) => {
209
209
  const field = index.default.isString(column) ? column : column.field;
210
- if ((isFull || !internalData.validRuleErr) && index.default.has(editRules, field)) {
210
+ if ((isFull || !validRuleErr) && index.default.has(editRules, field)) {
211
211
  colVailds.push(validatorPrivateMethods.validCellRules("all", row, column).catch(({ rule, rules }) => {
212
212
  const rest = {
213
213
  rule,
@@ -230,7 +230,7 @@ hooks.add("tableValidatorModule", {
230
230
  };
231
231
  validRest[field].push(rest);
232
232
  if (!isFull) {
233
- internalData.validRuleErr = true;
233
+ validRuleErr = true;
234
234
  return Promise.reject(rest);
235
235
  }
236
236
  }));
@@ -437,18 +437,18 @@ hooks.add("tableValidatorModule", {
437
437
  }
438
438
  if (customValid) {
439
439
  if (index.default.isError(customValid)) {
440
- internalData.validRuleErr = true;
440
+ validRuleErr = true;
441
441
  errorRules.push(new Rule({ type: "custom", trigger, content: customValid.message, rule: new Rule(rule) }));
442
442
  } else if (customValid.catch) {
443
443
  syncValidList.push(customValid.catch((e) => {
444
- internalData.validRuleErr = true;
444
+ validRuleErr = true;
445
445
  errorRules.push(new Rule({ type: "custom", trigger, content: e && e.message ? e.message : rule.content || rule.message, rule: new Rule(rule) }));
446
446
  }));
447
447
  }
448
448
  }
449
449
  } else {
450
- if (!checkRuleStatus(rule, row, cellValue)) {
451
- internalData.validRuleErr = true;
450
+ if (!checkRuleStatus(rule, cellValue)) {
451
+ validRuleErr = true;
452
452
  errorRules.push(new Rule(rule));
453
453
  }
454
454
  }
@@ -486,15 +486,15 @@ hooks.add("tableValidatorModule", {
486
486
  }
487
487
  if (editConfig && editRules && actived.row) {
488
488
  const { row, column, cell } = actived.args;
489
- if ($xeTable.hasCellRules(type, row, column)) {
490
- return $xeTable.validCellRules(type, row, column).then(() => {
489
+ if (validatorPrivateMethods.hasCellRules(type, row, column)) {
490
+ return validatorPrivateMethods.validCellRules(type, row, column).then(() => {
491
491
  if (editOpts.mode === "row") {
492
492
  validatorMethods.clearValidate(row, column);
493
493
  }
494
494
  }).catch(({ rule }) => {
495
495
  if (!rule.trigger || type === rule.trigger) {
496
496
  const rest = { rule, row, column, cell };
497
- $xeTable.showValidTooltip(rest);
497
+ validatorPrivateMethods.showValidTooltip(rest);
498
498
  return Promise.reject(rest);
499
499
  }
500
500
  return Promise.resolve();
@@ -37,9 +37,8 @@ const TableBodyComponent = comp.defineVxeComponent({
37
37
  const refBodyEmptyBlock = vue.ref();
38
38
  const isVMScrollProcess = () => {
39
39
  const { delayHover } = tableProps;
40
- const { isDragResize } = tableReactData;
41
- const { lastSTime } = tableInternalData;
42
- return !!(isDragResize || lastSTime && Date.now() < lastSTime + delayHover);
40
+ const { lastScrollTime, isDragResize } = tableReactData;
41
+ return !!(isDragResize || lastScrollTime && Date.now() < lastScrollTime + delayHover);
43
42
  };
44
43
  const renderLine = (rowid, params, cellHeight) => {
45
44
  const { column } = params;
@@ -97,7 +96,7 @@ const TableBodyComponent = comp.defineVxeComponent({
97
96
  const $xeGantt = $xeTable.xeGantt;
98
97
  const { columnKey, resizable: allResizable, showOverflow: allShowOverflow, border, height, treeConfig, cellClassName: allCellClassName, cellStyle, align: allAlign, spanMethod, mouseConfig, editConfig, editRules, tooltipConfig, padding: allPadding } = tableProps;
99
98
  const { tableData, tableColumn, dragRow, overflowX, overflowY, currentColumn, scrollXLoad, scrollYLoad, mergeBodyFlag, calcCellHeightFlag, resizeHeightFlag, resizeWidthFlag, editStore, isAllOverflow, validErrorMaps } = tableReactData;
100
- const { fullAllDataRowIdData, fullColumnIdData, mergeBodyCellMaps, visibleColumn, afterFullData, mergeBodyList, scrollXStore, scrollYStore, keepUpdateFieldMaps } = tableInternalData;
99
+ const { fullAllDataRowIdData, fullColumnIdData, mergeBodyCellMaps, visibleColumn, afterFullData, mergeBodyList, scrollXStore, scrollYStore } = tableInternalData;
101
100
  const cellOpts = computeCellOpts.value;
102
101
  const validOpts = computeValidOpts.value;
103
102
  const checkboxOpts = computeCheckboxOpts.value;
@@ -117,7 +116,7 @@ const TableBodyComponent = comp.defineVxeComponent({
117
116
  const areaOpts = computeAreaOpts.value;
118
117
  const cellOffsetWidth = computeCellOffsetWidth.value;
119
118
  const { selectCellToRow } = areaOpts;
120
- const { field, type, cellRender, editRender, align, showOverflow, className, treeNode, rowResize, padding, verticalAlign, slots } = column;
119
+ const { type, cellRender, editRender, align, showOverflow, className, treeNode, rowResize, padding, verticalAlign, slots } = column;
121
120
  const { verticalAlign: allVerticalAlign } = cellOpts;
122
121
  const { actived } = editStore;
123
122
  const rowRest = fullAllDataRowIdData[rowid] || {};
@@ -147,7 +146,7 @@ const TableBodyComponent = comp.defineVxeComponent({
147
146
  const cellAlign = align || (compConf ? compConf.tableCellAlign : "") || allAlign;
148
147
  const cellVerticalAlign = index.default.eqNull(verticalAlign) ? allVerticalAlign : verticalAlign;
149
148
  const errorValidItem = validErrorMaps[`${rowid}:${colid}`];
150
- const showValidTip = editRules && validOpts.showErrorMessage && (validOpts.message === "default" ? height || tableData.length > 1 : validOpts.message === "inline");
149
+ const showValidTip = editRules && validOpts.showMessage && (validOpts.message === "default" ? height || tableData.length > 1 : validOpts.message === "inline");
151
150
  const tdAttrs = { colid };
152
151
  const cellParams = {
153
152
  $table: $xeTable,
@@ -259,8 +258,8 @@ const TableBodyComponent = comp.defineVxeComponent({
259
258
  fixedHiddenColumn = false;
260
259
  }
261
260
  }
262
- if (!fixedHiddenColumn && editConfig && (editOpts.showStatus || editOpts.showUpdateStatus) && keepUpdateFieldMaps[field]) {
263
- isDirty = $xeTable.isUpdateByRow(row, field);
261
+ if (!fixedHiddenColumn && editConfig && (editRender || cellRender) && (editOpts.showStatus || editOpts.showUpdateStatus)) {
262
+ isDirty = $xeTable.isUpdateByRow(row, column.field);
264
263
  }
265
264
  const isVNAutoHeight = !hasEllipsis && (scrollYLoad || scrollXLoad);
266
265
  let cellHeight = util.getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight);
@@ -318,14 +317,6 @@ const TableBodyComponent = comp.defineVxeComponent({
318
317
  if (treeConfig) {
319
318
  tdVNs.push(...renderLine(rowid, cellParams, cellHeight));
320
319
  }
321
- const clVNs = [];
322
- if (!isVNPreEmptyStatus) {
323
- clVNs.push(vue.h("div", {
324
- colid,
325
- rowid,
326
- class: "vxe-cell--wrapper vxe-body-cell--wrapper"
327
- }, column.renderCell(cellParams)));
328
- }
329
320
  tdVNs.push(vue.h("div", {
330
321
  key: "tc",
331
322
  class: ["vxe-cell", {
@@ -335,7 +326,13 @@ const TableBodyComponent = comp.defineVxeComponent({
335
326
  }],
336
327
  style: tcStyle,
337
328
  title: showTitle ? $xeTable.getCellLabel(row, column) : null
338
- }, clVNs));
329
+ }, isVNPreEmptyStatus ? [] : [
330
+ vue.h("div", {
331
+ colid,
332
+ rowid,
333
+ class: "vxe-cell--wrapper vxe-body-cell--wrapper"
334
+ }, column.renderCell(cellParams))
335
+ ]));
339
336
  if (showValidTip && errorValidItem) {
340
337
  const errRule = errorValidItem.rule;
341
338
  const validSlot = slots ? slots.valid : null;
@@ -405,7 +402,6 @@ const TableBodyComponent = comp.defineVxeComponent({
405
402
  "col--dirty": isDirty,
406
403
  "col--active": editConfig && isEdit && (actived.row === row && (actived.column === column || editOpts.mode === "row")),
407
404
  "col--valid-error": !!errorValidItem,
408
- "show--valid-bg": errorValidItem && validOpts.showErrorBackground,
409
405
  "col--current": currentColumn === column
410
406
  },
411
407
  dom.getPropClass(compCellClassName, cellParams),
@@ -417,7 +413,7 @@ const TableBodyComponent = comp.defineVxeComponent({
417
413
  const $xeGrid = $xeTable.xeGrid;
418
414
  const $xeGantt = $xeTable.xeGantt;
419
415
  const { stripe, rowKey, highlightHoverRow, rowClassName, rowStyle, editConfig, treeConfig } = tableProps;
420
- const { hasFixedColumn, treeExpandedFlag, scrollYLoad, isAllOverflow, rowExpandedFlag, expandColumn, selectRadioRow, pendingRowFlag, rowExpandHeightFlag, isRowGroupStatus } = tableReactData;
416
+ const { hasFixedColumn, treeExpandedFlag, scrollXLoad, scrollYLoad, isAllOverflow, rowExpandedFlag, expandColumn, selectRadioRow, pendingRowFlag, rowExpandHeightFlag, isRowGroupStatus } = tableReactData;
421
417
  const { fullAllDataRowIdData, fullColumnIdData, treeExpandedMaps, pendingRowMaps, rowExpandedMaps } = tableInternalData;
422
418
  const checkboxOpts = computeCheckboxOpts.value;
423
419
  const radioOpts = computeRadioOpts.value;
@@ -511,18 +507,11 @@ const TableBodyComponent = comp.defineVxeComponent({
511
507
  const tdVNs = tableColumn.map((column, $columnIndex) => {
512
508
  return renderTdColumn(seq, rowid, fixedType, isOptimizeMode, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, tableColumn, tableData);
513
509
  });
514
- rows.push(vue.h("tr", Object.assign({ class: trClass, rowid, style: rowStyle ? index.default.isFunction(rowStyle) ? rowStyle(params) : rowStyle : null, key: rowKey || rowOpts.useKey || rowOpts.drag || columnOpts.drag || isRowGroupStatus || treeConfig ? rowid : $rowIndex }, trOn), tdVNs));
510
+ rows.push(vue.h("tr", Object.assign({ class: trClass, rowid, style: rowStyle ? index.default.isFunction(rowStyle) ? rowStyle(params) : rowStyle : null, key: rowKey || scrollXLoad || scrollYLoad || rowOpts.useKey || rowOpts.drag || columnOpts.drag || isRowGroupStatus || treeConfig ? rowid : $rowIndex }, trOn), tdVNs));
515
511
  if (isExpandRow) {
516
512
  const expandOpts = computeExpandOpts.value;
517
513
  const { height: expandHeight, padding, mode: expandMode } = expandOpts;
518
514
  if (expandMode === "fixed") {
519
- const currExpHeight = rowRest.expandHeight;
520
- let expHeight = 0;
521
- if (rowExpandHeightFlag) {
522
- if (currExpHeight || expandHeight) {
523
- expHeight = (currExpHeight || expandHeight || 0) + 1;
524
- }
525
- }
526
515
  rows.push(vue.h("tr", {
527
516
  class: "vxe-body--row-expanded-place",
528
517
  key: `expand_${rowid}`,
@@ -532,7 +521,7 @@ const TableBodyComponent = comp.defineVxeComponent({
532
521
  class: "vxe-body--row-expanded-place-column",
533
522
  colspan: tableColumn.length,
534
523
  style: {
535
- height: `${expHeight}px`
524
+ height: `${rowExpandHeightFlag ? rowRest.expandHeight || expandHeight : 0}px`
536
525
  }
537
526
  })
538
527
  ]));
@@ -129,7 +129,7 @@ const columnProps = {
129
129
  // 内容渲染配置项
130
130
  contentRender: Object,
131
131
  // 聚合函数
132
- aggFunc: [Boolean, String],
132
+ aggFunc: [String, Boolean],
133
133
  // 将单元格复制到剪贴板
134
134
  copyMethod: Function,
135
135
  // 将剪贴单元格的值清除
@@ -150,8 +150,6 @@ class ColumnInfo {
150
150
  sortNumber: 0,
151
151
  renderSortNumber: 0,
152
152
  renderAggFn: "",
153
- renderAggDigits: null,
154
- renderAggFormat: null,
155
153
  renderFixed: "",
156
154
  renderVisible: false,
157
155
  renderWidth: 0,
@@ -66,7 +66,6 @@ const tableEmits = [
66
66
  "column-dragover",
67
67
  "column-dragend",
68
68
  "enter-append-row",
69
- "tab-append-row",
70
69
  "edit-actived",
71
70
  "edit-activated",
72
71
  "edit-disabled",
@@ -113,10 +113,10 @@ const TableFooterComponent = comp.defineVxeComponent({
113
113
  };
114
114
  }
115
115
  tfOns.onClick = (evnt) => {
116
- $xeTable.triggerFooterCellClickEvent(evnt, cellParams);
116
+ $xeTable.dispatchEvent("footer-cell-click", Object.assign({ cell: evnt.currentTarget }, cellParams), evnt);
117
117
  };
118
118
  tfOns.onDblclick = (evnt) => {
119
- $xeTable.triggerFooterCellDblclickEvent(evnt, cellParams);
119
+ $xeTable.dispatchEvent("footer-cell-dblclick", Object.assign({ cell: evnt.currentTarget }, cellParams), evnt);
120
120
  };
121
121
  let isMergeCell = false;
122
122
  if (mergeFootFlag && mergeFooterList.length) {
@@ -33,10 +33,9 @@ const VxeColgroupComponent = comp.defineVxeComponent({
33
33
  util.destroyColumn($xeTable, columnConfig);
34
34
  });
35
35
  const renderVN = () => {
36
- const defaultSlot = slots.default;
37
36
  return vue.h("div", {
38
37
  ref: refElem
39
- }, defaultSlot ? defaultSlot() : []);
38
+ }, slots.default ? slots.default() : []);
40
39
  };
41
40
  const $xeColgroup = { columnConfig };
42
41
  vue.provide("$xeColgroup", $xeColgroup);
@@ -214,8 +214,6 @@ const tableProps = {
214
214
  rowConfig: Object,
215
215
  // 数据聚合配置项
216
216
  aggregateConfig: Object,
217
- // 聚合函数计算精度配置项
218
- aggregateAccuracyConfig: Object,
219
217
  /**
220
218
  * 已废弃,被 aggregateConfig 替换
221
219
  * @deprecated
@@ -276,8 +274,6 @@ const tableProps = {
276
274
  fnrConfig: Object,
277
275
  // 编辑配置项
278
276
  editConfig: Object,
279
- // 数据状态监听配置项
280
- editDirtyConfig: Object,
281
277
  // 校验配置项
282
278
  validConfig: Object,
283
279
  // 校验规则配置项