sheet-happens 0.0.59 → 0.0.61
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 +126 -66
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +126 -66
- package/dist/index.modern.js.map +1 -1
- package/dist/mouse.d.ts +1 -1
- package/dist/render.d.ts +1 -1
- package/dist/sheet.d.ts +3 -1
- package/package.json +1 -1
package/dist/index.modern.js
CHANGED
|
@@ -654,7 +654,7 @@ var findInDisplayData = function findInDisplayData(displayData, start, direction
|
|
|
654
654
|
return maxXY(cell, [0, 0]);
|
|
655
655
|
};
|
|
656
656
|
|
|
657
|
-
var useMouse = function useMouse(elementRef, dataOffset, hitmapRef, selection, knobArea, editMode, editData, sourceData, cellReadOnly, maxColumns, maxRows, canSizeColumn, canSizeRow, canOrderColumn, canOrderRow, cellLayout, visibleCells, sheetStyle, columnGroupKeys, rowGroupKeys, selectedColumnGroups, selectedRowGroups, getAutoSizeWidth, getAutoSizeHeight, onEdit, onCommit, onKnobAreaChange, onDragIndicesChange, onDragOffsetChange, onDropTargetChange, onSelectionChange, onFocusChange, onInvalidateColumn, onInvalidateRow, onChange, onColumnOrderChange, onRowOrderChange, onCellWidthChange, onCellHeightChange, onRightClick, dontCommitEditOnSelectionChange, dontChangeSelectionOnOrderChange) {
|
|
657
|
+
var useMouse = function useMouse(elementRef, dataOffset, hitmapRef, selection, knobArea, editMode, editData, sourceData, cellReadOnly, maxColumns, maxRows, canSizeColumn, canSizeRow, canOrderColumn, canOrderRow, cellLayout, visibleCells, sheetStyle, columnGroupKeys, rowGroupKeys, selectedColumnGroups, selectedRowGroups, getAutoSizeWidth, getAutoSizeHeight, onEdit, onCommit, onKnobAreaChange, onDragIndicesChange, onDragOffsetChange, onDropTargetChange, onSelectionChange, onFocusChange, onInvalidateColumn, onInvalidateRow, onChange, onColumnOrderChange, onRowOrderChange, onColumnDrop, onRowDrop, onCellWidthChange, onCellHeightChange, onRightClick, dontCommitEditOnSelectionChange, dontChangeSelectionOnOrderChange) {
|
|
658
658
|
var _useState = useState(null),
|
|
659
659
|
columnResize = _useState[0],
|
|
660
660
|
setColumnResize = _useState[1];
|
|
@@ -803,7 +803,7 @@ var useMouse = function useMouse(elementRef, dataOffset, hitmapRef, selection, k
|
|
|
803
803
|
return i;
|
|
804
804
|
});
|
|
805
805
|
if (!hideColumnHeaders && y < getIndentY()) {
|
|
806
|
-
if (onColumnOrderChange) {
|
|
806
|
+
if (onColumnOrderChange || onColumnDrop) {
|
|
807
807
|
var start = columnToPixel(minX) + SIZES.resizeZone;
|
|
808
808
|
var end = columnToPixel(maxX, 1) - SIZES.resizeZone;
|
|
809
809
|
if (isInRange(x, start, end) || selectedColumnGroups) {
|
|
@@ -867,7 +867,7 @@ var useMouse = function useMouse(elementRef, dataOffset, hitmapRef, selection, k
|
|
|
867
867
|
}
|
|
868
868
|
}
|
|
869
869
|
if (!hideRowHeaders && x < getIndentX()) {
|
|
870
|
-
if (onRowOrderChange) {
|
|
870
|
+
if (onRowOrderChange || onRowDrop) {
|
|
871
871
|
var _start2 = rowToPixel(minY) + SIZES.resizeZone;
|
|
872
872
|
var _end2 = rowToPixel(maxY, 1) - SIZES.resizeZone;
|
|
873
873
|
if (isInRange(y, _start2, _end2) || selectedRowGroups) {
|
|
@@ -1006,33 +1006,45 @@ var useMouse = function useMouse(elementRef, dataOffset, hitmapRef, selection, k
|
|
|
1006
1006
|
_normalizeSelection2$2 = _normalizeSelection2[1],
|
|
1007
1007
|
maxX = _normalizeSelection2$2[0],
|
|
1008
1008
|
maxY = _normalizeSelection2$2[1];
|
|
1009
|
-
var cellX = pixelToColumn(x, 0.5);
|
|
1010
|
-
var cellY = pixelToRow(y, 0.5);
|
|
1011
1009
|
if (columnDrag) {
|
|
1012
1010
|
var indices = columnDrag.indices;
|
|
1013
|
-
var
|
|
1014
|
-
var
|
|
1015
|
-
|
|
1011
|
+
var startX = pixelToColumn(x, 0);
|
|
1012
|
+
var midX = pixelToColumn(x, 0.5);
|
|
1013
|
+
var leftX = pixelToColumn(x, 0.25);
|
|
1014
|
+
var rightX = pixelToColumn(x, 0.75) - 1;
|
|
1015
|
+
var insideGroup = isBoundaryInsideGroup(midX, columnGroupKeys);
|
|
1016
|
+
var dropOn = onColumnDrop && (insideGroup || leftX === rightX) || !onColumnOrderChange;
|
|
1017
|
+
var dropX = dropOn ? startX : midX;
|
|
1018
|
+
var insideSelection = dropX >= minX && dropX <= maxX + +!dropOn;
|
|
1019
|
+
if (!insideSelection && (dropOn || !insideGroup)) {
|
|
1020
|
+
var _ref;
|
|
1016
1021
|
var preceding = indices.filter(function (i) {
|
|
1017
|
-
return i <
|
|
1022
|
+
return i < dropX;
|
|
1018
1023
|
});
|
|
1019
|
-
var order =
|
|
1020
|
-
dontChangeSelectionOnOrderChange || (onSelectionChange === null || onSelectionChange === void 0 ? void 0 : onSelectionChange([[order, minY], [order + indices.length - 1, maxY]]));
|
|
1021
|
-
onColumnOrderChange === null ||
|
|
1024
|
+
var order = dropX - preceding.length;
|
|
1025
|
+
dontChangeSelectionOnOrderChange || (onSelectionChange === null || onSelectionChange === void 0 ? void 0 : onSelectionChange([[order, minY], [order + (dropOn ? 0 : indices.length - 1), maxY]]));
|
|
1026
|
+
(_ref = dropOn ? onColumnDrop : onColumnOrderChange) === null || _ref === void 0 ? void 0 : _ref(indices, order);
|
|
1022
1027
|
onInvalidateColumn === null || onInvalidateColumn === void 0 ? void 0 : onInvalidateColumn(Math.min(minX, order));
|
|
1023
1028
|
}
|
|
1024
1029
|
}
|
|
1025
1030
|
if (rowDrag) {
|
|
1026
1031
|
var _indices4 = rowDrag.indices;
|
|
1027
|
-
var
|
|
1028
|
-
var
|
|
1029
|
-
|
|
1032
|
+
var startY = pixelToRow(y, 0);
|
|
1033
|
+
var midY = pixelToRow(y, 0.5);
|
|
1034
|
+
var topY = pixelToRow(y, 0.25);
|
|
1035
|
+
var bottomY = pixelToRow(y, 0.75) - 1;
|
|
1036
|
+
var _insideGroup = isBoundaryInsideGroup(midY, rowGroupKeys);
|
|
1037
|
+
var _dropOn = onRowDrop && (_insideGroup || topY === bottomY) || !onRowOrderChange;
|
|
1038
|
+
var dropY = _dropOn ? startY : midY;
|
|
1039
|
+
var _insideSelection = dropY >= minY && dropY <= maxY + +!_dropOn;
|
|
1040
|
+
if (!_insideSelection && (_dropOn || !_insideGroup)) {
|
|
1041
|
+
var _ref2;
|
|
1030
1042
|
var _preceding = _indices4.filter(function (i) {
|
|
1031
|
-
return i <
|
|
1043
|
+
return i < dropY;
|
|
1032
1044
|
});
|
|
1033
|
-
var _order =
|
|
1034
|
-
dontChangeSelectionOnOrderChange || (onSelectionChange === null || onSelectionChange === void 0 ? void 0 : onSelectionChange([[minX, _order], [maxX, _order + _indices4.length - 1]]));
|
|
1035
|
-
onRowOrderChange === null ||
|
|
1045
|
+
var _order = dropY - _preceding.length;
|
|
1046
|
+
dontChangeSelectionOnOrderChange || (onSelectionChange === null || onSelectionChange === void 0 ? void 0 : onSelectionChange([[minX, _order], [maxX, _order + (_dropOn ? 0 : _indices4.length - 1)]]));
|
|
1047
|
+
(_ref2 = _dropOn ? onRowDrop : onRowOrderChange) === null || _ref2 === void 0 ? void 0 : _ref2(_indices4, _order);
|
|
1036
1048
|
onInvalidateRow === null || onInvalidateRow === void 0 ? void 0 : onInvalidateRow(Math.min(minY, _order));
|
|
1037
1049
|
}
|
|
1038
1050
|
}
|
|
@@ -1108,7 +1120,7 @@ var useMouse = function useMouse(elementRef, dataOffset, hitmapRef, selection, k
|
|
|
1108
1120
|
};
|
|
1109
1121
|
if (!isDragging) {
|
|
1110
1122
|
if (!hideColumnHeaders && y < getIndentY()) {
|
|
1111
|
-
if (onColumnOrderChange) {
|
|
1123
|
+
if (onColumnOrderChange || onColumnDrop) {
|
|
1112
1124
|
var start = columnToPixel(minX) + SIZES.resizeZone;
|
|
1113
1125
|
var end = columnToPixel(maxX, 1) - SIZES.resizeZone;
|
|
1114
1126
|
if (isInRange(x, start, end) || selectedColumnGroups) {
|
|
@@ -1135,7 +1147,7 @@ var useMouse = function useMouse(elementRef, dataOffset, hitmapRef, selection, k
|
|
|
1135
1147
|
}
|
|
1136
1148
|
}
|
|
1137
1149
|
if (!hideRowHeaders && x < getIndentX()) {
|
|
1138
|
-
if (onRowOrderChange) {
|
|
1150
|
+
if (onRowOrderChange || onRowDrop) {
|
|
1139
1151
|
var _start5 = rowToPixel(minY) + SIZES.resizeZone;
|
|
1140
1152
|
var _end5 = rowToPixel(maxY, 1) - SIZES.resizeZone;
|
|
1141
1153
|
if (isInRange(y, _start5, _end5) || selectedRowGroups) {
|
|
@@ -1250,31 +1262,61 @@ var useMouse = function useMouse(elementRef, dataOffset, hitmapRef, selection, k
|
|
|
1250
1262
|
var _x = xy[0],
|
|
1251
1263
|
_y = xy[1];
|
|
1252
1264
|
if (columnDrag) {
|
|
1253
|
-
var
|
|
1254
|
-
|
|
1255
|
-
|
|
1265
|
+
var _expandSelectionToRow7 = expandSelectionToRowOrColumnGroups(selection, columnGroupKeys, selectedColumnGroups, 0),
|
|
1266
|
+
_expandSelectionToRow8 = _expandSelectionToRow7[0],
|
|
1267
|
+
_minX2 = _expandSelectionToRow8[0],
|
|
1268
|
+
_expandSelectionToRow9 = _expandSelectionToRow7[1],
|
|
1269
|
+
_maxX2 = _expandSelectionToRow9[0];
|
|
1270
|
+
var startX = pixelToColumn(_x, 0);
|
|
1271
|
+
var midX = pixelToColumn(_x, 0.5);
|
|
1272
|
+
var leftX = pixelToColumn(_x, 0.25);
|
|
1273
|
+
var rightX = pixelToColumn(_x, 0.75) - 1;
|
|
1274
|
+
var insideGroup = isBoundaryInsideGroup(midX, columnGroupKeys);
|
|
1275
|
+
var dropOn = onColumnDrop && (insideGroup || leftX === rightX) && startX < maxColumns || !onColumnOrderChange;
|
|
1276
|
+
var dropX = dropOn ? startX : midX;
|
|
1256
1277
|
var _anchor3 = columnDrag.anchor,
|
|
1257
1278
|
_offset2 = columnDrag.offset;
|
|
1258
1279
|
var shift = _x - _anchor3[0];
|
|
1259
1280
|
var _getDragScrollOffset3 = getDragScrollOffset(_offset2),
|
|
1260
1281
|
_scrollOffset2 = _getDragScrollOffset3[0];
|
|
1282
|
+
var insideSelection = dropX >= _minX2 && dropX <= _maxX2 + +!dropOn;
|
|
1283
|
+
var dropSelection = [[dropX, -1], [dropX, -1]];
|
|
1284
|
+
if (dropOn) {
|
|
1285
|
+
var dropOnColumnGroup = new Set([columnGroupKeys(dropX)]);
|
|
1286
|
+
dropSelection = expandSelectionToRowOrColumnGroups(dropSelection, columnGroupKeys, dropOnColumnGroup, 0);
|
|
1287
|
+
}
|
|
1261
1288
|
onDragOffsetChange === null || onDragOffsetChange === void 0 ? void 0 : onDragOffsetChange([shift + _scrollOffset2, 0]);
|
|
1262
|
-
onDropTargetChange === null || onDropTargetChange === void 0 ? void 0 : onDropTargetChange(insideSelection || insideGroup ?
|
|
1289
|
+
onDropTargetChange === null || onDropTargetChange === void 0 ? void 0 : onDropTargetChange(!insideSelection && (dropOn || !insideGroup) ? dropSelection : null, dropOn);
|
|
1263
1290
|
}
|
|
1264
1291
|
if (rowDrag) {
|
|
1265
|
-
var
|
|
1266
|
-
|
|
1267
|
-
|
|
1292
|
+
var _expandSelectionToRow10 = expandSelectionToRowOrColumnGroups(selection, rowGroupKeys, selectedRowGroups, 1),
|
|
1293
|
+
_expandSelectionToRow11 = _expandSelectionToRow10[0],
|
|
1294
|
+
_minY2 = _expandSelectionToRow11[1],
|
|
1295
|
+
_expandSelectionToRow12 = _expandSelectionToRow10[1],
|
|
1296
|
+
_maxY2 = _expandSelectionToRow12[1];
|
|
1297
|
+
var startY = pixelToRow(_y, 0);
|
|
1298
|
+
var midY = pixelToRow(_y, 0.5);
|
|
1299
|
+
var topY = pixelToRow(_y, 0.25);
|
|
1300
|
+
var bottomY = pixelToRow(_y, 0.75) - 1;
|
|
1301
|
+
var _insideGroup2 = isBoundaryInsideGroup(midY, rowGroupKeys);
|
|
1302
|
+
var _dropOn2 = onRowDrop && (_insideGroup2 || topY === bottomY) && startY < maxRows || !onRowOrderChange;
|
|
1303
|
+
var dropY = _dropOn2 ? startY : midY;
|
|
1268
1304
|
var _anchor4 = rowDrag.anchor,
|
|
1269
1305
|
_offset3 = rowDrag.offset;
|
|
1270
1306
|
var _shift = _y - _anchor4[1];
|
|
1271
1307
|
var _getDragScrollOffset4 = getDragScrollOffset(_offset3),
|
|
1272
1308
|
_scrollOffset3 = _getDragScrollOffset4[1];
|
|
1309
|
+
var _insideSelection2 = dropY >= _minY2 && dropY <= _maxY2 + +!_dropOn2;
|
|
1310
|
+
var _dropSelection = [[-1, dropY], [-1, dropY]];
|
|
1311
|
+
if (_dropOn2) {
|
|
1312
|
+
var dropOnRowGroup = new Set([rowGroupKeys(dropY)]);
|
|
1313
|
+
_dropSelection = expandSelectionToRowOrColumnGroups(_dropSelection, rowGroupKeys, dropOnRowGroup, 1);
|
|
1314
|
+
}
|
|
1273
1315
|
onDragOffsetChange === null || onDragOffsetChange === void 0 ? void 0 : onDragOffsetChange([0, _shift + _scrollOffset3]);
|
|
1274
|
-
onDropTargetChange === null || onDropTargetChange === void 0 ? void 0 : onDropTargetChange(_insideSelection2 || _insideGroup2 ?
|
|
1316
|
+
onDropTargetChange === null || onDropTargetChange === void 0 ? void 0 : onDropTargetChange(!_insideSelection2 && (_dropOn2 || !_insideGroup2) ? _dropSelection : null, _dropOn2);
|
|
1275
1317
|
}
|
|
1276
1318
|
}
|
|
1277
|
-
}, [getMousePosition, getMouseOutOfBounds, getMouseHit, onCellWidthChange, onCellHeightChange, onDragIndicesChange, onDragOffsetChange, onDropTargetChange, onSelectionChange, onKnobAreaChange, onInvalidateRow, onInvalidateColumn, columnGroupKeys, rowGroupKeys]);
|
|
1319
|
+
}, [getMousePosition, getMouseOutOfBounds, getMouseHit, onCellWidthChange, onCellHeightChange, onDragIndicesChange, onDragOffsetChange, onDropTargetChange, onSelectionChange, onKnobAreaChange, onInvalidateRow, onInvalidateColumn, columnGroupKeys, rowGroupKeys, selectedColumnGroups, selectedRowGroups, maxColumns, maxRows]);
|
|
1278
1320
|
var onClick = useCallback(function (e) {
|
|
1279
1321
|
var xy = getMousePosition(e);
|
|
1280
1322
|
if (!xy) return;
|
|
@@ -1376,10 +1418,16 @@ var useMouse = function useMouse(elementRef, dataOffset, hitmapRef, selection, k
|
|
|
1376
1418
|
if (!xy) return;
|
|
1377
1419
|
var x = xy[0],
|
|
1378
1420
|
y = xy[1];
|
|
1379
|
-
if (x <= getIndentX()
|
|
1421
|
+
if (x <= getIndentX() && y <= getIndentY()) {
|
|
1380
1422
|
return;
|
|
1381
1423
|
}
|
|
1382
1424
|
var cell = pixelToCell(xy);
|
|
1425
|
+
if (!hideRowHeaders && x < getIndentX()) {
|
|
1426
|
+
cell[0] = -1;
|
|
1427
|
+
}
|
|
1428
|
+
if (!hideColumnHeaders && y < getIndentY()) {
|
|
1429
|
+
cell[1] = -1;
|
|
1430
|
+
}
|
|
1383
1431
|
if (!isPointInsideSelection(selection, cell)) {
|
|
1384
1432
|
onSelectionChange === null || onSelectionChange === void 0 ? void 0 : onSelectionChange([cell, cell]);
|
|
1385
1433
|
}
|
|
@@ -2952,7 +3000,7 @@ var makeIntMap = function makeIntMap(initialSize) {
|
|
|
2952
3000
|
};
|
|
2953
3001
|
};
|
|
2954
3002
|
|
|
2955
|
-
var renderSheet = function renderSheet(context, imageRenderer, cellLayout, visibleCells, sheetStyle, cellStyle, selection, secondarySelections, isFocused, knobPosition, knobArea, dragIndices, dragOffset, dropTarget, columnHeaders, columnHeaderStyle, displayData, columnGroupKeys, rowGroupKeys, selectedColumnGroups, selectedRowGroups, dataOffset) {
|
|
3003
|
+
var renderSheet = function renderSheet(context, imageRenderer, cellLayout, visibleCells, sheetStyle, cellStyle, selection, secondarySelections, isFocused, knobPosition, knobArea, dragIndices, dragOffset, dropTarget, dropOn, columnHeaders, columnHeaderStyle, displayData, columnGroupKeys, rowGroupKeys, selectedColumnGroups, selectedRowGroups, dataOffset) {
|
|
2956
3004
|
var canvas = context.canvas;
|
|
2957
3005
|
var width = canvas.width,
|
|
2958
3006
|
height = canvas.height;
|
|
@@ -3083,7 +3131,8 @@ var renderSheet = function renderSheet(context, imageRenderer, cellLayout, visib
|
|
|
3083
3131
|
var isInRowGroup = groupKey != null && (selectedRowGroups === null || selectedRowGroups === void 0 ? void 0 : selectedRowGroups.has(groupKey));
|
|
3084
3132
|
var isSelfSelected = rowSelectionActive && isActive;
|
|
3085
3133
|
var isGroupSelected = rowSelectionActive && isInRowGroup;
|
|
3086
|
-
var
|
|
3134
|
+
var isDropSelected = dropOn && dropTarget && row >= dropTarget[0][1] && row <= dropTarget[1][1];
|
|
3135
|
+
var style = isSelfSelected ? HEADER_SELECTED_STYLE : isGroupSelected || isDropSelected ? HEADER_GROUP_SELECTED_STYLE : isActive ? HEADER_ACTIVE_STYLE : NO_STYLE;
|
|
3087
3136
|
var resolvedStyle = _extends({}, DEFAULT_COLUMN_HEADER_STYLE, style);
|
|
3088
3137
|
var _top2 = rowToPixel(row);
|
|
3089
3138
|
var _bottom2 = rowToPixel(row, 1);
|
|
@@ -3100,7 +3149,8 @@ var renderSheet = function renderSheet(context, imageRenderer, cellLayout, visib
|
|
|
3100
3149
|
var _groupKey = columnGroupKeys(column);
|
|
3101
3150
|
var isInColumnGroup = _groupKey != null && (selectedColumnGroups === null || selectedColumnGroups === void 0 ? void 0 : selectedColumnGroups.has(_groupKey));
|
|
3102
3151
|
var isSelected = columnSelectionActive && !rowSelectionActive && (_isActive || isInColumnGroup);
|
|
3103
|
-
var
|
|
3152
|
+
var _isDropSelected = dropOn && dropTarget && column >= dropTarget[0][0] && column <= dropTarget[1][0];
|
|
3153
|
+
var selectedStyle = isSelected ? HEADER_SELECTED_STYLE : _isDropSelected ? HEADER_GROUP_SELECTED_STYLE : NO_STYLE;
|
|
3104
3154
|
var activeStyle = _isActive ? HEADER_ACTIVE_STYLE : NO_STYLE;
|
|
3105
3155
|
var _style = _extends({}, DEFAULT_COLUMN_HEADER_STYLE, columnHeaderStyle(column), activeStyle, selectedStyle);
|
|
3106
3156
|
var _left2 = columnToPixel(column);
|
|
@@ -3187,7 +3237,7 @@ var renderSheet = function renderSheet(context, imageRenderer, cellLayout, visib
|
|
|
3187
3237
|
}
|
|
3188
3238
|
}
|
|
3189
3239
|
}
|
|
3190
|
-
if (dropTarget) {
|
|
3240
|
+
if (dropTarget && !dropOn) {
|
|
3191
3241
|
var _resolveSelection = resolveSelection(dropTarget, cellLayout),
|
|
3192
3242
|
_resolveSelection$ = _resolveSelection[0],
|
|
3193
3243
|
_left6 = _resolveSelection$[0],
|
|
@@ -3521,28 +3571,31 @@ var Sheet = forwardRef(function (props, ref) {
|
|
|
3521
3571
|
var _useState7 = useState(null),
|
|
3522
3572
|
dropTarget = _useState7[0],
|
|
3523
3573
|
setDropTarget = _useState7[1];
|
|
3524
|
-
var _useState8 = useState(
|
|
3525
|
-
|
|
3526
|
-
|
|
3527
|
-
var _useState9 = useState(
|
|
3528
|
-
|
|
3529
|
-
|
|
3530
|
-
var _useState10 = useState(
|
|
3531
|
-
|
|
3532
|
-
|
|
3574
|
+
var _useState8 = useState(false),
|
|
3575
|
+
dropOn = _useState8[0],
|
|
3576
|
+
setDropOn = _useState8[1];
|
|
3577
|
+
var _useState9 = useState(NO_CELL),
|
|
3578
|
+
editCell = _useState9[0],
|
|
3579
|
+
setEditCell = _useState9[1];
|
|
3580
|
+
var _useState10 = useState(!!props.autoFocus),
|
|
3581
|
+
focused = _useState10[0],
|
|
3582
|
+
setFocused = _useState10[1];
|
|
3583
|
+
var _useState11 = useState(selectionProp),
|
|
3584
|
+
lastSelectionProp = _useState11[0],
|
|
3585
|
+
setLastSelectionProp = _useState11[1];
|
|
3533
3586
|
if (lastSelectionProp !== selectionProp) {
|
|
3534
3587
|
setLastSelectionProp(selectionProp);
|
|
3535
3588
|
setRawSelection(selectionProp);
|
|
3536
3589
|
}
|
|
3537
|
-
var
|
|
3538
|
-
editValue =
|
|
3539
|
-
setEditValue =
|
|
3540
|
-
var
|
|
3541
|
-
sourceValue =
|
|
3542
|
-
setSourceValue =
|
|
3543
|
-
var
|
|
3544
|
-
arrowKeyCommitMode =
|
|
3545
|
-
setArrowKeyCommitMode =
|
|
3590
|
+
var _useState12 = useState(''),
|
|
3591
|
+
editValue = _useState12[0],
|
|
3592
|
+
setEditValue = _useState12[1];
|
|
3593
|
+
var _useState13 = useState(null),
|
|
3594
|
+
sourceValue = _useState13[0],
|
|
3595
|
+
setSourceValue = _useState13[1];
|
|
3596
|
+
var _useState14 = useState(false),
|
|
3597
|
+
arrowKeyCommitMode = _useState14[0],
|
|
3598
|
+
setArrowKeyCommitMode = _useState14[1];
|
|
3546
3599
|
var _useResizeObserver = useResizeObserver({
|
|
3547
3600
|
ref: overlayRef
|
|
3548
3601
|
}),
|
|
@@ -3668,6 +3721,13 @@ var Sheet = forwardRef(function (props, ref) {
|
|
|
3668
3721
|
setMaxScroll(maxScroll);
|
|
3669
3722
|
});
|
|
3670
3723
|
};
|
|
3724
|
+
var changeDropTarget = function changeDropTarget(newSelection, dropOn) {
|
|
3725
|
+
if (dropOn === void 0) {
|
|
3726
|
+
dropOn = false;
|
|
3727
|
+
}
|
|
3728
|
+
setDropTarget(newSelection);
|
|
3729
|
+
setDropOn(dropOn);
|
|
3730
|
+
};
|
|
3671
3731
|
var changeSelection = function changeSelection(newSelection, scrollTo, toHead) {
|
|
3672
3732
|
if (scrollTo === void 0) {
|
|
3673
3733
|
scrollTo = true;
|
|
@@ -3684,14 +3744,14 @@ var Sheet = forwardRef(function (props, ref) {
|
|
|
3684
3744
|
scrollToSelection(newSelection, toHead);
|
|
3685
3745
|
}
|
|
3686
3746
|
if (props.onSelectionChanged) {
|
|
3687
|
-
var
|
|
3688
|
-
|
|
3689
|
-
|
|
3690
|
-
|
|
3691
|
-
|
|
3692
|
-
|
|
3693
|
-
|
|
3694
|
-
props.onSelectionChanged(
|
|
3747
|
+
var _validateSelection = validateSelection(newSelection),
|
|
3748
|
+
_validateSelection$ = _validateSelection[0],
|
|
3749
|
+
anchorX = _validateSelection$[0],
|
|
3750
|
+
anchorY = _validateSelection$[1],
|
|
3751
|
+
_validateSelection$2 = _validateSelection[1],
|
|
3752
|
+
headX = _validateSelection$2[0],
|
|
3753
|
+
headY = _validateSelection$2[1];
|
|
3754
|
+
props.onSelectionChanged(anchorX, anchorY, headX, headY);
|
|
3695
3755
|
}
|
|
3696
3756
|
};
|
|
3697
3757
|
var cancelEditingCell = function cancelEditingCell() {
|
|
@@ -3765,7 +3825,7 @@ var Sheet = forwardRef(function (props, ref) {
|
|
|
3765
3825
|
var onScroll = useScroll(dataOffset, maxScroll, cellLayout, setDataOffset, setMaxScroll, props.onScrollAction);
|
|
3766
3826
|
var getAutoSizeWidth = useAutoSizeColumn(visibleCells.rows, displayData, cellLayout, cellStyle, columnHeaders, columnHeaderStyle, canvasWidth, freezeColumns);
|
|
3767
3827
|
var getAutoSizeHeight = useAutoSizeRow(visibleCells.columns, displayData, cellLayout, cellStyle, columnHeaders, columnHeaderStyle, cellWidth, canvasHeight, freezeRows);
|
|
3768
|
-
var _useMouse = useMouse(overlayRef, dataOffset, hitmapRef, selection, knobArea, editMode, editData, sourceData, cellReadOnly, maxColumns, maxRows, canSizeColumn, canSizeRow, canOrderColumn, canOrderRow, cellLayout, visibleCells, sheetStyle, columnGroupKeys, rowGroupKeys, selectedColumnGroups, selectedRowGroups, getAutoSizeWidth, getAutoSizeHeight, startEditingCell, commitEditingCell, setKnobArea, setDragIndices, setDragOffset,
|
|
3828
|
+
var _useMouse = useMouse(overlayRef, dataOffset, hitmapRef, selection, knobArea, editMode, editData, sourceData, cellReadOnly, maxColumns, maxRows, canSizeColumn, canSizeRow, canOrderColumn, canOrderRow, cellLayout, visibleCells, sheetStyle, columnGroupKeys, rowGroupKeys, selectedColumnGroups, selectedRowGroups, getAutoSizeWidth, getAutoSizeHeight, startEditingCell, commitEditingCell, setKnobArea, setDragIndices, setDragOffset, changeDropTarget, changeSelection, setFocused, props.cacheLayout ? columnLayout.clearAfter : undefined, props.cacheLayout ? rowLayout.clearAfter : undefined, props.onChange, props.onColumnOrderChange, props.onRowOrderChange, props.onColumnDrop, props.onRowDrop, props.onCellWidthChange, props.onCellHeightChange, props.onRightClick, props.dontCommitEditOnSelectionChange, props.dontChangeSelectionOnOrderChange),
|
|
3769
3829
|
mouseHandlers = _useMouse.mouseHandlers,
|
|
3770
3830
|
knobPosition = _useMouse.knobPosition;
|
|
3771
3831
|
var _useKeyboard = useKeyboard(arrowKeyCommitMode, overlayRef, cellReadOnly, displayData, editCell, editMode, focused, rawSelection, selection, startEditingCell, commitEditingCell, cancelEditingCell, changeSelection, setFocused, onClipboardCopy, props.onChange),
|
|
@@ -3784,15 +3844,15 @@ var Sheet = forwardRef(function (props, ref) {
|
|
|
3784
3844
|
return;
|
|
3785
3845
|
}
|
|
3786
3846
|
var animationFrameId = window.requestAnimationFrame(function () {
|
|
3787
|
-
hitmapRef.current = renderSheet(context, imageRenderer, cellLayout, visibleCells, sheetStyle, cellStyle, selection, secondarySelections, isFocused, knobPosition, knobArea, dragIndices, dragOffset, dropTarget, columnHeaders, columnHeaderStyle, displayData, columnGroupKeys, rowGroupKeys, selectedColumnGroups, selectedRowGroups, dataOffset);
|
|
3847
|
+
hitmapRef.current = renderSheet(context, imageRenderer, cellLayout, visibleCells, sheetStyle, cellStyle, selection, secondarySelections, isFocused, knobPosition, knobArea, dragIndices, dragOffset, dropTarget, dropOn, columnHeaders, columnHeaderStyle, displayData, columnGroupKeys, rowGroupKeys, selectedColumnGroups, selectedRowGroups, dataOffset);
|
|
3788
3848
|
});
|
|
3789
3849
|
return function () {
|
|
3790
3850
|
window.cancelAnimationFrame(animationFrameId);
|
|
3791
3851
|
};
|
|
3792
3852
|
}, [cellLayout, visibleCells, sheetStyle, cellStyle, selection, secondarySelections, isFocused, knobPosition, knobArea, dragOffset, dropTarget, columnHeaders, columnHeaderStyle, displayData, columnGroupKeys, rowGroupKeys, selectedColumnGroups, selectedRowGroups, dataOffset]);
|
|
3793
|
-
var
|
|
3794
|
-
lastEditKey =
|
|
3795
|
-
setLastEditKey =
|
|
3853
|
+
var _useState15 = useState(''),
|
|
3854
|
+
lastEditKey = _useState15[0],
|
|
3855
|
+
setLastEditKey = _useState15[1];
|
|
3796
3856
|
var editTextPosition = ORIGIN;
|
|
3797
3857
|
var editTextWidth = 0;
|
|
3798
3858
|
var editTextHeight = 0;
|