@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.
Files changed (319) hide show
  1. package/dist/lib/browser/SheetPlugin-W4PFP6WG.mjs +92 -0
  2. package/dist/lib/browser/SheetPlugin-W4PFP6WG.mjs.map +7 -0
  3. package/dist/lib/browser/chunk-5TXOUIGZ.mjs +118 -0
  4. package/dist/lib/browser/chunk-5TXOUIGZ.mjs.map +7 -0
  5. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  6. package/dist/lib/browser/chunk-J5LGTIGS.mjs.map +7 -0
  7. package/dist/lib/browser/{chunk-2SAGT3BB.mjs → chunk-SVGX3MWY.mjs} +34 -169
  8. package/dist/lib/browser/chunk-SVGX3MWY.mjs.map +7 -0
  9. package/dist/lib/browser/drop-axis-ZLERPPPH.mjs +23 -0
  10. package/dist/lib/browser/drop-axis-ZLERPPPH.mjs.map +7 -0
  11. package/dist/lib/browser/index.mjs +24 -135
  12. package/dist/lib/browser/index.mjs.map +4 -4
  13. package/dist/lib/browser/insert-axis-WTRA3HE7.mjs +16 -0
  14. package/dist/lib/browser/insert-axis-WTRA3HE7.mjs.map +7 -0
  15. package/dist/lib/browser/meta.json +1 -1
  16. package/dist/lib/browser/operations/index.mjs +13 -0
  17. package/dist/lib/browser/operations/index.mjs.map +7 -0
  18. package/dist/lib/browser/restore-axis-PYGPW2TB.mjs +16 -0
  19. package/dist/lib/browser/restore-axis-PYGPW2TB.mjs.map +7 -0
  20. package/dist/lib/browser/scroll-to-anchor-6I4DNKBW.mjs +65 -0
  21. package/dist/lib/browser/scroll-to-anchor-6I4DNKBW.mjs.map +7 -0
  22. package/dist/lib/browser/translations.mjs +55 -0
  23. package/dist/lib/browser/translations.mjs.map +7 -0
  24. package/dist/lib/browser/types/index.mjs +2 -3
  25. package/dist/lib/node-esm/SheetPlugin-ZJRSEYHB.mjs +93 -0
  26. package/dist/lib/node-esm/SheetPlugin-ZJRSEYHB.mjs.map +7 -0
  27. package/dist/lib/node-esm/{chunk-IMWGSIDG.mjs → chunk-4A2KAXTF.mjs} +34 -169
  28. package/dist/lib/node-esm/chunk-4A2KAXTF.mjs.map +7 -0
  29. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  30. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
  31. package/dist/lib/node-esm/chunk-MCZFRYOP.mjs +119 -0
  32. package/dist/lib/node-esm/chunk-MCZFRYOP.mjs.map +7 -0
  33. package/dist/lib/node-esm/drop-axis-FV2GXSZP.mjs +24 -0
  34. package/dist/lib/node-esm/drop-axis-FV2GXSZP.mjs.map +7 -0
  35. package/dist/lib/node-esm/index.mjs +24 -135
  36. package/dist/lib/node-esm/index.mjs.map +4 -4
  37. package/dist/lib/node-esm/insert-axis-THXK6DCC.mjs +17 -0
  38. package/dist/lib/node-esm/insert-axis-THXK6DCC.mjs.map +7 -0
  39. package/dist/lib/node-esm/meta.json +1 -1
  40. package/dist/lib/node-esm/operations/index.mjs +14 -0
  41. package/dist/lib/node-esm/operations/index.mjs.map +7 -0
  42. package/dist/lib/node-esm/restore-axis-JIFT3Q7Z.mjs +17 -0
  43. package/dist/lib/node-esm/restore-axis-JIFT3Q7Z.mjs.map +7 -0
  44. package/dist/lib/node-esm/scroll-to-anchor-JRDC5KK2.mjs +66 -0
  45. package/dist/lib/node-esm/scroll-to-anchor-JRDC5KK2.mjs.map +7 -0
  46. package/dist/lib/node-esm/translations.mjs +56 -0
  47. package/dist/lib/node-esm/translations.mjs.map +7 -0
  48. package/dist/lib/node-esm/types/index.mjs +2 -3
  49. package/dist/types/src/SheetPlugin.d.ts +1 -0
  50. package/dist/types/src/SheetPlugin.d.ts.map +1 -1
  51. package/dist/types/src/SheetPlugin.node.d.ts +4 -0
  52. package/dist/types/src/SheetPlugin.node.d.ts.map +1 -0
  53. package/dist/types/src/SheetPlugin.test.d.ts +2 -0
  54. package/dist/types/src/SheetPlugin.test.d.ts.map +1 -0
  55. package/dist/types/src/capabilities/anchor-sort.d.ts +6 -0
  56. package/dist/types/src/capabilities/anchor-sort.d.ts.map +1 -0
  57. package/dist/types/src/capabilities/compute-graph-registry.d.ts +5 -0
  58. package/dist/types/src/capabilities/compute-graph-registry.d.ts.map +1 -0
  59. package/dist/types/src/capabilities/index.d.ts +9 -5
  60. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  61. package/dist/types/src/capabilities/markdown.d.ts +5 -0
  62. package/dist/types/src/capabilities/markdown.d.ts.map +1 -0
  63. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  64. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  65. package/dist/types/src/capabilities/react-surface.d.ts +5 -0
  66. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  67. package/dist/types/src/capabilities/state.d.ts +6 -0
  68. package/dist/types/src/capabilities/state.d.ts.map +1 -0
  69. package/dist/types/src/capabilities/undo-mappings.d.ts +5 -0
  70. package/dist/types/src/capabilities/undo-mappings.d.ts.map +1 -0
  71. package/dist/types/src/components/ComputeGraph/ComputeGraphContextProvider.d.ts +1 -1
  72. package/dist/types/src/components/ComputeGraph/ComputeGraphContextProvider.d.ts.map +1 -1
  73. package/dist/types/src/components/ComputeGraph/compute-graph.stories.d.ts.map +1 -1
  74. package/dist/types/src/components/Sheet/Sheet.d.ts +17 -0
  75. package/dist/types/src/components/Sheet/Sheet.d.ts.map +1 -0
  76. package/dist/types/src/components/Sheet/index.d.ts +2 -0
  77. package/dist/types/src/components/Sheet/index.d.ts.map +1 -0
  78. package/dist/types/src/components/SheetContent/SheetCellEditor.stories.d.ts.map +1 -0
  79. package/dist/types/src/components/SheetContent/SheetContent.d.ts +6 -0
  80. package/dist/types/src/components/SheetContent/SheetContent.d.ts.map +1 -0
  81. package/dist/types/src/components/SheetContent/SheetContent.stories.d.ts +93 -0
  82. package/dist/types/src/components/SheetContent/SheetContent.stories.d.ts.map +1 -0
  83. package/dist/types/src/components/SheetContent/index.d.ts +2 -0
  84. package/dist/types/src/components/SheetContent/index.d.ts.map +1 -0
  85. package/dist/types/src/components/{GridSheet → SheetContent}/util.d.ts +1 -1
  86. package/dist/types/src/components/SheetContent/util.d.ts.map +1 -0
  87. package/dist/types/src/components/{SheetContext/SheetContext.d.ts → SheetRoot/SheetRoot.d.ts} +8 -6
  88. package/dist/types/src/components/SheetRoot/SheetRoot.d.ts.map +1 -0
  89. package/dist/types/src/components/SheetRoot/index.d.ts +2 -0
  90. package/dist/types/src/components/SheetRoot/index.d.ts.map +1 -0
  91. package/dist/types/src/components/SheetStatusbar/SheetStatusbar.d.ts +6 -0
  92. package/dist/types/src/components/SheetStatusbar/SheetStatusbar.d.ts.map +1 -0
  93. package/dist/types/src/components/SheetStatusbar/index.d.ts +2 -0
  94. package/dist/types/src/components/SheetStatusbar/index.d.ts.map +1 -0
  95. package/dist/types/src/components/SheetToolbar/SheetToolbar.d.ts +5 -5
  96. package/dist/types/src/components/SheetToolbar/SheetToolbar.d.ts.map +1 -1
  97. package/dist/types/src/components/SheetToolbar/SheetToolbar.stories.d.ts +72 -68
  98. package/dist/types/src/components/SheetToolbar/SheetToolbar.stories.d.ts.map +1 -1
  99. package/dist/types/src/components/SheetToolbar/align.d.ts +2 -2
  100. package/dist/types/src/components/SheetToolbar/align.d.ts.map +1 -1
  101. package/dist/types/src/components/SheetToolbar/style.d.ts +2 -2
  102. package/dist/types/src/components/SheetToolbar/style.d.ts.map +1 -1
  103. package/dist/types/src/components/SheetToolbar/useToolbarState.d.ts.map +1 -1
  104. package/dist/types/src/components/index.d.ts +1 -4
  105. package/dist/types/src/components/index.d.ts.map +1 -1
  106. package/dist/types/src/{components → containers}/RangeList/RangeList.d.ts +1 -1
  107. package/dist/types/src/containers/RangeList/RangeList.d.ts.map +1 -0
  108. package/dist/types/src/containers/RangeList/index.d.ts +2 -0
  109. package/dist/types/src/containers/RangeList/index.d.ts.map +1 -0
  110. package/dist/types/src/containers/SheetContainer/SheetContainer.d.ts +12 -0
  111. package/dist/types/src/containers/SheetContainer/SheetContainer.d.ts.map +1 -0
  112. package/dist/types/src/containers/SheetContainer/SheetContainer.stories.d.ts +92 -0
  113. package/dist/types/src/containers/SheetContainer/SheetContainer.stories.d.ts.map +1 -0
  114. package/dist/types/src/containers/SheetContainer/index.d.ts +2 -0
  115. package/dist/types/src/containers/SheetContainer/index.d.ts.map +1 -0
  116. package/dist/types/src/containers/index.d.ts +4 -0
  117. package/dist/types/src/containers/index.d.ts.map +1 -0
  118. package/dist/types/src/extensions/compute.d.ts +1 -1
  119. package/dist/types/src/extensions/compute.d.ts.map +1 -1
  120. package/dist/types/src/extensions/compute.stories.d.ts.map +1 -1
  121. package/dist/types/src/extensions/editor/sheet-extension.d.ts +1 -1
  122. package/dist/types/src/extensions/editor/sheet-extension.d.ts.map +1 -1
  123. package/dist/types/src/index.d.ts +3 -2
  124. package/dist/types/src/index.d.ts.map +1 -1
  125. package/dist/types/src/integrations/thread-ranges.d.ts +1 -3
  126. package/dist/types/src/integrations/thread-ranges.d.ts.map +1 -1
  127. package/dist/types/src/model/sheet-model.d.ts +2 -2
  128. package/dist/types/src/model/sheet-model.d.ts.map +1 -1
  129. package/dist/types/src/model/testing.d.ts +1 -1
  130. package/dist/types/src/model/testing.d.ts.map +1 -1
  131. package/dist/types/src/model/useSheetModel.d.ts +2 -2
  132. package/dist/types/src/model/useSheetModel.d.ts.map +1 -1
  133. package/dist/types/src/operations/definitions.d.ts +45 -0
  134. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  135. package/dist/types/src/operations/drop-axis.d.ts +5 -0
  136. package/dist/types/src/operations/drop-axis.d.ts.map +1 -0
  137. package/dist/types/src/operations/index.d.ts +4 -0
  138. package/dist/types/src/operations/index.d.ts.map +1 -0
  139. package/dist/types/src/operations/insert-axis.d.ts +5 -0
  140. package/dist/types/src/operations/insert-axis.d.ts.map +1 -0
  141. package/dist/types/src/operations/restore-axis.d.ts +5 -0
  142. package/dist/types/src/operations/restore-axis.d.ts.map +1 -0
  143. package/dist/types/src/operations/scroll-to-anchor.d.ts +5 -0
  144. package/dist/types/src/operations/scroll-to-anchor.d.ts.map +1 -0
  145. package/dist/types/src/playwright/playwright.config.d.ts.map +1 -1
  146. package/dist/types/src/playwright/sheet-manager.d.ts.map +1 -1
  147. package/dist/types/src/serializer.d.ts +1 -1
  148. package/dist/types/src/serializer.d.ts.map +1 -1
  149. package/dist/types/src/testing/data.d.ts +1 -1
  150. package/dist/types/src/testing/data.d.ts.map +1 -1
  151. package/dist/types/src/testing/testing.d.ts +13 -13
  152. package/dist/types/src/testing/testing.d.ts.map +1 -1
  153. package/dist/types/src/translations.d.ts +74 -39
  154. package/dist/types/src/translations.d.ts.map +1 -1
  155. package/dist/types/src/types/Sheet.d.ts +21 -21
  156. package/dist/types/src/types/Sheet.d.ts.map +1 -1
  157. package/dist/types/src/types/capabilities.d.ts +13 -1
  158. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  159. package/dist/types/src/types/sheet-range-types.d.ts +1 -1
  160. package/dist/types/src/types/sheet-range-types.d.ts.map +1 -1
  161. package/dist/types/src/types/types.d.ts +0 -92
  162. package/dist/types/src/types/types.d.ts.map +1 -1
  163. package/dist/types/src/types/util.d.ts +3 -2
  164. package/dist/types/src/types/util.d.ts.map +1 -1
  165. package/dist/types/tsconfig.tsbuildinfo +1 -1
  166. package/package.json +89 -70
  167. package/src/SheetPlugin.node.ts +36 -0
  168. package/src/SheetPlugin.test.ts +30 -0
  169. package/src/SheetPlugin.tsx +51 -31
  170. package/src/capabilities/{anchor-sort/anchor-sort.ts → anchor-sort.ts} +4 -3
  171. package/src/capabilities/{compute-graph-registry/compute-graph-registry.ts → compute-graph-registry.ts} +5 -3
  172. package/src/capabilities/index.ts +13 -5
  173. package/src/capabilities/{markdown/markdown.ts → markdown.ts} +4 -3
  174. package/src/capabilities/operation-handler.ts +16 -0
  175. package/src/capabilities/react-surface.tsx +49 -0
  176. package/src/capabilities/state.ts +29 -0
  177. package/src/capabilities/undo-mappings.ts +30 -0
  178. package/src/components/ComputeGraph/ComputeGraphContextProvider.tsx +1 -1
  179. package/src/components/ComputeGraph/compute-graph.stories.tsx +19 -16
  180. package/src/components/Sheet/Sheet.tsx +20 -0
  181. package/src/components/Sheet/index.ts +5 -0
  182. package/src/components/{GridSheet → SheetContent}/SheetCellEditor.stories.tsx +10 -9
  183. package/src/components/{GridSheet/GridSheet.stories.tsx → SheetContent/SheetContent.stories.tsx} +20 -19
  184. package/src/components/{GridSheet/GridSheet.tsx → SheetContent/SheetContent.tsx} +56 -33
  185. package/src/components/{RangeList → SheetContent}/index.ts +1 -1
  186. package/src/components/{GridSheet → SheetContent}/util.ts +6 -5
  187. package/src/components/{SheetContext/SheetContext.tsx → SheetRoot/SheetRoot.tsx} +52 -39
  188. package/src/components/{GridSheet → SheetRoot}/index.ts +1 -1
  189. package/src/components/{FunctionEditor/FunctionEditor.tsx → SheetStatusbar/SheetStatusbar.tsx} +20 -8
  190. package/src/components/{FunctionEditor → SheetStatusbar}/index.ts +1 -1
  191. package/src/components/SheetToolbar/SheetToolbar.stories.tsx +5 -5
  192. package/src/components/SheetToolbar/SheetToolbar.tsx +19 -23
  193. package/src/components/SheetToolbar/align.ts +15 -15
  194. package/src/components/SheetToolbar/style.ts +12 -12
  195. package/src/components/index.ts +1 -7
  196. package/src/{components → containers}/RangeList/RangeList.tsx +17 -16
  197. package/src/containers/RangeList/index.ts +5 -0
  198. package/src/{components → containers}/SheetContainer/SheetContainer.stories.tsx +42 -46
  199. package/src/containers/SheetContainer/SheetContainer.tsx +57 -0
  200. package/src/containers/SheetContainer/index.ts +5 -0
  201. package/src/containers/index.ts +8 -0
  202. package/src/extensions/compute.stories.tsx +17 -16
  203. package/src/extensions/compute.ts +1 -1
  204. package/src/extensions/editor/sheet-extension.test.ts +1 -1
  205. package/src/extensions/editor/sheet-extension.ts +12 -12
  206. package/src/index.ts +8 -2
  207. package/src/integrations/thread-ranges.ts +8 -41
  208. package/src/meta.ts +1 -1
  209. package/src/model/sheet-model.test.ts +5 -5
  210. package/src/model/sheet-model.ts +39 -37
  211. package/src/model/testing.ts +2 -2
  212. package/src/model/useSheetModel.ts +3 -2
  213. package/src/operations/definitions.ts +73 -0
  214. package/src/operations/drop-axis.ts +26 -0
  215. package/src/operations/index.ts +14 -0
  216. package/src/operations/insert-axis.ts +19 -0
  217. package/src/operations/restore-axis.ts +19 -0
  218. package/src/operations/scroll-to-anchor.ts +31 -0
  219. package/src/playwright/playwright.config.ts +1 -1
  220. package/src/playwright/sheet.spec.ts +3 -3
  221. package/src/sanity.test.ts +6 -3
  222. package/src/serializer.ts +1 -1
  223. package/src/testing/data.ts +1 -1
  224. package/src/testing/testing.tsx +4 -4
  225. package/src/translations.ts +41 -36
  226. package/src/types/Sheet.ts +17 -20
  227. package/src/types/capabilities.ts +15 -3
  228. package/src/types/sheet-range-types.ts +3 -3
  229. package/src/types/types.ts +0 -80
  230. package/src/types/util.ts +3 -2
  231. package/dist/lib/browser/SheetContainer-ESCXPI7Y.mjs +0 -397
  232. package/dist/lib/browser/SheetContainer-ESCXPI7Y.mjs.map +0 -7
  233. package/dist/lib/browser/anchor-sort-JBRMW6OY.mjs +0 -23
  234. package/dist/lib/browser/anchor-sort-JBRMW6OY.mjs.map +0 -7
  235. package/dist/lib/browser/chunk-2SAGT3BB.mjs.map +0 -7
  236. package/dist/lib/browser/chunk-IFLWVS2V.mjs +0 -234
  237. package/dist/lib/browser/chunk-IFLWVS2V.mjs.map +0 -7
  238. package/dist/lib/browser/chunk-W6N44ONZ.mjs +0 -1470
  239. package/dist/lib/browser/chunk-W6N44ONZ.mjs.map +0 -7
  240. package/dist/lib/browser/compute-graph-registry-DL2PX7TF.mjs +0 -21
  241. package/dist/lib/browser/compute-graph-registry-DL2PX7TF.mjs.map +0 -7
  242. package/dist/lib/browser/markdown-BC4KBDUO.mjs +0 -29
  243. package/dist/lib/browser/markdown-BC4KBDUO.mjs.map +0 -7
  244. package/dist/lib/browser/operation-resolver-FJ4UWZUM.mjs +0 -79
  245. package/dist/lib/browser/operation-resolver-FJ4UWZUM.mjs.map +0 -7
  246. package/dist/lib/browser/react-surface-5BXM6TJ3.mjs +0 -51
  247. package/dist/lib/browser/react-surface-5BXM6TJ3.mjs.map +0 -7
  248. package/dist/lib/node-esm/SheetContainer-YVIDJKP4.mjs +0 -398
  249. package/dist/lib/node-esm/SheetContainer-YVIDJKP4.mjs.map +0 -7
  250. package/dist/lib/node-esm/anchor-sort-C3XFPI6S.mjs +0 -24
  251. package/dist/lib/node-esm/anchor-sort-C3XFPI6S.mjs.map +0 -7
  252. package/dist/lib/node-esm/chunk-IMWGSIDG.mjs.map +0 -7
  253. package/dist/lib/node-esm/chunk-PPOYR7DK.mjs +0 -236
  254. package/dist/lib/node-esm/chunk-PPOYR7DK.mjs.map +0 -7
  255. package/dist/lib/node-esm/chunk-S7RYX7DG.mjs +0 -1471
  256. package/dist/lib/node-esm/chunk-S7RYX7DG.mjs.map +0 -7
  257. package/dist/lib/node-esm/compute-graph-registry-VXH55GDI.mjs +0 -22
  258. package/dist/lib/node-esm/compute-graph-registry-VXH55GDI.mjs.map +0 -7
  259. package/dist/lib/node-esm/markdown-6DGZCJRM.mjs +0 -30
  260. package/dist/lib/node-esm/markdown-6DGZCJRM.mjs.map +0 -7
  261. package/dist/lib/node-esm/operation-resolver-OGXEUWHA.mjs +0 -80
  262. package/dist/lib/node-esm/operation-resolver-OGXEUWHA.mjs.map +0 -7
  263. package/dist/lib/node-esm/react-surface-RLHC6B77.mjs +0 -52
  264. package/dist/lib/node-esm/react-surface-RLHC6B77.mjs.map +0 -7
  265. package/dist/types/src/capabilities/anchor-sort/anchor-sort.d.ts +0 -5
  266. package/dist/types/src/capabilities/anchor-sort/anchor-sort.d.ts.map +0 -1
  267. package/dist/types/src/capabilities/anchor-sort/index.d.ts +0 -3
  268. package/dist/types/src/capabilities/anchor-sort/index.d.ts.map +0 -1
  269. package/dist/types/src/capabilities/compute-graph-registry/compute-graph-registry.d.ts +0 -5
  270. package/dist/types/src/capabilities/compute-graph-registry/compute-graph-registry.d.ts.map +0 -1
  271. package/dist/types/src/capabilities/compute-graph-registry/index.d.ts +0 -3
  272. package/dist/types/src/capabilities/compute-graph-registry/index.d.ts.map +0 -1
  273. package/dist/types/src/capabilities/markdown/index.d.ts +0 -3
  274. package/dist/types/src/capabilities/markdown/index.d.ts.map +0 -1
  275. package/dist/types/src/capabilities/markdown/markdown.d.ts +0 -5
  276. package/dist/types/src/capabilities/markdown/markdown.d.ts.map +0 -1
  277. package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
  278. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
  279. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
  280. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
  281. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  282. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  283. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -5
  284. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  285. package/dist/types/src/components/FunctionEditor/FunctionEditor.d.ts +0 -3
  286. package/dist/types/src/components/FunctionEditor/FunctionEditor.d.ts.map +0 -1
  287. package/dist/types/src/components/FunctionEditor/index.d.ts +0 -2
  288. package/dist/types/src/components/FunctionEditor/index.d.ts.map +0 -1
  289. package/dist/types/src/components/GridSheet/GridSheet.d.ts +0 -3
  290. package/dist/types/src/components/GridSheet/GridSheet.d.ts.map +0 -1
  291. package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts +0 -55
  292. package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts.map +0 -1
  293. package/dist/types/src/components/GridSheet/SheetCellEditor.stories.d.ts.map +0 -1
  294. package/dist/types/src/components/GridSheet/index.d.ts +0 -2
  295. package/dist/types/src/components/GridSheet/index.d.ts.map +0 -1
  296. package/dist/types/src/components/GridSheet/util.d.ts.map +0 -1
  297. package/dist/types/src/components/RangeList/RangeList.d.ts.map +0 -1
  298. package/dist/types/src/components/RangeList/index.d.ts +0 -2
  299. package/dist/types/src/components/RangeList/index.d.ts.map +0 -1
  300. package/dist/types/src/components/SheetContainer/SheetContainer.d.ts +0 -10
  301. package/dist/types/src/components/SheetContainer/SheetContainer.d.ts.map +0 -1
  302. package/dist/types/src/components/SheetContainer/SheetContainer.stories.d.ts +0 -57
  303. package/dist/types/src/components/SheetContainer/SheetContainer.stories.d.ts.map +0 -1
  304. package/dist/types/src/components/SheetContainer/index.d.ts +0 -3
  305. package/dist/types/src/components/SheetContainer/index.d.ts.map +0 -1
  306. package/dist/types/src/components/SheetContext/SheetContext.d.ts.map +0 -1
  307. package/dist/types/src/components/SheetContext/index.d.ts +0 -2
  308. package/dist/types/src/components/SheetContext/index.d.ts.map +0 -1
  309. package/src/capabilities/anchor-sort/index.ts +0 -7
  310. package/src/capabilities/compute-graph-registry/index.ts +0 -7
  311. package/src/capabilities/markdown/index.ts +0 -7
  312. package/src/capabilities/operation-resolver/index.ts +0 -7
  313. package/src/capabilities/operation-resolver/operation-resolver.ts +0 -77
  314. package/src/capabilities/react-surface/index.ts +0 -7
  315. package/src/capabilities/react-surface/react-surface.tsx +0 -43
  316. package/src/components/SheetContainer/SheetContainer.tsx +0 -48
  317. package/src/components/SheetContainer/index.ts +0 -7
  318. package/src/components/SheetContext/index.ts +0 -5
  319. /package/dist/types/src/components/{GridSheet → SheetContent}/SheetCellEditor.stories.d.ts +0 -0
