vxe-table 4.19.8 → 4.19.9
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/dist/all.esm.js +208 -17
- package/dist/style.css +1 -1
- package/es/grid/src/grid.js +1 -1
- package/es/style.css +1 -1
- package/es/table/render/index.js +153 -14
- package/es/table/src/table.js +51 -0
- package/es/table/src/util.js +1 -0
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/grid/src/grid.js +1 -1
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +268 -20
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/render/index.js +259 -15
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/table.js +2 -2
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +1 -0
- package/lib/table/src/util.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/grid/src/grid.ts +1 -1
- package/packages/table/render/index.ts +156 -15
- package/packages/table/src/table.ts +53 -0
- package/packages/table/src/util.ts +2 -0
- /package/es/{iconfont.1780726776354.ttf → iconfont.1780878117167.ttf} +0 -0
- /package/es/{iconfont.1780726776354.woff → iconfont.1780878117167.woff} +0 -0
- /package/es/{iconfont.1780726776354.woff2 → iconfont.1780878117167.woff2} +0 -0
- /package/lib/{iconfont.1780726776354.ttf → iconfont.1780878117167.ttf} +0 -0
- /package/lib/{iconfont.1780726776354.woff → iconfont.1780878117167.woff} +0 -0
- /package/lib/{iconfont.1780726776354.woff2 → iconfont.1780878117167.woff2} +0 -0
|
@@ -966,7 +966,40 @@ renderer.mixin({
|
|
|
966
966
|
renderTableEdit: nativeSelectEditRender,
|
|
967
967
|
renderTableDefault: nativeSelectEditRender,
|
|
968
968
|
renderTableCell(renderOpts, params) {
|
|
969
|
-
|
|
969
|
+
const {
|
|
970
|
+
options,
|
|
971
|
+
optionGroups
|
|
972
|
+
} = renderOpts;
|
|
973
|
+
const {
|
|
974
|
+
$table,
|
|
975
|
+
row,
|
|
976
|
+
column
|
|
977
|
+
} = params;
|
|
978
|
+
const opSize = options ? options.length : null;
|
|
979
|
+
const ogSize = optionGroups ? optionGroups.length : null;
|
|
980
|
+
const {
|
|
981
|
+
cellResult
|
|
982
|
+
} = $table.effectCellData(row, column, {
|
|
983
|
+
key: 'render_table_cell',
|
|
984
|
+
isChanged({
|
|
985
|
+
oldValue,
|
|
986
|
+
cellValue
|
|
987
|
+
}) {
|
|
988
|
+
return oldValue && oldValue[0] === cellValue && oldValue[1] === opSize && oldValue[2] === ogSize;
|
|
989
|
+
},
|
|
990
|
+
setValue({
|
|
991
|
+
cellValue
|
|
992
|
+
}) {
|
|
993
|
+
return [cellValue, opSize, ogSize];
|
|
994
|
+
},
|
|
995
|
+
getResult({
|
|
996
|
+
cellValue
|
|
997
|
+
}) {
|
|
998
|
+
return handleSelectCellValue(cellValue, renderOpts);
|
|
999
|
+
}
|
|
1000
|
+
});
|
|
1001
|
+
// const cellResult = getSelectCellValue(renderOpts, params)
|
|
1002
|
+
return getCellLabelVNs(renderOpts, params, cellResult);
|
|
970
1003
|
},
|
|
971
1004
|
createTableFilterOptions: defaultFilterOptions,
|
|
972
1005
|
renderTableFilter(renderOpts, params) {
|
|
@@ -1102,20 +1135,28 @@ renderer.mixin({
|
|
|
1102
1135
|
tableAutoFocus: 'input',
|
|
1103
1136
|
renderTableEdit: defaultEditRender,
|
|
1104
1137
|
renderTableCell(renderOpts, params) {
|
|
1138
|
+
const props = renderOpts.props || {};
|
|
1105
1139
|
const {
|
|
1106
|
-
|
|
1107
|
-
} = renderOpts;
|
|
1108
|
-
const {
|
|
1140
|
+
$table,
|
|
1109
1141
|
row,
|
|
1110
1142
|
column
|
|
1111
1143
|
} = params;
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1144
|
+
const {
|
|
1145
|
+
cellResult
|
|
1146
|
+
} = $table.effectCellData(row, column, {
|
|
1147
|
+
key: 'render_table_cell',
|
|
1148
|
+
getResult({
|
|
1149
|
+
cellValue
|
|
1150
|
+
}) {
|
|
1151
|
+
if (cellValue) {
|
|
1152
|
+
if (props.type !== 'time') {
|
|
1153
|
+
return getLabelFormatDate(cellValue, props);
|
|
1154
|
+
}
|
|
1155
|
+
}
|
|
1156
|
+
return cellValue;
|
|
1116
1157
|
}
|
|
1117
|
-
}
|
|
1118
|
-
return getCellLabelVNs(renderOpts, params,
|
|
1158
|
+
});
|
|
1159
|
+
return getCellLabelVNs(renderOpts, params, cellResult);
|
|
1119
1160
|
},
|
|
1120
1161
|
tableCellFormatter: handleFormatDatePicker,
|
|
1121
1162
|
renderTableDefault: defaultEditRender,
|
|
@@ -1170,6 +1211,43 @@ renderer.mixin({
|
|
|
1170
1211
|
}
|
|
1171
1212
|
}, seOs)))];
|
|
1172
1213
|
},
|
|
1214
|
+
renderTableDefault(renderOpts, params) {
|
|
1215
|
+
const {
|
|
1216
|
+
startField,
|
|
1217
|
+
endField
|
|
1218
|
+
} = renderOpts;
|
|
1219
|
+
const {
|
|
1220
|
+
row,
|
|
1221
|
+
column
|
|
1222
|
+
} = params;
|
|
1223
|
+
const {
|
|
1224
|
+
model
|
|
1225
|
+
} = column;
|
|
1226
|
+
const cellValue = (0, _util.getCellValue)(row, column);
|
|
1227
|
+
const seProps = {};
|
|
1228
|
+
const seOs = {};
|
|
1229
|
+
if (startField && endField) {
|
|
1230
|
+
seProps.startValue = _xeUtils.default.get(row, startField);
|
|
1231
|
+
seProps.endValue = _xeUtils.default.get(row, endField);
|
|
1232
|
+
seOs['onUpdate:startValue'] = value => {
|
|
1233
|
+
if (startField) {
|
|
1234
|
+
_xeUtils.default.set(row, startField, value);
|
|
1235
|
+
}
|
|
1236
|
+
};
|
|
1237
|
+
seOs['onUpdate:endValue'] = value => {
|
|
1238
|
+
if (endField) {
|
|
1239
|
+
_xeUtils.default.set(row, endField, value);
|
|
1240
|
+
}
|
|
1241
|
+
};
|
|
1242
|
+
}
|
|
1243
|
+
return [(0, _vue.h)(getDefaultComponent(renderOpts), Object.assign(Object.assign({}, getCellEditProps(renderOpts, params, cellValue, seProps)), getComponentOns(renderOpts, params, {
|
|
1244
|
+
model(cellValue) {
|
|
1245
|
+
model.update = true;
|
|
1246
|
+
model.value = cellValue;
|
|
1247
|
+
(0, _util.setCellValue)(row, column, cellValue);
|
|
1248
|
+
}
|
|
1249
|
+
}, seOs)))];
|
|
1250
|
+
},
|
|
1173
1251
|
renderTableCell(renderOpts, params) {
|
|
1174
1252
|
const {
|
|
1175
1253
|
startField,
|
|
@@ -1206,6 +1284,7 @@ renderer.mixin({
|
|
|
1206
1284
|
},
|
|
1207
1285
|
VxeTextarea: {
|
|
1208
1286
|
tableAutoFocus: 'textarea',
|
|
1287
|
+
renderTableDefault: defaultEditRender,
|
|
1209
1288
|
renderTableEdit: defaultEditRender,
|
|
1210
1289
|
renderTableCell(renderOpts, params) {
|
|
1211
1290
|
const {
|
|
@@ -1234,7 +1313,40 @@ renderer.mixin({
|
|
|
1234
1313
|
renderTableEdit: defaultSelectEditRender,
|
|
1235
1314
|
renderTableDefault: defaultSelectEditRender,
|
|
1236
1315
|
renderTableCell(renderOpts, params) {
|
|
1237
|
-
|
|
1316
|
+
const {
|
|
1317
|
+
options,
|
|
1318
|
+
optionGroups
|
|
1319
|
+
} = renderOpts;
|
|
1320
|
+
const {
|
|
1321
|
+
$table,
|
|
1322
|
+
row,
|
|
1323
|
+
column
|
|
1324
|
+
} = params;
|
|
1325
|
+
const opSize = options ? options.length : null;
|
|
1326
|
+
const ogSize = optionGroups ? optionGroups.length : null;
|
|
1327
|
+
const {
|
|
1328
|
+
cellResult
|
|
1329
|
+
} = $table.effectCellData(row, column, {
|
|
1330
|
+
key: 'render_table_cell',
|
|
1331
|
+
isChanged({
|
|
1332
|
+
oldValue,
|
|
1333
|
+
cellValue
|
|
1334
|
+
}) {
|
|
1335
|
+
return oldValue && oldValue[0] === cellValue && oldValue[1] === opSize && oldValue[2] === ogSize;
|
|
1336
|
+
},
|
|
1337
|
+
setValue({
|
|
1338
|
+
cellValue
|
|
1339
|
+
}) {
|
|
1340
|
+
return [cellValue, opSize, ogSize];
|
|
1341
|
+
},
|
|
1342
|
+
getResult({
|
|
1343
|
+
cellValue
|
|
1344
|
+
}) {
|
|
1345
|
+
return handleSelectCellValue(cellValue, renderOpts);
|
|
1346
|
+
}
|
|
1347
|
+
});
|
|
1348
|
+
// const cellResult = getSelectCellValue(renderOpts, params)
|
|
1349
|
+
return getCellLabelVNs(renderOpts, params, cellResult);
|
|
1238
1350
|
},
|
|
1239
1351
|
createTableFilterOptions: defaultFilterOptions,
|
|
1240
1352
|
renderTableFilter(renderOpts, params) {
|
|
@@ -1330,7 +1442,40 @@ renderer.mixin({
|
|
|
1330
1442
|
},
|
|
1331
1443
|
FormatSelect: {
|
|
1332
1444
|
renderTableDefault(renderOpts, params) {
|
|
1333
|
-
|
|
1445
|
+
const {
|
|
1446
|
+
options,
|
|
1447
|
+
optionGroups
|
|
1448
|
+
} = renderOpts;
|
|
1449
|
+
const {
|
|
1450
|
+
$table,
|
|
1451
|
+
row,
|
|
1452
|
+
column
|
|
1453
|
+
} = params;
|
|
1454
|
+
const opSize = options ? options.length : null;
|
|
1455
|
+
const ogSize = optionGroups ? optionGroups.length : null;
|
|
1456
|
+
const {
|
|
1457
|
+
cellResult
|
|
1458
|
+
} = $table.effectCellData(row, column, {
|
|
1459
|
+
key: 'render_table_cell',
|
|
1460
|
+
isChanged({
|
|
1461
|
+
oldValue,
|
|
1462
|
+
cellValue
|
|
1463
|
+
}) {
|
|
1464
|
+
return oldValue && oldValue[0] === cellValue && oldValue[1] === opSize && oldValue[2] === ogSize;
|
|
1465
|
+
},
|
|
1466
|
+
setValue({
|
|
1467
|
+
cellValue
|
|
1468
|
+
}) {
|
|
1469
|
+
return [cellValue, opSize, ogSize];
|
|
1470
|
+
},
|
|
1471
|
+
getResult({
|
|
1472
|
+
cellValue
|
|
1473
|
+
}) {
|
|
1474
|
+
return handleSelectCellValue(cellValue, renderOpts);
|
|
1475
|
+
}
|
|
1476
|
+
});
|
|
1477
|
+
// const cellResult = getSelectCellValue(renderOpts, params)
|
|
1478
|
+
return getCellLabelVNs(renderOpts, params, cellResult);
|
|
1334
1479
|
},
|
|
1335
1480
|
tableCellFormatter: handleFormatSelect,
|
|
1336
1481
|
tableCellCopyMethod: handleFormatSelect,
|
|
@@ -1342,7 +1487,40 @@ renderer.mixin({
|
|
|
1342
1487
|
tableAutoFocus: 'input',
|
|
1343
1488
|
renderTableEdit: defaultTableOrTreeSelectEditRender,
|
|
1344
1489
|
renderTableCell(renderOpts, params) {
|
|
1345
|
-
|
|
1490
|
+
const {
|
|
1491
|
+
options,
|
|
1492
|
+
optionGroups
|
|
1493
|
+
} = renderOpts;
|
|
1494
|
+
const {
|
|
1495
|
+
$table,
|
|
1496
|
+
row,
|
|
1497
|
+
column
|
|
1498
|
+
} = params;
|
|
1499
|
+
const opSize = options ? options.length : null;
|
|
1500
|
+
const ogSize = optionGroups ? optionGroups.length : null;
|
|
1501
|
+
const {
|
|
1502
|
+
cellResult
|
|
1503
|
+
} = $table.effectCellData(row, column, {
|
|
1504
|
+
key: 'render_table_cell',
|
|
1505
|
+
isChanged({
|
|
1506
|
+
oldValue,
|
|
1507
|
+
cellValue
|
|
1508
|
+
}) {
|
|
1509
|
+
return oldValue && oldValue[0] === cellValue && oldValue[1] === opSize && oldValue[2] === ogSize;
|
|
1510
|
+
},
|
|
1511
|
+
setValue({
|
|
1512
|
+
cellValue
|
|
1513
|
+
}) {
|
|
1514
|
+
return [cellValue, opSize, ogSize];
|
|
1515
|
+
},
|
|
1516
|
+
getResult({
|
|
1517
|
+
cellValue
|
|
1518
|
+
}) {
|
|
1519
|
+
return handleTreeSelectCellValue(cellValue, renderOpts);
|
|
1520
|
+
}
|
|
1521
|
+
});
|
|
1522
|
+
// const cellResult = getTreeSelectCellValue(renderOpts, params)
|
|
1523
|
+
return getCellLabelVNs(renderOpts, params, cellResult);
|
|
1346
1524
|
},
|
|
1347
1525
|
tableCellFormatter: handleFormatTreeSelect,
|
|
1348
1526
|
tableCellCopyMethod: handleFormatTreeSelect,
|
|
@@ -1360,7 +1538,40 @@ renderer.mixin({
|
|
|
1360
1538
|
},
|
|
1361
1539
|
FormatTreeSelect: {
|
|
1362
1540
|
renderTableDefault(renderOpts, params) {
|
|
1363
|
-
|
|
1541
|
+
const {
|
|
1542
|
+
options,
|
|
1543
|
+
optionGroups
|
|
1544
|
+
} = renderOpts;
|
|
1545
|
+
const {
|
|
1546
|
+
$table,
|
|
1547
|
+
row,
|
|
1548
|
+
column
|
|
1549
|
+
} = params;
|
|
1550
|
+
const opSize = options ? options.length : null;
|
|
1551
|
+
const ogSize = optionGroups ? optionGroups.length : null;
|
|
1552
|
+
const {
|
|
1553
|
+
cellResult
|
|
1554
|
+
} = $table.effectCellData(row, column, {
|
|
1555
|
+
key: 'render_table_cell',
|
|
1556
|
+
isChanged({
|
|
1557
|
+
oldValue,
|
|
1558
|
+
cellValue
|
|
1559
|
+
}) {
|
|
1560
|
+
return oldValue && oldValue[0] === cellValue && oldValue[1] === opSize && oldValue[2] === ogSize;
|
|
1561
|
+
},
|
|
1562
|
+
setValue({
|
|
1563
|
+
cellValue
|
|
1564
|
+
}) {
|
|
1565
|
+
return [cellValue, opSize, ogSize];
|
|
1566
|
+
},
|
|
1567
|
+
getResult({
|
|
1568
|
+
cellValue
|
|
1569
|
+
}) {
|
|
1570
|
+
return handleTreeSelectCellValue(cellValue, renderOpts);
|
|
1571
|
+
}
|
|
1572
|
+
});
|
|
1573
|
+
// const cellResult = getTreeSelectCellValue(renderOpts, params)
|
|
1574
|
+
return getCellLabelVNs(renderOpts, params, cellResult);
|
|
1364
1575
|
},
|
|
1365
1576
|
tableCellFormatter: handleFormatTreeSelect,
|
|
1366
1577
|
tableCellCopyMethod: handleFormatTreeSelect,
|
|
@@ -1371,7 +1582,40 @@ renderer.mixin({
|
|
|
1371
1582
|
tableAutoFocus: 'input',
|
|
1372
1583
|
renderTableEdit: defaultTableOrTreeSelectEditRender,
|
|
1373
1584
|
renderTableCell(renderOpts, params) {
|
|
1374
|
-
|
|
1585
|
+
const {
|
|
1586
|
+
options,
|
|
1587
|
+
optionGroups
|
|
1588
|
+
} = renderOpts;
|
|
1589
|
+
const {
|
|
1590
|
+
$table,
|
|
1591
|
+
row,
|
|
1592
|
+
column
|
|
1593
|
+
} = params;
|
|
1594
|
+
const opSize = options ? options.length : null;
|
|
1595
|
+
const ogSize = optionGroups ? optionGroups.length : null;
|
|
1596
|
+
const {
|
|
1597
|
+
cellResult
|
|
1598
|
+
} = $table.effectCellData(row, column, {
|
|
1599
|
+
key: 'render_table_cell',
|
|
1600
|
+
isChanged({
|
|
1601
|
+
oldValue,
|
|
1602
|
+
cellValue
|
|
1603
|
+
}) {
|
|
1604
|
+
return oldValue && oldValue[0] === cellValue && oldValue[1] === opSize && oldValue[2] === ogSize;
|
|
1605
|
+
},
|
|
1606
|
+
setValue({
|
|
1607
|
+
cellValue
|
|
1608
|
+
}) {
|
|
1609
|
+
return [cellValue, opSize, ogSize];
|
|
1610
|
+
},
|
|
1611
|
+
getResult({
|
|
1612
|
+
cellValue
|
|
1613
|
+
}) {
|
|
1614
|
+
return handleTreeSelectCellValue(cellValue, renderOpts);
|
|
1615
|
+
}
|
|
1616
|
+
});
|
|
1617
|
+
// const cellResult = getTreeSelectCellValue(renderOpts, params)
|
|
1618
|
+
return getCellLabelVNs(renderOpts, params, cellResult);
|
|
1375
1619
|
},
|
|
1376
1620
|
tableCellFormatter: handleFormatTreeSelect,
|
|
1377
1621
|
tableCellCopyMethod: handleFormatTreeSelect,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("../../table/src/util"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,renderer,getI18n,getComponent}=_ui.VxeUI,componentDefaultModelProp="modelValue",defaultCompProps={};function handleDefaultValue(e,t,l){return _xeUtils.default.eqNull(e)?_xeUtils.default.eqNull(t)?l:t:e}function parseDate(e,t){return e&&t.valueFormat?_xeUtils.default.toStringDate(e,t.valueFormat):e}function getFormatDate(e,t,l){var{dateConfig:n={}}=t;return _xeUtils.default.toDateString(parseDate(e,t),n.labelFormat||l)}function getLabelFormatDate(e,t){return getFormatDate(e,t,getI18n("vxe.input.date.labelFormat."+(t.type||"date")))}function getOldComponentName(e){return"vxe-"+e.replace("$","")}function getDefaultComponent({name:e}){return getComponent(e)}function getOldComponent({name:e}){return(0,_vue.resolveComponent)(getOldComponentName(e))}function updateFilterChangeOption(e,t,l){e=e.$table;e.updateFilterOptionStatus(l,t)}function saveFilterEvent(e){var{$table:e,column:t}=e;e.saveFilterByEvent(new Event("change"),t)}function getNativeAttrs(e){let{name:t,attrs:l}=e;return l="input"===t?Object.assign({type:"text"},l):l}function getInputImmediateModel(e){var{name:e,immediate:t,props:l}=e;return t||("VxeInput"===e||"$input"===e?(t=(l||{}).type,!(!t||"text"===t||"number"===t||"integer"===t||"float"===t)):"input"!==e&&"textarea"!==e&&"$textarea"!==e)}function getCellEditProps(e,t,l,n){return _xeUtils.default.assign({immediate:getInputImmediateModel(e)},defaultCompProps,n,e.props,{[componentDefaultModelProp]:l})}function getCellEditFilterProps(e,t,l,n){return _xeUtils.default.assign({},defaultCompProps,n,e.props,{[componentDefaultModelProp]:l})}function isImmediateCell(e,t){return"cell"===t.$type||getInputImmediateModel(e)}function getCellLabelVNs(e,t,l,n){e=e.placeholder;return[(0,_vue.h)("span",{class:["vxe-cell--label",n?n.class:""]},e&&(0,_utils.isEmptyValue)(l)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(e),1))]:(0,_utils.formatText)(l,1))]}function getNativeElementOns(e,l,t){let n=e.events,a=(0,_vn.getModelEvent)(e),r=(0,_vn.getChangeEvent)(e),{model:o,change:u,blur:i}=t||{},d=r===a,s={};return n&&_xeUtils.default.objectEach(n,(t,e)=>{s[(0,_vn.getOnName)(e)]=function(...e){t(l,...e)}}),o&&(s[(0,_vn.getOnName)(a)]=function(e){o(e),d&&u&&u(e),n&&n[a]&&n[a](l,e)}),!d&&u&&(s[(0,_vn.getOnName)(r)]=function(e){u(e),n&&n[r]&&n[r](l,e)}),i&&(s[(0,_vn.getOnName)(blurEvent)]=function(e){i(e),n&&n[blurEvent]&&n[blurEvent](l,e)}),s}let blurEvent="blur",clearEvent="clear";function getComponentOns(e,l,t,n){let a=e.events,r=(0,_vn.getModelEvent)(e),o=(0,_vn.getChangeEvent)(e),{model:u,change:i,blur:d,clear:s}=t||{},p={};return _xeUtils.default.objectEach(a,(t,e)=>{p[(0,_vn.getOnName)(e)]=function(...e){_xeUtils.default.isFunction(t)||(0,_log.errLog)("vxe.error.errFunc",[t]),t(l,...e)}}),u&&(p[(0,_vn.getOnName)(r)]=function(e){u(e),a&&a[r]&&a[r](l,e)}),i&&(p[(0,_vn.getOnName)(o)]=function(...e){i(...e),a&&a[o]&&a[o](l,...e)}),d&&(p[(0,_vn.getOnName)(blurEvent)]=function(...e){d(...e),a&&a[blurEvent]&&a[blurEvent](l,...e)}),s&&(p[(0,_vn.getOnName)(clearEvent)]=function(...e){s(...e),a&&a[clearEvent]&&a[clearEvent](l,...e)}),n?Object.assign(p,n):p}function getEditOns(e,t){let{$table:l,row:n,column:a}=t,r=e.name,o=a.model,u=isImmediateCell(e,t);return getComponentOns(e,t,{model(e){o.update=!0,o.value=e,u&&(0,_util.setCellValue)(n,a,e)},change(e){!u&&r&&["VxeInput","VxeNumberInput","VxeTextarea","$input","$textarea"].includes(r)?(e=e.value,o.update=!0,o.value=e,l.updateStatus(t,e)):l.updateStatus(t)},blur(){u?l.handleCellRuleUpdateStatus("blur",t):l.handleCellRuleUpdateStatus("blur",t,o.value)}})}function getFilterOns(e,t,l){return getComponentOns(e,t,{model(e){l.data=e},change(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l)},blur(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l)}})}function getFloatingFilterOns(e,t,l){let{$table:n,column:a}=t;return(0,_vn.hasInputType)(e)?getComponentOns(e,t,{model(e){l.data=e},change(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l)},clear(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),saveFilterEvent(t)},blur(){n.saveFilterByEvent(new Event("change"),a)}},"VxeNumberInput"===e.name?{[(0,_vn.getOnName)("plus-number")](){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),saveFilterEvent(t)},[(0,_vn.getOnName)("minus-number")](){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),saveFilterEvent(t)}}:{}):getComponentOns(e,t,{model(e){l.data=e},clear(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),n.saveFilterByEvent(new Event("change"),a)},change(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),n.saveFilterByEvent(new Event("change"),a)}})}function getNativeEditOns(t,l){let{$table:n,row:a,column:r}=l,o=r.model;return getNativeElementOns(t,l,{model(e){var e=e.target;e&&(e=e.value,isImmediateCell(t,l)?(0,_util.setCellValue)(a,r,e):(o.update=!0,o.value=e))},change(e){var e=e.target;e&&(e=e.value,n.updateStatus(l,e))},blur(e){var e=e.target;e&&(e=e.value,n.updateStatus(l,e))}})}function getNativeFilterOns(e,t,l){return getNativeElementOns(e,t,{model(e){e=e.target;e&&(l.data=e.value)},change(){updateFilterChangeOption(t,!_xeUtils.default.eqNull(l.data),l)},blur(){updateFilterChangeOption(t,!_xeUtils.default.eqNull(l.data),l)}})}function nativeEditRender(e,t){var{row:l,column:n}=t,a=e.name,l=isImmediateCell(e,t)?(0,_util.getCellValue)(l,n):n.model.value;return[(0,_vue.h)(""+a,Object.assign(Object.assign(Object.assign({class:"vxe-default-"+a},getNativeAttrs(e)),{value:l}),getNativeEditOns(e,t)))]}function buttonCellRender(e,t){return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function defaultEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function checkboxEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function radioAndCheckboxGroupEditRender(e,t){var l=e.options,{row:n,column:a}=t,n=(0,_util.getCellValue)(n,a);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({options:l},getCellEditProps(e,t,n)),getEditOns(e,t)))]}function oldEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function oldButtonEditRender(e,t){return[(0,_vue.h)(getComponent("vxe-button"),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function oldButtonsEditRender(e,t){e=e.children;return e?e.map(e=>oldButtonEditRender(e,t)[0]):[]}function renderNativeOptgroups(l,n,a){var{optionGroups:e,optionGroupProps:t={}}=l;let r=t.options||"options",o=t.label||"label";return e?e.map((e,t)=>(0,_vue.h)("optgroup",{key:t,label:e[o]},a(e[r],l,n))):[]}function renderNativeOptions(e,t,l){var{optionProps:n={}}=t,{row:a,column:r}=l;let o=n.label||"label",u=n.value||"value",i=n.disabled||"disabled",d=isImmediateCell(t,l)?(0,_util.getCellValue)(a,r):r.model.value;return e?e.map((e,t)=>(0,_vue.h)("option",{key:t,value:e[u],disabled:e[i],selected:e[u]==d},e[o])):[]}function nativeFilterRender(l,n){var e=n.column;let a=l.name,r=getNativeAttrs(l);return e.filters.map((e,t)=>(0,_vue.h)(""+a,Object.assign(Object.assign(Object.assign({key:t,class:"vxe-default-"+a},r),{value:e.data}),getNativeFilterOns(l,n,e))))}function defaultFilterRender(n,a){var e=a.column;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getDefaultComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,n,l)),getFilterOns(n,a,e)))})}function defaultFloatingFilterRender(e,t){var l=t.option,n=l.data;return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditFilterProps(e,e,n)),getFloatingFilterOns(e,t,l)))]}function defaultFilterOptions(){return[{data:null}]}function oldFilterRender(n,a){var e=a.column;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getOldComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,n,l)),getFilterOns(n,a,e)))})}function handleFilterMethod({option:e,row:t,column:l}){e=e.data;return _xeUtils.default.get(t,l.field)==e}function handleInputFilterMethod({option:e,row:t,column:l}){e=e.data,t=_xeUtils.default.get(t,l.field);return-1<_xeUtils.default.toValueString(t).indexOf(e)}function nativeSelectEditRender(e,t){return[(0,_vue.h)("select",Object.assign(Object.assign({class:"vxe-default-select"},getNativeAttrs(e)),getNativeEditOns(e,t)),e.optionGroups?renderNativeOptgroups(e,t,renderNativeOptions):renderNativeOptions(e.options,e,t))]}function defaultSelectEditRender(e,t){var{row:l,column:n}=t,{options:a,optionProps:r,optionGroups:o,optionGroupProps:u}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:a,optionProps:r,optionGroups:o,optionGroupProps:u})),getEditOns(e,t)))]}function defaultTableOrTreeSelectEditRender(e,t){var{row:l,column:n}=t,{options:a,optionProps:r}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:a,optionProps:r})),getEditOns(e,t)))]}function oldSelectEditRender(e,t){var{row:l,column:n}=t,{options:a,optionProps:r,optionGroups:o,optionGroupProps:u}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:a,optionProps:r,optionGroups:o,optionGroupProps:u})),getEditOns(e,t)))]}function handleSelectCellValue(t,e){let{options:l,optionGroups:n,optionProps:a={},optionGroupProps:r={},props:o={}}=e,u,i=a.label||"label",d=a.value||"value";if(null==t)return"";{let e=[];return e=_xeUtils.default.isArray(t)?t:o.multiple&&-1<(""+t).indexOf(",")?(""+t).split(","):[t],_xeUtils.default.map(e,n?t=>{var l=r.options||"options";for(let e=0;e<n.length&&!(u=_xeUtils.default.find(n[e][l],e=>e[d]==t));e++);return u?u[i]:t}:t=>(u=_xeUtils.default.find(l,e=>e[d]==t))?u[i]:t).join(", ")}}function getSelectCellValue(e,{row:t,column:l}){return handleSelectCellValue(_xeUtils.default.get(t,l.field),e)}function handleExportSelectMethod(e){var{row:t,column:l,options:n}=e;return n.original?(0,_util.getCellValue)(t,l):getSelectCellValue(l.editRender||l.cellRender,e)}function handleTreeSelectCellValue(e,l){var{options:l,optionProps:n={}}=l;let a=n.label||"label",r=n.value||"value";if(null==e)return"";{let t={};return _xeUtils.default.eachTree(l,e=>{t[_xeUtils.default.get(e,r)]=e},{children:n.children||"children"}),_xeUtils.default.map(_xeUtils.default.isArray(e)?e:[e],e=>{e=t[e];return e&&_xeUtils.default.get(e,a)}).join(", ")}}function getTreeSelectCellValue(e,{row:t,column:l}){return handleTreeSelectCellValue(_xeUtils.default.get(t,l.field),e)}function handleExportTreeSelectMethod(e){var{row:t,column:l,options:n}=e;return n.original?(0,_util.getCellValue)(t,l):getTreeSelectCellValue(l.editRender||l.cellRender,e)}function handleNumberCell(e,t){var l,n,{props:a={},showNegativeStatus:r}=e,{row:o,column:u}=t,i=a.type;let d=_xeUtils.default.get(o,u.field),s=!1;return(0,_utils.isEmptyValue)(d)||(o=getConfig().numberInput||{},"float"===i?(u=handleDefaultValue(a.autoFill,o.autoFill,!0),n=handleDefaultValue(a.digits,o.digits,1),d=_xeUtils.default.toFixed(_xeUtils.default.floor(d,n),n),u||(d=_xeUtils.default.toNumber(d)),r&&d<0&&(s=!0)):"amount"===i?(n=handleDefaultValue(a.autoFill,o.autoFill,!0),u=handleDefaultValue(a.digits,o.digits,2),l=handleDefaultValue(a.showCurrency,o.showCurrency,!1),d=_xeUtils.default.toNumber(d),r&&d<0&&(s=!0),d=_xeUtils.default.commafy(d,{digits:u}),n||([u,n]=d.split("."),n&&(n=n.replace(/0+$/,""),d=n?[u,".",n].join(""):u)),l&&(d=""+(a.currencySymbol||o.currencySymbol||getI18n("vxe.numberInput.currencySymbol")||"")+d)):("integer"===i&&(d=_xeUtils.default.toInteger(d)),r&&_xeUtils.default.toNumber(d)<0&&(s=!0))),getCellLabelVNs(e,t,d,s?{class:"is--negative"}:{})}function handleFormatDatePicker(e,t){var{props:e={}}=e,t=t.cellValue;return t&&"time"!==e.type?getLabelFormatDate(t,e):t}function handleFormatSelect(e,t){t=t.cellValue;return handleSelectCellValue(t,e)}function handleSetSelectValue(e,t){var{row:a,column:t,cellValue:r}=t,o=t.field;if(o){var{options:u,optionGroups:i,optionProps:t={},optionGroupProps:e={},props:l}=e;if((0,_utils.isEmptyValue)(r))_xeUtils.default.set(a,o,l&&l.multiple?[]:null);else{var d=-1<_xeUtils.default.indexOf(""+r,","),s=t.label||"label";let l=t.value||"value",n={};if(i&&i.length){var p=e.options||"options";for(let e=0;e<i.length;e++){var c=i[e][p]||{};for(let e=0;e<c.length;e++){var g=c[e];if(d)n[g[s]]=g;else if(g[s]==r)return void _xeUtils.default.set(a,o,g[l])}}}else if(u)for(let e=0;e<u.length;e++){var f=u[e];if(d)n[f[s]]=f;else if(f[s]==r)return void _xeUtils.default.set(a,o,f[l])}d?_xeUtils.default.set(a,o,(d?r.split(","):[r]).map(e=>{var t=n[e];return t?t[l]:e})):_xeUtils.default.set(a,o,r)}}}function handleFormatTreeSelect(e,t){t=t.cellValue;return handleTreeSelectCellValue(t,e)}function handleSetTreeSelectValue(e,l){let{row:n,column:t,cellValue:a}=l;l=t.field;if(l){var{options:e,optionProps:r={}}=e;let t=r.label||"label";var o=r.value||"value",e=_xeUtils.default.findTree(e||[],e=>_xeUtils.default.get(e,t)===a,{children:r.children||"children"});if(e){r=e.item;if(r)return void _xeUtils.default.set(n,l,r[o])}_xeUtils.default.set(n,l,a)}}renderer.mixin({input:{tableAutoFocus:"input",renderTableEdit:nativeEditRender,renderTableDefault:nativeEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:nativeFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},textarea:{tableAutoFocus:"textarea",renderTableEdit:nativeEditRender},select:{renderTableEdit:nativeSelectEditRender,renderTableDefault:nativeSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},createTableFilterOptions:defaultFilterOptions,renderTableFilter(l,n){var e=n.column;return e.filters.map((e,t)=>(0,_vue.h)("select",Object.assign(Object.assign({key:t,class:"vxe-default-select"},getNativeAttrs(l)),getNativeFilterOns(l,n,e)),l.optionGroups?renderNativeOptgroups(l,n,renderNativeOptions):renderNativeOptions(l.options,l,n)))},tableCellFormatter:handleFormatSelect,tableCellCopyMethod:handleFormatSelect,tableCellPasteMethod:handleSetSelectValue,tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeInput:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t){var{props:l={}}=e,{row:n,column:a}=t,r=getConfig().input||{},o=l.digits||r.digits||2;let u=_xeUtils.default.get(n,a.field);if(u)switch(l.type){case"date":case"week":case"month":case"quarter":case"year":u=getLabelFormatDate(u,l);break;case"float":u=_xeUtils.default.toFixed(_xeUtils.default.floor(u,o),o)}return getCellLabelVNs(e,t,u)},renderTableDefault:defaultEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:defaultFilterRender,renderTableFloatingFilter:defaultFloatingFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},FormatNumberInput:{renderTableDefault:handleNumberCell,tableFilterDefaultMethod:handleInputFilterMethod,tableExportMethod(e){var{row:e,column:t}=e;return _xeUtils.default.get(e,t.field)}},VxeNumberInput:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell:handleNumberCell,renderTableFooter(t,l){var{props:t={}}=t,{row:l,column:n,_columnIndex:a}=l,r=t.type,a=_xeUtils.default.isArray(l)?l[a]:_xeUtils.default.get(l,n.field);if(_xeUtils.default.isNumber(a)){l=getConfig().numberInput||{};if("float"===r){var n=handleDefaultValue(t.autoFill,l.autoFill,!0),o=handleDefaultValue(t.digits,l.digits,1);let e=_xeUtils.default.toFixed(_xeUtils.default.floor(a,o),o);return e=n?e:""+_xeUtils.default.toNumber(e)}if("amount"===r){var o=handleDefaultValue(t.autoFill,l.autoFill,!0),n=handleDefaultValue(t.digits,l.digits,2),r=handleDefaultValue(t.showCurrency,l.showCurrency,!1);let e=_xeUtils.default.commafy(_xeUtils.default.toNumber(a),{digits:n});return o||([n,o]=e.split("."),o&&(o=o.replace(/0+$/,""),e=o?[n,".",o].join(""):n)),e=r?""+(t.currencySymbol||l.currencySymbol||getI18n("vxe.numberInput.currencySymbol")||"")+e:e}}return(0,_utils.getFuncText)(a,1)},renderTableDefault:defaultEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:defaultFilterRender,renderTableFloatingFilter:defaultFloatingFilterRender,tableFilterDefaultMethod:handleInputFilterMethod,tableExportMethod(e){var{row:e,column:t}=e;return _xeUtils.default.get(e,t.field)}},VxeDatePicker:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t){var{props:l={}}=e,{row:n,column:a}=t;let r=_xeUtils.default.get(n,a.field);return getCellLabelVNs(e,t,r=r&&"time"!==l.type?getLabelFormatDate(r,l):r)},tableCellFormatter:handleFormatDatePicker,renderTableDefault:defaultEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:defaultFilterRender,renderTableFloatingFilter:defaultFloatingFilterRender,tableFilterDefaultMethod:handleFilterMethod},VxeDateRangePicker:{tableAutoFocus:"input",renderTableEdit(e,t){let{startField:l,endField:n}=e,{$table:a,row:r,column:o}=t,u=o.model;var i=(0,_util.getCellValue)(r,o),d={},s={};return l&&n&&(d.startValue=_xeUtils.default.get(r,l),d.endValue=_xeUtils.default.get(r,n),s["onUpdate:startValue"]=e=>{l&&_xeUtils.default.set(r,l,e)},s["onUpdate:endValue"]=e=>{n&&_xeUtils.default.set(r,n,e)}),[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,i,d)),getComponentOns(e,t,{model(e){u.update=!0,u.value=e,(0,_util.setCellValue)(r,o,e)},change(){a.updateStatus(t)},blur(){a.handleCellRuleUpdateStatus("blur",t)}},s)))]},renderTableCell(e,t){var{startField:l,endField:n}=e,{row:a,column:r}=t;let o="",u="",i=(l&&n?(o=_xeUtils.default.get(a,l),u=_xeUtils.default.get(a,n)):(l=_xeUtils.default.get(a,r.field))&&(u=(_xeUtils.default.isArray(l)?(o=l[0],l):(n=(""+l).split(","),o=n[0],n))[1]),"");return getCellLabelVNs(e,t,i=o&&u?o+" ~ "+u:i)}},VxeTextarea:{tableAutoFocus:"textarea",renderTableEdit:defaultEditRender,renderTableCell(e,t){var{row:l,column:n}=t;return getCellLabelVNs(e,t,_xeUtils.default.get(l,n.field))}},VxeButton:{renderTableDefault:buttonCellRender},VxeButtonGroup:{renderTableDefault(e,t){var l=e.options;return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({options:l},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}},VxeSelect:{tableAutoFocus:"input",renderTableEdit:defaultSelectEditRender,renderTableDefault:defaultSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},createTableFilterOptions:defaultFilterOptions,renderTableFilter(n,a){var e=a.column;let{options:r,optionProps:o,optionGroups:u,optionGroupProps:i}=n;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getDefaultComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,a,l,{options:r,optionProps:o,optionGroups:u,optionGroupProps:i})),getFilterOns(n,a,e)))})},renderTableFloatingFilter(e,t){var l=t.option,{options:n,optionProps:a,optionGroups:r,optionGroupProps:o}=e,u=l.data;return(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditFilterProps(e,t,u,{options:n,optionProps:a,optionGroups:r,optionGroupProps:o})),getFloatingFilterOns(e,t,l)))},tableCellFormatter:handleFormatSelect,tableCellCopyMethod:handleFormatSelect,tableCellPasteMethod:handleSetSelectValue,tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeText:{renderTableDefault(e,t){var{$table:l,row:n,column:a}=t,r=e.props,l=l.getCellLabel(n,a);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},r||{}),{content:l}),getComponentOns(e,t)))]}},VxeLink:{renderTableDefault(e,t){var{$table:l,row:n,column:a}=t,r=e.props,o=(r||{}).href,l=l.getCellLabel(n,a);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},r||{}),{content:l,href:_xeUtils.default.toFormatString(o,t)}),getComponentOns(e,t)))]}},formatOption:{renderTableDefault(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))}},FormatSelect:{renderTableDefault(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},tableCellFormatter:handleFormatSelect,tableCellCopyMethod:handleFormatSelect,tableCellPasteMethod:handleSetSelectValue,tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeTreeSelect:{tableAutoFocus:"input",renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getTreeSelectCellValue(e,t))},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},formatTree:{renderTableDefault(e,t){return getCellLabelVNs(e,t,getTreeSelectCellValue(e,t))}},FormatTreeSelect:{renderTableDefault(e,t){return getCellLabelVNs(e,t,getTreeSelectCellValue(e,t))},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},VxeTableSelect:{tableAutoFocus:"input",renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getTreeSelectCellValue(e,t))},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},VxeColorPicker:{tableAutoFocus:"input",renderTableEdit(e,t){var{row:l,column:n}=t,a=e.options,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{colors:a})),getEditOns(e,t)))]},renderTableCell(e,t){var{row:t,column:l}=t,t=_xeUtils.default.get(t,l.field);return(0,_vue.h)("span",{class:"vxe-color-picker--readonly"},[(0,_vue.h)("div",{class:"vxe-color-picker--readonly-color",style:{backgroundColor:t}})])}},VxeIconPicker:{tableAutoFocus:"input",renderTableEdit(e,t){var{row:l,column:n}=t,a=e.options,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{icons:a})),getEditOns(e,t)))]},renderTableCell(e,t){var{row:t,column:l}=t,t=_xeUtils.default.get(t,l.field);return(0,_vue.h)("i",{class:t})}},VxeRadioGroup:{renderTableDefault:radioAndCheckboxGroupEditRender},VxeCheckbox:{renderTableDefault:checkboxEditRender},VxeCheckboxGroup:{renderTableDefault:radioAndCheckboxGroupEditRender},VxeSwitch:{tableAutoFocus:"button",renderTableEdit:defaultEditRender,renderTableDefault:defaultEditRender},VxeUpload:{renderTableEdit:defaultEditRender,renderTableCell:defaultEditRender,renderTableDefault:defaultEditRender},VxeImage:{renderTableDefault(e,t){var{row:l,column:n}=t,a=e.props,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},a),{src:l}),getEditOns(e,t)))]}},VxeImageGroup:{renderTableDefault(e,t){var{row:l,column:n}=t,a=e.props,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},a),{urlList:l}),getEditOns(e,t)))]}},VxeTextEllipsis:{renderTableDefault(e,t){var{row:l,column:n}=t,a=e.props,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},a),{content:l}),getEditOns(e,t)))]}},VxeRate:{renderTableDefault:defaultEditRender},VxeSlider:{renderTableDefault:defaultEditRender},$input:{tableAutoFocus:".vxe-input--inner",renderTableEdit:oldEditRender,renderTableCell(e,t){var l,{props:n={}}=e,{row:a,column:r}=t,o=n.digits||(null==(l=getConfig().input)?void 0:l.digits)||2;let u=_xeUtils.default.get(a,r.field);if(u)switch(n.type){case"date":case"week":case"month":case"year":u=getLabelFormatDate(u,n);break;case"float":u=_xeUtils.default.toFixed(_xeUtils.default.floor(u,o),o)}return getCellLabelVNs(e,t,u)},renderTableDefault:oldEditRender,renderTableFilter:oldFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},$textarea:{tableAutoFocus:".vxe-textarea--inner"},$button:{renderTableDefault:oldButtonEditRender},$buttons:{renderTableDefault:oldButtonsEditRender},$select:{tableAutoFocus:".vxe-input--inner",renderTableEdit:oldSelectEditRender,renderTableDefault:oldSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderTableFilter(n,a){var e=a.column;let{options:r,optionProps:o,optionGroups:u,optionGroupProps:i}=n;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getOldComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,a,l,{options:r,optionProps:o,optionGroups:u,optionGroupProps:i})),getFilterOns(n,a,e)))})},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},$radio:{tableAutoFocus:".vxe-radio--input"},$checkbox:{tableAutoFocus:".vxe-checkbox--input"},$switch:{tableAutoFocus:".vxe-switch--button",renderTableEdit:oldEditRender,renderTableDefault:oldEditRender}});
|
|
1
|
+
var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("../../table/src/util"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,renderer,getI18n,getComponent}=_ui.VxeUI,componentDefaultModelProp="modelValue",defaultCompProps={};function handleDefaultValue(e,t,l){return _xeUtils.default.eqNull(e)?_xeUtils.default.eqNull(t)?l:t:e}function parseDate(e,t){return e&&t.valueFormat?_xeUtils.default.toStringDate(e,t.valueFormat):e}function getFormatDate(e,t,l){var{dateConfig:n={}}=t;return _xeUtils.default.toDateString(parseDate(e,t),n.labelFormat||l)}function getLabelFormatDate(e,t){return getFormatDate(e,t,getI18n("vxe.input.date.labelFormat."+(t.type||"date")))}function getOldComponentName(e){return"vxe-"+e.replace("$","")}function getDefaultComponent({name:e}){return getComponent(e)}function getOldComponent({name:e}){return(0,_vue.resolveComponent)(getOldComponentName(e))}function updateFilterChangeOption(e,t,l){e=e.$table;e.updateFilterOptionStatus(l,t)}function saveFilterEvent(e){var{$table:e,column:t}=e;e.saveFilterByEvent(new Event("change"),t)}function getNativeAttrs(e){let{name:t,attrs:l}=e;return l="input"===t?Object.assign({type:"text"},l):l}function getInputImmediateModel(e){var{name:e,immediate:t,props:l}=e;return t||("VxeInput"===e||"$input"===e?(t=(l||{}).type,!(!t||"text"===t||"number"===t||"integer"===t||"float"===t)):"input"!==e&&"textarea"!==e&&"$textarea"!==e)}function getCellEditProps(e,t,l,n){return _xeUtils.default.assign({immediate:getInputImmediateModel(e)},defaultCompProps,n,e.props,{[componentDefaultModelProp]:l})}function getCellEditFilterProps(e,t,l,n){return _xeUtils.default.assign({},defaultCompProps,n,e.props,{[componentDefaultModelProp]:l})}function isImmediateCell(e,t){return"cell"===t.$type||getInputImmediateModel(e)}function getCellLabelVNs(e,t,l,n){e=e.placeholder;return[(0,_vue.h)("span",{class:["vxe-cell--label",n?n.class:""]},e&&(0,_utils.isEmptyValue)(l)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(e),1))]:(0,_utils.formatText)(l,1))]}function getNativeElementOns(e,l,t){let n=e.events,a=(0,_vn.getModelEvent)(e),r=(0,_vn.getChangeEvent)(e),{model:u,change:o,blur:i}=t||{},d=r===a,s={};return n&&_xeUtils.default.objectEach(n,(t,e)=>{s[(0,_vn.getOnName)(e)]=function(...e){t(l,...e)}}),u&&(s[(0,_vn.getOnName)(a)]=function(e){u(e),d&&o&&o(e),n&&n[a]&&n[a](l,e)}),!d&&o&&(s[(0,_vn.getOnName)(r)]=function(e){o(e),n&&n[r]&&n[r](l,e)}),i&&(s[(0,_vn.getOnName)(blurEvent)]=function(e){i(e),n&&n[blurEvent]&&n[blurEvent](l,e)}),s}let blurEvent="blur",clearEvent="clear";function getComponentOns(e,l,t,n){let a=e.events,r=(0,_vn.getModelEvent)(e),u=(0,_vn.getChangeEvent)(e),{model:o,change:i,blur:d,clear:s}=t||{},p={};return _xeUtils.default.objectEach(a,(t,e)=>{p[(0,_vn.getOnName)(e)]=function(...e){_xeUtils.default.isFunction(t)||(0,_log.errLog)("vxe.error.errFunc",[t]),t(l,...e)}}),o&&(p[(0,_vn.getOnName)(r)]=function(e){o(e),a&&a[r]&&a[r](l,e)}),i&&(p[(0,_vn.getOnName)(u)]=function(...e){i(...e),a&&a[u]&&a[u](l,...e)}),d&&(p[(0,_vn.getOnName)(blurEvent)]=function(...e){d(...e),a&&a[blurEvent]&&a[blurEvent](l,...e)}),s&&(p[(0,_vn.getOnName)(clearEvent)]=function(...e){s(...e),a&&a[clearEvent]&&a[clearEvent](l,...e)}),n?Object.assign(p,n):p}function getEditOns(e,t){let{$table:l,row:n,column:a}=t,r=e.name,u=a.model,o=isImmediateCell(e,t);return getComponentOns(e,t,{model(e){u.update=!0,u.value=e,o&&(0,_util.setCellValue)(n,a,e)},change(e){!o&&r&&["VxeInput","VxeNumberInput","VxeTextarea","$input","$textarea"].includes(r)?(e=e.value,u.update=!0,u.value=e,l.updateStatus(t,e)):l.updateStatus(t)},blur(){o?l.handleCellRuleUpdateStatus("blur",t):l.handleCellRuleUpdateStatus("blur",t,u.value)}})}function getFilterOns(e,t,l){return getComponentOns(e,t,{model(e){l.data=e},change(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l)},blur(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l)}})}function getFloatingFilterOns(e,t,l){let{$table:n,column:a}=t;return(0,_vn.hasInputType)(e)?getComponentOns(e,t,{model(e){l.data=e},change(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l)},clear(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),saveFilterEvent(t)},blur(){n.saveFilterByEvent(new Event("change"),a)}},"VxeNumberInput"===e.name?{[(0,_vn.getOnName)("plus-number")](){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),saveFilterEvent(t)},[(0,_vn.getOnName)("minus-number")](){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),saveFilterEvent(t)}}:{}):getComponentOns(e,t,{model(e){l.data=e},clear(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),n.saveFilterByEvent(new Event("change"),a)},change(){updateFilterChangeOption(t,!(0,_utils.isEmptyValue)(l.data),l),n.saveFilterByEvent(new Event("change"),a)}})}function getNativeEditOns(t,l){let{$table:n,row:a,column:r}=l,u=r.model;return getNativeElementOns(t,l,{model(e){var e=e.target;e&&(e=e.value,isImmediateCell(t,l)?(0,_util.setCellValue)(a,r,e):(u.update=!0,u.value=e))},change(e){var e=e.target;e&&(e=e.value,n.updateStatus(l,e))},blur(e){var e=e.target;e&&(e=e.value,n.updateStatus(l,e))}})}function getNativeFilterOns(e,t,l){return getNativeElementOns(e,t,{model(e){e=e.target;e&&(l.data=e.value)},change(){updateFilterChangeOption(t,!_xeUtils.default.eqNull(l.data),l)},blur(){updateFilterChangeOption(t,!_xeUtils.default.eqNull(l.data),l)}})}function nativeEditRender(e,t){var{row:l,column:n}=t,a=e.name,l=isImmediateCell(e,t)?(0,_util.getCellValue)(l,n):n.model.value;return[(0,_vue.h)(""+a,Object.assign(Object.assign(Object.assign({class:"vxe-default-"+a},getNativeAttrs(e)),{value:l}),getNativeEditOns(e,t)))]}function buttonCellRender(e,t){return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function defaultEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function checkboxEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function radioAndCheckboxGroupEditRender(e,t){var l=e.options,{row:n,column:a}=t,n=(0,_util.getCellValue)(n,a);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({options:l},getCellEditProps(e,t,n)),getEditOns(e,t)))]}function oldEditRender(e,t){var{row:l,column:n}=t,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l)),getEditOns(e,t)))]}function oldButtonEditRender(e,t){return[(0,_vue.h)(getComponent("vxe-button"),Object.assign(Object.assign({},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}function oldButtonsEditRender(e,t){e=e.children;return e?e.map(e=>oldButtonEditRender(e,t)[0]):[]}function renderNativeOptgroups(l,n,a){var{optionGroups:e,optionGroupProps:t={}}=l;let r=t.options||"options",u=t.label||"label";return e?e.map((e,t)=>(0,_vue.h)("optgroup",{key:t,label:e[u]},a(e[r],l,n))):[]}function renderNativeOptions(e,t,l){var{optionProps:n={}}=t,{row:a,column:r}=l;let u=n.label||"label",o=n.value||"value",i=n.disabled||"disabled",d=isImmediateCell(t,l)?(0,_util.getCellValue)(a,r):r.model.value;return e?e.map((e,t)=>(0,_vue.h)("option",{key:t,value:e[o],disabled:e[i],selected:e[o]==d},e[u])):[]}function nativeFilterRender(l,n){var e=n.column;let a=l.name,r=getNativeAttrs(l);return e.filters.map((e,t)=>(0,_vue.h)(""+a,Object.assign(Object.assign(Object.assign({key:t,class:"vxe-default-"+a},r),{value:e.data}),getNativeFilterOns(l,n,e))))}function defaultFilterRender(n,a){var e=a.column;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getDefaultComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,n,l)),getFilterOns(n,a,e)))})}function defaultFloatingFilterRender(e,t){var l=t.option,n=l.data;return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditFilterProps(e,e,n)),getFloatingFilterOns(e,t,l)))]}function defaultFilterOptions(){return[{data:null}]}function oldFilterRender(n,a){var e=a.column;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getOldComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,n,l)),getFilterOns(n,a,e)))})}function handleFilterMethod({option:e,row:t,column:l}){e=e.data;return _xeUtils.default.get(t,l.field)==e}function handleInputFilterMethod({option:e,row:t,column:l}){e=e.data,t=_xeUtils.default.get(t,l.field);return-1<_xeUtils.default.toValueString(t).indexOf(e)}function nativeSelectEditRender(e,t){return[(0,_vue.h)("select",Object.assign(Object.assign({class:"vxe-default-select"},getNativeAttrs(e)),getNativeEditOns(e,t)),e.optionGroups?renderNativeOptgroups(e,t,renderNativeOptions):renderNativeOptions(e.options,e,t))]}function defaultSelectEditRender(e,t){var{row:l,column:n}=t,{options:a,optionProps:r,optionGroups:u,optionGroupProps:o}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:a,optionProps:r,optionGroups:u,optionGroupProps:o})),getEditOns(e,t)))]}function defaultTableOrTreeSelectEditRender(e,t){var{row:l,column:n}=t,{options:a,optionProps:r}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:a,optionProps:r})),getEditOns(e,t)))]}function oldSelectEditRender(e,t){var{row:l,column:n}=t,{options:a,optionProps:r,optionGroups:u,optionGroupProps:o}=e,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getOldComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{options:a,optionProps:r,optionGroups:u,optionGroupProps:o})),getEditOns(e,t)))]}function handleSelectCellValue(t,e){let{options:l,optionGroups:n,optionProps:a={},optionGroupProps:r={},props:u={}}=e,o,i=a.label||"label",d=a.value||"value";if(null==t)return"";{let e=[];return e=_xeUtils.default.isArray(t)?t:u.multiple&&-1<(""+t).indexOf(",")?(""+t).split(","):[t],_xeUtils.default.map(e,n?t=>{var l=r.options||"options";for(let e=0;e<n.length&&!(o=_xeUtils.default.find(n[e][l],e=>e[d]==t));e++);return o?o[i]:t}:t=>(o=_xeUtils.default.find(l,e=>e[d]==t))?o[i]:t).join(", ")}}function getSelectCellValue(e,{row:t,column:l}){return handleSelectCellValue(_xeUtils.default.get(t,l.field),e)}function handleExportSelectMethod(e){var{row:t,column:l,options:n}=e;return n.original?(0,_util.getCellValue)(t,l):getSelectCellValue(l.editRender||l.cellRender,e)}function handleTreeSelectCellValue(e,l){var{options:l,optionProps:n={}}=l;let a=n.label||"label",r=n.value||"value";if(null==e)return"";{let t={};return _xeUtils.default.eachTree(l,e=>{t[_xeUtils.default.get(e,r)]=e},{children:n.children||"children"}),_xeUtils.default.map(_xeUtils.default.isArray(e)?e:[e],e=>{e=t[e];return e&&_xeUtils.default.get(e,a)}).join(", ")}}function getTreeSelectCellValue(e,{row:t,column:l}){return handleTreeSelectCellValue(_xeUtils.default.get(t,l.field),e)}function handleExportTreeSelectMethod(e){var{row:t,column:l,options:n}=e;return n.original?(0,_util.getCellValue)(t,l):getTreeSelectCellValue(l.editRender||l.cellRender,e)}function handleNumberCell(e,t){var l,n,{props:a={},showNegativeStatus:r}=e,{row:u,column:o}=t,i=a.type;let d=_xeUtils.default.get(u,o.field),s=!1;return(0,_utils.isEmptyValue)(d)||(u=getConfig().numberInput||{},"float"===i?(o=handleDefaultValue(a.autoFill,u.autoFill,!0),n=handleDefaultValue(a.digits,u.digits,1),d=_xeUtils.default.toFixed(_xeUtils.default.floor(d,n),n),o||(d=_xeUtils.default.toNumber(d)),r&&d<0&&(s=!0)):"amount"===i?(n=handleDefaultValue(a.autoFill,u.autoFill,!0),o=handleDefaultValue(a.digits,u.digits,2),l=handleDefaultValue(a.showCurrency,u.showCurrency,!1),d=_xeUtils.default.toNumber(d),r&&d<0&&(s=!0),d=_xeUtils.default.commafy(d,{digits:o}),n||([o,n]=d.split("."),n&&(n=n.replace(/0+$/,""),d=n?[o,".",n].join(""):o)),l&&(d=""+(a.currencySymbol||u.currencySymbol||getI18n("vxe.numberInput.currencySymbol")||"")+d)):("integer"===i&&(d=_xeUtils.default.toInteger(d)),r&&_xeUtils.default.toNumber(d)<0&&(s=!0))),getCellLabelVNs(e,t,d,s?{class:"is--negative"}:{})}function handleFormatDatePicker(e,t){var{props:e={}}=e,t=t.cellValue;return t&&"time"!==e.type?getLabelFormatDate(t,e):t}function handleFormatSelect(e,t){t=t.cellValue;return handleSelectCellValue(t,e)}function handleSetSelectValue(e,t){var{row:a,column:t,cellValue:r}=t,u=t.field;if(u){var{options:o,optionGroups:i,optionProps:t={},optionGroupProps:e={},props:l}=e;if((0,_utils.isEmptyValue)(r))_xeUtils.default.set(a,u,l&&l.multiple?[]:null);else{var d=-1<_xeUtils.default.indexOf(""+r,","),s=t.label||"label";let l=t.value||"value",n={};if(i&&i.length){var p=e.options||"options";for(let e=0;e<i.length;e++){var c=i[e][p]||{};for(let e=0;e<c.length;e++){var g=c[e];if(d)n[g[s]]=g;else if(g[s]==r)return void _xeUtils.default.set(a,u,g[l])}}}else if(o)for(let e=0;e<o.length;e++){var f=o[e];if(d)n[f[s]]=f;else if(f[s]==r)return void _xeUtils.default.set(a,u,f[l])}d?_xeUtils.default.set(a,u,(d?r.split(","):[r]).map(e=>{var t=n[e];return t?t[l]:e})):_xeUtils.default.set(a,u,r)}}}function handleFormatTreeSelect(e,t){t=t.cellValue;return handleTreeSelectCellValue(t,e)}function handleSetTreeSelectValue(e,l){let{row:n,column:t,cellValue:a}=l;l=t.field;if(l){var{options:e,optionProps:r={}}=e;let t=r.label||"label";var u=r.value||"value",e=_xeUtils.default.findTree(e||[],e=>_xeUtils.default.get(e,t)===a,{children:r.children||"children"});if(e){r=e.item;if(r)return void _xeUtils.default.set(n,l,r[u])}_xeUtils.default.set(n,l,a)}}renderer.mixin({input:{tableAutoFocus:"input",renderTableEdit:nativeEditRender,renderTableDefault:nativeEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:nativeFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},textarea:{tableAutoFocus:"textarea",renderTableEdit:nativeEditRender},select:{renderTableEdit:nativeSelectEditRender,renderTableDefault:nativeSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},createTableFilterOptions:defaultFilterOptions,renderTableFilter(l,n){var e=n.column;return e.filters.map((e,t)=>(0,_vue.h)("select",Object.assign(Object.assign({key:t,class:"vxe-default-select"},getNativeAttrs(l)),getNativeFilterOns(l,n,e)),l.optionGroups?renderNativeOptgroups(l,n,renderNativeOptions):renderNativeOptions(l.options,l,n)))},tableCellFormatter:handleFormatSelect,tableCellCopyMethod:handleFormatSelect,tableCellPasteMethod:handleSetSelectValue,tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeInput:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t){var{props:l={}}=e,{row:n,column:a}=t,r=getConfig().input||{},u=l.digits||r.digits||2;let o=_xeUtils.default.get(n,a.field);if(o)switch(l.type){case"date":case"week":case"month":case"quarter":case"year":o=getLabelFormatDate(o,l);break;case"float":o=_xeUtils.default.toFixed(_xeUtils.default.floor(o,u),u)}return getCellLabelVNs(e,t,o)},renderTableDefault:defaultEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:defaultFilterRender,renderTableFloatingFilter:defaultFloatingFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},FormatNumberInput:{renderTableDefault:handleNumberCell,tableFilterDefaultMethod:handleInputFilterMethod,tableExportMethod(e){var{row:e,column:t}=e;return _xeUtils.default.get(e,t.field)}},VxeNumberInput:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell:handleNumberCell,renderTableFooter(t,l){var{props:t={}}=t,{row:l,column:n,_columnIndex:a}=l,r=t.type,a=_xeUtils.default.isArray(l)?l[a]:_xeUtils.default.get(l,n.field);if(_xeUtils.default.isNumber(a)){l=getConfig().numberInput||{};if("float"===r){var n=handleDefaultValue(t.autoFill,l.autoFill,!0),u=handleDefaultValue(t.digits,l.digits,1);let e=_xeUtils.default.toFixed(_xeUtils.default.floor(a,u),u);return e=n?e:""+_xeUtils.default.toNumber(e)}if("amount"===r){var u=handleDefaultValue(t.autoFill,l.autoFill,!0),n=handleDefaultValue(t.digits,l.digits,2),r=handleDefaultValue(t.showCurrency,l.showCurrency,!1);let e=_xeUtils.default.commafy(_xeUtils.default.toNumber(a),{digits:n});return u||([n,u]=e.split("."),u&&(u=u.replace(/0+$/,""),e=u?[n,".",u].join(""):n)),e=r?""+(t.currencySymbol||l.currencySymbol||getI18n("vxe.numberInput.currencySymbol")||"")+e:e}}return(0,_utils.getFuncText)(a,1)},renderTableDefault:defaultEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:defaultFilterRender,renderTableFloatingFilter:defaultFloatingFilterRender,tableFilterDefaultMethod:handleInputFilterMethod,tableExportMethod(e){var{row:e,column:t}=e;return _xeUtils.default.get(e,t.field)}},VxeDatePicker:{tableAutoFocus:"input",renderTableEdit:defaultEditRender,renderTableCell(e,t){let l=e.props||{};var{$table:n,row:a,column:r}=t,n=n.effectCellData(a,r,{key:"render_table_cell",getResult({cellValue:e}){return e&&"time"!==l.type?getLabelFormatDate(e,l):e}}).cellResult;return getCellLabelVNs(e,t,n)},tableCellFormatter:handleFormatDatePicker,renderTableDefault:defaultEditRender,createTableFilterOptions:defaultFilterOptions,renderTableFilter:defaultFilterRender,renderTableFloatingFilter:defaultFloatingFilterRender,tableFilterDefaultMethod:handleFilterMethod},VxeDateRangePicker:{tableAutoFocus:"input",renderTableEdit(e,t){let{startField:l,endField:n}=e,{$table:a,row:r,column:u}=t,o=u.model;var i=(0,_util.getCellValue)(r,u),d={},s={};return l&&n&&(d.startValue=_xeUtils.default.get(r,l),d.endValue=_xeUtils.default.get(r,n),s["onUpdate:startValue"]=e=>{l&&_xeUtils.default.set(r,l,e)},s["onUpdate:endValue"]=e=>{n&&_xeUtils.default.set(r,n,e)}),[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,i,d)),getComponentOns(e,t,{model(e){o.update=!0,o.value=e,(0,_util.setCellValue)(r,u,e)},change(){a.updateStatus(t)},blur(){a.handleCellRuleUpdateStatus("blur",t)}},s)))]},renderTableDefault(e,t){let{startField:l,endField:n}=e,{row:a,column:r}=t,u=r.model;var o=(0,_util.getCellValue)(a,r),i={},d={};return l&&n&&(i.startValue=_xeUtils.default.get(a,l),i.endValue=_xeUtils.default.get(a,n),d["onUpdate:startValue"]=e=>{l&&_xeUtils.default.set(a,l,e)},d["onUpdate:endValue"]=e=>{n&&_xeUtils.default.set(a,n,e)}),[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,o,i)),getComponentOns(e,t,{model(e){u.update=!0,u.value=e,(0,_util.setCellValue)(a,r,e)}},d)))]},renderTableCell(e,t){var{startField:l,endField:n}=e,{row:a,column:r}=t;let u="",o="",i=(l&&n?(u=_xeUtils.default.get(a,l),o=_xeUtils.default.get(a,n)):(l=_xeUtils.default.get(a,r.field))&&(o=(_xeUtils.default.isArray(l)?(u=l[0],l):(n=(""+l).split(","),u=n[0],n))[1]),"");return getCellLabelVNs(e,t,i=u&&o?u+" ~ "+o:i)}},VxeTextarea:{tableAutoFocus:"textarea",renderTableDefault:defaultEditRender,renderTableEdit:defaultEditRender,renderTableCell(e,t){var{row:l,column:n}=t;return getCellLabelVNs(e,t,_xeUtils.default.get(l,n.field))}},VxeButton:{renderTableDefault:buttonCellRender},VxeButtonGroup:{renderTableDefault(e,t){var l=e.options;return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({options:l},getCellEditProps(e,t,null)),getComponentOns(e,t)))]}},VxeSelect:{tableAutoFocus:"input",renderTableEdit:defaultSelectEditRender,renderTableDefault:defaultSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},createTableFilterOptions:defaultFilterOptions,renderTableFilter(n,a){var e=a.column;let{options:r,optionProps:u,optionGroups:o,optionGroupProps:i}=n;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getDefaultComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,a,l,{options:r,optionProps:u,optionGroups:o,optionGroupProps:i})),getFilterOns(n,a,e)))})},renderTableFloatingFilter(e,t){var l=t.option,{options:n,optionProps:a,optionGroups:r,optionGroupProps:u}=e,o=l.data;return(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditFilterProps(e,t,o,{options:n,optionProps:a,optionGroups:r,optionGroupProps:u})),getFloatingFilterOns(e,t,l)))},tableCellFormatter:handleFormatSelect,tableCellCopyMethod:handleFormatSelect,tableCellPasteMethod:handleSetSelectValue,tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeText:{renderTableDefault(e,t){var{$table:l,row:n,column:a}=t,r=e.props,l=l.getCellLabel(n,a);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},r||{}),{content:l}),getComponentOns(e,t)))]}},VxeLink:{renderTableDefault(e,t){var{$table:l,row:n,column:a}=t,r=e.props,u=(r||{}).href,l=l.getCellLabel(n,a);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},r||{}),{content:l,href:_xeUtils.default.toFormatString(u,t)}),getComponentOns(e,t)))]}},formatOption:{renderTableDefault(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))}},FormatSelect:{renderTableDefault(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatSelect,tableCellCopyMethod:handleFormatSelect,tableCellPasteMethod:handleSetSelectValue,tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},VxeTreeSelect:{tableAutoFocus:"input",renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleTreeSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},formatTree:{renderTableDefault(e,t){return getCellLabelVNs(e,t,getTreeSelectCellValue(e,t))}},FormatTreeSelect:{renderTableDefault(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleTreeSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},VxeTableSelect:{tableAutoFocus:"input",renderTableEdit:defaultTableOrTreeSelectEditRender,renderTableCell(t,e){var{options:l,optionGroups:n}=t,{$table:a,row:r,column:u}=e;let o=l?l.length:null,i=n?n.length:null;l=a.effectCellData(r,u,{key:"render_table_cell",isChanged({oldValue:e,cellValue:t}){return e&&e[0]===t&&e[1]===o&&e[2]===i},setValue({cellValue:e}){return[e,o,i]},getResult({cellValue:e}){return handleTreeSelectCellValue(e,t)}}).cellResult;return getCellLabelVNs(t,e,l)},tableCellFormatter:handleFormatTreeSelect,tableCellCopyMethod:handleFormatTreeSelect,tableCellPasteMethod:handleSetTreeSelectValue,tableExportMethod:handleExportTreeSelectMethod},VxeColorPicker:{tableAutoFocus:"input",renderTableEdit(e,t){var{row:l,column:n}=t,a=e.options,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{colors:a})),getEditOns(e,t)))]},renderTableCell(e,t){var{row:t,column:l}=t,t=_xeUtils.default.get(t,l.field);return(0,_vue.h)("span",{class:"vxe-color-picker--readonly"},[(0,_vue.h)("div",{class:"vxe-color-picker--readonly-color",style:{backgroundColor:t}})])}},VxeIconPicker:{tableAutoFocus:"input",renderTableEdit(e,t){var{row:l,column:n}=t,a=e.options,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign({},getCellEditProps(e,t,l,{icons:a})),getEditOns(e,t)))]},renderTableCell(e,t){var{row:t,column:l}=t,t=_xeUtils.default.get(t,l.field);return(0,_vue.h)("i",{class:t})}},VxeRadioGroup:{renderTableDefault:radioAndCheckboxGroupEditRender},VxeCheckbox:{renderTableDefault:checkboxEditRender},VxeCheckboxGroup:{renderTableDefault:radioAndCheckboxGroupEditRender},VxeSwitch:{tableAutoFocus:"button",renderTableEdit:defaultEditRender,renderTableDefault:defaultEditRender},VxeUpload:{renderTableEdit:defaultEditRender,renderTableCell:defaultEditRender,renderTableDefault:defaultEditRender},VxeImage:{renderTableDefault(e,t){var{row:l,column:n}=t,a=e.props,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},a),{src:l}),getEditOns(e,t)))]}},VxeImageGroup:{renderTableDefault(e,t){var{row:l,column:n}=t,a=e.props,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},a),{urlList:l}),getEditOns(e,t)))]}},VxeTextEllipsis:{renderTableDefault(e,t){var{row:l,column:n}=t,a=e.props,l=(0,_util.getCellValue)(l,n);return[(0,_vue.h)(getDefaultComponent(e),Object.assign(Object.assign(Object.assign({},a),{content:l}),getEditOns(e,t)))]}},VxeRate:{renderTableDefault:defaultEditRender},VxeSlider:{renderTableDefault:defaultEditRender},$input:{tableAutoFocus:".vxe-input--inner",renderTableEdit:oldEditRender,renderTableCell(e,t){var l,{props:n={}}=e,{row:a,column:r}=t,u=n.digits||(null==(l=getConfig().input)?void 0:l.digits)||2;let o=_xeUtils.default.get(a,r.field);if(o)switch(n.type){case"date":case"week":case"month":case"year":o=getLabelFormatDate(o,n);break;case"float":o=_xeUtils.default.toFixed(_xeUtils.default.floor(o,u),u)}return getCellLabelVNs(e,t,o)},renderTableDefault:oldEditRender,renderTableFilter:oldFilterRender,tableFilterDefaultMethod:handleInputFilterMethod},$textarea:{tableAutoFocus:".vxe-textarea--inner"},$button:{renderTableDefault:oldButtonEditRender},$buttons:{renderTableDefault:oldButtonsEditRender},$select:{tableAutoFocus:".vxe-input--inner",renderTableEdit:oldSelectEditRender,renderTableDefault:oldSelectEditRender,renderTableCell(e,t){return getCellLabelVNs(e,t,getSelectCellValue(e,t))},renderTableFilter(n,a){var e=a.column;let{options:r,optionProps:u,optionGroups:o,optionGroupProps:i}=n;return e.filters.map((e,t)=>{var l=e.data;return(0,_vue.h)(getOldComponent(n),Object.assign(Object.assign({key:t},getCellEditFilterProps(n,a,l,{options:r,optionProps:u,optionGroups:o,optionGroupProps:i})),getFilterOns(n,a,e)))})},tableFilterDefaultMethod:handleFilterMethod,tableExportMethod:handleExportSelectMethod},$radio:{tableAutoFocus:".vxe-radio--input"},$checkbox:{tableAutoFocus:".vxe-checkbox--input"},$switch:{tableAutoFocus:".vxe-switch--button",renderTableEdit:oldEditRender,renderTableDefault:oldEditRender}});
|
package/lib/table/src/table.js
CHANGED
|
@@ -170,7 +170,7 @@ if(!treeOpts.rowField){(0,_log.errLog)('vxe.error.reqProp',['tree-config.rowFiel
|
|
|
170
170
|
// warnLog('vxe.error.errConflicts', ['tree-config.transform', `row.${treeOpts.children}`])
|
|
171
171
|
// }
|
|
172
172
|
// })
|
|
173
|
-
treeData=_xeUtils.default.toArrayTree(fullData,{key:treeOpts.rowField,parentKey:treeOpts.parentField,children:childrenField,mapChildren:treeOpts.mapChildrenField});fullData=treeData.slice(0);}else{treeData=fullData.slice(0);}}else if((aggregateConfig||rowGroupConfig)&&rowGroupList.length){const groupRest=initGroupData(fullData,rowGroupList);treeData=groupRest.treeData;fullData=groupRest.fullData;isRGroup=true;}reactData.isRowGroupStatus=isRGroup;scrollYStore.startIndex=0;scrollYStore.endIndex=1;scrollXStore.startIndex=0;scrollXStore.endIndex=1;internalData.cvCacheMaps={};reactData.isRowLoading=true;reactData.scrollVMLoading=false;reactData.treeExpandedFlag++;reactData.rowExpandedFlag++;internalData.insertRowMaps={};reactData.insertRowFlag++;internalData.removeRowMaps={};reactData.removeRowFlag++;internalData.fullCellHeightMaps={};const sYLoad=updateScrollYStatus(fullData);// 全量数据
|
|
173
|
+
treeData=_xeUtils.default.toArrayTree(fullData,{key:treeOpts.rowField,parentKey:treeOpts.parentField,children:childrenField,mapChildren:treeOpts.mapChildrenField});fullData=treeData.slice(0);}else{treeData=fullData.slice(0);}}else if((aggregateConfig||rowGroupConfig)&&rowGroupList.length){const groupRest=initGroupData(fullData,rowGroupList);treeData=groupRest.treeData;fullData=groupRest.fullData;isRGroup=true;}reactData.isRowGroupStatus=isRGroup;scrollYStore.startIndex=0;scrollYStore.endIndex=1;scrollXStore.startIndex=0;scrollXStore.endIndex=1;internalData.cvCacheMaps={};reactData.isRowLoading=true;reactData.scrollVMLoading=false;reactData.treeExpandedFlag++;reactData.rowExpandedFlag++;internalData.insertRowMaps={};reactData.insertRowFlag++;internalData.removeRowMaps={};reactData.removeRowFlag++;internalData.fullCellHeightMaps={};internalData.fullCellStoreMaps={};const sYLoad=updateScrollYStatus(fullData);// 全量数据
|
|
174
174
|
internalData.tableFullData=fullData;internalData.tableFullTreeData=isRGroup?[]:treeData;internalData.tableFullGroupData=isRGroup?treeData:[];// 缓存数据
|
|
175
175
|
$xeTable.cacheRowMap(isReset);// 原始数据
|
|
176
176
|
internalData.tableSynchData=datas;if(isReset){internalData.isResizeCellHeight=false;}// 克隆原数据,用于显示编辑状态,与编辑值做对比
|
|
@@ -338,7 +338,7 @@ if(virtualXOpts.scrollToLeftOnChange){targetScrollLeft=0;}if(virtualYOpts.scroll
|
|
|
338
338
|
* 如果还额外传了 field 则清空指定单元格内容
|
|
339
339
|
* @param {Array/Row} rows 行数据
|
|
340
340
|
* @param {String} field 字段名
|
|
341
|
-
*/clearData(rows,field){const{tableFullData,visibleColumn}=internalData;if(!arguments.length){rows=tableFullData;}else if(rows&&!_xeUtils.default.isArray(rows)){rows=[rows];}if(field){rows.forEach(row=>_xeUtils.default.set(row,field,null));}else{rows.forEach(row=>{visibleColumn.forEach(column=>{if(column.field){(0,_util.setCellValue)(row,column,null);}});});}return(0,_vue.nextTick)();},getCellElement(row,fieldOrColumn){const{elemStore}=internalData;const column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(!column){return null;}const rowid=(0,_util.getRowid)($xeTable,row);const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const leftScrollElem=(0,_util.getRefElem)(elemStore['left-body-scroll']);const rightScrollElem=(0,_util.getRefElem)(elemStore['right-body-scroll']);let bodyElem;if(column){if(column.fixed){if(column.fixed==='left'){if(leftScrollElem){bodyElem=leftScrollElem;}}else{if(rightScrollElem){bodyElem=rightScrollElem;}}}if(!bodyElem){bodyElem=bodyScrollElem;}if(bodyElem){return bodyElem.querySelector(`.vxe-body--row[rowid="${rowid}"] .${column.id}`);}}return null;},getCellLabel(row,fieldOrColumn){const column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(!column){return null;}const{editConfig}=props;const{formatter,editRender,cellRender}=column;// formatter > tableCellFormatter
|
|
341
|
+
*/clearData(rows,field){const{tableFullData,visibleColumn}=internalData;if(!arguments.length){rows=tableFullData;}else if(rows&&!_xeUtils.default.isArray(rows)){rows=[rows];}if(field){rows.forEach(row=>_xeUtils.default.set(row,field,null));}else{rows.forEach(row=>{visibleColumn.forEach(column=>{if(column.field){(0,_util.setCellValue)(row,column,null);}});});}return(0,_vue.nextTick)();},effectCellData(row,column,options){const{fullCellStoreMaps}=internalData;const editOpts=computeEditOpts.value;const{key,isChanged,setValue,getResult}=options;const rowid=(0,_util.getRowid)($xeTable,row);const colid=column.id;let rowStore=fullCellStoreMaps[rowid];const cellValue=_xeUtils.default.get(row,column.field);const restParams={$table:$xeTable,row,rowid,column,colid,cellValue,oldValue:null};if(editOpts.cache===false&&key==='render_table_cell'){const rest=restParams;rest.cellResult=getResult?getResult(restParams):cellValue;return rest;}if(!rowStore){rowStore={};fullCellStoreMaps[rowid]=rowStore;}let cellStore=rowStore[colid];if(!cellStore){cellStore={value:undefined,result:{}};rowStore[colid]=cellStore;}const restData=rowStore[colid];const oldValue=restData.value;restParams.oldValue=oldValue;if(isChanged?!isChanged(restParams):oldValue!==cellValue){restData.value=setValue?setValue(restParams):cellValue;restData.result={};}const storeData=restData.result;if(_xeUtils.default.isUndefined(storeData[key])){storeData[key]=getResult?getResult(restParams):cellValue;}const cellResult=storeData[key];const rest=restParams;rest.cellResult=cellResult;return rest;},getCellElement(row,fieldOrColumn){const{elemStore}=internalData;const column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(!column){return null;}const rowid=(0,_util.getRowid)($xeTable,row);const bodyScrollElem=(0,_util.getRefElem)(elemStore['main-body-scroll']);const leftScrollElem=(0,_util.getRefElem)(elemStore['left-body-scroll']);const rightScrollElem=(0,_util.getRefElem)(elemStore['right-body-scroll']);let bodyElem;if(column){if(column.fixed){if(column.fixed==='left'){if(leftScrollElem){bodyElem=leftScrollElem;}}else{if(rightScrollElem){bodyElem=rightScrollElem;}}}if(!bodyElem){bodyElem=bodyScrollElem;}if(bodyElem){return bodyElem.querySelector(`.vxe-body--row[rowid="${rowid}"] .${column.id}`);}}return null;},getCellLabel(row,fieldOrColumn){const column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(!column){return null;}const{editConfig}=props;const{formatter,editRender,cellRender}=column;// formatter > tableCellFormatter
|
|
342
342
|
const renderOpts=formatter?null:editConfig&&(0,_utils.isEnableConf)(editRender)?editRender:(0,_utils.isEnableConf)(cellRender)?cellRender:null;const compConf=renderOpts?renderer.get(renderOpts.name):null;const tcFormatter=compConf?compConf.tableCellFormatter:null;const cellValue=(0,_util.getCellValue)(row,column);let cellLabel=cellValue;if(formatter||tcFormatter){let formatData;const{fullAllDataRowIdData}=internalData;const rowid=(0,_util.getRowid)($xeTable,row);const colid=column.id;const rowRest=fullAllDataRowIdData[rowid];if(rowRest){formatData=rowRest.formatData;if(!formatData){formatData=fullAllDataRowIdData[rowid].formatData={};}if(rowRest&&formatData[colid]){if(formatData[colid].value===cellValue){return formatData[colid].label;}}}const formatParams={$table:$xeTable,cellValue,row,rowIndex:$xeTable.getRowIndex(row),column,columnIndex:$xeTable.getColumnIndex(column)};if(formatter){if(_xeUtils.default.isString(formatter)){const gFormatOpts=formats.get(formatter);const tcFormatMethod=gFormatOpts?gFormatOpts.tableCellFormatMethod||gFormatOpts.cellFormatMethod:null;cellLabel=tcFormatMethod?tcFormatMethod(formatParams):'';}else if(_xeUtils.default.isArray(formatter)){const gFormatOpts=formats.get(formatter[0]);const tcFormatMethod=gFormatOpts?gFormatOpts.tableCellFormatMethod||gFormatOpts.cellFormatMethod:null;cellLabel=tcFormatMethod?tcFormatMethod(formatParams,...formatter.slice(1)):'';}else{cellLabel=formatter(formatParams);}}else if(renderOpts&&tcFormatter){cellLabel=tcFormatter(renderOpts,formatParams);}if(formatData){formatData[colid]={value:cellValue,label:cellLabel};}}return cellLabel;},updateCellLabel(row,fieldOrColumn){const column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(!column){return null;}const{fullAllDataRowIdData}=internalData;const rowid=(0,_util.getRowid)($xeTable,row);if(rowid){const colid=column.id;const rowid=(0,_util.getRowid)($xeTable,row);const rowRest=fullAllDataRowIdData[rowid];if(rowRest){const formatData=rowRest.formatData;if(formatData){delete formatData[colid];}}}return $xeTable.getFooterCellLabel(row,column);},clearFormatterCache(isUpdate){const{tableData,tableColumn}=reactData;const{fullAllDataRowIdData}=internalData;_xeUtils.default.each(fullAllDataRowIdData,rowRest=>{if(rowRest.formatData){rowRest.formatData=undefined;}});if(isUpdate){tableData.forEach(row=>{tableColumn.forEach(column=>{$xeTable.getCellLabel(row,column);});});}return(0,_vue.nextTick)();},getHeaderCellLabel(fieldOrColumn){const column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(!column){return null;}const{headerFormatter}=column;const _columnIndex=$xeTable.getVTColumnIndex(column);let cellLabel=column.getTitle();if(headerFormatter){let formatData;const{headerFullDataColData}=internalData;const colid=column.id;let colRest=headerFullDataColData[colid];if(!colRest){colRest=headerFullDataColData[colid]={};}const formatObj=colRest.formatObj;if(formatObj&&formatObj.value===cellLabel){return formatObj.label;}const headFormatParams={$table:$xeTable,cellTitle:cellLabel,cellValue:cellLabel,column,_columnIndex,columnIndex:$xeTable.getColumnIndex(column)};if(_xeUtils.default.isString(headerFormatter)){const gFormatOpts=formats.get(headerFormatter);const fcFormatMethod=gFormatOpts?gFormatOpts.tableHeaderCellFormatMethod:null;cellLabel=_xeUtils.default.toValueString(fcFormatMethod?fcFormatMethod(headFormatParams):'');}else if(_xeUtils.default.isArray(headerFormatter)){const gFormatOpts=formats.get(headerFormatter[0]);const fcFormatMethod=gFormatOpts?gFormatOpts.tableHeaderCellFormatMethod:null;cellLabel=_xeUtils.default.toValueString(fcFormatMethod?fcFormatMethod(headFormatParams,...headerFormatter.slice(1)):'');}else{cellLabel=_xeUtils.default.toValueString(headerFormatter(headFormatParams));}if(formatData){colRest.formatObj={value:cellLabel,label:cellLabel};}}return cellLabel;},updateHeaderCellLabel(fieldOrColumn){const column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(!column){return'';}const{headerFullDataColData}=internalData;const colid=column.id;const colRest=headerFullDataColData[colid];if(colRest){colRest.formatObj=undefined;}return $xeTable.getHeaderCellLabel(column);},clearHeaderFormatterCache(isUpdate){const{tableColumn}=reactData;const{headerFullDataColData}=internalData;_xeUtils.default.each(headerFullDataColData,colRest=>{if(colRest.formatObj){colRest.formatObj=undefined;}});if(isUpdate){tableColumn.forEach(column=>{$xeTable.getHeaderCellLabel(column);});}return(0,_vue.nextTick)();},getFooterCellLabel(row,fieldOrColumn){const column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(!column){return null;}const{footerFormatter}=column;const _columnIndex=$xeTable.getVTColumnIndex(column);let itemValue='';// 兼容老模式
|
|
343
343
|
if(_xeUtils.default.isArray(row)){itemValue=row[_columnIndex];}else{itemValue=_xeUtils.default.get(row,column.field);}let cellLabel=itemValue;if(footerFormatter){let formatData;const{footerTableData}=reactData;const{footerFullDataRowData}=internalData;const colid=column.id;const $rowIndex=footerTableData.indexOf(row);let rowRest=null;if($rowIndex>-1){rowRest=footerFullDataRowData[$rowIndex];if(!rowRest){rowRest=footerFullDataRowData[$rowIndex]={};}formatData=rowRest.formatData;if(!formatData){formatData=footerFullDataRowData[$rowIndex].formatData={};}if(rowRest&&formatData[colid]){if(formatData[colid].value===itemValue){return formatData[colid].label;}}}const footerFormatParams={$table:$xeTable,cellValue:itemValue,itemValue,row,items:row,$rowIndex,column,_columnIndex,columnIndex:$xeTable.getColumnIndex(column)};if(_xeUtils.default.isString(footerFormatter)){const gFormatOpts=formats.get(footerFormatter);const fcFormatMethod=gFormatOpts?gFormatOpts.tableFooterCellFormatMethod:null;cellLabel=fcFormatMethod?fcFormatMethod(footerFormatParams):'';}else if(_xeUtils.default.isArray(footerFormatter)){const gFormatOpts=formats.get(footerFormatter[0]);const fcFormatMethod=gFormatOpts?gFormatOpts.tableFooterCellFormatMethod:null;cellLabel=fcFormatMethod?fcFormatMethod(footerFormatParams,...footerFormatter.slice(1)):'';}else{cellLabel=footerFormatter(footerFormatParams);}if(formatData){formatData[colid]={value:itemValue,label:cellLabel};}}return cellLabel;},updateFooterCellLabel(row,fieldOrColumn){const column=(0,_util.handleFieldOrColumn)($xeTable,fieldOrColumn);if(!column){return null;}const{footerTableData}=reactData;const{footerFullDataRowData}=internalData;const colid=column.id;const $rowIndex=footerTableData.indexOf(row);const rowRest=footerFullDataRowData[$rowIndex];if(rowRest){const formatData=rowRest.formatData;if(formatData){delete formatData[colid];}}return $xeTable.getFooterCellLabel(row,column);},clearFooterFormatterCache(isUpdate){const{tableData,tableColumn}=reactData;const{footerFullDataRowData}=internalData;_xeUtils.default.each(footerFullDataRowData,rowRest=>{if(rowRest.formatData){rowRest.formatData=undefined;}});if(isUpdate){tableData.forEach(row=>{tableColumn.forEach(column=>{$xeTable.getFooterCellLabel(row,column);});});}return(0,_vue.nextTick)();},/**
|
|
344
344
|
* 检查是否为临时行数据
|