@leankylin-sheet/core 5.2.48 → 5.2.50
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.esm.js +137 -7
- package/dist/index.js +137 -6
- package/dist/modules/dropCell.d.ts +1 -0
- package/package.json +2 -2
package/dist/index.esm.js
CHANGED
|
@@ -50389,6 +50389,28 @@ function hideDropCellSelection(container) {
|
|
|
50389
50389
|
selectedExtend.style.display = "none";
|
|
50390
50390
|
}
|
|
50391
50391
|
}
|
|
50392
|
+
function rowLocationWithThreshold(y, visibleRow) {
|
|
50393
|
+
var _rowLocation = rowLocation(y, visibleRow),
|
|
50394
|
+
_rowLocation2 = _slicedToArray(_rowLocation, 3),
|
|
50395
|
+
row_pre = _rowLocation2[0],
|
|
50396
|
+
row = _rowLocation2[1],
|
|
50397
|
+
row_index = _rowLocation2[2];
|
|
50398
|
+
if (row_index > 0 && y < (row_pre + row) / 2) {
|
|
50399
|
+
return rowLocationByIndex(row_index - 1, visibleRow);
|
|
50400
|
+
}
|
|
50401
|
+
return [row_pre, row, row_index];
|
|
50402
|
+
}
|
|
50403
|
+
function colLocationWithThreshold(x, visibleCol) {
|
|
50404
|
+
var _colLocation = colLocation(x, visibleCol),
|
|
50405
|
+
_colLocation2 = _slicedToArray(_colLocation, 3),
|
|
50406
|
+
col_pre = _colLocation2[0],
|
|
50407
|
+
col = _colLocation2[1],
|
|
50408
|
+
col_index = _colLocation2[2];
|
|
50409
|
+
if (col_index > 0 && x < (col_pre + col) / 2) {
|
|
50410
|
+
return colLocationByIndex(col_index - 1, visibleCol);
|
|
50411
|
+
}
|
|
50412
|
+
return [col_pre, col, col_index];
|
|
50413
|
+
}
|
|
50392
50414
|
function createDropCellRange(ctx, e, container) {
|
|
50393
50415
|
ctx.luckysheet_cell_selected_extend = true;
|
|
50394
50416
|
ctx.luckysheet_scroll_status = true;
|
|
@@ -50397,11 +50419,11 @@ function createDropCellRange(ctx, e, container) {
|
|
|
50397
50419
|
var rect = container.getBoundingClientRect();
|
|
50398
50420
|
var x = e.pageX - rect.left - ctx.rowHeaderWidth + scrollLeft;
|
|
50399
50421
|
var y = e.pageY - rect.top - ctx.columnHeaderHeight + scrollTop;
|
|
50400
|
-
var row_location =
|
|
50422
|
+
var row_location = rowLocationWithThreshold(y, ctx.visibledatarow);
|
|
50401
50423
|
var row_pre = row_location[0];
|
|
50402
50424
|
var row = row_location[1];
|
|
50403
50425
|
var row_index = row_location[2];
|
|
50404
|
-
var col_location =
|
|
50426
|
+
var col_location = colLocationWithThreshold(x, ctx.visibledatacolumn);
|
|
50405
50427
|
var col_pre = col_location[0];
|
|
50406
50428
|
var col = col_location[1];
|
|
50407
50429
|
var col_index = col_location[2];
|
|
@@ -50419,11 +50441,11 @@ function onDropCellSelect(ctx, e, scrollX, scrollY, container) {
|
|
|
50419
50441
|
var rect = container.getBoundingClientRect();
|
|
50420
50442
|
var x = e.pageX - rect.left - ctx.rowHeaderWidth + scrollLeft;
|
|
50421
50443
|
var y = e.pageY - rect.top - ctx.columnHeaderHeight + scrollTop;
|
|
50422
|
-
var row_location =
|
|
50444
|
+
var row_location = rowLocationWithThreshold(y, ctx.visibledatarow);
|
|
50423
50445
|
var row = row_location[1];
|
|
50424
50446
|
var row_pre = row_location[0];
|
|
50425
50447
|
var row_index = row_location[2];
|
|
50426
|
-
var col_location =
|
|
50448
|
+
var col_location = colLocationWithThreshold(x, ctx.visibledatacolumn);
|
|
50427
50449
|
var col = col_location[1];
|
|
50428
50450
|
var col_pre = col_location[0];
|
|
50429
50451
|
var col_index = col_location[2];
|
|
@@ -52245,10 +52267,10 @@ function onDropCellSelectEnd(ctx, e, container) {
|
|
|
52245
52267
|
var rect = container.getBoundingClientRect();
|
|
52246
52268
|
var x = e.pageX - rect.left - ctx.rowHeaderWidth + scrollLeft;
|
|
52247
52269
|
var y = e.pageY - rect.top - ctx.columnHeaderHeight + scrollTop;
|
|
52248
|
-
var row_location =
|
|
52270
|
+
var row_location = rowLocationWithThreshold(y, ctx.visibledatarow);
|
|
52249
52271
|
var row_pre = row_location[0];
|
|
52250
52272
|
var row_index = row_location[2];
|
|
52251
|
-
var col_location =
|
|
52273
|
+
var col_location = colLocationWithThreshold(x, ctx.visibledatacolumn);
|
|
52252
52274
|
var col_pre = col_location[0];
|
|
52253
52275
|
var col_index = col_location[2];
|
|
52254
52276
|
var row_index_original = ctx.luckysheet_cell_selected_extend_index[0];
|
|
@@ -52369,6 +52391,111 @@ function onDropCellSelectEnd(ctx, e, container) {
|
|
|
52369
52391
|
}
|
|
52370
52392
|
}
|
|
52371
52393
|
}
|
|
52394
|
+
function getFirstNonEmptyRowBelow(flowdata, col, startRow) {
|
|
52395
|
+
for (var r = startRow; r < flowdata.length; r += 1) {
|
|
52396
|
+
var _flowdata$r2;
|
|
52397
|
+
var cell = (_flowdata$r2 = flowdata[r]) === null || _flowdata$r2 === void 0 ? void 0 : _flowdata$r2[col];
|
|
52398
|
+
if (cell != null && cell.v != null) {
|
|
52399
|
+
return r;
|
|
52400
|
+
}
|
|
52401
|
+
}
|
|
52402
|
+
return -1;
|
|
52403
|
+
}
|
|
52404
|
+
function getLastConsecutiveNonEmptyRow(flowdata, col, startRow) {
|
|
52405
|
+
var endRow = -1;
|
|
52406
|
+
for (var r = startRow; r < flowdata.length; r += 1) {
|
|
52407
|
+
var _flowdata$r3;
|
|
52408
|
+
var cell = (_flowdata$r3 = flowdata[r]) === null || _flowdata$r3 === void 0 ? void 0 : _flowdata$r3[col];
|
|
52409
|
+
if (cell != null && cell.v != null) {
|
|
52410
|
+
endRow = r;
|
|
52411
|
+
} else {
|
|
52412
|
+
break;
|
|
52413
|
+
}
|
|
52414
|
+
}
|
|
52415
|
+
return endRow;
|
|
52416
|
+
}
|
|
52417
|
+
function handleDropCellDoubleClick(ctx, container) {
|
|
52418
|
+
var _ctx$luckysheet_selec5;
|
|
52419
|
+
ctx.luckysheet_cell_selected_extend = false;
|
|
52420
|
+
hideDropCellSelection(container);
|
|
52421
|
+
var last = (_ctx$luckysheet_selec5 = ctx.luckysheet_select_save) === null || _ctx$luckysheet_selec5 === void 0 ? void 0 : _ctx$luckysheet_selec5[ctx.luckysheet_select_save.length - 1];
|
|
52422
|
+
if (!last || last.top == null || last.left == null || last.height == null || last.width == null || last.row_focus == null || last.column_focus == null) {
|
|
52423
|
+
return;
|
|
52424
|
+
}
|
|
52425
|
+
var flowdata = getFlowdata(ctx);
|
|
52426
|
+
if (flowdata == null) return;
|
|
52427
|
+
var _last$row2 = _slicedToArray(last.row, 2),
|
|
52428
|
+
row_s = _last$row2[0],
|
|
52429
|
+
row_e = _last$row2[1];
|
|
52430
|
+
var _last$column2 = _slicedToArray(last.column, 2),
|
|
52431
|
+
col_s = _last$column2[0],
|
|
52432
|
+
col_e = _last$column2[1];
|
|
52433
|
+
dropCellCache.copyRange = _.cloneDeep(_.pick(last, ["row", "column"]));
|
|
52434
|
+
var typeItemHide = getTypeItemHide(ctx);
|
|
52435
|
+
if (!typeItemHide[0] && !typeItemHide[1] && !typeItemHide[2] && !typeItemHide[3] && !typeItemHide[4] && !typeItemHide[5] && !typeItemHide[6]) {
|
|
52436
|
+
dropCellCache.applyType = "0";
|
|
52437
|
+
} else {
|
|
52438
|
+
dropCellCache.applyType = "1";
|
|
52439
|
+
}
|
|
52440
|
+
var refCol = col_s - 1;
|
|
52441
|
+
if (refCol < 0 || getFirstNonEmptyRowBelow(flowdata, refCol, row_e + 1) === -1) {
|
|
52442
|
+
refCol = col_e + 1;
|
|
52443
|
+
if (refCol >= ctx.visibledatacolumn.length || getFirstNonEmptyRowBelow(flowdata, refCol, row_e + 1) === -1) {
|
|
52444
|
+
return;
|
|
52445
|
+
}
|
|
52446
|
+
}
|
|
52447
|
+
var endRow = getLastConsecutiveNonEmptyRow(flowdata, refCol, row_e + 1);
|
|
52448
|
+
if (endRow === -1) {
|
|
52449
|
+
return;
|
|
52450
|
+
}
|
|
52451
|
+
if (ctx.config.merge != null) {
|
|
52452
|
+
var HasMC = false;
|
|
52453
|
+
for (var r = last.row[0]; r <= last.row[1]; r += 1) {
|
|
52454
|
+
for (var c = last.column[0]; c <= last.column[1]; c += 1) {
|
|
52455
|
+
var _flowdata$r4;
|
|
52456
|
+
var cell = (_flowdata$r4 = flowdata[r]) === null || _flowdata$r4 === void 0 ? void 0 : _flowdata$r4[c];
|
|
52457
|
+
if (cell != null && cell.mc != null) {
|
|
52458
|
+
HasMC = true;
|
|
52459
|
+
break;
|
|
52460
|
+
}
|
|
52461
|
+
}
|
|
52462
|
+
}
|
|
52463
|
+
if (HasMC) {
|
|
52464
|
+
return;
|
|
52465
|
+
}
|
|
52466
|
+
for (var _r2 = last.row[1] + 1; _r2 <= endRow; _r2 += 1) {
|
|
52467
|
+
for (var _c2 = col_s; _c2 <= col_e; _c2 += 1) {
|
|
52468
|
+
var _flowdata$_r2;
|
|
52469
|
+
var _cell5 = (_flowdata$_r2 = flowdata[_r2]) === null || _flowdata$_r2 === void 0 ? void 0 : _flowdata$_r2[_c2];
|
|
52470
|
+
if (_cell5 != null && _cell5.mc != null) {
|
|
52471
|
+
HasMC = true;
|
|
52472
|
+
break;
|
|
52473
|
+
}
|
|
52474
|
+
}
|
|
52475
|
+
}
|
|
52476
|
+
if (HasMC) {
|
|
52477
|
+
return;
|
|
52478
|
+
}
|
|
52479
|
+
}
|
|
52480
|
+
dropCellCache.applyRange = {
|
|
52481
|
+
row: [row_e + 1, endRow],
|
|
52482
|
+
column: [col_s, col_e]
|
|
52483
|
+
};
|
|
52484
|
+
dropCellCache.direction = "down";
|
|
52485
|
+
ctx.luckysheet_select_save = normalizeSelection(ctx, [{
|
|
52486
|
+
row: [row_s, endRow],
|
|
52487
|
+
column: [col_s, col_e]
|
|
52488
|
+
}]);
|
|
52489
|
+
try {
|
|
52490
|
+
updateDropCell(ctx);
|
|
52491
|
+
} catch (err) {
|
|
52492
|
+
console.error(err);
|
|
52493
|
+
}
|
|
52494
|
+
var selectedMoveEle = container.querySelector(".leankylin-cell-selected-move");
|
|
52495
|
+
if (selectedMoveEle) {
|
|
52496
|
+
selectedMoveEle.style.display = "none";
|
|
52497
|
+
}
|
|
52498
|
+
}
|
|
52372
52499
|
|
|
52373
52500
|
var defaultStyle = {
|
|
52374
52501
|
fillStyle: "#000000",
|
|
@@ -56832,6 +56959,7 @@ function setCellValues(ctx, data, cellInput) {
|
|
|
56832
56959
|
ops = _data$j.ops;
|
|
56833
56960
|
setCellValue$1(ctx, r, c, v, cellInput, ops);
|
|
56834
56961
|
}
|
|
56962
|
+
cancelNormalSelected(ctx);
|
|
56835
56963
|
return;
|
|
56836
56964
|
}
|
|
56837
56965
|
var sheet = getSheet(ctx, ((_data$2 = data[0]) === null || _data$2 === void 0 ? void 0 : _data$2.ops) || {});
|
|
@@ -56852,6 +56980,7 @@ function setCellValues(ctx, data, cellInput) {
|
|
|
56852
56980
|
setCellValueInBatch(ctx, sheet, _r, _c, _v, cellInput, formulaCells);
|
|
56853
56981
|
}
|
|
56854
56982
|
if (formulaCells.length === 0 && changedData.length === 0) {
|
|
56983
|
+
cancelNormalSelected(ctx);
|
|
56855
56984
|
return;
|
|
56856
56985
|
}
|
|
56857
56986
|
registerExecFunctionExist(ctx, sheet, formulaCells, changedData);
|
|
@@ -56868,6 +56997,7 @@ function setCellValues(ctx, data, cellInput) {
|
|
|
56868
56997
|
groupValuesRefresh(ctx);
|
|
56869
56998
|
updateFunctionGroup(ctx);
|
|
56870
56999
|
ctx.formulaCache.execFunctionGlobalData = null;
|
|
57000
|
+
cancelNormalSelected(ctx);
|
|
56871
57001
|
}
|
|
56872
57002
|
function setCellFormatByRange(ctx, attr, value, range) {
|
|
56873
57003
|
var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
|
|
@@ -60949,4 +61079,4 @@ function handlePasteByClick(ctx, triggerType) {
|
|
|
60949
61079
|
} else if (data.indexOf("leankylin-copy-action-image") > -1) ; else ;
|
|
60950
61080
|
}
|
|
60951
61081
|
|
|
60952
|
-
export { CFSplitRange, Canvas, FormulaCache, MAX_ZOOM_RATIO, MIN_ZOOM_RATIO, addSheet, index as api, applyLocation, attrToCssName, autoSelectionFormula, calcSelectionInfo, cancelActiveImgItem, cancelFunctionrangeSelected, cancelNormalSelected, cancelPaintModel, cellFocus, cfSplitRange, changeSheet, chatatABC, checkCF, checkCellIsLocked, checkProtectionAllSelected, checkProtectionFormatCells, checkProtectionSelectLockedOrUnLockedCells, checkboxChange, clearFilter, clearMeasureTextCache, colHasMerged, colLocation, colLocationByIndex, colors, columnCharToIndex, commentBoxProps, compute, computeRowlenArr, confirmMessage, convertCssToStyleList, convertSpanToShareString, copy, copy2, createDropCellRange, createFilter, createFilterOptions, createFormulaRangeSelect, createRangeHightlight, dataRangeSelection, datenum_local, defaultContext, defaultFont, defaultSettings, defaultStyle, delFunctionGroup, deleteCellInSave, deleteComment, deleteRowCol, deleteSelectedCellText, deleteSheet, diff, drawArrow, drawLineInfo, dropCellCache, editComment, editSheetName, ensureSheetIndex, error, escapeHTMLTag, escapeRegExpStr, escapeScriptTag, execFunctionGroup, execfunction, expandRowsAndColumns, extractFormulaCellOps, filterPatch, fixColumnStyleOverflowInFreeze, fixPositionOnFrozenCells, fixRowStyleOverflowInFreeze, functionCopy, functionHTMLGenerate, functionStrChange, genarate, generateRandomId, generateRandomSheetName, getAllFunctionGroup, getArrowCanvasSize, getBorderInfoCompute, getBorderInfoComputeRange, getCellHyperlink, getCellRowColumn, getCellTextInfo, getCellTopRightPostion, getCellValue, getClipboardContent, getColMerge, getColorGradation, getCommentBoxByRC, getCommentBoxPosition, getComputeMap, getCurrentRules, getDataArr, getDataBySelectionNoCopy, getDropdownList, getFailureText, getFilterColumnColors, getFilterColumnValues, getFlattenedRange, getFlowdata, getFontSet, getFontStyleByCell, getFrozenHandleLeft, getFrozenHandleTop, getHLColor, getHintText, getHistoryRules, getInlineStringHTML, getInlineStringNoStyle, getMeasureText, getNowDateTime, getNullData, getOptionValue, getOrigincell, getQKBorder, getRange, getRangeArr, getRangeByTxt, getRangetxt, getRealCellValue, getRegExpStr, getRegStr, getRowMerge, getSearchIndexArr, getSelectRange, getSheetByIndex, getSheetIdByName, getSheetIndex, getStyleByCell, getTypeItemHide, getcellFormula, getcellrange, getdatabyselection, getrangeseleciton, goToLink, groupValuesRefresh, handleArrowKey, handleBold, handleBorder, handleCellAreaDoubleClick, handleCellAreaDragOver, handleCellAreaMouseDown, handleCellAreaMouseMove, handleCellDrop, handleClearFormat, handleColFreezeHandleMouseDown, handleColSizeHandleMouseDown, handleColumnHeaderMouseDown, handleContextMenu, handleCopy, handleCurrencyFormat, handleFormatPainter, handleFormulaInput, handleFreeze, handleGlobalEnter, handleGlobalKeyDown, handleGlobalWheel, handleHorizontalAlign, handleItalic, handleKeydownForZoom, handleLink, handleMerge, handleNumberDecrease, handleNumberIncrease, handleOverlayMouseMove, handleOverlayMouseUp, handleOverlayTouchEnd, handleOverlayTouchMove, handleOverlayTouchStart, handlePaste, handlePasteByClick, handlePasteByLeanklin, handlePercentageFormat, handleRowFreezeHandleMouseDown, handleRowHeaderMouseDown, handleRowSizeHandleMouseDown, handleScreenShot, handleSort, handleStrikeThrough, handleSum, handleTextBackground, handleTextColor, handleTextSize, handleUnderline, handleVerticalAlign, handleWithCtrlOrMetaKey, hasChinaword, hasPartMC, hideCRCount, hideDropCellSelection, hideSelected, imageProps, indexToColumnChar, initFreeze, initSheetIndex, inlineStyleAffectAttribute, inlineStyleAffectCssName, insertImage, insertRowCol, insertUpdateFunctionGroup, inverseRowColOptions, isAllSelectedCellsInStatus, isAllowEdit, isInlineStringCT, isInlineStringCell, isLinkValid, isRealNull, isRealNum, isShowHidenCR, isSupportBoundingBox, is_date, iscelldata, isdatatype, isdatatypemulti, isdatetime, israngeseleciton, jfrefreshgrid, labelFilterOptionState, locale, luckysheetUpdateCell, mergeBorder, mergeCells, mergeMoveMain, mousePosition, moveHighlightCell, moveHighlightRange, moveToEnd, newComment, normalizeSelection, normalizedAttr, normalizedCellAttr, onCellsMove, onCellsMoveEnd, onCellsMoveStart, onCommentBoxMove, onCommentBoxMoveEnd, onCommentBoxMoveStart, onCommentBoxResize, onCommentBoxResizeEnd, onCommentBoxResizeStart, onDropCellSelect, onDropCellSelectEnd, onFormulaRangeDragEnd, onImageMove, onImageMoveEnd, onImageMoveStart, onImageResize, onImageResizeEnd, onImageResizeStart, onRangeSelectionModalMove, onRangeSelectionModalMoveEnd, onRangeSelectionModalMoveStart, onSearchDialogMove, onSearchDialogMoveEnd, onSearchDialogMoveStart, opToPatch, orderbydata, orderbydatafiler, overShowComment, pasteHandlerOfPaintModel, patchToOp, rangeDrag, rangeDragColumn, rangeDragRow, rangeHightlightselected, rangeSetValue, rangeValueToHtml, removeActiveImage, removeEditingComment, removeHyperlink, replace, replaceAll, replaceHtml, rgbToHex, rowHasMerged, rowLocation, rowLocationByIndex, saveFilter, saveHyperlink, saveImage, scrollToFrozenRowCol, scrollToHighlightCell, searchAll, searchNext, selectAll, selectIsOverlap, selectTextContent, selectTextContentCross, selectTitlesMap, selectTitlesRange, selectionCache, selectionCopyShow, seletedHighlistByindex, setCaretPosition, setCellValue, setConditionRules, setDropcownValue, setEditingComment, setNextSheet, showComments, showDropCellSelection, showHideAllComments, showHideComment, showImgChooser, showLinkCard, showSelected, sortDataRange, sortSelection, storeSheetParamALL, toolbarItemClickHandler, toolbarItemSelectedFunc, update, updateCell, updateContextWithCanvas, updateContextWithSheetData, updateDropCell, updateFormat, updateFormatCell, updateInlineStringFormat, updateInlineStringFormatOutside, updateItem, updateMoreCell, updateSheet, validateCellData, validateIdCard, valueIsError, valueShowEs };
|
|
61082
|
+
export { CFSplitRange, Canvas, FormulaCache, MAX_ZOOM_RATIO, MIN_ZOOM_RATIO, addSheet, index as api, applyLocation, attrToCssName, autoSelectionFormula, calcSelectionInfo, cancelActiveImgItem, cancelFunctionrangeSelected, cancelNormalSelected, cancelPaintModel, cellFocus, cfSplitRange, changeSheet, chatatABC, checkCF, checkCellIsLocked, checkProtectionAllSelected, checkProtectionFormatCells, checkProtectionSelectLockedOrUnLockedCells, checkboxChange, clearFilter, clearMeasureTextCache, colHasMerged, colLocation, colLocationByIndex, colors, columnCharToIndex, commentBoxProps, compute, computeRowlenArr, confirmMessage, convertCssToStyleList, convertSpanToShareString, copy, copy2, createDropCellRange, createFilter, createFilterOptions, createFormulaRangeSelect, createRangeHightlight, dataRangeSelection, datenum_local, defaultContext, defaultFont, defaultSettings, defaultStyle, delFunctionGroup, deleteCellInSave, deleteComment, deleteRowCol, deleteSelectedCellText, deleteSheet, diff, drawArrow, drawLineInfo, dropCellCache, editComment, editSheetName, ensureSheetIndex, error, escapeHTMLTag, escapeRegExpStr, escapeScriptTag, execFunctionGroup, execfunction, expandRowsAndColumns, extractFormulaCellOps, filterPatch, fixColumnStyleOverflowInFreeze, fixPositionOnFrozenCells, fixRowStyleOverflowInFreeze, functionCopy, functionHTMLGenerate, functionStrChange, genarate, generateRandomId, generateRandomSheetName, getAllFunctionGroup, getArrowCanvasSize, getBorderInfoCompute, getBorderInfoComputeRange, getCellHyperlink, getCellRowColumn, getCellTextInfo, getCellTopRightPostion, getCellValue, getClipboardContent, getColMerge, getColorGradation, getCommentBoxByRC, getCommentBoxPosition, getComputeMap, getCurrentRules, getDataArr, getDataBySelectionNoCopy, getDropdownList, getFailureText, getFilterColumnColors, getFilterColumnValues, getFlattenedRange, getFlowdata, getFontSet, getFontStyleByCell, getFrozenHandleLeft, getFrozenHandleTop, getHLColor, getHintText, getHistoryRules, getInlineStringHTML, getInlineStringNoStyle, getMeasureText, getNowDateTime, getNullData, getOptionValue, getOrigincell, getQKBorder, getRange, getRangeArr, getRangeByTxt, getRangetxt, getRealCellValue, getRegExpStr, getRegStr, getRowMerge, getSearchIndexArr, getSelectRange, getSheetByIndex, getSheetIdByName, getSheetIndex, getStyleByCell, getTypeItemHide, getcellFormula, getcellrange, getdatabyselection, getrangeseleciton, goToLink, groupValuesRefresh, handleArrowKey, handleBold, handleBorder, handleCellAreaDoubleClick, handleCellAreaDragOver, handleCellAreaMouseDown, handleCellAreaMouseMove, handleCellDrop, handleClearFormat, handleColFreezeHandleMouseDown, handleColSizeHandleMouseDown, handleColumnHeaderMouseDown, handleContextMenu, handleCopy, handleCurrencyFormat, handleDropCellDoubleClick, handleFormatPainter, handleFormulaInput, handleFreeze, handleGlobalEnter, handleGlobalKeyDown, handleGlobalWheel, handleHorizontalAlign, handleItalic, handleKeydownForZoom, handleLink, handleMerge, handleNumberDecrease, handleNumberIncrease, handleOverlayMouseMove, handleOverlayMouseUp, handleOverlayTouchEnd, handleOverlayTouchMove, handleOverlayTouchStart, handlePaste, handlePasteByClick, handlePasteByLeanklin, handlePercentageFormat, handleRowFreezeHandleMouseDown, handleRowHeaderMouseDown, handleRowSizeHandleMouseDown, handleScreenShot, handleSort, handleStrikeThrough, handleSum, handleTextBackground, handleTextColor, handleTextSize, handleUnderline, handleVerticalAlign, handleWithCtrlOrMetaKey, hasChinaword, hasPartMC, hideCRCount, hideDropCellSelection, hideSelected, imageProps, indexToColumnChar, initFreeze, initSheetIndex, inlineStyleAffectAttribute, inlineStyleAffectCssName, insertImage, insertRowCol, insertUpdateFunctionGroup, inverseRowColOptions, isAllSelectedCellsInStatus, isAllowEdit, isInlineStringCT, isInlineStringCell, isLinkValid, isRealNull, isRealNum, isShowHidenCR, isSupportBoundingBox, is_date, iscelldata, isdatatype, isdatatypemulti, isdatetime, israngeseleciton, jfrefreshgrid, labelFilterOptionState, locale, luckysheetUpdateCell, mergeBorder, mergeCells, mergeMoveMain, mousePosition, moveHighlightCell, moveHighlightRange, moveToEnd, newComment, normalizeSelection, normalizedAttr, normalizedCellAttr, onCellsMove, onCellsMoveEnd, onCellsMoveStart, onCommentBoxMove, onCommentBoxMoveEnd, onCommentBoxMoveStart, onCommentBoxResize, onCommentBoxResizeEnd, onCommentBoxResizeStart, onDropCellSelect, onDropCellSelectEnd, onFormulaRangeDragEnd, onImageMove, onImageMoveEnd, onImageMoveStart, onImageResize, onImageResizeEnd, onImageResizeStart, onRangeSelectionModalMove, onRangeSelectionModalMoveEnd, onRangeSelectionModalMoveStart, onSearchDialogMove, onSearchDialogMoveEnd, onSearchDialogMoveStart, opToPatch, orderbydata, orderbydatafiler, overShowComment, pasteHandlerOfPaintModel, patchToOp, rangeDrag, rangeDragColumn, rangeDragRow, rangeHightlightselected, rangeSetValue, rangeValueToHtml, removeActiveImage, removeEditingComment, removeHyperlink, replace, replaceAll, replaceHtml, rgbToHex, rowHasMerged, rowLocation, rowLocationByIndex, saveFilter, saveHyperlink, saveImage, scrollToFrozenRowCol, scrollToHighlightCell, searchAll, searchNext, selectAll, selectIsOverlap, selectTextContent, selectTextContentCross, selectTitlesMap, selectTitlesRange, selectionCache, selectionCopyShow, seletedHighlistByindex, setCaretPosition, setCellValue, setConditionRules, setDropcownValue, setEditingComment, setNextSheet, showComments, showDropCellSelection, showHideAllComments, showHideComment, showImgChooser, showLinkCard, showSelected, sortDataRange, sortSelection, storeSheetParamALL, toolbarItemClickHandler, toolbarItemSelectedFunc, update, updateCell, updateContextWithCanvas, updateContextWithSheetData, updateDropCell, updateFormat, updateFormatCell, updateInlineStringFormat, updateInlineStringFormatOutside, updateItem, updateMoreCell, updateSheet, validateCellData, validateIdCard, valueIsError, valueShowEs };
|
package/dist/index.js
CHANGED
|
@@ -50399,6 +50399,28 @@ function hideDropCellSelection(container) {
|
|
|
50399
50399
|
selectedExtend.style.display = "none";
|
|
50400
50400
|
}
|
|
50401
50401
|
}
|
|
50402
|
+
function rowLocationWithThreshold(y, visibleRow) {
|
|
50403
|
+
var _rowLocation = rowLocation(y, visibleRow),
|
|
50404
|
+
_rowLocation2 = _slicedToArray(_rowLocation, 3),
|
|
50405
|
+
row_pre = _rowLocation2[0],
|
|
50406
|
+
row = _rowLocation2[1],
|
|
50407
|
+
row_index = _rowLocation2[2];
|
|
50408
|
+
if (row_index > 0 && y < (row_pre + row) / 2) {
|
|
50409
|
+
return rowLocationByIndex(row_index - 1, visibleRow);
|
|
50410
|
+
}
|
|
50411
|
+
return [row_pre, row, row_index];
|
|
50412
|
+
}
|
|
50413
|
+
function colLocationWithThreshold(x, visibleCol) {
|
|
50414
|
+
var _colLocation = colLocation(x, visibleCol),
|
|
50415
|
+
_colLocation2 = _slicedToArray(_colLocation, 3),
|
|
50416
|
+
col_pre = _colLocation2[0],
|
|
50417
|
+
col = _colLocation2[1],
|
|
50418
|
+
col_index = _colLocation2[2];
|
|
50419
|
+
if (col_index > 0 && x < (col_pre + col) / 2) {
|
|
50420
|
+
return colLocationByIndex(col_index - 1, visibleCol);
|
|
50421
|
+
}
|
|
50422
|
+
return [col_pre, col, col_index];
|
|
50423
|
+
}
|
|
50402
50424
|
function createDropCellRange(ctx, e, container) {
|
|
50403
50425
|
ctx.luckysheet_cell_selected_extend = true;
|
|
50404
50426
|
ctx.luckysheet_scroll_status = true;
|
|
@@ -50407,11 +50429,11 @@ function createDropCellRange(ctx, e, container) {
|
|
|
50407
50429
|
var rect = container.getBoundingClientRect();
|
|
50408
50430
|
var x = e.pageX - rect.left - ctx.rowHeaderWidth + scrollLeft;
|
|
50409
50431
|
var y = e.pageY - rect.top - ctx.columnHeaderHeight + scrollTop;
|
|
50410
|
-
var row_location =
|
|
50432
|
+
var row_location = rowLocationWithThreshold(y, ctx.visibledatarow);
|
|
50411
50433
|
var row_pre = row_location[0];
|
|
50412
50434
|
var row = row_location[1];
|
|
50413
50435
|
var row_index = row_location[2];
|
|
50414
|
-
var col_location =
|
|
50436
|
+
var col_location = colLocationWithThreshold(x, ctx.visibledatacolumn);
|
|
50415
50437
|
var col_pre = col_location[0];
|
|
50416
50438
|
var col = col_location[1];
|
|
50417
50439
|
var col_index = col_location[2];
|
|
@@ -50429,11 +50451,11 @@ function onDropCellSelect(ctx, e, scrollX, scrollY, container) {
|
|
|
50429
50451
|
var rect = container.getBoundingClientRect();
|
|
50430
50452
|
var x = e.pageX - rect.left - ctx.rowHeaderWidth + scrollLeft;
|
|
50431
50453
|
var y = e.pageY - rect.top - ctx.columnHeaderHeight + scrollTop;
|
|
50432
|
-
var row_location =
|
|
50454
|
+
var row_location = rowLocationWithThreshold(y, ctx.visibledatarow);
|
|
50433
50455
|
var row = row_location[1];
|
|
50434
50456
|
var row_pre = row_location[0];
|
|
50435
50457
|
var row_index = row_location[2];
|
|
50436
|
-
var col_location =
|
|
50458
|
+
var col_location = colLocationWithThreshold(x, ctx.visibledatacolumn);
|
|
50437
50459
|
var col = col_location[1];
|
|
50438
50460
|
var col_pre = col_location[0];
|
|
50439
50461
|
var col_index = col_location[2];
|
|
@@ -52255,10 +52277,10 @@ function onDropCellSelectEnd(ctx, e, container) {
|
|
|
52255
52277
|
var rect = container.getBoundingClientRect();
|
|
52256
52278
|
var x = e.pageX - rect.left - ctx.rowHeaderWidth + scrollLeft;
|
|
52257
52279
|
var y = e.pageY - rect.top - ctx.columnHeaderHeight + scrollTop;
|
|
52258
|
-
var row_location =
|
|
52280
|
+
var row_location = rowLocationWithThreshold(y, ctx.visibledatarow);
|
|
52259
52281
|
var row_pre = row_location[0];
|
|
52260
52282
|
var row_index = row_location[2];
|
|
52261
|
-
var col_location =
|
|
52283
|
+
var col_location = colLocationWithThreshold(x, ctx.visibledatacolumn);
|
|
52262
52284
|
var col_pre = col_location[0];
|
|
52263
52285
|
var col_index = col_location[2];
|
|
52264
52286
|
var row_index_original = ctx.luckysheet_cell_selected_extend_index[0];
|
|
@@ -52379,6 +52401,111 @@ function onDropCellSelectEnd(ctx, e, container) {
|
|
|
52379
52401
|
}
|
|
52380
52402
|
}
|
|
52381
52403
|
}
|
|
52404
|
+
function getFirstNonEmptyRowBelow(flowdata, col, startRow) {
|
|
52405
|
+
for (var r = startRow; r < flowdata.length; r += 1) {
|
|
52406
|
+
var _flowdata$r2;
|
|
52407
|
+
var cell = (_flowdata$r2 = flowdata[r]) === null || _flowdata$r2 === void 0 ? void 0 : _flowdata$r2[col];
|
|
52408
|
+
if (cell != null && cell.v != null) {
|
|
52409
|
+
return r;
|
|
52410
|
+
}
|
|
52411
|
+
}
|
|
52412
|
+
return -1;
|
|
52413
|
+
}
|
|
52414
|
+
function getLastConsecutiveNonEmptyRow(flowdata, col, startRow) {
|
|
52415
|
+
var endRow = -1;
|
|
52416
|
+
for (var r = startRow; r < flowdata.length; r += 1) {
|
|
52417
|
+
var _flowdata$r3;
|
|
52418
|
+
var cell = (_flowdata$r3 = flowdata[r]) === null || _flowdata$r3 === void 0 ? void 0 : _flowdata$r3[col];
|
|
52419
|
+
if (cell != null && cell.v != null) {
|
|
52420
|
+
endRow = r;
|
|
52421
|
+
} else {
|
|
52422
|
+
break;
|
|
52423
|
+
}
|
|
52424
|
+
}
|
|
52425
|
+
return endRow;
|
|
52426
|
+
}
|
|
52427
|
+
function handleDropCellDoubleClick(ctx, container) {
|
|
52428
|
+
var _ctx$luckysheet_selec5;
|
|
52429
|
+
ctx.luckysheet_cell_selected_extend = false;
|
|
52430
|
+
hideDropCellSelection(container);
|
|
52431
|
+
var last = (_ctx$luckysheet_selec5 = ctx.luckysheet_select_save) === null || _ctx$luckysheet_selec5 === void 0 ? void 0 : _ctx$luckysheet_selec5[ctx.luckysheet_select_save.length - 1];
|
|
52432
|
+
if (!last || last.top == null || last.left == null || last.height == null || last.width == null || last.row_focus == null || last.column_focus == null) {
|
|
52433
|
+
return;
|
|
52434
|
+
}
|
|
52435
|
+
var flowdata = getFlowdata(ctx);
|
|
52436
|
+
if (flowdata == null) return;
|
|
52437
|
+
var _last$row2 = _slicedToArray(last.row, 2),
|
|
52438
|
+
row_s = _last$row2[0],
|
|
52439
|
+
row_e = _last$row2[1];
|
|
52440
|
+
var _last$column2 = _slicedToArray(last.column, 2),
|
|
52441
|
+
col_s = _last$column2[0],
|
|
52442
|
+
col_e = _last$column2[1];
|
|
52443
|
+
dropCellCache.copyRange = ___default['default'].cloneDeep(___default['default'].pick(last, ["row", "column"]));
|
|
52444
|
+
var typeItemHide = getTypeItemHide(ctx);
|
|
52445
|
+
if (!typeItemHide[0] && !typeItemHide[1] && !typeItemHide[2] && !typeItemHide[3] && !typeItemHide[4] && !typeItemHide[5] && !typeItemHide[6]) {
|
|
52446
|
+
dropCellCache.applyType = "0";
|
|
52447
|
+
} else {
|
|
52448
|
+
dropCellCache.applyType = "1";
|
|
52449
|
+
}
|
|
52450
|
+
var refCol = col_s - 1;
|
|
52451
|
+
if (refCol < 0 || getFirstNonEmptyRowBelow(flowdata, refCol, row_e + 1) === -1) {
|
|
52452
|
+
refCol = col_e + 1;
|
|
52453
|
+
if (refCol >= ctx.visibledatacolumn.length || getFirstNonEmptyRowBelow(flowdata, refCol, row_e + 1) === -1) {
|
|
52454
|
+
return;
|
|
52455
|
+
}
|
|
52456
|
+
}
|
|
52457
|
+
var endRow = getLastConsecutiveNonEmptyRow(flowdata, refCol, row_e + 1);
|
|
52458
|
+
if (endRow === -1) {
|
|
52459
|
+
return;
|
|
52460
|
+
}
|
|
52461
|
+
if (ctx.config.merge != null) {
|
|
52462
|
+
var HasMC = false;
|
|
52463
|
+
for (var r = last.row[0]; r <= last.row[1]; r += 1) {
|
|
52464
|
+
for (var c = last.column[0]; c <= last.column[1]; c += 1) {
|
|
52465
|
+
var _flowdata$r4;
|
|
52466
|
+
var cell = (_flowdata$r4 = flowdata[r]) === null || _flowdata$r4 === void 0 ? void 0 : _flowdata$r4[c];
|
|
52467
|
+
if (cell != null && cell.mc != null) {
|
|
52468
|
+
HasMC = true;
|
|
52469
|
+
break;
|
|
52470
|
+
}
|
|
52471
|
+
}
|
|
52472
|
+
}
|
|
52473
|
+
if (HasMC) {
|
|
52474
|
+
return;
|
|
52475
|
+
}
|
|
52476
|
+
for (var _r2 = last.row[1] + 1; _r2 <= endRow; _r2 += 1) {
|
|
52477
|
+
for (var _c2 = col_s; _c2 <= col_e; _c2 += 1) {
|
|
52478
|
+
var _flowdata$_r2;
|
|
52479
|
+
var _cell5 = (_flowdata$_r2 = flowdata[_r2]) === null || _flowdata$_r2 === void 0 ? void 0 : _flowdata$_r2[_c2];
|
|
52480
|
+
if (_cell5 != null && _cell5.mc != null) {
|
|
52481
|
+
HasMC = true;
|
|
52482
|
+
break;
|
|
52483
|
+
}
|
|
52484
|
+
}
|
|
52485
|
+
}
|
|
52486
|
+
if (HasMC) {
|
|
52487
|
+
return;
|
|
52488
|
+
}
|
|
52489
|
+
}
|
|
52490
|
+
dropCellCache.applyRange = {
|
|
52491
|
+
row: [row_e + 1, endRow],
|
|
52492
|
+
column: [col_s, col_e]
|
|
52493
|
+
};
|
|
52494
|
+
dropCellCache.direction = "down";
|
|
52495
|
+
ctx.luckysheet_select_save = normalizeSelection(ctx, [{
|
|
52496
|
+
row: [row_s, endRow],
|
|
52497
|
+
column: [col_s, col_e]
|
|
52498
|
+
}]);
|
|
52499
|
+
try {
|
|
52500
|
+
updateDropCell(ctx);
|
|
52501
|
+
} catch (err) {
|
|
52502
|
+
console.error(err);
|
|
52503
|
+
}
|
|
52504
|
+
var selectedMoveEle = container.querySelector(".leankylin-cell-selected-move");
|
|
52505
|
+
if (selectedMoveEle) {
|
|
52506
|
+
selectedMoveEle.style.display = "none";
|
|
52507
|
+
}
|
|
52508
|
+
}
|
|
52382
52509
|
|
|
52383
52510
|
var defaultStyle = {
|
|
52384
52511
|
fillStyle: "#000000",
|
|
@@ -56842,6 +56969,7 @@ function setCellValues(ctx, data, cellInput) {
|
|
|
56842
56969
|
ops = _data$j.ops;
|
|
56843
56970
|
setCellValue$1(ctx, r, c, v, cellInput, ops);
|
|
56844
56971
|
}
|
|
56972
|
+
cancelNormalSelected(ctx);
|
|
56845
56973
|
return;
|
|
56846
56974
|
}
|
|
56847
56975
|
var sheet = getSheet(ctx, ((_data$2 = data[0]) === null || _data$2 === void 0 ? void 0 : _data$2.ops) || {});
|
|
@@ -56862,6 +56990,7 @@ function setCellValues(ctx, data, cellInput) {
|
|
|
56862
56990
|
setCellValueInBatch(ctx, sheet, _r, _c, _v, cellInput, formulaCells);
|
|
56863
56991
|
}
|
|
56864
56992
|
if (formulaCells.length === 0 && changedData.length === 0) {
|
|
56993
|
+
cancelNormalSelected(ctx);
|
|
56865
56994
|
return;
|
|
56866
56995
|
}
|
|
56867
56996
|
registerExecFunctionExist(ctx, sheet, formulaCells, changedData);
|
|
@@ -56878,6 +57007,7 @@ function setCellValues(ctx, data, cellInput) {
|
|
|
56878
57007
|
groupValuesRefresh(ctx);
|
|
56879
57008
|
updateFunctionGroup(ctx);
|
|
56880
57009
|
ctx.formulaCache.execFunctionGlobalData = null;
|
|
57010
|
+
cancelNormalSelected(ctx);
|
|
56881
57011
|
}
|
|
56882
57012
|
function setCellFormatByRange(ctx, attr, value, range) {
|
|
56883
57013
|
var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
|
|
@@ -61116,6 +61246,7 @@ exports.handleColumnHeaderMouseDown = handleColumnHeaderMouseDown;
|
|
|
61116
61246
|
exports.handleContextMenu = handleContextMenu;
|
|
61117
61247
|
exports.handleCopy = handleCopy;
|
|
61118
61248
|
exports.handleCurrencyFormat = handleCurrencyFormat;
|
|
61249
|
+
exports.handleDropCellDoubleClick = handleDropCellDoubleClick;
|
|
61119
61250
|
exports.handleFormatPainter = handleFormatPainter;
|
|
61120
61251
|
exports.handleFormulaInput = handleFormulaInput;
|
|
61121
61252
|
exports.handleFreeze = handleFreeze;
|
|
@@ -8,3 +8,4 @@ export declare function onDropCellSelect(ctx: Context, e: MouseEvent, scrollX: H
|
|
|
8
8
|
export declare function getTypeItemHide(ctx: Context): boolean[];
|
|
9
9
|
export declare function updateDropCell(ctx: Context): void;
|
|
10
10
|
export declare function onDropCellSelectEnd(ctx: Context, e: MouseEvent, container: HTMLDivElement): void;
|
|
11
|
+
export declare function handleDropCellDoubleClick(ctx: Context, container: HTMLDivElement): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@leankylin-sheet/core",
|
|
3
|
-
"version": "5.2.
|
|
3
|
+
"version": "5.2.50",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"module": "dist/index.esm.js",
|
|
6
6
|
"typings": "dist/index.d.ts",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"build": "father-build"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@leankylin-sheet/formula-parser": "5.2.
|
|
16
|
+
"@leankylin-sheet/formula-parser": "5.2.50",
|
|
17
17
|
"dayjs": "^1.11.0",
|
|
18
18
|
"immer": "^9.0.12",
|
|
19
19
|
"lodash": "^4.17.21",
|