@@ -0,0 +1,92 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/SheetPlugin.tsx
4
+ import * as Effect from "effect/Effect";
5
+ import * as Option from "effect/Option";
6
+ import { ActivationEvent, Plugin } from "@dxos/app-framework";
7
+ import { AppActivationEvents, AppPlugin } from "@dxos/app-toolkit";
8
+ import { Operation } from "@dxos/compute";
9
+ import { Annotation } from "@dxos/echo";
10
+ import { AutomationEvents } from "@dxos/plugin-automation/types";
11
+ import { ClientEvents } from "@dxos/plugin-client/types";
12
+ import { MarkdownEvents } from "@dxos/plugin-markdown/types";
13
+ import { SpaceOperation } from "@dxos/plugin-space/operations";
14
+ import { AnchorSort, ComputeGraphRegistry, Markdown, OperationHandler, UndoMappings, ReactSurface, SheetState } from "#capabilities";
15
+ import { meta } from "#meta";
16
+ import { SheetOperation } from "#operations";
17
+ import { translations } from "#translations";
18
+ import { Sheet as Sheet2 } from "#types";
19
+
20
+ // src/serializer.ts
21
+ import { Obj } from "@dxos/echo";
22
+ import { getObjectCore } from "@dxos/echo-db";
23
+ import { Sheet } from "#types";
24
+ var serializer = {
25
+ serialize: async ({ object }) => {
26
+ return JSON.stringify(object, null, 2);
27
+ },
28
+ deserialize: async ({ content, newId }) => {
29
+ const { id, ...parsed } = JSON.parse(content);
30
+ const sheet = Obj.make(Sheet.Sheet, parsed);
31
+ if (!newId) {
32
+ const core = getObjectCore(sheet);
33
+ core.id = id;
34
+ }
35
+ return sheet;
36
+ }
37
+ };
38
+
39
+ // src/SheetPlugin.tsx
40
+ var SheetPlugin = Plugin.define(meta).pipe(AppPlugin.addMetadataModule({
41
+ metadata: {
42
+ id: Sheet2.Sheet.typename,
43
+ metadata: {
44
+ label: (object) => object.name,
45
+ icon: Annotation.IconAnnotation.get(Sheet2.Sheet).pipe(Option.getOrThrow).icon,
46
+ iconHue: Annotation.IconAnnotation.get(Sheet2.Sheet).pipe(Option.getOrThrow).hue ?? "white",
47
+ serializer,
48
+ comments: "anchored",
49
+ createObject: (props, options) => Effect.gen(function* () {
50
+ const object = Sheet2.make(props);
51
+ return yield* Operation.invoke(SpaceOperation.AddObject, {
52
+ object,
53
+ target: options.target,
54
+ hidden: true,
55
+ targetNodeId: options.targetNodeId
56
+ });
57
+ }),
58
+ scrollToAnchor: SheetOperation.ScrollToAnchor
59
+ }
60
+ }
61
+ }), AppPlugin.addOperationHandlerModule({
62
+ activate: OperationHandler
63
+ }), AppPlugin.addUndoMappingsModule({
64
+ activate: UndoMappings
65
+ }), AppPlugin.addSchemaModule({
66
+ schema: [
67
+ Sheet2.Sheet
68
+ ]
69
+ }), AppPlugin.addSurfaceModule({
70
+ activate: ReactSurface
71
+ }), AppPlugin.addTranslationsModule({
72
+ translations
73
+ }), Plugin.addModule({
74
+ activatesOn: AppActivationEvents.SetupSettings,
75
+ activate: SheetState
76
+ }), Plugin.addModule({
77
+ activatesOn: ActivationEvent.allOf(ClientEvents.ClientReady, AutomationEvents.ComputeRuntimeReady),
78
+ activate: ComputeGraphRegistry
79
+ }), Plugin.addModule({
80
+ activatesOn: MarkdownEvents.SetupExtensions,
81
+ activate: Markdown
82
+ }), Plugin.addModule({
83
+ // TODO(wittjosiah): More relevant event?
84
+ activatesOn: AppActivationEvents.AppGraphReady,
85
+ activate: AnchorSort
86
+ }), Plugin.make);
87
+ var SheetPlugin_default = SheetPlugin;
88
+ export {
89
+ SheetPlugin,
90
+ SheetPlugin_default as default
91
+ };
92
+ //# sourceMappingURL=SheetPlugin-W4PFP6WG.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
+ }
@@ -0,0 +1,118 @@
1
+ import {
2
+ __export
3
+ } from "./chunk-J5LGTIGS.mjs";
4
+
5
+ // src/operations/definitions.ts
6
+ var definitions_exports = {};
7
+ __export(definitions_exports, {
8
+ DropAxis: () => DropAxis,
9
+ DropAxisOutput: () => DropAxisOutput,
10
+ InsertAxis: () => InsertAxis,
11
+ RestoreAxis: () => RestoreAxis,
12
+ ScrollToAnchor: () => ScrollToAnchor
13
+ });
14
+ import * as Schema from "effect/Schema";
15
+ import { Capability } from "@dxos/app-framework";
16
+ import { Operation } from "@dxos/compute";
17
+ import { meta } from "#meta";
18
+ var SHEET_OPERATION = `${meta.id}.operation`;
19
+ var Axis = Schema.Union(Schema.Literal("row"), Schema.Literal("col"));
20
+ var InsertAxis = Operation.make({
21
+ meta: {
22
+ key: `${SHEET_OPERATION}.axis-insert`,
23
+ name: "Insert Axis"
24
+ },
25
+ input: Schema.Struct({
26
+ model: Schema.Any,
27
+ axis: Axis,
28
+ index: Schema.Number,
29
+ count: Schema.optional(Schema.Number)
30
+ }),
31
+ output: Schema.Void
32
+ });
33
+ var DropAxisOutput = Schema.Struct({
34
+ axis: Axis.annotations({
35
+ description: "The axis type (row or col)."
36
+ }),
37
+ axisIndex: Schema.String.annotations({
38
+ description: "The dropped axis index."
39
+ }),
40
+ index: Schema.Number.annotations({
41
+ description: "The position the axis was at."
42
+ }),
43
+ axisMeta: Schema.Any.annotations({
44
+ description: "The row/column metadata."
45
+ }),
46
+ values: Schema.Array(Schema.Any).annotations({
47
+ description: "The cell values that were dropped."
48
+ })
49
+ });
50
+ var DropAxis = Operation.make({
51
+ meta: {
52
+ key: `${SHEET_OPERATION}.axis-drop`,
53
+ name: "Drop Axis"
54
+ },
55
+ input: Schema.Struct({
56
+ model: Schema.Any,
57
+ axis: Axis,
58
+ axisIndex: Schema.String
59
+ }),
60
+ output: DropAxisOutput
61
+ });
62
+ var ScrollToAnchor = Operation.make({
63
+ meta: {
64
+ key: `${SHEET_OPERATION}.scroll-to-anchor`,
65
+ name: "Scroll To Anchor"
66
+ },
67
+ services: [
68
+ Capability.Service
69
+ ],
70
+ input: Schema.Struct({
71
+ subject: Schema.String.annotations({
72
+ description: "Attendable ID of the sheet."
73
+ }),
74
+ cursor: Schema.String.annotations({
75
+ description: "Cell range coordinates."
76
+ }),
77
+ ref: Schema.optional(Schema.Any.annotations({
78
+ description: "Active refs for highlighting."
79
+ }))
80
+ }),
81
+ output: Schema.Void
82
+ });
83
+ var RestoreAxis = Operation.make({
84
+ meta: {
85
+ key: `${SHEET_OPERATION}.restore-axis`,
86
+ name: "Restore Axis"
87
+ },
88
+ input: Schema.Struct({
89
+ model: Schema.Any.annotations({
90
+ description: "The sheet model."
91
+ }),
92
+ axis: Axis.annotations({
93
+ description: "The axis type (row or col)."
94
+ }),
95
+ axisIndex: Schema.String.annotations({
96
+ description: "The axis index to restore."
97
+ }),
98
+ index: Schema.Number.annotations({
99
+ description: "The position to restore at."
100
+ }),
101
+ axisMeta: Schema.Any.annotations({
102
+ description: "The row/column metadata."
103
+ }),
104
+ values: Schema.Array(Schema.Any).annotations({
105
+ description: "The cell values to restore."
106
+ })
107
+ }),
108
+ output: Schema.Void
109
+ });
110
+
111
+ export {
112
+ InsertAxis,
113
+ DropAxis,
114
+ ScrollToAnchor,
115
+ RestoreAxis,
116
+ definitions_exports
117
+ };
118
+ //# sourceMappingURL=chunk-5TXOUIGZ.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/definitions.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { Capability } from '@dxos/app-framework';\nimport { Operation } from '@dxos/compute';\n\nimport { meta } from '#meta';\n\nconst SHEET_OPERATION = `${meta.id}.operation`;\n\n// TODO(wittjosiah): Factor out. This is `DxGridAxis` from `@dxos/react-ui-grid`.\nconst Axis = Schema.Union(Schema.Literal('row'), Schema.Literal('col'));\n\nexport const InsertAxis = Operation.make({\n meta: { key: `${SHEET_OPERATION}.axis-insert`, name: 'Insert Axis' },\n input: Schema.Struct({\n model: Schema.Any,\n axis: Axis,\n index: Schema.Number,\n count: Schema.optional(Schema.Number),\n }),\n output: Schema.Void,\n});\n\nexport const DropAxisOutput = Schema.Struct({\n axis: Axis.annotations({ description: 'The axis type (row or col).' }),\n axisIndex: Schema.String.annotations({ description: 'The dropped axis index.' }),\n index: Schema.Number.annotations({ description: 'The position the axis was at.' }),\n axisMeta: Schema.Any.annotations({ description: 'The row/column metadata.' }),\n values: Schema.Array(Schema.Any).annotations({ description: 'The cell values that were dropped.' }),\n});\n\nexport type DropAxisOutput = Schema.Schema.Type<typeof DropAxisOutput>;\n\nexport const DropAxis = Operation.make({\n meta: { key: `${SHEET_OPERATION}.axis-drop`, name: 'Drop Axis' },\n input: Schema.Struct({\n model: Schema.Any,\n axis: Axis,\n axisIndex: Schema.String,\n }),\n output: DropAxisOutput,\n});\n\nexport const ScrollToAnchor = Operation.make({\n meta: { key: `${SHEET_OPERATION}.scroll-to-anchor`, name: 'Scroll To Anchor' },\n services: [Capability.Service],\n input: Schema.Struct({\n subject: Schema.String.annotations({ description: 'Attendable ID of the sheet.' }),\n cursor: Schema.String.annotations({ description: 'Cell range coordinates.' }),\n ref: Schema.optional(Schema.Any.annotations({ description: 'Active refs for highlighting.' })),\n }),\n output: Schema.Void,\n});\n\n/**\n * Restore a dropped axis (inverse of DropAxis).\n */\nexport const RestoreAxis = Operation.make({\n meta: { key: `${SHEET_OPERATION}.restore-axis`, name: 'Restore Axis' },\n input: Schema.Struct({\n model: Schema.Any.annotations({ description: 'The sheet model.' }),\n axis: Axis.annotations({ description: 'The axis type (row or col).' }),\n axisIndex: Schema.String.annotations({ description: 'The axis index to restore.' }),\n index: Schema.Number.annotations({ description: 'The position to restore at.' }),\n axisMeta: Schema.Any.annotations({ description: 'The row/column metadata.' }),\n values: Schema.Array(Schema.Any).annotations({ description: 'The cell values to restore.' }),\n }),\n output: Schema.Void,\n});\n"],
5
+ "mappings": ";;;;;AAAA;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,iBAAiB;AAE1B,SAASC,YAAY;AAErB,IAAMC,kBAAkB,GAAGD,KAAKE,EAAE;AAGlC,IAAMC,OAAcC,aAAaC,eAAQ,KAAA,GAAeA,eAAQ,KAAA,CAAA;AAEzD,IAAMC,aAAaP,UAAUQ,KAAK;EACvCP,MAAM;IAAEQ,KAAK,GAAGP,eAAAA;IAA+BQ,MAAM;EAAc;EACnEC,OAAcC,cAAO;IACnBC,OAAcC;IACdC,MAAMX;IACNY,OAAcC;IACdC,OAAcC,gBAAgBF,aAAM;EACtC,CAAA;EACAG,QAAeC;AACjB,CAAA;AAEO,IAAMC,iBAAwBV,cAAO;EAC1CG,MAAMX,KAAKmB,YAAY;IAAEC,aAAa;EAA8B,CAAA;EACpEC,WAAkBC,cAAOH,YAAY;IAAEC,aAAa;EAA0B,CAAA;EAC9ER,OAAcC,cAAOM,YAAY;IAAEC,aAAa;EAAgC,CAAA;EAChFG,UAAiBb,WAAIS,YAAY;IAAEC,aAAa;EAA2B,CAAA;EAC3EI,QAAeC,aAAaf,UAAG,EAAES,YAAY;IAAEC,aAAa;EAAqC,CAAA;AACnG,CAAA;AAIO,IAAMM,WAAW9B,UAAUQ,KAAK;EACrCP,MAAM;IAAEQ,KAAK,GAAGP,eAAAA;IAA6BQ,MAAM;EAAY;EAC/DC,OAAcC,cAAO;IACnBC,OAAcC;IACdC,MAAMX;IACNqB,WAAkBC;EACpB,CAAA;EACAN,QAAQE;AACV,CAAA;AAEO,IAAMS,iBAAiB/B,UAAUQ,KAAK;EAC3CP,MAAM;IAAEQ,KAAK,GAAGP,eAAAA;IAAoCQ,MAAM;EAAmB;EAC7EsB,UAAU;IAACjC,WAAWkC;;EACtBtB,OAAcC,cAAO;IACnBsB,SAAgBR,cAAOH,YAAY;MAAEC,aAAa;IAA8B,CAAA;IAChFW,QAAeT,cAAOH,YAAY;MAAEC,aAAa;IAA0B,CAAA;IAC3EY,KAAYjB,gBAAgBL,WAAIS,YAAY;MAAEC,aAAa;IAAgC,CAAA,CAAA;EAC7F,CAAA;EACAJ,QAAeC;AACjB,CAAA;AAKO,IAAMgB,cAAcrC,UAAUQ,KAAK;EACxCP,MAAM;IAAEQ,KAAK,GAAGP,eAAAA;IAAgCQ,MAAM;EAAe;EACrEC,OAAcC,cAAO;IACnBC,OAAcC,WAAIS,YAAY;MAAEC,aAAa;IAAmB,CAAA;IAChET,MAAMX,KAAKmB,YAAY;MAAEC,aAAa;IAA8B,CAAA;IACpEC,WAAkBC,cAAOH,YAAY;MAAEC,aAAa;IAA6B,CAAA;IACjFR,OAAcC,cAAOM,YAAY;MAAEC,aAAa;IAA8B,CAAA;IAC9EG,UAAiBb,WAAIS,YAAY;MAAEC,aAAa;IAA2B,CAAA;IAC3EI,QAAeC,aAAaf,UAAG,EAAES,YAAY;MAAEC,aAAa;IAA8B,CAAA;EAC5F,CAAA;EACAJ,QAAeC;AACjB,CAAA;",
6
+ "names": ["Schema", "Capability", "Operation", "meta", "SHEET_OPERATION", "id", "Axis", "Union", "Literal", "InsertAxis", "make", "key", "name", "input", "Struct", "model", "Any", "axis", "index", "Number", "count", "optional", "output", "Void", "DropAxisOutput", "annotations", "description", "axisIndex", "String", "axisMeta", "values", "Array", "DropAxis", "ScrollToAnchor", "services", "Service", "subject", "cursor", "ref", "RestoreAxis"]
7
+ }
@@ -0,0 +1,10 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __export = (target, all) => {
3
+ for (var name in all)
4
+ __defProp(target, name, { get: all[name], enumerable: true });
5
+ };
6
+
7
+ export {
8
+ __export
9
+ };
10
+ //# sourceMappingURL=chunk-J5LGTIGS.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -1,32 +1,13 @@
1
- var __defProp = Object.defineProperty;
2
- var __export = (target, all) => {
3
- for (var name in all)
4
- __defProp(target, name, { get: all[name], enumerable: true });
5
- };
1
+ import {
2
+ __export
3
+ } from "./chunk-J5LGTIGS.mjs";
6
4
 
