react-table-edit 1.4.13 → 1.4.14

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/index.js CHANGED
@@ -42301,19 +42301,40 @@ const isSelectMenuOpen = (element) => {
42301
42301
  return element && ["select__control--menu-is-open", "select-100__control--menu-is-open", "select-200__control--menu-is-open", "select-300__control--menu-is-open", "select-400__control--menu-is-open", "select-500__control--menu-is-open"].some(className => element.getElementsByClassName(className).length > 0);
42302
42302
  };
42303
42303
  const handleArrowUp = (e, params) => {
42304
- const { idElement, indexCol, indexRow, pagingClient, pagingSetting, setIndexFocus, focusNewElement } = params;
42305
- const element = document.getElementById(idElement);
42306
- if (!isSelectMenuOpen(element)) {
42307
- if (indexRow > 1) {
42308
- if (pagingClient && (pagingSetting?.currentPage ?? 0) !== 1 && (indexRow % (pagingSetting?.pageSize ?? 0)) === 1 && pagingSetting?.setCurrentPage) {
42309
- pagingSetting?.setCurrentPage((pagingSetting?.currentPage ?? 1) - 1);
42310
- }
42311
- setIndexFocus(indexRow - 2);
42312
- focusNewElement(indexCol, indexRow - 1, true);
42304
+ const { idElement, indexCol, indexRow, pagingClient, pagingSetting, setIndexFocus, focusNewElement, rowChange, changeDataSource, contentColumns, dataSource, row } = params;
42305
+ if ((e.ctrlKey || e.metaKey) && e.shiftKey) {
42306
+ if (indexRow > 0) {
42307
+ const column = contentColumns[indexCol - 1];
42308
+ for (let index = indexRow - 1; index > 0; index--) {
42309
+ const element = dataSource[index];
42310
+ element[column.field ?? ''] = row[column.field ?? ''];
42311
+ if (column.callback && column.callbackValue) {
42312
+ const value = column.callbackValue(row);
42313
+ column.callback(value, index, element);
42314
+ }
42315
+ if (rowChange) {
42316
+ rowChange(element, indexRow, column.field);
42317
+ }
42318
+ }
42319
+ changeDataSource(dataSource);
42313
42320
  e.preventDefault();
42314
42321
  return e.code;
42315
42322
  }
42316
42323
  }
42324
+ else {
42325
+ const element = document.getElementById(idElement);
42326
+ if (!isSelectMenuOpen(element)) {
42327
+ if (indexRow > 1) {
42328
+ if (pagingClient && (pagingSetting?.currentPage ?? 0) !== 1 && (indexRow % (pagingSetting?.pageSize ?? 0)) === 1 && pagingSetting?.setCurrentPage) {
42329
+ pagingSetting?.setCurrentPage((pagingSetting?.currentPage ?? 1) - 1);
42330
+ }
42331
+ setIndexFocus(indexRow - 2);
42332
+ focusNewElement(indexCol, indexRow - 1, true);
42333
+ e.preventDefault();
42334
+ return e.code;
42335
+ }
42336
+ }
42337
+ }
42317
42338
  };
42318
42339
  const handleArrowDown = (e, params) => {
42319
42340
  const { idElement, indexCol, indexRow, totalCount, pagingClient, pagingSetting, setIndexFocus, focusNewElement, rowChange, changeDataSource, dataSource, contentColumns, row } = params;
@@ -42332,9 +42353,9 @@ const handleArrowDown = (e, params) => {
42332
42353
  }
42333
42354
  }
42334
42355
  changeDataSource(dataSource);
42356
+ e.preventDefault();
42357
+ return e.code;
42335
42358
  }
42336
- e.preventDefault();
42337
- return e.code;
42338
42359
  }
42339
42360
  else {
42340
42361
  const element = document.getElementById(idElement);