es-grid-template 1.9.26 → 1.9.28
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/es/grid-component/type.d.ts +4 -1
- package/es/table-component/InternalTable.js +31 -1
- package/es/table-component/TableContainerEdit.js +59 -23
- package/es/table-component/body/EditableCell.js +68 -27
- package/es/table-component/body/TableBody.js +1 -1
- package/es/table-component/body/TableBodyCell.js +6 -2
- package/es/table-component/body/TableBodyCellEdit.js +7 -5
- package/es/table-component/footer/TableFooterRow.js +1 -1
- package/es/table-component/header/TableHeadCell2.js +2 -1
- package/es/table-component/style.js +12 -9
- package/es/table-component/style.scss +40 -232
- package/es/table-component/table/Grid.js +2 -1
- package/es/table-virtuoso/body/TableBodyCell.js +4 -1
- package/es/table-virtuoso/body/TableBodyRow.js +6 -7
- package/es/table-virtuoso/style.js +1 -1
- package/es/table-virtuoso/table/TableWrapper.js +3 -1
- package/lib/grid-component/type.d.ts +4 -1
- package/lib/table-component/InternalTable.js +31 -1
- package/lib/table-component/TableContainerEdit.js +84 -48
- package/lib/table-component/body/EditableCell.js +68 -27
- package/lib/table-component/body/TableBody.js +1 -1
- package/lib/table-component/body/TableBodyCell.js +6 -2
- package/lib/table-component/body/TableBodyCellEdit.js +7 -5
- package/lib/table-component/footer/TableFooterRow.js +1 -1
- package/lib/table-component/header/TableHeadCell2.js +3 -2
- package/lib/table-component/style.js +11 -8
- package/lib/table-component/style.scss +40 -232
- package/lib/table-component/table/Grid.js +2 -1
- package/lib/table-virtuoso/body/TableBodyCell.js +4 -1
- package/lib/table-virtuoso/body/TableBodyRow.js +6 -7
- package/lib/table-virtuoso/style.js +1 -1
- package/lib/table-virtuoso/table/TableWrapper.js +3 -1
- package/package.json +1 -1
|
@@ -12,6 +12,8 @@ var _utils = require("./hook/utils");
|
|
|
12
12
|
var _reactVirtual = require("@tanstack/react-virtual");
|
|
13
13
|
var _reactHookForm = require("react-hook-form");
|
|
14
14
|
var _antd = require("antd");
|
|
15
|
+
var _button = _interopRequireDefault(require("rc-master-ui/es/button"));
|
|
16
|
+
var _dropdown = _interopRequireDefault(require("rc-master-ui/es/dropdown"));
|
|
15
17
|
var _pagination = _interopRequireDefault(require("rc-master-ui/es/pagination"));
|
|
16
18
|
var _reactNumericComponent = require("react-numeric-component");
|
|
17
19
|
var _useContext = require("./useContext");
|
|
@@ -81,19 +83,15 @@ const TableContainerEdit = props => {
|
|
|
81
83
|
expandable,
|
|
82
84
|
wrapSettings,
|
|
83
85
|
recordDoubleClick,
|
|
84
|
-
// triggerFilter,
|
|
85
86
|
selectionSettings,
|
|
86
87
|
isSelectionChange,
|
|
87
88
|
setIsSelectionChange,
|
|
88
|
-
// onContextMenu,
|
|
89
89
|
contextMenuItems,
|
|
90
90
|
setSorterChange,
|
|
91
91
|
setFilterChange,
|
|
92
92
|
defaultFilter,
|
|
93
93
|
onCellPaste,
|
|
94
|
-
// triggerPaste,
|
|
95
94
|
validate,
|
|
96
|
-
// triggerChangeData,
|
|
97
95
|
onCellChange,
|
|
98
96
|
onDataChange,
|
|
99
97
|
defaultValue,
|
|
@@ -291,14 +289,16 @@ const TableContainerEdit = props => {
|
|
|
291
289
|
|
|
292
290
|
copy(tsv).then(() => {}).catch(() => {});
|
|
293
291
|
}, [startCell, endCell, table]);
|
|
294
|
-
const triggerChangeData = _react.default.useCallback(newData => {
|
|
295
|
-
onDataChange?.(newData);
|
|
292
|
+
const triggerChangeData = _react.default.useCallback((newData, args) => {
|
|
293
|
+
onDataChange?.(newData, args);
|
|
296
294
|
}, [onDataChange, dataSource]);
|
|
297
295
|
const triggerPaste = _react.default.useCallback((pastedRows, pastedColumnsArray, newData, copyRows) => {
|
|
298
296
|
const handlePasteCallback = callbackData => {
|
|
299
297
|
const rsFilterData = (0, _utils.updateOrInsert)((0, _utils.flattenArray)([...originData]), (0, _utils.flattenArray)([...callbackData]));
|
|
300
298
|
const rs = (0, _utils.unFlattenData)(rsFilterData);
|
|
301
|
-
triggerChangeData(rs
|
|
299
|
+
triggerChangeData(rs, {
|
|
300
|
+
type: 'OnPaste'
|
|
301
|
+
});
|
|
302
302
|
};
|
|
303
303
|
if (onCellPaste && onCellPaste.onPasted) {
|
|
304
304
|
if (onCellPaste.onPasted.length > 1) {
|
|
@@ -319,10 +319,14 @@ const TableContainerEdit = props => {
|
|
|
319
319
|
data: originData,
|
|
320
320
|
pastedColumns: pastedColumnsArray
|
|
321
321
|
}, handlePasteCallback);
|
|
322
|
-
triggerChangeData(newData
|
|
322
|
+
triggerChangeData(newData, {
|
|
323
|
+
type: 'OnPaste'
|
|
324
|
+
});
|
|
323
325
|
}
|
|
324
326
|
} else {
|
|
325
|
-
triggerChangeData(newData
|
|
327
|
+
triggerChangeData(newData, {
|
|
328
|
+
type: 'OnPaste'
|
|
329
|
+
});
|
|
326
330
|
}
|
|
327
331
|
}, [onCellPaste, originData, triggerChangeData]);
|
|
328
332
|
const handlePasted = _react.default.useCallback(pasteData => {
|
|
@@ -750,7 +754,9 @@ const TableContainerEdit = props => {
|
|
|
750
754
|
const index = (0, _utils.flattenData)(childrenColumnName, newData).findIndex(item => formData[rowKey] === item[rowKey]);
|
|
751
755
|
const rs = (0, _utils.updateArrayByKey)(newData, row, rowKey);
|
|
752
756
|
if (index > -1) {
|
|
753
|
-
triggerChangeData?.(rs
|
|
757
|
+
triggerChangeData?.(rs, {
|
|
758
|
+
type: 'CellChange'
|
|
759
|
+
});
|
|
754
760
|
}
|
|
755
761
|
} catch (errInfo) {
|
|
756
762
|
console.log('Validate Failed:', errInfo);
|
|
@@ -770,7 +776,9 @@ const TableContainerEdit = props => {
|
|
|
770
776
|
const index = (0, _utils.flattenData)(childrenColumnName, newData).findIndex(item => formData[rowKey] === item[rowKey]);
|
|
771
777
|
const rs = (0, _utils.updateArrayByKey)(newData, row, rowKey);
|
|
772
778
|
if (index > -1) {
|
|
773
|
-
triggerChangeData?.(rs
|
|
779
|
+
triggerChangeData?.(rs, {
|
|
780
|
+
type: 'CellChange'
|
|
781
|
+
});
|
|
774
782
|
}
|
|
775
783
|
} catch (errInfo) {
|
|
776
784
|
console.log('Validate Failed:', errInfo);
|
|
@@ -970,7 +978,9 @@ const TableContainerEdit = props => {
|
|
|
970
978
|
const rs = (0, _utils.updateOrInsert)(originData, rsFilter);
|
|
971
979
|
// const rs2 = mergeWithFilter(originData, rsFilter)
|
|
972
980
|
|
|
973
|
-
triggerChangeData?.(rs
|
|
981
|
+
triggerChangeData?.(rs, {
|
|
982
|
+
type: 'DUPLICATE'
|
|
983
|
+
});
|
|
974
984
|
}, [dataSource, focusedCell, originData, rowKey, table, triggerChangeData]);
|
|
975
985
|
|
|
976
986
|
// thêm n dòng bên trên
|
|
@@ -1006,7 +1016,10 @@ const TableContainerEdit = props => {
|
|
|
1006
1016
|
setMergedFilterKeys?.(rs);
|
|
1007
1017
|
const index = newData.findIndex(obj => obj[rowKey] === record[rowKey]);
|
|
1008
1018
|
newData.splice(index, 0, ...newRows);
|
|
1009
|
-
triggerChangeData?.(newData
|
|
1019
|
+
triggerChangeData?.(newData, {
|
|
1020
|
+
type: 'INSERT_BEFORE',
|
|
1021
|
+
row: n
|
|
1022
|
+
});
|
|
1010
1023
|
} else {
|
|
1011
1024
|
const newData = [...originData];
|
|
1012
1025
|
const parent = (0, _utils.findItemByKey)(newData, rowKey, record.parentId);
|
|
@@ -1032,7 +1045,10 @@ const TableContainerEdit = props => {
|
|
|
1032
1045
|
children: childData
|
|
1033
1046
|
};
|
|
1034
1047
|
const newDataSource = (0, _utils.updateArrayByKey)(newData, newRowData, rowKey);
|
|
1035
|
-
triggerChangeData?.(newDataSource
|
|
1048
|
+
triggerChangeData?.(newDataSource, {
|
|
1049
|
+
type: 'INSERT_BEFORE',
|
|
1050
|
+
row: n
|
|
1051
|
+
});
|
|
1036
1052
|
}
|
|
1037
1053
|
}
|
|
1038
1054
|
}, [defaultValue, focusedCell, mergedFilterKeys, originData, rowKey, rowsFocus, setMergedFilterKeys, table, triggerChangeData]);
|
|
@@ -1070,7 +1086,10 @@ const TableContainerEdit = props => {
|
|
|
1070
1086
|
setMergedFilterKeys?.(rs);
|
|
1071
1087
|
const index = newData.findIndex(obj => obj[rowKey] === record[rowKey]);
|
|
1072
1088
|
newData.splice(index + 1, 0, ...newRows);
|
|
1073
|
-
triggerChangeData?.(newData
|
|
1089
|
+
triggerChangeData?.(newData, {
|
|
1090
|
+
type: 'INSERT_AFTER',
|
|
1091
|
+
row: n
|
|
1092
|
+
});
|
|
1074
1093
|
} else {
|
|
1075
1094
|
const newData = [...originData];
|
|
1076
1095
|
const parent = (0, _utils.findItemByKey)(newData, rowKey, record.parentId);
|
|
@@ -1099,7 +1118,10 @@ const TableContainerEdit = props => {
|
|
|
1099
1118
|
children: childData
|
|
1100
1119
|
};
|
|
1101
1120
|
const newDataSource = (0, _utils.updateArrayByKey)(newData, newRowData, rowKey);
|
|
1102
|
-
triggerChangeData?.(newDataSource
|
|
1121
|
+
triggerChangeData?.(newDataSource, {
|
|
1122
|
+
type: 'INSERT_AFTER',
|
|
1123
|
+
row: n
|
|
1124
|
+
});
|
|
1103
1125
|
}
|
|
1104
1126
|
}
|
|
1105
1127
|
}, [defaultValue, table, focusedCell?.rowId, originData, mergedFilterKeys, setMergedFilterKeys, triggerChangeData, rowKey]);
|
|
@@ -1137,7 +1159,9 @@ const TableContainerEdit = props => {
|
|
|
1137
1159
|
const rs = mergedFilterKeys ? [...mergedFilterKeys, rowId] : [rowId];
|
|
1138
1160
|
setMergedFilterKeys?.(rs);
|
|
1139
1161
|
const newDataSource = (0, _utils.updateArrayByKey)(newData, newElement, rowKey);
|
|
1140
|
-
triggerChangeData?.(newDataSource
|
|
1162
|
+
triggerChangeData?.(newDataSource, {
|
|
1163
|
+
type: 'INSERT_CHILDREN'
|
|
1164
|
+
});
|
|
1141
1165
|
}
|
|
1142
1166
|
setTimeout(() => {
|
|
1143
1167
|
const row = table.getRowModel().rows.find(it => it.id === focusedCell?.rowId);
|
|
@@ -1180,12 +1204,18 @@ const TableContainerEdit = props => {
|
|
|
1180
1204
|
buttonsStyling: false
|
|
1181
1205
|
}).then(async result => {
|
|
1182
1206
|
if (result.value) {
|
|
1183
|
-
triggerChangeData?.([...newDaa]
|
|
1207
|
+
triggerChangeData?.([...newDaa], {
|
|
1208
|
+
type: 'DELETE_ROWS',
|
|
1209
|
+
row: rowsFocus.length
|
|
1210
|
+
});
|
|
1184
1211
|
} else if (result.dismiss === MySwal.DismissReason.cancel) {}
|
|
1185
1212
|
});
|
|
1186
1213
|
} else {
|
|
1187
1214
|
// không hiện dialog
|
|
1188
|
-
triggerChangeData?.([...newDaa]
|
|
1215
|
+
triggerChangeData?.([...newDaa], {
|
|
1216
|
+
type: 'DELETE_ROWS',
|
|
1217
|
+
row: rowsFocus.length
|
|
1218
|
+
});
|
|
1189
1219
|
}
|
|
1190
1220
|
}
|
|
1191
1221
|
}, [commandSettings, originData, rowKey, rowsFocus, t, triggerChangeData]);
|
|
@@ -1211,11 +1241,15 @@ const TableContainerEdit = props => {
|
|
|
1211
1241
|
buttonsStyling: false
|
|
1212
1242
|
}).then(async result => {
|
|
1213
1243
|
if (result.value) {
|
|
1214
|
-
triggerChangeData?.([]
|
|
1244
|
+
triggerChangeData?.([], {
|
|
1245
|
+
type: 'DELETE'
|
|
1246
|
+
});
|
|
1215
1247
|
} else if (result.dismiss === MySwal.DismissReason.cancel) {}
|
|
1216
1248
|
});
|
|
1217
1249
|
} else {
|
|
1218
|
-
triggerChangeData?.([]
|
|
1250
|
+
triggerChangeData?.([], {
|
|
1251
|
+
type: 'DELETE'
|
|
1252
|
+
});
|
|
1219
1253
|
}
|
|
1220
1254
|
}
|
|
1221
1255
|
}, [commandSettings, t, triggerChangeData]);
|
|
@@ -1261,7 +1295,9 @@ const TableContainerEdit = props => {
|
|
|
1261
1295
|
return updatedRow;
|
|
1262
1296
|
});
|
|
1263
1297
|
const newData = (0, _utils.unFlattenData)(rs);
|
|
1264
|
-
triggerChangeData?.([...newData]
|
|
1298
|
+
triggerChangeData?.([...newData], {
|
|
1299
|
+
type: 'DELETE_CONTENT'
|
|
1300
|
+
});
|
|
1265
1301
|
}
|
|
1266
1302
|
};
|
|
1267
1303
|
const toolbarItemsBottom = _react.default.useMemo(() => {
|
|
@@ -1275,7 +1311,7 @@ const TableContainerEdit = props => {
|
|
|
1275
1311
|
template: () => {
|
|
1276
1312
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, item.key === 'ADD' && /*#__PURE__*/_react.default.createElement("div", {
|
|
1277
1313
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1278
|
-
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(
|
|
1314
|
+
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1279
1315
|
style: {
|
|
1280
1316
|
color: '#28c76f',
|
|
1281
1317
|
borderColor: '#28c76f'
|
|
@@ -1283,7 +1319,7 @@ const TableContainerEdit = props => {
|
|
|
1283
1319
|
variant: 'outlined',
|
|
1284
1320
|
onClick: () => handleAddMulti(item, 1),
|
|
1285
1321
|
className: "d-flex toolbar-button"
|
|
1286
|
-
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Add item') : 'Add item')) : /*#__PURE__*/_react.default.createElement(
|
|
1322
|
+
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Add item') : 'Add item')) : /*#__PURE__*/_react.default.createElement(_dropdown.default.Button, {
|
|
1287
1323
|
overlayClassName: 'be-popup-container',
|
|
1288
1324
|
trigger: ['click'],
|
|
1289
1325
|
style: {
|
|
@@ -1311,7 +1347,7 @@ const TableContainerEdit = props => {
|
|
|
1311
1347
|
template: () => {
|
|
1312
1348
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
1313
1349
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1314
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
1350
|
+
}, /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1315
1351
|
style: {
|
|
1316
1352
|
color: '#eb4619',
|
|
1317
1353
|
borderColor: '#eb4619'
|
|
@@ -1336,7 +1372,7 @@ const TableContainerEdit = props => {
|
|
|
1336
1372
|
template: () => {
|
|
1337
1373
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, item.key === 'ADD' && /*#__PURE__*/_react.default.createElement("div", {
|
|
1338
1374
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1339
|
-
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(
|
|
1375
|
+
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1340
1376
|
style: {
|
|
1341
1377
|
color: '#28c76f',
|
|
1342
1378
|
borderColor: '#28c76f'
|
|
@@ -1344,7 +1380,7 @@ const TableContainerEdit = props => {
|
|
|
1344
1380
|
variant: 'outlined',
|
|
1345
1381
|
onClick: () => handleAddMulti(item, 1),
|
|
1346
1382
|
className: "d-flex toolbar-button"
|
|
1347
|
-
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Add item') : 'Add item')) : /*#__PURE__*/_react.default.createElement(
|
|
1383
|
+
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Add item') : 'Add item')) : /*#__PURE__*/_react.default.createElement(_dropdown.default.Button, {
|
|
1348
1384
|
title: "",
|
|
1349
1385
|
overlayClassName: 'be-popup-container',
|
|
1350
1386
|
style: {
|
|
@@ -1372,7 +1408,7 @@ const TableContainerEdit = props => {
|
|
|
1372
1408
|
template: () => {
|
|
1373
1409
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, item.key === 'DUPLICATE' && item.visible !== false && rowsFocus.length > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
1374
1410
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1375
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
1411
|
+
}, /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1376
1412
|
style: {
|
|
1377
1413
|
color: '#28c76f',
|
|
1378
1414
|
borderColor: '#28c76f'
|
|
@@ -1391,7 +1427,7 @@ const TableContainerEdit = props => {
|
|
|
1391
1427
|
template: () => {
|
|
1392
1428
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
1393
1429
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1394
|
-
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(
|
|
1430
|
+
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1395
1431
|
style: {
|
|
1396
1432
|
color: '#28c76f',
|
|
1397
1433
|
borderColor: '#28c76f'
|
|
@@ -1399,7 +1435,7 @@ const TableContainerEdit = props => {
|
|
|
1399
1435
|
variant: 'outlined',
|
|
1400
1436
|
onClick: () => handleInsertBefore(item, 1),
|
|
1401
1437
|
className: "d-flex toolbar-button"
|
|
1402
|
-
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Insert item before') : 'Insert item before')) : /*#__PURE__*/_react.default.createElement(
|
|
1438
|
+
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Insert item before') : 'Insert item before')) : /*#__PURE__*/_react.default.createElement(_dropdown.default.Button, {
|
|
1403
1439
|
overlayClassName: 'be-popup-container',
|
|
1404
1440
|
style: {
|
|
1405
1441
|
color: '#28c76f',
|
|
@@ -1426,7 +1462,7 @@ const TableContainerEdit = props => {
|
|
|
1426
1462
|
template: () => {
|
|
1427
1463
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
1428
1464
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1429
|
-
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(
|
|
1465
|
+
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1430
1466
|
style: {
|
|
1431
1467
|
color: '#28c76f',
|
|
1432
1468
|
borderColor: '#28c76f'
|
|
@@ -1434,7 +1470,7 @@ const TableContainerEdit = props => {
|
|
|
1434
1470
|
variant: 'outlined',
|
|
1435
1471
|
onClick: () => handleInsertAfter(item, 1),
|
|
1436
1472
|
className: "d-flex toolbar-button"
|
|
1437
|
-
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Insert item after') : 'Insert item after')) : /*#__PURE__*/_react.default.createElement(
|
|
1473
|
+
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Insert item after') : 'Insert item after')) : /*#__PURE__*/_react.default.createElement(_dropdown.default.Button, {
|
|
1438
1474
|
overlayClassName: 'be-popup-container',
|
|
1439
1475
|
style: {
|
|
1440
1476
|
color: '#28c76f',
|
|
@@ -1461,7 +1497,7 @@ const TableContainerEdit = props => {
|
|
|
1461
1497
|
template: () => {
|
|
1462
1498
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
1463
1499
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1464
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
1500
|
+
}, /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1465
1501
|
style: {
|
|
1466
1502
|
color: '#28c76f',
|
|
1467
1503
|
borderColor: '#28c76f'
|
|
@@ -1480,7 +1516,7 @@ const TableContainerEdit = props => {
|
|
|
1480
1516
|
template: () => {
|
|
1481
1517
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
1482
1518
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1483
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
1519
|
+
}, /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1484
1520
|
style: {
|
|
1485
1521
|
color: '#eb4619',
|
|
1486
1522
|
borderColor: '#eb4619'
|
|
@@ -1499,7 +1535,7 @@ const TableContainerEdit = props => {
|
|
|
1499
1535
|
template: () => {
|
|
1500
1536
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
1501
1537
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1502
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
1538
|
+
}, /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1503
1539
|
style: {
|
|
1504
1540
|
color: '#eb4619',
|
|
1505
1541
|
borderColor: '#eb4619'
|
|
@@ -1527,7 +1563,7 @@ const TableContainerEdit = props => {
|
|
|
1527
1563
|
template: () => {
|
|
1528
1564
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, item.key === 'ADD' && /*#__PURE__*/_react.default.createElement("div", {
|
|
1529
1565
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1530
|
-
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(
|
|
1566
|
+
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1531
1567
|
style: {
|
|
1532
1568
|
color: '#28c76f',
|
|
1533
1569
|
borderColor: '#28c76f'
|
|
@@ -1535,7 +1571,7 @@ const TableContainerEdit = props => {
|
|
|
1535
1571
|
variant: 'outlined',
|
|
1536
1572
|
onClick: () => handleAddMulti(item, 1),
|
|
1537
1573
|
className: "d-flex toolbar-button"
|
|
1538
|
-
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Add item') : 'Add item')) : /*#__PURE__*/_react.default.createElement(
|
|
1574
|
+
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Add item') : 'Add item')) : /*#__PURE__*/_react.default.createElement(_dropdown.default.Button, {
|
|
1539
1575
|
overlayClassName: 'be-popup-container',
|
|
1540
1576
|
trigger: ['click'],
|
|
1541
1577
|
style: {
|
|
@@ -1563,7 +1599,7 @@ const TableContainerEdit = props => {
|
|
|
1563
1599
|
template: () => {
|
|
1564
1600
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
1565
1601
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1566
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
1602
|
+
}, /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1567
1603
|
style: {
|
|
1568
1604
|
color: '#eb4619',
|
|
1569
1605
|
borderColor: '#eb4619'
|
|
@@ -1588,7 +1624,7 @@ const TableContainerEdit = props => {
|
|
|
1588
1624
|
template: () => {
|
|
1589
1625
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, item.key === 'ADD' && /*#__PURE__*/_react.default.createElement("div", {
|
|
1590
1626
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1591
|
-
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(
|
|
1627
|
+
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1592
1628
|
style: {
|
|
1593
1629
|
color: '#28c76f',
|
|
1594
1630
|
borderColor: '#28c76f'
|
|
@@ -1596,7 +1632,7 @@ const TableContainerEdit = props => {
|
|
|
1596
1632
|
variant: 'outlined',
|
|
1597
1633
|
onClick: () => handleAddMulti(item, 1),
|
|
1598
1634
|
className: "d-flex toolbar-button"
|
|
1599
|
-
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Add item') : 'Add item')) : /*#__PURE__*/_react.default.createElement(
|
|
1635
|
+
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Add item') : 'Add item')) : /*#__PURE__*/_react.default.createElement(_dropdown.default.Button, {
|
|
1600
1636
|
title: "",
|
|
1601
1637
|
overlayClassName: 'be-popup-container',
|
|
1602
1638
|
style: {
|
|
@@ -1624,7 +1660,7 @@ const TableContainerEdit = props => {
|
|
|
1624
1660
|
template: () => {
|
|
1625
1661
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, item.key === 'DUPLICATE' && item.visible !== false && rowsFocus.length > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
1626
1662
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1627
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
1663
|
+
}, /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1628
1664
|
style: {
|
|
1629
1665
|
color: '#28c76f',
|
|
1630
1666
|
borderColor: '#28c76f'
|
|
@@ -1643,7 +1679,7 @@ const TableContainerEdit = props => {
|
|
|
1643
1679
|
template: () => {
|
|
1644
1680
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
1645
1681
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1646
|
-
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(
|
|
1682
|
+
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1647
1683
|
style: {
|
|
1648
1684
|
color: '#28c76f',
|
|
1649
1685
|
borderColor: '#28c76f'
|
|
@@ -1651,7 +1687,7 @@ const TableContainerEdit = props => {
|
|
|
1651
1687
|
variant: 'outlined',
|
|
1652
1688
|
onClick: () => handleInsertBefore(item, 1),
|
|
1653
1689
|
className: "d-flex toolbar-button"
|
|
1654
|
-
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Insert item before') : 'Insert item before')) : /*#__PURE__*/_react.default.createElement(
|
|
1690
|
+
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Insert item before') : 'Insert item before')) : /*#__PURE__*/_react.default.createElement(_dropdown.default.Button, {
|
|
1655
1691
|
overlayClassName: 'be-popup-container',
|
|
1656
1692
|
style: {
|
|
1657
1693
|
color: '#28c76f',
|
|
@@ -1678,7 +1714,7 @@ const TableContainerEdit = props => {
|
|
|
1678
1714
|
template: () => {
|
|
1679
1715
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
1680
1716
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1681
|
-
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(
|
|
1717
|
+
}, item?.hasMenu === false ? /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1682
1718
|
style: {
|
|
1683
1719
|
color: '#28c76f',
|
|
1684
1720
|
borderColor: '#28c76f'
|
|
@@ -1686,7 +1722,7 @@ const TableContainerEdit = props => {
|
|
|
1686
1722
|
variant: 'outlined',
|
|
1687
1723
|
onClick: () => handleInsertAfter(item, 1),
|
|
1688
1724
|
className: "d-flex toolbar-button"
|
|
1689
|
-
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Insert item after') : 'Insert item after')) : /*#__PURE__*/_react.default.createElement(
|
|
1725
|
+
}, item.template ? (0, _hooks.getToolbarTemplate)(item.template) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, item.label ? t ? t(item.label) : item.label : t ? t('Insert item after') : 'Insert item after')) : /*#__PURE__*/_react.default.createElement(_dropdown.default.Button, {
|
|
1690
1726
|
overlayClassName: 'be-popup-container',
|
|
1691
1727
|
style: {
|
|
1692
1728
|
color: '#28c76f',
|
|
@@ -1713,7 +1749,7 @@ const TableContainerEdit = props => {
|
|
|
1713
1749
|
template: () => {
|
|
1714
1750
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
1715
1751
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1716
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
1752
|
+
}, /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1717
1753
|
style: {
|
|
1718
1754
|
color: '#28c76f',
|
|
1719
1755
|
borderColor: '#28c76f'
|
|
@@ -1732,7 +1768,7 @@ const TableContainerEdit = props => {
|
|
|
1732
1768
|
template: () => {
|
|
1733
1769
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
1734
1770
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1735
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
1771
|
+
}, /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1736
1772
|
style: {
|
|
1737
1773
|
color: '#eb4619',
|
|
1738
1774
|
borderColor: '#eb4619'
|
|
@@ -1751,7 +1787,7 @@ const TableContainerEdit = props => {
|
|
|
1751
1787
|
template: () => {
|
|
1752
1788
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
1753
1789
|
className: (0, _classnames.default)(`be-toolbar-item`, item?.className)
|
|
1754
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
1790
|
+
}, /*#__PURE__*/_react.default.createElement(_button.default, {
|
|
1755
1791
|
style: {
|
|
1756
1792
|
color: '#eb4619',
|
|
1757
1793
|
borderColor: '#eb4619'
|
|
@@ -184,8 +184,53 @@ const EditableCell = props => {
|
|
|
184
184
|
placeholder: t && column.placeholder ? t(column.placeholder) : undefined,
|
|
185
185
|
disabled: (0, _utils.isDisable)(column, record) ?? false,
|
|
186
186
|
maxDate: maxDate,
|
|
187
|
-
minDate: minDate
|
|
188
|
-
|
|
187
|
+
minDate: minDate
|
|
188
|
+
// mode="date"
|
|
189
|
+
|
|
190
|
+
// onChange={(newDate, dateString) => {
|
|
191
|
+
|
|
192
|
+
// const newDateValue = dateString ? moment(convertDayjsToDate(dateString as string, dateFormat)).format() : null
|
|
193
|
+
|
|
194
|
+
// onChange(newDateValue)
|
|
195
|
+
|
|
196
|
+
// setTimeout(() => {
|
|
197
|
+
// // @ts-ignore
|
|
198
|
+
// dateTimePickerRef.current?.focus()
|
|
199
|
+
// }, 0)
|
|
200
|
+
|
|
201
|
+
// }}
|
|
202
|
+
|
|
203
|
+
// onBlur={() => {
|
|
204
|
+
// const formState = getValues()
|
|
205
|
+
// const itemState = getValues(dataIndex)
|
|
206
|
+
// // @ts-ignore
|
|
207
|
+
// const prevState = record[dataIndex]
|
|
208
|
+
// const newState = itemState
|
|
209
|
+
|
|
210
|
+
// if (prevState !== newState) {
|
|
211
|
+
// handleCellChange?.({
|
|
212
|
+
// key: key as any,
|
|
213
|
+
// field: column.field ?? column.field as any,
|
|
214
|
+
// record: formState,
|
|
215
|
+
// prevState,
|
|
216
|
+
// newState,
|
|
217
|
+
// option: newState,
|
|
218
|
+
// indexCol,
|
|
219
|
+
// indexRow,
|
|
220
|
+
// type: 'blur'
|
|
221
|
+
// })
|
|
222
|
+
// }
|
|
223
|
+
// }}
|
|
224
|
+
,
|
|
225
|
+
|
|
226
|
+
popupClassName: 'be-popup-container',
|
|
227
|
+
status: isInvalid ? 'error' : undefined,
|
|
228
|
+
"data-tooltip-content": message,
|
|
229
|
+
"data-tooltip-id": `${id}-tooltip-error`,
|
|
230
|
+
autoFocus: column.field === startCell?.colId,
|
|
231
|
+
defaultOpen: column.field === startCell?.colId,
|
|
232
|
+
needConfirm: false,
|
|
233
|
+
onCalendarChange: (newDate, dateString) => {
|
|
189
234
|
const newDateValue = dateString ? (0, _moment.default)((0, _utils.convertDayjsToDate)(dateString, dateFormat)).format() : null;
|
|
190
235
|
onChange(newDateValue);
|
|
191
236
|
setTimeout(() => {
|
|
@@ -193,32 +238,28 @@ const EditableCell = props => {
|
|
|
193
238
|
dateTimePickerRef.current?.focus();
|
|
194
239
|
}, 0);
|
|
195
240
|
},
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
241
|
+
onOpenChange: open => {
|
|
242
|
+
if (!open) {
|
|
243
|
+
const formState = getValues();
|
|
244
|
+
const itemState = getValues(dataIndex);
|
|
245
|
+
// @ts-ignore
|
|
246
|
+
const prevState = record[dataIndex];
|
|
247
|
+
const newState = itemState;
|
|
248
|
+
if (prevState !== newState) {
|
|
249
|
+
handleCellChange?.({
|
|
250
|
+
key: key,
|
|
251
|
+
field: column.field ?? column.field,
|
|
252
|
+
record: formState,
|
|
253
|
+
prevState,
|
|
254
|
+
newState,
|
|
255
|
+
option: newState,
|
|
256
|
+
indexCol,
|
|
257
|
+
indexRow,
|
|
258
|
+
type: 'blur'
|
|
259
|
+
});
|
|
260
|
+
}
|
|
214
261
|
}
|
|
215
|
-
}
|
|
216
|
-
popupClassName: 'be-popup-container',
|
|
217
|
-
status: isInvalid ? 'error' : undefined,
|
|
218
|
-
"data-tooltip-content": message,
|
|
219
|
-
"data-tooltip-id": `${id}-tooltip-error`,
|
|
220
|
-
autoFocus: column.field === startCell?.colId,
|
|
221
|
-
defaultOpen: column.field === startCell?.colId
|
|
262
|
+
}
|
|
222
263
|
});
|
|
223
264
|
case 'month':
|
|
224
265
|
case 'quarter':
|
|
@@ -41,7 +41,7 @@ const TableBody = ({
|
|
|
41
41
|
//dynamic row height virtualization - alternatively you could use a simpler fixed row height strategy without the need for `measureElement`
|
|
42
42
|
const rowVirtualizer = (0, _reactVirtual.useVirtualizer)({
|
|
43
43
|
count: rows.length,
|
|
44
|
-
estimateSize: () =>
|
|
44
|
+
estimateSize: () => 32,
|
|
45
45
|
//estimate row height for accurate scrollbar dragging
|
|
46
46
|
getScrollElement: () => tableContainerRef.current,
|
|
47
47
|
//measure dynamic row height, except in firefox because it measures table border height incorrectly
|
|
@@ -346,7 +346,7 @@ const TableBodyCell = props => {
|
|
|
346
346
|
style: {
|
|
347
347
|
...cellStyles,
|
|
348
348
|
display: 'flex',
|
|
349
|
-
minHeight:
|
|
349
|
+
minHeight: 32,
|
|
350
350
|
width: cell.column.getSize(),
|
|
351
351
|
minWidth: cell.column.getSize(),
|
|
352
352
|
...(0, _utils.getCommonPinningStyles)(cell.column)
|
|
@@ -397,9 +397,10 @@ const TableBodyCell = props => {
|
|
|
397
397
|
style: {
|
|
398
398
|
...cellStyles,
|
|
399
399
|
display: 'flex',
|
|
400
|
+
alignItems: 'center',
|
|
400
401
|
width: cell.column.getSize(),
|
|
401
402
|
minWidth: cell.column.getSize(),
|
|
402
|
-
minHeight:
|
|
403
|
+
minHeight: 32,
|
|
403
404
|
...(0, _utils.getCommonPinningStyles)(cell.column)
|
|
404
405
|
},
|
|
405
406
|
onMouseEnter: e => {
|
|
@@ -463,6 +464,9 @@ const TableBodyCell = props => {
|
|
|
463
464
|
}
|
|
464
465
|
},
|
|
465
466
|
onClick: e => {
|
|
467
|
+
if (e.detail === 2) {
|
|
468
|
+
return;
|
|
469
|
+
}
|
|
466
470
|
recordClick?.({
|
|
467
471
|
e,
|
|
468
472
|
rowData: record,
|
|
@@ -543,7 +543,8 @@ const TableBodyCellEdit = props => {
|
|
|
543
543
|
setEditingKey?.(record[rowKey]);
|
|
544
544
|
// setTooltipContent('')
|
|
545
545
|
|
|
546
|
-
handleCellClick?.(rowNumber, record, columnMeta, record[rowKey], record[columnMeta.field ?? ''])
|
|
546
|
+
// handleCellClick?.(rowNumber, record, columnMeta as any, record[rowKey], record[columnMeta.field ?? ''])
|
|
547
|
+
|
|
547
548
|
reset?.();
|
|
548
549
|
|
|
549
550
|
// const formattedRecord = { ...record };
|
|
@@ -904,7 +905,7 @@ const TableBodyCellEdit = props => {
|
|
|
904
905
|
}),
|
|
905
906
|
style: {
|
|
906
907
|
display: 'flex',
|
|
907
|
-
height: '
|
|
908
|
+
height: '32px',
|
|
908
909
|
userSelect: 'none',
|
|
909
910
|
width: cell.column.getSize(),
|
|
910
911
|
// flexBasis: cell.column.getSize(),
|
|
@@ -993,7 +994,7 @@ const TableBodyCellEdit = props => {
|
|
|
993
994
|
}),
|
|
994
995
|
style: {
|
|
995
996
|
display: 'flex',
|
|
996
|
-
height: '
|
|
997
|
+
height: '32px',
|
|
997
998
|
width: cell.column.getSize(),
|
|
998
999
|
minWidth: cell.column.getSize(),
|
|
999
1000
|
// flex: 1,
|
|
@@ -1019,7 +1020,7 @@ const TableBodyCellEdit = props => {
|
|
|
1019
1020
|
}),
|
|
1020
1021
|
style: {
|
|
1021
1022
|
display: 'flex',
|
|
1022
|
-
height: '
|
|
1023
|
+
height: '32px',
|
|
1023
1024
|
width: cell.column.getSize(),
|
|
1024
1025
|
minWidth: cell.column.getSize(),
|
|
1025
1026
|
// flex: 1,
|
|
@@ -1157,11 +1158,12 @@ const TableBodyCellEdit = props => {
|
|
|
1157
1158
|
}),
|
|
1158
1159
|
style: {
|
|
1159
1160
|
display: 'flex',
|
|
1161
|
+
alignItems: 'center',
|
|
1160
1162
|
width: cell.column.getSize(),
|
|
1161
1163
|
minWidth: cell.column.getSize(),
|
|
1162
1164
|
// flex: 1,
|
|
1163
1165
|
// maxWidth: cell.column.getSize(),
|
|
1164
|
-
height: '
|
|
1166
|
+
height: '32px',
|
|
1165
1167
|
...(0, _utils.getCommonPinningStyles)(cell.column),
|
|
1166
1168
|
cursor: isPasting ? 'crosshair' : undefined
|
|
1167
1169
|
},
|