@bilig/headless 0.1.102 → 0.2.0
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/change-order.js +11 -0
- package/dist/change-order.js.map +1 -1
- package/dist/tracked-cell-index-changes.d.ts +12 -0
- package/dist/tracked-cell-index-changes.js +211 -0
- package/dist/tracked-cell-index-changes.js.map +1 -0
- package/dist/work-paper-runtime.d.ts +1 -1
- package/dist/work-paper-runtime.js +171 -75
- package/dist/work-paper-runtime.js.map +1 -1
- package/package.json +4 -4
package/dist/change-order.js
CHANGED
|
@@ -14,6 +14,9 @@ export function orderWorkPaperCellChanges(changes, sheets, explicitChangedCount)
|
|
|
14
14
|
if (isSortedCellChangeSlice(changes, compare, 0, changes.length)) {
|
|
15
15
|
return changes;
|
|
16
16
|
}
|
|
17
|
+
if (isReverseSortedCellChangeSlice(changes, compare, 0, changes.length)) {
|
|
18
|
+
return changes.toReversed();
|
|
19
|
+
}
|
|
17
20
|
return changes.toSorted(compare);
|
|
18
21
|
}
|
|
19
22
|
function compareSingleSheetCellChanges(left, right) {
|
|
@@ -41,6 +44,14 @@ function isSortedCellChangeSlice(changes, compare, start, end) {
|
|
|
41
44
|
}
|
|
42
45
|
return true;
|
|
43
46
|
}
|
|
47
|
+
function isReverseSortedCellChangeSlice(changes, compare, start, end) {
|
|
48
|
+
for (let index = start + 1; index < end; index += 1) {
|
|
49
|
+
if (compare(changes[index - 1], changes[index]) < 0) {
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
44
55
|
function mergeSortedCellChangeSlices(changes, compare, split) {
|
|
45
56
|
const merged = [];
|
|
46
57
|
let leftIndex = 0;
|
package/dist/change-order.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-order.js","sourceRoot":"","sources":["../src/change-order.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"change-order.js","sourceRoot":"","sources":["../src/change-order.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { SpreadsheetEngine } from '@bilig/core';
|
|
2
|
+
import type { WorkPaperCellChange } from './work-paper-types.js';
|
|
3
|
+
export interface MaterializedTrackedIndexChanges {
|
|
4
|
+
readonly changes: readonly WorkPaperCellChange[];
|
|
5
|
+
readonly ordered: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare function materializeTrackedIndexChangesWithMetadata(engine: SpreadsheetEngine, changedCellIndices: readonly number[] | Uint32Array, options?: {
|
|
8
|
+
readonly explicitChangedCount?: number;
|
|
9
|
+
}): MaterializedTrackedIndexChanges;
|
|
10
|
+
export declare function materializeTrackedIndexChanges(engine: SpreadsheetEngine, changedCellIndices: readonly number[] | Uint32Array, options?: {
|
|
11
|
+
readonly explicitChangedCount?: number;
|
|
12
|
+
}): readonly WorkPaperCellChange[];
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import { indexToColumn } from '@bilig/formula';
|
|
2
|
+
import { ValueTag } from '@bilig/protocol';
|
|
3
|
+
export function materializeTrackedIndexChangesWithMetadata(engine, changedCellIndices, options = {}) {
|
|
4
|
+
if (changedCellIndices.length === 0) {
|
|
5
|
+
return { changes: [], ordered: true };
|
|
6
|
+
}
|
|
7
|
+
const workbook = engine.workbook;
|
|
8
|
+
const cellStore = workbook.cellStore;
|
|
9
|
+
const columnLabels = [];
|
|
10
|
+
const formatAddressCached = (row, col) => {
|
|
11
|
+
let label = columnLabels[col];
|
|
12
|
+
if (label === undefined) {
|
|
13
|
+
label = indexToColumn(col);
|
|
14
|
+
columnLabels[col] = label;
|
|
15
|
+
}
|
|
16
|
+
return `${label}${row + 1}`;
|
|
17
|
+
};
|
|
18
|
+
let firstSheetId;
|
|
19
|
+
for (let index = 0; index < changedCellIndices.length; index += 1) {
|
|
20
|
+
const sheetId = cellStore.sheetIds[changedCellIndices[index]];
|
|
21
|
+
if (sheetId !== undefined) {
|
|
22
|
+
firstSheetId = sheetId;
|
|
23
|
+
break;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
if (firstSheetId === undefined) {
|
|
27
|
+
return { changes: [], ordered: true };
|
|
28
|
+
}
|
|
29
|
+
let isSingleSheetChangeSet = true;
|
|
30
|
+
for (let index = 0; index < changedCellIndices.length; index += 1) {
|
|
31
|
+
const sheetId = cellStore.sheetIds[changedCellIndices[index]];
|
|
32
|
+
if (sheetId !== undefined && sheetId !== firstSheetId) {
|
|
33
|
+
isSingleSheetChangeSet = false;
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
const changes = [];
|
|
38
|
+
if (isSingleSheetChangeSet) {
|
|
39
|
+
const sheet = workbook.getSheetById(firstSheetId);
|
|
40
|
+
const sheetName = sheet?.name ?? workbook.getSheetNameById(firstSheetId);
|
|
41
|
+
const isPhysicalSheet = !sheet || sheet.structureVersion === 1;
|
|
42
|
+
const split = options.explicitChangedCount;
|
|
43
|
+
if (isPhysicalSheet &&
|
|
44
|
+
split !== undefined &&
|
|
45
|
+
split > 0 &&
|
|
46
|
+
split < changedCellIndices.length &&
|
|
47
|
+
isTrackedIndexSliceSorted(cellStore, changedCellIndices, 0, split) &&
|
|
48
|
+
isTrackedIndexSliceSorted(cellStore, changedCellIndices, split, changedCellIndices.length)) {
|
|
49
|
+
let explicitIndex = 0;
|
|
50
|
+
let recalculatedIndex = split;
|
|
51
|
+
while (explicitIndex < split && recalculatedIndex < changedCellIndices.length) {
|
|
52
|
+
const explicitCellIndex = changedCellIndices[explicitIndex];
|
|
53
|
+
const recalculatedCellIndex = changedCellIndices[recalculatedIndex];
|
|
54
|
+
if (compareTrackedPhysicalCellIndices(cellStore, explicitCellIndex, recalculatedCellIndex) <= 0) {
|
|
55
|
+
changes.push(readPhysicalTrackedIndexChange(explicitCellIndex, firstSheetId, sheetName, cellStore, engine, formatAddressCached));
|
|
56
|
+
explicitIndex += 1;
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
changes.push(readPhysicalTrackedIndexChange(recalculatedCellIndex, firstSheetId, sheetName, cellStore, engine, formatAddressCached));
|
|
60
|
+
recalculatedIndex += 1;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
while (explicitIndex < split) {
|
|
64
|
+
changes.push(readPhysicalTrackedIndexChange(changedCellIndices[explicitIndex], firstSheetId, sheetName, cellStore, engine, formatAddressCached));
|
|
65
|
+
explicitIndex += 1;
|
|
66
|
+
}
|
|
67
|
+
while (recalculatedIndex < changedCellIndices.length) {
|
|
68
|
+
changes.push(readPhysicalTrackedIndexChange(changedCellIndices[recalculatedIndex], firstSheetId, sheetName, cellStore, engine, formatAddressCached));
|
|
69
|
+
recalculatedIndex += 1;
|
|
70
|
+
}
|
|
71
|
+
return { changes, ordered: true };
|
|
72
|
+
}
|
|
73
|
+
let ordered = true;
|
|
74
|
+
let previousRow = -1;
|
|
75
|
+
let previousCol = -1;
|
|
76
|
+
for (let index = 0; index < changedCellIndices.length; index += 1) {
|
|
77
|
+
const cellIndex = changedCellIndices[index];
|
|
78
|
+
if (cellStore.sheetIds[cellIndex] !== firstSheetId) {
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
let row;
|
|
82
|
+
let col;
|
|
83
|
+
if (isPhysicalSheet) {
|
|
84
|
+
row = cellStore.rows[cellIndex];
|
|
85
|
+
col = cellStore.cols[cellIndex];
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
const position = workbook.getCellPosition(cellIndex);
|
|
89
|
+
/* v8 ignore next -- defensive guard for stale logical indices without visible positions. */
|
|
90
|
+
if (!position) {
|
|
91
|
+
continue;
|
|
92
|
+
}
|
|
93
|
+
row = position.row;
|
|
94
|
+
col = position.col;
|
|
95
|
+
}
|
|
96
|
+
if (row < previousRow || (row === previousRow && col < previousCol)) {
|
|
97
|
+
ordered = false;
|
|
98
|
+
}
|
|
99
|
+
changes.push({
|
|
100
|
+
kind: 'cell',
|
|
101
|
+
address: { sheet: firstSheetId, row, col },
|
|
102
|
+
sheetName,
|
|
103
|
+
a1: formatAddressCached(row, col),
|
|
104
|
+
newValue: readTrackedCellValue(cellStore, cellIndex, engine),
|
|
105
|
+
});
|
|
106
|
+
previousRow = row;
|
|
107
|
+
previousCol = col;
|
|
108
|
+
}
|
|
109
|
+
return { changes, ordered };
|
|
110
|
+
}
|
|
111
|
+
const sheetNames = new Map();
|
|
112
|
+
const physicalSheetIds = new Set();
|
|
113
|
+
let ordered = true;
|
|
114
|
+
let previousSheetOrder = -1;
|
|
115
|
+
let previousRow = -1;
|
|
116
|
+
let previousCol = -1;
|
|
117
|
+
for (let index = 0; index < changedCellIndices.length; index += 1) {
|
|
118
|
+
const cellIndex = changedCellIndices[index];
|
|
119
|
+
const sheetId = cellStore.sheetIds[cellIndex];
|
|
120
|
+
if (sheetId === undefined) {
|
|
121
|
+
continue;
|
|
122
|
+
}
|
|
123
|
+
let sheetName = sheetNames.get(sheetId);
|
|
124
|
+
let sheetOrder = 0;
|
|
125
|
+
if (sheetName === undefined) {
|
|
126
|
+
const sheet = workbook.getSheetById(sheetId);
|
|
127
|
+
sheetName = sheet?.name ?? workbook.getSheetNameById(sheetId);
|
|
128
|
+
sheetOrder = sheet?.order ?? 0;
|
|
129
|
+
sheetNames.set(sheetId, sheetName);
|
|
130
|
+
if (!sheet || sheet.structureVersion === 1) {
|
|
131
|
+
physicalSheetIds.add(sheetId);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
sheetOrder = workbook.getSheetById(sheetId)?.order ?? 0;
|
|
136
|
+
}
|
|
137
|
+
let row;
|
|
138
|
+
let col;
|
|
139
|
+
if (physicalSheetIds.has(sheetId)) {
|
|
140
|
+
row = cellStore.rows[cellIndex];
|
|
141
|
+
col = cellStore.cols[cellIndex];
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
const position = workbook.getCellPosition(cellIndex);
|
|
145
|
+
/* v8 ignore next -- defensive guard for stale logical indices without visible positions. */
|
|
146
|
+
if (!position) {
|
|
147
|
+
continue;
|
|
148
|
+
}
|
|
149
|
+
row = position.row;
|
|
150
|
+
col = position.col;
|
|
151
|
+
}
|
|
152
|
+
if (sheetOrder < previousSheetOrder ||
|
|
153
|
+
(sheetOrder === previousSheetOrder && (row < previousRow || (row === previousRow && col < previousCol)))) {
|
|
154
|
+
ordered = false;
|
|
155
|
+
}
|
|
156
|
+
changes.push({
|
|
157
|
+
kind: 'cell',
|
|
158
|
+
address: { sheet: sheetId, row, col },
|
|
159
|
+
sheetName,
|
|
160
|
+
a1: formatAddressCached(row, col),
|
|
161
|
+
newValue: readTrackedCellValue(cellStore, cellIndex, engine),
|
|
162
|
+
});
|
|
163
|
+
previousSheetOrder = sheetOrder;
|
|
164
|
+
previousRow = row;
|
|
165
|
+
previousCol = col;
|
|
166
|
+
}
|
|
167
|
+
return { changes, ordered };
|
|
168
|
+
}
|
|
169
|
+
export function materializeTrackedIndexChanges(engine, changedCellIndices, options = {}) {
|
|
170
|
+
return materializeTrackedIndexChangesWithMetadata(engine, changedCellIndices, options).changes;
|
|
171
|
+
}
|
|
172
|
+
function readTrackedCellValue(cellStore, cellIndex, engine) {
|
|
173
|
+
const tag = cellStore.tags[cellIndex] ?? ValueTag.Empty;
|
|
174
|
+
switch (tag) {
|
|
175
|
+
case ValueTag.Number:
|
|
176
|
+
return { tag: ValueTag.Number, value: cellStore.numbers[cellIndex] ?? 0 };
|
|
177
|
+
case ValueTag.Boolean:
|
|
178
|
+
return { tag: ValueTag.Boolean, value: (cellStore.numbers[cellIndex] ?? 0) !== 0 };
|
|
179
|
+
case ValueTag.String:
|
|
180
|
+
return cellStore.getValue(cellIndex, (stringId) => engine.strings.get(stringId));
|
|
181
|
+
case ValueTag.Error:
|
|
182
|
+
return { tag: ValueTag.Error, code: cellStore.errors[cellIndex] };
|
|
183
|
+
case ValueTag.Empty:
|
|
184
|
+
default:
|
|
185
|
+
return { tag: ValueTag.Empty };
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
function compareTrackedPhysicalCellIndices(cellStore, leftCellIndex, rightCellIndex) {
|
|
189
|
+
return ((cellStore.rows[leftCellIndex] ?? 0) - (cellStore.rows[rightCellIndex] ?? 0) ||
|
|
190
|
+
(cellStore.cols[leftCellIndex] ?? 0) - (cellStore.cols[rightCellIndex] ?? 0));
|
|
191
|
+
}
|
|
192
|
+
function isTrackedIndexSliceSorted(cellStore, changedCellIndices, start, end) {
|
|
193
|
+
for (let index = start + 1; index < end; index += 1) {
|
|
194
|
+
if (compareTrackedPhysicalCellIndices(cellStore, changedCellIndices[index - 1], changedCellIndices[index]) > 0) {
|
|
195
|
+
return false;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
return true;
|
|
199
|
+
}
|
|
200
|
+
function readPhysicalTrackedIndexChange(cellIndex, sheetId, sheetName, cellStore, engine, formatAddressCached) {
|
|
201
|
+
const row = cellStore.rows[cellIndex];
|
|
202
|
+
const col = cellStore.cols[cellIndex];
|
|
203
|
+
return {
|
|
204
|
+
kind: 'cell',
|
|
205
|
+
address: { sheet: sheetId, row, col },
|
|
206
|
+
sheetName,
|
|
207
|
+
a1: formatAddressCached(row, col),
|
|
208
|
+
newValue: readTrackedCellValue(cellStore, cellIndex, engine),
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
//# sourceMappingURL=tracked-cell-index-changes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracked-cell-index-changes.js","sourceRoot":"","sources":["../src/tracked-cell-index-changes.ts"],"names":[],"mappings":"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"}
|
|
@@ -224,8 +224,8 @@ export declare class WorkPaper {
|
|
|
224
224
|
private captureVisibilitySnapshot;
|
|
225
225
|
private captureNamedExpressionValueSnapshot;
|
|
226
226
|
private computeCellChanges;
|
|
227
|
-
private readTrackedCellChange;
|
|
228
227
|
private materializeTrackedEventChanges;
|
|
228
|
+
private readSingleTrackedCellChange;
|
|
229
229
|
private computeCellChangesFromTrackedEvents;
|
|
230
230
|
private computeNamedExpressionChanges;
|
|
231
231
|
private canUseTrackedStructuralFastPath;
|