vxe-table 4.19.8 → 4.19.10
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 +219 -28
- package/dist/style.css +1 -1
- package/es/grid/src/grid.js +1 -1
- package/es/locale/lang/ar-EG.js +9 -9
- package/es/locale/lang/de-DE.js +8 -8
- package/es/locale/lang/en-US.js +8 -8
- package/es/locale/lang/es-ES.js +10 -10
- package/es/locale/lang/fr-FR.js +10 -10
- package/es/locale/lang/hu-HU.js +9 -9
- package/es/locale/lang/hy-AM.js +1 -1
- package/es/locale/lang/id-ID.js +10 -10
- package/es/locale/lang/it-IT.js +10 -10
- package/es/locale/lang/ja-JP.js +10 -10
- package/es/locale/lang/ko-KR.js +9 -9
- package/es/locale/lang/ms-MY.js +10 -10
- package/es/locale/lang/nb-NO.js +9 -9
- package/es/locale/lang/pt-BR.js +10 -10
- package/es/locale/lang/ru-RU.js +10 -10
- package/es/locale/lang/th-TH.js +9 -9
- package/es/locale/lang/ug-CN.js +9 -9
- package/es/locale/lang/uk-UA.js +10 -10
- package/es/locale/lang/uz-UZ.js +10 -10
- package/es/locale/lang/vi-VN.js +10 -10
- package/es/style.css +1 -1
- package/es/table/render/index.js +153 -14
- package/es/table/src/body.js +11 -11
- 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 +279 -31
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/ar-EG.js +9 -9
- package/lib/locale/lang/ar-EG.min.js +1 -1
- package/lib/locale/lang/ar-EG.umd.js +9 -9
- package/lib/locale/lang/de-DE.js +8 -8
- package/lib/locale/lang/de-DE.min.js +1 -1
- package/lib/locale/lang/de-DE.umd.js +8 -8
- package/lib/locale/lang/en-US.js +8 -8
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +8 -8
- package/lib/locale/lang/es-ES.js +10 -10
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +10 -10
- package/lib/locale/lang/fr-FR.js +10 -10
- package/lib/locale/lang/fr-FR.min.js +1 -1
- package/lib/locale/lang/fr-FR.umd.js +10 -10
- package/lib/locale/lang/hu-HU.js +9 -9
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +9 -9
- package/lib/locale/lang/hy-AM.js +1 -1
- package/lib/locale/lang/hy-AM.min.js +1 -1
- package/lib/locale/lang/hy-AM.umd.js +1 -1
- package/lib/locale/lang/id-ID.js +10 -10
- package/lib/locale/lang/id-ID.min.js +1 -1
- package/lib/locale/lang/id-ID.umd.js +10 -10
- package/lib/locale/lang/it-IT.js +10 -10
- package/lib/locale/lang/it-IT.min.js +1 -1
- package/lib/locale/lang/it-IT.umd.js +10 -10
- package/lib/locale/lang/ja-JP.js +10 -10
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +10 -10
- package/lib/locale/lang/ko-KR.js +9 -9
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +9 -9
- package/lib/locale/lang/ms-MY.js +10 -10
- package/lib/locale/lang/ms-MY.min.js +1 -1
- package/lib/locale/lang/ms-MY.umd.js +10 -10
- package/lib/locale/lang/nb-NO.js +9 -9
- package/lib/locale/lang/nb-NO.min.js +1 -1
- package/lib/locale/lang/nb-NO.umd.js +9 -9
- package/lib/locale/lang/pt-BR.js +10 -10
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +10 -10
- package/lib/locale/lang/ru-RU.js +10 -10
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +10 -10
- package/lib/locale/lang/th-TH.js +9 -9
- package/lib/locale/lang/th-TH.min.js +1 -1
- package/lib/locale/lang/th-TH.umd.js +9 -9
- package/lib/locale/lang/ug-CN.js +9 -9
- package/lib/locale/lang/ug-CN.min.js +1 -1
- package/lib/locale/lang/ug-CN.umd.js +9 -9
- package/lib/locale/lang/uk-UA.js +10 -10
- package/lib/locale/lang/uk-UA.min.js +1 -1
- package/lib/locale/lang/uk-UA.umd.js +10 -10
- package/lib/locale/lang/uz-UZ.js +10 -10
- package/lib/locale/lang/uz-UZ.min.js +1 -1
- package/lib/locale/lang/uz-UZ.umd.js +10 -10
- package/lib/locale/lang/vi-VN.js +10 -10
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/vi-VN.umd.js +10 -10
- 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/body.js +11 -11
- package/lib/table/src/body.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/locale/lang/ar-EG.ts +9 -9
- package/packages/locale/lang/de-DE.ts +8 -8
- package/packages/locale/lang/en-US.ts +8 -8
- package/packages/locale/lang/es-ES.ts +10 -10
- package/packages/locale/lang/fr-FR.ts +10 -10
- package/packages/locale/lang/hu-HU.ts +9 -9
- package/packages/locale/lang/hy-AM.ts +1 -1
- package/packages/locale/lang/id-ID.ts +10 -10
- package/packages/locale/lang/it-IT.ts +10 -10
- package/packages/locale/lang/ja-JP.ts +10 -10
- package/packages/locale/lang/ko-KR.ts +9 -9
- package/packages/locale/lang/ms-MY.ts +10 -10
- package/packages/locale/lang/nb-NO.ts +9 -9
- package/packages/locale/lang/pt-BR.ts +10 -10
- package/packages/locale/lang/ru-RU.ts +10 -10
- package/packages/locale/lang/th-TH.ts +9 -9
- package/packages/locale/lang/ug-CN.ts +9 -9
- package/packages/locale/lang/uk-UA.ts +10 -10
- package/packages/locale/lang/uz-UZ.ts +10 -10
- package/packages/locale/lang/vi-VN.ts +10 -10
- package/packages/table/render/index.ts +156 -15
- package/packages/table/src/body.ts +13 -13
- package/packages/table/src/table.ts +53 -0
- package/packages/table/src/util.ts +2 -0
- /package/es/{iconfont.1780726776354.ttf → iconfont.1780911752570.ttf} +0 -0
- /package/es/{iconfont.1780726776354.woff → iconfont.1780911752570.woff} +0 -0
- /package/es/{iconfont.1780726776354.woff2 → iconfont.1780911752570.woff2} +0 -0
- /package/lib/{iconfont.1780726776354.ttf → iconfont.1780911752570.ttf} +0 -0
- /package/lib/{iconfont.1780726776354.woff → iconfont.1780911752570.woff} +0 -0
- /package/lib/{iconfont.1780726776354.woff2 → iconfont.1780911752570.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/body.js
CHANGED
|
@@ -468,13 +468,23 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
468
468
|
class: 'vxe-cell--wrapper vxe-body-cell--wrapper'
|
|
469
469
|
}, column.renderCell(cellParams)));
|
|
470
470
|
}
|
|
471
|
+
tdVNs.push((0, _vue.h)('div', {
|
|
472
|
+
key: 'tc',
|
|
473
|
+
class: ['vxe-cell', {
|
|
474
|
+
'c--title': showTitle,
|
|
475
|
+
'c--tooltip': showTooltip,
|
|
476
|
+
'c--ellipsis': showEllipsis
|
|
477
|
+
}],
|
|
478
|
+
style: tcStyle,
|
|
479
|
+
title: showTitle ? $xeTable.getCellLabel(row, column) : null
|
|
480
|
+
}, clVNs));
|
|
471
481
|
if (showValidTip && errorValidItem) {
|
|
472
482
|
const errRule = errorValidItem.rule;
|
|
473
483
|
const validSlot = slots ? slots.valid : null;
|
|
474
484
|
const validParams = Object.assign(Object.assign(Object.assign({}, cellParams), errorValidItem), {
|
|
475
485
|
rule: errorValidItem
|
|
476
486
|
});
|
|
477
|
-
|
|
487
|
+
tdVNs.push((0, _vue.h)('div', {
|
|
478
488
|
key: 'tcv',
|
|
479
489
|
class: ['vxe-cell--valid-error-tip', (0, _dom.getPropClass)(validOpts.className, validParams)],
|
|
480
490
|
style: errRule && errRule.maxWidth ? {
|
|
@@ -486,16 +496,6 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
486
496
|
class: 'vxe-cell--valid-error-msg'
|
|
487
497
|
}, errorValidItem.content)]])]));
|
|
488
498
|
}
|
|
489
|
-
tdVNs.push((0, _vue.h)('div', {
|
|
490
|
-
key: 'tc',
|
|
491
|
-
class: ['vxe-cell', {
|
|
492
|
-
'c--title': showTitle,
|
|
493
|
-
'c--tooltip': showTooltip,
|
|
494
|
-
'c--ellipsis': showEllipsis
|
|
495
|
-
}],
|
|
496
|
-
style: tcStyle,
|
|
497
|
-
title: showTitle ? $xeTable.getCellLabel(row, column) : null
|
|
498
|
-
}, clVNs));
|
|
499
499
|
}
|
|
500
500
|
let showAreaRowStatus = false;
|
|
501
501
|
if (mouseConfig && mouseOpts.area && !_columnIndex && selectCellToRow) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,sourceType="table",renderType="body";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(C){let Qe=(0,_vue.inject)("$xeTable",{}),{xID:R,props:Ze,context:E,reactData:el,internalData:ll}=Qe,{computeEditOpts:tl,computeMouseOpts:al,computeCellOffsetWidth:rl,computeAreaOpts:ol,computeDefaultRowHeight:il,computeEmptyOpts:D,computeTooltipOpts:nl,computeRadioOpts:e,computeExpandOpts:ae,computeTreeOpts:l,computeCheckboxOpts:sl,computeCellOpts:dl,computeValidOpts:ul,computeRowOpts:cl,computeColumnOpts:pl,computeRowDragOpts:vl,computeResizableOpts:gl,computeVirtualXOpts:xl,computeVirtualYOpts:hl,computeIsBodyRenderOptimize:q}=Qe.getComputeMaps(),I=(0,_vue.ref)(),O=(0,_vue.ref)(),S=(0,_vue.ref)(),M=(0,_vue.ref)(),T=(0,_vue.ref)(),k=(0,_vue.ref)(),$=(0,_vue.ref)(),z=(0,_vue.ref)(),ml=()=>{var e=Ze.delayHover,l=el.isDragResize,t=ll.lastSTime;return!!(l||t&&Date.now()<t+e)},wl=(r,o,i)=>{var n=o.column,s=Ze.treeConfig,d=dl.value,u=cl.value,c=il.value,p=l.value,{slots:n,treeNode:v}=n,g=ll.fullAllDataRowIdData;if(s&&v&&(p.showLine||p.line)){if(n&&n.line)return Qe.callSlot(n.line,o);s=g[r];let e=0,l=null,t=null,a="";return(s&&(e=s.level,l=s.items[s.treeIndex-1],t=s.parent),e||p.showRootLine)?(l?(v=g[(0,_util.getRowid)(Qe,l)]||{},a=`${v.lineHeight||0}px`):e&&t&&(n=g[(0,_util.getRowid)(Qe,t)]||{},a=`calc(-1em + ${Math.floor(i/2+(0,_util.getCellRestHeight)(n,d,u,c)/2)}px)`),[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:a,bottom:`-${Math.floor(i/2)}px`,left:`calc(${e*p.indent}px + 1em)`}})])]):[]}return[]},oe=(H,e,l,A,F,t,B,U,a,r,N,j,o)=>{var i=Qe.xeGrid,L=Qe.xeGantt,{columnKey:G,resizable:n,showOverflow:s,border:W,height:d,treeConfig:V,cellClassName:P,cellStyle:X,align:Y,spanMethod:K,mouseConfig:J,editConfig:Q,editRules:u,tooltipConfig:c,padding:p}=Ze,{tableData:Z,tableColumn:ee,dragRow:le,overflowX:te,overflowY:ae,currentColumn:re,scrollXLoad:v,scrollYLoad:oe,mergeBodyFlag:ie,calcCellHeightFlag:g,resizeHeightFlag:ne,resizeWidthFlag:se,editStore:de,isAllOverflow:ue,validErrorMaps:x}=el,{fullAllDataRowIdData:ce,fullColumnIdData:h,mergeBodyCellMaps:pe,visibleColumn:ve,afterFullData:ge,mergeBodyList:xe,scrollXStore:he,scrollYStore:me,keepUpdateFieldMaps:we}=ll,m=dl.value,w=ul.value,_=sl.value,_e=tl.value,b=nl.value,be=gl.value,fe=xl.value,ye=hl.value,{isAllColumnDrag:be,isAllRowDrag:Ce}=be,f=cl.value,y=vl.value,Re=il.value,g=g?m.height||f.height:0,{disabledMethod:C,isCrossDrag:Ee,isPeerDrag:De}=y,Ie=pl.value,Oe=al.value,Se=ol.value,Me=rl.value,Se=Se.selectCellToRow,{field:Te,type:ke,cellRender:R,editRender:E,align:$e,showOverflow:ze,className:qe,treeNode:He,rowResize:Ae,padding:D,verticalAlign:I,slots:Fe}=r,O=m.verticalAlign,de=de.actived,Be=ce[e]||{},S=r.id,h=h[S]||{},R=E||R,R=R?renderer.get(R.name):null,Ue=R?R.tableCellClassName||R.cellClassName:null,Ne=R?R.tableCellStyle||R.cellStyle:"";let je=b.showAll;var Le=h.index,b=h._index,h=(0,_utils.isEnableConf)(E),E=ne?Be.resizeHeight:0;let M=te&&(l?r.fixed!==l:!!r.fixed);ne=_xeUtils.default.eqNull(D)?null===p?m.padding:p:D,p=_xeUtils.default.eqNull(ze)?s:ze,D="ellipsis"===p;let T="title"===p,k=!0===p||"tooltip"===p;s=ue||T||k||D,ze=_xeUtils.default.isBoolean(r.resizable)?r.resizable:Ie.resizable||n,p=!!g,n=0<E;let Ge;g={},E=$e||(R?R.tableCellAlign:"")||Y,$e=_xeUtils.default.eqNull(I)?O:I,R=x[e+":"+S],Y=u&&w.showErrorMessage&&("default"===w.message?d||1<Z.length:"inline"===w.message),O={colid:S};let $={$table:Qe,$grid:i,$gantt:L,isEdit:!1,seq:H,rowid:e,row:t,rowIndex:B,$rowIndex:U,_rowIndex:a,column:r,columnIndex:Le,$columnIndex:N,_columnIndex:b,fixed:l,source:sourceType,type:renderType,isHidden:!!M,level:F,visibleData:ge,data:Z,items:o},z=!1,We=!1,q=((z=f.drag?"row"===y.trigger||r.dragSort&&"cell"===y.trigger:z)&&(We=!(!C||!C($))),(T||k||je||c)&&(g.onMouseover=e=>{ml()||(T?(0,_dom.updateCellTitle)(e.currentTarget,r):(k||je)&&Qe.triggerBodyTooltipEvent(e,$)),Qe.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},$),e)}),(k||je||c)&&(g.onMouseleave=e=>{ml()||(k||je)&&Qe.handleTargetLeaveEvent(e),Qe.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},$),e)}),(z||_.range||J)&&(g.onMousedown=e=>{Qe.triggerCellMousedownEvent(e,$)}),z&&(g.onMouseup=Qe.triggerCellMouseupEvent),g.onClick=e=>{Qe.triggerCellClickEvent(e,$)},!(g.onDblclick=e=>{Qe.triggerCellDblclickEvent(e,$)})),Ve=1,Pe=1;if(ie&&xe.length){I=pe[a+":"+b];if(I){var{rowspan:x,colspan:u}=I;if(!x||!u)return renderEmptyElement(Qe);1<x&&(q=!0,Pe=x,O.rowspan=x),1<u&&(q=!0,Ve=u,O.colspan=u)}}else if(K){var{rowspan:d=1,colspan:i=1}=K($)||{};if(!d||!i)return renderEmptyElement(Qe);1<d&&(q=!0,Pe=d,O.rowspan=d),1<i&&(q=!0,Ve=i,O.colspan=i)}!(M=M&&q&&(1<O.colspan||1<O.rowspan)?!1:M)&&Q&&(_e.showStatus||_e.showUpdateStatus)&&we[Te]&&(Ge=Qe.isUpdateByRow(t,Te));L=!s&&(oe||v);let Xe=(0,_util.getCellRestHeight)(Be,m,f,Re);H=N===j.length-1,B=!r.resizeWidth&&("auto"===r.minWidth||"auto"===r.width);let Ye=!1;q||le&&(0,_util.getRowid)(Qe,le)===e||(ae&&oe&&16<Z.length&&!V&&!ye.immediate&&(a<me.visibleStartIndex-me.preloadSize||a>me.visibleEndIndex+me.preloadSize)||te&&v&&10<ee.length&&!fe.immediate&&!r.fixed&&(b<he.visibleStartIndex-he.preloadSize||b>he.visibleEndIndex+he.preloadSize))&&(Ye=!0),1<Pe&&(U=ge[a+Pe-1])&&(o=ce[(0,_util.getRowid)(Qe,U)])&&(Xe+=o.oTop+(0,_util.getCellRestHeight)(o,m,f,Re)-Be.oTop-(0,_util.getCellRestHeight)(Be,m,f,Re));y={};if(s&&se){let l=0;if(1<Ve)for(let e=1;e<Ve;e++){var Ke=ve[Le+e];Ke&&(l+=Ke.renderWidth)}y.width=r.renderWidth+l-Me+"px"}oe||v||s||p||n?y.height=Xe+"px":y.minHeight=Xe+"px";C=[];M&&ue?C.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":D}],style:y})):(V&&C.push(...wl(e,$,Xe)),c=[],Ye||c.push((0,_vue.h)("div",{colid:S,rowid:e,class:"vxe-cell--wrapper vxe-body-cell--wrapper"},r.renderCell($))),Y&&R&&(_=R.rule,ie=Fe?Fe.valid:null,xe=Object.assign(Object.assign(Object.assign({},$),R),{rule:R}),c.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(w.className,xe)],style:_&&_.maxWidth?{width:_.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(w.theme||"normal")},[ie?Qe.callSlot(ie,xe):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},R.content)]])]))),C.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":D}],style:y,title:T?Qe.getCellLabel(t,r):null},c)));let Je=!1;return J&&Oe.area&&!b&&Se&&(Je=!0),!M&&ze&&be&&C.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!W||"none"===W}],onMousedown:e=>Qe.handleColResizeMousedownEvent(e,l,$),onDblclick:e=>Qe.handleColResizeDblclickEvent(e,$)})),(Ae||Ce)&&f.resizable&&C.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Qe.handleRowResizeMousedownEvent(e,$),onDblclick:e=>Qe.handleRowResizeDblclickEvent(e,$)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-body--column",S,$e?"col--vertical-"+$e:"",E?"col--"+E:"",ke?"col--"+ke:"",{"col--last":H,"col--tree-node":He,"col--edit":h,"col--ellipsis":s,"col--cs-height":p,"col--rs-height":n,"col--to-row":Je,"col--auto-height":L,"fixed--width":!B,"fixed--hidden":M,"is--padding":ne,"is--progress":M&&ue||Ye,"is--drag-cell":z&&(Ee||De||!F),"is--drag-disabled":We,"col--dirty":Ge,"col--active":Q&&h&&de.row===t&&(de.column===r||"row"===_e.mode),"col--valid-error":!!R,"show--valid-bg":R&&w.showErrorBackground,"col--current":re===r},(0,_dom.getPropClass)(Ue,$),(0,_dom.getPropClass)(qe,$),(0,_dom.getPropClass)(P,$)],key:G||v||oe||Ie.useKey||f.useKey||Ie.drag?S:N},O),{style:Object.assign({},_xeUtils.default.isFunction(Ne)?Ne($):Ne,_xeUtils.default.isFunction(X)?X($):X)}),g),A&&M?[]:C)},re=(h,m,w,_)=>{let b=Qe.xeGrid,f=Qe.xeGantt,{stripe:y,rowKey:C,highlightHoverRow:R,rowClassName:E,rowStyle:D,editConfig:I,treeConfig:O}=Ze,{hasFixedColumn:S,treeExpandedFlag:M,scrollYLoad:T,isAllOverflow:k,rowExpandedFlag:$,expandColumn:z,selectRadioRow:q,pendingRowFlag:H,rowExpandHeightFlag:A,isRowGroupStatus:F}=el,{fullAllDataRowIdData:B,fullColumnIdData:U,treeExpandedMaps:N,pendingRowMaps:j,rowExpandedMaps:L,currentRow:G}=ll,W=sl.value,Q=e.value,V=l.value,P=tl.value,X=cl.value,Z=pl.value,{transform:Y,seqMode:K}=V,ee=V.children||V.childrenField,J=[],le=(0,_util.createHandleGetRowId)(Qe).handleGetRowId,te=O||F;return w.forEach((a,r)=>{let o=le(a);var i=B[o]||{};let n=r,s=0,d=-1,u=-1;var c=F&&a.isAggregate,p={},v=((X.isHover||R)&&(p.onMouseover=e=>{ml()||Qe.triggerHoverEvent(e,{row:a,rowIndex:n})},p.onMouseleave=()=>{ml()||Qe.clearHoverRow()}),i&&(n=i.index,u=i._index,s=i.level,d=i.seq,c||O&&Y&&"increasing"===K?d=i._index+1:O&&"fixed"===K&&(d=i._tIndex+1)),{$table:Qe,seq:d,rowid:o,fixed:h,type:renderType,level:s,row:a,rowIndex:n,$rowIndex:r,_rowIndex:u}),g=z&&!!$&&!!L[o];let e=!1,l=[],t=!1;I&&(t=Qe.isInsertByRow(a)),!O||T||Y||(l=a[ee],e=!!M&&l&&0<l.length&&!!N[o]),!X.drag||F||O&&!Y||(p.onDragstart=Qe.handleRowDragDragstartEvent,p.onDragend=Qe.handleRowDragDragendEvent,p.onDragover=Qe.handleRowDragDragoverEvent);var c=["vxe-body--row",te?"row--level-"+s:"",{"row--stripe":y&&(u+1)%2==0,"is--new":t,"is--expand-row":g,"is--expand-tree":e,"row--new":t&&(P.showStatus||P.showInsertStatus),"row--radio":Q.highlight&&Qe.eqRow(q,a),"row--checked":W.highlight&&Qe.isCheckedByCheckboxRow(a),"row--pending":!!H&&!!j[o],"row--group":c,"row--current":G&&o===(0,_util.getRowid)(Qe,G)},(0,_dom.getPropClass)(E,v)],x=_.map((e,l)=>oe(d,o,h,m,s,a,n,r,u,e,l,_,w));if(J.push((0,_vue.h)("tr",Object.assign({class:c,rowid:o,style:D?_xeUtils.default.isFunction(D)?D(v):D:null,key:C||X.useKey||X.drag||Z.drag||F||O?o:r},p),x)),g){var{height:c,padding:v,mode:p}=ae.value;if("fixed"===p){x=i.expandHeight;let e=0;A&&(x||c)&&(e=(x||c||0)+1),J.push((0,_vue.h)("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+o,rowid:o},[(0,_vue.h)("td",{class:"vxe-body--row-expanded-place-column",colspan:_.length,style:{height:e+"px"}})]))}else{g={},p=(c&&(g.height=c+"px"),O&&(g.paddingLeft=s*V.indent+30+"px"),z||{}).showOverflow,i=z.id,x=U[i]||{},i=_xeUtils.default.eqNull(p)?k:p;let e=-1,l=-1,t=-1;x&&(e=x.index,l=x.$index,t=x._index);p={$table:Qe,$grid:b,$gantt:f,seq:d,column:z,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,source:sourceType,type:renderType,level:s,row:a,rowid:o,rowIndex:n,$rowIndex:r,_rowIndex:u,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};J.push((0,_vue.h)("tr",{class:["vxe-body--expanded-row",{"is--padding":v}],key:"expand_"+o},[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!S,"col--ellipsis":i}],colspan:_.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":c}],style:g},[z.renderData(p)])])]))}}e&&J.push(...re(h,m,l,_))}),J};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=C.fixedType,l=ll.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=I,l[e+"scroll"]=O,l[e+"table"]=S,l[e+"colgroup"]=M,l[e+"list"]=T,l[e+"xSpace"]=k,l[e+"ySpace"]=$,l[e+"emptyBlock"]=z})}),(0,_vue.onUnmounted)(()=>{var e=C.fixedType,l=ll.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{var e=E.slots,l=Qe.xeGrid,t=Qe.xeGantt;let{fixedColumn:a,fixedType:r,tableColumn:o}=C;var i=Ze.mouseConfig,{isGroup:n,tableData:s,isColLoading:d,overflowX:u,scrollXLoad:c,scrollYLoad:p,dragRow:v,dragCol:g}=el,{visibleColumn:x,fullAllDataRowIdData:h,fullColumnIdData:m}=ll,w=D.value,_=al.value;let b=s,f=o;s=q.value;d||!r&&u||(f=x),r&&s&&(f=a||[]),p&&v&&2<b.length&&(d=h[(0,_util.getRowid)(Qe,v)])&&(u=d._index,x=b[0],p=b[b.length-1],d=h[(0,_util.getRowid)(Qe,x)],x=h[(0,_util.getRowid)(Qe,p)],d)&&x&&(h=d._index,p=x._index,u<h?b=[v].concat(b):p<u&&(b=b.concat([v]))),r||n||c&&g&&2<f.length&&(d=m[g.id])&&(x=d._index,h=f[0],p=f[f.length-1],u=m[h.id],v=m[p.id],u)&&v&&(n=u._index,c=v._index,x<n?f=[g].concat(f):c<x&&(f=f.concat([g])));let y;d=e?e.empty:null,h={$table:Qe,$grid:l,$gantt:t};return y=d?Qe.callSlot(d,h):(p=(m=w.name?renderer.get(w.name):null)?m.renderTableEmpty||m.renderTableEmptyView||m.renderEmpty:null)?(0,_vn.getSlotVNs)(p(w,h)):Ze.emptyText||getI18n("vxe.table.emptyText"),(0,_vue.h)("div",{ref:I,class:["vxe-table--body-wrapper",r?`fixed-${r}--wrapper`:"body--wrapper"],xid:R},[(0,_vue.h)("div",{ref:O,class:"vxe-table--body-inner-wrapper",onScroll(e){Qe.triggerBodyScrollEvent(e,r)}},[r?renderEmptyElement(Qe):(0,_vue.h)("div",{ref:k,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:$,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:S,class:"vxe-table--body",xid:R,cellspacing:0,cellpadding:0,border:0,xvm:s?"1":null},[(0,_vue.h)("colgroup",{ref:M},f.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("tbody",{ref:T},re(r,s,b,f))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),i&&_.area?(0,_vue.h)("div",{class:"vxe-table--cell-area",xid:R},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},_.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){Qe.triggerCellAreaExtendMousedownEvent&&Qe.triggerCellAreaExtendMousedownEvent(e,{$table:Qe,fixed:r,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-clip-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(Qe),r?renderEmptyElement(Qe):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:z},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},y)])])])}}});
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,sourceType="table",renderType="body";var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(C){let Qe=(0,_vue.inject)("$xeTable",{}),{xID:R,props:Ze,context:E,reactData:el,internalData:ll}=Qe,{computeEditOpts:tl,computeMouseOpts:al,computeCellOffsetWidth:rl,computeAreaOpts:ol,computeDefaultRowHeight:il,computeEmptyOpts:D,computeTooltipOpts:nl,computeRadioOpts:e,computeExpandOpts:ae,computeTreeOpts:l,computeCheckboxOpts:sl,computeCellOpts:dl,computeValidOpts:ul,computeRowOpts:cl,computeColumnOpts:pl,computeRowDragOpts:vl,computeResizableOpts:gl,computeVirtualXOpts:xl,computeVirtualYOpts:hl,computeIsBodyRenderOptimize:q}=Qe.getComputeMaps(),I=(0,_vue.ref)(),O=(0,_vue.ref)(),S=(0,_vue.ref)(),M=(0,_vue.ref)(),T=(0,_vue.ref)(),k=(0,_vue.ref)(),$=(0,_vue.ref)(),z=(0,_vue.ref)(),ml=()=>{var e=Ze.delayHover,l=el.isDragResize,t=ll.lastSTime;return!!(l||t&&Date.now()<t+e)},wl=(r,o,i)=>{var n=o.column,s=Ze.treeConfig,d=dl.value,u=cl.value,c=il.value,p=l.value,{slots:n,treeNode:v}=n,g=ll.fullAllDataRowIdData;if(s&&v&&(p.showLine||p.line)){if(n&&n.line)return Qe.callSlot(n.line,o);s=g[r];let e=0,l=null,t=null,a="";return(s&&(e=s.level,l=s.items[s.treeIndex-1],t=s.parent),e||p.showRootLine)?(l?(v=g[(0,_util.getRowid)(Qe,l)]||{},a=`${v.lineHeight||0}px`):e&&t&&(n=g[(0,_util.getRowid)(Qe,t)]||{},a=`calc(-1em + ${Math.floor(i/2+(0,_util.getCellRestHeight)(n,d,u,c)/2)}px)`),[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:a,bottom:`-${Math.floor(i/2)}px`,left:`calc(${e*p.indent}px + 1em)`}})])]):[]}return[]},oe=(H,e,l,A,F,t,B,U,a,r,N,j,o)=>{var i=Qe.xeGrid,L=Qe.xeGantt,{columnKey:G,resizable:n,showOverflow:s,border:W,height:d,treeConfig:V,cellClassName:P,cellStyle:X,align:Y,spanMethod:K,mouseConfig:J,editConfig:Q,editRules:u,tooltipConfig:c,padding:p}=Ze,{tableData:Z,tableColumn:ee,dragRow:le,overflowX:te,overflowY:ae,currentColumn:re,scrollXLoad:v,scrollYLoad:oe,mergeBodyFlag:ie,calcCellHeightFlag:g,resizeHeightFlag:ne,resizeWidthFlag:se,editStore:de,isAllOverflow:ue,validErrorMaps:x}=el,{fullAllDataRowIdData:ce,fullColumnIdData:h,mergeBodyCellMaps:pe,visibleColumn:ve,afterFullData:ge,mergeBodyList:xe,scrollXStore:he,scrollYStore:me,keepUpdateFieldMaps:we}=ll,m=dl.value,w=ul.value,_=sl.value,_e=tl.value,b=nl.value,be=gl.value,fe=xl.value,ye=hl.value,{isAllColumnDrag:be,isAllRowDrag:Ce}=be,f=cl.value,y=vl.value,Re=il.value,g=g?m.height||f.height:0,{disabledMethod:C,isCrossDrag:Ee,isPeerDrag:De}=y,Ie=pl.value,Oe=al.value,Se=ol.value,Me=rl.value,Se=Se.selectCellToRow,{field:Te,type:ke,cellRender:R,editRender:E,align:$e,showOverflow:ze,className:qe,treeNode:He,rowResize:Ae,padding:D,verticalAlign:I,slots:Fe}=r,O=m.verticalAlign,de=de.actived,Be=ce[e]||{},S=r.id,h=h[S]||{},R=E||R,R=R?renderer.get(R.name):null,Ue=R?R.tableCellClassName||R.cellClassName:null,Ne=R?R.tableCellStyle||R.cellStyle:"";let je=b.showAll;var Le=h.index,b=h._index,h=(0,_utils.isEnableConf)(E),E=ne?Be.resizeHeight:0;let M=te&&(l?r.fixed!==l:!!r.fixed);ne=_xeUtils.default.eqNull(D)?null===p?m.padding:p:D,p=_xeUtils.default.eqNull(ze)?s:ze,D="ellipsis"===p;let T="title"===p,k=!0===p||"tooltip"===p;s=ue||T||k||D,ze=_xeUtils.default.isBoolean(r.resizable)?r.resizable:Ie.resizable||n,p=!!g,n=0<E;let Ge;g={},E=$e||(R?R.tableCellAlign:"")||Y,$e=_xeUtils.default.eqNull(I)?O:I,R=x[e+":"+S],Y=u&&w.showErrorMessage&&("default"===w.message?d||1<Z.length:"inline"===w.message),O={colid:S};let $={$table:Qe,$grid:i,$gantt:L,isEdit:!1,seq:H,rowid:e,row:t,rowIndex:B,$rowIndex:U,_rowIndex:a,column:r,columnIndex:Le,$columnIndex:N,_columnIndex:b,fixed:l,source:sourceType,type:renderType,isHidden:!!M,level:F,visibleData:ge,data:Z,items:o},z=!1,We=!1,q=((z=f.drag?"row"===y.trigger||r.dragSort&&"cell"===y.trigger:z)&&(We=!(!C||!C($))),(T||k||je||c)&&(g.onMouseover=e=>{ml()||(T?(0,_dom.updateCellTitle)(e.currentTarget,r):(k||je)&&Qe.triggerBodyTooltipEvent(e,$)),Qe.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},$),e)}),(k||je||c)&&(g.onMouseleave=e=>{ml()||(k||je)&&Qe.handleTargetLeaveEvent(e),Qe.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},$),e)}),(z||_.range||J)&&(g.onMousedown=e=>{Qe.triggerCellMousedownEvent(e,$)}),z&&(g.onMouseup=Qe.triggerCellMouseupEvent),g.onClick=e=>{Qe.triggerCellClickEvent(e,$)},!(g.onDblclick=e=>{Qe.triggerCellDblclickEvent(e,$)})),Ve=1,Pe=1;if(ie&&xe.length){I=pe[a+":"+b];if(I){var{rowspan:x,colspan:u}=I;if(!x||!u)return renderEmptyElement(Qe);1<x&&(q=!0,Pe=x,O.rowspan=x),1<u&&(q=!0,Ve=u,O.colspan=u)}}else if(K){var{rowspan:d=1,colspan:i=1}=K($)||{};if(!d||!i)return renderEmptyElement(Qe);1<d&&(q=!0,Pe=d,O.rowspan=d),1<i&&(q=!0,Ve=i,O.colspan=i)}!(M=M&&q&&(1<O.colspan||1<O.rowspan)?!1:M)&&Q&&(_e.showStatus||_e.showUpdateStatus)&&we[Te]&&(Ge=Qe.isUpdateByRow(t,Te));L=!s&&(oe||v);let Xe=(0,_util.getCellRestHeight)(Be,m,f,Re);H=N===j.length-1,B=!r.resizeWidth&&("auto"===r.minWidth||"auto"===r.width);let Ye=!1;q||le&&(0,_util.getRowid)(Qe,le)===e||(ae&&oe&&16<Z.length&&!V&&!ye.immediate&&(a<me.visibleStartIndex-me.preloadSize||a>me.visibleEndIndex+me.preloadSize)||te&&v&&10<ee.length&&!fe.immediate&&!r.fixed&&(b<he.visibleStartIndex-he.preloadSize||b>he.visibleEndIndex+he.preloadSize))&&(Ye=!0),1<Pe&&(U=ge[a+Pe-1])&&(o=ce[(0,_util.getRowid)(Qe,U)])&&(Xe+=o.oTop+(0,_util.getCellRestHeight)(o,m,f,Re)-Be.oTop-(0,_util.getCellRestHeight)(Be,m,f,Re));y={};if(s&&se){let l=0;if(1<Ve)for(let e=1;e<Ve;e++){var Ke=ve[Le+e];Ke&&(l+=Ke.renderWidth)}y.width=r.renderWidth+l-Me+"px"}oe||v||s||p||n?y.height=Xe+"px":y.minHeight=Xe+"px";C=[];M&&ue?C.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":D}],style:y})):(V&&C.push(...wl(e,$,Xe)),c=[],Ye||c.push((0,_vue.h)("div",{colid:S,rowid:e,class:"vxe-cell--wrapper vxe-body-cell--wrapper"},r.renderCell($))),C.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":D}],style:y,title:T?Qe.getCellLabel(t,r):null},c)),Y&&R&&(_=R.rule,ie=Fe?Fe.valid:null,xe=Object.assign(Object.assign(Object.assign({},$),R),{rule:R}),C.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(w.className,xe)],style:_&&_.maxWidth?{width:_.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(w.theme||"normal")},[ie?Qe.callSlot(ie,xe):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},R.content)]])]))));let Je=!1;return J&&Oe.area&&!b&&Se&&(Je=!0),!M&&ze&&be&&C.push((0,_vue.h)("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!W||"none"===W}],onMousedown:e=>Qe.handleColResizeMousedownEvent(e,l,$),onDblclick:e=>Qe.handleColResizeDblclickEvent(e,$)})),(Ae||Ce)&&f.resizable&&C.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Qe.handleRowResizeMousedownEvent(e,$),onDblclick:e=>Qe.handleRowResizeDblclickEvent(e,$)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-table--column vxe-body--column",S,$e?"col--vertical-"+$e:"",E?"col--"+E:"",ke?"col--"+ke:"",{"col--last":H,"col--tree-node":He,"col--edit":h,"col--ellipsis":s,"col--cs-height":p,"col--rs-height":n,"col--to-row":Je,"col--auto-height":L,"fixed--width":!B,"fixed--hidden":M,"is--padding":ne,"is--progress":M&&ue||Ye,"is--drag-cell":z&&(Ee||De||!F),"is--drag-disabled":We,"col--dirty":Ge,"col--active":Q&&h&&de.row===t&&(de.column===r||"row"===_e.mode),"col--valid-error":!!R,"show--valid-bg":R&&w.showErrorBackground,"col--current":re===r},(0,_dom.getPropClass)(Ue,$),(0,_dom.getPropClass)(qe,$),(0,_dom.getPropClass)(P,$)],key:G||v||oe||Ie.useKey||f.useKey||Ie.drag?S:N},O),{style:Object.assign({},_xeUtils.default.isFunction(Ne)?Ne($):Ne,_xeUtils.default.isFunction(X)?X($):X)}),g),A&&M?[]:C)},re=(h,m,w,_)=>{let b=Qe.xeGrid,f=Qe.xeGantt,{stripe:y,rowKey:C,highlightHoverRow:R,rowClassName:E,rowStyle:D,editConfig:I,treeConfig:O}=Ze,{hasFixedColumn:S,treeExpandedFlag:M,scrollYLoad:T,isAllOverflow:k,rowExpandedFlag:$,expandColumn:z,selectRadioRow:q,pendingRowFlag:H,rowExpandHeightFlag:A,isRowGroupStatus:F}=el,{fullAllDataRowIdData:B,fullColumnIdData:U,treeExpandedMaps:N,pendingRowMaps:j,rowExpandedMaps:L,currentRow:G}=ll,W=sl.value,Q=e.value,V=l.value,P=tl.value,X=cl.value,Z=pl.value,{transform:Y,seqMode:K}=V,ee=V.children||V.childrenField,J=[],le=(0,_util.createHandleGetRowId)(Qe).handleGetRowId,te=O||F;return w.forEach((a,r)=>{let o=le(a);var i=B[o]||{};let n=r,s=0,d=-1,u=-1;var c=F&&a.isAggregate,p={},v=((X.isHover||R)&&(p.onMouseover=e=>{ml()||Qe.triggerHoverEvent(e,{row:a,rowIndex:n})},p.onMouseleave=()=>{ml()||Qe.clearHoverRow()}),i&&(n=i.index,u=i._index,s=i.level,d=i.seq,c||O&&Y&&"increasing"===K?d=i._index+1:O&&"fixed"===K&&(d=i._tIndex+1)),{$table:Qe,seq:d,rowid:o,fixed:h,type:renderType,level:s,row:a,rowIndex:n,$rowIndex:r,_rowIndex:u}),g=z&&!!$&&!!L[o];let e=!1,l=[],t=!1;I&&(t=Qe.isInsertByRow(a)),!O||T||Y||(l=a[ee],e=!!M&&l&&0<l.length&&!!N[o]),!X.drag||F||O&&!Y||(p.onDragstart=Qe.handleRowDragDragstartEvent,p.onDragend=Qe.handleRowDragDragendEvent,p.onDragover=Qe.handleRowDragDragoverEvent);var c=["vxe-body--row",te?"row--level-"+s:"",{"row--stripe":y&&(u+1)%2==0,"is--new":t,"is--expand-row":g,"is--expand-tree":e,"row--new":t&&(P.showStatus||P.showInsertStatus),"row--radio":Q.highlight&&Qe.eqRow(q,a),"row--checked":W.highlight&&Qe.isCheckedByCheckboxRow(a),"row--pending":!!H&&!!j[o],"row--group":c,"row--current":G&&o===(0,_util.getRowid)(Qe,G)},(0,_dom.getPropClass)(E,v)],x=_.map((e,l)=>oe(d,o,h,m,s,a,n,r,u,e,l,_,w));if(J.push((0,_vue.h)("tr",Object.assign({class:c,rowid:o,style:D?_xeUtils.default.isFunction(D)?D(v):D:null,key:C||X.useKey||X.drag||Z.drag||F||O?o:r},p),x)),g){var{height:c,padding:v,mode:p}=ae.value;if("fixed"===p){x=i.expandHeight;let e=0;A&&(x||c)&&(e=(x||c||0)+1),J.push((0,_vue.h)("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+o,rowid:o},[(0,_vue.h)("td",{class:"vxe-body--row-expanded-place-column",colspan:_.length,style:{height:e+"px"}})]))}else{g={},p=(c&&(g.height=c+"px"),O&&(g.paddingLeft=s*V.indent+30+"px"),z||{}).showOverflow,i=z.id,x=U[i]||{},i=_xeUtils.default.eqNull(p)?k:p;let e=-1,l=-1,t=-1;x&&(e=x.index,l=x.$index,t=x._index);p={$table:Qe,$grid:b,$gantt:f,seq:d,column:z,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,source:sourceType,type:renderType,level:s,row:a,rowid:o,rowIndex:n,$rowIndex:r,_rowIndex:u,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};J.push((0,_vue.h)("tr",{class:["vxe-body--expanded-row",{"is--padding":v}],key:"expand_"+o},[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!S,"col--ellipsis":i}],colspan:_.length},[(0,_vue.h)("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":c}],style:g},[z.renderData(p)])])]))}}e&&J.push(...re(h,m,l,_))}),J};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=C.fixedType,l=ll.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=I,l[e+"scroll"]=O,l[e+"table"]=S,l[e+"colgroup"]=M,l[e+"list"]=T,l[e+"xSpace"]=k,l[e+"ySpace"]=$,l[e+"emptyBlock"]=z})}),(0,_vue.onUnmounted)(()=>{var e=C.fixedType,l=ll.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{var e=E.slots,l=Qe.xeGrid,t=Qe.xeGantt;let{fixedColumn:a,fixedType:r,tableColumn:o}=C;var i=Ze.mouseConfig,{isGroup:n,tableData:s,isColLoading:d,overflowX:u,scrollXLoad:c,scrollYLoad:p,dragRow:v,dragCol:g}=el,{visibleColumn:x,fullAllDataRowIdData:h,fullColumnIdData:m}=ll,w=D.value,_=al.value;let b=s,f=o;s=q.value;d||!r&&u||(f=x),r&&s&&(f=a||[]),p&&v&&2<b.length&&(d=h[(0,_util.getRowid)(Qe,v)])&&(u=d._index,x=b[0],p=b[b.length-1],d=h[(0,_util.getRowid)(Qe,x)],x=h[(0,_util.getRowid)(Qe,p)],d)&&x&&(h=d._index,p=x._index,u<h?b=[v].concat(b):p<u&&(b=b.concat([v]))),r||n||c&&g&&2<f.length&&(d=m[g.id])&&(x=d._index,h=f[0],p=f[f.length-1],u=m[h.id],v=m[p.id],u)&&v&&(n=u._index,c=v._index,x<n?f=[g].concat(f):c<x&&(f=f.concat([g])));let y;d=e?e.empty:null,h={$table:Qe,$grid:l,$gantt:t};return y=d?Qe.callSlot(d,h):(p=(m=w.name?renderer.get(w.name):null)?m.renderTableEmpty||m.renderTableEmptyView||m.renderEmpty:null)?(0,_vn.getSlotVNs)(p(w,h)):Ze.emptyText||getI18n("vxe.table.emptyText"),(0,_vue.h)("div",{ref:I,class:["vxe-table--body-wrapper",r?`fixed-${r}--wrapper`:"body--wrapper"],xid:R},[(0,_vue.h)("div",{ref:O,class:"vxe-table--body-inner-wrapper",onScroll(e){Qe.triggerBodyScrollEvent(e,r)}},[r?renderEmptyElement(Qe):(0,_vue.h)("div",{ref:k,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:$,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:S,class:"vxe-table--body",xid:R,cellspacing:0,cellpadding:0,border:0,xvm:s?"1":null},[(0,_vue.h)("colgroup",{ref:M},f.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l,style:{width:e.renderWidth+"px"}}))),(0,_vue.h)("tbody",{ref:T},re(r,s,b,f))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),i&&_.area?(0,_vue.h)("div",{class:"vxe-table--cell-area",xid:R},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},_.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){Qe.triggerCellAreaExtendMousedownEvent&&Qe.triggerCellAreaExtendMousedownEvent(e,{$table:Qe,fixed:r,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-clip-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(Qe),r?renderEmptyElement(Qe):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:z},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},y)])])])}}});
|
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
|
* 检查是否为临时行数据
|