7
5
  // src/types/capabilities.ts
8
6
  import { Capability } from "@dxos/app-framework";
9
-
10
- // src/meta.ts
11
- import { trim } from "@dxos/util";
12
- var meta = {
13
- id: "dxos.org/plugin/sheet",
14
- name: "Sheet",
15
- description: trim`
16
- Full-featured spreadsheet application with over 400 built-in formulas for calculations and data analysis.
17
- Create custom JavaScript functions and integrate with AI agents for advanced automation.
18
- `,
19
- icon: "ph--grid-nine--regular",
20
- iconHue: "indigo",
21
- source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-sheet",
22
- screenshots: [
23
- "https://dxos.network/plugin-details-sheet-dark.png"
24
- ]
25
- };
26
-
27
- // src/types/capabilities.ts
7
+ import { meta } from "#meta";
28
8
  (function(SheetCapabilities2) {
29
- SheetCapabilities2.ComputeGraphRegistry = Capability.make(`${meta.id}/capability/compute-graph-registry`);
9
+ SheetCapabilities2.ComputeGraphRegistry = Capability.make(`${meta.id}.capability.compute-graph-registry`);
10
+ SheetCapabilities2.GridInstances = Capability.make(`${meta.id}.capability.grid-instances`);
30
11
  })(SheetCapabilities || (SheetCapabilities = {}));
