@dxos/plugin-sheet 0.7.5-main.9d26e3a → 0.7.5-main.b19bfc8
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-IMHGS7Z4.mjs +370 -0
- package/dist/lib/browser/SheetContainer-IMHGS7Z4.mjs.map +7 -0
- package/dist/lib/browser/{chunk-A374JPWV.mjs → chunk-AT7F2WDW.mjs} +157 -391
- package/dist/lib/browser/chunk-AT7F2WDW.mjs.map +7 -0
- package/dist/lib/browser/chunk-FOO6NGBM.mjs +229 -0
- package/dist/lib/browser/chunk-FOO6NGBM.mjs.map +7 -0
- package/dist/lib/browser/chunk-GAFHJBCU.mjs +18 -0
- package/dist/lib/browser/chunk-GAFHJBCU.mjs.map +7 -0
- package/dist/lib/browser/chunk-LXHRT3CC.mjs +15 -0
- package/dist/lib/browser/chunk-LXHRT3CC.mjs.map +7 -0
- package/dist/lib/browser/{chunk-Q4XS4YWF.mjs → chunk-OOSRC36N.mjs} +2 -2
- package/dist/lib/browser/chunk-OOSRC36N.mjs.map +7 -0
- package/dist/lib/browser/compute-graph-registry-EGPD4HEX.mjs +27 -0
- package/dist/lib/browser/compute-graph-registry-EGPD4HEX.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +88 -218
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/intent-resolver-6S2RMLQF.mjs +56 -0
- package/dist/lib/browser/intent-resolver-6S2RMLQF.mjs.map +7 -0
- package/dist/lib/browser/markdown-CFJIWHZX.mjs +26 -0
- package/dist/lib/browser/markdown-CFJIWHZX.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/react-surface-PHKJZYFB.mjs +52 -0
- package/dist/lib/browser/react-surface-PHKJZYFB.mjs.map +7 -0
- package/dist/lib/browser/thread-7ZWW5EA7.mjs +17 -0
- package/dist/lib/browser/thread-7ZWW5EA7.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +2 -2
- package/dist/lib/node/SheetContainer-NNIZN4AK.cjs +364 -0
- package/dist/lib/node/SheetContainer-NNIZN4AK.cjs.map +7 -0
- package/dist/lib/node/{chunk-FDEQ2PGJ.cjs → chunk-2KCZUH72.cjs} +198 -428
- package/dist/lib/node/chunk-2KCZUH72.cjs.map +7 -0
- package/dist/lib/node/{chunk-TQOJ7DG2.cjs → chunk-4LSYTNS4.cjs} +6 -6
- package/dist/lib/node/chunk-4LSYTNS4.cjs.map +7 -0
- package/dist/lib/node/{chunk-2ZVZI2KJ.cjs → chunk-MLU6KRQN.cjs} +12 -9
- package/dist/lib/node/chunk-MLU6KRQN.cjs.map +7 -0
- package/dist/lib/node/chunk-P4KSGZSS.cjs +251 -0
- package/dist/lib/node/chunk-P4KSGZSS.cjs.map +7 -0
- package/dist/lib/node/{meta.cjs → chunk-ZV2RS3QH.cjs} +12 -8
- package/dist/lib/node/chunk-ZV2RS3QH.cjs.map +7 -0
- package/dist/lib/node/compute-graph-registry-GJK5H264.cjs +53 -0
- package/dist/lib/node/compute-graph-registry-GJK5H264.cjs.map +7 -0
- package/dist/lib/node/index.cjs +89 -215
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/intent-resolver-I25V7SBT.cjs +69 -0
- package/dist/lib/node/intent-resolver-I25V7SBT.cjs.map +7 -0
- package/dist/lib/node/markdown-YTCSW66K.cjs +40 -0
- package/dist/lib/node/markdown-YTCSW66K.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/react-surface-HLE6CRA6.cjs +70 -0
- package/dist/lib/node/react-surface-HLE6CRA6.cjs.map +7 -0
- package/dist/lib/node/thread-DRNYTR6M.cjs +32 -0
- package/dist/lib/node/thread-DRNYTR6M.cjs.map +7 -0
- package/dist/lib/node/types/index.cjs +30 -30
- package/dist/lib/node/types/index.cjs.map +1 -1
- package/dist/lib/node-esm/SheetContainer-PGDJKGTZ.mjs +371 -0
- package/dist/lib/node-esm/SheetContainer-PGDJKGTZ.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-NYYIDVR7.mjs → chunk-HPAMZ6SP.mjs} +2 -2
- package/dist/lib/node-esm/chunk-HPAMZ6SP.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-PTOI45NK.mjs +231 -0
- package/dist/lib/node-esm/chunk-PTOI45NK.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-RTZXXOS2.mjs +20 -0
- package/dist/lib/node-esm/chunk-RTZXXOS2.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-SX3S7UKU.mjs +16 -0
- package/dist/lib/node-esm/chunk-SX3S7UKU.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-L5PQHVTX.mjs → chunk-ZM7XLUGL.mjs} +157 -391
- package/dist/lib/node-esm/chunk-ZM7XLUGL.mjs.map +7 -0
- package/dist/lib/node-esm/compute-graph-registry-3F5JCYEN.mjs +28 -0
- package/dist/lib/node-esm/compute-graph-registry-3F5JCYEN.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +88 -218
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/intent-resolver-IPRSINII.mjs +57 -0
- package/dist/lib/node-esm/intent-resolver-IPRSINII.mjs.map +7 -0
- package/dist/lib/node-esm/markdown-CGSK44XJ.mjs +27 -0
- package/dist/lib/node-esm/markdown-CGSK44XJ.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/react-surface-PFRJ7V5N.mjs +53 -0
- package/dist/lib/node-esm/react-surface-PFRJ7V5N.mjs.map +7 -0
- package/dist/lib/node-esm/thread-6T5VXPAF.mjs +18 -0
- package/dist/lib/node-esm/thread-6T5VXPAF.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +2 -2
- package/dist/types/src/SheetPlugin.d.ts +1 -3
- package/dist/types/src/SheetPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/capabilities.d.ts +5 -0
- package/dist/types/src/capabilities/capabilities.d.ts.map +1 -0
- package/dist/types/src/capabilities/compute-graph-registry.d.ts +4 -0
- package/dist/types/src/capabilities/compute-graph-registry.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +12 -0
- package/dist/types/src/capabilities/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/intent-resolver.d.ts +4 -0
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -0
- package/dist/types/src/capabilities/markdown.d.ts +6 -0
- package/dist/types/src/capabilities/markdown.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface.d.ts +4 -0
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/thread.d.ts +6 -0
- package/dist/types/src/capabilities/thread.d.ts.map +1 -0
- package/dist/types/src/components/ComputeGraph/ComputeGraphContextProvider.d.ts +1 -1
- package/dist/types/src/components/ComputeGraph/ComputeGraphContextProvider.d.ts.map +1 -1
- package/dist/types/src/components/FunctionEditor/FunctionEditor.d.ts +1 -2
- package/dist/types/src/components/FunctionEditor/FunctionEditor.d.ts.map +1 -1
- package/dist/types/src/components/GridSheet/GridSheet.d.ts +1 -2
- package/dist/types/src/components/GridSheet/GridSheet.d.ts.map +1 -1
- package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts +1 -2
- package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts.map +1 -1
- package/dist/types/src/components/GridSheet/SheetCellEditor.stories.d.ts +1 -2
- package/dist/types/src/components/GridSheet/SheetCellEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/RangeList/RangeList.d.ts +1 -2
- package/dist/types/src/components/RangeList/RangeList.d.ts.map +1 -1
- package/dist/types/src/components/SheetContainer/SheetContainer.d.ts +1 -2
- package/dist/types/src/components/SheetContainer/SheetContainer.d.ts.map +1 -1
- package/dist/types/src/components/SheetContainer/SheetContainer.stories.d.ts +2 -3
- 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 +7 -0
- package/dist/types/src/components/SheetToolbar/SheetToolbar.d.ts.map +1 -0
- package/dist/types/src/components/SheetToolbar/SheetToolbar.stories.d.ts +6 -0
- package/dist/types/src/components/SheetToolbar/SheetToolbar.stories.d.ts.map +1 -0
- package/dist/types/src/components/SheetToolbar/align.d.ts +28 -0
- package/dist/types/src/components/SheetToolbar/align.d.ts.map +1 -0
- package/dist/types/src/components/SheetToolbar/comment.d.ts +23 -0
- package/dist/types/src/components/SheetToolbar/comment.d.ts.map +1 -0
- package/dist/types/src/components/SheetToolbar/index.d.ts +2 -0
- package/dist/types/src/components/SheetToolbar/index.d.ts.map +1 -0
- package/dist/types/src/components/SheetToolbar/style.d.ts +26 -0
- package/dist/types/src/components/SheetToolbar/style.d.ts.map +1 -0
- package/dist/types/src/components/SheetToolbar/useToolbarAction.d.ts +8 -0
- package/dist/types/src/components/SheetToolbar/useToolbarAction.d.ts.map +1 -0
- package/dist/types/src/components/SheetToolbar/useToolbarState.d.ts +6 -0
- package/dist/types/src/components/SheetToolbar/useToolbarState.d.ts.map +1 -0
- package/dist/types/src/components/index.d.ts +3 -4
- package/dist/types/src/components/index.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/index.d.ts +2 -3
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/integrations/thread-ranges.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +2 -2
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/testing/testing.d.ts +1 -1
- package/dist/types/src/testing/testing.d.ts.map +1 -1
- package/dist/types/src/types/schema.d.ts +14 -14
- package/dist/types/src/types/schema.d.ts.map +1 -1
- package/dist/types/src/types/sheet-range-types.d.ts +1 -1
- package/dist/types/src/types/sheet-range-types.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +0 -11
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +46 -52
- package/src/SheetPlugin.tsx +68 -105
- package/src/capabilities/capabilities.ts +14 -0
- package/src/capabilities/compute-graph-registry.ts +25 -0
- package/src/capabilities/index.ts +13 -0
- package/src/capabilities/intent-resolver.ts +38 -0
- package/src/capabilities/markdown.ts +22 -0
- package/src/capabilities/react-surface.tsx +37 -0
- package/src/capabilities/thread.ts +14 -0
- package/src/components/GridSheet/GridSheet.stories.tsx +2 -0
- package/src/components/GridSheet/util.ts +1 -1
- package/src/components/SheetContainer/SheetContainer.stories.tsx +28 -22
- package/src/components/SheetContainer/SheetContainer.tsx +3 -8
- package/src/components/{Toolbar/Toolbar.stories.tsx → SheetToolbar/SheetToolbar.stories.tsx} +4 -8
- package/src/components/SheetToolbar/SheetToolbar.tsx +48 -0
- package/src/components/SheetToolbar/align.ts +68 -0
- package/src/components/SheetToolbar/comment.ts +56 -0
- package/src/components/{Toolbar → SheetToolbar}/index.ts +1 -1
- package/src/components/SheetToolbar/style.ts +72 -0
- package/src/components/SheetToolbar/useToolbarAction.ts +87 -0
- package/src/components/SheetToolbar/useToolbarState.ts +17 -0
- package/src/components/index.ts +0 -1
- package/src/extensions/compute.stories.tsx +2 -2
- package/src/index.ts +2 -5
- package/src/integrations/thread-ranges.ts +21 -10
- package/src/meta.ts +4 -2
- package/src/types/sheet-range-types.ts +1 -1
- package/src/types/types.ts +0 -26
- package/dist/lib/browser/SheetContainer-S4NCLUYL.mjs +0 -290
- package/dist/lib/browser/SheetContainer-S4NCLUYL.mjs.map +0 -7
- package/dist/lib/browser/chunk-A374JPWV.mjs.map +0 -7
- package/dist/lib/browser/chunk-Q4XS4YWF.mjs.map +0 -7
- package/dist/lib/browser/chunk-RABELMEQ.mjs +0 -15
- package/dist/lib/browser/chunk-RABELMEQ.mjs.map +0 -7
- package/dist/lib/browser/meta.mjs +0 -9
- package/dist/lib/browser/meta.mjs.map +0 -7
- package/dist/lib/node/SheetContainer-TP4GYXZB.cjs +0 -296
- package/dist/lib/node/SheetContainer-TP4GYXZB.cjs.map +0 -7
- package/dist/lib/node/chunk-2ZVZI2KJ.cjs.map +0 -7
- package/dist/lib/node/chunk-FDEQ2PGJ.cjs.map +0 -7
- package/dist/lib/node/chunk-TQOJ7DG2.cjs.map +0 -7
- package/dist/lib/node/meta.cjs.map +0 -7
- package/dist/lib/node-esm/SheetContainer-YB3JBVPZ.mjs +0 -291
- package/dist/lib/node-esm/SheetContainer-YB3JBVPZ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-BM2Q3FFC.mjs +0 -17
- package/dist/lib/node-esm/chunk-BM2Q3FFC.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-L5PQHVTX.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-NYYIDVR7.mjs.map +0 -7
- package/dist/lib/node-esm/meta.mjs +0 -10
- package/dist/lib/node-esm/meta.mjs.map +0 -7
- package/dist/types/src/components/SheetObjectSettings.d.ts +0 -7
- package/dist/types/src/components/SheetObjectSettings.d.ts.map +0 -1
- package/dist/types/src/components/Toolbar/Toolbar.d.ts +0 -48
- package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +0 -1
- package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts +0 -7
- package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts.map +0 -1
- package/dist/types/src/components/Toolbar/index.d.ts +0 -2
- package/dist/types/src/components/Toolbar/index.d.ts.map +0 -1
- package/dist/types/src/testing/playwright/playwright.config.d.ts +0 -3
- package/dist/types/src/testing/playwright/playwright.config.d.ts.map +0 -1
- package/src/components/SheetObjectSettings.tsx +0 -38
- package/src/components/Toolbar/Toolbar.tsx +0 -344
- /package/src/testing/playwright/{playwright.config.ts → playwright.config.cts} +0 -0
package/package.json
CHANGED
|
@@ -1,23 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/plugin-sheet",
|
|
3
|
-
"version": "0.7.5-main.
|
|
3
|
+
"version": "0.7.5-main.b19bfc8",
|
|
4
4
|
"description": "Braneframe sketch plugin",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"author": "DXOS.org",
|
|
9
9
|
"sideEffects": true,
|
|
10
|
+
"type": "module",
|
|
10
11
|
"exports": {
|
|
11
12
|
".": {
|
|
12
13
|
"types": "./dist/types/src/index.d.ts",
|
|
13
14
|
"browser": "./dist/lib/browser/index.mjs",
|
|
14
15
|
"node": "./dist/lib/node-esm/index.mjs"
|
|
15
16
|
},
|
|
16
|
-
"./meta": {
|
|
17
|
-
"types": "./dist/types/src/meta.d.ts",
|
|
18
|
-
"browser": "./dist/lib/browser/meta.mjs",
|
|
19
|
-
"node": "./dist/lib/node-esm/meta.mjs"
|
|
20
|
-
},
|
|
21
17
|
"./types": {
|
|
22
18
|
"types": "./dist/types/src/types/index.d.ts",
|
|
23
19
|
"browser": "./dist/lib/browser/types/index.mjs",
|
|
@@ -27,9 +23,6 @@
|
|
|
27
23
|
"types": "dist/types/src/index.d.ts",
|
|
28
24
|
"typesVersions": {
|
|
29
25
|
"*": {
|
|
30
|
-
"meta": [
|
|
31
|
-
"dist/types/src/meta.d.ts"
|
|
32
|
-
],
|
|
33
26
|
"types": [
|
|
34
27
|
"dist/types/src/types.d.ts"
|
|
35
28
|
]
|
|
@@ -54,7 +47,7 @@
|
|
|
54
47
|
"@lezer/lezer": "^1.1.2",
|
|
55
48
|
"@lezer/lr": "^1.4.2",
|
|
56
49
|
"@preact/signals-core": "^1.6.0",
|
|
57
|
-
"@radix-ui/react-context": "
|
|
50
|
+
"@radix-ui/react-context": "1.1.1",
|
|
58
51
|
"@tanstack/react-virtual": "^3.9.0",
|
|
59
52
|
"codemirror-lang-spreadsheet": "^1.3.0",
|
|
60
53
|
"date-fns": "^3.3.1",
|
|
@@ -62,37 +55,38 @@
|
|
|
62
55
|
"re-resizable": "^6.9.17",
|
|
63
56
|
"react-markdown": "^8.0.5",
|
|
64
57
|
"react-resize-detector": "^11.0.1",
|
|
65
|
-
"@dxos/app-framework": "0.7.5-main.
|
|
66
|
-
"@dxos/
|
|
67
|
-
"@dxos/
|
|
68
|
-
"@dxos/
|
|
69
|
-
"@dxos/
|
|
70
|
-
"@dxos/
|
|
71
|
-
"@dxos/
|
|
72
|
-
"@dxos/
|
|
73
|
-
"@dxos/invariant": "0.7.5-main.
|
|
74
|
-
"@dxos/
|
|
75
|
-
"@dxos/keys": "0.7.5-main.
|
|
76
|
-
"@dxos/
|
|
77
|
-
"@dxos/
|
|
78
|
-
"@dxos/plugin-attention": "0.7.5-main.
|
|
79
|
-
"@dxos/plugin-client": "0.7.5-main.
|
|
80
|
-
"@dxos/plugin-graph": "0.7.5-main.
|
|
81
|
-
"@dxos/plugin-
|
|
82
|
-
"@dxos/plugin-
|
|
83
|
-
"@dxos/plugin-space": "0.7.5-main.
|
|
84
|
-
"@dxos/
|
|
85
|
-
"@dxos/plugin-thread": "0.7.5-main.
|
|
86
|
-
"@dxos/react-
|
|
87
|
-
"@dxos/react-
|
|
88
|
-
"@dxos/
|
|
89
|
-
"@dxos/react-
|
|
90
|
-
"@dxos/react-ui-form": "0.7.5-main.
|
|
91
|
-
"@dxos/react-ui-
|
|
92
|
-
"@dxos/react-ui-
|
|
93
|
-
"@dxos/react-ui-
|
|
94
|
-
"@dxos/
|
|
95
|
-
"@dxos/
|
|
58
|
+
"@dxos/app-framework": "0.7.5-main.b19bfc8",
|
|
59
|
+
"@dxos/client": "0.7.5-main.b19bfc8",
|
|
60
|
+
"@dxos/compute": "0.7.5-main.b19bfc8",
|
|
61
|
+
"@dxos/context": "0.7.5-main.b19bfc8",
|
|
62
|
+
"@dxos/functions": "0.7.5-main.b19bfc8",
|
|
63
|
+
"@dxos/crypto": "0.7.5-main.b19bfc8",
|
|
64
|
+
"@dxos/async": "0.7.5-main.b19bfc8",
|
|
65
|
+
"@dxos/debug": "0.7.5-main.b19bfc8",
|
|
66
|
+
"@dxos/invariant": "0.7.5-main.b19bfc8",
|
|
67
|
+
"@dxos/echo-schema": "0.7.5-main.b19bfc8",
|
|
68
|
+
"@dxos/keys": "0.7.5-main.b19bfc8",
|
|
69
|
+
"@dxos/live-object": "0.7.5-main.b19bfc8",
|
|
70
|
+
"@dxos/log": "0.7.5-main.b19bfc8",
|
|
71
|
+
"@dxos/plugin-attention": "0.7.5-main.b19bfc8",
|
|
72
|
+
"@dxos/plugin-client": "0.7.5-main.b19bfc8",
|
|
73
|
+
"@dxos/plugin-graph": "0.7.5-main.b19bfc8",
|
|
74
|
+
"@dxos/plugin-script": "0.7.5-main.b19bfc8",
|
|
75
|
+
"@dxos/plugin-stack": "0.7.5-main.b19bfc8",
|
|
76
|
+
"@dxos/plugin-space": "0.7.5-main.b19bfc8",
|
|
77
|
+
"@dxos/react-client": "0.7.5-main.b19bfc8",
|
|
78
|
+
"@dxos/plugin-thread": "0.7.5-main.b19bfc8",
|
|
79
|
+
"@dxos/react-ui-attention": "0.7.5-main.b19bfc8",
|
|
80
|
+
"@dxos/react-hooks": "0.7.5-main.b19bfc8",
|
|
81
|
+
"@dxos/plugin-markdown": "0.7.5-main.b19bfc8",
|
|
82
|
+
"@dxos/react-ui-editor": "0.7.5-main.b19bfc8",
|
|
83
|
+
"@dxos/react-ui-form": "0.7.5-main.b19bfc8",
|
|
84
|
+
"@dxos/react-ui-menu": "0.7.5-main.b19bfc8",
|
|
85
|
+
"@dxos/react-ui-list": "0.7.5-main.b19bfc8",
|
|
86
|
+
"@dxos/react-ui-grid": "0.7.5-main.b19bfc8",
|
|
87
|
+
"@dxos/react-ui-stack": "0.7.5-main.b19bfc8",
|
|
88
|
+
"@dxos/schema": "0.7.5-main.b19bfc8",
|
|
89
|
+
"@dxos/util": "0.7.5-main.b19bfc8"
|
|
96
90
|
},
|
|
97
91
|
"devDependencies": {
|
|
98
92
|
"@lezer/generator": "^1.7.1",
|
|
@@ -104,21 +98,21 @@
|
|
|
104
98
|
"react": "~18.2.0",
|
|
105
99
|
"react-dom": "~18.2.0",
|
|
106
100
|
"vite": "5.4.7",
|
|
107
|
-
"@dxos/echo-generator": "0.7.5-main.
|
|
108
|
-
"@dxos/
|
|
109
|
-
"@dxos/
|
|
110
|
-
"@dxos/react-ui": "0.7.5-main.
|
|
111
|
-
"@dxos/react-ui-syntax-highlighter": "0.7.5-main.
|
|
112
|
-
"@dxos/react-ui-
|
|
113
|
-
"@dxos/
|
|
114
|
-
"@dxos/
|
|
115
|
-
"@dxos/
|
|
101
|
+
"@dxos/echo-generator": "0.7.5-main.b19bfc8",
|
|
102
|
+
"@dxos/random": "0.7.5-main.b19bfc8",
|
|
103
|
+
"@dxos/lit-grid": "0.7.5-main.b19bfc8",
|
|
104
|
+
"@dxos/react-ui": "0.7.5-main.b19bfc8",
|
|
105
|
+
"@dxos/react-ui-syntax-highlighter": "0.7.5-main.b19bfc8",
|
|
106
|
+
"@dxos/react-ui-theme": "0.7.5-main.b19bfc8",
|
|
107
|
+
"@dxos/react-ui-types": "0.7.5-main.b19bfc8",
|
|
108
|
+
"@dxos/storybook-utils": "0.7.5-main.b19bfc8",
|
|
109
|
+
"@dxos/test-utils": "0.7.5-main.b19bfc8"
|
|
116
110
|
},
|
|
117
111
|
"peerDependencies": {
|
|
118
112
|
"react": "~18.2.0",
|
|
119
113
|
"react-dom": "~18.2.0",
|
|
120
|
-
"@dxos/react-ui": "0.7.5-main.
|
|
121
|
-
"@dxos/react-ui-theme": "0.7.5-main.
|
|
114
|
+
"@dxos/react-ui": "0.7.5-main.b19bfc8",
|
|
115
|
+
"@dxos/react-ui-theme": "0.7.5-main.b19bfc8"
|
|
122
116
|
},
|
|
123
117
|
"publishConfig": {
|
|
124
118
|
"access": "public"
|
package/src/SheetPlugin.tsx
CHANGED
|
@@ -2,119 +2,82 @@
|
|
|
2
2
|
// Copyright 2023 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import
|
|
6
|
-
|
|
7
|
-
import { createIntent, createResolver, createSurface, resolvePlugin, type PluginDefinition } from '@dxos/app-framework';
|
|
8
|
-
import { type ComputeGraphRegistry } from '@dxos/compute';
|
|
5
|
+
import { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';
|
|
9
6
|
import { FunctionType } from '@dxos/functions';
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
7
|
+
import { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';
|
|
8
|
+
import { MarkdownEvents } from '@dxos/plugin-markdown';
|
|
9
|
+
import { SpaceCapabilities, ThreadEvents } from '@dxos/plugin-space';
|
|
10
|
+
import { defineObjectForm } from '@dxos/plugin-space/types';
|
|
13
11
|
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import meta, { SHEET_PLUGIN } from './meta';
|
|
12
|
+
import { Markdown, Thread, ReactSurface, IntentResolver, ComputeGraphRegistry } from './capabilities';
|
|
13
|
+
import { meta, SHEET_PLUGIN } from './meta';
|
|
17
14
|
import { serializer } from './serializer';
|
|
18
15
|
import translations from './translations';
|
|
19
|
-
import {
|
|
20
|
-
|
|
21
|
-
export const SheetPlugin = (): PluginDefinition<SheetPluginProvides> => {
|
|
22
|
-
let computeGraphRegistry: ComputeGraphRegistry | undefined;
|
|
23
|
-
|
|
24
|
-
return {
|
|
25
|
-
meta,
|
|
26
|
-
ready: async ({ plugins }) => {
|
|
27
|
-
const client = resolvePlugin(plugins, parseClientPlugin)?.provides.client;
|
|
28
|
-
invariant(client);
|
|
29
|
-
let remoteFunctionUrl: string | undefined;
|
|
30
|
-
if (client.config.values.runtime?.services?.edge?.url) {
|
|
31
|
-
const url = new URL('/functions', client.config.values.runtime?.services?.edge?.url);
|
|
32
|
-
url.protocol = 'https';
|
|
33
|
-
remoteFunctionUrl = url.toString();
|
|
34
|
-
}
|
|
16
|
+
import { SheetAction, SheetType } from './types';
|
|
35
17
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
18
|
+
export const SheetPlugin = () =>
|
|
19
|
+
definePlugin(meta, [
|
|
20
|
+
defineModule({
|
|
21
|
+
id: `${meta.id}/module/compute-graph-registry`,
|
|
22
|
+
activatesOn: ClientEvents.ClientReady,
|
|
23
|
+
activate: ComputeGraphRegistry,
|
|
24
|
+
}),
|
|
25
|
+
defineModule({
|
|
26
|
+
id: `${meta.id}/module/translations`,
|
|
27
|
+
activatesOn: Events.SetupTranslations,
|
|
28
|
+
activate: () => contributes(Capabilities.Translations, translations),
|
|
29
|
+
}),
|
|
30
|
+
defineModule({
|
|
31
|
+
id: `${meta.id}/module/metadata`,
|
|
32
|
+
activatesOn: Events.SetupMetadata,
|
|
33
|
+
activate: () =>
|
|
34
|
+
contributes(Capabilities.Metadata, {
|
|
35
|
+
id: SheetType.typename,
|
|
36
|
+
metadata: {
|
|
49
37
|
label: (object: any) => (object instanceof SheetType ? object.name : undefined),
|
|
50
38
|
placeholder: ['sheet title placeholder', { ns: SHEET_PLUGIN }],
|
|
51
39
|
icon: 'ph--grid-nine--regular',
|
|
52
40
|
serializer,
|
|
53
41
|
},
|
|
54
|
-
},
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
invariant(computeGraphRegistry);
|
|
66
|
-
const space = getSpace(doc);
|
|
67
|
-
if (space) {
|
|
68
|
-
const computeGraph = computeGraphRegistry.getOrCreateGraph(space);
|
|
69
|
-
return computeGraphFacet.of(computeGraph);
|
|
70
|
-
}
|
|
71
|
-
},
|
|
72
|
-
},
|
|
73
|
-
thread: {
|
|
74
|
-
predicate: (data) => data instanceof SheetType,
|
|
75
|
-
createSort: (sheet) => (indexA, indexB) =>
|
|
76
|
-
!indexA || !indexB ? 0 : compareIndexPositions(sheet, indexA, indexB),
|
|
77
|
-
},
|
|
78
|
-
surface: {
|
|
79
|
-
definitions: () => [
|
|
80
|
-
createSurface({
|
|
81
|
-
id: `${SHEET_PLUGIN}/sheet`,
|
|
82
|
-
role: ['article', 'section'],
|
|
83
|
-
filter: (data): data is { subject: SheetType } =>
|
|
84
|
-
data.subject instanceof SheetType && !!getSpace(data.subject),
|
|
85
|
-
component: ({ data, role }) => (
|
|
86
|
-
<SheetContainer space={getSpace(data.subject)!} sheet={data.subject} role={role} />
|
|
87
|
-
),
|
|
88
|
-
}),
|
|
89
|
-
createSurface({
|
|
90
|
-
id: `${SHEET_PLUGIN}/settings`,
|
|
91
|
-
role: 'complementary--settings',
|
|
92
|
-
filter: (data): data is { subject: SheetType } => data.subject instanceof SheetType,
|
|
93
|
-
component: ({ data }) => <SheetObjectSettings sheet={data.subject} />,
|
|
94
|
-
}),
|
|
95
|
-
],
|
|
96
|
-
},
|
|
97
|
-
intent: {
|
|
98
|
-
resolvers: () => [
|
|
99
|
-
createResolver(SheetAction.Create, ({ name }) => ({ data: { object: createSheet({ name }) } })),
|
|
100
|
-
createResolver(SheetAction.InsertAxis, ({ model, axis, index, count }) => {
|
|
101
|
-
const _indices = model[axis === 'col' ? 'insertColumns' : 'insertRows'](index, count);
|
|
102
|
-
}),
|
|
103
|
-
createResolver(SheetAction.DropAxis, ({ model, axis, axisIndex, deletionData }, undo) => {
|
|
104
|
-
if (!undo) {
|
|
105
|
-
const undoData = model[axis === 'col' ? 'dropColumn' : 'dropRow'](axisIndex);
|
|
106
|
-
return {
|
|
107
|
-
undoable: {
|
|
108
|
-
message: (translations[0]['en-US'][SHEET_PLUGIN] as any)[`${axis} dropped label`],
|
|
109
|
-
data: { ...undoData, model },
|
|
110
|
-
},
|
|
111
|
-
};
|
|
112
|
-
} else if (undo && deletionData) {
|
|
113
|
-
model[deletionData.axis === 'col' ? 'restoreColumn' : 'restoreRow'](deletionData);
|
|
114
|
-
}
|
|
42
|
+
}),
|
|
43
|
+
}),
|
|
44
|
+
defineModule({
|
|
45
|
+
id: `${meta.id}/module/object-form`,
|
|
46
|
+
activatesOn: ClientEvents.SetupSchema,
|
|
47
|
+
activate: () =>
|
|
48
|
+
contributes(
|
|
49
|
+
SpaceCapabilities.ObjectForm,
|
|
50
|
+
defineObjectForm({
|
|
51
|
+
objectSchema: SheetType,
|
|
52
|
+
getIntent: (props, options) => createIntent(SheetAction.Create, { ...props, space: options.space }),
|
|
115
53
|
}),
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
54
|
+
),
|
|
55
|
+
}),
|
|
56
|
+
// TODO(wittjosiah): Factor out to common package/plugin.
|
|
57
|
+
// FunctionType is currently registered here in case script plugin isn't enabled.
|
|
58
|
+
defineModule({
|
|
59
|
+
id: `${meta.id}/module/schema`,
|
|
60
|
+
activatesOn: ClientEvents.SetupSchema,
|
|
61
|
+
activate: () => contributes(ClientCapabilities.Schema, [FunctionType]),
|
|
62
|
+
}),
|
|
63
|
+
defineModule({
|
|
64
|
+
id: `${meta.id}/module/markdown`,
|
|
65
|
+
activatesOn: MarkdownEvents.SetupExtensions,
|
|
66
|
+
activate: Markdown,
|
|
67
|
+
}),
|
|
68
|
+
defineModule({
|
|
69
|
+
id: `${meta.id}/module/thread`,
|
|
70
|
+
activatesOn: ThreadEvents.SetupThread,
|
|
71
|
+
activate: Thread,
|
|
72
|
+
}),
|
|
73
|
+
defineModule({
|
|
74
|
+
id: `${meta.id}/module/react-surface`,
|
|
75
|
+
activatesOn: Events.SetupReactSurface,
|
|
76
|
+
activate: ReactSurface,
|
|
77
|
+
}),
|
|
78
|
+
defineModule({
|
|
79
|
+
id: `${meta.id}/module/intent-resolver`,
|
|
80
|
+
activatesOn: Events.SetupIntentResolver,
|
|
81
|
+
activate: IntentResolver,
|
|
82
|
+
}),
|
|
83
|
+
]);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { defineCapability } from '@dxos/app-framework';
|
|
6
|
+
import { type ComputeGraphRegistry } from '@dxos/compute';
|
|
7
|
+
|
|
8
|
+
import { SHEET_PLUGIN } from '../meta';
|
|
9
|
+
|
|
10
|
+
export namespace SheetCapabilities {
|
|
11
|
+
export const ComputeGraphRegistry = defineCapability<ComputeGraphRegistry>(
|
|
12
|
+
`${SHEET_PLUGIN}/capability/compute-graph-registry`,
|
|
13
|
+
);
|
|
14
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { contributes, type PluginsContext } from '@dxos/app-framework';
|
|
6
|
+
import { ClientCapabilities } from '@dxos/plugin-client';
|
|
7
|
+
|
|
8
|
+
import { SheetCapabilities } from './capabilities';
|
|
9
|
+
|
|
10
|
+
export default async (context: PluginsContext) => {
|
|
11
|
+
const client = context.requestCapability(ClientCapabilities.Client);
|
|
12
|
+
let remoteFunctionUrl: string | undefined;
|
|
13
|
+
if (client.config.values.runtime?.services?.edge?.url) {
|
|
14
|
+
const url = new URL('/functions', client.config.values.runtime?.services?.edge?.url);
|
|
15
|
+
url.protocol = 'https';
|
|
16
|
+
remoteFunctionUrl = url.toString();
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
// TODO(wittjosiah): This can probably be a module level import now due to lazy capability loading.
|
|
20
|
+
// Async import removes direct dependency on hyperformula.
|
|
21
|
+
const { defaultPlugins, ComputeGraphRegistry } = await import('@dxos/compute');
|
|
22
|
+
const computeGraphRegistry = new ComputeGraphRegistry({ plugins: defaultPlugins, remoteFunctionUrl });
|
|
23
|
+
|
|
24
|
+
return contributes(SheetCapabilities.ComputeGraphRegistry, computeGraphRegistry);
|
|
25
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { lazy } from '@dxos/app-framework';
|
|
6
|
+
|
|
7
|
+
export const ComputeGraphRegistry = lazy(() => import('./compute-graph-registry'));
|
|
8
|
+
export const IntentResolver = lazy(() => import('./intent-resolver'));
|
|
9
|
+
export const Markdown = lazy(() => import('./markdown'));
|
|
10
|
+
export const ReactSurface = lazy(() => import('./react-surface'));
|
|
11
|
+
export const Thread = lazy(() => import('./thread'));
|
|
12
|
+
|
|
13
|
+
export * from './capabilities';
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { contributes, Capabilities, createResolver } from '@dxos/app-framework';
|
|
6
|
+
|
|
7
|
+
import { SHEET_PLUGIN } from '../meta';
|
|
8
|
+
import { createSheet, SheetAction } from '../types';
|
|
9
|
+
|
|
10
|
+
export default () =>
|
|
11
|
+
contributes(Capabilities.IntentResolver, [
|
|
12
|
+
createResolver({
|
|
13
|
+
intent: SheetAction.Create,
|
|
14
|
+
resolve: ({ name }) => ({ data: { object: createSheet({ name }) } }),
|
|
15
|
+
}),
|
|
16
|
+
createResolver({
|
|
17
|
+
intent: SheetAction.InsertAxis,
|
|
18
|
+
resolve: ({ model, axis, index, count }) => {
|
|
19
|
+
const _indices = model[axis === 'col' ? 'insertColumns' : 'insertRows'](index, count);
|
|
20
|
+
},
|
|
21
|
+
}),
|
|
22
|
+
createResolver({
|
|
23
|
+
intent: SheetAction.DropAxis,
|
|
24
|
+
resolve: ({ model, axis, axisIndex, deletionData }, undo) => {
|
|
25
|
+
if (!undo) {
|
|
26
|
+
const undoData = model[axis === 'col' ? 'dropColumn' : 'dropRow'](axisIndex);
|
|
27
|
+
return {
|
|
28
|
+
undoable: {
|
|
29
|
+
message: [`${axis} dropped label`, { ns: SHEET_PLUGIN }],
|
|
30
|
+
data: { ...undoData, model },
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
} else if (undo && deletionData) {
|
|
34
|
+
model[deletionData.axis === 'col' ? 'restoreColumn' : 'restoreRow'](deletionData);
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
}),
|
|
38
|
+
]);
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { contributes, type PluginsContext } from '@dxos/app-framework';
|
|
6
|
+
import { getSpace } from '@dxos/client/echo';
|
|
7
|
+
import { MarkdownCapabilities } from '@dxos/plugin-markdown';
|
|
8
|
+
|
|
9
|
+
import { SheetCapabilities } from './capabilities';
|
|
10
|
+
import { computeGraphFacet } from '../extensions';
|
|
11
|
+
|
|
12
|
+
export default (context: PluginsContext) =>
|
|
13
|
+
contributes(MarkdownCapabilities.Extensions, [
|
|
14
|
+
({ document: doc }) => {
|
|
15
|
+
const computeGraphRegistry = context.requestCapability(SheetCapabilities.ComputeGraphRegistry);
|
|
16
|
+
const space = getSpace(doc);
|
|
17
|
+
if (space) {
|
|
18
|
+
const computeGraph = computeGraphRegistry.getOrCreateGraph(space);
|
|
19
|
+
return computeGraphFacet.of(computeGraph);
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
]);
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import React from 'react';
|
|
6
|
+
|
|
7
|
+
import { Capabilities, contributes, createSurface, useCapability } from '@dxos/app-framework';
|
|
8
|
+
import { getSpace } from '@dxos/react-client/echo';
|
|
9
|
+
|
|
10
|
+
import { SheetCapabilities } from './capabilities';
|
|
11
|
+
import { ComputeGraphContextProvider, RangeList, SheetContainer } from '../components';
|
|
12
|
+
import { SHEET_PLUGIN } from '../meta';
|
|
13
|
+
import { SheetType } from '../types';
|
|
14
|
+
|
|
15
|
+
export default () =>
|
|
16
|
+
contributes(Capabilities.ReactSurface, [
|
|
17
|
+
createSurface({
|
|
18
|
+
id: `${SHEET_PLUGIN}/sheet`,
|
|
19
|
+
role: ['article', 'section'],
|
|
20
|
+
filter: (data): data is { subject: SheetType } => data.subject instanceof SheetType && !!getSpace(data.subject),
|
|
21
|
+
component: ({ data, role }) => {
|
|
22
|
+
const computeGraphRegistry = useCapability(SheetCapabilities.ComputeGraphRegistry);
|
|
23
|
+
|
|
24
|
+
return (
|
|
25
|
+
<ComputeGraphContextProvider registry={computeGraphRegistry}>
|
|
26
|
+
<SheetContainer space={getSpace(data.subject)!} sheet={data.subject} role={role} />
|
|
27
|
+
</ComputeGraphContextProvider>
|
|
28
|
+
);
|
|
29
|
+
},
|
|
30
|
+
}),
|
|
31
|
+
createSurface({
|
|
32
|
+
id: `${SHEET_PLUGIN}/settings`,
|
|
33
|
+
role: 'complementary--settings',
|
|
34
|
+
filter: (data): data is { subject: SheetType } => data.subject instanceof SheetType,
|
|
35
|
+
component: ({ data }) => <RangeList sheet={data.subject} />,
|
|
36
|
+
}),
|
|
37
|
+
]);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { contributes } from '@dxos/app-framework';
|
|
6
|
+
import { ThreadCapabilities } from '@dxos/plugin-space';
|
|
7
|
+
|
|
8
|
+
import { compareIndexPositions, SheetType } from '../types';
|
|
9
|
+
|
|
10
|
+
export default () =>
|
|
11
|
+
contributes(ThreadCapabilities.Thread, {
|
|
12
|
+
predicate: (data) => data instanceof SheetType,
|
|
13
|
+
createSort: (sheet) => (indexA, indexB) => (!indexA || !indexB ? 0 : compareIndexPositions(sheet, indexA, indexB)),
|
|
14
|
+
});
|
|
@@ -7,6 +7,7 @@ import '@dxos-theme';
|
|
|
7
7
|
import { type Meta } from '@storybook/react';
|
|
8
8
|
import React from 'react';
|
|
9
9
|
|
|
10
|
+
import { withPluginManager } from '@dxos/app-framework/testing';
|
|
10
11
|
import { useSpace } from '@dxos/react-client/echo';
|
|
11
12
|
import { withClientProvider } from '@dxos/react-client/testing';
|
|
12
13
|
import { withTheme, withLayout } from '@dxos/storybook-utils';
|
|
@@ -41,6 +42,7 @@ const meta: Meta = {
|
|
|
41
42
|
withComputeGraphDecorator(),
|
|
42
43
|
withTheme,
|
|
43
44
|
withLayout({ fullscreen: true, tooltips: true, classNames: 'grid' }),
|
|
45
|
+
withPluginManager(),
|
|
44
46
|
],
|
|
45
47
|
parameters: { translations },
|
|
46
48
|
};
|
|
@@ -7,10 +7,12 @@ import '@dxos-theme';
|
|
|
7
7
|
import { type Meta } from '@storybook/react';
|
|
8
8
|
import React from 'react';
|
|
9
9
|
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
10
|
+
import { Capabilities, contributes, createResolver, IntentPlugin } from '@dxos/app-framework';
|
|
11
|
+
import { withPluginManager } from '@dxos/app-framework/testing';
|
|
12
|
+
import { fullyQualifiedId, useSpace } from '@dxos/react-client/echo';
|
|
13
13
|
import { withClientProvider } from '@dxos/react-client/testing';
|
|
14
|
+
import { AttendableContainer } from '@dxos/react-ui-attention';
|
|
15
|
+
import { withAttention } from '@dxos/react-ui-attention/testing';
|
|
14
16
|
import { withTheme, withLayout } from '@dxos/storybook-utils';
|
|
15
17
|
|
|
16
18
|
import { SheetContainer } from './SheetContainer';
|
|
@@ -20,22 +22,6 @@ import { SheetAction, SheetType } from '../../types';
|
|
|
20
22
|
import { useComputeGraph } from '../ComputeGraph';
|
|
21
23
|
import { RangeList } from '../RangeList';
|
|
22
24
|
|
|
23
|
-
// TODO(thure via wittjosiah): stories/components should be written such that the dependency on intents is external and provided via callback and then the story can implement it differently.
|
|
24
|
-
const storybookIntentValue = create<IntentContext>({
|
|
25
|
-
dispatch: () => todo(),
|
|
26
|
-
dispatchPromise: async (intentChain: AnyIntentChain): Promise<any> => {
|
|
27
|
-
switch (intentChain.first.action) {
|
|
28
|
-
case SheetAction.DropAxis._tag: {
|
|
29
|
-
const { model, axis, axisIndex } = intentChain.first.data as SheetAction.DropAxis['input'];
|
|
30
|
-
model[axis === 'col' ? 'dropColumn' : 'dropRow'](axisIndex);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
},
|
|
34
|
-
undo: () => todo(),
|
|
35
|
-
undoPromise: () => todo(),
|
|
36
|
-
registerResolver: () => () => {},
|
|
37
|
-
});
|
|
38
|
-
|
|
39
25
|
export const Basic = () => {
|
|
40
26
|
const space = useSpace();
|
|
41
27
|
const graph = useComputeGraph(space);
|
|
@@ -44,7 +30,11 @@ export const Basic = () => {
|
|
|
44
30
|
return null;
|
|
45
31
|
}
|
|
46
32
|
|
|
47
|
-
return
|
|
33
|
+
return (
|
|
34
|
+
<AttendableContainer id={fullyQualifiedId(sheet)} classNames='contents'>
|
|
35
|
+
<SheetContainer space={space} sheet={sheet} role='article' ignoreAttention />
|
|
36
|
+
</AttendableContainer>
|
|
37
|
+
);
|
|
48
38
|
};
|
|
49
39
|
|
|
50
40
|
export const Spec = () => {
|
|
@@ -56,14 +46,14 @@ export const Spec = () => {
|
|
|
56
46
|
}
|
|
57
47
|
|
|
58
48
|
return (
|
|
59
|
-
<
|
|
49
|
+
<AttendableContainer id={fullyQualifiedId(sheet)} classNames='contents'>
|
|
60
50
|
<div role='none' className='grid grid-rows-[66%_33%] grid-cols-1'>
|
|
61
51
|
<SheetContainer space={space} sheet={sheet} role='article' ignoreAttention />
|
|
62
52
|
<div role='none' data-testid='grid.range-list'>
|
|
63
53
|
<RangeList sheet={sheet} />
|
|
64
54
|
</div>
|
|
65
55
|
</div>
|
|
66
|
-
</
|
|
56
|
+
</AttendableContainer>
|
|
67
57
|
);
|
|
68
58
|
};
|
|
69
59
|
|
|
@@ -79,6 +69,22 @@ const meta: Meta = {
|
|
|
79
69
|
tooltips: true,
|
|
80
70
|
classNames: 'grid',
|
|
81
71
|
}),
|
|
72
|
+
withAttention,
|
|
73
|
+
// TODO(wittjosiah): Consider whether we should refactor component so story doesn't need to depend on intents.
|
|
74
|
+
withPluginManager({
|
|
75
|
+
plugins: [IntentPlugin()],
|
|
76
|
+
capabilities: [
|
|
77
|
+
contributes(
|
|
78
|
+
Capabilities.IntentResolver,
|
|
79
|
+
createResolver({
|
|
80
|
+
intent: SheetAction.DropAxis,
|
|
81
|
+
resolve: ({ model, axis, axisIndex }) => {
|
|
82
|
+
model[axis === 'col' ? 'dropColumn' : 'dropRow'](axisIndex);
|
|
83
|
+
},
|
|
84
|
+
}),
|
|
85
|
+
),
|
|
86
|
+
],
|
|
87
|
+
}),
|
|
82
88
|
],
|
|
83
89
|
parameters: { translations },
|
|
84
90
|
};
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
import React from 'react';
|
|
6
6
|
|
|
7
|
-
import { type Space } from '@dxos/react-client/echo';
|
|
7
|
+
import { fullyQualifiedId, type Space } from '@dxos/react-client/echo';
|
|
8
8
|
import { StackItem } from '@dxos/react-ui-stack';
|
|
9
9
|
|
|
10
10
|
import { type SheetType } from '../../types';
|
|
@@ -12,7 +12,7 @@ import { useComputeGraph } from '../ComputeGraph';
|
|
|
12
12
|
import { FunctionEditor } from '../FunctionEditor';
|
|
13
13
|
import { GridSheet } from '../GridSheet';
|
|
14
14
|
import { SheetProvider } from '../SheetContext';
|
|
15
|
-
import {
|
|
15
|
+
import { SheetToolbar } from '../SheetToolbar';
|
|
16
16
|
|
|
17
17
|
export const SheetContainer = ({
|
|
18
18
|
space,
|
|
@@ -30,12 +30,7 @@ export const SheetContainer = ({
|
|
|
30
30
|
return graph ? (
|
|
31
31
|
<SheetProvider sheet={sheet} graph={graph} ignoreAttention={ignoreAttention}>
|
|
32
32
|
<StackItem.Content toolbar statusbar {...(role === 'section' && { classNames: 'aspect-video' })}>
|
|
33
|
-
<
|
|
34
|
-
<Toolbar.Styles />
|
|
35
|
-
<Toolbar.Alignment />
|
|
36
|
-
<Toolbar.Separator />
|
|
37
|
-
<Toolbar.Actions />
|
|
38
|
-
</Toolbar.Root>
|
|
33
|
+
<SheetToolbar attendableId={fullyQualifiedId(sheet)} />
|
|
39
34
|
<GridSheet />
|
|
40
35
|
<FunctionEditor />
|
|
41
36
|
</StackItem.Content>
|