@dxos/plugin-sheet 0.8.4-main.5ea62a8 → 0.8.4-main.72ec0f3
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/lib/browser/{SheetContainer-CWSO5WTN.mjs → SheetContainer-66BNB3XG.mjs} +26 -27
- package/dist/lib/browser/SheetContainer-66BNB3XG.mjs.map +7 -0
- package/dist/lib/browser/anchor-sort-FCQ5OZZK.mjs +23 -0
- package/dist/lib/browser/anchor-sort-FCQ5OZZK.mjs.map +7 -0
- package/dist/lib/browser/{chunk-KJWZUQVA.mjs → chunk-73AV3NH6.mjs} +4 -4
- package/dist/lib/browser/chunk-73AV3NH6.mjs.map +7 -0
- package/dist/lib/browser/{chunk-CL3MDNKQ.mjs → chunk-7VEWYJJN.mjs} +5 -5
- package/dist/lib/browser/chunk-7VEWYJJN.mjs.map +7 -0
- package/dist/lib/browser/{chunk-XSXUU6FO.mjs → chunk-DVJ3QW3F.mjs} +222 -221
- package/dist/lib/browser/chunk-DVJ3QW3F.mjs.map +7 -0
- package/dist/lib/browser/chunk-FWFAAGXL.mjs +28 -0
- package/dist/lib/browser/chunk-FWFAAGXL.mjs.map +7 -0
- package/dist/lib/browser/{chunk-Q3VBLCSM.mjs → chunk-OU5KTWY3.mjs} +35 -34
- package/dist/lib/browser/chunk-OU5KTWY3.mjs.map +7 -0
- package/dist/lib/browser/compute-graph-registry-AP5RA7W3.mjs +21 -0
- package/dist/lib/browser/compute-graph-registry-AP5RA7W3.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +20 -21
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-ROEY4LHM.mjs → intent-resolver-66OAYVQF.mjs} +9 -9
- package/dist/lib/browser/intent-resolver-66OAYVQF.mjs.map +7 -0
- package/dist/lib/browser/{markdown-VMNYPXTQ.mjs → markdown-B6VKYY2S.mjs} +6 -6
- package/dist/lib/browser/{markdown-VMNYPXTQ.mjs.map → markdown-B6VKYY2S.mjs.map} +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-2ES3D7MJ.mjs → react-surface-5GYLVSMR.mjs} +16 -15
- package/dist/lib/browser/react-surface-5GYLVSMR.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +4 -12
- package/dist/lib/node-esm/{SheetContainer-3RSDBWDG.mjs → SheetContainer-NWEQETAY.mjs} +26 -27
- package/dist/lib/node-esm/SheetContainer-NWEQETAY.mjs.map +7 -0
- package/dist/lib/node-esm/{anchor-sort-ACQDUIPU.mjs → anchor-sort-ZE7IS7SH.mjs} +10 -11
- package/dist/lib/node-esm/anchor-sort-ZE7IS7SH.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-6SK5LJ5S.mjs → chunk-44YTKTMP.mjs} +4 -4
- package/dist/lib/node-esm/chunk-44YTKTMP.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-ODP4L4OV.mjs → chunk-4H2EHVWE.mjs} +222 -221
- package/dist/lib/node-esm/chunk-4H2EHVWE.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-LUCRXSK6.mjs → chunk-4MT3JJU2.mjs} +35 -34
- package/dist/lib/node-esm/chunk-4MT3JJU2.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-ZIQZU4CH.mjs → chunk-4QV4AGWK.mjs} +5 -5
- package/dist/lib/node-esm/chunk-4QV4AGWK.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-HILDMVPL.mjs +29 -0
- package/dist/lib/node-esm/chunk-HILDMVPL.mjs.map +7 -0
- package/dist/lib/node-esm/compute-graph-registry-UMQ5UYCL.mjs +22 -0
- package/dist/lib/node-esm/compute-graph-registry-UMQ5UYCL.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +20 -21
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-HESRI2ML.mjs → intent-resolver-VNKIMQQT.mjs} +9 -9
- package/dist/lib/node-esm/intent-resolver-VNKIMQQT.mjs.map +7 -0
- package/dist/lib/node-esm/{markdown-SCOTGSWB.mjs → markdown-VKY7HXU2.mjs} +6 -6
- package/dist/lib/node-esm/{markdown-SCOTGSWB.mjs.map → markdown-VKY7HXU2.mjs.map} +1 -1
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-66VS5MY2.mjs → react-surface-RK32YZWR.mjs} +16 -15
- package/dist/lib/node-esm/react-surface-RK32YZWR.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +4 -12
- package/dist/types/src/SheetPlugin.d.ts +1 -1
- package/dist/types/src/SheetPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/anchor-sort.d.ts +2 -4
- package/dist/types/src/capabilities/anchor-sort.d.ts.map +1 -1
- package/dist/types/src/capabilities/compute-graph-registry.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts +1 -4
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/components/ComputeGraph/compute-graph.stories.d.ts +0 -1
- package/dist/types/src/components/ComputeGraph/compute-graph.stories.d.ts.map +1 -1
- package/dist/types/src/components/GridSheet/GridSheet.d.ts.map +1 -1
- package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts +3 -3
- package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts.map +1 -1
- package/dist/types/src/components/GridSheet/SheetCellEditor.stories.d.ts +2 -4
- package/dist/types/src/components/GridSheet/SheetCellEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/GridSheet/util.d.ts.map +1 -1
- package/dist/types/src/components/RangeList/RangeList.d.ts +2 -2
- package/dist/types/src/components/RangeList/RangeList.d.ts.map +1 -1
- package/dist/types/src/components/SheetContainer/SheetContainer.d.ts +2 -2
- package/dist/types/src/components/SheetContainer/SheetContainer.d.ts.map +1 -1
- package/dist/types/src/components/SheetContainer/SheetContainer.stories.d.ts +5 -5
- package/dist/types/src/components/SheetContainer/SheetContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/SheetContext/SheetContext.d.ts +2 -2
- package/dist/types/src/components/SheetContext/SheetContext.d.ts.map +1 -1
- package/dist/types/src/components/SheetToolbar/SheetToolbar.d.ts +3 -4
- package/dist/types/src/components/SheetToolbar/SheetToolbar.d.ts.map +1 -1
- package/dist/types/src/components/SheetToolbar/SheetToolbar.stories.d.ts +1 -2
- package/dist/types/src/components/SheetToolbar/SheetToolbar.stories.d.ts.map +1 -1
- package/dist/types/src/extensions/compute.d.ts +1 -1
- package/dist/types/src/extensions/compute.d.ts.map +1 -1
- package/dist/types/src/extensions/compute.stories.d.ts +2 -3
- package/dist/types/src/extensions/compute.stories.d.ts.map +1 -1
- package/dist/types/src/integrations/thread-ranges.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +0 -1
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/model/sheet-model.d.ts +5 -5
- package/dist/types/src/model/sheet-model.d.ts.map +1 -1
- package/dist/types/src/model/testing.d.ts +2 -2
- package/dist/types/src/model/testing.d.ts.map +1 -1
- package/dist/types/src/model/useSheetModel.d.ts +2 -2
- package/dist/types/src/model/useSheetModel.d.ts.map +1 -1
- package/dist/types/src/serializer.d.ts +2 -2
- package/dist/types/src/serializer.d.ts.map +1 -1
- package/dist/types/src/testing/data.d.ts +2 -2
- package/dist/types/src/testing/data.d.ts.map +1 -1
- package/dist/types/src/testing/testing.d.ts +27 -3
- package/dist/types/src/testing/testing.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +2 -2
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/{schema.d.ts → Sheet.d.ts} +37 -4
- package/dist/types/src/types/Sheet.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +1 -1
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/src/types/sheet-range-types.d.ts +2 -2
- package/dist/types/src/types/sheet-range-types.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +7 -16
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/types/util.d.ts +9 -10
- package/dist/types/src/types/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +65 -64
- package/src/SheetPlugin.tsx +70 -61
- package/src/capabilities/anchor-sort.ts +7 -8
- package/src/capabilities/capabilities.ts +2 -2
- package/src/capabilities/compute-graph-registry.ts +8 -13
- package/src/capabilities/intent-resolver.ts +4 -4
- package/src/capabilities/react-surface.tsx +9 -8
- package/src/components/ComputeGraph/compute-graph.stories.tsx +10 -12
- package/src/components/FunctionEditor/FunctionEditor.tsx +2 -2
- package/src/components/GridSheet/GridSheet.stories.tsx +12 -9
- package/src/components/GridSheet/GridSheet.tsx +22 -10
- package/src/components/GridSheet/SheetCellEditor.stories.tsx +14 -17
- package/src/components/GridSheet/util.ts +9 -3
- package/src/components/RangeList/RangeList.tsx +8 -8
- package/src/components/SheetContainer/SheetContainer.stories.tsx +46 -45
- package/src/components/SheetContainer/SheetContainer.tsx +10 -5
- package/src/components/SheetContext/SheetContext.tsx +4 -4
- package/src/components/SheetToolbar/SheetToolbar.stories.tsx +9 -6
- package/src/components/SheetToolbar/SheetToolbar.tsx +17 -19
- package/src/components/SheetToolbar/align.ts +3 -3
- package/src/components/SheetToolbar/style.ts +2 -2
- package/src/extensions/compute.stories.tsx +18 -15
- package/src/extensions/compute.ts +1 -2
- package/src/integrations/thread-ranges.ts +15 -20
- package/src/meta.ts +7 -5
- package/src/model/sheet-model.test.ts +4 -4
- package/src/model/sheet-model.ts +4 -4
- package/src/model/testing.ts +4 -4
- package/src/model/useSheetModel.ts +2 -2
- package/src/sanity.test.ts +3 -4
- package/src/serializer.ts +3 -3
- package/src/testing/data.ts +2 -2
- package/src/testing/testing.tsx +11 -5
- package/src/translations.ts +2 -2
- package/src/types/Sheet.ts +103 -0
- package/src/types/index.ts +1 -1
- package/src/types/sheet-range-types.ts +2 -2
- package/src/types/types.ts +6 -16
- package/src/types/util.ts +10 -38
- package/dist/lib/browser/SheetContainer-CWSO5WTN.mjs.map +0 -7
- package/dist/lib/browser/anchor-sort-7WD2VGXW.mjs +0 -24
- package/dist/lib/browser/anchor-sort-7WD2VGXW.mjs.map +0 -7
- package/dist/lib/browser/chunk-6AKBCBL4.mjs +0 -18
- package/dist/lib/browser/chunk-6AKBCBL4.mjs.map +0 -7
- package/dist/lib/browser/chunk-CL3MDNKQ.mjs.map +0 -7
- package/dist/lib/browser/chunk-KJWZUQVA.mjs.map +0 -7
- package/dist/lib/browser/chunk-Q3VBLCSM.mjs.map +0 -7
- package/dist/lib/browser/chunk-XSXUU6FO.mjs.map +0 -7
- package/dist/lib/browser/compute-graph-registry-6YJHXORG.mjs +0 -30
- package/dist/lib/browser/compute-graph-registry-6YJHXORG.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-ROEY4LHM.mjs.map +0 -7
- package/dist/lib/browser/react-surface-2ES3D7MJ.mjs.map +0 -7
- package/dist/lib/node-esm/SheetContainer-3RSDBWDG.mjs.map +0 -7
- package/dist/lib/node-esm/anchor-sort-ACQDUIPU.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-3K5VNYOF.mjs +0 -20
- package/dist/lib/node-esm/chunk-3K5VNYOF.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-6SK5LJ5S.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-LUCRXSK6.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-ODP4L4OV.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-ZIQZU4CH.mjs.map +0 -7
- package/dist/lib/node-esm/compute-graph-registry-ET5KJNLV.mjs +0 -31
- package/dist/lib/node-esm/compute-graph-registry-ET5KJNLV.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-HESRI2ML.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-66VS5MY2.mjs.map +0 -7
- package/dist/types/src/types/schema.d.ts.map +0 -1
- package/src/types/schema.ts +0 -61
|
@@ -1,11 +1,128 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
__export,
|
|
4
|
+
meta
|
|
5
|
+
} from "./chunk-HILDMVPL.mjs";
|
|
5
6
|
|
|
6
|
-
// src/types/
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
// src/types/Sheet.ts
|
|
8
|
+
var Sheet_exports = {};
|
|
9
|
+
__export(Sheet_exports, {
|
|
10
|
+
CellValue: () => CellValue,
|
|
11
|
+
Range: () => Range,
|
|
12
|
+
RowColumnMeta: () => RowColumnMeta,
|
|
13
|
+
Sheet: () => Sheet,
|
|
14
|
+
make: () => make
|
|
15
|
+
});
|
|
16
|
+
import * as Schema from "effect/Schema";
|
|
17
|
+
import { addressFromA1Notation as addressFromA1Notation2, isFormula as isFormula2 } from "@dxos/compute";
|
|
18
|
+
import { Obj, Type } from "@dxos/echo";
|
|
19
|
+
import { FormAnnotation } from "@dxos/echo/internal";
|
|
20
|
+
|
|
21
|
+
// src/types/util.ts
|
|
22
|
+
import { addressFromA1Notation, addressToA1Notation, isFormula } from "@dxos/compute";
|
|
23
|
+
import { randomBytes } from "@dxos/crypto";
|
|
24
|
+
import { invariant } from "@dxos/invariant";
|
|
25
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-sheet/src/types/util.ts";
|
|
26
|
+
var MAX_ROWS = 500;
|
|
27
|
+
var MAX_COLS = 676;
|
|
28
|
+
var DEFAULT_ROWS = 50;
|
|
29
|
+
var DEFAULT_COLS = 26;
|
|
30
|
+
var ApiError = class extends Error {
|
|
31
|
+
};
|
|
32
|
+
var ReadonlyException = class extends ApiError {
|
|
33
|
+
};
|
|
34
|
+
var RangeException = class extends ApiError {
|
|
35
|
+
constructor(n) {
|
|
36
|
+
super();
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
var createIndex = (length = 8) => {
|
|
40
|
+
const characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
|
|
41
|
+
const charactersLength = characters.length;
|
|
42
|
+
const randomBuffer = randomBytes(length);
|
|
43
|
+
return Array.from(randomBuffer, (byte) => characters[byte % charactersLength]).join("");
|
|
44
|
+
};
|
|
45
|
+
var createIndices = (length) => Array.from({
|
|
46
|
+
length
|
|
47
|
+
}).map(() => createIndex());
|
|
48
|
+
var insertIndices = (indices, i, n, max) => {
|
|
49
|
+
if (i + n > max) {
|
|
50
|
+
throw new RangeException(i + n);
|
|
51
|
+
}
|
|
52
|
+
const idx = createIndices(n);
|
|
53
|
+
indices.splice(i, 0, ...idx);
|
|
54
|
+
return idx;
|
|
55
|
+
};
|
|
56
|
+
var initialize = (sheet, { rows = DEFAULT_ROWS, columns = DEFAULT_COLS } = {}) => {
|
|
57
|
+
if (!sheet.rows.length) {
|
|
58
|
+
insertIndices(sheet.rows, 0, rows, MAX_ROWS);
|
|
59
|
+
}
|
|
60
|
+
if (!sheet.columns.length) {
|
|
61
|
+
insertIndices(sheet.columns, 0, columns, MAX_COLS);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
var addressToIndex = (sheet, cell) => {
|
|
65
|
+
return `${sheet.columns[cell.col]}@${sheet.rows[cell.row]}`;
|
|
66
|
+
};
|
|
67
|
+
var addressFromIndex = (sheet, idx) => {
|
|
68
|
+
const [column, row] = idx.split("@");
|
|
69
|
+
return {
|
|
70
|
+
col: sheet.columns.indexOf(column),
|
|
71
|
+
row: sheet.rows.indexOf(row)
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
var rangeToIndex = (sheet, range) => {
|
|
75
|
+
return [
|
|
76
|
+
range.from,
|
|
77
|
+
range.to ?? range.from
|
|
78
|
+
].map((cell) => addressToIndex(sheet, cell)).join(":");
|
|
79
|
+
};
|
|
80
|
+
var rangeFromIndex = (sheet, idx) => {
|
|
81
|
+
const [from, to] = idx.split(":").map((index) => addressFromIndex(sheet, index));
|
|
82
|
+
return {
|
|
83
|
+
from,
|
|
84
|
+
to
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
var compareIndexPositions = (sheet, indexA, indexB) => {
|
|
88
|
+
const { row: rowA, col: columnA } = addressFromIndex(sheet, indexA);
|
|
89
|
+
const { row: rowB, col: columnB } = addressFromIndex(sheet, indexB);
|
|
90
|
+
if (rowA !== rowB) {
|
|
91
|
+
return rowA - rowB;
|
|
92
|
+
} else {
|
|
93
|
+
return columnA - columnB;
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
var mapFormulaRefsToIndices = (sheet, formula) => {
|
|
97
|
+
invariant(isFormula(formula), void 0, {
|
|
98
|
+
F: __dxlog_file,
|
|
99
|
+
L: 124,
|
|
100
|
+
S: void 0,
|
|
101
|
+
A: [
|
|
102
|
+
"isFormula(formula)",
|
|
103
|
+
""
|
|
104
|
+
]
|
|
105
|
+
});
|
|
106
|
+
return formula.replace(/([a-zA-Z]+)([0-9]+)/g, (match) => {
|
|
107
|
+
return addressToIndex(sheet, addressFromA1Notation(match));
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
var mapFormulaIndicesToRefs = (sheet, formula) => {
|
|
111
|
+
invariant(isFormula(formula), void 0, {
|
|
112
|
+
F: __dxlog_file,
|
|
113
|
+
L: 134,
|
|
114
|
+
S: void 0,
|
|
115
|
+
A: [
|
|
116
|
+
"isFormula(formula)",
|
|
117
|
+
""
|
|
118
|
+
]
|
|
119
|
+
});
|
|
120
|
+
return formula.replace(/([a-zA-Z0-9]+)@([a-zA-Z0-9]+)/g, (idx) => {
|
|
121
|
+
return addressToA1Notation(addressFromIndex(sheet, idx));
|
|
122
|
+
});
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
// src/types/Sheet.ts
|
|
9
126
|
var CellValue = Schema.Struct({
|
|
10
127
|
// TODO(burdon): How to store dates (datetime, date, time), percentages, etc.
|
|
11
128
|
// Consider import/export; natural access for other plugins. Special handling for currency (precision).
|
|
@@ -20,33 +137,57 @@ var Range = Schema.Struct({
|
|
|
20
137
|
var RowColumnMeta = Schema.Struct({
|
|
21
138
|
size: Schema.optional(Schema.Number)
|
|
22
139
|
});
|
|
23
|
-
var
|
|
140
|
+
var Sheet = Schema.Struct({
|
|
24
141
|
name: Schema.optional(Schema.String),
|
|
25
142
|
// Sparse map of cells referenced by index.
|
|
26
|
-
cells: Schema.
|
|
143
|
+
cells: Schema.Record({
|
|
27
144
|
key: Schema.String,
|
|
28
145
|
value: Schema.mutable(CellValue)
|
|
29
|
-
})),
|
|
146
|
+
}).pipe(Schema.mutable, FormAnnotation.set(false)),
|
|
30
147
|
// Ordered row indices.
|
|
31
|
-
rows: Schema.
|
|
148
|
+
rows: Schema.Array(Schema.String).pipe(Schema.mutable, FormAnnotation.set(false)),
|
|
32
149
|
// Ordered column indices.
|
|
33
|
-
columns: Schema.
|
|
150
|
+
columns: Schema.Array(Schema.String).pipe(Schema.mutable, FormAnnotation.set(false)),
|
|
34
151
|
// Row metadata referenced by index.
|
|
35
|
-
rowMeta: Schema.
|
|
152
|
+
rowMeta: Schema.Record({
|
|
36
153
|
key: Schema.String,
|
|
37
154
|
value: Schema.mutable(RowColumnMeta)
|
|
38
|
-
})),
|
|
155
|
+
}).pipe(Schema.mutable, FormAnnotation.set(false)),
|
|
39
156
|
// Column metadata referenced by index.
|
|
40
|
-
columnMeta: Schema.
|
|
157
|
+
columnMeta: Schema.Record({
|
|
41
158
|
key: Schema.String,
|
|
42
159
|
value: Schema.mutable(RowColumnMeta)
|
|
43
|
-
})),
|
|
160
|
+
}).pipe(Schema.mutable, FormAnnotation.set(false)),
|
|
44
161
|
// Cell formatting referenced by indexed range.
|
|
45
|
-
ranges: Schema.
|
|
162
|
+
ranges: Schema.Array(Range).pipe(Schema.mutable, FormAnnotation.set(false))
|
|
46
163
|
}).pipe(Type.Obj({
|
|
47
164
|
typename: "dxos.org/type/Sheet",
|
|
48
165
|
version: "0.1.0"
|
|
49
166
|
}));
|
|
167
|
+
var make = ({ name, cells = {}, ...size } = {}) => {
|
|
168
|
+
const sheet = Obj.make(Sheet, {
|
|
169
|
+
name,
|
|
170
|
+
cells: {},
|
|
171
|
+
rows: [],
|
|
172
|
+
columns: [],
|
|
173
|
+
rowMeta: {},
|
|
174
|
+
columnMeta: {},
|
|
175
|
+
ranges: []
|
|
176
|
+
});
|
|
177
|
+
initialize(sheet, size);
|
|
178
|
+
if (cells) {
|
|
179
|
+
Object.entries(cells).forEach(([key, { value }]) => {
|
|
180
|
+
const idx = addressToIndex(sheet, addressFromA1Notation2(key));
|
|
181
|
+
if (isFormula2(value)) {
|
|
182
|
+
value = mapFormulaRefsToIndices(sheet, value);
|
|
183
|
+
}
|
|
184
|
+
sheet.cells[idx] = {
|
|
185
|
+
value
|
|
186
|
+
};
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
return sheet;
|
|
190
|
+
};
|
|
50
191
|
|
|
51
192
|
// src/types/sheet-range-types.ts
|
|
52
193
|
var alignKey = "alignment";
|
|
@@ -82,31 +223,18 @@ var cellClassNameForRange = ({ key, value }) => {
|
|
|
82
223
|
};
|
|
83
224
|
|
|
84
225
|
// src/types/types.ts
|
|
85
|
-
import
|
|
226
|
+
import * as Schema2 from "effect/Schema";
|
|
86
227
|
|
|
87
228
|
// src/model/sheet-model.ts
|
|
88
229
|
import { Event } from "@dxos/async";
|
|
89
|
-
import { DetailedCellError, ExportedCellChange, addressFromA1Notation, addressToA1Notation, createSheetName, isFormula } from "@dxos/compute";
|
|
230
|
+
import { DetailedCellError, ExportedCellChange, addressFromA1Notation as addressFromA1Notation3, addressToA1Notation as addressToA1Notation2, createSheetName, isFormula as isFormula3 } from "@dxos/compute";
|
|
90
231
|
import { Resource } from "@dxos/context";
|
|
91
|
-
import { Obj } from "@dxos/echo";
|
|
92
|
-
import { FormatEnum, TypeEnum } from "@dxos/echo
|
|
93
|
-
import { invariant } from "@dxos/invariant";
|
|
232
|
+
import { Obj as Obj2 } from "@dxos/echo";
|
|
233
|
+
import { FormatEnum, TypeEnum } from "@dxos/echo/internal";
|
|
234
|
+
import { invariant as invariant2 } from "@dxos/invariant";
|
|
94
235
|
import { PublicKey } from "@dxos/keys";
|
|
95
236
|
import { log } from "@dxos/log";
|
|
96
|
-
|
|
97
|
-
if (key in obj) {
|
|
98
|
-
Object.defineProperty(obj, key, {
|
|
99
|
-
value,
|
|
100
|
-
enumerable: true,
|
|
101
|
-
configurable: true,
|
|
102
|
-
writable: true
|
|
103
|
-
});
|
|
104
|
-
} else {
|
|
105
|
-
obj[key] = value;
|
|
106
|
-
}
|
|
107
|
-
return obj;
|
|
108
|
-
}
|
|
109
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-sheet/src/model/sheet-model.ts";
|
|
237
|
+
var __dxlog_file2 = "/__w/dxos/dxos/packages/plugins/plugin-sheet/src/model/sheet-model.ts";
|
|
110
238
|
var typeMap = {
|
|
111
239
|
BOOLEAN: {
|
|
112
240
|
type: TypeEnum.Boolean
|
|
@@ -152,6 +280,16 @@ var toModelRange = (sheet, range) => ({
|
|
|
152
280
|
end: toSimpleCellAddress(sheet, range.to ?? range.from)
|
|
153
281
|
});
|
|
154
282
|
var SheetModel = class extends Resource {
|
|
283
|
+
_graph;
|
|
284
|
+
_sheet;
|
|
285
|
+
_options;
|
|
286
|
+
id = `model-${PublicKey.random().truncate()}`;
|
|
287
|
+
// Wraps compute node.
|
|
288
|
+
update = new Event();
|
|
289
|
+
_node;
|
|
290
|
+
constructor(_graph, _sheet, _options = {}) {
|
|
291
|
+
super(), this._graph = _graph, this._sheet = _sheet, this._options = _options;
|
|
292
|
+
}
|
|
155
293
|
get graph() {
|
|
156
294
|
return this._graph;
|
|
157
295
|
}
|
|
@@ -174,7 +312,7 @@ var SheetModel = class extends Resource {
|
|
|
174
312
|
log("initialize", {
|
|
175
313
|
id: this.id
|
|
176
314
|
}, {
|
|
177
|
-
F:
|
|
315
|
+
F: __dxlog_file2,
|
|
178
316
|
L: 124,
|
|
179
317
|
S: this,
|
|
180
318
|
C: (f, a) => f(...a)
|
|
@@ -186,7 +324,7 @@ var SheetModel = class extends Resource {
|
|
|
186
324
|
}
|
|
187
325
|
});
|
|
188
326
|
this._node = this._graph.getOrCreateNode(createSheetName({
|
|
189
|
-
type:
|
|
327
|
+
type: Obj2.getTypename(this._sheet),
|
|
190
328
|
id: this._sheet.id
|
|
191
329
|
}));
|
|
192
330
|
await this._node.open();
|
|
@@ -200,8 +338,8 @@ var SheetModel = class extends Resource {
|
|
|
200
338
|
* @deprecated
|
|
201
339
|
*/
|
|
202
340
|
reset() {
|
|
203
|
-
|
|
204
|
-
F:
|
|
341
|
+
invariant2(this._node, void 0, {
|
|
342
|
+
F: __dxlog_file2,
|
|
205
343
|
L: 152,
|
|
206
344
|
S: this,
|
|
207
345
|
A: [
|
|
@@ -211,8 +349,8 @@ var SheetModel = class extends Resource {
|
|
|
211
349
|
});
|
|
212
350
|
this._node.graph.hf.clearSheet(this._node.sheetId);
|
|
213
351
|
Object.entries(this._sheet.cells).forEach(([key, { value }]) => {
|
|
214
|
-
|
|
215
|
-
F:
|
|
352
|
+
invariant2(this._node, void 0, {
|
|
353
|
+
F: __dxlog_file2,
|
|
216
354
|
L: 155,
|
|
217
355
|
S: this,
|
|
218
356
|
A: [
|
|
@@ -221,7 +359,7 @@ var SheetModel = class extends Resource {
|
|
|
221
359
|
]
|
|
222
360
|
});
|
|
223
361
|
const { col, row } = addressFromIndex(this._sheet, key);
|
|
224
|
-
if (
|
|
362
|
+
if (isFormula3(value)) {
|
|
225
363
|
const binding = this._graph.mapFunctionBindingFromId(mapFormulaIndicesToRefs(this._sheet, value));
|
|
226
364
|
if (binding) {
|
|
227
365
|
value = this._graph.mapFormulaToNative(binding);
|
|
@@ -330,8 +468,8 @@ var SheetModel = class extends Resource {
|
|
|
330
468
|
* Clear range of values.
|
|
331
469
|
*/
|
|
332
470
|
clear(range) {
|
|
333
|
-
|
|
334
|
-
F:
|
|
471
|
+
invariant2(this._node, void 0, {
|
|
472
|
+
F: __dxlog_file2,
|
|
335
473
|
L: 258,
|
|
336
474
|
S: this,
|
|
337
475
|
A: [
|
|
@@ -348,8 +486,8 @@ var SheetModel = class extends Resource {
|
|
|
348
486
|
});
|
|
349
487
|
}
|
|
350
488
|
cut(range) {
|
|
351
|
-
|
|
352
|
-
F:
|
|
489
|
+
invariant2(this._node, void 0, {
|
|
490
|
+
F: __dxlog_file2,
|
|
353
491
|
L: 269,
|
|
354
492
|
S: this,
|
|
355
493
|
A: [
|
|
@@ -364,8 +502,8 @@ var SheetModel = class extends Resource {
|
|
|
364
502
|
});
|
|
365
503
|
}
|
|
366
504
|
copy(range) {
|
|
367
|
-
|
|
368
|
-
F:
|
|
505
|
+
invariant2(this._node, void 0, {
|
|
506
|
+
F: __dxlog_file2,
|
|
369
507
|
L: 278,
|
|
370
508
|
S: this,
|
|
371
509
|
A: [
|
|
@@ -376,8 +514,8 @@ var SheetModel = class extends Resource {
|
|
|
376
514
|
this._node.graph.hf.copy(toModelRange(this._node.sheetId, range));
|
|
377
515
|
}
|
|
378
516
|
paste(cell) {
|
|
379
|
-
|
|
380
|
-
F:
|
|
517
|
+
invariant2(this._node, void 0, {
|
|
518
|
+
F: __dxlog_file2,
|
|
381
519
|
L: 283,
|
|
382
520
|
S: this,
|
|
383
521
|
A: [
|
|
@@ -403,8 +541,8 @@ var SheetModel = class extends Resource {
|
|
|
403
541
|
}
|
|
404
542
|
// TODO(burdon): Display undo/redo state.
|
|
405
543
|
undo() {
|
|
406
|
-
|
|
407
|
-
F:
|
|
544
|
+
invariant2(this._node, void 0, {
|
|
545
|
+
F: __dxlog_file2,
|
|
408
546
|
L: 298,
|
|
409
547
|
S: this,
|
|
410
548
|
A: [
|
|
@@ -417,8 +555,8 @@ var SheetModel = class extends Resource {
|
|
|
417
555
|
}
|
|
418
556
|
}
|
|
419
557
|
redo() {
|
|
420
|
-
|
|
421
|
-
F:
|
|
558
|
+
invariant2(this._node, void 0, {
|
|
559
|
+
F: __dxlog_file2,
|
|
422
560
|
L: 306,
|
|
423
561
|
S: this,
|
|
424
562
|
A: [
|
|
@@ -445,7 +583,7 @@ var SheetModel = class extends Resource {
|
|
|
445
583
|
if (value == null) {
|
|
446
584
|
return void 0;
|
|
447
585
|
}
|
|
448
|
-
if (
|
|
586
|
+
if (isFormula3(value)) {
|
|
449
587
|
return this._graph.mapFunctionBindingFromId(mapFormulaIndicesToRefs(this._sheet, value));
|
|
450
588
|
} else {
|
|
451
589
|
return String(value);
|
|
@@ -461,8 +599,8 @@ var SheetModel = class extends Resource {
|
|
|
461
599
|
* Gets the regular or computed value from the engine.
|
|
462
600
|
*/
|
|
463
601
|
getValue(cell) {
|
|
464
|
-
|
|
465
|
-
F:
|
|
602
|
+
invariant2(this._node, void 0, {
|
|
603
|
+
F: __dxlog_file2,
|
|
466
604
|
L: 349,
|
|
467
605
|
S: this,
|
|
468
606
|
A: [
|
|
@@ -477,7 +615,7 @@ var SheetModel = class extends Resource {
|
|
|
477
615
|
cell,
|
|
478
616
|
error: value
|
|
479
617
|
}, {
|
|
480
|
-
F:
|
|
618
|
+
F: __dxlog_file2,
|
|
481
619
|
L: 354,
|
|
482
620
|
S: this,
|
|
483
621
|
C: (f, a) => f(...a)
|
|
@@ -490,8 +628,8 @@ var SheetModel = class extends Resource {
|
|
|
490
628
|
* Get value type.
|
|
491
629
|
*/
|
|
492
630
|
getValueDescription(cell) {
|
|
493
|
-
|
|
494
|
-
F:
|
|
631
|
+
invariant2(this._node, void 0, {
|
|
632
|
+
F: __dxlog_file2,
|
|
495
633
|
L: 365,
|
|
496
634
|
S: this,
|
|
497
635
|
A: [
|
|
@@ -507,8 +645,8 @@ var SheetModel = class extends Resource {
|
|
|
507
645
|
* Sets the value, updating the sheet and engine.
|
|
508
646
|
*/
|
|
509
647
|
setValue(cell, value) {
|
|
510
|
-
|
|
511
|
-
F:
|
|
648
|
+
invariant2(this._node, void 0, {
|
|
649
|
+
F: __dxlog_file2,
|
|
512
650
|
L: 375,
|
|
513
651
|
S: this,
|
|
514
652
|
A: [
|
|
@@ -537,14 +675,14 @@ var SheetModel = class extends Resource {
|
|
|
537
675
|
col: cell.col
|
|
538
676
|
}, [
|
|
539
677
|
[
|
|
540
|
-
|
|
678
|
+
isFormula3(value) ? this._graph.mapFormulaToNative(value) : value
|
|
541
679
|
]
|
|
542
680
|
]);
|
|
543
681
|
const idx = addressToIndex(this._sheet, cell);
|
|
544
682
|
if (value === void 0 || value === null) {
|
|
545
683
|
delete this._sheet.cells[idx];
|
|
546
684
|
} else {
|
|
547
|
-
if (
|
|
685
|
+
if (isFormula3(value)) {
|
|
548
686
|
value = this._graph.mapFunctionBindingToId(mapFormulaRefsToIndices(this._sheet, value));
|
|
549
687
|
}
|
|
550
688
|
this._sheet.cells[idx] = {
|
|
@@ -557,7 +695,7 @@ var SheetModel = class extends Resource {
|
|
|
557
695
|
*/
|
|
558
696
|
setValues(values) {
|
|
559
697
|
Object.entries(values).forEach(([key, { value }]) => {
|
|
560
|
-
this.setValue(
|
|
698
|
+
this.setValue(addressFromA1Notation3(key), value);
|
|
561
699
|
});
|
|
562
700
|
}
|
|
563
701
|
/**
|
|
@@ -601,8 +739,8 @@ var SheetModel = class extends Resource {
|
|
|
601
739
|
* Map from indices to A1 notation.
|
|
602
740
|
*/
|
|
603
741
|
mapFormulaIndicesToRefs(formula) {
|
|
604
|
-
|
|
605
|
-
F:
|
|
742
|
+
invariant2(isFormula3(formula), void 0, {
|
|
743
|
+
F: __dxlog_file2,
|
|
606
744
|
L: 460,
|
|
607
745
|
S: this,
|
|
608
746
|
A: [
|
|
@@ -611,7 +749,7 @@ var SheetModel = class extends Resource {
|
|
|
611
749
|
]
|
|
612
750
|
});
|
|
613
751
|
return formula.replace(/([a-zA-Z0-9]+)@([a-zA-Z0-9]+)/g, (idx) => {
|
|
614
|
-
return
|
|
752
|
+
return addressToA1Notation2(addressFromIndex(this._sheet, idx));
|
|
615
753
|
});
|
|
616
754
|
}
|
|
617
755
|
//
|
|
@@ -627,8 +765,8 @@ var SheetModel = class extends Resource {
|
|
|
627
765
|
return new Date(year, month - 1, day, hours, minutes, seconds);
|
|
628
766
|
}
|
|
629
767
|
toDateTime(num) {
|
|
630
|
-
|
|
631
|
-
F:
|
|
768
|
+
invariant2(this._node, void 0, {
|
|
769
|
+
F: __dxlog_file2,
|
|
632
770
|
L: 481,
|
|
633
771
|
S: this,
|
|
634
772
|
A: [
|
|
@@ -639,8 +777,8 @@ var SheetModel = class extends Resource {
|
|
|
639
777
|
return this._node.graph.hf.numberToDateTime(num);
|
|
640
778
|
}
|
|
641
779
|
toDate(num) {
|
|
642
|
-
|
|
643
|
-
F:
|
|
780
|
+
invariant2(this._node, void 0, {
|
|
781
|
+
F: __dxlog_file2,
|
|
644
782
|
L: 486,
|
|
645
783
|
S: this,
|
|
646
784
|
A: [
|
|
@@ -651,8 +789,8 @@ var SheetModel = class extends Resource {
|
|
|
651
789
|
return this._node.graph.hf.numberToDate(num);
|
|
652
790
|
}
|
|
653
791
|
toTime(num) {
|
|
654
|
-
|
|
655
|
-
F:
|
|
792
|
+
invariant2(this._node, void 0, {
|
|
793
|
+
F: __dxlog_file2,
|
|
656
794
|
L: 491,
|
|
657
795
|
S: this,
|
|
658
796
|
A: [
|
|
@@ -662,10 +800,6 @@ var SheetModel = class extends Resource {
|
|
|
662
800
|
});
|
|
663
801
|
return this._node.graph.hf.numberToTime(num);
|
|
664
802
|
}
|
|
665
|
-
constructor(_graph, _sheet, _options = {}) {
|
|
666
|
-
super(), _define_property(this, "_graph", void 0), _define_property(this, "_sheet", void 0), _define_property(this, "_options", void 0), _define_property(this, "id", void 0), // Wraps compute node.
|
|
667
|
-
_define_property(this, "update", void 0), _define_property(this, "_node", void 0), this._graph = _graph, this._sheet = _sheet, this._options = _options, this.id = `model-${PublicKey.random().truncate()}`, this.update = new Event();
|
|
668
|
-
}
|
|
669
803
|
};
|
|
670
804
|
|
|
671
805
|
// src/model/useSheetModel.ts
|
|
@@ -698,13 +832,13 @@ var useSheetModel = (graph, sheet, { readonly } = {}) => {
|
|
|
698
832
|
|
|
699
833
|
// src/types/types.ts
|
|
700
834
|
(function(SheetAction2) {
|
|
701
|
-
const SHEET_ACTION = `${
|
|
835
|
+
const SHEET_ACTION = `${meta.id}/action`;
|
|
702
836
|
class Create extends Schema2.TaggedClass()(`${SHEET_ACTION}/create`, {
|
|
703
837
|
input: Schema2.Struct({
|
|
704
838
|
name: Schema2.optional(Schema2.String)
|
|
705
839
|
}),
|
|
706
840
|
output: Schema2.Struct({
|
|
707
|
-
object:
|
|
841
|
+
object: Sheet
|
|
708
842
|
})
|
|
709
843
|
}) {
|
|
710
844
|
}
|
|
@@ -744,146 +878,7 @@ var useSheetModel = (graph, sheet, { readonly } = {}) => {
|
|
|
744
878
|
})(SheetAction || (SheetAction = {}));
|
|
745
879
|
var SheetAction;
|
|
746
880
|
|
|
747
|
-
// src/types/util.ts
|
|
748
|
-
import { addressFromA1Notation as addressFromA1Notation2, addressToA1Notation as addressToA1Notation2, isFormula as isFormula2 } from "@dxos/compute";
|
|
749
|
-
import { randomBytes } from "@dxos/crypto";
|
|
750
|
-
import { Obj as Obj2 } from "@dxos/echo";
|
|
751
|
-
import { invariant as invariant2 } from "@dxos/invariant";
|
|
752
|
-
var __dxlog_file2 = "/__w/dxos/dxos/packages/plugins/plugin-sheet/src/types/util.ts";
|
|
753
|
-
var MAX_ROWS = 500;
|
|
754
|
-
var MAX_COLS = 676;
|
|
755
|
-
var DEFAULT_ROWS = 50;
|
|
756
|
-
var DEFAULT_COLS = 26;
|
|
757
|
-
var ApiError = class extends Error {
|
|
758
|
-
};
|
|
759
|
-
var ReadonlyException = class extends ApiError {
|
|
760
|
-
};
|
|
761
|
-
var RangeException = class extends ApiError {
|
|
762
|
-
constructor(n) {
|
|
763
|
-
super();
|
|
764
|
-
}
|
|
765
|
-
};
|
|
766
|
-
var createIndex = (length = 8) => {
|
|
767
|
-
const characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
|
|
768
|
-
const charactersLength = characters.length;
|
|
769
|
-
const randomBuffer = randomBytes(length);
|
|
770
|
-
return Array.from(randomBuffer, (byte) => characters[byte % charactersLength]).join("");
|
|
771
|
-
};
|
|
772
|
-
var createIndices = (length) => Array.from({
|
|
773
|
-
length
|
|
774
|
-
}).map(() => createIndex());
|
|
775
|
-
var insertIndices = (indices, i, n, max) => {
|
|
776
|
-
if (i + n > max) {
|
|
777
|
-
throw new RangeException(i + n);
|
|
778
|
-
}
|
|
779
|
-
const idx = createIndices(n);
|
|
780
|
-
indices.splice(i, 0, ...idx);
|
|
781
|
-
return idx;
|
|
782
|
-
};
|
|
783
|
-
var initialize = (sheet, { rows = DEFAULT_ROWS, columns = DEFAULT_COLS } = {}) => {
|
|
784
|
-
if (!sheet.rows.length) {
|
|
785
|
-
insertIndices(sheet.rows, 0, rows, MAX_ROWS);
|
|
786
|
-
}
|
|
787
|
-
if (!sheet.columns.length) {
|
|
788
|
-
insertIndices(sheet.columns, 0, columns, MAX_COLS);
|
|
789
|
-
}
|
|
790
|
-
};
|
|
791
|
-
var createSheet = ({ name, cells, ...size } = {}) => {
|
|
792
|
-
const sheet = Obj2.make(SheetType, {
|
|
793
|
-
name,
|
|
794
|
-
cells: {},
|
|
795
|
-
rows: [],
|
|
796
|
-
columns: [],
|
|
797
|
-
rowMeta: {},
|
|
798
|
-
columnMeta: {},
|
|
799
|
-
ranges: []
|
|
800
|
-
});
|
|
801
|
-
initialize(sheet, size);
|
|
802
|
-
if (cells) {
|
|
803
|
-
Object.entries(cells).forEach(([key, { value }]) => {
|
|
804
|
-
const idx = addressToIndex(sheet, addressFromA1Notation2(key));
|
|
805
|
-
if (isFormula2(value)) {
|
|
806
|
-
value = mapFormulaRefsToIndices(sheet, value);
|
|
807
|
-
}
|
|
808
|
-
sheet.cells[idx] = {
|
|
809
|
-
value
|
|
810
|
-
};
|
|
811
|
-
});
|
|
812
|
-
}
|
|
813
|
-
return sheet;
|
|
814
|
-
};
|
|
815
|
-
var addressToIndex = (sheet, cell) => {
|
|
816
|
-
return `${sheet.columns[cell.col]}@${sheet.rows[cell.row]}`;
|
|
817
|
-
};
|
|
818
|
-
var addressFromIndex = (sheet, idx) => {
|
|
819
|
-
const [column, row] = idx.split("@");
|
|
820
|
-
return {
|
|
821
|
-
col: sheet.columns.indexOf(column),
|
|
822
|
-
row: sheet.rows.indexOf(row)
|
|
823
|
-
};
|
|
824
|
-
};
|
|
825
|
-
var rangeToIndex = (sheet, range) => {
|
|
826
|
-
return [
|
|
827
|
-
range.from,
|
|
828
|
-
range.to ?? range.from
|
|
829
|
-
].map((cell) => addressToIndex(sheet, cell)).join(":");
|
|
830
|
-
};
|
|
831
|
-
var rangeFromIndex = (sheet, idx) => {
|
|
832
|
-
const [from, to] = idx.split(":").map((index) => addressFromIndex(sheet, index));
|
|
833
|
-
return {
|
|
834
|
-
from,
|
|
835
|
-
to
|
|
836
|
-
};
|
|
837
|
-
};
|
|
838
|
-
var compareIndexPositions = (sheet, indexA, indexB) => {
|
|
839
|
-
const { row: rowA, col: columnA } = addressFromIndex(sheet, indexA);
|
|
840
|
-
const { row: rowB, col: columnB } = addressFromIndex(sheet, indexB);
|
|
841
|
-
if (rowA !== rowB) {
|
|
842
|
-
return rowA - rowB;
|
|
843
|
-
} else {
|
|
844
|
-
return columnA - columnB;
|
|
845
|
-
}
|
|
846
|
-
};
|
|
847
|
-
var mapFormulaRefsToIndices = (sheet, formula) => {
|
|
848
|
-
invariant2(isFormula2(formula), void 0, {
|
|
849
|
-
F: __dxlog_file2,
|
|
850
|
-
L: 152,
|
|
851
|
-
S: void 0,
|
|
852
|
-
A: [
|
|
853
|
-
"isFormula(formula)",
|
|
854
|
-
""
|
|
855
|
-
]
|
|
856
|
-
});
|
|
857
|
-
return formula.replace(/([a-zA-Z]+)([0-9]+)/g, (match) => {
|
|
858
|
-
return addressToIndex(sheet, addressFromA1Notation2(match));
|
|
859
|
-
});
|
|
860
|
-
};
|
|
861
|
-
var mapFormulaIndicesToRefs = (sheet, formula) => {
|
|
862
|
-
invariant2(isFormula2(formula), void 0, {
|
|
863
|
-
F: __dxlog_file2,
|
|
864
|
-
L: 162,
|
|
865
|
-
S: void 0,
|
|
866
|
-
A: [
|
|
867
|
-
"isFormula(formula)",
|
|
868
|
-
""
|
|
869
|
-
]
|
|
870
|
-
});
|
|
871
|
-
return formula.replace(/([a-zA-Z0-9]+)@([a-zA-Z0-9]+)/g, (idx) => {
|
|
872
|
-
return addressToA1Notation2(addressFromIndex(sheet, idx));
|
|
873
|
-
});
|
|
874
|
-
};
|
|
875
|
-
|
|
876
881
|
export {
|
|
877
|
-
CellValue,
|
|
878
|
-
Range,
|
|
879
|
-
RowColumnMeta,
|
|
880
|
-
SheetType,
|
|
881
|
-
alignKey,
|
|
882
|
-
commentKey,
|
|
883
|
-
styleKey,
|
|
884
|
-
cellClassNameForRange,
|
|
885
|
-
useSheetModel,
|
|
886
|
-
SheetAction,
|
|
887
882
|
MAX_ROWS,
|
|
888
883
|
MAX_COLS,
|
|
889
884
|
DEFAULT_ROWS,
|
|
@@ -895,13 +890,19 @@ export {
|
|
|
895
890
|
createIndices,
|
|
896
891
|
insertIndices,
|
|
897
892
|
initialize,
|
|
898
|
-
createSheet,
|
|
899
893
|
addressToIndex,
|
|
900
894
|
addressFromIndex,
|
|
901
895
|
rangeToIndex,
|
|
902
896
|
rangeFromIndex,
|
|
903
897
|
compareIndexPositions,
|
|
904
898
|
mapFormulaRefsToIndices,
|
|
905
|
-
mapFormulaIndicesToRefs
|
|
899
|
+
mapFormulaIndicesToRefs,
|
|
900
|
+
Sheet_exports,
|
|
901
|
+
alignKey,
|
|
902
|
+
commentKey,
|
|
903
|
+
styleKey,
|
|
904
|
+
cellClassNameForRange,
|
|
905
|
+
useSheetModel,
|
|
906
|
+
SheetAction
|
|
906
907
|
};
|
|
907
|
-
//# sourceMappingURL=chunk-
|
|
908
|
+
//# sourceMappingURL=chunk-4H2EHVWE.mjs.map
|