@rowsncolumns/spreadsheet-state 29.1.10 → 29.1.13
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/cjs/api/image-embed.d.ts +5 -0
- package/dist/cjs/api/image-embed.d.ts.map +1 -1
- package/dist/cjs/api/image-embed.js +6 -0
- package/dist/cjs/hooks/use-on-move-sheet.d.ts.map +1 -1
- package/dist/cjs/hooks/use-on-move-sheet.js +9 -29
- package/dist/cjs/interface/duplicate-sheet.d.ts.map +1 -1
- package/dist/cjs/interface/duplicate-sheet.js +3 -2
- package/dist/cjs/interface/new-sheet.d.ts.map +1 -1
- package/dist/cjs/interface/new-sheet.js +6 -30
- package/dist/cjs/interface/sheet-order.d.ts +21 -0
- package/dist/cjs/interface/sheet-order.d.ts.map +1 -0
- package/dist/cjs/interface/sheet-order.js +88 -0
- package/dist/cjs/interface/spreadsheet-interface.d.ts.map +1 -1
- package/dist/cjs/interface/spreadsheet-interface.js +22 -10
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/api/image-embed.d.ts +5 -0
- package/dist/esm/api/image-embed.d.ts.map +1 -1
- package/dist/esm/api/image-embed.js +6 -0
- package/dist/esm/hooks/use-on-move-sheet.d.ts.map +1 -1
- package/dist/esm/hooks/use-on-move-sheet.js +9 -28
- package/dist/esm/interface/duplicate-sheet.d.ts.map +1 -1
- package/dist/esm/interface/duplicate-sheet.js +3 -1
- package/dist/esm/interface/new-sheet.d.ts.map +1 -1
- package/dist/esm/interface/new-sheet.js +5 -25
- package/dist/esm/interface/sheet-order.d.ts +21 -0
- package/dist/esm/interface/sheet-order.d.ts.map +1 -0
- package/dist/esm/interface/sheet-order.js +73 -0
- package/dist/esm/interface/spreadsheet-interface.d.ts.map +1 -1
- package/dist/esm/interface/spreadsheet-interface.js +22 -10
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +10 -10
|
@@ -36,6 +36,11 @@ export type CreateImageEmbedOptions = {
|
|
|
36
36
|
* The ONE way a picture becomes a floating object over the cells — shared by the clipboard paste,
|
|
37
37
|
* the file drop, the Insert → Image dialog and the engine command handlers, so every entry point
|
|
38
38
|
* produces the same movable, resizable, aspect-locked embed anchored at the target cell.
|
|
39
|
+
*
|
|
40
|
+
* A picture is "Move but don't size with cells" (Excel's default for an inserted picture; a chart
|
|
41
|
+
* or shape defaults to "Move and size"). It keeps its pixel size whatever happens to the columns
|
|
42
|
+
* and rows under it — a collapsed group or a hidden column only shifts it — and a move never
|
|
43
|
+
* re-anchors its bottom-right corner to a cell (#1149).
|
|
39
44
|
*/
|
|
40
45
|
export declare const createImageEmbed: ({ sheetId, anchorCell, imageUrl, width, height, viewport, embedId, idCreationStrategy, }: CreateImageEmbedOptions) => EmbeddedObject;
|
|
41
46
|
//# sourceMappingURL=image-embed.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image-embed.d.ts","sourceRoot":"","sources":["../../../api/image-embed.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAE1E;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,MAAM,CAAC;AAErD,+FAA+F;AAC/F,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAErE,MAAM,MAAM,cAAc,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3E;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,OAAO,MAAM,EACb,QAAQ,MAAM,EACd,WAAW,aAAa,GAAG,IAAI,KAC9B,cAaF,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,iHAAiH;IACjH,UAAU,EAAE,aAAa,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,wFAAwF;IACxF,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,iHAAiH;IACjH,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,kBAAkB,CAAC,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;CAChE,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"image-embed.d.ts","sourceRoot":"","sources":["../../../api/image-embed.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAE1E;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,MAAM,CAAC;AAErD,+FAA+F;AAC/F,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAErE,MAAM,MAAM,cAAc,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3E;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,OAAO,MAAM,EACb,QAAQ,MAAM,EACd,WAAW,aAAa,GAAG,IAAI,KAC9B,cAaF,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,iHAAiH;IACjH,UAAU,EAAE,aAAa,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,wFAAwF;IACxF,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,iHAAiH;IACjH,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,kBAAkB,CAAC,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;CAChE,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,GAAI,0FAS9B,uBAAuB,KAAG,cA0B5B,CAAC"}
|
|
@@ -28,6 +28,11 @@ export var fitImageToViewport = function (width, height, viewport) {
|
|
|
28
28
|
* The ONE way a picture becomes a floating object over the cells — shared by the clipboard paste,
|
|
29
29
|
* the file drop, the Insert → Image dialog and the engine command handlers, so every entry point
|
|
30
30
|
* produces the same movable, resizable, aspect-locked embed anchored at the target cell.
|
|
31
|
+
*
|
|
32
|
+
* A picture is "Move but don't size with cells" (Excel's default for an inserted picture; a chart
|
|
33
|
+
* or shape defaults to "Move and size"). It keeps its pixel size whatever happens to the columns
|
|
34
|
+
* and rows under it — a collapsed group or a hidden column only shifts it — and a move never
|
|
35
|
+
* re-anchors its bottom-right corner to a cell (#1149).
|
|
31
36
|
*/
|
|
32
37
|
export var createImageEmbed = function (_a) {
|
|
33
38
|
var _b;
|
|
@@ -43,6 +48,7 @@ export var createImageEmbed = function (_a) {
|
|
|
43
48
|
heightPixels: heightPixels,
|
|
44
49
|
offsetXPixels: 0,
|
|
45
50
|
offsetYPixels: 0,
|
|
51
|
+
placement: "moveOnly",
|
|
46
52
|
},
|
|
47
53
|
},
|
|
48
54
|
borderColor: "transparent",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-on-move-sheet.d.ts","sourceRoot":"","sources":["../../../hooks/use-on-move-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,KAAK,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"use-on-move-sheet.d.ts","sourceRoot":"","sources":["../../../hooks/use-on-move-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAItE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD,KAAK,mBAAmB,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,IAAI;IAC9D,cAAc,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC5D,aAAa,IAAI,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACrD,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,+CAIjE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,eAId,MAAM,mBAAmB,MAAM,eAAe,MAAM,SAuDjE,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { __read } from "tslib";
|
|
2
|
-
import { sortSheetsByIndex } from "@rowsncolumns/utils";
|
|
3
2
|
import { produceWithPatches } from "immer";
|
|
4
3
|
import { useCallback } from "react";
|
|
4
|
+
import { moveSheetInOrder } from "../interface/sheet-order";
|
|
5
5
|
import { useCanEditSheet, useCanEditWorkbook } from "./use-can-edit-cellrange";
|
|
6
6
|
export var useOnMoveSheet = function (_a) {
|
|
7
7
|
var onChangeSheets = _a.onChangeSheets, createHistory = _a.createHistory, onCommand = _a.onCommand;
|
|
@@ -21,43 +21,23 @@ export var useOnMoveSheet = function (_a) {
|
|
|
21
21
|
return;
|
|
22
22
|
}
|
|
23
23
|
var saveHistory = createHistory();
|
|
24
|
+
var moved = false;
|
|
24
25
|
onChangeSheets(function (prevSheets) {
|
|
25
26
|
var _a = __read(produceWithPatches(prevSheets, function (draft) {
|
|
26
|
-
|
|
27
|
-
var sheetToMove = sortedSheets[currentPosition];
|
|
28
|
-
var oldIndex = sheetToMove.index;
|
|
29
|
-
var newIndex = sortedSheets[newPosition].index;
|
|
30
|
-
// Determine the direction of movement
|
|
31
|
-
var isMovingDown = newPosition > currentPosition;
|
|
32
|
-
// Update indices of affected sheets
|
|
33
|
-
draft.forEach(function (sheet, arrayIndex) {
|
|
34
|
-
var _a;
|
|
35
|
-
var currentIndex = (_a = sheet.index) !== null && _a !== void 0 ? _a : arrayIndex;
|
|
36
|
-
if (sheet.sheetId === sheetId) {
|
|
37
|
-
sheet.index = newIndex;
|
|
38
|
-
}
|
|
39
|
-
else if (!isMovingDown &&
|
|
40
|
-
currentIndex < oldIndex &&
|
|
41
|
-
currentIndex >= newIndex) {
|
|
42
|
-
sheet.index = currentIndex + 1;
|
|
43
|
-
}
|
|
44
|
-
else if (isMovingDown &&
|
|
45
|
-
currentIndex > oldIndex &&
|
|
46
|
-
currentIndex <= newIndex) {
|
|
47
|
-
sheet.index = currentIndex - 1;
|
|
48
|
-
}
|
|
49
|
-
else if (sheet.index === undefined) {
|
|
50
|
-
// Set index for sheets that didn't have one before
|
|
51
|
-
sheet.index = arrayIndex;
|
|
52
|
-
}
|
|
53
|
-
});
|
|
27
|
+
moved = moveSheetInOrder(draft, sheetId, currentPosition, newPosition);
|
|
54
28
|
}), 3), nextState = _a[0], patches = _a[1], inversePatches = _a[2];
|
|
29
|
+
if (!moved) {
|
|
30
|
+
return prevSheets;
|
|
31
|
+
}
|
|
55
32
|
// Save history
|
|
56
33
|
saveHistory({
|
|
57
34
|
sheets: { patches: patches, inversePatches: inversePatches },
|
|
58
35
|
});
|
|
59
36
|
return nextState;
|
|
60
37
|
});
|
|
38
|
+
if (!moved) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
61
41
|
onCommand === null || onCommand === void 0 ? void 0 : onCommand({
|
|
62
42
|
command: "move-sheet",
|
|
63
43
|
sheetId: sheetId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duplicate-sheet.d.ts","sourceRoot":"","sources":["../../../interface/duplicate-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAc,MAAM,2BAA2B,CAAC;AAe7E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"duplicate-sheet.d.ts","sourceRoot":"","sources":["../../../interface/duplicate-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAc,MAAM,2BAA2B,CAAC;AAe7E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAIhF,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,sPAejE,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,MACvB,SAAS,MAAM,EAAE,0BAA0B,MAAM,uBAmT1D,CAAC"}
|
|
@@ -6,6 +6,7 @@ import { renameTablesInFormula } from "../api/formula";
|
|
|
6
6
|
import { createSheetDraft } from "../api/immer-utils";
|
|
7
7
|
import { getGeneratedSheetCopyName } from "../generated-names";
|
|
8
8
|
import { SheetCell } from "../sheet-cell";
|
|
9
|
+
import { sheetIndexAfter } from "./sheet-order";
|
|
9
10
|
export var duplicateSheet = function (_a) {
|
|
10
11
|
var locale = _a.locale, maxSheetCount = _a.maxSheetCount, sheets = _a.sheets, idCreationStrategy = _a.idCreationStrategy, onChangeSheetData = _a.onChangeSheetData, onChangeSheets = _a.onChangeSheets, onChangeTables = _a.onChangeTables, onChangeCharts = _a.onChangeCharts, onChangeEmbeds = _a.onChangeEmbeds, onChangeConditionalFormats = _a.onChangeConditionalFormats, onChangeDataValidations = _a.onChangeDataValidations, enqueueGraphOperation = _a.enqueueGraphOperation, createHistory = _a.createHistory, generatedNames = _a.generatedNames;
|
|
11
12
|
return function (sheetId, newSheetIdDefinedByUser) {
|
|
@@ -38,8 +39,8 @@ export var duplicateSheet = function (_a) {
|
|
|
38
39
|
sourceChartSheetChartId = sheet.chartId;
|
|
39
40
|
copiedChartSheetChartId = (_c = idCreationStrategy === null || idCreationStrategy === void 0 ? void 0 : idCreationStrategy("chart")) !== null && _c !== void 0 ? _c : uuid();
|
|
40
41
|
}
|
|
41
|
-
/* Update the sheet title */
|
|
42
|
-
var newSheet = __assign(__assign(__assign({}, sheet), { sheetId: newSheetId, title: newTitle }), (copiedChartSheetChartId !== undefined
|
|
42
|
+
/* Update the sheet title; the copy's tab sits right after its source */
|
|
43
|
+
var newSheet = __assign(__assign(__assign({}, sheet), { sheetId: newSheetId, title: newTitle, index: sheetIndexAfter(draft, sheetId) }), (copiedChartSheetChartId !== undefined
|
|
43
44
|
? { chartId: copiedChartSheetChartId }
|
|
44
45
|
: {}));
|
|
45
46
|
draft.push(castDraft(newSheet));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"new-sheet.d.ts","sourceRoot":"","sources":["../../../interface/new-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAUjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"new-sheet.d.ts","sourceRoot":"","sources":["../../../interface/new-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAUjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAoB1E,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,0JAWjE,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,MACpB,YAAY,OAAO,CAAC,KAAK,CAAC,KAuFT,CAE1B,CAAC"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { __assign, __read
|
|
1
|
+
import { __assign, __read } from "tslib";
|
|
2
2
|
import { uniqueSheetTitle, uuid } from "@rowsncolumns/utils";
|
|
3
3
|
import { produceWithPatches } from "immer";
|
|
4
4
|
import { getGeneratedSheetName } from "../generated-names";
|
|
5
5
|
import { MAX_SHEET_TITLE_LENGTH, truncateSheetTitle, } from "../helpers/sheet-title";
|
|
6
|
+
import { sheetIndexAfter } from "./sheet-order";
|
|
6
7
|
var createNewSheetHelper = function (sheetId, title, rowCount, columnCount, hidden) {
|
|
7
8
|
if (rowCount === void 0) { rowCount = 1000; }
|
|
8
9
|
if (columnCount === void 0) { columnCount = 100; }
|
|
@@ -47,38 +48,13 @@ export var createNewSheet = function (_a) {
|
|
|
47
48
|
getGeneratedSheetName(draft.length + 1, generatedNames)), draft.map(function (s) { return s.title; }), MAX_SHEET_TITLE_LENGTH);
|
|
48
49
|
// Create the new sheet
|
|
49
50
|
var newSheet = createNewSheetHelper(newSheetId, finalTitle, (_d = sheetSpec === null || sheetSpec === void 0 ? void 0 : sheetSpec.rowCount) !== null && _d !== void 0 ? _d : maxRowCount, (_e = sheetSpec === null || sheetSpec === void 0 ? void 0 : sheetSpec.columnCount) !== null && _e !== void 0 ? _e : maxColumnCount, (_f = sheetSpec === null || sheetSpec === void 0 ? void 0 : sheetSpec.hidden) !== null && _f !== void 0 ? _f : false);
|
|
50
|
-
//
|
|
51
|
-
//
|
|
52
|
-
var
|
|
53
|
-
.map(function (s, arrayIndex) {
|
|
54
|
-
var _a;
|
|
55
|
-
return ({
|
|
56
|
-
sheet: s,
|
|
57
|
-
effectiveIndex: (_a = s.index) !== null && _a !== void 0 ? _a : arrayIndex,
|
|
58
|
-
arrayIndex: arrayIndex,
|
|
59
|
-
});
|
|
60
|
-
})
|
|
61
|
-
.sort(function (a, b) {
|
|
62
|
-
return a.effectiveIndex - b.effectiveIndex ||
|
|
63
|
-
a.arrayIndex - b.arrayIndex;
|
|
64
|
-
});
|
|
65
|
-
var activeOrderedIndex = orderedSheets.findIndex(function (entry) { return entry.sheet.sheetId === sheetId; });
|
|
66
|
-
var fallbackMaxIndex = orderedSheets.length > 0
|
|
67
|
-
? Math.max.apply(Math, __spreadArray([], __read(orderedSheets.map(function (entry) { return entry.effectiveIndex; })), false)) : -1;
|
|
68
|
-
var computedIndex = activeOrderedIndex === -1
|
|
69
|
-
? fallbackMaxIndex + 1
|
|
70
|
-
: (function () {
|
|
71
|
-
var _a, _b, _c;
|
|
72
|
-
var currentIndex = (_b = (_a = orderedSheets[activeOrderedIndex]) === null || _a === void 0 ? void 0 : _a.effectiveIndex) !== null && _b !== void 0 ? _b : fallbackMaxIndex;
|
|
73
|
-
var nextIndex = (_c = orderedSheets[activeOrderedIndex + 1]) === null || _c === void 0 ? void 0 : _c.effectiveIndex;
|
|
74
|
-
return nextIndex === undefined
|
|
75
|
-
? currentIndex + 1
|
|
76
|
-
: currentIndex + (nextIndex - currentIndex) / 2;
|
|
77
|
-
})();
|
|
51
|
+
// Visual insertion index (after the active sheet) without moving the
|
|
52
|
+
// existing array positions. This keeps ShareDB patches append-only.
|
|
53
|
+
var computedIndex = (_g = sheetSpec === null || sheetSpec === void 0 ? void 0 : sheetSpec.index) !== null && _g !== void 0 ? _g : sheetIndexAfter(draft, sheetId);
|
|
78
54
|
// Merge any additional spec properties
|
|
79
55
|
var sheet = __assign(__assign(__assign({}, newSheet), sheetSpec), {
|
|
80
56
|
// Ensure computed values override spec
|
|
81
|
-
sheetId: newSheetId, title: finalTitle, index:
|
|
57
|
+
sheetId: newSheetId, title: finalTitle, index: computedIndex });
|
|
82
58
|
// Always append physically to keep patches as add-only.
|
|
83
59
|
draft.push(sheet);
|
|
84
60
|
createdSheet = sheet;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Sheet } from "@rowsncolumns/spreadsheet";
|
|
2
|
+
import type { Draft } from "immer";
|
|
3
|
+
type OrderableSheet = Pick<Sheet, "sheetId" | "index" | "hidden" | "title">;
|
|
4
|
+
/**
|
|
5
|
+
* The `index` that places a new sheet right after `anchorSheetId` in tab order — halfway to the next
|
|
6
|
+
* tab, so no existing sheet has to change its `index` (a collab host's patches stay add-only). With
|
|
7
|
+
* no anchor the sheet goes last. When the anchor and its neighbour share an `index` there is no gap
|
|
8
|
+
* to split, so every sheet is renumbered first and the new sheet takes the slot after the anchor.
|
|
9
|
+
*/
|
|
10
|
+
export declare const sheetIndexAfter: <S extends OrderableSheet>(draft: Draft<S>[], anchorSheetId: number) => number;
|
|
11
|
+
/**
|
|
12
|
+
* Move `sheetId` from `currentPosition` to `newPosition` — both positions among the VISIBLE tabs, as
|
|
13
|
+
* the tab strip counts them — and renumber every sheet from the resulting order, hidden tabs keeping
|
|
14
|
+
* their slot. Indices are only ever read as an order here (a created or duplicated sheet carries a
|
|
15
|
+
* fractional one; a host may seed duplicates), so shifting neighbours by ±1 is not an option: the
|
|
16
|
+
* moved tab has to land where it was dropped with the others in their old relative order.
|
|
17
|
+
* Returns false when the move names a sheet or a position that does not exist.
|
|
18
|
+
*/
|
|
19
|
+
export declare const moveSheetInOrder: <S extends OrderableSheet>(draft: Draft<S>[], sheetId: number, currentPosition: number, newPosition: number) => boolean;
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=sheet-order.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sheet-order.d.ts","sourceRoot":"","sources":["../../../interface/sheet-order.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAEnC,KAAK,cAAc,GAAG,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAC;AA+B5E;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,cAAc,EACtD,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,EACjB,eAAe,MAAM,KACpB,MAyBF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,cAAc,EACvD,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,EACjB,SAAS,MAAM,EACf,iBAAiB,MAAM,EACvB,aAAa,MAAM,KAClB,OAmBF,CAAC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { __read, __spreadArray, __values } from "tslib";
|
|
2
|
+
import { sortSheetsByIndex } from "@rowsncolumns/utils";
|
|
3
|
+
/**
|
|
4
|
+
* Tab order the way the tab strip renders it — `sortSheetsByIndex` with hidden sheets kept, so a
|
|
5
|
+
* hidden tab keeps its slot between its neighbours.
|
|
6
|
+
*/
|
|
7
|
+
var tabOrder = function (sheets) {
|
|
8
|
+
return sortSheetsByIndex(sheets, true);
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Give every sheet the position it holds in `order` as its `index`, so the indices are contiguous
|
|
12
|
+
* integers again. `shiftFrom` leaves a gap: positions at or after it move up by one, for a sheet that
|
|
13
|
+
* is about to be inserted there.
|
|
14
|
+
*/
|
|
15
|
+
var renumber = function (draft, order, shiftFrom) {
|
|
16
|
+
var e_1, _a;
|
|
17
|
+
if (shiftFrom === void 0) { shiftFrom = Number.POSITIVE_INFINITY; }
|
|
18
|
+
var positionById = new Map();
|
|
19
|
+
order.forEach(function (sheetId, position) {
|
|
20
|
+
positionById.set(sheetId, position >= shiftFrom ? position + 1 : position);
|
|
21
|
+
});
|
|
22
|
+
try {
|
|
23
|
+
for (var draft_1 = __values(draft), draft_1_1 = draft_1.next(); !draft_1_1.done; draft_1_1 = draft_1.next()) {
|
|
24
|
+
var sheet = draft_1_1.value;
|
|
25
|
+
var position = positionById.get(sheet.sheetId);
|
|
26
|
+
if (position !== undefined && sheet.index !== position) {
|
|
27
|
+
sheet.index = position;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
32
|
+
finally {
|
|
33
|
+
try {
|
|
34
|
+
if (draft_1_1 && !draft_1_1.done && (_a = draft_1.return)) _a.call(draft_1);
|
|
35
|
+
}
|
|
36
|
+
finally { if (e_1) throw e_1.error; }
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* The `index` that places a new sheet right after `anchorSheetId` in tab order — halfway to the next
|
|
41
|
+
* tab, so no existing sheet has to change its `index` (a collab host's patches stay add-only). With
|
|
42
|
+
* no anchor the sheet goes last. When the anchor and its neighbour share an `index` there is no gap
|
|
43
|
+
* to split, so every sheet is renumbered first and the new sheet takes the slot after the anchor.
|
|
44
|
+
*/
|
|
45
|
+
export var sheetIndexAfter = function (draft, anchorSheetId) {
|
|
46
|
+
var ordered = tabOrder(draft);
|
|
47
|
+
if (ordered.length === 0) {
|
|
48
|
+
return 0;
|
|
49
|
+
}
|
|
50
|
+
var anchorPosition = ordered.findIndex(function (sheet) { return sheet.sheetId === anchorSheetId; });
|
|
51
|
+
if (anchorPosition === -1) {
|
|
52
|
+
return Math.max.apply(Math, __spreadArray([], __read(ordered.map(function (sheet) { return sheet.index; })), false)) + 1;
|
|
53
|
+
}
|
|
54
|
+
var anchorIndex = ordered[anchorPosition].index;
|
|
55
|
+
var next = ordered[anchorPosition + 1];
|
|
56
|
+
if (next === undefined) {
|
|
57
|
+
return anchorIndex + 1;
|
|
58
|
+
}
|
|
59
|
+
if (next.index > anchorIndex) {
|
|
60
|
+
return anchorIndex + (next.index - anchorIndex) / 2;
|
|
61
|
+
}
|
|
62
|
+
renumber(draft, ordered.map(function (sheet) { return sheet.sheetId; }), anchorPosition + 1);
|
|
63
|
+
return anchorPosition + 1;
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Move `sheetId` from `currentPosition` to `newPosition` — both positions among the VISIBLE tabs, as
|
|
67
|
+
* the tab strip counts them — and renumber every sheet from the resulting order, hidden tabs keeping
|
|
68
|
+
* their slot. Indices are only ever read as an order here (a created or duplicated sheet carries a
|
|
69
|
+
* fractional one; a host may seed duplicates), so shifting neighbours by ±1 is not an option: the
|
|
70
|
+
* moved tab has to land where it was dropped with the others in their old relative order.
|
|
71
|
+
* Returns false when the move names a sheet or a position that does not exist.
|
|
72
|
+
*/
|
|
73
|
+
export var moveSheetInOrder = function (draft, sheetId, currentPosition, newPosition) {
|
|
74
|
+
var target = sortSheetsByIndex(draft)[newPosition];
|
|
75
|
+
if (target === undefined || target.sheetId === sheetId) {
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
var order = tabOrder(draft).map(function (sheet) { return sheet.sheetId; });
|
|
79
|
+
var from = order.indexOf(sheetId);
|
|
80
|
+
if (from === -1) {
|
|
81
|
+
return false;
|
|
82
|
+
}
|
|
83
|
+
order.splice(from, 1);
|
|
84
|
+
var targetPosition = order.indexOf(target.sheetId);
|
|
85
|
+
order.splice(newPosition > currentPosition ? targetPosition + 1 : targetPosition, 0, sheetId);
|
|
86
|
+
renumber(draft, order);
|
|
87
|
+
return true;
|
|
88
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spreadsheet-interface.d.ts","sourceRoot":"","sources":["../../../interface/spreadsheet-interface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spreadsheet-interface.d.ts","sourceRoot":"","sources":["../../../interface/spreadsheet-interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import { __assign, __awaiter, __generator, __read, __spreadArray, __values } fro
|
|
|
2
2
|
import { tokenize as defaultTokenizer } from "@rowsncolumns/calculator";
|
|
3
3
|
import { isCellCoordinate, isCellNode, isCellRangeNode, isStaticNode, } from "@rowsncolumns/dag";
|
|
4
4
|
import { FormulaError } from "@rowsncolumns/fast-formula-parser";
|
|
5
|
+
import { getFontLineMetrics, toCanvasFont, } from "@rowsncolumns/grid";
|
|
5
6
|
import { defaultSpreadsheetTheme, getBandedCells, } from "@rowsncolumns/spreadsheet";
|
|
6
7
|
import { addressToCell, canUseDOM, cellToAddress, DEFAULT_ACTIVE_CELL, DEFAULT_COLUMN_COUNT, DEFAULT_COLUMN_WIDTH, DEFAULT_ROW_COUNT, DEFAULT_ROW_HEIGHT, generateSelectionsFromFormula, getCellEffectiveFormat, getCellEffectiveValue, getCellFormattedValue, getCellUserEnteredFormat, cellFormatWrapsText, getCellUserEnteredValue, getColumnIndexFromColumnName, getExtendedValueBool, getExtendedValueError, getExtendedValueFormula, getExtendedValueNumber, getExtendedValueString, isAreasEqual, isCellWithinBounds, isNil, iterateCellsInRange, pointToPixel, } from "@rowsncolumns/utils";
|
|
7
8
|
import { enableMapSet, enablePatches, produceWithPatches } from "immer";
|
|
@@ -105,15 +106,27 @@ var BackendAutoSizer = /** @class */ (function () {
|
|
|
105
106
|
function BackendAutoSizer() {
|
|
106
107
|
this.canvas = createCanvas(0, 0);
|
|
107
108
|
this.ctx = this.canvas.getContext("2d");
|
|
108
|
-
this.
|
|
109
|
+
this.currentFont = { fontFamily: "Arial", fontSize: 12 };
|
|
110
|
+
this.currentScale = 1;
|
|
109
111
|
}
|
|
110
112
|
BackendAutoSizer.prototype.setFont = function (_a) {
|
|
111
113
|
var _b = _a.fontFamily, fontFamily = _b === void 0 ? "Arial" : _b, _c = _a.fontSize, fontSize = _c === void 0 ? 12 : _c, _d = _a.fontWeight, fontWeight = _d === void 0 ? "" : _d, _e = _a.fontStyle, fontStyle = _e === void 0 ? "" : _e, _f = _a.scale, scale = _f === void 0 ? 1 : _f;
|
|
112
|
-
this.
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
114
|
+
this.currentScale = scale;
|
|
115
|
+
this.currentFont = {
|
|
116
|
+
fontFamily: fontFamily,
|
|
117
|
+
fontSize: fontSize * scale,
|
|
118
|
+
fontWeight: fontWeight,
|
|
119
|
+
fontStyle: fontStyle,
|
|
120
|
+
};
|
|
121
|
+
this.ctx.font = toCanvasFont(this.currentFont);
|
|
122
|
+
};
|
|
123
|
+
/**
|
|
124
|
+
* One line's box and the leading between lines for the current font —
|
|
125
|
+
* the painter's numbers (#1141). node-canvas reports no
|
|
126
|
+
* `fontBoundingBox*`, so off the DOM this is the `fontSize * 1.2` box.
|
|
127
|
+
*/
|
|
128
|
+
BackendAutoSizer.prototype.lineMetrics = function () {
|
|
129
|
+
return getFontLineMetrics(this.currentFont, "fontMetrics", this.currentScale, this.ctx);
|
|
117
130
|
};
|
|
118
131
|
BackendAutoSizer.prototype.reset = function () {
|
|
119
132
|
this.setFont({});
|
|
@@ -124,12 +137,12 @@ var BackendAutoSizer = /** @class */ (function () {
|
|
|
124
137
|
if (!text)
|
|
125
138
|
return null;
|
|
126
139
|
var metrics = this.ctx.measureText(text);
|
|
140
|
+
var _b = this.lineMetrics(), box = _b.box, leading = _b.leading;
|
|
127
141
|
var width = metrics.width;
|
|
128
|
-
var
|
|
142
|
+
var lines = 1;
|
|
129
143
|
if (shouldWrap && maxWidth && width > maxWidth) {
|
|
130
144
|
// Simple word wrapping calculation
|
|
131
145
|
var words = text.split(" ");
|
|
132
|
-
var lines = 1;
|
|
133
146
|
var currentLineWidth = 0;
|
|
134
147
|
try {
|
|
135
148
|
for (var words_1 = __values(words), words_1_1 = words_1.next(); !words_1_1.done; words_1_1 = words_1.next()) {
|
|
@@ -151,10 +164,9 @@ var BackendAutoSizer = /** @class */ (function () {
|
|
|
151
164
|
}
|
|
152
165
|
finally { if (e_1) throw e_1.error; }
|
|
153
166
|
}
|
|
154
|
-
height = this.currentFontSize * 1.2 * lines;
|
|
155
167
|
width = maxWidth;
|
|
156
168
|
}
|
|
157
|
-
return { width: width, height:
|
|
169
|
+
return { width: width, height: lines * box + (lines - 1) * leading };
|
|
158
170
|
};
|
|
159
171
|
return BackendAutoSizer;
|
|
160
172
|
}());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../../cellxfs-registry.ts","../../commands.ts","../../constants.ts","../../generated-names.ts","../../helpers.ts","../../index.ts","../../server-utils.ts","../../server.browser.ts","../../server.ts","../../shared-string-registry.ts","../../sheet-cell.ts","../../test-setup.ts","../../types.ts","../../vitest.config.ts","../../api/advanced-filter.ts","../../api/anchored-objects.ts","../../api/basic-filter.ts","../../api/border.ts","../../api/circular-reference.ts","../../api/conditional-format.ts","../../api/copy-paste.ts","../../api/data-validation.ts","../../api/datatype.ts","../../api/date.ts","../../api/decimals.ts","../../api/dependency.ts","../../api/fill-series-spec.ts","../../api/fill.ts","../../api/filter-condition.ts","../../api/filter-range.ts","../../api/filter.ts","../../api/format-caches.ts","../../api/formula.ts","../../api/goal-seek.ts","../../api/image-embed.ts","../../api/immer-utils.ts","../../api/insert-cut-cells.ts","../../api/intl.ts","../../api/merges.ts","../../api/named-range-structural.ts","../../api/outline.ts","../../api/paint-format.ts","../../api/parse-html.ts","../../api/paste-special.ts","../../api/patches.ts","../../api/pivot-range.ts","../../api/range-rule-helpers.ts","../../api/range.ts","../../api/rename-sheet.ts","../../api/selection.ts","../../api/sort.ts","../../api/split-text.ts","../../api/structural-formula-update.ts","../../api/structural-guards.ts","../../api/structural-table-refs.ts","../../api/subtotal.ts","../../api/table.ts","../../api/validation.ts","../../api/xlsx-source.ts","../../atoms/creating-table.atom.ts","../../atoms/delete-sheet-atom.ts","../../atoms/dialog-state.atom.ts","../../atoms/editing-data-validation-id.atom.ts","../../atoms/editing-embed.atom.ts","../../atoms/editing-slicer.atom.ts","../../atoms/editing-table.atom.ts","../../atoms/error-state.atom.ts","../../atoms/index.ts","../../atoms/insert-image-state.atom.ts","../../atoms/inserting-slicer.atom.ts","../../atoms/named-range.atom.ts","../../atoms/resize-dimension.atom.ts","../../atoms/resizing-table.atom.ts","../../atoms/sheet-observer.atom.ts","../../components/index.tsx","../../components/dialogs/delete-sheet-confirmation.tsx","../../components/dialogs/error-state.tsx","../../components/editors/cell-format-editor.tsx","../../components/editors/conditional-format-editor.tsx","../../components/editors/conditional-format-rule-editor.tsx","../../components/editors/data-validation-editor.tsx","../../components/editors/data-validation-rule-editor.tsx","../../components/editors/embed-editor.tsx","../../components/editors/insert-image-editor.tsx","../../components/editors/insert-link-editor.tsx","../../components/editors/named-range-editor.tsx","../../components/editors/resize-dimension-editor.tsx","../../components/editors/sheet-filter.tsx","../../components/editors/slicer-editor.tsx","../../components/editors/table-editor.tsx","../../helpers/default-cell-format.ts","../../helpers/iterative-calculation.ts","../../helpers/sheet-title.ts","../../hooks/use-async-datasource.ts","../../hooks/use-calculation-initialize.ts","../../hooks/use-calculation-process-array.ts","../../hooks/use-calculation-queue.ts","../../hooks/use-calculation-worker.ts","../../hooks/use-calculation.ts","../../hooks/use-can-edit-cellrange.ts","../../hooks/use-cellxfs-registry.ts","../../hooks/use-citations.ts","../../hooks/use-comments.ts","../../hooks/use-conditional-formatting-rules.ts","../../hooks/use-data-validation-rules.ts","../../hooks/use-deferred-calculation-flush.ts","../../hooks/use-idle-scheduler.ts","../../hooks/use-indent.ts","../../hooks/use-named-range.ts","../../hooks/use-on-adjust-row-height.ts","../../hooks/use-on-advanced-filter.ts","../../hooks/use-on-autoresize.ts","../../hooks/use-on-banded-ranges.ts","../../hooks/use-on-calculation-begin.ts","../../hooks/use-on-calculation-success.ts","../../hooks/use-on-change-batch-stream.ts","../../hooks/use-on-change-batch.ts","../../hooks/use-on-change-calculated-column.ts","../../hooks/use-on-change-decimals.ts","../../hooks/use-on-change-formatting.ts","../../hooks/use-on-change-sheet-tabcolor.ts","../../hooks/use-on-change-table-column.ts","../../hooks/use-on-change-theme.ts","../../hooks/use-on-change.ts","../../hooks/use-on-clear-formatting.ts","../../hooks/use-on-collapse-column-group.ts","../../hooks/use-on-collapse-row-group.ts","../../hooks/use-on-copy.ts","../../hooks/use-on-create-custom-table-style.ts","../../hooks/use-on-create-named-range.ts","../../hooks/use-on-create-sheet.ts","../../hooks/use-on-delete-cells-shift-left.ts","../../hooks/use-on-delete-cells-shift-up.ts","../../hooks/use-on-delete-column.ts","../../hooks/use-on-delete-named-range.ts","../../hooks/use-on-delete-row.ts","../../hooks/use-on-delete-sheet.ts","../../hooks/use-on-delete-table-row.ts","../../hooks/use-on-delete.ts","../../hooks/use-on-drag-n-drop.ts","../../hooks/use-on-duplicate-sheet.ts","../../hooks/use-on-embeds.ts","../../hooks/use-on-expand-column-group.ts","../../hooks/use-on-expand-row-group.ts","../../hooks/use-on-fill-range.ts","../../hooks/use-on-fill.ts","../../hooks/use-on-filter-table.ts","../../hooks/use-on-find-replace.ts","../../hooks/use-on-freeze.ts","../../hooks/use-on-goal-seek.ts","../../hooks/use-on-group-columns.ts","../../hooks/use-on-group-rows.ts","../../hooks/use-on-hide-column.ts","../../hooks/use-on-hide-row.ts","../../hooks/use-on-hide-show-sheet.ts","../../hooks/use-on-import-csv-legacy.ts","../../hooks/use-on-import-csv.ts","../../hooks/use-on-import-excel.ts","../../hooks/use-on-insert-autosum.ts","../../hooks/use-on-insert-cells-shift-down.ts","../../hooks/use-on-insert-cells-shift-right.ts","../../hooks/use-on-insert-checkbox.ts","../../hooks/use-on-insert-column.ts","../../hooks/use-on-insert-date-time.ts","../../hooks/use-on-insert-date.ts","../../hooks/use-on-insert-image.ts","../../hooks/use-on-insert-link.ts","../../hooks/use-on-insert-note.ts","../../hooks/use-on-insert-row.ts","../../hooks/use-on-insert-table-row.ts","../../hooks/use-on-insert-time.ts","../../hooks/use-on-locale-change.ts","../../hooks/use-on-merge-unmerge-cells.ts","../../hooks/use-on-move-columns.ts","../../hooks/use-on-move-rows.ts","../../hooks/use-on-move-selection.ts","../../hooks/use-on-move-sheet.ts","../../hooks/use-on-move-table-columns.ts","../../hooks/use-on-paste.ts","../../hooks/use-on-protect-range.ts","../../hooks/use-on-protect-sheet.ts","../../hooks/use-on-remove-duplicates.ts","../../hooks/use-on-rename-sheet.ts","../../hooks/use-on-request-calculate-wrapper.ts","../../hooks/use-on-request-conditional-format.ts","../../hooks/use-on-request-create-table.ts","../../hooks/use-on-request-data-validation.ts","../../hooks/use-on-request-define-named-range.ts","../../hooks/use-on-request-delete-sheet.ts","../../hooks/use-on-request-edit-table.ts","../../hooks/use-on-request-format-cells.ts","../../hooks/use-on-request-insert-image.ts","../../hooks/use-on-request-insert-link.ts","../../hooks/use-on-request-insert-slicer.ts","../../hooks/use-on-request-resize-table.ts","../../hooks/use-on-request-resize.ts","../../hooks/use-on-request-update-named-range.ts","../../hooks/use-on-resize-table.ts","../../hooks/use-on-resize.ts","../../hooks/use-on-set-outline-depth.ts","../../hooks/use-on-show-column.ts","../../hooks/use-on-show-row.ts","../../hooks/use-on-sort-column.ts","../../hooks/use-on-sort-range.ts","../../hooks/use-on-sort-table.ts","../../hooks/use-on-subtotal.ts","../../hooks/use-on-table.ts","../../hooks/use-on-trace-dependents-precedents.tsx","../../hooks/use-on-undo-calculated-column.ts","../../hooks/use-on-undo-table-auto-expansion.ts","../../hooks/use-on-ungroup-columns.ts","../../hooks/use-on-ungroup-rows.ts","../../hooks/use-on-update-named-range.ts","../../hooks/use-on-update-note.ts","../../hooks/use-on-update-sheet.ts","../../hooks/use-paint-format.ts","../../hooks/use-search.ts","../../hooks/use-select-next-prev-sheet.ts","../../hooks/use-sheet-observer.ts","../../hooks/use-sheet-properties.ts","../../hooks/use-sheet-state.ts","../../hooks/use-sheetdata-subscriber.ts","../../hooks/use-slicers.ts","../../hooks/use-sparkline-groups.ts","../../hooks/use-split-text-to-columns.ts","../../hooks/use-spreadsheet-state.ts","../../hooks/use-ss-registry.ts","../../hooks/use-structured-reference.ts","../../hooks/use-undo-redo-actions.ts","../../hooks/use-undo-redo.ts","../../hooks/utils/frozen-sort.ts","../../hooks/utils/sort-rows.ts","../../interface/apply-fill.ts","../../interface/auto-resize.ts","../../interface/calculation-interface.ts","../../interface/change-batch-stream.ts","../../interface/change-batch.ts","../../interface/change-border.ts","../../interface/change-calculated-column.ts","../../interface/change-decimals.ts","../../interface/change-formatting.ts","../../interface/change-sheet-tabcolor.ts","../../interface/change-table-column.ts","../../interface/change-theme.ts","../../interface/chart-extensions.ts","../../interface/citations.ts","../../interface/clear-formatting.ts","../../interface/conditional-formatting-rules.ts","../../interface/create-table.ts","../../interface/data-validation-rules.ts","../../interface/data-validation-utils.ts","../../interface/delete-cells-shift-left.ts","../../interface/delete-cells-shift-up.ts","../../interface/delete-cells.ts","../../interface/delete-column.ts","../../interface/delete-row.ts","../../interface/delete-sheet.ts","../../interface/delete-table-column.ts","../../interface/delete-table-row.ts","../../interface/duplicate-sheet.ts","../../interface/embeds.ts","../../interface/freeze.ts","../../interface/helpers.ts","../../interface/hide-column.ts","../../interface/hide-row.ts","../../interface/indent.ts","../../interface/insert-cells-shift-down.ts","../../interface/insert-cells-shift-right.ts","../../interface/insert-column.ts","../../interface/insert-note.ts","../../interface/insert-row.ts","../../interface/insert-table-row.ts","../../interface/interface-cli.ts","../../interface/named-range-operations.ts","../../interface/new-sheet.ts","../../interface/pivot-extensions.ts","../../interface/remove-duplicates.ts","../../interface/remove-table.ts","../../interface/resize-utils.ts","../../interface/resize.ts","../../interface/slicers.ts","../../interface/split-text.ts","../../interface/spreadsheet-interface.ts","../../interface/table-totalrow.ts","../../interface/table-utils.ts","../../interface/update-sheet.ts","../../interface/update-table.ts","../../validation-schema/table.schema.ts"],"version":"5.8.3"}
|
|
1
|
+
{"root":["../../cellxfs-registry.ts","../../commands.ts","../../constants.ts","../../generated-names.ts","../../helpers.ts","../../index.ts","../../server-utils.ts","../../server.browser.ts","../../server.ts","../../shared-string-registry.ts","../../sheet-cell.ts","../../test-setup.ts","../../types.ts","../../vitest.config.ts","../../api/advanced-filter.ts","../../api/anchored-objects.ts","../../api/basic-filter.ts","../../api/border.ts","../../api/circular-reference.ts","../../api/conditional-format.ts","../../api/copy-paste.ts","../../api/data-validation.ts","../../api/datatype.ts","../../api/date.ts","../../api/decimals.ts","../../api/dependency.ts","../../api/fill-series-spec.ts","../../api/fill.ts","../../api/filter-condition.ts","../../api/filter-range.ts","../../api/filter.ts","../../api/format-caches.ts","../../api/formula.ts","../../api/goal-seek.ts","../../api/image-embed.ts","../../api/immer-utils.ts","../../api/insert-cut-cells.ts","../../api/intl.ts","../../api/merges.ts","../../api/named-range-structural.ts","../../api/outline.ts","../../api/paint-format.ts","../../api/parse-html.ts","../../api/paste-special.ts","../../api/patches.ts","../../api/pivot-range.ts","../../api/range-rule-helpers.ts","../../api/range.ts","../../api/rename-sheet.ts","../../api/selection.ts","../../api/sort.ts","../../api/split-text.ts","../../api/structural-formula-update.ts","../../api/structural-guards.ts","../../api/structural-table-refs.ts","../../api/subtotal.ts","../../api/table.ts","../../api/validation.ts","../../api/xlsx-source.ts","../../atoms/creating-table.atom.ts","../../atoms/delete-sheet-atom.ts","../../atoms/dialog-state.atom.ts","../../atoms/editing-data-validation-id.atom.ts","../../atoms/editing-embed.atom.ts","../../atoms/editing-slicer.atom.ts","../../atoms/editing-table.atom.ts","../../atoms/error-state.atom.ts","../../atoms/index.ts","../../atoms/insert-image-state.atom.ts","../../atoms/inserting-slicer.atom.ts","../../atoms/named-range.atom.ts","../../atoms/resize-dimension.atom.ts","../../atoms/resizing-table.atom.ts","../../atoms/sheet-observer.atom.ts","../../components/index.tsx","../../components/dialogs/delete-sheet-confirmation.tsx","../../components/dialogs/error-state.tsx","../../components/editors/cell-format-editor.tsx","../../components/editors/conditional-format-editor.tsx","../../components/editors/conditional-format-rule-editor.tsx","../../components/editors/data-validation-editor.tsx","../../components/editors/data-validation-rule-editor.tsx","../../components/editors/embed-editor.tsx","../../components/editors/insert-image-editor.tsx","../../components/editors/insert-link-editor.tsx","../../components/editors/named-range-editor.tsx","../../components/editors/resize-dimension-editor.tsx","../../components/editors/sheet-filter.tsx","../../components/editors/slicer-editor.tsx","../../components/editors/table-editor.tsx","../../helpers/default-cell-format.ts","../../helpers/iterative-calculation.ts","../../helpers/sheet-title.ts","../../hooks/use-async-datasource.ts","../../hooks/use-calculation-initialize.ts","../../hooks/use-calculation-process-array.ts","../../hooks/use-calculation-queue.ts","../../hooks/use-calculation-worker.ts","../../hooks/use-calculation.ts","../../hooks/use-can-edit-cellrange.ts","../../hooks/use-cellxfs-registry.ts","../../hooks/use-citations.ts","../../hooks/use-comments.ts","../../hooks/use-conditional-formatting-rules.ts","../../hooks/use-data-validation-rules.ts","../../hooks/use-deferred-calculation-flush.ts","../../hooks/use-idle-scheduler.ts","../../hooks/use-indent.ts","../../hooks/use-named-range.ts","../../hooks/use-on-adjust-row-height.ts","../../hooks/use-on-advanced-filter.ts","../../hooks/use-on-autoresize.ts","../../hooks/use-on-banded-ranges.ts","../../hooks/use-on-calculation-begin.ts","../../hooks/use-on-calculation-success.ts","../../hooks/use-on-change-batch-stream.ts","../../hooks/use-on-change-batch.ts","../../hooks/use-on-change-calculated-column.ts","../../hooks/use-on-change-decimals.ts","../../hooks/use-on-change-formatting.ts","../../hooks/use-on-change-sheet-tabcolor.ts","../../hooks/use-on-change-table-column.ts","../../hooks/use-on-change-theme.ts","../../hooks/use-on-change.ts","../../hooks/use-on-clear-formatting.ts","../../hooks/use-on-collapse-column-group.ts","../../hooks/use-on-collapse-row-group.ts","../../hooks/use-on-copy.ts","../../hooks/use-on-create-custom-table-style.ts","../../hooks/use-on-create-named-range.ts","../../hooks/use-on-create-sheet.ts","../../hooks/use-on-delete-cells-shift-left.ts","../../hooks/use-on-delete-cells-shift-up.ts","../../hooks/use-on-delete-column.ts","../../hooks/use-on-delete-named-range.ts","../../hooks/use-on-delete-row.ts","../../hooks/use-on-delete-sheet.ts","../../hooks/use-on-delete-table-row.ts","../../hooks/use-on-delete.ts","../../hooks/use-on-drag-n-drop.ts","../../hooks/use-on-duplicate-sheet.ts","../../hooks/use-on-embeds.ts","../../hooks/use-on-expand-column-group.ts","../../hooks/use-on-expand-row-group.ts","../../hooks/use-on-fill-range.ts","../../hooks/use-on-fill.ts","../../hooks/use-on-filter-table.ts","../../hooks/use-on-find-replace.ts","../../hooks/use-on-freeze.ts","../../hooks/use-on-goal-seek.ts","../../hooks/use-on-group-columns.ts","../../hooks/use-on-group-rows.ts","../../hooks/use-on-hide-column.ts","../../hooks/use-on-hide-row.ts","../../hooks/use-on-hide-show-sheet.ts","../../hooks/use-on-import-csv-legacy.ts","../../hooks/use-on-import-csv.ts","../../hooks/use-on-import-excel.ts","../../hooks/use-on-insert-autosum.ts","../../hooks/use-on-insert-cells-shift-down.ts","../../hooks/use-on-insert-cells-shift-right.ts","../../hooks/use-on-insert-checkbox.ts","../../hooks/use-on-insert-column.ts","../../hooks/use-on-insert-date-time.ts","../../hooks/use-on-insert-date.ts","../../hooks/use-on-insert-image.ts","../../hooks/use-on-insert-link.ts","../../hooks/use-on-insert-note.ts","../../hooks/use-on-insert-row.ts","../../hooks/use-on-insert-table-row.ts","../../hooks/use-on-insert-time.ts","../../hooks/use-on-locale-change.ts","../../hooks/use-on-merge-unmerge-cells.ts","../../hooks/use-on-move-columns.ts","../../hooks/use-on-move-rows.ts","../../hooks/use-on-move-selection.ts","../../hooks/use-on-move-sheet.ts","../../hooks/use-on-move-table-columns.ts","../../hooks/use-on-paste.ts","../../hooks/use-on-protect-range.ts","../../hooks/use-on-protect-sheet.ts","../../hooks/use-on-remove-duplicates.ts","../../hooks/use-on-rename-sheet.ts","../../hooks/use-on-request-calculate-wrapper.ts","../../hooks/use-on-request-conditional-format.ts","../../hooks/use-on-request-create-table.ts","../../hooks/use-on-request-data-validation.ts","../../hooks/use-on-request-define-named-range.ts","../../hooks/use-on-request-delete-sheet.ts","../../hooks/use-on-request-edit-table.ts","../../hooks/use-on-request-format-cells.ts","../../hooks/use-on-request-insert-image.ts","../../hooks/use-on-request-insert-link.ts","../../hooks/use-on-request-insert-slicer.ts","../../hooks/use-on-request-resize-table.ts","../../hooks/use-on-request-resize.ts","../../hooks/use-on-request-update-named-range.ts","../../hooks/use-on-resize-table.ts","../../hooks/use-on-resize.ts","../../hooks/use-on-set-outline-depth.ts","../../hooks/use-on-show-column.ts","../../hooks/use-on-show-row.ts","../../hooks/use-on-sort-column.ts","../../hooks/use-on-sort-range.ts","../../hooks/use-on-sort-table.ts","../../hooks/use-on-subtotal.ts","../../hooks/use-on-table.ts","../../hooks/use-on-trace-dependents-precedents.tsx","../../hooks/use-on-undo-calculated-column.ts","../../hooks/use-on-undo-table-auto-expansion.ts","../../hooks/use-on-ungroup-columns.ts","../../hooks/use-on-ungroup-rows.ts","../../hooks/use-on-update-named-range.ts","../../hooks/use-on-update-note.ts","../../hooks/use-on-update-sheet.ts","../../hooks/use-paint-format.ts","../../hooks/use-search.ts","../../hooks/use-select-next-prev-sheet.ts","../../hooks/use-sheet-observer.ts","../../hooks/use-sheet-properties.ts","../../hooks/use-sheet-state.ts","../../hooks/use-sheetdata-subscriber.ts","../../hooks/use-slicers.ts","../../hooks/use-sparkline-groups.ts","../../hooks/use-split-text-to-columns.ts","../../hooks/use-spreadsheet-state.ts","../../hooks/use-ss-registry.ts","../../hooks/use-structured-reference.ts","../../hooks/use-undo-redo-actions.ts","../../hooks/use-undo-redo.ts","../../hooks/utils/frozen-sort.ts","../../hooks/utils/sort-rows.ts","../../interface/apply-fill.ts","../../interface/auto-resize.ts","../../interface/calculation-interface.ts","../../interface/change-batch-stream.ts","../../interface/change-batch.ts","../../interface/change-border.ts","../../interface/change-calculated-column.ts","../../interface/change-decimals.ts","../../interface/change-formatting.ts","../../interface/change-sheet-tabcolor.ts","../../interface/change-table-column.ts","../../interface/change-theme.ts","../../interface/chart-extensions.ts","../../interface/citations.ts","../../interface/clear-formatting.ts","../../interface/conditional-formatting-rules.ts","../../interface/create-table.ts","../../interface/data-validation-rules.ts","../../interface/data-validation-utils.ts","../../interface/delete-cells-shift-left.ts","../../interface/delete-cells-shift-up.ts","../../interface/delete-cells.ts","../../interface/delete-column.ts","../../interface/delete-row.ts","../../interface/delete-sheet.ts","../../interface/delete-table-column.ts","../../interface/delete-table-row.ts","../../interface/duplicate-sheet.ts","../../interface/embeds.ts","../../interface/freeze.ts","../../interface/helpers.ts","../../interface/hide-column.ts","../../interface/hide-row.ts","../../interface/indent.ts","../../interface/insert-cells-shift-down.ts","../../interface/insert-cells-shift-right.ts","../../interface/insert-column.ts","../../interface/insert-note.ts","../../interface/insert-row.ts","../../interface/insert-table-row.ts","../../interface/interface-cli.ts","../../interface/named-range-operations.ts","../../interface/new-sheet.ts","../../interface/pivot-extensions.ts","../../interface/remove-duplicates.ts","../../interface/remove-table.ts","../../interface/resize-utils.ts","../../interface/resize.ts","../../interface/sheet-order.ts","../../interface/slicers.ts","../../interface/split-text.ts","../../interface/spreadsheet-interface.ts","../../interface/table-totalrow.ts","../../interface/table-utils.ts","../../interface/update-sheet.ts","../../interface/update-table.ts","../../validation-schema/table.schema.ts"],"version":"5.8.3"}
|
|
@@ -36,6 +36,11 @@ export type CreateImageEmbedOptions = {
|
|
|
36
36
|
* The ONE way a picture becomes a floating object over the cells — shared by the clipboard paste,
|
|
37
37
|
* the file drop, the Insert → Image dialog and the engine command handlers, so every entry point
|
|
38
38
|
* produces the same movable, resizable, aspect-locked embed anchored at the target cell.
|
|
39
|
+
*
|
|
40
|
+
* A picture is "Move but don't size with cells" (Excel's default for an inserted picture; a chart
|
|
41
|
+
* or shape defaults to "Move and size"). It keeps its pixel size whatever happens to the columns
|
|
42
|
+
* and rows under it — a collapsed group or a hidden column only shifts it — and a move never
|
|
43
|
+
* re-anchors its bottom-right corner to a cell (#1149).
|
|
39
44
|
*/
|
|
40
45
|
export declare const createImageEmbed: ({ sheetId, anchorCell, imageUrl, width, height, viewport, embedId, idCreationStrategy, }: CreateImageEmbedOptions) => EmbeddedObject;
|
|
41
46
|
//# sourceMappingURL=image-embed.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image-embed.d.ts","sourceRoot":"","sources":["../../../api/image-embed.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAE1E;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,MAAM,CAAC;AAErD,+FAA+F;AAC/F,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAErE,MAAM,MAAM,cAAc,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3E;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,OAAO,MAAM,EACb,QAAQ,MAAM,EACd,WAAW,aAAa,GAAG,IAAI,KAC9B,cAaF,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,iHAAiH;IACjH,UAAU,EAAE,aAAa,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,wFAAwF;IACxF,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,iHAAiH;IACjH,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,kBAAkB,CAAC,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;CAChE,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"image-embed.d.ts","sourceRoot":"","sources":["../../../api/image-embed.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAE1E;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,MAAM,CAAC;AAErD,+FAA+F;AAC/F,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAErE,MAAM,MAAM,cAAc,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3E;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,OAAO,MAAM,EACb,QAAQ,MAAM,EACd,WAAW,aAAa,GAAG,IAAI,KAC9B,cAaF,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,iHAAiH;IACjH,UAAU,EAAE,aAAa,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,wFAAwF;IACxF,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,iHAAiH;IACjH,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,kBAAkB,CAAC,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;CAChE,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,GAAI,0FAS9B,uBAAuB,KAAG,cA0B5B,CAAC"}
|
|
@@ -27,6 +27,11 @@ export const fitImageToViewport = (width, height, viewport) => {
|
|
|
27
27
|
* The ONE way a picture becomes a floating object over the cells — shared by the clipboard paste,
|
|
28
28
|
* the file drop, the Insert → Image dialog and the engine command handlers, so every entry point
|
|
29
29
|
* produces the same movable, resizable, aspect-locked embed anchored at the target cell.
|
|
30
|
+
*
|
|
31
|
+
* A picture is "Move but don't size with cells" (Excel's default for an inserted picture; a chart
|
|
32
|
+
* or shape defaults to "Move and size"). It keeps its pixel size whatever happens to the columns
|
|
33
|
+
* and rows under it — a collapsed group or a hidden column only shifts it — and a move never
|
|
34
|
+
* re-anchors its bottom-right corner to a cell (#1149).
|
|
30
35
|
*/
|
|
31
36
|
export const createImageEmbed = ({ sheetId, anchorCell, imageUrl, width, height, viewport, embedId, idCreationStrategy, }) => {
|
|
32
37
|
const { widthPixels, heightPixels } = fitImageToViewport(width, height, viewport);
|
|
@@ -40,6 +45,7 @@ export const createImageEmbed = ({ sheetId, anchorCell, imageUrl, width, height,
|
|
|
40
45
|
heightPixels,
|
|
41
46
|
offsetXPixels: 0,
|
|
42
47
|
offsetYPixels: 0,
|
|
48
|
+
placement: "moveOnly",
|
|
43
49
|
},
|
|
44
50
|
},
|
|
45
51
|
borderColor: "transparent",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-on-move-sheet.d.ts","sourceRoot":"","sources":["../../../hooks/use-on-move-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,KAAK,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"use-on-move-sheet.d.ts","sourceRoot":"","sources":["../../../hooks/use-on-move-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAItE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD,KAAK,mBAAmB,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,IAAI;IAC9D,cAAc,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC5D,aAAa,IAAI,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACrD,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,+CAIjE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,eAId,MAAM,mBAAmB,MAAM,eAAe,MAAM,SAuDjE,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { sortSheetsByIndex } from "@rowsncolumns/utils";
|
|
2
1
|
import { produceWithPatches } from "immer";
|
|
3
2
|
import { useCallback } from "react";
|
|
3
|
+
import { moveSheetInOrder } from "../interface/sheet-order";
|
|
4
4
|
import { useCanEditSheet, useCanEditWorkbook } from "./use-can-edit-cellrange";
|
|
5
5
|
export const useOnMoveSheet = ({ onChangeSheets, createHistory, onCommand, }) => {
|
|
6
6
|
const canEditSheet = useCanEditSheet();
|
|
@@ -19,42 +19,23 @@ export const useOnMoveSheet = ({ onChangeSheets, createHistory, onCommand, }) =>
|
|
|
19
19
|
return;
|
|
20
20
|
}
|
|
21
21
|
const saveHistory = createHistory();
|
|
22
|
+
let moved = false;
|
|
22
23
|
onChangeSheets((prevSheets) => {
|
|
23
24
|
const [nextState, patches, inversePatches] = produceWithPatches(prevSheets, (draft) => {
|
|
24
|
-
|
|
25
|
-
const sheetToMove = sortedSheets[currentPosition];
|
|
26
|
-
const oldIndex = sheetToMove.index;
|
|
27
|
-
const newIndex = sortedSheets[newPosition].index;
|
|
28
|
-
// Determine the direction of movement
|
|
29
|
-
const isMovingDown = newPosition > currentPosition;
|
|
30
|
-
// Update indices of affected sheets
|
|
31
|
-
draft.forEach((sheet, arrayIndex) => {
|
|
32
|
-
const currentIndex = sheet.index ?? arrayIndex;
|
|
33
|
-
if (sheet.sheetId === sheetId) {
|
|
34
|
-
sheet.index = newIndex;
|
|
35
|
-
}
|
|
36
|
-
else if (!isMovingDown &&
|
|
37
|
-
currentIndex < oldIndex &&
|
|
38
|
-
currentIndex >= newIndex) {
|
|
39
|
-
sheet.index = currentIndex + 1;
|
|
40
|
-
}
|
|
41
|
-
else if (isMovingDown &&
|
|
42
|
-
currentIndex > oldIndex &&
|
|
43
|
-
currentIndex <= newIndex) {
|
|
44
|
-
sheet.index = currentIndex - 1;
|
|
45
|
-
}
|
|
46
|
-
else if (sheet.index === undefined) {
|
|
47
|
-
// Set index for sheets that didn't have one before
|
|
48
|
-
sheet.index = arrayIndex;
|
|
49
|
-
}
|
|
50
|
-
});
|
|
25
|
+
moved = moveSheetInOrder(draft, sheetId, currentPosition, newPosition);
|
|
51
26
|
});
|
|
27
|
+
if (!moved) {
|
|
28
|
+
return prevSheets;
|
|
29
|
+
}
|
|
52
30
|
// Save history
|
|
53
31
|
saveHistory({
|
|
54
32
|
sheets: { patches, inversePatches },
|
|
55
33
|
});
|
|
56
34
|
return nextState;
|
|
57
35
|
});
|
|
36
|
+
if (!moved) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
58
39
|
onCommand?.({
|
|
59
40
|
command: "move-sheet",
|
|
60
41
|
sheetId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duplicate-sheet.d.ts","sourceRoot":"","sources":["../../../interface/duplicate-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAc,MAAM,2BAA2B,CAAC;AAe7E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"duplicate-sheet.d.ts","sourceRoot":"","sources":["../../../interface/duplicate-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAc,MAAM,2BAA2B,CAAC;AAe7E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAIhF,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,sPAejE,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,MACvB,SAAS,MAAM,EAAE,0BAA0B,MAAM,uBAmT1D,CAAC"}
|
|
@@ -5,6 +5,7 @@ import { renameTablesInFormula } from "../api/formula";
|
|
|
5
5
|
import { createSheetDraft } from "../api/immer-utils";
|
|
6
6
|
import { getGeneratedSheetCopyName } from "../generated-names";
|
|
7
7
|
import { SheetCell } from "../sheet-cell";
|
|
8
|
+
import { sheetIndexAfter } from "./sheet-order";
|
|
8
9
|
export const duplicateSheet = ({ locale, maxSheetCount, sheets, idCreationStrategy, onChangeSheetData, onChangeSheets, onChangeTables, onChangeCharts, onChangeEmbeds, onChangeConditionalFormats, onChangeDataValidations, enqueueGraphOperation, createHistory, generatedNames, }) => {
|
|
9
10
|
return (sheetId, newSheetIdDefinedByUser) => {
|
|
10
11
|
const saveHistory = createHistory();
|
|
@@ -35,11 +36,12 @@ export const duplicateSheet = ({ locale, maxSheetCount, sheets, idCreationStrate
|
|
|
35
36
|
sourceChartSheetChartId = sheet.chartId;
|
|
36
37
|
copiedChartSheetChartId = idCreationStrategy?.("chart") ?? uuid();
|
|
37
38
|
}
|
|
38
|
-
/* Update the sheet title */
|
|
39
|
+
/* Update the sheet title; the copy's tab sits right after its source */
|
|
39
40
|
const newSheet = {
|
|
40
41
|
...sheet,
|
|
41
42
|
sheetId: newSheetId,
|
|
42
43
|
title: newTitle,
|
|
44
|
+
index: sheetIndexAfter(draft, sheetId),
|
|
43
45
|
...(copiedChartSheetChartId !== undefined
|
|
44
46
|
? { chartId: copiedChartSheetChartId }
|
|
45
47
|
: {}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"new-sheet.d.ts","sourceRoot":"","sources":["../../../interface/new-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAUjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"new-sheet.d.ts","sourceRoot":"","sources":["../../../interface/new-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAUjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAoB1E,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,0JAWjE,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,MACpB,YAAY,OAAO,CAAC,KAAK,CAAC,KAuFT,CAE1B,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { uniqueSheetTitle, uuid } from "@rowsncolumns/utils";
|
|
|
2
2
|
import { produceWithPatches } from "immer";
|
|
3
3
|
import { getGeneratedSheetName } from "../generated-names";
|
|
4
4
|
import { MAX_SHEET_TITLE_LENGTH, truncateSheetTitle, } from "../helpers/sheet-title";
|
|
5
|
+
import { sheetIndexAfter } from "./sheet-order";
|
|
5
6
|
const createNewSheetHelper = (sheetId, title, rowCount = 1000, columnCount = 100, hidden = false) => ({
|
|
6
7
|
title,
|
|
7
8
|
sheetId,
|
|
@@ -39,30 +40,9 @@ export const createNewSheet = ({ sheetId, maxSheetCount, sheets, maxRowCount, ma
|
|
|
39
40
|
getGeneratedSheetName(draft.length + 1, generatedNames)), draft.map((s) => s.title), MAX_SHEET_TITLE_LENGTH);
|
|
40
41
|
// Create the new sheet
|
|
41
42
|
const newSheet = createNewSheetHelper(newSheetId, finalTitle, sheetSpec?.rowCount ?? maxRowCount, sheetSpec?.columnCount ?? maxColumnCount, sheetSpec?.hidden ?? false);
|
|
42
|
-
//
|
|
43
|
-
//
|
|
44
|
-
const
|
|
45
|
-
.map((s, arrayIndex) => ({
|
|
46
|
-
sheet: s,
|
|
47
|
-
effectiveIndex: s.index ?? arrayIndex,
|
|
48
|
-
arrayIndex,
|
|
49
|
-
}))
|
|
50
|
-
.sort((a, b) => a.effectiveIndex - b.effectiveIndex ||
|
|
51
|
-
a.arrayIndex - b.arrayIndex);
|
|
52
|
-
const activeOrderedIndex = orderedSheets.findIndex((entry) => entry.sheet.sheetId === sheetId);
|
|
53
|
-
const fallbackMaxIndex = orderedSheets.length > 0
|
|
54
|
-
? Math.max(...orderedSheets.map((entry) => entry.effectiveIndex))
|
|
55
|
-
: -1;
|
|
56
|
-
const computedIndex = activeOrderedIndex === -1
|
|
57
|
-
? fallbackMaxIndex + 1
|
|
58
|
-
: (() => {
|
|
59
|
-
const currentIndex = orderedSheets[activeOrderedIndex]?.effectiveIndex ??
|
|
60
|
-
fallbackMaxIndex;
|
|
61
|
-
const nextIndex = orderedSheets[activeOrderedIndex + 1]?.effectiveIndex;
|
|
62
|
-
return nextIndex === undefined
|
|
63
|
-
? currentIndex + 1
|
|
64
|
-
: currentIndex + (nextIndex - currentIndex) / 2;
|
|
65
|
-
})();
|
|
43
|
+
// Visual insertion index (after the active sheet) without moving the
|
|
44
|
+
// existing array positions. This keeps ShareDB patches append-only.
|
|
45
|
+
const computedIndex = sheetSpec?.index ?? sheetIndexAfter(draft, sheetId);
|
|
66
46
|
// Merge any additional spec properties
|
|
67
47
|
const sheet = {
|
|
68
48
|
...newSheet,
|
|
@@ -70,7 +50,7 @@ export const createNewSheet = ({ sheetId, maxSheetCount, sheets, maxRowCount, ma
|
|
|
70
50
|
// Ensure computed values override spec
|
|
71
51
|
sheetId: newSheetId,
|
|
72
52
|
title: finalTitle,
|
|
73
|
-
index:
|
|
53
|
+
index: computedIndex,
|
|
74
54
|
};
|
|
75
55
|
// Always append physically to keep patches as add-only.
|
|
76
56
|
draft.push(sheet);
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Sheet } from "@rowsncolumns/spreadsheet";
|
|
2
|
+
import type { Draft } from "immer";
|
|
3
|
+
type OrderableSheet = Pick<Sheet, "sheetId" | "index" | "hidden" | "title">;
|
|
4
|
+
/**
|
|
5
|
+
* The `index` that places a new sheet right after `anchorSheetId` in tab order — halfway to the next
|
|
6
|
+
* tab, so no existing sheet has to change its `index` (a collab host's patches stay add-only). With
|
|
7
|
+
* no anchor the sheet goes last. When the anchor and its neighbour share an `index` there is no gap
|
|
8
|
+
* to split, so every sheet is renumbered first and the new sheet takes the slot after the anchor.
|
|
9
|
+
*/
|
|
10
|
+
export declare const sheetIndexAfter: <S extends OrderableSheet>(draft: Draft<S>[], anchorSheetId: number) => number;
|
|
11
|
+
/**
|
|
12
|
+
* Move `sheetId` from `currentPosition` to `newPosition` — both positions among the VISIBLE tabs, as
|
|
13
|
+
* the tab strip counts them — and renumber every sheet from the resulting order, hidden tabs keeping
|
|
14
|
+
* their slot. Indices are only ever read as an order here (a created or duplicated sheet carries a
|
|
15
|
+
* fractional one; a host may seed duplicates), so shifting neighbours by ±1 is not an option: the
|
|
16
|
+
* moved tab has to land where it was dropped with the others in their old relative order.
|
|
17
|
+
* Returns false when the move names a sheet or a position that does not exist.
|
|
18
|
+
*/
|
|
19
|
+
export declare const moveSheetInOrder: <S extends OrderableSheet>(draft: Draft<S>[], sheetId: number, currentPosition: number, newPosition: number) => boolean;
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=sheet-order.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sheet-order.d.ts","sourceRoot":"","sources":["../../../interface/sheet-order.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAEnC,KAAK,cAAc,GAAG,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAC;AA+B5E;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,cAAc,EACtD,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,EACjB,eAAe,MAAM,KACpB,MAyBF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,cAAc,EACvD,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,EACjB,SAAS,MAAM,EACf,iBAAiB,MAAM,EACvB,aAAa,MAAM,KAClB,OAmBF,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { sortSheetsByIndex } from "@rowsncolumns/utils";
|
|
2
|
+
/**
|
|
3
|
+
* Tab order the way the tab strip renders it — `sortSheetsByIndex` with hidden sheets kept, so a
|
|
4
|
+
* hidden tab keeps its slot between its neighbours.
|
|
5
|
+
*/
|
|
6
|
+
const tabOrder = (sheets) => sortSheetsByIndex(sheets, true);
|
|
7
|
+
/**
|
|
8
|
+
* Give every sheet the position it holds in `order` as its `index`, so the indices are contiguous
|
|
9
|
+
* integers again. `shiftFrom` leaves a gap: positions at or after it move up by one, for a sheet that
|
|
10
|
+
* is about to be inserted there.
|
|
11
|
+
*/
|
|
12
|
+
const renumber = (draft, order, shiftFrom = Number.POSITIVE_INFINITY) => {
|
|
13
|
+
const positionById = new Map();
|
|
14
|
+
order.forEach((sheetId, position) => {
|
|
15
|
+
positionById.set(sheetId, position >= shiftFrom ? position + 1 : position);
|
|
16
|
+
});
|
|
17
|
+
for (const sheet of draft) {
|
|
18
|
+
const position = positionById.get(sheet.sheetId);
|
|
19
|
+
if (position !== undefined && sheet.index !== position) {
|
|
20
|
+
sheet.index = position;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* The `index` that places a new sheet right after `anchorSheetId` in tab order — halfway to the next
|
|
26
|
+
* tab, so no existing sheet has to change its `index` (a collab host's patches stay add-only). With
|
|
27
|
+
* no anchor the sheet goes last. When the anchor and its neighbour share an `index` there is no gap
|
|
28
|
+
* to split, so every sheet is renumbered first and the new sheet takes the slot after the anchor.
|
|
29
|
+
*/
|
|
30
|
+
export const sheetIndexAfter = (draft, anchorSheetId) => {
|
|
31
|
+
const ordered = tabOrder(draft);
|
|
32
|
+
if (ordered.length === 0) {
|
|
33
|
+
return 0;
|
|
34
|
+
}
|
|
35
|
+
const anchorPosition = ordered.findIndex((sheet) => sheet.sheetId === anchorSheetId);
|
|
36
|
+
if (anchorPosition === -1) {
|
|
37
|
+
return Math.max(...ordered.map((sheet) => sheet.index)) + 1;
|
|
38
|
+
}
|
|
39
|
+
const anchorIndex = ordered[anchorPosition].index;
|
|
40
|
+
const next = ordered[anchorPosition + 1];
|
|
41
|
+
if (next === undefined) {
|
|
42
|
+
return anchorIndex + 1;
|
|
43
|
+
}
|
|
44
|
+
if (next.index > anchorIndex) {
|
|
45
|
+
return anchorIndex + (next.index - anchorIndex) / 2;
|
|
46
|
+
}
|
|
47
|
+
renumber(draft, ordered.map((sheet) => sheet.sheetId), anchorPosition + 1);
|
|
48
|
+
return anchorPosition + 1;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Move `sheetId` from `currentPosition` to `newPosition` — both positions among the VISIBLE tabs, as
|
|
52
|
+
* the tab strip counts them — and renumber every sheet from the resulting order, hidden tabs keeping
|
|
53
|
+
* their slot. Indices are only ever read as an order here (a created or duplicated sheet carries a
|
|
54
|
+
* fractional one; a host may seed duplicates), so shifting neighbours by ±1 is not an option: the
|
|
55
|
+
* moved tab has to land where it was dropped with the others in their old relative order.
|
|
56
|
+
* Returns false when the move names a sheet or a position that does not exist.
|
|
57
|
+
*/
|
|
58
|
+
export const moveSheetInOrder = (draft, sheetId, currentPosition, newPosition) => {
|
|
59
|
+
const target = sortSheetsByIndex(draft)[newPosition];
|
|
60
|
+
if (target === undefined || target.sheetId === sheetId) {
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
63
|
+
const order = tabOrder(draft).map((sheet) => sheet.sheetId);
|
|
64
|
+
const from = order.indexOf(sheetId);
|
|
65
|
+
if (from === -1) {
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
order.splice(from, 1);
|
|
69
|
+
const targetPosition = order.indexOf(target.sheetId);
|
|
70
|
+
order.splice(newPosition > currentPosition ? targetPosition + 1 : targetPosition, 0, sheetId);
|
|
71
|
+
renumber(draft, order);
|
|
72
|
+
return true;
|
|
73
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spreadsheet-interface.d.ts","sourceRoot":"","sources":["../../../interface/spreadsheet-interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAE7E,OAAO,KAAK,EACV,aAAa,EACb,UAAU,EACV,QAAQ,EAER,SAAS,EACT,SAAS,EACT,2BAA2B,EAC3B,KAAK,EACL,UAAU,EACV,aAAa,EACb,UAAU,EACV,gBAAgB,EAEjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,cAAc,EAAuB,MAAM,mBAAmB,CAAC;AAU7E,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAGL,KAAK,IAAI,EACT,KAAK,gBAAgB,EAErB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,KAAK,KAAK,EACV,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,KAAK,EACV,KAAK,gBAAgB,EAErB,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,2BAA2B,CAAC;AA6BnC,OAAO,KAAK,EAAS,KAAK,EAAE,MAAM,OAAO,CAAC;AAO1C,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,aAAa,CAAC;AAInE,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACV,gCAAgC,EAChC,+BAA+B,EAChC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAEL,KAAK,SAAS,EACf,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE5E,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAK/E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAuCzD,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AA4B7D,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,qBAAqB,CAAC;AAY7B,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,EAAE,QAAQ,MAAM,QA4BzD,CAAC;AAqFF;;;;GAIG;AACH,qBAAa,WAAW,CACtB,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAC7B,CAAC,SAAS,KAAK,GAAG,KAAK,EACvB,CAAC,SAAS,UAAU,GAAG,UAAU;IAEjC,OAAO,CAAC,OAAO,CAAW;IAC1B,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,gBAAgB,CAAkC;IAC1D,OAAO,CAAC,mBAAmB,CAA+B;IAC1D,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,UAAU,CAA0B;IACrC,KAAK,SAAK;IACV,OAAO,UAAS;IAChB,qBAAqB,SAAK;IAC1B,mBAAmB,SAAK;IACxB,cAAc,SAAU;IACxB,eAAe,SAAsB;IACrC,kBAAkB,SAAwB;IACjD,OAAO,CAAC,qBAAqB,CAAuB;IACpD,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,4BAA4B,CAAC,CAGC;gBAE1B,OAAO,CAAC,EAAE;QACpB,uBAAuB,CAAC,EAAE,MAAM,MAAM,GAAG,UAAU,CAAC;QACpD,oBAAoB,CAAC,EAAE,2BAA2B,CAAC;QACnD,yBAAyB,CAAC,EAAE,MAAM,CAAC;QACnC,2BAA2B,CAAC,CAC1B,eAAe,EAAE,KAAK,CAAC,gBAAgB,CAAC,EACxC,QAAQ,CAAC,EAAE,MAAM,gBAAgB,GAChC,oBAAoB,GAAG,SAAS,CAAC;KACrC;IAgCD,YAAY;IASZ;;;OAGG;IACH,+BAA+B,CAAC,OAAO,CAAC,EAAE,MAAM;IA2BhD;;;OAGG;IACH,yBAAyB,CAAC,OAAO,CAAC,EAAE,MAAM;IAwB1C,IAAI,aAAa,CAAC,KAAK,EAAE,aAAa,EAErC;IAED,IAAI,aAAa,IAJQ,aAAa,CAMrC;IAED,IAAI,aAAa,IAIQ,MAAM,CAF9B;IAED,IAAI,aAAa,CAAC,KAAK,EAAE,MAAM,EAE9B;IAED,IAAI,MAAM,IAAI,CAAC,EAAE,CAEhB;IAED,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,EAGpB;IAED,IAAI,MAAM,IAIQ,aAAa,EAAE,CAFhC;IAED,IAAI,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE,EAEhC;IAED,IAAI,MAAM,IAIQ,cAAc,EAAE,CAFjC;IAED,IAAI,MAAM,CAAC,KAAK,EAAE,cAAc,EAAE,EAEjC;IAED,IAAI,WAAW,IAIQ,UAAU,EAAE,CAFlC;IAED,IAAI,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,EAElC;IAED,IAAI,SAAS,IAIQ,QAAQ,EAAE,CAF9B;IAED,IAAI,SAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,EAE9B;IAED,IAAI,WAAW,IAGQ,UAAU,EAAE,CADlC;IACD,IAAI,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,EAGlC;IAED,IAAI,eAAe,IAGQ,wBAAwB,EAAE,CADpD;IACD,IAAI,eAAe,CAAC,KAAK,EAAE,wBAAwB,EAAE,EAEpD;IAED,IAAI,kBAAkB,IAGQ,qBAAqB,EAAE,CADpD;IACD,IAAI,kBAAkB,CAAC,KAAK,EAAE,qBAAqB,EAAE,EAEpD;IAED,IAAI,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,CAE5B;IAED,IAAI,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,EAEpC;IAED,IAAI,MAAM,IAAI,SAAS,EAAE,CAExB;IAED,IAAI,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,EAG5B;IAED,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,EAGvB;IAED,IAAI,MAAM,IALQ,MAAM,CAOvB;IAED,IAAI,OAAO,CAAC,KAAK,SAAA,EAEhB;IAED,IAAI,OAAO,YAEV;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,gBAAgB,EAAE,EAEpC;IAED,IAAI,OAAO,IAJQ,gBAAgB,EAAE,CAMpC;IAEM,YAAY;IAInB,OAAO,CAAC,cAAc,CAGpB;IAEF,OAAO,CAAC,iBAAiB,CAGvB;IAEF,OAAO,CAAC,cAAc,CAGpB;IAEF,OAAO,CAAC,cAAc,CAGpB;IAEF,OAAO,CAAC,cAAc,CAGpB;IAEF,OAAO,CAAC,mBAAmB,CAGzB;IAEF,OAAO,CAAC,qBAAqB,CAG3B;IAEF,OAAO,CAAC,uBAAuB,CAG7B;IAEF,OAAO,CAAC,0BAA0B,CAGhC;IAEF,OAAO,CAAC,eAAe,CAKrB;IAEF,IAAI,eAAe,oBAElB;IAED,IAAI,oBAAoB,yBAKvB;IAED,OAAO,CAAC,mBAAmB,CAGzB;IAEF,OAAO,CAAC,mBAAmB,CAGzB;IAEF,OAAO,CAAC,iBAAiB,CAGvB;IAEF,OAAO,CAAC,aAAa,CAEnB;IACK,kBAAkB,GAAI,YAAY,oBAAoB,UAAQ;IAC9D,qBAAqB,GAAI,YAAY,oBAAoB,UAAQ;IACjE,sBAAsB,GAAI,SAAS,eAAe,UAAQ;IACjE,OAAO,CAAC,kBAAkB,CAExB;IACF,OAAO,CAAC,aAAa,CAA2B;IAChD,OAAO,CAAC,aAAa,CAAY;IACjC,OAAO,CAAC,aAAa,CAuBnB;IACF,OAAO,CAAC,kBAAkB,CAAY;IACtC,OAAO,CAAC,4BAA4B,CAUlC;IACF,OAAO,CAAC,kBAAkB,CAAY;IAEtC,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,iBAAiB,CA0BvB;IAEF,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,gBAAgB;IAexB,OAAO,CAAC,+BAA+B,CA+BrC;IAEF,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,mBAAmB,CAWzB;IAEF,OAAO,CAAC,yBAAyB,CAmB/B;IAEF,OAAO,CAAC,eAAe,CAWrB;IAEF,OAAO,CAAC,iBAAiB,CAWvB;IAEF;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,UAAU,CAUhB;IAEF,OAAO,CAAC,kBAAkB,CAKxB;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,qBAAqB,CAE3B;IAEF,OAAO,CAAC,2BAA2B,CAwDjC;IAEF,OAAO,CAAC,wBAAwB,CAmD9B;IAEF,OAAO,CAAC,wBAAwB,CAsB9B;IAEF,OAAO,CAAC,aAAa,CA2BnB;IAEF,OAAO,CAAC,wBAAwB,CAuB9B;IAEF,OAAO,CAAC,2BAA2B,CAsCjC;IAEF,OAAO,CAAC,uBAAuB,CAoG7B;IAEW,iBAAiB;IAIjB,YAAY;IAQZ,gBAAgB;IAI7B;;OAEG;IACH;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,iBAAiB;IA2BzB,OAAO,CAAC,cAAc;IAStB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAK5B;;OAEG;IACH,OAAO,CAAC,cAAc;IAMtB;;OAEG;IACH,OAAO,CAAC,WAAW;IAMnB;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CA4DvB;IAEF;;;;;;OAMG;IACH,YAAY,GAAI,SAAS,MAAM,EAAE,UAAU,MAAM,EAAE,aAAa,MAAM,yBAQpE;IAEF;;;OAGG;IACI,YAAY,GACjB,SAAS,MAAM,EACf,UAAU,MAAM,EAChB,gBAAgB,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,KACzC,MAAM,CA+BP;IAEF;;;OAGG;IACI,cAAc,GACnB,SAAS,MAAM,EACf,aAAa,MAAM,EACnB,UAAU;QACR,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAC;KACpC,KACA,MAAM,CAqDP;IAEF;;;;OAIG;IACU,oBAAoB;IAqPjC;;;;OAIG;IACI,0BAA0B,GAAI,cAAc,MAAM;;;kBAwBvD;IAEF;;;;;;;;;OASG;IACI,qBAAqB,GAC1B,SAAS,MAAM,EACf,MAAM,aAAa,GAAG,SAAS,EAC/B,WAAW,MAAM,GAAG,SAAS,EAC7B,aAAa,MAAM,EAAE,GAAG,SAAS,EACjC,SAAS,OAAO,GAAG,SAAS,EAC5B,cAAc,WAAW,CAAC,aAAa,CAAC;;;;;;;;;;;;;;kBAuIxC;IAEF;;;;;;OAMG;IACI,QAAQ,GACb,OAAO,MAAM,GAAG,SAAS,EACzB,SAAS,MAAM,EACf,YAAY,aAAa,sDAmCzB;IAEF;;;;;;OAMG;IACI,uBAAuB,GAC5B,OAAO,MAAM,EACb,SAAS,MAAM,EACf,YAAY,aAAa,4DAuBzB;IAEF;;;;OAIG;IACI,cAAc,CACnB,IAAI,GAAE,WAAoB,GACzB,CAAC,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI,CAAC,EAAE;IAI5E;;;OAGG;IACI,UAAU,CACf,GAAG,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,CAAC;IASnE;;;;;OAKG;IACI,cAAc,CACnB,SAAS,EAAE,SAAS,EACpB,gBAAgB,CAAC,EAAE,MAAM,EACzB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,EAAE;IAsBvD;;;;;OAKG;IACI,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,OAAO,SAAI;IA2BxE;;;;;OAKG;IACI,YAAY,CACjB,OAAO,EAAE,MAAM,EACf,oBAAoB,EAAE,MAAM,EAC5B,UAAU,SAAI;IA6BhB;;;;OAIG;IACI,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE;IAkC5D;;;;;OAKG;IACI,WAAW,CAChB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,EAC/B,MAAM,EACF,CAAC,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE,GAClD,MAAM,GACN,OAAO,GACP,MAAM,GACN,IAAI,GACJ,SAAS,EACb,UAAU,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,EAC9D,SAAS,CAAC,EAAE,CAAC,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,EACvE,kBAAkB,CAAC,EAAE,kBAAkB;IAsDzC;;;;;OAKG;IACU,iBAAiB,CAC5B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,sBAAsB;IAWhC;;;OAGG;IACI,gBAAgB,CAAC,CAAC,SAAS,cAAc,EAC9C,GAAG,IAAI,EAAE,UAAU,CACjB,+BAA+B,CAAC,CAAC,CAAC,GAAG,gCAAgC,CACtE;IAeH;;;;;;;;OAQG;IACI,YAAY,CACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE,EAChD,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,KAAK,GAAG,SAAS,EACxB,KAAK,GAAE,WAAW,GAAG,SAAmB;IAa1C;;;;;;;;OAQG;IACI,WAAW,CAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE,EAChD,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,EAC9B,KAAK,CAAC,EAAE,UAAU,EAClB,WAAW,CAAC,EAAE,gBAAgB;IAuBhC;;;;;OAKG;IACI,WAAW,CAChB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,EACxB,YAAY,EAAE,OAAO,CAAC,SAAS,CAAC;IA0BlC;;;OAGG;IACI,WAAW,CAAC,SAAS,EAAE,SAAS;IA8CvC;;;;;OAKG;IACI,iBAAiB,CACtB,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,KAAK;IAoB7C;;;;OAIG;IACI,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM;IAkBrE;;;;OAIG;IACI,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE;IAiCtD;;OAEG;IACI,oBAAoB,CACzB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE;IAoBlD;;OAEG;IACI,kBAAkB,CACvB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE;IAoBlD,yBAAyB;IAClB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IASlD,4BAA4B;IACrB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IASxD,mBAAmB;IACZ,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE;IAe3D,gBAAgB;IACT,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE;IAerD;;OAEG;IACU,SAAS,CACpB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,aAAa,EAAE,aAAa,EAC5B,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE,EAChD,kBAAkB,CAAC,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE,EACzD,QAAQ,CAAC,EAAE,YAAY;IA4BlB,cAAc,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAUrC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAczD;;;OAGG;IACI,WAAW,CAAC,OAAO,EAAE,MAAM;IAiBlC;;;OAGG;IACI,+BAA+B,CAAC,IAAI,EAAE,qBAAqB;IAQlE;;;;OAIG;IACI,+BAA+B,CACpC,WAAW,EAAE,qBAAqB,EAClC,YAAY,EAAE,qBAAqB;IASrC;;;OAGG;IACI,+BAA+B,CAAC,IAAI,EAAE,qBAAqB;IAQlE;;;OAGG;IACI,gCAAgC,CAAC,IAAI,EAAE,qBAAqB;IAQnE;;;OAGG;IACI,wBAAwB,CAAC,IAAI,EAAE,wBAAwB;IAa9D;;;;OAIG;IACI,wBAAwB,CAC7B,IAAI,EAAE,wBAAwB,EAC9B,YAAY,EAAE,wBAAwB;IAcxC;;;OAGG;IACI,wBAAwB,CAAC,IAAI,EAAE,wBAAwB;IAa9D;;;OAGG;IACI,yBAAyB,CAAC,KAAK,EAAE,wBAAwB,EAAE;IAalE;;;;;;OAMG;IACI,cAAc,CACnB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE,EAChD,IAAI,EAAE,WAAW,GAAG,WAAW;IAWjC;;;;OAIG;IACI,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,SAAS;IAOpE;;;OAGG;IACI,WAAW,CAAC,KAAK,EAAE,gBAAgB;IAO1C;;;;;OAKG;IACI,eAAe,CACpB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE;IAUlD;;;;;OAKG;IACI,gBAAgB,CACrB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,UAAU,CAAC,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE,EACjD,OAAO,CAAC,EAAE,uBAAuB;IAWnC;;;;;OAKG;IACI,cAAc,CACnB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE;IAWlD;;;;;OAKG;IACI,cAAc,CACnB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE;IAWlD;;;;OAIG;IACI,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU;IAQ/D;;;OAGG;IACI,gBAAgB,CAAC,EAAE,EAAE,UAAU,CAAC,cAAc,CAAC;IAStD;;;;;;OAMG;IACI,WAAW,CAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE,EAChD,SAAS,GAAE,SAAsB;IAoBnC;;;;OAIG;IACI,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE;IAqBhE;;;OAGG;IACI,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;IAkB1D;;;OAGG;IACI,WAAW,CAAC,IAAI,EAAE,cAAc;IAOvC;;;OAGG;IACI,WAAW,CAAC,OAAO,EAAE,MAAM;IAOlC;;;OAGG;IACI,WAAW,CAAC,KAAK,EAAE,cAAc;IAOxC;;;;;;;OAOG;IACI,SAAS,CACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM;IAQvB;;;;;;;;;OASG;IACI,WAAW,CAChB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM;IAgBhB;;;OAGG;IACI,iBAAiB,IAAI,OAAO;IAInC;;;;;;OAMG;IACI,WAAW,CAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,aAAa,EACzB,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAAE,EAChD,SAAS,CAAC,EAAE,aAAa;IAU3B;;;OAGG;IACI,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAO3C;;;;;;OAMG;IACI,SAAS,CACd,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,UAAU,EAAE,aAAa,EACzB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM;IAQvB;;;;;;;;OAQG;IACI,WAAW,CAChB,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,UAAU,EAAE,aAAa,EACzB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM;IAQhB;;;OAGG;IACI,WAAW,CAAC,KAAK,EAAE,aAAa;IAOvC;;;;;;OAMG;IACI,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI;IAUhE;;;;;;;OAOG;IACI,MAAM,CACX,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EAAE,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,IAAI;IAYC,gBAAgB,CAAC,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,GAAG;IAoB9D,gBAAgB,CAC3B,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,OAAO,GAAG,SAAS,EACnC,QAAQ,CAAC,EAAE,GAAG;IAsBhB,OAAO,CAAC,qBAAqB,CA8B3B;IAEF;;;;;;OAMG;IACI,cAAc,CACnB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,QAAQ;IAUpB;;;OAGG;IACI,oBAAoB,CAAC,SAAS,EAAE,QAAQ,EAAE;IAOjD;;;;OAIG;IACI,cAAc,CACnB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAQxC;;;;;OAKG;IACI,sBAAsB,CAC3B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM;IASrB;;;;OAIG;IACI,cAAc,CAAC,UAAU,EAAE,MAAM;CAMzC"}
|
|
1
|
+
{"version":3,"file":"spreadsheet-interface.d.ts","sourceRoot":"","sources":["../../../interface/spreadsheet-interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { tokenize as defaultTokenizer } from "@rowsncolumns/calculator";
|
|
2
2
|
import { isCellCoordinate, isCellNode, isCellRangeNode, isStaticNode, } from "@rowsncolumns/dag";
|
|
3
3
|
import { FormulaError } from "@rowsncolumns/fast-formula-parser";
|
|
4
|
+
import { getFontLineMetrics, toCanvasFont, } from "@rowsncolumns/grid";
|
|
4
5
|
import { defaultSpreadsheetTheme, getBandedCells, } from "@rowsncolumns/spreadsheet";
|
|
5
6
|
import { addressToCell, canUseDOM, cellToAddress, DEFAULT_ACTIVE_CELL, DEFAULT_COLUMN_COUNT, DEFAULT_COLUMN_WIDTH, DEFAULT_ROW_COUNT, DEFAULT_ROW_HEIGHT, generateSelectionsFromFormula, getCellEffectiveFormat, getCellEffectiveValue, getCellFormattedValue, getCellUserEnteredFormat, cellFormatWrapsText, getCellUserEnteredValue, getColumnIndexFromColumnName, getExtendedValueBool, getExtendedValueError, getExtendedValueFormula, getExtendedValueNumber, getExtendedValueString, isAreasEqual, isCellWithinBounds, isNil, iterateCellsInRange, pointToPixel, } from "@rowsncolumns/utils";
|
|
6
7
|
import { enableMapSet, enablePatches, produceWithPatches } from "immer";
|
|
@@ -103,13 +104,25 @@ export const createCanvas = (width, height) => {
|
|
|
103
104
|
class BackendAutoSizer {
|
|
104
105
|
canvas = createCanvas(0, 0);
|
|
105
106
|
ctx = this.canvas.getContext("2d");
|
|
106
|
-
|
|
107
|
+
currentFont = { fontFamily: "Arial", fontSize: 12 };
|
|
108
|
+
currentScale = 1;
|
|
107
109
|
setFont({ fontFamily = "Arial", fontSize = 12, fontWeight = "", fontStyle = "", scale = 1, }) {
|
|
108
|
-
this.
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
110
|
+
this.currentScale = scale;
|
|
111
|
+
this.currentFont = {
|
|
112
|
+
fontFamily,
|
|
113
|
+
fontSize: fontSize * scale,
|
|
114
|
+
fontWeight,
|
|
115
|
+
fontStyle,
|
|
116
|
+
};
|
|
117
|
+
this.ctx.font = toCanvasFont(this.currentFont);
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* One line's box and the leading between lines for the current font —
|
|
121
|
+
* the painter's numbers (#1141). node-canvas reports no
|
|
122
|
+
* `fontBoundingBox*`, so off the DOM this is the `fontSize * 1.2` box.
|
|
123
|
+
*/
|
|
124
|
+
lineMetrics() {
|
|
125
|
+
return getFontLineMetrics(this.currentFont, "fontMetrics", this.currentScale, this.ctx);
|
|
113
126
|
}
|
|
114
127
|
reset() {
|
|
115
128
|
this.setFont({});
|
|
@@ -118,12 +131,12 @@ class BackendAutoSizer {
|
|
|
118
131
|
if (!text)
|
|
119
132
|
return null;
|
|
120
133
|
const metrics = this.ctx.measureText(text);
|
|
134
|
+
const { box, leading } = this.lineMetrics();
|
|
121
135
|
let width = metrics.width;
|
|
122
|
-
let
|
|
136
|
+
let lines = 1;
|
|
123
137
|
if (shouldWrap && maxWidth && width > maxWidth) {
|
|
124
138
|
// Simple word wrapping calculation
|
|
125
139
|
const words = text.split(" ");
|
|
126
|
-
let lines = 1;
|
|
127
140
|
let currentLineWidth = 0;
|
|
128
141
|
for (const word of words) {
|
|
129
142
|
const wordWidth = this.ctx.measureText(word + " ").width;
|
|
@@ -135,10 +148,9 @@ class BackendAutoSizer {
|
|
|
135
148
|
currentLineWidth += wordWidth;
|
|
136
149
|
}
|
|
137
150
|
}
|
|
138
|
-
height = this.currentFontSize * 1.2 * lines;
|
|
139
151
|
width = maxWidth;
|
|
140
152
|
}
|
|
141
|
-
return { width, height };
|
|
153
|
+
return { width, height: lines * box + (lines - 1) * leading };
|
|
142
154
|
}
|
|
143
155
|
}
|
|
144
156
|
// Generic state change function
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../../cellxfs-registry.ts","../../commands.ts","../../constants.ts","../../generated-names.ts","../../helpers.ts","../../index.ts","../../server-utils.ts","../../server.browser.ts","../../server.ts","../../shared-string-registry.ts","../../sheet-cell.ts","../../test-setup.ts","../../types.ts","../../vitest.config.ts","../../api/advanced-filter.ts","../../api/anchored-objects.ts","../../api/basic-filter.ts","../../api/border.ts","../../api/circular-reference.ts","../../api/conditional-format.ts","../../api/copy-paste.ts","../../api/data-validation.ts","../../api/datatype.ts","../../api/date.ts","../../api/decimals.ts","../../api/dependency.ts","../../api/fill-series-spec.ts","../../api/fill.ts","../../api/filter-condition.ts","../../api/filter-range.ts","../../api/filter.ts","../../api/format-caches.ts","../../api/formula.ts","../../api/goal-seek.ts","../../api/image-embed.ts","../../api/immer-utils.ts","../../api/insert-cut-cells.ts","../../api/intl.ts","../../api/merges.ts","../../api/named-range-structural.ts","../../api/outline.ts","../../api/paint-format.ts","../../api/parse-html.ts","../../api/paste-special.ts","../../api/patches.ts","../../api/pivot-range.ts","../../api/range-rule-helpers.ts","../../api/range.ts","../../api/rename-sheet.ts","../../api/selection.ts","../../api/sort.ts","../../api/split-text.ts","../../api/structural-formula-update.ts","../../api/structural-guards.ts","../../api/structural-table-refs.ts","../../api/subtotal.ts","../../api/table.ts","../../api/validation.ts","../../api/xlsx-source.ts","../../atoms/creating-table.atom.ts","../../atoms/delete-sheet-atom.ts","../../atoms/dialog-state.atom.ts","../../atoms/editing-data-validation-id.atom.ts","../../atoms/editing-embed.atom.ts","../../atoms/editing-slicer.atom.ts","../../atoms/editing-table.atom.ts","../../atoms/error-state.atom.ts","../../atoms/index.ts","../../atoms/insert-image-state.atom.ts","../../atoms/inserting-slicer.atom.ts","../../atoms/named-range.atom.ts","../../atoms/resize-dimension.atom.ts","../../atoms/resizing-table.atom.ts","../../atoms/sheet-observer.atom.ts","../../components/index.tsx","../../components/dialogs/delete-sheet-confirmation.tsx","../../components/dialogs/error-state.tsx","../../components/editors/cell-format-editor.tsx","../../components/editors/conditional-format-editor.tsx","../../components/editors/conditional-format-rule-editor.tsx","../../components/editors/data-validation-editor.tsx","../../components/editors/data-validation-rule-editor.tsx","../../components/editors/embed-editor.tsx","../../components/editors/insert-image-editor.tsx","../../components/editors/insert-link-editor.tsx","../../components/editors/named-range-editor.tsx","../../components/editors/resize-dimension-editor.tsx","../../components/editors/sheet-filter.tsx","../../components/editors/slicer-editor.tsx","../../components/editors/table-editor.tsx","../../helpers/default-cell-format.ts","../../helpers/iterative-calculation.ts","../../helpers/sheet-title.ts","../../hooks/use-async-datasource.ts","../../hooks/use-calculation-initialize.ts","../../hooks/use-calculation-process-array.ts","../../hooks/use-calculation-queue.ts","../../hooks/use-calculation-worker.ts","../../hooks/use-calculation.ts","../../hooks/use-can-edit-cellrange.ts","../../hooks/use-cellxfs-registry.ts","../../hooks/use-citations.ts","../../hooks/use-comments.ts","../../hooks/use-conditional-formatting-rules.ts","../../hooks/use-data-validation-rules.ts","../../hooks/use-deferred-calculation-flush.ts","../../hooks/use-idle-scheduler.ts","../../hooks/use-indent.ts","../../hooks/use-named-range.ts","../../hooks/use-on-adjust-row-height.ts","../../hooks/use-on-advanced-filter.ts","../../hooks/use-on-autoresize.ts","../../hooks/use-on-banded-ranges.ts","../../hooks/use-on-calculation-begin.ts","../../hooks/use-on-calculation-success.ts","../../hooks/use-on-change-batch-stream.ts","../../hooks/use-on-change-batch.ts","../../hooks/use-on-change-calculated-column.ts","../../hooks/use-on-change-decimals.ts","../../hooks/use-on-change-formatting.ts","../../hooks/use-on-change-sheet-tabcolor.ts","../../hooks/use-on-change-table-column.ts","../../hooks/use-on-change-theme.ts","../../hooks/use-on-change.ts","../../hooks/use-on-clear-formatting.ts","../../hooks/use-on-collapse-column-group.ts","../../hooks/use-on-collapse-row-group.ts","../../hooks/use-on-copy.ts","../../hooks/use-on-create-custom-table-style.ts","../../hooks/use-on-create-named-range.ts","../../hooks/use-on-create-sheet.ts","../../hooks/use-on-delete-cells-shift-left.ts","../../hooks/use-on-delete-cells-shift-up.ts","../../hooks/use-on-delete-column.ts","../../hooks/use-on-delete-named-range.ts","../../hooks/use-on-delete-row.ts","../../hooks/use-on-delete-sheet.ts","../../hooks/use-on-delete-table-row.ts","../../hooks/use-on-delete.ts","../../hooks/use-on-drag-n-drop.ts","../../hooks/use-on-duplicate-sheet.ts","../../hooks/use-on-embeds.ts","../../hooks/use-on-expand-column-group.ts","../../hooks/use-on-expand-row-group.ts","../../hooks/use-on-fill-range.ts","../../hooks/use-on-fill.ts","../../hooks/use-on-filter-table.ts","../../hooks/use-on-find-replace.ts","../../hooks/use-on-freeze.ts","../../hooks/use-on-goal-seek.ts","../../hooks/use-on-group-columns.ts","../../hooks/use-on-group-rows.ts","../../hooks/use-on-hide-column.ts","../../hooks/use-on-hide-row.ts","../../hooks/use-on-hide-show-sheet.ts","../../hooks/use-on-import-csv-legacy.ts","../../hooks/use-on-import-csv.ts","../../hooks/use-on-import-excel.ts","../../hooks/use-on-insert-autosum.ts","../../hooks/use-on-insert-cells-shift-down.ts","../../hooks/use-on-insert-cells-shift-right.ts","../../hooks/use-on-insert-checkbox.ts","../../hooks/use-on-insert-column.ts","../../hooks/use-on-insert-date-time.ts","../../hooks/use-on-insert-date.ts","../../hooks/use-on-insert-image.ts","../../hooks/use-on-insert-link.ts","../../hooks/use-on-insert-note.ts","../../hooks/use-on-insert-row.ts","../../hooks/use-on-insert-table-row.ts","../../hooks/use-on-insert-time.ts","../../hooks/use-on-locale-change.ts","../../hooks/use-on-merge-unmerge-cells.ts","../../hooks/use-on-move-columns.ts","../../hooks/use-on-move-rows.ts","../../hooks/use-on-move-selection.ts","../../hooks/use-on-move-sheet.ts","../../hooks/use-on-move-table-columns.ts","../../hooks/use-on-paste.ts","../../hooks/use-on-protect-range.ts","../../hooks/use-on-protect-sheet.ts","../../hooks/use-on-remove-duplicates.ts","../../hooks/use-on-rename-sheet.ts","../../hooks/use-on-request-calculate-wrapper.ts","../../hooks/use-on-request-conditional-format.ts","../../hooks/use-on-request-create-table.ts","../../hooks/use-on-request-data-validation.ts","../../hooks/use-on-request-define-named-range.ts","../../hooks/use-on-request-delete-sheet.ts","../../hooks/use-on-request-edit-table.ts","../../hooks/use-on-request-format-cells.ts","../../hooks/use-on-request-insert-image.ts","../../hooks/use-on-request-insert-link.ts","../../hooks/use-on-request-insert-slicer.ts","../../hooks/use-on-request-resize-table.ts","../../hooks/use-on-request-resize.ts","../../hooks/use-on-request-update-named-range.ts","../../hooks/use-on-resize-table.ts","../../hooks/use-on-resize.ts","../../hooks/use-on-set-outline-depth.ts","../../hooks/use-on-show-column.ts","../../hooks/use-on-show-row.ts","../../hooks/use-on-sort-column.ts","../../hooks/use-on-sort-range.ts","../../hooks/use-on-sort-table.ts","../../hooks/use-on-subtotal.ts","../../hooks/use-on-table.ts","../../hooks/use-on-trace-dependents-precedents.tsx","../../hooks/use-on-undo-calculated-column.ts","../../hooks/use-on-undo-table-auto-expansion.ts","../../hooks/use-on-ungroup-columns.ts","../../hooks/use-on-ungroup-rows.ts","../../hooks/use-on-update-named-range.ts","../../hooks/use-on-update-note.ts","../../hooks/use-on-update-sheet.ts","../../hooks/use-paint-format.ts","../../hooks/use-search.ts","../../hooks/use-select-next-prev-sheet.ts","../../hooks/use-sheet-observer.ts","../../hooks/use-sheet-properties.ts","../../hooks/use-sheet-state.ts","../../hooks/use-sheetdata-subscriber.ts","../../hooks/use-slicers.ts","../../hooks/use-sparkline-groups.ts","../../hooks/use-split-text-to-columns.ts","../../hooks/use-spreadsheet-state.ts","../../hooks/use-ss-registry.ts","../../hooks/use-structured-reference.ts","../../hooks/use-undo-redo-actions.ts","../../hooks/use-undo-redo.ts","../../hooks/utils/frozen-sort.ts","../../hooks/utils/sort-rows.ts","../../interface/apply-fill.ts","../../interface/auto-resize.ts","../../interface/calculation-interface.ts","../../interface/change-batch-stream.ts","../../interface/change-batch.ts","../../interface/change-border.ts","../../interface/change-calculated-column.ts","../../interface/change-decimals.ts","../../interface/change-formatting.ts","../../interface/change-sheet-tabcolor.ts","../../interface/change-table-column.ts","../../interface/change-theme.ts","../../interface/chart-extensions.ts","../../interface/citations.ts","../../interface/clear-formatting.ts","../../interface/conditional-formatting-rules.ts","../../interface/create-table.ts","../../interface/data-validation-rules.ts","../../interface/data-validation-utils.ts","../../interface/delete-cells-shift-left.ts","../../interface/delete-cells-shift-up.ts","../../interface/delete-cells.ts","../../interface/delete-column.ts","../../interface/delete-row.ts","../../interface/delete-sheet.ts","../../interface/delete-table-column.ts","../../interface/delete-table-row.ts","../../interface/duplicate-sheet.ts","../../interface/embeds.ts","../../interface/freeze.ts","../../interface/helpers.ts","../../interface/hide-column.ts","../../interface/hide-row.ts","../../interface/indent.ts","../../interface/insert-cells-shift-down.ts","../../interface/insert-cells-shift-right.ts","../../interface/insert-column.ts","../../interface/insert-note.ts","../../interface/insert-row.ts","../../interface/insert-table-row.ts","../../interface/interface-cli.ts","../../interface/named-range-operations.ts","../../interface/new-sheet.ts","../../interface/pivot-extensions.ts","../../interface/remove-duplicates.ts","../../interface/remove-table.ts","../../interface/resize-utils.ts","../../interface/resize.ts","../../interface/slicers.ts","../../interface/split-text.ts","../../interface/spreadsheet-interface.ts","../../interface/table-totalrow.ts","../../interface/table-utils.ts","../../interface/update-sheet.ts","../../interface/update-table.ts","../../validation-schema/table.schema.ts"],"version":"5.8.3"}
|
|
1
|
+
{"root":["../../cellxfs-registry.ts","../../commands.ts","../../constants.ts","../../generated-names.ts","../../helpers.ts","../../index.ts","../../server-utils.ts","../../server.browser.ts","../../server.ts","../../shared-string-registry.ts","../../sheet-cell.ts","../../test-setup.ts","../../types.ts","../../vitest.config.ts","../../api/advanced-filter.ts","../../api/anchored-objects.ts","../../api/basic-filter.ts","../../api/border.ts","../../api/circular-reference.ts","../../api/conditional-format.ts","../../api/copy-paste.ts","../../api/data-validation.ts","../../api/datatype.ts","../../api/date.ts","../../api/decimals.ts","../../api/dependency.ts","../../api/fill-series-spec.ts","../../api/fill.ts","../../api/filter-condition.ts","../../api/filter-range.ts","../../api/filter.ts","../../api/format-caches.ts","../../api/formula.ts","../../api/goal-seek.ts","../../api/image-embed.ts","../../api/immer-utils.ts","../../api/insert-cut-cells.ts","../../api/intl.ts","../../api/merges.ts","../../api/named-range-structural.ts","../../api/outline.ts","../../api/paint-format.ts","../../api/parse-html.ts","../../api/paste-special.ts","../../api/patches.ts","../../api/pivot-range.ts","../../api/range-rule-helpers.ts","../../api/range.ts","../../api/rename-sheet.ts","../../api/selection.ts","../../api/sort.ts","../../api/split-text.ts","../../api/structural-formula-update.ts","../../api/structural-guards.ts","../../api/structural-table-refs.ts","../../api/subtotal.ts","../../api/table.ts","../../api/validation.ts","../../api/xlsx-source.ts","../../atoms/creating-table.atom.ts","../../atoms/delete-sheet-atom.ts","../../atoms/dialog-state.atom.ts","../../atoms/editing-data-validation-id.atom.ts","../../atoms/editing-embed.atom.ts","../../atoms/editing-slicer.atom.ts","../../atoms/editing-table.atom.ts","../../atoms/error-state.atom.ts","../../atoms/index.ts","../../atoms/insert-image-state.atom.ts","../../atoms/inserting-slicer.atom.ts","../../atoms/named-range.atom.ts","../../atoms/resize-dimension.atom.ts","../../atoms/resizing-table.atom.ts","../../atoms/sheet-observer.atom.ts","../../components/index.tsx","../../components/dialogs/delete-sheet-confirmation.tsx","../../components/dialogs/error-state.tsx","../../components/editors/cell-format-editor.tsx","../../components/editors/conditional-format-editor.tsx","../../components/editors/conditional-format-rule-editor.tsx","../../components/editors/data-validation-editor.tsx","../../components/editors/data-validation-rule-editor.tsx","../../components/editors/embed-editor.tsx","../../components/editors/insert-image-editor.tsx","../../components/editors/insert-link-editor.tsx","../../components/editors/named-range-editor.tsx","../../components/editors/resize-dimension-editor.tsx","../../components/editors/sheet-filter.tsx","../../components/editors/slicer-editor.tsx","../../components/editors/table-editor.tsx","../../helpers/default-cell-format.ts","../../helpers/iterative-calculation.ts","../../helpers/sheet-title.ts","../../hooks/use-async-datasource.ts","../../hooks/use-calculation-initialize.ts","../../hooks/use-calculation-process-array.ts","../../hooks/use-calculation-queue.ts","../../hooks/use-calculation-worker.ts","../../hooks/use-calculation.ts","../../hooks/use-can-edit-cellrange.ts","../../hooks/use-cellxfs-registry.ts","../../hooks/use-citations.ts","../../hooks/use-comments.ts","../../hooks/use-conditional-formatting-rules.ts","../../hooks/use-data-validation-rules.ts","../../hooks/use-deferred-calculation-flush.ts","../../hooks/use-idle-scheduler.ts","../../hooks/use-indent.ts","../../hooks/use-named-range.ts","../../hooks/use-on-adjust-row-height.ts","../../hooks/use-on-advanced-filter.ts","../../hooks/use-on-autoresize.ts","../../hooks/use-on-banded-ranges.ts","../../hooks/use-on-calculation-begin.ts","../../hooks/use-on-calculation-success.ts","../../hooks/use-on-change-batch-stream.ts","../../hooks/use-on-change-batch.ts","../../hooks/use-on-change-calculated-column.ts","../../hooks/use-on-change-decimals.ts","../../hooks/use-on-change-formatting.ts","../../hooks/use-on-change-sheet-tabcolor.ts","../../hooks/use-on-change-table-column.ts","../../hooks/use-on-change-theme.ts","../../hooks/use-on-change.ts","../../hooks/use-on-clear-formatting.ts","../../hooks/use-on-collapse-column-group.ts","../../hooks/use-on-collapse-row-group.ts","../../hooks/use-on-copy.ts","../../hooks/use-on-create-custom-table-style.ts","../../hooks/use-on-create-named-range.ts","../../hooks/use-on-create-sheet.ts","../../hooks/use-on-delete-cells-shift-left.ts","../../hooks/use-on-delete-cells-shift-up.ts","../../hooks/use-on-delete-column.ts","../../hooks/use-on-delete-named-range.ts","../../hooks/use-on-delete-row.ts","../../hooks/use-on-delete-sheet.ts","../../hooks/use-on-delete-table-row.ts","../../hooks/use-on-delete.ts","../../hooks/use-on-drag-n-drop.ts","../../hooks/use-on-duplicate-sheet.ts","../../hooks/use-on-embeds.ts","../../hooks/use-on-expand-column-group.ts","../../hooks/use-on-expand-row-group.ts","../../hooks/use-on-fill-range.ts","../../hooks/use-on-fill.ts","../../hooks/use-on-filter-table.ts","../../hooks/use-on-find-replace.ts","../../hooks/use-on-freeze.ts","../../hooks/use-on-goal-seek.ts","../../hooks/use-on-group-columns.ts","../../hooks/use-on-group-rows.ts","../../hooks/use-on-hide-column.ts","../../hooks/use-on-hide-row.ts","../../hooks/use-on-hide-show-sheet.ts","../../hooks/use-on-import-csv-legacy.ts","../../hooks/use-on-import-csv.ts","../../hooks/use-on-import-excel.ts","../../hooks/use-on-insert-autosum.ts","../../hooks/use-on-insert-cells-shift-down.ts","../../hooks/use-on-insert-cells-shift-right.ts","../../hooks/use-on-insert-checkbox.ts","../../hooks/use-on-insert-column.ts","../../hooks/use-on-insert-date-time.ts","../../hooks/use-on-insert-date.ts","../../hooks/use-on-insert-image.ts","../../hooks/use-on-insert-link.ts","../../hooks/use-on-insert-note.ts","../../hooks/use-on-insert-row.ts","../../hooks/use-on-insert-table-row.ts","../../hooks/use-on-insert-time.ts","../../hooks/use-on-locale-change.ts","../../hooks/use-on-merge-unmerge-cells.ts","../../hooks/use-on-move-columns.ts","../../hooks/use-on-move-rows.ts","../../hooks/use-on-move-selection.ts","../../hooks/use-on-move-sheet.ts","../../hooks/use-on-move-table-columns.ts","../../hooks/use-on-paste.ts","../../hooks/use-on-protect-range.ts","../../hooks/use-on-protect-sheet.ts","../../hooks/use-on-remove-duplicates.ts","../../hooks/use-on-rename-sheet.ts","../../hooks/use-on-request-calculate-wrapper.ts","../../hooks/use-on-request-conditional-format.ts","../../hooks/use-on-request-create-table.ts","../../hooks/use-on-request-data-validation.ts","../../hooks/use-on-request-define-named-range.ts","../../hooks/use-on-request-delete-sheet.ts","../../hooks/use-on-request-edit-table.ts","../../hooks/use-on-request-format-cells.ts","../../hooks/use-on-request-insert-image.ts","../../hooks/use-on-request-insert-link.ts","../../hooks/use-on-request-insert-slicer.ts","../../hooks/use-on-request-resize-table.ts","../../hooks/use-on-request-resize.ts","../../hooks/use-on-request-update-named-range.ts","../../hooks/use-on-resize-table.ts","../../hooks/use-on-resize.ts","../../hooks/use-on-set-outline-depth.ts","../../hooks/use-on-show-column.ts","../../hooks/use-on-show-row.ts","../../hooks/use-on-sort-column.ts","../../hooks/use-on-sort-range.ts","../../hooks/use-on-sort-table.ts","../../hooks/use-on-subtotal.ts","../../hooks/use-on-table.ts","../../hooks/use-on-trace-dependents-precedents.tsx","../../hooks/use-on-undo-calculated-column.ts","../../hooks/use-on-undo-table-auto-expansion.ts","../../hooks/use-on-ungroup-columns.ts","../../hooks/use-on-ungroup-rows.ts","../../hooks/use-on-update-named-range.ts","../../hooks/use-on-update-note.ts","../../hooks/use-on-update-sheet.ts","../../hooks/use-paint-format.ts","../../hooks/use-search.ts","../../hooks/use-select-next-prev-sheet.ts","../../hooks/use-sheet-observer.ts","../../hooks/use-sheet-properties.ts","../../hooks/use-sheet-state.ts","../../hooks/use-sheetdata-subscriber.ts","../../hooks/use-slicers.ts","../../hooks/use-sparkline-groups.ts","../../hooks/use-split-text-to-columns.ts","../../hooks/use-spreadsheet-state.ts","../../hooks/use-ss-registry.ts","../../hooks/use-structured-reference.ts","../../hooks/use-undo-redo-actions.ts","../../hooks/use-undo-redo.ts","../../hooks/utils/frozen-sort.ts","../../hooks/utils/sort-rows.ts","../../interface/apply-fill.ts","../../interface/auto-resize.ts","../../interface/calculation-interface.ts","../../interface/change-batch-stream.ts","../../interface/change-batch.ts","../../interface/change-border.ts","../../interface/change-calculated-column.ts","../../interface/change-decimals.ts","../../interface/change-formatting.ts","../../interface/change-sheet-tabcolor.ts","../../interface/change-table-column.ts","../../interface/change-theme.ts","../../interface/chart-extensions.ts","../../interface/citations.ts","../../interface/clear-formatting.ts","../../interface/conditional-formatting-rules.ts","../../interface/create-table.ts","../../interface/data-validation-rules.ts","../../interface/data-validation-utils.ts","../../interface/delete-cells-shift-left.ts","../../interface/delete-cells-shift-up.ts","../../interface/delete-cells.ts","../../interface/delete-column.ts","../../interface/delete-row.ts","../../interface/delete-sheet.ts","../../interface/delete-table-column.ts","../../interface/delete-table-row.ts","../../interface/duplicate-sheet.ts","../../interface/embeds.ts","../../interface/freeze.ts","../../interface/helpers.ts","../../interface/hide-column.ts","../../interface/hide-row.ts","../../interface/indent.ts","../../interface/insert-cells-shift-down.ts","../../interface/insert-cells-shift-right.ts","../../interface/insert-column.ts","../../interface/insert-note.ts","../../interface/insert-row.ts","../../interface/insert-table-row.ts","../../interface/interface-cli.ts","../../interface/named-range-operations.ts","../../interface/new-sheet.ts","../../interface/pivot-extensions.ts","../../interface/remove-duplicates.ts","../../interface/remove-table.ts","../../interface/resize-utils.ts","../../interface/resize.ts","../../interface/sheet-order.ts","../../interface/slicers.ts","../../interface/split-text.ts","../../interface/spreadsheet-interface.ts","../../interface/table-totalrow.ts","../../interface/table-utils.ts","../../interface/update-sheet.ts","../../interface/update-table.ts","../../validation-schema/table.schema.ts"],"version":"5.8.3"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rowsncolumns/spreadsheet-state",
|
|
3
|
-
"version": "29.1.
|
|
3
|
+
"version": "29.1.13",
|
|
4
4
|
"main": "./dist/cjs/index.js",
|
|
5
5
|
"module": "./dist/esm/index.js",
|
|
6
6
|
"types": "./dist/esm/index.d.ts",
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
"@rowsncolumns/calculator": ">=7.3.0",
|
|
58
58
|
"@rowsncolumns/common-types": ">=5.2.33",
|
|
59
59
|
"@rowsncolumns/dag": ">=7.2.30",
|
|
60
|
-
"@rowsncolumns/fast-formula-parser": "6.2.
|
|
60
|
+
"@rowsncolumns/fast-formula-parser": "6.2.44",
|
|
61
61
|
"@rowsncolumns/grid": ">=13.2.33",
|
|
62
62
|
"@rowsncolumns/icons": ">=7.2.32",
|
|
63
63
|
"@rowsncolumns/pivot": ">=11.0.0",
|
|
@@ -72,21 +72,21 @@
|
|
|
72
72
|
}
|
|
73
73
|
},
|
|
74
74
|
"devDependencies": {
|
|
75
|
-
"@rowsncolumns/calculator": ">=7.3.
|
|
75
|
+
"@rowsncolumns/calculator": ">=7.3.2",
|
|
76
76
|
"@rowsncolumns/common-types": ">=5.3.2",
|
|
77
77
|
"@rowsncolumns/dag": ">=7.2.31",
|
|
78
|
-
"@rowsncolumns/fast-formula-parser": ">=6.2.
|
|
79
|
-
"@rowsncolumns/grid": ">=13.2.
|
|
78
|
+
"@rowsncolumns/fast-formula-parser": ">=6.2.44",
|
|
79
|
+
"@rowsncolumns/grid": ">=13.2.36",
|
|
80
80
|
"@rowsncolumns/icons": ">=7.2.33",
|
|
81
|
-
"@rowsncolumns/spreadsheet": ">=10.5.
|
|
82
|
-
"@rowsncolumns/ui": ">=16.0
|
|
83
|
-
"@rowsncolumns/utils": ">=9.5.
|
|
81
|
+
"@rowsncolumns/spreadsheet": ">=10.5.6",
|
|
82
|
+
"@rowsncolumns/ui": ">=16.1.0",
|
|
83
|
+
"@rowsncolumns/utils": ">=9.5.6"
|
|
84
84
|
},
|
|
85
85
|
"dependencies": {
|
|
86
86
|
"@rowsncolumns/calculation-worker": ">=10.0.1",
|
|
87
87
|
"@rowsncolumns/date-parser": ">=13.0.4",
|
|
88
|
-
"@rowsncolumns/functions": ">=15.0
|
|
89
|
-
"@rowsncolumns/toolkit": ">=24.5.
|
|
88
|
+
"@rowsncolumns/functions": ">=15.1.0",
|
|
89
|
+
"@rowsncolumns/toolkit": ">=24.5.15",
|
|
90
90
|
"formik": "^2.4.6",
|
|
91
91
|
"immer": "^10.1.1",
|
|
92
92
|
"jotai": "^2.12.4",
|