@dxos/plugin-sheet 0.6.12-main.89e9959 → 0.6.12-main.c1d977f
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-LG77O4RM.mjs → SheetContainer-7QG5RIM4.mjs} +4 -4
- package/dist/lib/browser/{chunk-WZMOZKQZ.mjs → chunk-4DPOO6BK.mjs} +18 -6
- package/dist/lib/browser/{chunk-WZMOZKQZ.mjs.map → chunk-4DPOO6BK.mjs.map} +3 -3
- package/dist/lib/browser/{chunk-CHQAW4F4.mjs → chunk-BKTLTM2Y.mjs} +83 -227
- package/dist/lib/browser/chunk-BKTLTM2Y.mjs.map +7 -0
- package/dist/lib/browser/{chunk-QILRZNE5.mjs → chunk-D3QTX46O.mjs} +4 -5
- package/dist/lib/browser/chunk-D3QTX46O.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +8 -17
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/meta.mjs +1 -1
- package/dist/lib/browser/types.mjs +2 -2
- package/dist/lib/node/{SheetContainer-OZ7DHH4L.cjs → SheetContainer-DXDD2G3A.cjs} +16 -16
- package/dist/lib/node/{chunk-5FTFZL5W.cjs → chunk-4FMMRVT2.cjs} +42 -185
- package/dist/lib/node/chunk-4FMMRVT2.cjs.map +7 -0
- package/dist/lib/node/{chunk-AOP42UAA.cjs → chunk-PJY2K5S2.cjs} +22 -10
- package/dist/lib/node/{chunk-AOP42UAA.cjs.map → chunk-PJY2K5S2.cjs.map} +3 -3
- package/dist/lib/node/{chunk-BNARJ5GM.cjs → chunk-QIFIGEKV.cjs} +6 -7
- package/dist/lib/node/chunk-QIFIGEKV.cjs.map +7 -0
- package/dist/lib/node/index.cjs +29 -37
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/meta.cjs +3 -3
- package/dist/lib/node/meta.cjs.map +1 -1
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/types.cjs +9 -9
- package/dist/lib/node/types.cjs.map +1 -1
- package/dist/lib/node-esm/{SheetContainer-4XS2G25Z.mjs → SheetContainer-5WYNOYYD.mjs} +4 -4
- package/dist/lib/node-esm/{chunk-RR2AO4SM.mjs → chunk-2X36GIGW.mjs} +18 -6
- package/dist/lib/node-esm/{chunk-RR2AO4SM.mjs.map → chunk-2X36GIGW.mjs.map} +3 -3
- package/dist/lib/node-esm/{chunk-KK3XL37M.mjs → chunk-JYDBXLDH.mjs} +83 -227
- package/dist/lib/node-esm/chunk-JYDBXLDH.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-IU2L277A.mjs → chunk-VCYJWE3O.mjs} +4 -5
- package/dist/lib/node-esm/chunk-VCYJWE3O.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +8 -17
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/meta.mjs +1 -1
- package/dist/lib/node-esm/types.mjs +2 -2
- package/dist/types/src/components/GridSheet/GridSheet.d.ts.map +1 -1
- package/dist/types/src/components/{CellEditor/CellEditor.stories.d.ts → GridSheet/SheetCellEditor.stories.d.ts} +2 -2
- package/dist/types/src/components/GridSheet/SheetCellEditor.stories.d.ts.map +1 -0
- package/dist/types/src/components/GridSheet/util.d.ts +2 -2
- package/dist/types/src/components/GridSheet/util.d.ts.map +1 -1
- package/dist/types/src/components/Sheet/Sheet.d.ts.map +1 -1
- package/dist/types/src/components/Sheet/Sheet.stories.d.ts.map +1 -1
- package/dist/types/src/extensions/editor/extension.d.ts.map +1 -0
- package/dist/types/src/extensions/editor/extension.test.d.ts.map +1 -0
- package/dist/types/src/extensions/editor/index.d.ts +2 -0
- package/dist/types/src/extensions/editor/index.d.ts.map +1 -0
- package/dist/types/src/extensions/index.d.ts +1 -0
- package/dist/types/src/extensions/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +3 -6
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/types.d.ts.map +1 -1
- package/package.json +34 -34
- package/src/components/GridSheet/GridSheet.tsx +14 -32
- package/src/components/{CellEditor/CellEditor.stories.tsx → GridSheet/SheetCellEditor.stories.tsx} +2 -2
- package/src/components/GridSheet/util.ts +2 -6
- package/src/components/Sheet/Sheet.tsx +2 -8
- package/src/{components/CellEditor → extensions/editor}/index.ts +0 -1
- package/src/extensions/index.ts +1 -0
- package/src/{meta.tsx → meta.ts} +3 -3
- package/src/model/sheet-model.test.ts +1 -3
- package/src/types.ts +4 -4
- package/dist/lib/browser/chunk-CHQAW4F4.mjs.map +0 -7
- package/dist/lib/browser/chunk-QILRZNE5.mjs.map +0 -7
- package/dist/lib/node/chunk-5FTFZL5W.cjs.map +0 -7
- package/dist/lib/node/chunk-BNARJ5GM.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-IU2L277A.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-KK3XL37M.mjs.map +0 -7
- package/dist/types/src/components/CellEditor/CellEditor.d.ts +0 -34
- package/dist/types/src/components/CellEditor/CellEditor.d.ts.map +0 -1
- package/dist/types/src/components/CellEditor/CellEditor.stories.d.ts.map +0 -1
- package/dist/types/src/components/CellEditor/extension.d.ts.map +0 -1
- package/dist/types/src/components/CellEditor/extension.test.d.ts.map +0 -1
- package/dist/types/src/components/CellEditor/index.d.ts +0 -3
- package/dist/types/src/components/CellEditor/index.d.ts.map +0 -1
- package/src/components/CellEditor/CellEditor.tsx +0 -163
- /package/dist/lib/browser/{SheetContainer-LG77O4RM.mjs.map → SheetContainer-7QG5RIM4.mjs.map} +0 -0
- /package/dist/lib/node/{SheetContainer-OZ7DHH4L.cjs.map → SheetContainer-DXDD2G3A.cjs.map} +0 -0
- /package/dist/lib/node-esm/{SheetContainer-4XS2G25Z.mjs.map → SheetContainer-5WYNOYYD.mjs.map} +0 -0
- /package/dist/types/src/{components/CellEditor → extensions/editor}/extension.d.ts +0 -0
- /package/dist/types/src/{components/CellEditor → extensions/editor}/extension.test.d.ts +0 -0
- /package/src/{components/CellEditor → extensions/editor}/extension.test.ts +0 -0
- /package/src/{components/CellEditor → extensions/editor}/extension.ts +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/plugin-sheet",
|
|
3
|
-
"version": "0.6.12-main.
|
|
3
|
+
"version": "0.6.12-main.c1d977f",
|
|
4
4
|
"description": "Braneframe sketch plugin",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"@dnd-kit/modifiers": "^6.0.0",
|
|
66
66
|
"@dnd-kit/sortable": "^7.0.1",
|
|
67
67
|
"@dnd-kit/utilities": "^3.2.0",
|
|
68
|
-
"@effect/schema": "^0.
|
|
68
|
+
"@effect/schema": "^0.75.1",
|
|
69
69
|
"@lezer/common": "^1.2.2",
|
|
70
70
|
"@lezer/highlight": "^1.2.1",
|
|
71
71
|
"@lezer/lezer": "^1.1.2",
|
|
@@ -79,29 +79,29 @@
|
|
|
79
79
|
"re-resizable": "^6.9.17",
|
|
80
80
|
"react-markdown": "^8.0.5",
|
|
81
81
|
"react-resize-detector": "^11.0.1",
|
|
82
|
-
"@dxos/app-framework": "0.6.12-main.
|
|
83
|
-
"@dxos/
|
|
84
|
-
"@dxos/
|
|
85
|
-
"@dxos/
|
|
86
|
-
"@dxos/
|
|
87
|
-
"@dxos/
|
|
88
|
-
"@dxos/debug": "0.6.12-main.
|
|
89
|
-
"@dxos/
|
|
90
|
-
"@dxos/
|
|
91
|
-
"@dxos/log": "0.6.12-main.
|
|
92
|
-
"@dxos/plugin-attention": "0.6.12-main.
|
|
93
|
-
"@dxos/plugin-graph": "0.6.12-main.
|
|
94
|
-
"@dxos/plugin-
|
|
95
|
-
"@dxos/plugin-script": "0.6.12-main.
|
|
96
|
-
"@dxos/plugin-
|
|
97
|
-
"@dxos/plugin-space": "0.6.12-main.
|
|
98
|
-
"@dxos/plugin-stack": "0.6.12-main.
|
|
99
|
-
"@dxos/react-
|
|
100
|
-
"@dxos/react-
|
|
101
|
-
"@dxos/react-ui-attention": "0.6.12-main.
|
|
102
|
-
"@dxos/react-ui-grid": "0.6.12-main.
|
|
103
|
-
"@dxos/
|
|
104
|
-
"@dxos/
|
|
82
|
+
"@dxos/app-framework": "0.6.12-main.c1d977f",
|
|
83
|
+
"@dxos/client": "0.6.12-main.c1d977f",
|
|
84
|
+
"@dxos/async": "0.6.12-main.c1d977f",
|
|
85
|
+
"@dxos/crypto": "0.6.12-main.c1d977f",
|
|
86
|
+
"@dxos/context": "0.6.12-main.c1d977f",
|
|
87
|
+
"@dxos/echo-schema": "0.6.12-main.c1d977f",
|
|
88
|
+
"@dxos/debug": "0.6.12-main.c1d977f",
|
|
89
|
+
"@dxos/invariant": "0.6.12-main.c1d977f",
|
|
90
|
+
"@dxos/keys": "0.6.12-main.c1d977f",
|
|
91
|
+
"@dxos/log": "0.6.12-main.c1d977f",
|
|
92
|
+
"@dxos/plugin-attention": "0.6.12-main.c1d977f",
|
|
93
|
+
"@dxos/plugin-graph": "0.6.12-main.c1d977f",
|
|
94
|
+
"@dxos/plugin-client": "0.6.12-main.c1d977f",
|
|
95
|
+
"@dxos/plugin-script": "0.6.12-main.c1d977f",
|
|
96
|
+
"@dxos/plugin-markdown": "0.6.12-main.c1d977f",
|
|
97
|
+
"@dxos/plugin-space": "0.6.12-main.c1d977f",
|
|
98
|
+
"@dxos/plugin-stack": "0.6.12-main.c1d977f",
|
|
99
|
+
"@dxos/react-hooks": "0.6.12-main.c1d977f",
|
|
100
|
+
"@dxos/react-client": "0.6.12-main.c1d977f",
|
|
101
|
+
"@dxos/react-ui-attention": "0.6.12-main.c1d977f",
|
|
102
|
+
"@dxos/react-ui-grid": "0.6.12-main.c1d977f",
|
|
103
|
+
"@dxos/react-ui-editor": "0.6.12-main.c1d977f",
|
|
104
|
+
"@dxos/util": "0.6.12-main.c1d977f"
|
|
105
105
|
},
|
|
106
106
|
"devDependencies": {
|
|
107
107
|
"@lezer/generator": "^1.7.1",
|
|
@@ -114,20 +114,20 @@
|
|
|
114
114
|
"react": "~18.2.0",
|
|
115
115
|
"react-dom": "~18.2.0",
|
|
116
116
|
"vite": "5.4.7",
|
|
117
|
-
"@dxos/echo-generator": "0.6.12-main.
|
|
118
|
-
"@dxos/
|
|
119
|
-
"@dxos/
|
|
120
|
-
"@dxos/react-ui": "0.6.12-main.
|
|
121
|
-
"@dxos/react-ui-
|
|
122
|
-
"@dxos/
|
|
123
|
-
"@dxos/
|
|
117
|
+
"@dxos/echo-generator": "0.6.12-main.c1d977f",
|
|
118
|
+
"@dxos/react-ui": "0.6.12-main.c1d977f",
|
|
119
|
+
"@dxos/random": "0.6.12-main.c1d977f",
|
|
120
|
+
"@dxos/react-ui-syntax-highlighter": "0.6.12-main.c1d977f",
|
|
121
|
+
"@dxos/react-ui-theme": "0.6.12-main.c1d977f",
|
|
122
|
+
"@dxos/storybook-utils": "0.6.12-main.c1d977f",
|
|
123
|
+
"@dxos/react-ui-types": "0.6.12-main.c1d977f"
|
|
124
124
|
},
|
|
125
125
|
"peerDependencies": {
|
|
126
126
|
"@phosphor-icons/react": "^2.1.5",
|
|
127
127
|
"react": "~18.2.0",
|
|
128
128
|
"react-dom": "~18.2.0",
|
|
129
|
-
"@dxos/react-ui": "0.6.12-main.
|
|
130
|
-
"@dxos/react-ui-theme": "0.6.12-main.
|
|
129
|
+
"@dxos/react-ui": "0.6.12-main.c1d977f",
|
|
130
|
+
"@dxos/react-ui-theme": "0.6.12-main.c1d977f"
|
|
131
131
|
},
|
|
132
132
|
"publishConfig": {
|
|
133
133
|
"access": "public"
|
|
@@ -10,44 +10,18 @@ import {
|
|
|
10
10
|
type GridContentProps,
|
|
11
11
|
type GridScopedProps,
|
|
12
12
|
useGridContext,
|
|
13
|
+
editorKeys,
|
|
14
|
+
type EditorKeysProps,
|
|
15
|
+
GridCellEditor,
|
|
13
16
|
} from '@dxos/react-ui-grid';
|
|
14
17
|
|
|
15
18
|
import { colLabelCell, dxGridCellIndexToSheetCellAddress, rowLabelCell, useSheetModelDxGridProps } from './util';
|
|
16
19
|
import { rangeToA1Notation, type CellRange } from '../../defs';
|
|
20
|
+
import { rangeExtension, sheetExtension, type CellRangeNotifier } from '../../extensions';
|
|
17
21
|
import { type ComputeGraph } from '../../graph';
|
|
18
22
|
import { useFormattingModel, useSheetModel, type UseSheetModelOptions } from '../../hooks';
|
|
19
23
|
import { type SheetModel, type FormattingModel } from '../../model';
|
|
20
24
|
import { type SheetType } from '../../types';
|
|
21
|
-
import {
|
|
22
|
-
CellEditor,
|
|
23
|
-
type CellEditorProps,
|
|
24
|
-
type CellRangeNotifier,
|
|
25
|
-
editorKeys,
|
|
26
|
-
type EditorKeysProps,
|
|
27
|
-
rangeExtension,
|
|
28
|
-
sheetExtension,
|
|
29
|
-
} from '../CellEditor';
|
|
30
|
-
|
|
31
|
-
const GridSheetCellEditor = ({
|
|
32
|
-
model,
|
|
33
|
-
extension,
|
|
34
|
-
__gridScope,
|
|
35
|
-
}: GridScopedProps<Pick<CellEditorProps, 'extension'> & { model: SheetModel }>) => {
|
|
36
|
-
const { id, editing, setEditing, editBox } = useGridContext('GridSheetCellEditor', __gridScope);
|
|
37
|
-
const cell = dxGridCellIndexToSheetCellAddress(editing);
|
|
38
|
-
|
|
39
|
-
return editing ? (
|
|
40
|
-
<CellEditor
|
|
41
|
-
variant='grid'
|
|
42
|
-
value={editing.initialContent ?? (cell ? model.getCellText(cell) : undefined)}
|
|
43
|
-
autoFocus
|
|
44
|
-
box={editBox}
|
|
45
|
-
onBlur={() => setEditing(null)}
|
|
46
|
-
extension={extension}
|
|
47
|
-
gridId={id}
|
|
48
|
-
/>
|
|
49
|
-
) : null;
|
|
50
|
-
};
|
|
51
25
|
|
|
52
26
|
const initialCells = {
|
|
53
27
|
grid: {},
|
|
@@ -82,7 +56,7 @@ const GridSheetImpl = ({
|
|
|
82
56
|
const handleClose = useCallback<NonNullable<EditorKeysProps['onClose']> | NonNullable<EditorKeysProps['onNav']>>(
|
|
83
57
|
(value, { key, shift }) => {
|
|
84
58
|
if (value !== undefined) {
|
|
85
|
-
model.setValue(dxGridCellIndexToSheetCellAddress(editing)
|
|
59
|
+
model.setValue(dxGridCellIndexToSheetCellAddress(editing!.index), value);
|
|
86
60
|
}
|
|
87
61
|
setEditing(null);
|
|
88
62
|
const axis = ['Enter', 'ArrowUp', 'ArrowDown'].includes(key)
|
|
@@ -136,9 +110,17 @@ const GridSheetImpl = ({
|
|
|
136
110
|
[model, handleClose, editing],
|
|
137
111
|
);
|
|
138
112
|
|
|
113
|
+
const getCellContent = useCallback(
|
|
114
|
+
(index: string) => {
|
|
115
|
+
const cell = dxGridCellIndexToSheetCellAddress(index);
|
|
116
|
+
return model.getCellText(cell);
|
|
117
|
+
},
|
|
118
|
+
[model],
|
|
119
|
+
);
|
|
120
|
+
|
|
139
121
|
return (
|
|
140
122
|
<>
|
|
141
|
-
<
|
|
123
|
+
<GridCellEditor getCellContent={getCellContent} extension={extension} />
|
|
142
124
|
<Grid.Content
|
|
143
125
|
initialCells={initialCells}
|
|
144
126
|
columns={columns}
|
package/src/components/{CellEditor/CellEditor.stories.tsx → GridSheet/SheetCellEditor.stories.tsx}
RENAMED
|
@@ -9,12 +9,12 @@ import React, { useEffect, useMemo, useState } from 'react';
|
|
|
9
9
|
import { Client } from '@dxos/client';
|
|
10
10
|
import { createDocAccessor, type EchoReactiveObject } from '@dxos/client/echo';
|
|
11
11
|
import { automerge } from '@dxos/react-ui-editor';
|
|
12
|
+
import { CellEditor, type CellEditorProps } from '@dxos/react-ui-grid';
|
|
12
13
|
import { withTheme } from '@dxos/storybook-utils';
|
|
13
14
|
|
|
14
15
|
import { HyperFormula } from '#hyperformula';
|
|
15
|
-
import { CellEditor, type CellEditorProps } from './CellEditor';
|
|
16
|
-
import { sheetExtension } from './extension';
|
|
17
16
|
import { createSheet } from '../../defs';
|
|
17
|
+
import { sheetExtension } from '../../extensions';
|
|
18
18
|
import { defaultFunctions } from '../../graph';
|
|
19
19
|
import { SheetType } from '../../types';
|
|
20
20
|
|
|
@@ -6,7 +6,6 @@ import { type MutableRefObject, useEffect, useLayoutEffect, useState } from 'rea
|
|
|
6
6
|
|
|
7
7
|
import { createDocAccessor } from '@dxos/react-client/echo';
|
|
8
8
|
import {
|
|
9
|
-
type GridEditing,
|
|
10
9
|
type GridContentProps,
|
|
11
10
|
type DxGridElement,
|
|
12
11
|
type DxGridAxisMeta,
|
|
@@ -21,11 +20,8 @@ import { mx } from '@dxos/react-ui-theme';
|
|
|
21
20
|
import { type CellAddress } from '../../defs';
|
|
22
21
|
import { type SheetModel, type FormattingModel } from '../../model';
|
|
23
22
|
|
|
24
|
-
export const dxGridCellIndexToSheetCellAddress = (
|
|
25
|
-
|
|
26
|
-
return null;
|
|
27
|
-
}
|
|
28
|
-
const [colStr, rowStr] = gridEditing.index.split(',');
|
|
23
|
+
export const dxGridCellIndexToSheetCellAddress = (index: string): CellAddress => {
|
|
24
|
+
const [colStr, rowStr] = index.split(',');
|
|
29
25
|
return {
|
|
30
26
|
col: parseInt(colStr),
|
|
31
27
|
row: parseInt(rowStr),
|
|
@@ -42,6 +42,7 @@ import { fullyQualifiedId, createDocAccessor } from '@dxos/client/echo';
|
|
|
42
42
|
import { log } from '@dxos/log';
|
|
43
43
|
import { type ThemedClassName } from '@dxos/react-ui';
|
|
44
44
|
import { ATTENABLE_ATTRIBUTE, useAttendableAttributes, useAttention, useAttentionPath } from '@dxos/react-ui-attention';
|
|
45
|
+
import { CellEditor, type EditorKeysProps, editorKeys } from '@dxos/react-ui-grid';
|
|
45
46
|
import { mx } from '@dxos/react-ui-theme';
|
|
46
47
|
|
|
47
48
|
import {
|
|
@@ -73,14 +74,7 @@ import {
|
|
|
73
74
|
addressToIndex,
|
|
74
75
|
addressFromIndex,
|
|
75
76
|
} from '../../defs';
|
|
76
|
-
import {
|
|
77
|
-
CellEditor,
|
|
78
|
-
type CellRangeNotifier,
|
|
79
|
-
type EditorKeysProps,
|
|
80
|
-
editorKeys,
|
|
81
|
-
rangeExtension,
|
|
82
|
-
sheetExtension,
|
|
83
|
-
} from '../CellEditor';
|
|
77
|
+
import { rangeExtension, sheetExtension, type CellRangeNotifier } from '../../extensions';
|
|
84
78
|
|
|
85
79
|
// TODO(burdon): Virtualization bug.
|
|
86
80
|
// TODO(burdon): Toolbar styles and formatting.
|
package/src/extensions/index.ts
CHANGED
package/src/{meta.tsx → meta.ts}
RENAMED
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
// Copyright 2023 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import {
|
|
5
|
+
import { type PluginMeta } from '@dxos/app-framework';
|
|
6
6
|
|
|
7
7
|
export const SHEET_PLUGIN = 'dxos.org/plugin/sheet';
|
|
8
8
|
|
|
9
|
-
export default
|
|
9
|
+
export default {
|
|
10
10
|
id: SHEET_PLUGIN,
|
|
11
11
|
name: 'Sheet',
|
|
12
12
|
description: 'A simple spreadsheet plugin.',
|
|
13
13
|
icon: 'ph--grid-nine--regular',
|
|
14
|
-
}
|
|
14
|
+
} satisfies PluginMeta;
|
|
@@ -8,12 +8,10 @@ import { Trigger } from '@dxos/async';
|
|
|
8
8
|
import { FunctionType } from '@dxos/plugin-script/types';
|
|
9
9
|
|
|
10
10
|
import { SheetModel } from './sheet-model';
|
|
11
|
-
import {
|
|
11
|
+
import { addressFromA1Notation, createSheet } from '../defs';
|
|
12
12
|
import { TestBuilder, testFunctionPlugins } from '../graph/testing';
|
|
13
13
|
import { type CellScalarValue } from '../types';
|
|
14
14
|
|
|
15
|
-
// TODO(burdon): GPT("prompt", inputs); e.g., with large text cells.
|
|
16
|
-
|
|
17
15
|
describe('SheetModel', () => {
|
|
18
16
|
let testBuilder: TestBuilder;
|
|
19
17
|
beforeEach(async () => {
|
package/src/types.ts
CHANGED
|
@@ -105,7 +105,7 @@ export class SheetType extends TypedObject({ typename: 'dxos.org/type/SheetType'
|
|
|
105
105
|
name: S.optional(S.String),
|
|
106
106
|
|
|
107
107
|
// Sparse map of cells referenced by index.
|
|
108
|
-
cells: S.mutable(S.Record(S.String, S.mutable(CellValue))),
|
|
108
|
+
cells: S.mutable(S.Record({ key: S.String, value: S.mutable(CellValue) })),
|
|
109
109
|
|
|
110
110
|
// Ordered row indices.
|
|
111
111
|
rows: S.mutable(S.Array(S.String)),
|
|
@@ -114,13 +114,13 @@ export class SheetType extends TypedObject({ typename: 'dxos.org/type/SheetType'
|
|
|
114
114
|
columns: S.mutable(S.Array(S.String)),
|
|
115
115
|
|
|
116
116
|
// Row metadata referenced by index.
|
|
117
|
-
rowMeta: S.mutable(S.Record(S.String, S.mutable(RowColumnMeta))),
|
|
117
|
+
rowMeta: S.mutable(S.Record({ key: S.String, value: S.mutable(RowColumnMeta) })),
|
|
118
118
|
|
|
119
119
|
// Column metadata referenced by index.
|
|
120
|
-
columnMeta: S.mutable(S.Record(S.String, S.mutable(RowColumnMeta))),
|
|
120
|
+
columnMeta: S.mutable(S.Record({ key: S.String, value: S.mutable(RowColumnMeta) })),
|
|
121
121
|
|
|
122
122
|
// Cell formatting referenced by indexed range.
|
|
123
|
-
formatting: S.mutable(S.Record(S.String, S.mutable(Formatting))),
|
|
123
|
+
formatting: S.mutable(S.Record({ key: S.String, value: S.mutable(Formatting) })),
|
|
124
124
|
|
|
125
125
|
// Threads associated with the sheet
|
|
126
126
|
threads: S.optional(S.mutable(S.Array(ref(ThreadType)))),
|