31
12
  var SheetCapabilities;
32
13
 
@@ -40,12 +21,12 @@ __export(Sheet_exports, {
40
21
  make: () => make
41
22
  });
42
23
  import * as Schema from "effect/Schema";
43
- import { addressFromA1Notation as addressFromA1Notation2, isFormula as isFormula2 } from "@dxos/compute";
44
- import { Obj, Type } from "@dxos/echo";
24
+ import { addressFromA1Notation as addressFromA1Notation2, isFormula as isFormula2 } from "@dxos/compute-hyperformula";
25
+ import { Annotation, Obj, Type } from "@dxos/echo";
45
26
  import { FormInputAnnotation } from "@dxos/echo/internal";
46
27
 
47
28
  // src/types/util.ts
48
- import { addressFromA1Notation, addressToA1Notation, isFormula } from "@dxos/compute";
29
+ import { addressFromA1Notation, addressToA1Notation, isFormula } from "@dxos/compute-hyperformula";
49
30
  import { randomBytes } from "@dxos/crypto";
50
31
  import { invariant } from "@dxos/invariant";
51
32
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-sheet/src/types/util.ts";
@@ -120,29 +101,13 @@ var compareIndexPositions = (sheet, indexA, indexB) => {
120
101
  }
121
102
  };
122
103
  var mapFormulaRefsToIndices = (sheet, formula) => {
123
- invariant(isFormula(formula), void 0, {
124
- F: __dxlog_file,
125
- L: 124,
126
- S: void 0,
127
- A: [
128
- "isFormula(formula)",
129
- ""
130
- ]
131
- });
104
+ invariant(isFormula(formula), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 96, S: void 0, A: ["isFormula(formula)", ""] });
132
105
  return formula.replace(/([a-zA-Z]+)([0-9]+)/g, (match) => {
133
106
  return addressToIndex(sheet, addressFromA1Notation(match));
134
107
  });
