@dxos/plugin-sheet 0.8.4-main.937b3ca → 0.8.4-main.abd8ff62ef
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/SheetPlugin-W4PFP6WG.mjs +92 -0
- package/dist/lib/browser/SheetPlugin-W4PFP6WG.mjs.map +7 -0
- package/dist/lib/browser/chunk-5TXOUIGZ.mjs +118 -0
- package/dist/lib/browser/chunk-5TXOUIGZ.mjs.map +7 -0
- package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
- package/dist/lib/browser/chunk-J5LGTIGS.mjs.map +7 -0
- package/dist/lib/browser/{chunk-2SAGT3BB.mjs → chunk-SVGX3MWY.mjs} +34 -169
- package/dist/lib/browser/chunk-SVGX3MWY.mjs.map +7 -0
- package/dist/lib/browser/drop-axis-ZLERPPPH.mjs +23 -0
- package/dist/lib/browser/drop-axis-ZLERPPPH.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +24 -135
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/insert-axis-WTRA3HE7.mjs +16 -0
- package/dist/lib/browser/insert-axis-WTRA3HE7.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/operations/index.mjs +13 -0
- package/dist/lib/browser/operations/index.mjs.map +7 -0
- package/dist/lib/browser/restore-axis-PYGPW2TB.mjs +16 -0
- package/dist/lib/browser/restore-axis-PYGPW2TB.mjs.map +7 -0
- package/dist/lib/browser/scroll-to-anchor-6I4DNKBW.mjs +65 -0
- package/dist/lib/browser/scroll-to-anchor-6I4DNKBW.mjs.map +7 -0
- package/dist/lib/browser/translations.mjs +55 -0
- package/dist/lib/browser/translations.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +2 -3
- package/dist/lib/node-esm/SheetPlugin-ZJRSEYHB.mjs +93 -0
- package/dist/lib/node-esm/SheetPlugin-ZJRSEYHB.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-IMWGSIDG.mjs → chunk-4A2KAXTF.mjs} +34 -169
- package/dist/lib/node-esm/chunk-4A2KAXTF.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-MCZFRYOP.mjs +119 -0
- package/dist/lib/node-esm/chunk-MCZFRYOP.mjs.map +7 -0
- package/dist/lib/node-esm/drop-axis-FV2GXSZP.mjs +24 -0
- package/dist/lib/node-esm/drop-axis-FV2GXSZP.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +24 -135
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/insert-axis-THXK6DCC.mjs +17 -0
- package/dist/lib/node-esm/insert-axis-THXK6DCC.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/operations/index.mjs +14 -0
- package/dist/lib/node-esm/operations/index.mjs.map +7 -0
- package/dist/lib/node-esm/restore-axis-JIFT3Q7Z.mjs +17 -0
- package/dist/lib/node-esm/restore-axis-JIFT3Q7Z.mjs.map +7 -0
- package/dist/lib/node-esm/scroll-to-anchor-JRDC5KK2.mjs +66 -0
- package/dist/lib/node-esm/scroll-to-anchor-JRDC5KK2.mjs.map +7 -0
- package/dist/lib/node-esm/translations.mjs +56 -0
- package/dist/lib/node-esm/translations.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +2 -3
- package/dist/types/src/SheetPlugin.d.ts +1 -0
- package/dist/types/src/SheetPlugin.d.ts.map +1 -1
- package/dist/types/src/SheetPlugin.node.d.ts +4 -0
- package/dist/types/src/SheetPlugin.node.d.ts.map +1 -0
- package/dist/types/src/SheetPlugin.test.d.ts +2 -0
- package/dist/types/src/SheetPlugin.test.d.ts.map +1 -0
- package/dist/types/src/capabilities/anchor-sort.d.ts +6 -0
- package/dist/types/src/capabilities/anchor-sort.d.ts.map +1 -0
- package/dist/types/src/capabilities/compute-graph-registry.d.ts +5 -0
- package/dist/types/src/capabilities/compute-graph-registry.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +9 -5
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/markdown.d.ts +5 -0
- package/dist/types/src/capabilities/markdown.d.ts.map +1 -0
- package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
- package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface.d.ts +5 -0
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/state.d.ts +6 -0
- package/dist/types/src/capabilities/state.d.ts.map +1 -0
- package/dist/types/src/capabilities/undo-mappings.d.ts +5 -0
- package/dist/types/src/capabilities/undo-mappings.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/ComputeGraph/compute-graph.stories.d.ts.map +1 -1
- package/dist/types/src/components/Sheet/Sheet.d.ts +17 -0
- package/dist/types/src/components/Sheet/Sheet.d.ts.map +1 -0
- package/dist/types/src/components/Sheet/index.d.ts +2 -0
- package/dist/types/src/components/Sheet/index.d.ts.map +1 -0
- package/dist/types/src/components/SheetContent/SheetCellEditor.stories.d.ts.map +1 -0
- package/dist/types/src/components/SheetContent/SheetContent.d.ts +6 -0
- package/dist/types/src/components/SheetContent/SheetContent.d.ts.map +1 -0
- package/dist/types/src/components/SheetContent/SheetContent.stories.d.ts +93 -0
- package/dist/types/src/components/SheetContent/SheetContent.stories.d.ts.map +1 -0
- package/dist/types/src/components/SheetContent/index.d.ts +2 -0
- package/dist/types/src/components/SheetContent/index.d.ts.map +1 -0
- package/dist/types/src/components/{GridSheet → SheetContent}/util.d.ts +1 -1
- package/dist/types/src/components/SheetContent/util.d.ts.map +1 -0
- package/dist/types/src/components/{SheetContext/SheetContext.d.ts → SheetRoot/SheetRoot.d.ts} +8 -6
- package/dist/types/src/components/SheetRoot/SheetRoot.d.ts.map +1 -0
- package/dist/types/src/components/SheetRoot/index.d.ts +2 -0
- package/dist/types/src/components/SheetRoot/index.d.ts.map +1 -0
- package/dist/types/src/components/SheetStatusbar/SheetStatusbar.d.ts +6 -0
- package/dist/types/src/components/SheetStatusbar/SheetStatusbar.d.ts.map +1 -0
- package/dist/types/src/components/SheetStatusbar/index.d.ts +2 -0
- package/dist/types/src/components/SheetStatusbar/index.d.ts.map +1 -0
- package/dist/types/src/components/SheetToolbar/SheetToolbar.d.ts +5 -5
- package/dist/types/src/components/SheetToolbar/SheetToolbar.d.ts.map +1 -1
- package/dist/types/src/components/SheetToolbar/SheetToolbar.stories.d.ts +72 -68
- package/dist/types/src/components/SheetToolbar/SheetToolbar.stories.d.ts.map +1 -1
- package/dist/types/src/components/SheetToolbar/align.d.ts +2 -2
- package/dist/types/src/components/SheetToolbar/align.d.ts.map +1 -1
- package/dist/types/src/components/SheetToolbar/style.d.ts +2 -2
- package/dist/types/src/components/SheetToolbar/style.d.ts.map +1 -1
- package/dist/types/src/components/SheetToolbar/useToolbarState.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +1 -4
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/{components → containers}/RangeList/RangeList.d.ts +1 -1
- package/dist/types/src/containers/RangeList/RangeList.d.ts.map +1 -0
- package/dist/types/src/containers/RangeList/index.d.ts +2 -0
- package/dist/types/src/containers/RangeList/index.d.ts.map +1 -0
- package/dist/types/src/containers/SheetContainer/SheetContainer.d.ts +12 -0
- package/dist/types/src/containers/SheetContainer/SheetContainer.d.ts.map +1 -0
- package/dist/types/src/containers/SheetContainer/SheetContainer.stories.d.ts +92 -0
- package/dist/types/src/containers/SheetContainer/SheetContainer.stories.d.ts.map +1 -0
- package/dist/types/src/containers/SheetContainer/index.d.ts +2 -0
- package/dist/types/src/containers/SheetContainer/index.d.ts.map +1 -0
- package/dist/types/src/containers/index.d.ts +4 -0
- package/dist/types/src/containers/index.d.ts.map +1 -0
- 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.map +1 -1
- package/dist/types/src/extensions/editor/sheet-extension.d.ts +1 -1
- package/dist/types/src/extensions/editor/sheet-extension.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +3 -2
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/integrations/thread-ranges.d.ts +1 -3
- package/dist/types/src/integrations/thread-ranges.d.ts.map +1 -1
- package/dist/types/src/model/sheet-model.d.ts +2 -2
- package/dist/types/src/model/sheet-model.d.ts.map +1 -1
- package/dist/types/src/model/testing.d.ts +1 -1
- 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/operations/definitions.d.ts +45 -0
- package/dist/types/src/operations/definitions.d.ts.map +1 -0
- package/dist/types/src/operations/drop-axis.d.ts +5 -0
- package/dist/types/src/operations/drop-axis.d.ts.map +1 -0
- package/dist/types/src/operations/index.d.ts +4 -0
- package/dist/types/src/operations/index.d.ts.map +1 -0
- package/dist/types/src/operations/insert-axis.d.ts +5 -0
- package/dist/types/src/operations/insert-axis.d.ts.map +1 -0
- package/dist/types/src/operations/restore-axis.d.ts +5 -0
- package/dist/types/src/operations/restore-axis.d.ts.map +1 -0
- package/dist/types/src/operations/scroll-to-anchor.d.ts +5 -0
- package/dist/types/src/operations/scroll-to-anchor.d.ts.map +1 -0
- package/dist/types/src/playwright/playwright.config.d.ts.map +1 -1
- package/dist/types/src/playwright/sheet-manager.d.ts.map +1 -1
- package/dist/types/src/serializer.d.ts +1 -1
- package/dist/types/src/serializer.d.ts.map +1 -1
- package/dist/types/src/testing/data.d.ts +1 -1
- package/dist/types/src/testing/data.d.ts.map +1 -1
- package/dist/types/src/testing/testing.d.ts +13 -13
- package/dist/types/src/testing/testing.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +74 -39
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Sheet.d.ts +21 -21
- package/dist/types/src/types/Sheet.d.ts.map +1 -1
- package/dist/types/src/types/capabilities.d.ts +13 -1
- package/dist/types/src/types/capabilities.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 -92
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/types/util.d.ts +3 -2
- package/dist/types/src/types/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +89 -70
- package/src/SheetPlugin.node.ts +36 -0
- package/src/SheetPlugin.test.ts +30 -0
- package/src/SheetPlugin.tsx +51 -31
- package/src/capabilities/{anchor-sort/anchor-sort.ts → anchor-sort.ts} +4 -3
- package/src/capabilities/{compute-graph-registry/compute-graph-registry.ts → compute-graph-registry.ts} +5 -3
- package/src/capabilities/index.ts +13 -5
- package/src/capabilities/{markdown/markdown.ts → markdown.ts} +4 -3
- package/src/capabilities/operation-handler.ts +16 -0
- package/src/capabilities/react-surface.tsx +49 -0
- package/src/capabilities/state.ts +29 -0
- package/src/capabilities/undo-mappings.ts +30 -0
- package/src/components/ComputeGraph/ComputeGraphContextProvider.tsx +1 -1
- package/src/components/ComputeGraph/compute-graph.stories.tsx +19 -16
- package/src/components/Sheet/Sheet.tsx +20 -0
- package/src/components/Sheet/index.ts +5 -0
- package/src/components/{GridSheet → SheetContent}/SheetCellEditor.stories.tsx +10 -9
- package/src/components/{GridSheet/GridSheet.stories.tsx → SheetContent/SheetContent.stories.tsx} +20 -19
- package/src/components/{GridSheet/GridSheet.tsx → SheetContent/SheetContent.tsx} +56 -33
- package/src/components/{RangeList → SheetContent}/index.ts +1 -1
- package/src/components/{GridSheet → SheetContent}/util.ts +6 -5
- package/src/components/{SheetContext/SheetContext.tsx → SheetRoot/SheetRoot.tsx} +52 -39
- package/src/components/{GridSheet → SheetRoot}/index.ts +1 -1
- package/src/components/{FunctionEditor/FunctionEditor.tsx → SheetStatusbar/SheetStatusbar.tsx} +20 -8
- package/src/components/{FunctionEditor → SheetStatusbar}/index.ts +1 -1
- package/src/components/SheetToolbar/SheetToolbar.stories.tsx +5 -5
- package/src/components/SheetToolbar/SheetToolbar.tsx +19 -23
- package/src/components/SheetToolbar/align.ts +15 -15
- package/src/components/SheetToolbar/style.ts +12 -12
- package/src/components/index.ts +1 -7
- package/src/{components → containers}/RangeList/RangeList.tsx +17 -16
- package/src/containers/RangeList/index.ts +5 -0
- package/src/{components → containers}/SheetContainer/SheetContainer.stories.tsx +42 -46
- package/src/containers/SheetContainer/SheetContainer.tsx +57 -0
- package/src/containers/SheetContainer/index.ts +5 -0
- package/src/containers/index.ts +8 -0
- package/src/extensions/compute.stories.tsx +17 -16
- package/src/extensions/compute.ts +1 -1
- package/src/extensions/editor/sheet-extension.test.ts +1 -1
- package/src/extensions/editor/sheet-extension.ts +12 -12
- package/src/index.ts +8 -2
- package/src/integrations/thread-ranges.ts +8 -41
- package/src/meta.ts +1 -1
- package/src/model/sheet-model.test.ts +5 -5
- package/src/model/sheet-model.ts +39 -37
- package/src/model/testing.ts +2 -2
- package/src/model/useSheetModel.ts +3 -2
- package/src/operations/definitions.ts +73 -0
- package/src/operations/drop-axis.ts +26 -0
- package/src/operations/index.ts +14 -0
- package/src/operations/insert-axis.ts +19 -0
- package/src/operations/restore-axis.ts +19 -0
- package/src/operations/scroll-to-anchor.ts +31 -0
- package/src/playwright/playwright.config.ts +1 -1
- package/src/playwright/sheet.spec.ts +3 -3
- package/src/sanity.test.ts +6 -3
- package/src/serializer.ts +1 -1
- package/src/testing/data.ts +1 -1
- package/src/testing/testing.tsx +4 -4
- package/src/translations.ts +41 -36
- package/src/types/Sheet.ts +17 -20
- package/src/types/capabilities.ts +15 -3
- package/src/types/sheet-range-types.ts +3 -3
- package/src/types/types.ts +0 -80
- package/src/types/util.ts +3 -2
- package/dist/lib/browser/SheetContainer-ESCXPI7Y.mjs +0 -397
- package/dist/lib/browser/SheetContainer-ESCXPI7Y.mjs.map +0 -7
- package/dist/lib/browser/anchor-sort-JBRMW6OY.mjs +0 -23
- package/dist/lib/browser/anchor-sort-JBRMW6OY.mjs.map +0 -7
- package/dist/lib/browser/chunk-2SAGT3BB.mjs.map +0 -7
- package/dist/lib/browser/chunk-IFLWVS2V.mjs +0 -234
- package/dist/lib/browser/chunk-IFLWVS2V.mjs.map +0 -7
- package/dist/lib/browser/chunk-W6N44ONZ.mjs +0 -1470
- package/dist/lib/browser/chunk-W6N44ONZ.mjs.map +0 -7
- package/dist/lib/browser/compute-graph-registry-DL2PX7TF.mjs +0 -21
- package/dist/lib/browser/compute-graph-registry-DL2PX7TF.mjs.map +0 -7
- package/dist/lib/browser/markdown-BC4KBDUO.mjs +0 -29
- package/dist/lib/browser/markdown-BC4KBDUO.mjs.map +0 -7
- package/dist/lib/browser/operation-resolver-FJ4UWZUM.mjs +0 -79
- package/dist/lib/browser/operation-resolver-FJ4UWZUM.mjs.map +0 -7
- package/dist/lib/browser/react-surface-5BXM6TJ3.mjs +0 -51
- package/dist/lib/browser/react-surface-5BXM6TJ3.mjs.map +0 -7
- package/dist/lib/node-esm/SheetContainer-YVIDJKP4.mjs +0 -398
- package/dist/lib/node-esm/SheetContainer-YVIDJKP4.mjs.map +0 -7
- package/dist/lib/node-esm/anchor-sort-C3XFPI6S.mjs +0 -24
- package/dist/lib/node-esm/anchor-sort-C3XFPI6S.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-IMWGSIDG.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-PPOYR7DK.mjs +0 -236
- package/dist/lib/node-esm/chunk-PPOYR7DK.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-S7RYX7DG.mjs +0 -1471
- package/dist/lib/node-esm/chunk-S7RYX7DG.mjs.map +0 -7
- package/dist/lib/node-esm/compute-graph-registry-VXH55GDI.mjs +0 -22
- package/dist/lib/node-esm/compute-graph-registry-VXH55GDI.mjs.map +0 -7
- package/dist/lib/node-esm/markdown-6DGZCJRM.mjs +0 -30
- package/dist/lib/node-esm/markdown-6DGZCJRM.mjs.map +0 -7
- package/dist/lib/node-esm/operation-resolver-OGXEUWHA.mjs +0 -80
- package/dist/lib/node-esm/operation-resolver-OGXEUWHA.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-RLHC6B77.mjs +0 -52
- package/dist/lib/node-esm/react-surface-RLHC6B77.mjs.map +0 -7
- package/dist/types/src/capabilities/anchor-sort/anchor-sort.d.ts +0 -5
- package/dist/types/src/capabilities/anchor-sort/anchor-sort.d.ts.map +0 -1
- package/dist/types/src/capabilities/anchor-sort/index.d.ts +0 -3
- package/dist/types/src/capabilities/anchor-sort/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/compute-graph-registry/compute-graph-registry.d.ts +0 -5
- package/dist/types/src/capabilities/compute-graph-registry/compute-graph-registry.d.ts.map +0 -1
- package/dist/types/src/capabilities/compute-graph-registry/index.d.ts +0 -3
- package/dist/types/src/capabilities/compute-graph-registry/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/markdown/index.d.ts +0 -3
- package/dist/types/src/capabilities/markdown/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/markdown/markdown.d.ts +0 -5
- package/dist/types/src/capabilities/markdown/markdown.d.ts.map +0 -1
- package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
- package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -5
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
- package/dist/types/src/components/FunctionEditor/FunctionEditor.d.ts +0 -3
- package/dist/types/src/components/FunctionEditor/FunctionEditor.d.ts.map +0 -1
- package/dist/types/src/components/FunctionEditor/index.d.ts +0 -2
- package/dist/types/src/components/FunctionEditor/index.d.ts.map +0 -1
- package/dist/types/src/components/GridSheet/GridSheet.d.ts +0 -3
- package/dist/types/src/components/GridSheet/GridSheet.d.ts.map +0 -1
- package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts +0 -55
- package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts.map +0 -1
- package/dist/types/src/components/GridSheet/SheetCellEditor.stories.d.ts.map +0 -1
- package/dist/types/src/components/GridSheet/index.d.ts +0 -2
- package/dist/types/src/components/GridSheet/index.d.ts.map +0 -1
- package/dist/types/src/components/GridSheet/util.d.ts.map +0 -1
- package/dist/types/src/components/RangeList/RangeList.d.ts.map +0 -1
- package/dist/types/src/components/RangeList/index.d.ts +0 -2
- package/dist/types/src/components/RangeList/index.d.ts.map +0 -1
- package/dist/types/src/components/SheetContainer/SheetContainer.d.ts +0 -10
- package/dist/types/src/components/SheetContainer/SheetContainer.d.ts.map +0 -1
- package/dist/types/src/components/SheetContainer/SheetContainer.stories.d.ts +0 -57
- package/dist/types/src/components/SheetContainer/SheetContainer.stories.d.ts.map +0 -1
- package/dist/types/src/components/SheetContainer/index.d.ts +0 -3
- package/dist/types/src/components/SheetContainer/index.d.ts.map +0 -1
- package/dist/types/src/components/SheetContext/SheetContext.d.ts.map +0 -1
- package/dist/types/src/components/SheetContext/index.d.ts +0 -2
- package/dist/types/src/components/SheetContext/index.d.ts.map +0 -1
- package/src/capabilities/anchor-sort/index.ts +0 -7
- package/src/capabilities/compute-graph-registry/index.ts +0 -7
- package/src/capabilities/markdown/index.ts +0 -7
- package/src/capabilities/operation-resolver/index.ts +0 -7
- package/src/capabilities/operation-resolver/operation-resolver.ts +0 -77
- package/src/capabilities/react-surface/index.ts +0 -7
- package/src/capabilities/react-surface/react-surface.tsx +0 -43
- package/src/components/SheetContainer/SheetContainer.tsx +0 -48
- package/src/components/SheetContainer/index.ts +0 -7
- package/src/components/SheetContext/index.ts +0 -5
- /package/dist/types/src/components/{GridSheet → SheetContent}/SheetCellEditor.stories.d.ts +0 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import "./chunk-J5LGTIGS.mjs";
|
|
2
|
+
|
|
3
|
+
// src/translations.ts
|
|
4
|
+
import { meta } from "#meta";
|
|
5
|
+
import { Sheet } from "#types";
|
|
6
|
+
var translations = [
|
|
7
|
+
{
|
|
8
|
+
"en-US": {
|
|
9
|
+
[Sheet.Sheet.typename]: {
|
|
10
|
+
"typename.label": "Sheet",
|
|
11
|
+
"typename.label_zero": "Sheets",
|
|
12
|
+
"typename.label_one": "Sheet",
|
|
13
|
+
"typename.label_other": "Sheets",
|
|
14
|
+
"object-name.placeholder": "New sheet",
|
|
15
|
+
"add-object.label": "Add sheet",
|
|
16
|
+
"rename-object.label": "Rename sheet",
|
|
17
|
+
"delete-object.label": "Delete sheet",
|
|
18
|
+
"object-deleted.label": "Sheet deleted"
|
|
19
|
+
},
|
|
20
|
+
[meta.id]: {
|
|
21
|
+
"plugin.name": "Sheets",
|
|
22
|
+
"cell.placeholder": "Cell value...",
|
|
23
|
+
"range-key.alignment.label": "Align",
|
|
24
|
+
"range-key.style.label": "Style",
|
|
25
|
+
"range-value.start.label": "Align left",
|
|
26
|
+
"range-value.center.label": "Align center",
|
|
27
|
+
"range-value.end.label": "Align right",
|
|
28
|
+
"range-value.softwrap.label": "Wrap text",
|
|
29
|
+
"range-value.highlight.label": "Highlight",
|
|
30
|
+
"toolbar-action.label": "{{value}}",
|
|
31
|
+
"selection-overlaps-existing-comment.label": "Selected cell already has a comment",
|
|
32
|
+
"comment.label": "Add comment",
|
|
33
|
+
"comment-ranges-not-supported.label": "Commenting on ranges is not yet supported",
|
|
34
|
+
"no-cursor.label": "Select a cell to comment",
|
|
35
|
+
"add-col-before.label": "Add column before",
|
|
36
|
+
"add-col-after.label": "Add column after",
|
|
37
|
+
"delete-col.label": "Delete column",
|
|
38
|
+
"add-row-before.label": "Add row before",
|
|
39
|
+
"add-row-after.label": "Add row after",
|
|
40
|
+
"delete-row.label": "Delete row",
|
|
41
|
+
"range-list.heading": "Ranges",
|
|
42
|
+
"no-ranges.message": "No ranges",
|
|
43
|
+
"range.title": "{{position}} \u2014 {{value}}",
|
|
44
|
+
"col-dropped.label": "Deleted a column",
|
|
45
|
+
"row-dropped.label": "Deleted a row",
|
|
46
|
+
"align.label": "Text align",
|
|
47
|
+
"axis-dropped.label": "Drop axis"
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
];
|
|
52
|
+
export {
|
|
53
|
+
translations
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=translations.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/translations.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Resource } from '@dxos/react-ui';\n\nimport { meta } from '#meta';\nimport { Sheet } from '#types';\n\nexport const translations = [\n {\n 'en-US': {\n [Sheet.Sheet.typename]: {\n 'typename.label': 'Sheet',\n 'typename.label_zero': 'Sheets',\n 'typename.label_one': 'Sheet',\n 'typename.label_other': 'Sheets',\n 'object-name.placeholder': 'New sheet',\n 'add-object.label': 'Add sheet',\n 'rename-object.label': 'Rename sheet',\n 'delete-object.label': 'Delete sheet',\n 'object-deleted.label': 'Sheet deleted',\n },\n [meta.id]: {\n 'plugin.name': 'Sheets',\n 'cell.placeholder': 'Cell value...',\n\n 'range-key.alignment.label': 'Align',\n 'range-key.style.label': 'Style',\n\n 'range-value.start.label': 'Align left',\n 'range-value.center.label': 'Align center',\n 'range-value.end.label': 'Align right',\n 'range-value.softwrap.label': 'Wrap text',\n 'range-value.highlight.label': 'Highlight',\n\n 'toolbar-action.label': '{{value}}',\n 'selection-overlaps-existing-comment.label': 'Selected cell already has a comment',\n 'comment.label': 'Add comment',\n 'comment-ranges-not-supported.label': 'Commenting on ranges is not yet supported',\n 'no-cursor.label': 'Select a cell to comment',\n 'add-col-before.label': 'Add column before',\n 'add-col-after.label': 'Add column after',\n 'delete-col.label': 'Delete column',\n 'add-row-before.label': 'Add row before',\n 'add-row-after.label': 'Add row after',\n 'delete-row.label': 'Delete row',\n 'range-list.heading': 'Ranges',\n 'no-ranges.message': 'No ranges',\n 'range.title': '{{position}} — {{value}}',\n 'col-dropped.label': 'Deleted a column',\n 'row-dropped.label': 'Deleted a row',\n 'align.label': 'Text align',\n 'axis-dropped.label': 'Drop axis', // TODO(burdon): What does this mean?\n },\n },\n },\n] as const satisfies Resource[];\n"],
|
|
5
|
+
"mappings": ";;;AAMA,SAASA,YAAY;AACrB,SAASC,aAAa;AAEf,IAAMC,eAAe;EAC1B;IACE,SAAS;MACP,CAACD,MAAMA,MAAME,QAAQ,GAAG;QACtB,kBAAkB;QAClB,uBAAuB;QACvB,sBAAsB;QACtB,wBAAwB;QACxB,2BAA2B;QAC3B,oBAAoB;QACpB,uBAAuB;QACvB,uBAAuB;QACvB,wBAAwB;MAC1B;MACA,CAACH,KAAKI,EAAE,GAAG;QACT,eAAe;QACf,oBAAoB;QAEpB,6BAA6B;QAC7B,yBAAyB;QAEzB,2BAA2B;QAC3B,4BAA4B;QAC5B,yBAAyB;QACzB,8BAA8B;QAC9B,+BAA+B;QAE/B,wBAAwB;QACxB,6CAA6C;QAC7C,iBAAiB;QACjB,sCAAsC;QACtC,mBAAmB;QACnB,wBAAwB;QACxB,uBAAuB;QACvB,oBAAoB;QACpB,wBAAwB;QACxB,uBAAuB;QACvB,oBAAoB;QACpB,sBAAsB;QACtB,qBAAqB;QACrB,eAAe;QACf,qBAAqB;QACrB,qBAAqB;QACrB,eAAe;QACf,sBAAsB;MACxB;IACF;EACF;;",
|
|
6
|
+
"names": ["meta", "Sheet", "translations", "typename", "id"]
|
|
7
|
+
}
|
|
@@ -8,7 +8,6 @@ import {
|
|
|
8
8
|
ReadonlyException,
|
|
9
9
|
SheetAction,
|
|
10
10
|
SheetCapabilities,
|
|
11
|
-
SheetOperation,
|
|
12
11
|
Sheet_exports,
|
|
13
12
|
addressFromIndex,
|
|
14
13
|
addressToIndex,
|
|
@@ -25,7 +24,8 @@ import {
|
|
|
25
24
|
rangeFromIndex,
|
|
26
25
|
rangeToIndex,
|
|
27
26
|
styleKey
|
|
28
|
-
} from "../chunk-
|
|
27
|
+
} from "../chunk-SVGX3MWY.mjs";
|
|
28
|
+
import "../chunk-J5LGTIGS.mjs";
|
|
29
29
|
export {
|
|
30
30
|
ApiError,
|
|
31
31
|
DEFAULT_COLS,
|
|
@@ -37,7 +37,6 @@ export {
|
|
|
37
37
|
Sheet_exports as Sheet,
|
|
38
38
|
SheetAction,
|
|
39
39
|
SheetCapabilities,
|
|
40
|
-
SheetOperation,
|
|
41
40
|
addressFromIndex,
|
|
42
41
|
addressToIndex,
|
|
43
42
|
alignKey,
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import "./chunk-HSLMI22Q.mjs";
|
|
3
|
+
|
|
4
|
+
// src/SheetPlugin.tsx
|
|
5
|
+
import * as Effect from "effect/Effect";
|
|
6
|
+
import * as Option from "effect/Option";
|
|
7
|
+
import { ActivationEvent, Plugin } from "@dxos/app-framework";
|
|
8
|
+
import { AppActivationEvents, AppPlugin } from "@dxos/app-toolkit";
|
|
9
|
+
import { Operation } from "@dxos/compute";
|
|
10
|
+
import { Annotation } from "@dxos/echo";
|
|
11
|
+
import { AutomationEvents } from "@dxos/plugin-automation/types";
|
|
12
|
+
import { ClientEvents } from "@dxos/plugin-client/types";
|
|
13
|
+
import { MarkdownEvents } from "@dxos/plugin-markdown/types";
|
|
14
|
+
import { SpaceOperation } from "@dxos/plugin-space/operations";
|
|
15
|
+
import { AnchorSort, ComputeGraphRegistry, Markdown, OperationHandler, UndoMappings, ReactSurface, SheetState } from "#capabilities";
|
|
16
|
+
import { meta } from "#meta";
|
|
17
|
+
import { SheetOperation } from "#operations";
|
|
18
|
+
import { translations } from "#translations";
|
|
19
|
+
import { Sheet as Sheet2 } from "#types";
|
|
20
|
+
|
|
21
|
+
// src/serializer.ts
|
|
22
|
+
import { Obj } from "@dxos/echo";
|
|
23
|
+
import { getObjectCore } from "@dxos/echo-db";
|
|
24
|
+
import { Sheet } from "#types";
|
|
25
|
+
var serializer = {
|
|
26
|
+
serialize: async ({ object }) => {
|
|
27
|
+
return JSON.stringify(object, null, 2);
|
|
28
|
+
},
|
|
29
|
+
deserialize: async ({ content, newId }) => {
|
|
30
|
+
const { id, ...parsed } = JSON.parse(content);
|
|
31
|
+
const sheet = Obj.make(Sheet.Sheet, parsed);
|
|
32
|
+
if (!newId) {
|
|
33
|
+
const core = getObjectCore(sheet);
|
|
34
|
+
core.id = id;
|
|
35
|
+
}
|
|
36
|
+
return sheet;
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
// src/SheetPlugin.tsx
|
|
41
|
+
var SheetPlugin = Plugin.define(meta).pipe(AppPlugin.addMetadataModule({
|
|
42
|
+
metadata: {
|
|
43
|
+
id: Sheet2.Sheet.typename,
|
|
44
|
+
metadata: {
|
|
45
|
+
label: (object) => object.name,
|
|
46
|
+
icon: Annotation.IconAnnotation.get(Sheet2.Sheet).pipe(Option.getOrThrow).icon,
|
|
47
|
+
iconHue: Annotation.IconAnnotation.get(Sheet2.Sheet).pipe(Option.getOrThrow).hue ?? "white",
|
|
48
|
+
serializer,
|
|
49
|
+
comments: "anchored",
|
|
50
|
+
createObject: (props, options) => Effect.gen(function* () {
|
|
51
|
+
const object = Sheet2.make(props);
|
|
52
|
+
return yield* Operation.invoke(SpaceOperation.AddObject, {
|
|
53
|
+
object,
|
|
54
|
+
target: options.target,
|
|
55
|
+
hidden: true,
|
|
56
|
+
targetNodeId: options.targetNodeId
|
|
57
|
+
});
|
|
58
|
+
}),
|
|
59
|
+
scrollToAnchor: SheetOperation.ScrollToAnchor
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}), AppPlugin.addOperationHandlerModule({
|
|
63
|
+
activate: OperationHandler
|
|
64
|
+
}), AppPlugin.addUndoMappingsModule({
|
|
65
|
+
activate: UndoMappings
|
|
66
|
+
}), AppPlugin.addSchemaModule({
|
|
67
|
+
schema: [
|
|
68
|
+
Sheet2.Sheet
|
|
69
|
+
]
|
|
70
|
+
}), AppPlugin.addSurfaceModule({
|
|
71
|
+
activate: ReactSurface
|
|
72
|
+
}), AppPlugin.addTranslationsModule({
|
|
73
|
+
translations
|
|
74
|
+
}), Plugin.addModule({
|
|
75
|
+
activatesOn: AppActivationEvents.SetupSettings,
|
|
76
|
+
activate: SheetState
|
|
77
|
+
}), Plugin.addModule({
|
|
78
|
+
activatesOn: ActivationEvent.allOf(ClientEvents.ClientReady, AutomationEvents.ComputeRuntimeReady),
|
|
79
|
+
activate: ComputeGraphRegistry
|
|
80
|
+
}), Plugin.addModule({
|
|
81
|
+
activatesOn: MarkdownEvents.SetupExtensions,
|
|
82
|
+
activate: Markdown
|
|
83
|
+
}), Plugin.addModule({
|
|
84
|
+
// TODO(wittjosiah): More relevant event?
|
|
85
|
+
activatesOn: AppActivationEvents.AppGraphReady,
|
|
86
|
+
activate: AnchorSort
|
|
87
|
+
}), Plugin.make);
|
|
88
|
+
var SheetPlugin_default = SheetPlugin;
|
|
89
|
+
export {
|
|
90
|
+
SheetPlugin,
|
|
91
|
+
SheetPlugin_default as default
|
|
92
|
+
};
|
|
93
|
+
//# sourceMappingURL=SheetPlugin-ZJRSEYHB.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/SheetPlugin.tsx", "../../../src/serializer.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Option from 'effect/Option';\n\nimport { ActivationEvent, Plugin } from '@dxos/app-framework';\nimport { AppActivationEvents, AppPlugin } from '@dxos/app-toolkit';\nimport { Operation } from '@dxos/compute';\nimport { Annotation } from '@dxos/echo';\nimport { AutomationEvents } from '@dxos/plugin-automation/types';\nimport { ClientEvents } from '@dxos/plugin-client/types';\nimport { MarkdownEvents } from '@dxos/plugin-markdown/types';\nimport { SpaceOperation } from '@dxos/plugin-space/operations';\nimport { type CreateObject } from '@dxos/plugin-space/types';\n\nimport {\n AnchorSort,\n ComputeGraphRegistry,\n Markdown,\n OperationHandler,\n UndoMappings,\n ReactSurface,\n SheetState,\n} from '#capabilities';\nimport { meta } from '#meta';\nimport { SheetOperation } from '#operations';\nimport { translations } from '#translations';\nimport { Sheet } from '#types';\n\nimport { serializer } from './serializer';\n\nexport const SheetPlugin = Plugin.define(meta).pipe(\n AppPlugin.addMetadataModule({\n metadata: {\n id: Sheet.Sheet.typename,\n metadata: {\n label: (object: Sheet.Sheet) => object.name,\n icon: Annotation.IconAnnotation.get(Sheet.Sheet).pipe(Option.getOrThrow).icon,\n iconHue: Annotation.IconAnnotation.get(Sheet.Sheet).pipe(Option.getOrThrow).hue ?? 'white',\n serializer,\n comments: 'anchored',\n createObject: ((props, options) =>\n Effect.gen(function* () {\n const object = Sheet.make(props);\n return yield* Operation.invoke(SpaceOperation.AddObject, {\n object,\n target: options.target,\n hidden: true,\n targetNodeId: options.targetNodeId,\n });\n })) satisfies CreateObject,\n scrollToAnchor: SheetOperation.ScrollToAnchor,\n },\n },\n }),\n AppPlugin.addOperationHandlerModule({ activate: OperationHandler }),\n AppPlugin.addUndoMappingsModule({ activate: UndoMappings }),\n AppPlugin.addSchemaModule({ schema: [Sheet.Sheet] }),\n AppPlugin.addSurfaceModule({ activate: ReactSurface }),\n AppPlugin.addTranslationsModule({ translations }),\n Plugin.addModule({\n activatesOn: AppActivationEvents.SetupSettings,\n activate: SheetState,\n }),\n Plugin.addModule({\n activatesOn: ActivationEvent.allOf(ClientEvents.ClientReady, AutomationEvents.ComputeRuntimeReady),\n activate: ComputeGraphRegistry,\n }),\n Plugin.addModule({\n activatesOn: MarkdownEvents.SetupExtensions,\n activate: Markdown,\n }),\n Plugin.addModule({\n // TODO(wittjosiah): More relevant event?\n activatesOn: AppActivationEvents.AppGraphReady,\n activate: AnchorSort,\n }),\n Plugin.make,\n);\n\nexport default SheetPlugin;\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Obj } from '@dxos/echo';\nimport { getObjectCore } from '@dxos/echo-db';\nimport { type TypedObjectSerializer } from '@dxos/plugin-space/types';\n\nimport { Sheet } from '#types';\n\nexport const serializer: TypedObjectSerializer<Sheet.Sheet> = {\n serialize: async ({ object }): Promise<string> => {\n return JSON.stringify(object, null, 2);\n },\n\n deserialize: async ({ content, newId }) => {\n const { id, ...parsed } = JSON.parse(content);\n const sheet = Obj.make(Sheet.Sheet, parsed);\n\n if (!newId) {\n const core = getObjectCore(sheet);\n core.id = id;\n }\n\n return sheet;\n },\n};\n"],
|
|
5
|
+
"mappings": ";;;;AAIA,YAAYA,YAAY;AACxB,YAAYC,YAAY;AAExB,SAASC,iBAAiBC,cAAc;AACxC,SAASC,qBAAqBC,iBAAiB;AAC/C,SAASC,iBAAiB;AAC1B,SAASC,kBAAkB;AAC3B,SAASC,wBAAwB;AACjC,SAASC,oBAAoB;AAC7B,SAASC,sBAAsB;AAC/B,SAASC,sBAAsB;AAG/B,SACEC,YACAC,sBACAC,UACAC,kBACAC,cACAC,cACAC,kBACK;AACP,SAASC,YAAY;AACrB,SAASC,sBAAsB;AAC/B,SAASC,oBAAoB;AAC7B,SAASC,SAAAA,cAAa;;;ACzBtB,SAASC,WAAW;AACpB,SAASC,qBAAqB;AAG9B,SAASC,aAAa;AAEf,IAAMC,aAAiD;EAC5DC,WAAW,OAAO,EAAEC,OAAM,MAAE;AAC1B,WAAOC,KAAKC,UAAUF,QAAQ,MAAM,CAAA;EACtC;EAEAG,aAAa,OAAO,EAAEC,SAASC,MAAK,MAAE;AACpC,UAAM,EAAEC,IAAI,GAAGC,OAAAA,IAAWN,KAAKO,MAAMJ,OAAAA;AACrC,UAAMK,QAAQd,IAAIe,KAAKb,MAAMA,OAAOU,MAAAA;AAEpC,QAAI,CAACF,OAAO;AACV,YAAMM,OAAOf,cAAca,KAAAA;AAC3BE,WAAKL,KAAKA;IACZ;AAEA,WAAOG;EACT;AACF;;;ADOO,IAAMG,cAAcC,OAAOC,OAAOC,IAAAA,EAAMC,KAC7CC,UAAUC,kBAAkB;EAC1BC,UAAU;IACRC,IAAIC,OAAMA,MAAMC;IAChBH,UAAU;MACRI,OAAO,CAACC,WAAwBA,OAAOC;MACvCC,MAAMC,WAAWC,eAAeC,IAAIR,OAAMA,KAAK,EAAEL,KAAYc,iBAAU,EAAEJ;MACzEK,SAASJ,WAAWC,eAAeC,IAAIR,OAAMA,KAAK,EAAEL,KAAYc,iBAAU,EAAEE,OAAO;MACnFC;MACAC,UAAU;MACVC,cAAe,CAACC,OAAOC,YACdC,WAAI,aAAA;AACT,cAAMd,SAASH,OAAMkB,KAAKH,KAAAA;AAC1B,eAAO,OAAOI,UAAUC,OAAOC,eAAeC,WAAW;UACvDnB;UACAoB,QAAQP,QAAQO;UAChBC,QAAQ;UACRC,cAAcT,QAAQS;QACxB,CAAA;MACF,CAAA;MACFC,gBAAgBC,eAAeC;IACjC;EACF;AACF,CAAA,GACAhC,UAAUiC,0BAA0B;EAAEC,UAAUC;AAAiB,CAAA,GACjEnC,UAAUoC,sBAAsB;EAAEF,UAAUG;AAAa,CAAA,GACzDrC,UAAUsC,gBAAgB;EAAEC,QAAQ;IAACnC,OAAMA;;AAAO,CAAA,GAClDJ,UAAUwC,iBAAiB;EAAEN,UAAUO;AAAa,CAAA,GACpDzC,UAAU0C,sBAAsB;EAAEC;AAAa,CAAA,GAC/C/C,OAAOgD,UAAU;EACfC,aAAaC,oBAAoBC;EACjCb,UAAUc;AACZ,CAAA,GACApD,OAAOgD,UAAU;EACfC,aAAaI,gBAAgBC,MAAMC,aAAaC,aAAaC,iBAAiBC,mBAAmB;EACjGpB,UAAUqB;AACZ,CAAA,GACA3D,OAAOgD,UAAU;EACfC,aAAaW,eAAeC;EAC5BvB,UAAUwB;AACZ,CAAA,GACA9D,OAAOgD,UAAU;;EAEfC,aAAaC,oBAAoBa;EACjCzB,UAAU0B;AACZ,CAAA,GACAhE,OAAO0B,IAAI;AAGb,IAAA,sBAAe3B;",
|
|
6
|
+
"names": ["Effect", "Option", "ActivationEvent", "Plugin", "AppActivationEvents", "AppPlugin", "Operation", "Annotation", "AutomationEvents", "ClientEvents", "MarkdownEvents", "SpaceOperation", "AnchorSort", "ComputeGraphRegistry", "Markdown", "OperationHandler", "UndoMappings", "ReactSurface", "SheetState", "meta", "SheetOperation", "translations", "Sheet", "Obj", "getObjectCore", "Sheet", "serializer", "serialize", "object", "JSON", "stringify", "deserialize", "content", "newId", "id", "parsed", "parse", "sheet", "make", "core", "SheetPlugin", "Plugin", "define", "meta", "pipe", "AppPlugin", "addMetadataModule", "metadata", "id", "Sheet", "typename", "label", "object", "name", "icon", "Annotation", "IconAnnotation", "get", "getOrThrow", "iconHue", "hue", "serializer", "comments", "createObject", "props", "options", "gen", "make", "Operation", "invoke", "SpaceOperation", "AddObject", "target", "hidden", "targetNodeId", "scrollToAnchor", "SheetOperation", "ScrollToAnchor", "addOperationHandlerModule", "activate", "OperationHandler", "addUndoMappingsModule", "UndoMappings", "addSchemaModule", "schema", "addSurfaceModule", "ReactSurface", "addTranslationsModule", "translations", "addModule", "activatesOn", "AppActivationEvents", "SetupSettings", "SheetState", "ActivationEvent", "allOf", "ClientEvents", "ClientReady", "AutomationEvents", "ComputeRuntimeReady", "ComputeGraphRegistry", "MarkdownEvents", "SetupExtensions", "Markdown", "AppGraphReady", "AnchorSort"]
|
|
7
|
+
}
|
|
@@ -1,33 +1,14 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
6
|
-
};
|
|
2
|
+
import {
|
|
3
|
+
__export
|
|
4
|
+
} from "./chunk-HSLMI22Q.mjs";
|
|
7
5
|
|
|
8
6
|
// src/types/capabilities.ts
|
|
9
7
|
import { Capability } from "@dxos/app-framework";
|
|
10
|
-
|
|
11
|
-
// src/meta.ts
|
|
12
|
-
import { trim } from "@dxos/util";
|
|
13
|
-
var meta = {
|
|
14
|
-
id: "dxos.org/plugin/sheet",
|
|
15
|
-
name: "Sheet",
|
|
16
|
-
description: trim`
|
|
17
|
-
Full-featured spreadsheet application with over 400 built-in formulas for calculations and data analysis.
|
|
18
|
-
Create custom JavaScript functions and integrate with AI agents for advanced automation.
|
|
19
|
-
`,
|
|
20
|
-
icon: "ph--grid-nine--regular",
|
|
21
|
-
iconHue: "indigo",
|
|
22
|
-
source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-sheet",
|
|
23
|
-
screenshots: [
|
|
24
|
-
"https://dxos.network/plugin-details-sheet-dark.png"
|
|
25
|
-
]
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
// src/types/capabilities.ts
|
|
8
|
+
import { meta } from "#meta";
|
|
29
9
|
(function(SheetCapabilities2) {
|
|
30
|
-
SheetCapabilities2.ComputeGraphRegistry = Capability.make(`${meta.id}
|
|
10
|
+
SheetCapabilities2.ComputeGraphRegistry = Capability.make(`${meta.id}.capability.compute-graph-registry`);
|
|
11
|
+
SheetCapabilities2.GridInstances = Capability.make(`${meta.id}.capability.grid-instances`);
|
|
31
12
|
})(SheetCapabilities || (SheetCapabilities = {}));
|
|
32
13
|
var SheetCapabilities;
|
|
33
14
|
|
|
@@ -41,12 +22,12 @@ __export(Sheet_exports, {
|
|
|
41
22
|
make: () => make
|
|
42
23
|
});
|
|
43
24
|
import * as Schema from "effect/Schema";
|
|
44
|
-
import { addressFromA1Notation as addressFromA1Notation2, isFormula as isFormula2 } from "@dxos/compute";
|
|
45
|
-
import { Obj, Type } from "@dxos/echo";
|
|
25
|
+
import { addressFromA1Notation as addressFromA1Notation2, isFormula as isFormula2 } from "@dxos/compute-hyperformula";
|
|
26
|
+
import { Annotation, Obj, Type } from "@dxos/echo";
|
|
46
27
|
import { FormInputAnnotation } from "@dxos/echo/internal";
|
|
47
28
|
|
|
48
29
|
// src/types/util.ts
|
|
49
|
-
import { addressFromA1Notation, addressToA1Notation, isFormula } from "@dxos/compute";
|
|
30
|
+
import { addressFromA1Notation, addressToA1Notation, isFormula } from "@dxos/compute-hyperformula";
|
|
50
31
|
import { randomBytes } from "@dxos/crypto";
|
|
51
32
|
import { invariant } from "@dxos/invariant";
|
|
52
33
|
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-sheet/src/types/util.ts";
|
|
@@ -121,29 +102,13 @@ var compareIndexPositions = (sheet, indexA, indexB) => {
|
|
|
121
102
|
}
|
|
122
103
|
};
|
|
123
104
|
var mapFormulaRefsToIndices = (sheet, formula) => {
|
|
124
|
-
invariant(isFormula(formula), void 0, {
|
|
125
|
-
F: __dxlog_file,
|
|
126
|
-
L: 124,
|
|
127
|
-
S: void 0,
|
|
128
|
-
A: [
|
|
129
|
-
"isFormula(formula)",
|
|
130
|
-
""
|
|
131
|
-
]
|
|
132
|
-
});
|
|
105
|
+
invariant(isFormula(formula), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 96, S: void 0, A: ["isFormula(formula)", ""] });
|
|
133
106
|
return formula.replace(/([a-zA-Z]+)([0-9]+)/g, (match) => {
|
|
134
107
|
return addressToIndex(sheet, addressFromA1Notation(match));
|
|
135
108
|
});
|
|
136
109
|
};
|
|
137
110
|
var mapFormulaIndicesToRefs = (sheet, formula) => {
|
|
138
|
-
invariant(isFormula(formula), void 0, {
|
|
139
|
-
F: __dxlog_file,
|
|
140
|
-
L: 134,
|
|
141
|
-
S: void 0,
|
|
142
|
-
A: [
|
|
143
|
-
"isFormula(formula)",
|
|
144
|
-
""
|
|
145
|
-
]
|
|
146
|
-
});
|
|
111
|
+
invariant(isFormula(formula), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 104, S: void 0, A: ["isFormula(formula)", ""] });
|
|
147
112
|
return formula.replace(/([a-zA-Z0-9]+)@([a-zA-Z0-9]+)/g, (idx) => {
|
|
148
113
|
return addressToA1Notation(addressFromIndex(sheet, idx));
|
|
149
114
|
});
|
|
@@ -169,27 +134,30 @@ var Sheet = Schema.Struct({
|
|
|
169
134
|
// Sparse map of cells referenced by index.
|
|
170
135
|
cells: Schema.Record({
|
|
171
136
|
key: Schema.String,
|
|
172
|
-
value:
|
|
173
|
-
}).pipe(
|
|
137
|
+
value: CellValue
|
|
138
|
+
}).pipe(FormInputAnnotation.set(false)),
|
|
174
139
|
// Ordered row indices.
|
|
175
|
-
rows: Schema.Array(Schema.String).pipe(
|
|
140
|
+
rows: Schema.Array(Schema.String).pipe(FormInputAnnotation.set(false)),
|
|
176
141
|
// Ordered column indices.
|
|
177
|
-
columns: Schema.Array(Schema.String).pipe(
|
|
142
|
+
columns: Schema.Array(Schema.String).pipe(FormInputAnnotation.set(false)),
|
|
178
143
|
// Row metadata referenced by index.
|
|
179
144
|
rowMeta: Schema.Record({
|
|
180
145
|
key: Schema.String,
|
|
181
|
-
value:
|
|
182
|
-
}).pipe(
|
|
146
|
+
value: RowColumnMeta
|
|
147
|
+
}).pipe(FormInputAnnotation.set(false)),
|
|
183
148
|
// Column metadata referenced by index.
|
|
184
149
|
columnMeta: Schema.Record({
|
|
185
150
|
key: Schema.String,
|
|
186
|
-
value:
|
|
187
|
-
}).pipe(
|
|
151
|
+
value: RowColumnMeta
|
|
152
|
+
}).pipe(FormInputAnnotation.set(false)),
|
|
188
153
|
// Cell formatting referenced by indexed range.
|
|
189
|
-
ranges: Schema.Array(Range).pipe(
|
|
154
|
+
ranges: Schema.Array(Range).pipe(FormInputAnnotation.set(false))
|
|
190
155
|
}).pipe(Type.object({
|
|
191
|
-
typename: "dxos.
|
|
156
|
+
typename: "org.dxos.type.sheet",
|
|
192
157
|
version: "0.1.0"
|
|
158
|
+
}), Annotation.IconAnnotation.set({
|
|
159
|
+
icon: "ph--grid-nine--regular",
|
|
160
|
+
hue: "indigo"
|
|
193
161
|
}));
|
|
194
162
|
var make = ({ name, cells = {}, ...size } = {}) => {
|
|
195
163
|
const sheet = Obj.make(Sheet, {
|
|
@@ -201,15 +169,15 @@ var make = ({ name, cells = {}, ...size } = {}) => {
|
|
|
201
169
|
columnMeta: {},
|
|
202
170
|
ranges: []
|
|
203
171
|
});
|
|
204
|
-
Obj.
|
|
205
|
-
initialize(
|
|
172
|
+
Obj.update(sheet, (sheet2) => {
|
|
173
|
+
initialize(sheet2, size);
|
|
206
174
|
if (cells) {
|
|
207
175
|
Object.entries(cells).forEach(([key, { value }]) => {
|
|
208
|
-
const idx = addressToIndex(
|
|
176
|
+
const idx = addressToIndex(sheet2, addressFromA1Notation2(key));
|
|
209
177
|
if (isFormula2(value)) {
|
|
210
|
-
value = mapFormulaRefsToIndices(
|
|
178
|
+
value = mapFormulaRefsToIndices(sheet2, value);
|
|
211
179
|
}
|
|
212
|
-
|
|
180
|
+
sheet2.cells[idx] = {
|
|
213
181
|
value
|
|
214
182
|
};
|
|
215
183
|
});
|
|
@@ -236,13 +204,13 @@ var cellClassNameForRange = ({ key, value }) => {
|
|
|
236
204
|
return void 0;
|
|
237
205
|
}
|
|
238
206
|
case commentKey:
|
|
239
|
-
return "bg-
|
|
207
|
+
return "bg-grid-comment";
|
|
240
208
|
case styleKey:
|
|
241
209
|
switch (value) {
|
|
242
210
|
case "highlight":
|
|
243
|
-
return "
|
|
211
|
+
return "bg-grid-highlight!";
|
|
244
212
|
case "softwrap":
|
|
245
|
-
return "
|
|
213
|
+
return "whitespace-normal!";
|
|
246
214
|
default:
|
|
247
215
|
return void 0;
|
|
248
216
|
}
|
|
@@ -253,10 +221,6 @@ var cellClassNameForRange = ({ key, value }) => {
|
|
|
253
221
|
|
|
254
222
|
// src/types/types.ts
|
|
255
223
|
import * as Schema2 from "effect/Schema";
|
|
256
|
-
import { Capability as Capability2 } from "@dxos/app-framework";
|
|
257
|
-
import { Operation } from "@dxos/operation";
|
|
258
|
-
import { SpaceSchema } from "@dxos/react-client/echo";
|
|
259
|
-
import { Collection } from "@dxos/schema";
|
|
260
224
|
var ActionAxis = Schema2.Union(Schema2.Literal("row"), Schema2.Literal("col"));
|
|
261
225
|
(function(SheetAction2) {
|
|
262
226
|
SheetAction2.RestoreAxis = Schema2.Struct({
|
|
@@ -267,107 +231,9 @@ var ActionAxis = Schema2.Union(Schema2.Literal("row"), Schema2.Literal("col"));
|
|
|
267
231
|
values: Schema2.Array(Schema2.Any)
|
|
268
232
|
});
|
|
269
233
|
})(SheetAction || (SheetAction = {}));
|
|
270
|
-
var SHEET_OPERATION = `${meta.id}/operation`;
|
|
271
|
-
var Axis = Schema2.Union(Schema2.Literal("row"), Schema2.Literal("col"));
|
|
272
|
-
(function(SheetOperation2) {
|
|
273
|
-
SheetOperation2.OnCreateSpace = Operation.make({
|
|
274
|
-
meta: {
|
|
275
|
-
key: `${SHEET_OPERATION}/on-create-space`,
|
|
276
|
-
name: "On Create Space"
|
|
277
|
-
},
|
|
278
|
-
services: [
|
|
279
|
-
Capability2.Service
|
|
280
|
-
],
|
|
281
|
-
schema: {
|
|
282
|
-
input: Schema2.Struct({
|
|
283
|
-
space: SpaceSchema,
|
|
284
|
-
rootCollection: Collection.Collection,
|
|
285
|
-
isDefault: Schema2.optional(Schema2.Boolean)
|
|
286
|
-
}),
|
|
287
|
-
output: Schema2.Void
|
|
288
|
-
}
|
|
289
|
-
});
|
|
290
|
-
SheetOperation2.InsertAxis = Operation.make({
|
|
291
|
-
meta: {
|
|
292
|
-
key: `${SHEET_OPERATION}/axis-insert`,
|
|
293
|
-
name: "Insert Axis"
|
|
294
|
-
},
|
|
295
|
-
schema: {
|
|
296
|
-
input: Schema2.Struct({
|
|
297
|
-
model: Schema2.Any,
|
|
298
|
-
axis: Axis,
|
|
299
|
-
index: Schema2.Number,
|
|
300
|
-
count: Schema2.optional(Schema2.Number)
|
|
301
|
-
}),
|
|
302
|
-
output: Schema2.Void
|
|
303
|
-
}
|
|
304
|
-
});
|
|
305
|
-
SheetOperation2.DropAxisOutput = Schema2.Struct({
|
|
306
|
-
axis: Axis.annotations({
|
|
307
|
-
description: "The axis type (row or col)."
|
|
308
|
-
}),
|
|
309
|
-
axisIndex: Schema2.String.annotations({
|
|
310
|
-
description: "The dropped axis index."
|
|
311
|
-
}),
|
|
312
|
-
index: Schema2.Number.annotations({
|
|
313
|
-
description: "The position the axis was at."
|
|
314
|
-
}),
|
|
315
|
-
axisMeta: Schema2.Any.annotations({
|
|
316
|
-
description: "The row/column metadata."
|
|
317
|
-
}),
|
|
318
|
-
values: Schema2.Array(Schema2.Any).annotations({
|
|
319
|
-
description: "The cell values that were dropped."
|
|
320
|
-
})
|
|
321
|
-
});
|
|
322
|
-
SheetOperation2.DropAxis = Operation.make({
|
|
323
|
-
meta: {
|
|
324
|
-
key: `${SHEET_OPERATION}/axis-drop`,
|
|
325
|
-
name: "Drop Axis"
|
|
326
|
-
},
|
|
327
|
-
schema: {
|
|
328
|
-
input: Schema2.Struct({
|
|
329
|
-
model: Schema2.Any,
|
|
330
|
-
axis: Axis,
|
|
331
|
-
axisIndex: Schema2.String
|
|
332
|
-
}),
|
|
333
|
-
output: SheetOperation2.DropAxisOutput
|
|
334
|
-
}
|
|
335
|
-
});
|
|
336
|
-
SheetOperation2.RestoreAxis = Operation.make({
|
|
337
|
-
meta: {
|
|
338
|
-
key: `${SHEET_OPERATION}/restore-axis`,
|
|
339
|
-
name: "Restore Axis"
|
|
340
|
-
},
|
|
341
|
-
schema: {
|
|
342
|
-
input: Schema2.Struct({
|
|
343
|
-
model: Schema2.Any.annotations({
|
|
344
|
-
description: "The sheet model."
|
|
345
|
-
}),
|
|
346
|
-
axis: Axis.annotations({
|
|
347
|
-
description: "The axis type (row or col)."
|
|
348
|
-
}),
|
|
349
|
-
axisIndex: Schema2.String.annotations({
|
|
350
|
-
description: "The axis index to restore."
|
|
351
|
-
}),
|
|
352
|
-
index: Schema2.Number.annotations({
|
|
353
|
-
description: "The position to restore at."
|
|
354
|
-
}),
|
|
355
|
-
axisMeta: Schema2.Any.annotations({
|
|
356
|
-
description: "The row/column metadata."
|
|
357
|
-
}),
|
|
358
|
-
values: Schema2.Array(Schema2.Any).annotations({
|
|
359
|
-
description: "The cell values to restore."
|
|
360
|
-
})
|
|
361
|
-
}),
|
|
362
|
-
output: Schema2.Void
|
|
363
|
-
}
|
|
364
|
-
});
|
|
365
|
-
})(SheetOperation || (SheetOperation = {}));
|
|
366
234
|
var SheetAction;
|
|
367
|
-
var SheetOperation;
|
|
368
235
|
|
|
369
236
|
export {
|
|
370
|
-
meta,
|
|
371
237
|
SheetCapabilities,
|
|
372
238
|
MAX_ROWS,
|
|
373
239
|
MAX_COLS,
|
|
@@ -392,7 +258,6 @@ export {
|
|
|
392
258
|
commentKey,
|
|
393
259
|
styleKey,
|
|
394
260
|
cellClassNameForRange,
|
|
395
|
-
SheetAction
|
|
396
|
-
SheetOperation
|
|
261
|
+
SheetAction
|
|
397
262
|
};
|
|
398
|
-
//# sourceMappingURL=chunk-
|
|
263
|
+
//# sourceMappingURL=chunk-4A2KAXTF.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/types/capabilities.ts", "../../../src/types/Sheet.ts", "../../../src/types/util.ts", "../../../src/types/sheet-range-types.ts", "../../../src/types/types.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\nimport { type ComputeGraphRegistry } from '@dxos/compute-hyperformula';\nimport { type DxGridElement, type GridContentProps } from '@dxos/react-ui-grid';\n\nimport { meta } from '#meta';\n\nexport type GridEntry = { grid: DxGridElement; setActiveRefs: (refs: GridContentProps['activeRefs']) => void };\n\nexport type GridRegistry = {\n register: (attendableId: string, grid: DxGridElement, setActiveRefs: GridEntry['setActiveRefs']) => void;\n unregister: (attendableId: string) => void;\n get: (attendableId: string) => GridEntry | undefined;\n};\n\nexport namespace SheetCapabilities {\n export const ComputeGraphRegistry = Capability.make<ComputeGraphRegistry>(\n `${meta.id}.capability.compute-graph-registry`,\n );\n\n /** Registry of active grid instances keyed by attendable ID. */\n export const GridInstances = Capability.make<GridRegistry>(`${meta.id}.capability.grid-instances`);\n}\n", "//\n// Copyright 2023 DXOS.org\n//\n\n// @import-as-namespace\n\nimport * as Schema from 'effect/Schema';\n\nimport { addressFromA1Notation, isFormula } from '@dxos/compute-hyperformula';\nimport { Annotation, Obj, Type } from '@dxos/echo';\nimport { FormInputAnnotation } from '@dxos/echo/internal';\n\nimport { addressToIndex, initialize, mapFormulaRefsToIndices } from './util';\n\nexport type SheetSize = {\n rows: number;\n columns: number;\n};\n\nexport const CellValue = Schema.Struct({\n // TODO(burdon): How to store dates (datetime, date, time), percentages, etc.\n // Consider import/export; natural access for other plugins. Special handling for currency (precision).\n // TODO(burdon): Automerge (long string) or short string or number.\n value: Schema.Any,\n});\n\nexport type CellValue = Schema.Schema.Type<typeof CellValue>;\n\n// TODO(burdon): IMPORTANT: Reconcile with Field definition.\nexport const Range = Schema.Struct({\n range: Schema.String,\n key: Schema.String,\n value: Schema.String,\n});\n\nexport type Range = Schema.Schema.Type<typeof Range>;\n\n// TODO(burdon): Visibility, locked, frozen, etc.\nexport const RowColumnMeta = Schema.Struct({\n size: Schema.optional(Schema.Number),\n});\n\n// TODO(burdon): Reconcile col/column (across packages).\n// TODO(burdon): Index to all updates when rows/columns are inserted/deleted.\nexport const Sheet = Schema.Struct({\n name: Schema.optional(Schema.String),\n\n // Sparse map of cells referenced by index.\n cells: Schema.Record({ key: Schema.String, value: CellValue }).pipe(FormInputAnnotation.set(false)),\n\n // Ordered row indices.\n rows: Schema.Array(Schema.String).pipe(FormInputAnnotation.set(false)),\n\n // Ordered column indices.\n columns: Schema.Array(Schema.String).pipe(FormInputAnnotation.set(false)),\n\n // Row metadata referenced by index.\n rowMeta: Schema.Record({ key: Schema.String, value: RowColumnMeta }).pipe(FormInputAnnotation.set(false)),\n\n // Column metadata referenced by index.\n columnMeta: Schema.Record({ key: Schema.String, value: RowColumnMeta }).pipe(FormInputAnnotation.set(false)),\n\n // Cell formatting referenced by indexed range.\n ranges: Schema.Array(Range).pipe(FormInputAnnotation.set(false)),\n}).pipe(\n Type.object({\n typename: 'org.dxos.type.sheet',\n version: '0.1.0',\n }),\n Annotation.IconAnnotation.set({\n icon: 'ph--grid-nine--regular',\n hue: 'indigo',\n }),\n);\n\nexport interface Sheet extends Schema.Schema.Type<typeof Sheet> {}\n\nexport type SheetProps = {\n name?: string;\n cells?: Record<string, CellValue>;\n} & Partial<SheetSize>;\n\nexport const make = ({ name, cells = {}, ...size }: SheetProps = {}) => {\n const sheet = Obj.make(Sheet, { name, cells: {}, rows: [], columns: [], rowMeta: {}, columnMeta: {}, ranges: [] });\n\n // Initialize and set cells within Obj.update to satisfy change context requirements.\n Obj.update(sheet, (sheet) => {\n initialize(sheet, size);\n\n if (cells) {\n Object.entries(cells).forEach(([key, { value }]) => {\n const idx = addressToIndex(sheet, addressFromA1Notation(key));\n if (isFormula(value)) {\n value = mapFormulaRefsToIndices(sheet, value);\n }\n\n sheet.cells[idx] = { value };\n });\n }\n });\n\n return sheet;\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport {\n type CellAddress,\n type CellRange,\n type CompleteCellRange,\n addressFromA1Notation,\n addressToA1Notation,\n isFormula,\n} from '@dxos/compute-hyperformula';\nimport { randomBytes } from '@dxos/crypto';\nimport { type Obj } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\n\nimport { type Sheet } from '../types';\n\nexport const MAX_ROWS = 500;\nexport const MAX_COLS = 676; // 26^2;\n\nexport const DEFAULT_ROWS = 50;\nexport const DEFAULT_COLS = 26;\n\n// TODO(burdon): Factor out from dxos/protocols to new common package.\nexport class ApiError extends Error {}\n\nexport class ReadonlyException extends ApiError {}\n\nexport class RangeException extends ApiError {\n constructor(n: number) {\n super();\n }\n}\n\n/**\n * With a string length of 8, the chance of a collision is 0.02% for a sheet with 10,000 strings.\n */\nexport const createIndex = (length = 8): string => {\n const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n const charactersLength = characters.length;\n const randomBuffer = randomBytes(length);\n return Array.from(randomBuffer, (byte) => characters[byte % charactersLength]).join('');\n};\n\nexport const createIndices = (length: number): string[] => Array.from({ length }).map(() => createIndex());\n\nexport const insertIndices = (indices: string[], i: number, n: number, max: number) => {\n if (i + n > max) {\n throw new RangeException(i + n);\n }\n\n const idx = createIndices(n);\n indices.splice(i, 0, ...idx);\n return idx;\n};\n\nexport const initialize = (\n sheet: Obj.Mutable<Sheet.Sheet>,\n { rows = DEFAULT_ROWS, columns = DEFAULT_COLS }: Partial<Sheet.SheetSize> = {},\n) => {\n if (!sheet.rows.length) {\n insertIndices(sheet.rows, 0, rows, MAX_ROWS);\n }\n if (!sheet.columns.length) {\n insertIndices(sheet.columns, 0, columns, MAX_COLS);\n }\n};\n\n/**\n * E.g., \"A1\" => \"CA2@CB3\".\n */\nexport const addressToIndex = (sheet: Sheet.Sheet, cell: CellAddress): string => {\n return `${sheet.columns[cell.col]}@${sheet.rows[cell.row]}`;\n};\n\n/**\n * E.g., \"CA2@CB3\" => \"A1\".\n */\nexport const addressFromIndex = (sheet: Sheet.Sheet, idx: string): CellAddress => {\n const [column, row] = idx.split('@');\n return {\n col: sheet.columns.indexOf(column),\n row: sheet.rows.indexOf(row),\n };\n};\n\n/**\n * E.g., \"A1:B2\" => \"CA2@CB3:CC4@CD5\".\n */\nexport const rangeToIndex = (sheet: Sheet.Sheet, range: CellRange): string => {\n return [range.from, range.to ?? range.from].map((cell) => addressToIndex(sheet, cell)).join(':');\n};\n\n/**\n * E.g., \"CA2@CB3:CC4@CD5\" => \"A1:B2\".\n */\nexport const rangeFromIndex = (sheet: Sheet.Sheet, idx: string): CompleteCellRange => {\n const [from, to] = idx.split(':').map((index) => addressFromIndex(sheet, index));\n return { from, to };\n};\n\n/**\n * Compares the positions of two cell indexes in a sheet.\n * Sorts primarily by row, then by column if rows are equal.\n */\nexport const compareIndexPositions = (sheet: Sheet.Sheet, indexA: string, indexB: string): number => {\n const { row: rowA, col: columnA } = addressFromIndex(sheet, indexA);\n const { row: rowB, col: columnB } = addressFromIndex(sheet, indexB);\n\n // Sort by row first, then by column.\n if (rowA !== rowB) {\n return rowA - rowB;\n } else {\n return columnA - columnB;\n }\n};\n\n// TODO(burdon): Tests.\n\n/**\n * Map from A1 notation to indices.\n */\nexport const mapFormulaRefsToIndices = (sheet: Sheet.Sheet, formula: string): string => {\n invariant(isFormula(formula));\n return formula.replace(/([a-zA-Z]+)([0-9]+)/g, (match) => {\n return addressToIndex(sheet, addressFromA1Notation(match));\n });\n};\n\n/**\n * Map from indices to A1 notation.\n */\nexport const mapFormulaIndicesToRefs = (sheet: Sheet.Sheet, formula: string): string => {\n invariant(isFormula(formula));\n return formula.replace(/([a-zA-Z0-9]+)@([a-zA-Z0-9]+)/g, (idx) => {\n return addressToA1Notation(addressFromIndex(sheet, idx));\n });\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { type ClassNameValue } from '@dxos/react-ui';\n\nimport { type Sheet } from '../types';\n\nexport const alignKey = 'alignment';\nexport type AlignKey = typeof alignKey;\nexport type AlignValue = 'start' | 'center' | 'end';\n\nexport const commentKey = 'comment';\nexport type CommentKey = typeof commentKey;\nexport type CommentValue = string;\n\nexport const styleKey = 'style';\nexport type StyleKey = typeof styleKey;\nexport type StyleValue = 'highlight' | 'softwrap';\n\n// TODO(burdon): Reconcile with plugin-table.\nexport const cellClassNameForRange = ({ key, value }: Sheet.Sheet['ranges'][number]): ClassNameValue => {\n switch (key) {\n case alignKey:\n switch (value) {\n case 'start':\n return 'text-start';\n case 'center':\n return 'text-center';\n case 'end':\n return 'text-end';\n default:\n return undefined;\n }\n\n case commentKey:\n return 'bg-grid-comment';\n\n case styleKey:\n switch (value) {\n case 'highlight':\n return 'bg-grid-highlight!';\n case 'softwrap':\n return 'whitespace-normal!';\n default:\n return undefined;\n }\n\n default:\n return undefined;\n }\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport * as Sheet from './Sheet';\n\n// TODO(wittjosiah): Factor out. This is `DxGridAxis` from `@dxos/react-ui-grid`.\nconst ActionAxis = Schema.Union(Schema.Literal('row'), Schema.Literal('col'));\n\nexport namespace SheetAction {\n export const RestoreAxis = Schema.Struct({\n axis: ActionAxis,\n axisIndex: Schema.String,\n index: Schema.Number,\n axisMeta: Sheet.RowColumnMeta,\n values: Schema.Array(Schema.Any),\n });\n\n export type RestoreAxis = Schema.Schema.Type<typeof RestoreAxis>;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Capability", "meta", "SheetCapabilities", "ComputeGraphRegistry", "make", "id", "GridInstances", "Schema", "addressFromA1Notation", "isFormula", "Annotation", "Obj", "Type", "FormInputAnnotation", "addressFromA1Notation", "addressToA1Notation", "isFormula", "randomBytes", "invariant", "MAX_ROWS", "DEFAULT_ROWS", "DEFAULT_COLS", "ApiError", "ReadonlyException", "RangeException", "charactersLength", "characters", "length", "randomBuffer", "byte", "createIndices", "Array", "map", "createIndex", "i", "n", "idx", "indices", "insertIndices", "sheet", "col", "columns", "indexOf", "column", "row", "range", "from", "cell", "to", "rowB", "addressFromIndex", "indexB", "rowA", "columnA", "formula", "match", "addressToIndex", "CellValue", "Struct", "value", "Any", "Range", "range", "String", "key", "RowColumnMeta", "size", "optional", "Number", "Sheet", "name", "cells", "Record", "pipe", "FormInputAnnotation", "set", "rows", "Array", "columns", "rowMeta", "columnMeta", "ranges", "Type", "object", "typename", "version", "Annotation", "IconAnnotation", "icon", "hue", "make", "sheet", "Obj", "update", "initialize", "Object", "entries", "forEach", "idx", "addressToIndex", "addressFromA1Notation", "isFormula", "mapFormulaRefsToIndices", "alignKey", "commentKey", "styleKey", "cellClassNameForRange", "key", "value", "undefined", "Schema", "ActionAxis", "Union", "Literal", "SheetAction", "RestoreAxis", "Struct", "axis", "axisIndex", "String", "index", "Number", "axisMeta", "RowColumnMeta", "values", "Array", "Any"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __export = (target, all) => {
|
|
4
|
+
for (var name in all)
|
|
5
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
export {
|
|
9
|
+
__export
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=chunk-HSLMI22Q.mjs.map
|