mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-20 12:26:01 +00:00
revert row changes, delete - for all selected rows
This commit is contained in:
@@ -339,16 +339,36 @@ export default function DataGridCore(props) {
|
||||
}
|
||||
}
|
||||
|
||||
function revertRowChanges() {
|
||||
if (loadedRows && currentCell && loadedRows[currentCell[0]]) {
|
||||
setChangeSet(revertChangeSetRowChanges(changeSet, display.getChangeSetRow(loadedRows[currentCell[0]])));
|
||||
function getSelectedRowDefinitions() {
|
||||
const res = [];
|
||||
if (!loadedAndInsertedRows) return res;
|
||||
const rowIndexes = _.uniq((selectedCells || []).map(x => x[0]));
|
||||
for (const index of rowIndexes) {
|
||||
if (loadedAndInsertedRows[index] && _.isNumber(index)) {
|
||||
const insertedRowIndex =
|
||||
firstVisibleRowScrollIndex + index >= loadedRows.length
|
||||
? firstVisibleRowScrollIndex + index - loadedRows.length
|
||||
: null;
|
||||
res.push(display.getChangeSetRow(loadedAndInsertedRows[index], insertedRowIndex));
|
||||
}
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
function revertRowChanges() {
|
||||
const updatedChangeSet = getSelectedRowDefinitions().reduce(
|
||||
(chs, row) => revertChangeSetRowChanges(chs, row),
|
||||
changeSet
|
||||
);
|
||||
setChangeSet(updatedChangeSet);
|
||||
}
|
||||
|
||||
function deleteCurrentRow() {
|
||||
if (loadedRows && currentCell && loadedRows[currentCell[0]]) {
|
||||
setChangeSet(deleteChangeSetRows(changeSet, display.getChangeSetRow(loadedRows[currentCell[0]])));
|
||||
}
|
||||
const updatedChangeSet = getSelectedRowDefinitions().reduce(
|
||||
(chs, row) => deleteChangeSetRows(chs, row),
|
||||
changeSet
|
||||
);
|
||||
setChangeSet(updatedChangeSet);
|
||||
}
|
||||
|
||||
function handleGridWheel(event) {
|
||||
|
||||
@@ -109,7 +109,7 @@ export default function DataGridRow({
|
||||
insertedRowIndex,
|
||||
}) {
|
||||
// console.log('RENDER ROW', rowIndex);
|
||||
const rowDefinition = display.getChangeSetRow(row);
|
||||
const rowDefinition = display.getChangeSetRow(row, insertedRowIndex);
|
||||
const [matchedField, matchedChangeSetItem] = findExistingChangeSetItem(changeSet, rowDefinition);
|
||||
const rowUpdated = matchedChangeSetItem ? { ...row, ...matchedChangeSetItem.fields } : row;
|
||||
const hintFieldsAllowed = visibleRealColumns
|
||||
|
||||
Reference in New Issue
Block a user