135
108
  };
136
109
  var mapFormulaIndicesToRefs = (sheet, formula) => {
137
- invariant(isFormula(formula), void 0, {
138
- F: __dxlog_file,
139
- L: 134,
140
- S: void 0,
141
- A: [
142
- "isFormula(formula)",
143
- ""
144
- ]
145
- });
110
+ invariant(isFormula(formula), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 104, S: void 0, A: ["isFormula(formula)", ""] });
146
111
  return formula.replace(/([a-zA-Z0-9]+)@([a-zA-Z0-9]+)/g, (idx) => {
147
112
  return addressToA1Notation(addressFromIndex(sheet, idx));
148
113
  });
@@ -168,27 +133,30 @@ var Sheet = Schema.Struct({
168
133
  // Sparse map of cells referenced by index.
169
134
  cells: Schema.Record({
170
135
  key: Schema.String,
171
- value: Schema.mutable(CellValue)
172
- }).pipe(Schema.mutable, FormInputAnnotation.set(false)),
136
+ value: CellValue
137
+ }).pipe(FormInputAnnotation.set(false)),
173
138
  // Ordered row indices.
174
- rows: Schema.Array(Schema.String).pipe(Schema.mutable, FormInputAnnotation.set(false)),
139
+ rows: Schema.Array(Schema.String).pipe(FormInputAnnotation.set(false)),
175
140
  // Ordered column indices.
