@dxos/plugin-sheet 0.8.4-main.28f8d3d → 0.8.4-main.2c6827d
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-JZNFXBW3.mjs → SheetContainer-67YEU5EA.mjs} +41 -43
- package/dist/lib/browser/SheetContainer-67YEU5EA.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-BVTHIA5U.mjs → chunk-6WBJDEKF.mjs} +37 -32
- package/dist/lib/browser/chunk-6WBJDEKF.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-VTTKAHAY.mjs → chunk-7VEWYJJN.mjs} +2 -2
- package/dist/lib/browser/chunk-7VEWYJJN.mjs.map +7 -0
- package/dist/lib/browser/{chunk-ELAASQ5H.mjs → chunk-DVJ3QW3F.mjs} +215 -207
- 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/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-SSLPTP5O.mjs → intent-resolver-66OAYVQF.mjs} +9 -9
- package/dist/lib/browser/intent-resolver-66OAYVQF.mjs.map +7 -0
- package/dist/lib/browser/{markdown-3VPZYNGU.mjs → markdown-B6VKYY2S.mjs} +6 -6
- package/dist/lib/browser/{markdown-3VPZYNGU.mjs.map → markdown-B6VKYY2S.mjs.map} +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-Y7KTPJW2.mjs → react-surface-HARAYCN7.mjs} +16 -15
- package/dist/lib/browser/react-surface-HARAYCN7.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +4 -12
- package/dist/lib/node-esm/{SheetContainer-GOIBAE2P.mjs → SheetContainer-NJONAMYZ.mjs} +41 -43
- package/dist/lib/node-esm/SheetContainer-NJONAMYZ.mjs.map +7 -0
- package/dist/lib/node-esm/{anchor-sort-YM2UBIKL.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-4L5CIB7E.mjs → chunk-4H2EHVWE.mjs} +215 -207
- package/dist/lib/node-esm/chunk-4H2EHVWE.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-FXRXBHWM.mjs → chunk-4QV4AGWK.mjs} +2 -2
- 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/{chunk-56HYMW55.mjs → chunk-S3RJ7IY6.mjs} +37 -32
- package/dist/lib/node-esm/chunk-S3RJ7IY6.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-5P6DBGK2.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-SFDGQWYE.mjs → markdown-VKY7HXU2.mjs} +6 -6
- package/dist/lib/node-esm/{markdown-SFDGQWYE.mjs.map → markdown-VKY7HXU2.mjs.map} +1 -1
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-6Z5FAOBH.mjs → react-surface-KTQWXV2L.mjs} +16 -15
- package/dist/lib/node-esm/react-surface-KTQWXV2L.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 +1 -1
- package/dist/types/src/capabilities/compute-graph-registry.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts +5 -10
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
- package/dist/types/src/capabilities/markdown.d.ts +1 -3
- package/dist/types/src/capabilities/markdown.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts +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 +9 -4
- 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 +50 -3
- package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts.map +1 -1
- package/dist/types/src/components/GridSheet/SheetCellEditor.stories.d.ts +11 -20
- 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 +52 -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 +86 -4
- 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 +10 -13
- package/dist/types/src/extensions/compute.stories.d.ts.map +1 -1
- package/dist/types/src/extensions/editor/index.d.ts +1 -1
- package/dist/types/src/extensions/editor/index.d.ts.map +1 -1
- package/dist/types/src/extensions/editor/{extension.d.ts → sheet-extension.d.ts} +1 -1
- package/dist/types/src/extensions/editor/sheet-extension.d.ts.map +1 -0
- package/dist/types/src/extensions/editor/sheet-extension.test.d.ts +2 -0
- package/dist/types/src/extensions/editor/sheet-extension.test.d.ts.map +1 -0
- 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 +18 -18
- package/src/components/FunctionEditor/FunctionEditor.tsx +2 -2
- package/src/components/GridSheet/GridSheet.stories.tsx +17 -12
- package/src/components/GridSheet/GridSheet.tsx +24 -12
- package/src/components/GridSheet/SheetCellEditor.stories.tsx +40 -42
- package/src/components/GridSheet/util.ts +9 -3
- package/src/components/RangeList/RangeList.tsx +8 -8
- package/src/components/SheetContainer/SheetContainer.stories.tsx +45 -42
- package/src/components/SheetContainer/SheetContainer.tsx +10 -5
- package/src/components/SheetContext/SheetContext.tsx +4 -4
- package/src/components/SheetToolbar/SheetToolbar.stories.tsx +17 -12
- package/src/components/SheetToolbar/SheetToolbar.tsx +27 -29
- package/src/components/SheetToolbar/align.ts +3 -3
- package/src/components/SheetToolbar/style.ts +2 -2
- package/src/extensions/compute.stories.tsx +29 -26
- package/src/extensions/compute.ts +1 -2
- package/src/extensions/editor/index.ts +1 -1
- package/src/extensions/editor/{extension.test.ts → sheet-extension.test.ts} +1 -1
- 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-JZNFXBW3.mjs.map +0 -7
- package/dist/lib/browser/anchor-sort-VRX3YZKT.mjs +0 -24
- package/dist/lib/browser/anchor-sort-VRX3YZKT.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-BVTHIA5U.mjs.map +0 -7
- package/dist/lib/browser/chunk-ELAASQ5H.mjs.map +0 -7
- package/dist/lib/browser/chunk-KJWZUQVA.mjs.map +0 -7
- package/dist/lib/browser/chunk-VTTKAHAY.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-SSLPTP5O.mjs.map +0 -7
- package/dist/lib/browser/react-surface-Y7KTPJW2.mjs.map +0 -7
- package/dist/lib/node-esm/SheetContainer-GOIBAE2P.mjs.map +0 -7
- package/dist/lib/node-esm/anchor-sort-YM2UBIKL.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-4L5CIB7E.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-56HYMW55.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-6SK5LJ5S.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-FXRXBHWM.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-5P6DBGK2.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-6Z5FAOBH.mjs.map +0 -7
- package/dist/types/src/extensions/editor/extension.d.ts.map +0 -1
- package/dist/types/src/extensions/editor/extension.test.d.ts +0 -2
- package/dist/types/src/extensions/editor/extension.test.d.ts.map +0 -1
- package/dist/types/src/types/schema.d.ts.map +0 -1
- package/src/types/schema.ts +0 -61
- /package/src/extensions/editor/{extension.ts → sheet-extension.ts} +0 -0
|
@@ -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,18 +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
|
-
var
|
|
237
|
+
var __dxlog_file2 = "/__w/dxos/dxos/packages/plugins/plugin-sheet/src/model/sheet-model.ts";
|
|
97
238
|
var typeMap = {
|
|
98
239
|
BOOLEAN: {
|
|
99
240
|
type: TypeEnum.Boolean
|
|
@@ -142,12 +283,12 @@ var SheetModel = class extends Resource {
|
|
|
142
283
|
_graph;
|
|
143
284
|
_sheet;
|
|
144
285
|
_options;
|
|
145
|
-
id
|
|
286
|
+
id = `model-${PublicKey.random().truncate()}`;
|
|
146
287
|
// Wraps compute node.
|
|
147
|
-
update;
|
|
288
|
+
update = new Event();
|
|
148
289
|
_node;
|
|
149
290
|
constructor(_graph, _sheet, _options = {}) {
|
|
150
|
-
super(), this._graph = _graph, this._sheet = _sheet, this._options = _options
|
|
291
|
+
super(), this._graph = _graph, this._sheet = _sheet, this._options = _options;
|
|
151
292
|
}
|
|
152
293
|
get graph() {
|
|
153
294
|
return this._graph;
|
|
@@ -171,7 +312,7 @@ var SheetModel = class extends Resource {
|
|
|
171
312
|
log("initialize", {
|
|
172
313
|
id: this.id
|
|
173
314
|
}, {
|
|
174
|
-
F:
|
|
315
|
+
F: __dxlog_file2,
|
|
175
316
|
L: 124,
|
|
176
317
|
S: this,
|
|
177
318
|
C: (f, a) => f(...a)
|
|
@@ -183,7 +324,7 @@ var SheetModel = class extends Resource {
|
|
|
183
324
|
}
|
|
184
325
|
});
|
|
185
326
|
this._node = this._graph.getOrCreateNode(createSheetName({
|
|
186
|
-
type:
|
|
327
|
+
type: Obj2.getTypename(this._sheet),
|
|
187
328
|
id: this._sheet.id
|
|
188
329
|
}));
|
|
189
330
|
await this._node.open();
|
|
@@ -197,8 +338,8 @@ var SheetModel = class extends Resource {
|
|
|
197
338
|
* @deprecated
|
|
198
339
|
*/
|
|
199
340
|
reset() {
|
|
200
|
-
|
|
201
|
-
F:
|
|
341
|
+
invariant2(this._node, void 0, {
|
|
342
|
+
F: __dxlog_file2,
|
|
202
343
|
L: 152,
|
|
203
344
|
S: this,
|
|
204
345
|
A: [
|
|
@@ -208,8 +349,8 @@ var SheetModel = class extends Resource {
|
|
|
208
349
|
});
|
|
209
350
|
this._node.graph.hf.clearSheet(this._node.sheetId);
|
|
210
351
|
Object.entries(this._sheet.cells).forEach(([key, { value }]) => {
|
|
211
|
-
|
|
212
|
-
F:
|
|
352
|
+
invariant2(this._node, void 0, {
|
|
353
|
+
F: __dxlog_file2,
|
|
213
354
|
L: 155,
|
|
214
355
|
S: this,
|
|
215
356
|
A: [
|
|
@@ -218,7 +359,7 @@ var SheetModel = class extends Resource {
|
|
|
218
359
|
]
|
|
219
360
|
});
|
|
220
361
|
const { col, row } = addressFromIndex(this._sheet, key);
|
|
221
|
-
if (
|
|
362
|
+
if (isFormula3(value)) {
|
|
222
363
|
const binding = this._graph.mapFunctionBindingFromId(mapFormulaIndicesToRefs(this._sheet, value));
|
|
223
364
|
if (binding) {
|
|
224
365
|
value = this._graph.mapFormulaToNative(binding);
|
|
@@ -327,8 +468,8 @@ var SheetModel = class extends Resource {
|
|
|
327
468
|
* Clear range of values.
|
|
328
469
|
*/
|
|
329
470
|
clear(range) {
|
|
330
|
-
|
|
331
|
-
F:
|
|
471
|
+
invariant2(this._node, void 0, {
|
|
472
|
+
F: __dxlog_file2,
|
|
332
473
|
L: 258,
|
|
333
474
|
S: this,
|
|
334
475
|
A: [
|
|
@@ -345,8 +486,8 @@ var SheetModel = class extends Resource {
|
|
|
345
486
|
});
|
|
346
487
|
}
|
|
347
488
|
cut(range) {
|
|
348
|
-
|
|
349
|
-
F:
|
|
489
|
+
invariant2(this._node, void 0, {
|
|
490
|
+
F: __dxlog_file2,
|
|
350
491
|
L: 269,
|
|
351
492
|
S: this,
|
|
352
493
|
A: [
|
|
@@ -361,8 +502,8 @@ var SheetModel = class extends Resource {
|
|
|
361
502
|
});
|
|
362
503
|
}
|
|
363
504
|
copy(range) {
|
|
364
|
-
|
|
365
|
-
F:
|
|
505
|
+
invariant2(this._node, void 0, {
|
|
506
|
+
F: __dxlog_file2,
|
|
366
507
|
L: 278,
|
|
367
508
|
S: this,
|
|
368
509
|
A: [
|
|
@@ -373,8 +514,8 @@ var SheetModel = class extends Resource {
|
|
|
373
514
|
this._node.graph.hf.copy(toModelRange(this._node.sheetId, range));
|
|
374
515
|
}
|
|
375
516
|
paste(cell) {
|
|
376
|
-
|
|
377
|
-
F:
|
|
517
|
+
invariant2(this._node, void 0, {
|
|
518
|
+
F: __dxlog_file2,
|
|
378
519
|
L: 283,
|
|
379
520
|
S: this,
|
|
380
521
|
A: [
|
|
@@ -400,8 +541,8 @@ var SheetModel = class extends Resource {
|
|
|
400
541
|
}
|
|
401
542
|
// TODO(burdon): Display undo/redo state.
|
|
402
543
|
undo() {
|
|
403
|
-
|
|
404
|
-
F:
|
|
544
|
+
invariant2(this._node, void 0, {
|
|
545
|
+
F: __dxlog_file2,
|
|
405
546
|
L: 298,
|
|
406
547
|
S: this,
|
|
407
548
|
A: [
|
|
@@ -414,8 +555,8 @@ var SheetModel = class extends Resource {
|
|
|
414
555
|
}
|
|
415
556
|
}
|
|
416
557
|
redo() {
|
|
417
|
-
|
|
418
|
-
F:
|
|
558
|
+
invariant2(this._node, void 0, {
|
|
559
|
+
F: __dxlog_file2,
|
|
419
560
|
L: 306,
|
|
420
561
|
S: this,
|
|
421
562
|
A: [
|
|
@@ -442,7 +583,7 @@ var SheetModel = class extends Resource {
|
|
|
442
583
|
if (value == null) {
|
|
443
584
|
return void 0;
|
|
444
585
|
}
|
|
445
|
-
if (
|
|
586
|
+
if (isFormula3(value)) {
|
|
446
587
|
return this._graph.mapFunctionBindingFromId(mapFormulaIndicesToRefs(this._sheet, value));
|
|
447
588
|
} else {
|
|
448
589
|
return String(value);
|
|
@@ -458,8 +599,8 @@ var SheetModel = class extends Resource {
|
|
|
458
599
|
* Gets the regular or computed value from the engine.
|
|
459
600
|
*/
|
|
460
601
|
getValue(cell) {
|
|
461
|
-
|
|
462
|
-
F:
|
|
602
|
+
invariant2(this._node, void 0, {
|
|
603
|
+
F: __dxlog_file2,
|
|
463
604
|
L: 349,
|
|
464
605
|
S: this,
|
|
465
606
|
A: [
|
|
@@ -474,7 +615,7 @@ var SheetModel = class extends Resource {
|
|
|
474
615
|
cell,
|
|
475
616
|
error: value
|
|
476
617
|
}, {
|
|
477
|
-
F:
|
|
618
|
+
F: __dxlog_file2,
|
|
478
619
|
L: 354,
|
|
479
620
|
S: this,
|
|
480
621
|
C: (f, a) => f(...a)
|
|
@@ -487,8 +628,8 @@ var SheetModel = class extends Resource {
|
|
|
487
628
|
* Get value type.
|
|
488
629
|
*/
|
|
489
630
|
getValueDescription(cell) {
|
|
490
|
-
|
|
491
|
-
F:
|
|
631
|
+
invariant2(this._node, void 0, {
|
|
632
|
+
F: __dxlog_file2,
|
|
492
633
|
L: 365,
|
|
493
634
|
S: this,
|
|
494
635
|
A: [
|
|
@@ -504,8 +645,8 @@ var SheetModel = class extends Resource {
|
|
|
504
645
|
* Sets the value, updating the sheet and engine.
|
|
505
646
|
*/
|
|
506
647
|
setValue(cell, value) {
|
|
507
|
-
|
|
508
|
-
F:
|
|
648
|
+
invariant2(this._node, void 0, {
|
|
649
|
+
F: __dxlog_file2,
|
|
509
650
|
L: 375,
|
|
510
651
|
S: this,
|
|
511
652
|
A: [
|
|
@@ -534,14 +675,14 @@ var SheetModel = class extends Resource {
|
|
|
534
675
|
col: cell.col
|
|
535
676
|
}, [
|
|
536
677
|
[
|
|
537
|
-
|
|
678
|
+
isFormula3(value) ? this._graph.mapFormulaToNative(value) : value
|
|
538
679
|
]
|
|
539
680
|
]);
|
|
540
681
|
const idx = addressToIndex(this._sheet, cell);
|
|
541
682
|
if (value === void 0 || value === null) {
|
|
542
683
|
delete this._sheet.cells[idx];
|
|
543
684
|
} else {
|
|
544
|
-
if (
|
|
685
|
+
if (isFormula3(value)) {
|
|
545
686
|
value = this._graph.mapFunctionBindingToId(mapFormulaRefsToIndices(this._sheet, value));
|
|
546
687
|
}
|
|
547
688
|
this._sheet.cells[idx] = {
|
|
@@ -554,7 +695,7 @@ var SheetModel = class extends Resource {
|
|
|
554
695
|
*/
|
|
555
696
|
setValues(values) {
|
|
556
697
|
Object.entries(values).forEach(([key, { value }]) => {
|
|
557
|
-
this.setValue(
|
|
698
|
+
this.setValue(addressFromA1Notation3(key), value);
|
|
558
699
|
});
|
|
559
700
|
}
|
|
560
701
|
/**
|
|
@@ -598,8 +739,8 @@ var SheetModel = class extends Resource {
|
|
|
598
739
|
* Map from indices to A1 notation.
|
|
599
740
|
*/
|
|
600
741
|
mapFormulaIndicesToRefs(formula) {
|
|
601
|
-
|
|
602
|
-
F:
|
|
742
|
+
invariant2(isFormula3(formula), void 0, {
|
|
743
|
+
F: __dxlog_file2,
|
|
603
744
|
L: 460,
|
|
604
745
|
S: this,
|
|
605
746
|
A: [
|
|
@@ -608,7 +749,7 @@ var SheetModel = class extends Resource {
|
|
|
608
749
|
]
|
|
609
750
|
});
|
|
610
751
|
return formula.replace(/([a-zA-Z0-9]+)@([a-zA-Z0-9]+)/g, (idx) => {
|
|
611
|
-
return
|
|
752
|
+
return addressToA1Notation2(addressFromIndex(this._sheet, idx));
|
|
612
753
|
});
|
|
613
754
|
}
|
|
614
755
|
//
|
|
@@ -624,8 +765,8 @@ var SheetModel = class extends Resource {
|
|
|
624
765
|
return new Date(year, month - 1, day, hours, minutes, seconds);
|
|
625
766
|
}
|
|
626
767
|
toDateTime(num) {
|
|
627
|
-
|
|
628
|
-
F:
|
|
768
|
+
invariant2(this._node, void 0, {
|
|
769
|
+
F: __dxlog_file2,
|
|
629
770
|
L: 481,
|
|
630
771
|
S: this,
|
|
631
772
|
A: [
|
|
@@ -636,8 +777,8 @@ var SheetModel = class extends Resource {
|
|
|
636
777
|
return this._node.graph.hf.numberToDateTime(num);
|
|
637
778
|
}
|
|
638
779
|
toDate(num) {
|
|
639
|
-
|
|
640
|
-
F:
|
|
780
|
+
invariant2(this._node, void 0, {
|
|
781
|
+
F: __dxlog_file2,
|
|
641
782
|
L: 486,
|
|
642
783
|
S: this,
|
|
643
784
|
A: [
|
|
@@ -648,8 +789,8 @@ var SheetModel = class extends Resource {
|
|
|
648
789
|
return this._node.graph.hf.numberToDate(num);
|
|
649
790
|
}
|
|
650
791
|
toTime(num) {
|
|
651
|
-
|
|
652
|
-
F:
|
|
792
|
+
invariant2(this._node, void 0, {
|
|
793
|
+
F: __dxlog_file2,
|
|
653
794
|
L: 491,
|
|
654
795
|
S: this,
|
|
655
796
|
A: [
|
|
@@ -691,13 +832,13 @@ var useSheetModel = (graph, sheet, { readonly } = {}) => {
|
|
|
691
832
|
|
|
692
833
|
// src/types/types.ts
|
|
693
834
|
(function(SheetAction2) {
|
|
694
|
-
const SHEET_ACTION = `${
|
|
835
|
+
const SHEET_ACTION = `${meta.id}/action`;
|
|
695
836
|
class Create extends Schema2.TaggedClass()(`${SHEET_ACTION}/create`, {
|
|
696
837
|
input: Schema2.Struct({
|
|
697
838
|
name: Schema2.optional(Schema2.String)
|
|
698
839
|
}),
|
|
699
840
|
output: Schema2.Struct({
|
|
700
|
-
object:
|
|
841
|
+
object: Sheet
|
|
701
842
|
})
|
|
702
843
|
}) {
|
|
703
844
|
}
|
|
@@ -737,146 +878,7 @@ var useSheetModel = (graph, sheet, { readonly } = {}) => {
|
|
|
737
878
|
})(SheetAction || (SheetAction = {}));
|
|
738
879
|
var SheetAction;
|
|
739
880
|
|
|
740
|
-
// src/types/util.ts
|
|
741
|
-
import { addressFromA1Notation as addressFromA1Notation2, addressToA1Notation as addressToA1Notation2, isFormula as isFormula2 } from "@dxos/compute";
|
|
742
|
-
import { randomBytes } from "@dxos/crypto";
|
|
743
|
-
import { Obj as Obj2 } from "@dxos/echo";
|
|
744
|
-
import { invariant as invariant2 } from "@dxos/invariant";
|
|
745
|
-
var __dxlog_file2 = "/__w/dxos/dxos/packages/plugins/plugin-sheet/src/types/util.ts";
|
|
746
|
-
var MAX_ROWS = 500;
|
|
747
|
-
var MAX_COLS = 676;
|
|
748
|
-
var DEFAULT_ROWS = 50;
|
|
749
|
-
var DEFAULT_COLS = 26;
|
|
750
|
-
var ApiError = class extends Error {
|
|
751
|
-
};
|
|
752
|
-
var ReadonlyException = class extends ApiError {
|
|
753
|
-
};
|
|
754
|
-
var RangeException = class extends ApiError {
|
|
755
|
-
constructor(n) {
|
|
756
|
-
super();
|
|
757
|
-
}
|
|
758
|
-
};
|
|
759
|
-
var createIndex = (length = 8) => {
|
|
760
|
-
const characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
|
|
761
|
-
const charactersLength = characters.length;
|
|
762
|
-
const randomBuffer = randomBytes(length);
|
|
763
|
-
return Array.from(randomBuffer, (byte) => characters[byte % charactersLength]).join("");
|
|
764
|
-
};
|
|
765
|
-
var createIndices = (length) => Array.from({
|
|
766
|
-
length
|
|
767
|
-
}).map(() => createIndex());
|
|
768
|
-
var insertIndices = (indices, i, n, max) => {
|
|
769
|
-
if (i + n > max) {
|
|
770
|
-
throw new RangeException(i + n);
|
|
771
|
-
}
|
|
772
|
-
const idx = createIndices(n);
|
|
773
|
-
indices.splice(i, 0, ...idx);
|
|
774
|
-
return idx;
|
|
775
|
-
};
|
|
776
|
-
var initialize = (sheet, { rows = DEFAULT_ROWS, columns = DEFAULT_COLS } = {}) => {
|
|
777
|
-
if (!sheet.rows.length) {
|
|
778
|
-
insertIndices(sheet.rows, 0, rows, MAX_ROWS);
|
|
779
|
-
}
|
|
780
|
-
if (!sheet.columns.length) {
|
|
781
|
-
insertIndices(sheet.columns, 0, columns, MAX_COLS);
|
|
782
|
-
}
|
|
783
|
-
};
|
|
784
|
-
var createSheet = ({ name, cells, ...size } = {}) => {
|
|
785
|
-
const sheet = Obj2.make(SheetType, {
|
|
786
|
-
name,
|
|
787
|
-
cells: {},
|
|
788
|
-
rows: [],
|
|
789
|
-
columns: [],
|
|
790
|
-
rowMeta: {},
|
|
791
|
-
columnMeta: {},
|
|
792
|
-
ranges: []
|
|
793
|
-
});
|
|
794
|
-
initialize(sheet, size);
|
|
795
|
-
if (cells) {
|
|
796
|
-
Object.entries(cells).forEach(([key, { value }]) => {
|
|
797
|
-
const idx = addressToIndex(sheet, addressFromA1Notation2(key));
|
|
798
|
-
if (isFormula2(value)) {
|
|
799
|
-
value = mapFormulaRefsToIndices(sheet, value);
|
|
800
|
-
}
|
|
801
|
-
sheet.cells[idx] = {
|
|
802
|
-
value
|
|
803
|
-
};
|
|
804
|
-
});
|
|
805
|
-
}
|
|
806
|
-
return sheet;
|
|
807
|
-
};
|
|
808
|
-
var addressToIndex = (sheet, cell) => {
|
|
809
|
-
return `${sheet.columns[cell.col]}@${sheet.rows[cell.row]}`;
|
|
810
|
-
};
|
|
811
|
-
var addressFromIndex = (sheet, idx) => {
|
|
812
|
-
const [column, row] = idx.split("@");
|
|
813
|
-
return {
|
|
814
|
-
col: sheet.columns.indexOf(column),
|
|
815
|
-
row: sheet.rows.indexOf(row)
|
|
816
|
-
};
|
|
817
|
-
};
|
|
818
|
-
var rangeToIndex = (sheet, range) => {
|
|
819
|
-
return [
|
|
820
|
-
range.from,
|
|
821
|
-
range.to ?? range.from
|
|
822
|
-
].map((cell) => addressToIndex(sheet, cell)).join(":");
|
|
823
|
-
};
|
|
824
|
-
var rangeFromIndex = (sheet, idx) => {
|
|
825
|
-
const [from, to] = idx.split(":").map((index) => addressFromIndex(sheet, index));
|
|
826
|
-
return {
|
|
827
|
-
from,
|
|
828
|
-
to
|
|
829
|
-
};
|
|
830
|
-
};
|
|
831
|
-
var compareIndexPositions = (sheet, indexA, indexB) => {
|
|
832
|
-
const { row: rowA, col: columnA } = addressFromIndex(sheet, indexA);
|
|
833
|
-
const { row: rowB, col: columnB } = addressFromIndex(sheet, indexB);
|
|
834
|
-
if (rowA !== rowB) {
|
|
835
|
-
return rowA - rowB;
|
|
836
|
-
} else {
|
|
837
|
-
return columnA - columnB;
|
|
838
|
-
}
|
|
839
|
-
};
|
|
840
|
-
var mapFormulaRefsToIndices = (sheet, formula) => {
|
|
841
|
-
invariant2(isFormula2(formula), void 0, {
|
|
842
|
-
F: __dxlog_file2,
|
|
843
|
-
L: 152,
|
|
844
|
-
S: void 0,
|
|
845
|
-
A: [
|
|
846
|
-
"isFormula(formula)",
|
|
847
|
-
""
|
|
848
|
-
]
|
|
849
|
-
});
|
|
850
|
-
return formula.replace(/([a-zA-Z]+)([0-9]+)/g, (match) => {
|
|
851
|
-
return addressToIndex(sheet, addressFromA1Notation2(match));
|
|
852
|
-
});
|
|
853
|
-
};
|
|
854
|
-
var mapFormulaIndicesToRefs = (sheet, formula) => {
|
|
855
|
-
invariant2(isFormula2(formula), void 0, {
|
|
856
|
-
F: __dxlog_file2,
|
|
857
|
-
L: 162,
|
|
858
|
-
S: void 0,
|
|
859
|
-
A: [
|
|
860
|
-
"isFormula(formula)",
|
|
861
|
-
""
|
|
862
|
-
]
|
|
863
|
-
});
|
|
864
|
-
return formula.replace(/([a-zA-Z0-9]+)@([a-zA-Z0-9]+)/g, (idx) => {
|
|
865
|
-
return addressToA1Notation2(addressFromIndex(sheet, idx));
|
|
866
|
-
});
|
|
867
|
-
};
|
|
868
|
-
|
|
869
881
|
export {
|
|
870
|
-
CellValue,
|
|
871
|
-
Range,
|
|
872
|
-
RowColumnMeta,
|
|
873
|
-
SheetType,
|
|
874
|
-
alignKey,
|
|
875
|
-
commentKey,
|
|
876
|
-
styleKey,
|
|
877
|
-
cellClassNameForRange,
|
|
878
|
-
useSheetModel,
|
|
879
|
-
SheetAction,
|
|
880
882
|
MAX_ROWS,
|
|
881
883
|
MAX_COLS,
|
|
882
884
|
DEFAULT_ROWS,
|
|
@@ -888,13 +890,19 @@ export {
|
|
|
888
890
|
createIndices,
|
|
889
891
|
insertIndices,
|
|
890
892
|
initialize,
|
|
891
|
-
createSheet,
|
|
892
893
|
addressToIndex,
|
|
893
894
|
addressFromIndex,
|
|
894
895
|
rangeToIndex,
|
|
895
896
|
rangeFromIndex,
|
|
896
897
|
compareIndexPositions,
|
|
897
898
|
mapFormulaRefsToIndices,
|
|
898
|
-
mapFormulaIndicesToRefs
|
|
899
|
+
mapFormulaIndicesToRefs,
|
|
900
|
+
Sheet_exports,
|
|
901
|
+
alignKey,
|
|
902
|
+
commentKey,
|
|
903
|
+
styleKey,
|
|
904
|
+
cellClassNameForRange,
|
|
905
|
+
useSheetModel,
|
|
906
|
+
SheetAction
|
|
899
907
|
};
|
|
900
|
-
//# sourceMappingURL=chunk-
|
|
908
|
+
//# sourceMappingURL=chunk-4H2EHVWE.mjs.map
|