176
- columns: Schema.Array(Schema.String).pipe(Schema.mutable, FormInputAnnotation.set(false)),
141
+ columns: Schema.Array(Schema.String).pipe(FormInputAnnotation.set(false)),
177
142
  // Row metadata referenced by index.
178
143
  rowMeta: Schema.Record({
179
144
  key: Schema.String,
180
- value: Schema.mutable(RowColumnMeta)
181
- }).pipe(Schema.mutable, FormInputAnnotation.set(false)),
145
+ value: RowColumnMeta
146
+ }).pipe(FormInputAnnotation.set(false)),
182
147
  // Column metadata referenced by index.
183
148
  columnMeta: Schema.Record({
184
149
  key: Schema.String,
185
- value: Schema.mutable(RowColumnMeta)
186
- }).pipe(Schema.mutable, FormInputAnnotation.set(false)),
150
+ value: RowColumnMeta
151
+ }).pipe(FormInputAnnotation.set(false)),
187
152
  // Cell formatting referenced by indexed range.
188
- ranges: Schema.Array(Range).pipe(Schema.mutable, FormInputAnnotation.set(false))
153
+ ranges: Schema.Array(Range).pipe(FormInputAnnotation.set(false))
189
154
  }).pipe(Type.object({
190
- typename: "dxos.org/type/Sheet",
155
+ typename: "org.dxos.type.sheet",
191
156
  version: "0.1.0"
157
+ }), Annotation.IconAnnotation.set({
158
+ icon: "ph--grid-nine--regular",
159
+ hue: "indigo"
192
160
  }));
193
161
  var make = ({ name, cells = {}, ...size } = {}) => {
194
162
  const sheet = Obj.make(Sheet, {
@@ -200,15 +168,15 @@ var make = ({ name, cells = {}, ...size } = {}) => {
200
168
  columnMeta: {},
201
169
  ranges: []
202
170
  });
203
- Obj.change(sheet, () => {
204
- initialize(sheet, size);
171
+ Obj.update(sheet, (sheet2) => {
172
+ initialize(sheet2, size);
205
173
  if (cells) {
206
174
  Object.entries(cells).forEach(([key, { value }]) => {
207
- const idx = addressToIndex(sheet, addressFromA1Notation2(key));
175
+ const idx = addressToIndex(sheet2, addressFromA1Notation2(key));
208
176
  if (isFormula2(value)) {
209
- value = mapFormulaRefsToIndices(sheet, value);
177
+ value = mapFormulaRefsToIndices(sheet2, value);
210
178
  }
211
- sheet.cells[idx] = {
179
+ sheet2.cells[idx] = {
212
180
  value
213
181
  };
214
182
  });
@@ -235,13 +203,13 @@ var cellClassNameForRange = ({ key, value }) => {
235
203
  return void 0;
236
204
  }
237
205
  case commentKey:
238
- return "bg-gridComment";
206
+ return "bg-grid-comment";
239
207
  case styleKey:
240
208
  switch (value) {
241
209
  case "highlight":
242
- return "!bg-gridHighlight";
210
+ return "bg-grid-highlight!";
243
211
  case "softwrap":
244
- return "!whitespace-normal";
212
+ return "whitespace-normal!";
245
213
  default:
246
214
  return void 0;
247
215
  }
@@ -252,10 +220,6 @@ var cellClassNameForRange = ({ key, value }) => {
252
220
 
253
221
  // src/types/types.ts
254
222
  import * as Schema2 from "effect/Schema";
255
- import { Capability as Capability2 } from "@dxos/app-framework";
256
- import { Operation } from "@dxos/operation";
257
- import { SpaceSchema } from "@dxos/react-client/echo";
258
- import { Collection } from "@dxos/schema";
259
223
  var ActionAxis = Schema2.Union(Schema2.Literal("row"), Schema2.Literal("col"));
260
224
  (function(SheetAction2) {
261
225
  SheetAction2.RestoreAxis = Schema2.Struct({
@@ -266,107 +230,9 @@ var ActionAxis = Schema2.Union(Schema2.Literal("row"), Schema2.Literal("col"));
266
230
  values: Schema2.Array(Schema2.Any)
267
231
  });
268
232
  })(SheetAction || (SheetAction = {}));
269
- var SHEET_OPERATION = `${meta.id}/operation`;
270
- var Axis = Schema2.Union(Schema2.Literal("row"), Schema2.Literal("col"));
271
- (function(SheetOperation2) {
272
- SheetOperation2.OnCreateSpace = Operation.make({
273
- meta: {
274
- key: `${SHEET_OPERATION}/on-create-space`,
275
- name: "On Create Space"
276
- },
277
- services: [
278
- Capability2.Service
279
- ],
280
- schema: {
281
- input: Schema2.Struct({
282
- space: SpaceSchema,
283
- rootCollection: Collection.Collection,
284
- isDefault: Schema2.optional(Schema2.Boolean)
285
- }),
286
- output: Schema2.Void
287
- }
288
- });
289
- SheetOperation2.InsertAxis = Operation.make({
290
- meta: {
291
- key: `${SHEET_OPERATION}/axis-insert`,
292
- name: "Insert Axis"
293
- },
294
- schema: {
295
- input: Schema2.Struct({
296
- model: Schema2.Any,
297
- axis: Axis,
298
- index: Schema2.Number,
299
- count: Schema2.optional(Schema2.Number)
300
- }),
301
- output: Schema2.Void
302
- }
303
- });
304
- SheetOperation2.DropAxisOutput = Schema2.Struct({
305
- axis: Axis.annotations({
306
- description: "The axis type (row or col)."
307
- }),
308
- axisIndex: Schema2.String.annotations({
309
- description: "The dropped axis index."
310
- }),
311
- index: Schema2.Number.annotations({
312
- description: "The position the axis was at."
313
- }),
314
- axisMeta: Schema2.Any.annotations({
315
- description: "The row/column metadata."
316
- }),
317
- values: Schema2.Array(Schema2.Any).annotations({
318
- description: "The cell values that were dropped."
319
- })
320
- });
321
- SheetOperation2.DropAxis = Operation.make({
322
- meta: {
323
- key: `${SHEET_OPERATION}/axis-drop`,
324
- name: "Drop Axis"
325
- },
326
- schema: {
327
- input: Schema2.Struct({
328
- model: Schema2.Any,
329
- axis: Axis,
330
- axisIndex: Schema2.String
331
- }),
332
- output: SheetOperation2.DropAxisOutput
333
- }
334
- });
335
- SheetOperation2.RestoreAxis = Operation.make({
336
- meta: {
337
- key: `${SHEET_OPERATION}/restore-axis`,
338
- name: "Restore Axis"
339
- },
340
- schema: {
341
- input: Schema2.Struct({
342
- model: Schema2.Any.annotations({
343
- description: "The sheet model."
344
- }),
345
- axis: Axis.annotations({
346
- description: "The axis type (row or col)."
347
- }),
348
- axisIndex: Schema2.String.annotations({
349
- description: "The axis index to restore."
350
- }),
351
- index: Schema2.Number.annotations({
352
- description: "The position to restore at."
353
- }),
354
- axisMeta: Schema2.Any.annotations({
355
- description: "The row/column metadata."
356
- }),
357
- values: Schema2.Array(Schema2.Any).annotations({
358
- description: "The cell values to restore."
359
- })
360
- }),
361
- output: Schema2.Void
362
- }
363
- });
364
- })(SheetOperation || (SheetOperation = {}));
365
233
  var SheetAction;
366
- var SheetOperation;
367
234
 
368
235
  export {
369
- meta,
370
236
  SheetCapabilities,
371
237
  MAX_ROWS,
372
238
  MAX_COLS,
@@ -391,7 +257,6 @@ export {
391
257
  commentKey,
392
258
  styleKey,
393
259
  cellClassNameForRange,
394
- SheetAction,
395
- SheetOperation
260
+ SheetAction
396
261
  };
397
- //# sourceMappingURL=chunk-2SAGT3BB.mjs.map
262
+ //# sourceMappingURL=chunk-SVGX3MWY.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,23 @@
1
+ import {
2
+ DropAxis
3
+ } from "./chunk-5TXOUIGZ.mjs";
4
+ import "./chunk-J5LGTIGS.mjs";
5
+
6
+ // src/operations/drop-axis.ts
7
+ import * as Effect from "effect/Effect";
8
+ import { Operation } from "@dxos/compute";
9
+ var handler = DropAxis.pipe(Operation.withHandler(({ model, axis, axisIndex }) => Effect.sync(() => {
10
+ const undoData = model[axis === "col" ? "dropColumn" : "dropRow"](axisIndex);
11
+ return {
12
+ axis: undoData.axis,
13
+ axisIndex: undoData.axisIndex,
14
+ index: undoData.index,
15
+ axisMeta: undoData.axisMeta,
16
+ values: undoData.values
17
+ };
18
+ })));
19
+ var drop_axis_default = handler;
20
+ export {
21
+ drop_axis_default as default
22
+ };
23
+ //# sourceMappingURL=drop-axis-ZLERPPPH.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/drop-axis.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Operation } from '@dxos/compute';\n\nimport { DropAxis } from './definitions';\n\nconst handler: Operation.WithHandler<typeof DropAxis> = DropAxis.pipe(\n Operation.withHandler(({ model, axis, axisIndex }) =>\n Effect.sync(() => {\n const undoData = model[axis === 'col' ? 'dropColumn' : 'dropRow'](axisIndex);\n return {\n axis: undoData.axis,\n axisIndex: undoData.axisIndex,\n index: undoData.index,\n axisMeta: undoData.axisMeta,\n values: undoData.values,\n };\n }),\n ),\n);\n\nexport default handler;\n"],
5
+ "mappings": ";;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,iBAAiB;AAI1B,IAAMC,UAAkDC,SAASC,KAC/DC,UAAUC,YAAY,CAAC,EAAEC,OAAOC,MAAMC,UAAS,MACtCC,YAAK,MAAA;AACV,QAAMC,WAAWJ,MAAMC,SAAS,QAAQ,eAAe,SAAA,EAAWC,SAAAA;AAClE,SAAO;IACLD,MAAMG,SAASH;IACfC,WAAWE,SAASF;IACpBG,OAAOD,SAASC;IAChBC,UAAUF,SAASE;IACnBC,QAAQH,SAASG;EACnB;AACF,CAAA,CAAA,CAAA;AAIJ,IAAA,oBAAeZ;",
6
+ "names": ["Effect", "Operation", "handler", "DropAxis", "pipe", "Operation", "withHandler", "model", "axis", "axisIndex", "sync", "undoData", "index", "axisMeta", "values"]
7
+ }