@dxos/plugin-sheet 0.8.4-main.abd8ff62ef → 0.8.4-main.bc2380dfbc

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 (195) hide show
  1. package/LICENSE +102 -5
  2. package/dist/lib/neutral/RangeList-HYB5S6KQ.mjs +46 -0
  3. package/dist/lib/neutral/RangeList-HYB5S6KQ.mjs.map +7 -0
  4. package/dist/lib/neutral/SheetArticle-5AJRM3V3.mjs +33 -0
  5. package/dist/lib/neutral/SheetArticle-5AJRM3V3.mjs.map +7 -0
  6. package/dist/lib/neutral/SheetPlugin.mjs +48 -0
  7. package/dist/lib/neutral/SheetPlugin.mjs.map +7 -0
  8. package/dist/lib/neutral/SheetPlugin.node.mjs +27 -0
  9. package/dist/lib/neutral/SheetPlugin.node.mjs.map +7 -0
  10. package/dist/lib/neutral/SheetPlugin.workerd.mjs +21 -0
  11. package/dist/lib/neutral/SheetPlugin.workerd.mjs.map +7 -0
  12. package/dist/lib/neutral/anchor-sort-TTCKGX7V.mjs +22 -0
  13. package/dist/lib/neutral/anchor-sort-TTCKGX7V.mjs.map +7 -0
  14. package/dist/lib/neutral/capabilities/index.mjs +25 -0
  15. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  16. package/dist/lib/neutral/chunk-4SBAIU6F.mjs +234 -0
  17. package/dist/lib/neutral/chunk-4SBAIU6F.mjs.map +7 -0
  18. package/dist/lib/neutral/chunk-CGWDLWFZ.mjs +8 -0
  19. package/dist/lib/neutral/chunk-CGWDLWFZ.mjs.map +7 -0
  20. package/dist/lib/{browser/chunk-SVGX3MWY.mjs → neutral/chunk-KC2SMDNF.mjs} +160 -49
  21. package/dist/lib/neutral/chunk-KC2SMDNF.mjs.map +7 -0
  22. package/dist/lib/neutral/chunk-YFY6U524.mjs +83 -0
  23. package/dist/lib/neutral/chunk-YFY6U524.mjs.map +7 -0
  24. package/dist/lib/{browser/index.mjs → neutral/chunk-ZWOQCLH7.mjs} +1 -13
  25. package/dist/lib/neutral/chunk-ZWOQCLH7.mjs.map +7 -0
  26. package/dist/lib/neutral/comment-config-ZBWNCJMZ.mjs +20 -0
  27. package/dist/lib/neutral/comment-config-ZBWNCJMZ.mjs.map +7 -0
  28. package/dist/lib/neutral/components/index.mjs +1551 -0
  29. package/dist/lib/neutral/components/index.mjs.map +7 -0
  30. package/dist/lib/neutral/compute-graph-registry-IEQBF5XZ.mjs +20 -0
  31. package/dist/lib/neutral/compute-graph-registry-IEQBF5XZ.mjs.map +7 -0
  32. package/dist/lib/neutral/containers/index.mjs +11 -0
  33. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  34. package/dist/lib/neutral/create-object-OKQAXJCW.mjs +27 -0
  35. package/dist/lib/neutral/create-object-OKQAXJCW.mjs.map +7 -0
  36. package/dist/lib/{browser/drop-axis-ZLERPPPH.mjs → neutral/drop-axis-G6UOXG54.mjs} +4 -4
  37. package/dist/lib/neutral/drop-axis-G6UOXG54.mjs.map +7 -0
  38. package/dist/lib/{node-esm/types → neutral}/index.mjs +14 -5
  39. package/dist/lib/{browser/insert-axis-WTRA3HE7.mjs → neutral/insert-axis-ZFFNG22G.mjs} +4 -4
  40. package/dist/lib/neutral/insert-axis-ZFFNG22G.mjs.map +7 -0
  41. package/dist/lib/neutral/markdown-I2AKJYPF.mjs +28 -0
  42. package/dist/lib/neutral/markdown-I2AKJYPF.mjs.map +7 -0
  43. package/dist/lib/neutral/meta.json +1 -0
  44. package/dist/lib/neutral/meta.mjs +8 -0
  45. package/dist/lib/neutral/operation-handler-TB6LFV2H.mjs +13 -0
  46. package/dist/lib/neutral/operation-handler-TB6LFV2H.mjs.map +7 -0
  47. package/dist/lib/neutral/operations/index.mjs +8 -0
  48. package/dist/lib/neutral/plugin.mjs +16 -0
  49. package/dist/lib/neutral/plugin.mjs.map +7 -0
  50. package/dist/lib/neutral/react-surface-VSTQNVPT.mjs +44 -0
  51. package/dist/lib/neutral/react-surface-VSTQNVPT.mjs.map +7 -0
  52. package/dist/lib/{browser/restore-axis-PYGPW2TB.mjs → neutral/restore-axis-44DM6N54.mjs} +4 -4
  53. package/dist/lib/neutral/restore-axis-44DM6N54.mjs.map +7 -0
  54. package/dist/lib/neutral/scroll-to-anchor-QPOGMAQG.mjs +33 -0
  55. package/dist/lib/neutral/scroll-to-anchor-QPOGMAQG.mjs.map +7 -0
  56. package/dist/lib/neutral/state-HPA27MX2.mjs +29 -0
  57. package/dist/lib/neutral/state-HPA27MX2.mjs.map +7 -0
  58. package/dist/lib/neutral/testing/index.mjs +103 -0
  59. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  60. package/dist/lib/{browser → neutral}/types/index.mjs +5 -3
  61. package/dist/lib/neutral/types/index.mjs.map +7 -0
  62. package/dist/lib/neutral/undo-mappings-3FQLSTCZ.mjs +31 -0
  63. package/dist/lib/neutral/undo-mappings-3FQLSTCZ.mjs.map +7 -0
  64. package/dist/types/src/SheetPlugin.d.ts.map +1 -1
  65. package/dist/types/src/SheetPlugin.node.d.ts.map +1 -1
  66. package/dist/types/src/SheetPlugin.workerd.d.ts +4 -0
  67. package/dist/types/src/SheetPlugin.workerd.d.ts.map +1 -0
  68. package/dist/types/src/capabilities/comment-config.d.ts +12 -0
  69. package/dist/types/src/capabilities/comment-config.d.ts.map +1 -0
  70. package/dist/types/src/capabilities/create-object.d.ts +11 -0
  71. package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
  72. package/dist/types/src/capabilities/index.d.ts +16 -2
  73. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  74. package/dist/types/src/capabilities/markdown.d.ts +1 -1
  75. package/dist/types/src/capabilities/state.d.ts +2 -2
  76. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  77. package/dist/types/src/components/ComputeGraph/compute-graph.stories.d.ts.map +1 -1
  78. package/dist/types/src/containers/RangeList/RangeList.d.ts +1 -1
  79. package/dist/types/src/containers/RangeList/RangeList.d.ts.map +1 -1
  80. package/dist/types/src/containers/{SheetContainer/SheetContainer.d.ts → SheetArticle/SheetArticle.d.ts} +3 -3
  81. package/dist/types/src/containers/SheetArticle/SheetArticle.d.ts.map +1 -0
  82. package/dist/types/src/containers/{SheetContainer/SheetContainer.stories.d.ts → SheetArticle/SheetArticle.stories.d.ts} +2 -2
  83. package/dist/types/src/containers/SheetArticle/SheetArticle.stories.d.ts.map +1 -0
  84. package/dist/types/src/containers/SheetArticle/index.d.ts +2 -0
  85. package/dist/types/src/containers/SheetArticle/index.d.ts.map +1 -0
  86. package/dist/types/src/containers/index.d.ts +1 -1
  87. package/dist/types/src/containers/index.d.ts.map +1 -1
  88. package/dist/types/src/index.d.ts +2 -3
  89. package/dist/types/src/index.d.ts.map +1 -1
  90. package/dist/types/src/operations/drop-axis.d.ts +2 -2
  91. package/dist/types/src/operations/drop-axis.d.ts.map +1 -1
  92. package/dist/types/src/operations/index.d.ts +0 -1
  93. package/dist/types/src/operations/index.d.ts.map +1 -1
  94. package/dist/types/src/operations/insert-axis.d.ts +2 -2
  95. package/dist/types/src/operations/insert-axis.d.ts.map +1 -1
  96. package/dist/types/src/operations/restore-axis.d.ts +2 -2
  97. package/dist/types/src/operations/restore-axis.d.ts.map +1 -1
  98. package/dist/types/src/operations/scroll-to-anchor.d.ts +2 -2
  99. package/dist/types/src/operations/scroll-to-anchor.d.ts.map +1 -1
  100. package/dist/types/src/plugin.d.ts +4 -0
  101. package/dist/types/src/plugin.d.ts.map +1 -0
  102. package/dist/types/src/serializer.d.ts +1 -1
  103. package/dist/types/src/serializer.d.ts.map +1 -1
  104. package/dist/types/src/types/{capabilities.d.ts → SheetCapabilities.d.ts} +5 -7
  105. package/dist/types/src/types/SheetCapabilities.d.ts.map +1 -0
  106. package/dist/types/src/{operations/definitions.d.ts → types/SheetOperation.d.ts} +1 -1
  107. package/dist/types/src/types/SheetOperation.d.ts.map +1 -0
  108. package/dist/types/src/types/index.d.ts +3 -2
  109. package/dist/types/src/types/index.d.ts.map +1 -1
  110. package/dist/types/tsconfig.tsbuildinfo +1 -1
  111. package/package.json +107 -81
  112. package/src/SheetPlugin.node.ts +3 -18
  113. package/src/SheetPlugin.test.ts +2 -2
  114. package/src/SheetPlugin.tsx +7 -36
  115. package/src/SheetPlugin.workerd.ts +18 -0
  116. package/src/capabilities/comment-config.ts +24 -0
  117. package/src/capabilities/compute-graph-registry.ts +1 -1
  118. package/src/capabilities/create-object.ts +30 -0
  119. package/src/capabilities/index.ts +4 -0
  120. package/src/capabilities/markdown.ts +1 -1
  121. package/src/capabilities/react-surface.tsx +3 -3
  122. package/src/capabilities/state.ts +3 -3
  123. package/src/capabilities/undo-mappings.ts +1 -1
  124. package/src/components/ComputeGraph/compute-graph.stories.tsx +8 -3
  125. package/src/components/SheetContent/SheetContent.stories.tsx +1 -1
  126. package/src/components/SheetContent/SheetContent.tsx +1 -1
  127. package/src/containers/RangeList/RangeList.tsx +6 -5
  128. package/src/containers/{SheetContainer/SheetContainer.stories.tsx → SheetArticle/SheetArticle.stories.tsx} +11 -10
  129. package/src/containers/{SheetContainer/SheetContainer.tsx → SheetArticle/SheetArticle.tsx} +5 -5
  130. package/src/containers/SheetArticle/index.ts +5 -0
  131. package/src/containers/index.ts +1 -1
  132. package/src/index.ts +2 -8
  133. package/src/integrations/thread-ranges.ts +3 -3
  134. package/src/operations/drop-axis.ts +4 -4
  135. package/src/operations/index.ts +0 -2
  136. package/src/operations/insert-axis.ts +4 -4
  137. package/src/operations/restore-axis.ts +4 -4
  138. package/src/operations/scroll-to-anchor.ts +2 -3
  139. package/src/playwright/sheet.spec.ts +1 -1
  140. package/src/plugin.ts +11 -0
  141. package/src/sanity.test.ts +5 -1
  142. package/src/serializer.ts +1 -1
  143. package/src/types/{capabilities.ts → SheetCapabilities.ts} +8 -8
  144. package/src/{operations/definitions.ts → types/SheetOperation.ts} +2 -0
  145. package/src/types/index.ts +4 -2
  146. package/dist/lib/browser/SheetPlugin-W4PFP6WG.mjs +0 -92
  147. package/dist/lib/browser/SheetPlugin-W4PFP6WG.mjs.map +0 -7
  148. package/dist/lib/browser/chunk-5TXOUIGZ.mjs +0 -118
  149. package/dist/lib/browser/chunk-5TXOUIGZ.mjs.map +0 -7
  150. package/dist/lib/browser/chunk-SVGX3MWY.mjs.map +0 -7
  151. package/dist/lib/browser/drop-axis-ZLERPPPH.mjs.map +0 -7
  152. package/dist/lib/browser/index.mjs.map +0 -7
  153. package/dist/lib/browser/insert-axis-WTRA3HE7.mjs.map +0 -7
  154. package/dist/lib/browser/meta.json +0 -1
  155. package/dist/lib/browser/operations/index.mjs +0 -13
  156. package/dist/lib/browser/operations/index.mjs.map +0 -7
  157. package/dist/lib/browser/restore-axis-PYGPW2TB.mjs.map +0 -7
  158. package/dist/lib/browser/scroll-to-anchor-6I4DNKBW.mjs +0 -65
  159. package/dist/lib/browser/scroll-to-anchor-6I4DNKBW.mjs.map +0 -7
  160. package/dist/lib/node-esm/SheetPlugin-ZJRSEYHB.mjs +0 -93
  161. package/dist/lib/node-esm/SheetPlugin-ZJRSEYHB.mjs.map +0 -7
  162. package/dist/lib/node-esm/chunk-4A2KAXTF.mjs +0 -263
  163. package/dist/lib/node-esm/chunk-4A2KAXTF.mjs.map +0 -7
  164. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
  165. package/dist/lib/node-esm/chunk-MCZFRYOP.mjs +0 -119
  166. package/dist/lib/node-esm/chunk-MCZFRYOP.mjs.map +0 -7
  167. package/dist/lib/node-esm/drop-axis-FV2GXSZP.mjs +0 -24
  168. package/dist/lib/node-esm/drop-axis-FV2GXSZP.mjs.map +0 -7
  169. package/dist/lib/node-esm/index.mjs +0 -34
  170. package/dist/lib/node-esm/index.mjs.map +0 -7
  171. package/dist/lib/node-esm/insert-axis-THXK6DCC.mjs +0 -17
  172. package/dist/lib/node-esm/insert-axis-THXK6DCC.mjs.map +0 -7
  173. package/dist/lib/node-esm/meta.json +0 -1
  174. package/dist/lib/node-esm/operations/index.mjs +0 -14
  175. package/dist/lib/node-esm/operations/index.mjs.map +0 -7
  176. package/dist/lib/node-esm/restore-axis-JIFT3Q7Z.mjs +0 -17
  177. package/dist/lib/node-esm/restore-axis-JIFT3Q7Z.mjs.map +0 -7
  178. package/dist/lib/node-esm/scroll-to-anchor-JRDC5KK2.mjs +0 -66
  179. package/dist/lib/node-esm/scroll-to-anchor-JRDC5KK2.mjs.map +0 -7
  180. package/dist/lib/node-esm/translations.mjs +0 -56
  181. package/dist/lib/node-esm/translations.mjs.map +0 -7
  182. package/dist/types/src/containers/SheetContainer/SheetContainer.d.ts.map +0 -1
  183. package/dist/types/src/containers/SheetContainer/SheetContainer.stories.d.ts.map +0 -1
  184. package/dist/types/src/containers/SheetContainer/index.d.ts +0 -2
  185. package/dist/types/src/containers/SheetContainer/index.d.ts.map +0 -1
  186. package/dist/types/src/operations/definitions.d.ts.map +0 -1
  187. package/dist/types/src/types/capabilities.d.ts.map +0 -1
  188. package/src/containers/SheetContainer/index.ts +0 -5
  189. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs +0 -0
  190. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs.map +0 -0
  191. /package/dist/lib/{browser/types → neutral}/index.mjs.map +0 -0
  192. /package/dist/lib/{node-esm/chunk-HSLMI22Q.mjs.map → neutral/meta.mjs.map} +0 -0
  193. /package/dist/lib/{node-esm/types → neutral/operations}/index.mjs.map +0 -0
  194. /package/dist/lib/{browser → neutral}/translations.mjs +0 -0
  195. /package/dist/lib/{browser → neutral}/translations.mjs.map +0 -0
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/index.ts", "../../../src/meta.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Plugin } from '@dxos/app-framework';\n\nimport { meta } from './meta';\n\nexport const SheetPlugin = Plugin.lazy(meta, () => import('./SheetPlugin'));\n\nexport * from './meta';\n\nexport { SheetCapabilities } from './types';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Plugin } from '@dxos/app-framework';\nimport { trim } from '@dxos/util';\n\nexport const meta: Plugin.Meta = {\n id: 'org.dxos.plugin.sheet',\n name: 'Sheet',\n description: trim`\n Full-featured spreadsheet application with over 400 built-in formulas for calculations and data analysis.\n Create custom JavaScript functions and integrate with AI agents for advanced automation.\n `,\n icon: 'ph--grid-nine--regular',\n iconHue: 'indigo',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-sheet',\n screenshots: ['https://dxos.network/plugin-details-sheet-dark.png'],\n};\n"],
5
- "mappings": ";;;;;;AAIA,SAASA,cAAc;;;ACCvB,SAASC,YAAY;AAEd,IAAMC,OAAoB;EAC/BC,IAAI;EACJC,MAAM;EACNC,aAAaJ;;;;EAIbK,MAAM;EACNC,SAAS;EACTC,QAAQ;EACRC,aAAa;IAAC;;AAChB;;;ADVO,IAAMC,cAAcC,OAAOC,KAAKC,MAAM,MAAM,OAAO,4BAAA,CAAA;",
6
- "names": ["Plugin", "trim", "meta", "id", "name", "description", "icon", "iconHue", "source", "screenshots", "SheetPlugin", "Plugin", "lazy", "meta"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/operations/insert-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 { InsertAxis } from './definitions';\n\nconst handler: Operation.WithHandler<typeof InsertAxis> = InsertAxis.pipe(\n Operation.withHandler(({ model, axis, index, count }) =>\n Effect.sync(() => {\n model[axis === 'col' ? 'insertColumns' : 'insertRows'](index, count);\n }),\n ),\n);\n\nexport default handler;\n"],
5
- "mappings": ";;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,iBAAiB;AAI1B,IAAMC,UAAoDC,WAAWC,KACnEC,UAAUC,YAAY,CAAC,EAAEC,OAAOC,MAAMC,OAAOC,MAAK,MACzCC,YAAK,MAAA;AACVJ,QAAMC,SAAS,QAAQ,kBAAkB,YAAA,EAAcC,OAAOC,KAAAA;AAChE,CAAA,CAAA,CAAA;AAIJ,IAAA,sBAAeR;",
6
- "names": ["Effect", "Operation", "handler", "InsertAxis", "pipe", "Operation", "withHandler", "model", "axis", "index", "count", "sync"]
7
- }
@@ -1 +0,0 @@
1
- {"inputs":{"src/meta.ts":{"bytes":2028,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/types/capabilities.ts":{"bytes":2373,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"#meta","kind":"import-statement","external":true}],"format":"esm"},"src/types/util.ts":{"bytes":13737,"imports":[{"path":"@dxos/compute-hyperformula","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"src/types/Sheet.ts":{"bytes":11105,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/compute-hyperformula","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"src/types/util.ts","kind":"import-statement","original":"./util"}],"format":"esm"},"src/types/sheet-range-types.ts":{"bytes":3628,"imports":[],"format":"esm"},"src/types/types.ts":{"bytes":2252,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"src/types/Sheet.ts","kind":"import-statement","original":"./Sheet"}],"format":"esm"},"src/types/index.ts":{"bytes":792,"imports":[{"path":"src/types/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/types/Sheet.ts","kind":"import-statement","original":"./Sheet"},{"path":"src/types/sheet-range-types.ts","kind":"import-statement","original":"./sheet-range-types"},{"path":"src/types/types.ts","kind":"import-statement","original":"./types"},{"path":"src/types/util.ts","kind":"import-statement","original":"./util"}],"format":"esm"},"src/serializer.ts":{"bytes":2464,"imports":[{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"#types","kind":"import-statement","external":true}],"format":"esm"},"src/SheetPlugin.tsx":{"bytes":10344,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-automation/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-client/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/operations","kind":"import-statement","external":true},{"path":"#capabilities","kind":"import-statement","external":true},{"path":"#meta","kind":"import-statement","external":true},{"path":"#operations","kind":"import-statement","external":true},{"path":"#translations","kind":"import-statement","external":true},{"path":"#types","kind":"import-statement","external":true},{"path":"src/serializer.ts","kind":"import-statement","original":"./serializer"}],"format":"esm"},"src/index.ts":{"bytes":1121,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"},{"path":"src/SheetPlugin.tsx","kind":"dynamic-import","original":"./SheetPlugin"}],"format":"esm"},"src/translations.ts":{"bytes":6323,"imports":[{"path":"#meta","kind":"import-statement","external":true},{"path":"#types","kind":"import-statement","external":true}],"format":"esm"},"src/operations/definitions.ts":{"bytes":10251,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"#meta","kind":"import-statement","external":true}],"format":"esm"},"src/operations/drop-axis.ts":{"bytes":2410,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"src/operations/definitions.ts","kind":"import-statement","original":"./definitions"}],"format":"esm"},"src/operations/insert-axis.ts":{"bytes":1717,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"src/operations/definitions.ts","kind":"import-statement","original":"./definitions"}],"format":"esm"},"src/operations/restore-axis.ts":{"bytes":1704,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"src/operations/definitions.ts","kind":"import-statement","original":"./definitions"}],"format":"esm"},"src/integrations/thread-ranges.ts":{"bytes":10284,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/compute-hyperformula","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-thread/operations","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/types","kind":"import-statement","external":true},{"path":"#components","kind":"import-statement","external":true}],"format":"esm"},"src/operations/scroll-to-anchor.ts":{"bytes":3466,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"src/integrations/thread-ranges.ts","kind":"import-statement","original":"../integrations/thread-ranges"},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"},{"path":"src/operations/definitions.ts","kind":"import-statement","original":"./definitions"}],"format":"esm"},"src/operations/index.ts":{"bytes":1356,"imports":[{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"src/operations/definitions.ts","kind":"import-statement","original":"./definitions"},{"path":"src/operations/drop-axis.ts","kind":"dynamic-import","original":"./drop-axis"},{"path":"src/operations/insert-axis.ts","kind":"dynamic-import","original":"./insert-axis"},{"path":"src/operations/restore-axis.ts","kind":"dynamic-import","original":"./restore-axis"},{"path":"src/operations/scroll-to-anchor.ts","kind":"dynamic-import","original":"./scroll-to-anchor"}],"format":"esm"}},"outputs":{"dist/lib/browser/scroll-to-anchor-6I4DNKBW.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5613},"dist/lib/browser/scroll-to-anchor-6I4DNKBW.mjs":{"imports":[{"path":"dist/lib/browser/chunk-SVGX3MWY.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-5TXOUIGZ.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/compute-hyperformula","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-thread/operations","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/types","kind":"import-statement","external":true},{"path":"#components","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/operations/scroll-to-anchor.ts","inputs":{"src/operations/scroll-to-anchor.ts":{"bytesInOutput":629},"src/integrations/thread-ranges.ts":{"bytesInOutput":985}},"bytes":1983},"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1430},"dist/lib/browser/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-SVGX3MWY.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"dist/lib/browser/SheetPlugin-W4PFP6WG.mjs","kind":"dynamic-import"}],"exports":["SheetCapabilities","SheetPlugin","meta"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":127},"src/meta.ts":{"bytesInOutput":543}},"bytes":901},"dist/lib/browser/translations.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2920},"dist/lib/browser/translations.mjs":{"imports":[{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"#meta","kind":"import-statement","external":true},{"path":"#types","kind":"import-statement","external":true}],"exports":["translations"],"entryPoint":"src/translations.ts","inputs":{"src/translations.ts":{"bytesInOutput":1913}},"bytes":2037},"dist/lib/browser/types/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/types/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-SVGX3MWY.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"}],"exports":["ApiError","DEFAULT_COLS","DEFAULT_ROWS","MAX_COLS","MAX_ROWS","RangeException","ReadonlyException","Sheet","SheetAction","SheetCapabilities","addressFromIndex","addressToIndex","alignKey","cellClassNameForRange","commentKey","compareIndexPositions","createIndex","createIndices","initialize","insertIndices","mapFormulaIndicesToRefs","mapFormulaRefsToIndices","rangeFromIndex","rangeToIndex","styleKey"],"entryPoint":"src/types/index.ts","inputs":{},"bytes":1001},"dist/lib/browser/chunk-SVGX3MWY.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":16611},"dist/lib/browser/chunk-SVGX3MWY.mjs":{"imports":[{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"#meta","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/compute-hyperformula","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/compute-hyperformula","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true}],"exports":["ApiError","DEFAULT_COLS","DEFAULT_ROWS","MAX_COLS","MAX_ROWS","RangeException","ReadonlyException","SheetAction","SheetCapabilities","Sheet_exports","addressFromIndex","addressToIndex","alignKey","cellClassNameForRange","commentKey","compareIndexPositions","createIndex","createIndices","initialize","insertIndices","mapFormulaIndicesToRefs","mapFormulaRefsToIndices","rangeFromIndex","rangeToIndex","styleKey"],"inputs":{"src/types/capabilities.ts":{"bytesInOutput":389},"src/types/index.ts":{"bytesInOutput":0},"src/types/Sheet.ts":{"bytesInOutput":2602},"src/types/util.ts":{"bytesInOutput":2913},"src/types/sheet-range-types.ts":{"bytesInOutput":711},"src/types/types.ts":{"bytesInOutput":404}},"bytes":7719},"dist/lib/browser/operations/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":688},"dist/lib/browser/operations/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-5TXOUIGZ.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"dist/lib/browser/drop-axis-ZLERPPPH.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/insert-axis-WTRA3HE7.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/restore-axis-PYGPW2TB.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/scroll-to-anchor-6I4DNKBW.mjs","kind":"dynamic-import"}],"exports":["SheetOperation","SheetOperationHandlerSet"],"entryPoint":"src/operations/index.ts","inputs":{"src/operations/index.ts":{"bytesInOutput":294}},"bytes":532},"dist/lib/browser/SheetPlugin-W4PFP6WG.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6965},"dist/lib/browser/SheetPlugin-W4PFP6WG.mjs":{"imports":[{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-automation/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-client/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-markdown/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/operations","kind":"import-statement","external":true},{"path":"#capabilities","kind":"import-statement","external":true},{"path":"#meta","kind":"import-statement","external":true},{"path":"#operations","kind":"import-statement","external":true},{"path":"#translations","kind":"import-statement","external":true},{"path":"#types","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"#types","kind":"import-statement","external":true}],"exports":["SheetPlugin","default"],"entryPoint":"src/SheetPlugin.tsx","inputs":{"src/SheetPlugin.tsx":{"bytesInOutput":2481},"src/serializer.ts":{"bytesInOutput":475}},"bytes":3167},"dist/lib/browser/drop-axis-ZLERPPPH.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1283},"dist/lib/browser/drop-axis-ZLERPPPH.mjs":{"imports":[{"path":"dist/lib/browser/chunk-5TXOUIGZ.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/operations/drop-axis.ts","inputs":{"src/operations/drop-axis.ts":{"bytesInOutput":469}},"bytes":674},"dist/lib/browser/insert-axis-WTRA3HE7.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":944},"dist/lib/browser/insert-axis-WTRA3HE7.mjs":{"imports":[{"path":"dist/lib/browser/chunk-5TXOUIGZ.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/operations/insert-axis.ts","inputs":{"src/operations/insert-axis.ts":{"bytesInOutput":304}},"bytes":517},"dist/lib/browser/restore-axis-PYGPW2TB.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":941},"dist/lib/browser/restore-axis-PYGPW2TB.mjs":{"imports":[{"path":"dist/lib/browser/chunk-5TXOUIGZ.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/operations/restore-axis.ts","inputs":{"src/operations/restore-axis.ts":{"bytesInOutput":307}},"bytes":524},"dist/lib/browser/chunk-5TXOUIGZ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4917},"dist/lib/browser/chunk-5TXOUIGZ.mjs":{"imports":[{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"#meta","kind":"import-statement","external":true}],"exports":["DropAxis","InsertAxis","RestoreAxis","ScrollToAnchor","definitions_exports"],"inputs":{"src/operations/definitions.ts":{"bytesInOutput":2804}},"bytes":3027},"dist/lib/browser/chunk-J5LGTIGS.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/chunk-J5LGTIGS.mjs":{"imports":[],"exports":["__export"],"inputs":{},"bytes":235}}}
@@ -1,13 +0,0 @@
1
- import {
2
- definitions_exports
3
- } from "../chunk-5TXOUIGZ.mjs";
4
- import "../chunk-J5LGTIGS.mjs";
5
-
6
- // src/operations/index.ts
7
- import { OperationHandlerSet } from "@dxos/compute";
8
- var SheetOperationHandlerSet = OperationHandlerSet.lazy(() => import("../drop-axis-ZLERPPPH.mjs"), () => import("../insert-axis-WTRA3HE7.mjs"), () => import("../restore-axis-PYGPW2TB.mjs"), () => import("../scroll-to-anchor-6I4DNKBW.mjs"));
9
- export {
10
- definitions_exports as SheetOperation,
11
- SheetOperationHandlerSet
12
- };
13
- //# sourceMappingURL=index.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/operations/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { OperationHandlerSet } from '@dxos/compute';\n\nexport * as SheetOperation from './definitions';\n\nexport const SheetOperationHandlerSet = OperationHandlerSet.lazy(\n () => import('./drop-axis'),\n () => import('./insert-axis'),\n () => import('./restore-axis'),\n () => import('./scroll-to-anchor'),\n);\n"],
5
- "mappings": ";;;;;;AAIA,SAASA,2BAA2B;AAI7B,IAAMC,2BAA2BD,oBAAoBE,KAC1D,MAAM,OAAO,2BAAA,GACb,MAAM,OAAO,6BAAA,GACb,MAAM,OAAO,8BAAA,GACb,MAAM,OAAO,kCAAA,CAAA;",
6
- "names": ["OperationHandlerSet", "SheetOperationHandlerSet", "lazy"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/operations/restore-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 { RestoreAxis } from './definitions';\n\nconst handler: Operation.WithHandler<typeof RestoreAxis> = RestoreAxis.pipe(\n Operation.withHandler(({ model, axis, ...restoreData }) =>\n Effect.sync(() => {\n model[axis === 'col' ? 'restoreColumn' : 'restoreRow'](restoreData);\n }),\n ),\n);\n\nexport default handler;\n"],
5
- "mappings": ";;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,iBAAiB;AAI1B,IAAMC,UAAqDC,YAAYC,KACrEC,UAAUC,YAAY,CAAC,EAAEC,OAAOC,MAAM,GAAGC,YAAAA,MAChCC,YAAK,MAAA;AACVH,QAAMC,SAAS,QAAQ,kBAAkB,YAAA,EAAcC,WAAAA;AACzD,CAAA,CAAA,CAAA;AAIJ,IAAA,uBAAeP;",
6
- "names": ["Effect", "Operation", "handler", "RestoreAxis", "pipe", "Operation", "withHandler", "model", "axis", "restoreData", "sync"]
7
- }
@@ -1,65 +0,0 @@
1
- import {
2
- SheetCapabilities
3
- } from "./chunk-SVGX3MWY.mjs";
4
- import {
5
- ScrollToAnchor
6
- } from "./chunk-5TXOUIGZ.mjs";
7
- import "./chunk-J5LGTIGS.mjs";
8
-
9
- // src/operations/scroll-to-anchor.ts
10
- import * as Effect from "effect/Effect";
11
- import { Capability } from "@dxos/app-framework";
12
- import { Operation } from "@dxos/compute";
13
-
14
- // src/integrations/thread-ranges.ts
15
- import { useCallback, useEffect, useMemo } from "react";
16
- import { useOperationInvoker } from "@dxos/app-framework/ui";
17
- import { LayoutOperation } from "@dxos/app-toolkit";
18
- import { debounce } from "@dxos/async";
19
- import { inRange } from "@dxos/compute-hyperformula";
20
- import { Obj, Relation } from "@dxos/echo";
21
- import { ThreadOperation } from "@dxos/plugin-thread/operations";
22
- import { Filter, Query, useQuery } from "@dxos/react-client/echo";
23
- import { linkedSegment } from "@dxos/react-ui-attention";
24
- import { AnchoredTo, Thread } from "@dxos/types";
25
- import { useSheetContext } from "#components";
26
- var parseThreadAnchorAsCellRange = (cursor) => {
27
- const coords = cursor.split(",");
28
- if (coords.length !== 4) {
29
- return null;
30
- } else {
31
- const [fromCol, fromRow, toCol, toRow] = coords;
32
- return {
33
- from: {
34
- col: parseInt(fromCol),
35
- row: parseInt(fromRow)
36
- },
37
- to: {
38
- col: parseInt(toCol),
39
- row: parseInt(toRow)
40
- }
41
- };
42
- }
43
- };
44
-
45
- // src/operations/scroll-to-anchor.ts
46
- var handler = ScrollToAnchor.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ subject, cursor, ref }) {
47
- const gridInstances = yield* Capability.get(SheetCapabilities.GridInstances);
48
- const entry = gridInstances.get(subject);
49
- if (!entry) {
50
- return;
51
- }
52
- entry.setActiveRefs(ref);
53
- const range = parseThreadAnchorAsCellRange(cursor);
54
- if (range) {
55
- entry.grid.setFocus({
56
- ...range.to,
57
- plane: "grid"
58
- }, true);
59
- }
60
- })));
61
- var scroll_to_anchor_default = handler;
62
- export {
63
- scroll_to_anchor_default as default
64
- };
65
- //# sourceMappingURL=scroll-to-anchor-6I4DNKBW.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/operations/scroll-to-anchor.ts", "../../../src/integrations/thread-ranges.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capability } from '@dxos/app-framework';\nimport { Operation } from '@dxos/compute';\n\nimport { parseThreadAnchorAsCellRange } from '../integrations/thread-ranges';\nimport { SheetCapabilities } from '../types';\nimport { ScrollToAnchor } from './definitions';\n\nconst handler: Operation.WithHandler<typeof ScrollToAnchor> = ScrollToAnchor.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* ({ subject, cursor, ref }) {\n const gridInstances = yield* Capability.get(SheetCapabilities.GridInstances);\n const entry = gridInstances.get(subject);\n if (!entry) {\n return;\n }\n entry.setActiveRefs(ref);\n const range = parseThreadAnchorAsCellRange(cursor);\n if (range) {\n entry.grid.setFocus({ ...range.to, plane: 'grid' }, true);\n }\n }),\n ),\n);\n\nexport default handler;\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { useCallback, useEffect, useMemo } from 'react';\n\nimport { useOperationInvoker } from '@dxos/app-framework/ui';\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { debounce } from '@dxos/async';\nimport { type CellAddress, type CompleteCellRange, inRange } from '@dxos/compute-hyperformula';\nimport { Obj, Relation } from '@dxos/echo';\nimport { ThreadOperation } from '@dxos/plugin-thread/operations';\nimport { Filter, Query, useQuery } from '@dxos/react-client/echo';\nimport { linkedSegment } from '@dxos/react-ui-attention';\nimport { AnchoredTo, Thread } from '@dxos/types';\n\nimport { useSheetContext } from '#components';\n\nexport const completeCellRangeToThreadCursor = (range: CompleteCellRange): string => {\n return `${range.from.col},${range.from.row},${range.to.col},${range.to.row}`;\n};\n\nexport const parseThreadAnchorAsCellRange = (cursor: string): CompleteCellRange | null => {\n const coords = cursor.split(',');\n if (coords.length !== 4) {\n return null;\n } else {\n const [fromCol, fromRow, toCol, toRow] = coords;\n return {\n from: { col: parseInt(fromCol), row: parseInt(fromRow) },\n to: { col: parseInt(toCol), row: parseInt(toRow) },\n };\n }\n};\n\nexport const useSelectThreadOnCellFocus = () => {\n const { model, cursor } = useSheetContext();\n const { invokePromise } = useOperationInvoker();\n\n const db = Obj.getDatabase(model.sheet);\n const anchors = useQuery(db, Query.select(Filter.id(model.sheet.id)).targetOf(AnchoredTo.AnchoredTo));\n\n const selectClosestThread = useCallback(\n (cellAddress: CellAddress) => {\n if (!cellAddress) {\n return;\n }\n\n const closestThread = anchors.find((anchor) => {\n const source = Relation.getSource(anchor);\n if (anchor.anchor && Obj.instanceOf(Thread.Thread, source)) {\n const range = parseThreadAnchorAsCellRange(anchor.anchor);\n return range ? inRange(range, cellAddress) : false;\n } else {\n return false;\n }\n });\n\n if (closestThread) {\n void (async () => {\n await invokePromise(ThreadOperation.Select, { current: Relation.getDXN(closestThread).toString() });\n await invokePromise(LayoutOperation.UpdateCompanion, {\n subject: linkedSegment('comments'),\n });\n })();\n }\n },\n [invokePromise, anchors],\n );\n\n const debounced = useMemo(() => {\n return debounce((cellCoords: CellAddress) => requestAnimationFrame(() => selectClosestThread(cellCoords)), 50);\n }, [selectClosestThread]);\n\n useEffect(() => {\n if (!cursor) {\n return;\n }\n\n debounced(cursor);\n }, [cursor, debounced]);\n};\n"],
5
- "mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,iBAAiB;;;ACH1B,SAASC,aAAaC,WAAWC,eAAe;AAEhD,SAASC,2BAA2B;AACpC,SAASC,uBAAuB;AAChC,SAASC,gBAAgB;AACzB,SAAmDC,eAAe;AAClE,SAASC,KAAKC,gBAAgB;AAC9B,SAASC,uBAAuB;AAChC,SAASC,QAAQC,OAAOC,gBAAgB;AACxC,SAASC,qBAAqB;AAC9B,SAASC,YAAYC,cAAc;AAEnC,SAASC,uBAAuB;AAMzB,IAAMC,+BAA+B,CAACC,WAAAA;AAC3C,QAAMC,SAASD,OAAOE,MAAM,GAAA;AAC5B,MAAID,OAAOE,WAAW,GAAG;AACvB,WAAO;EACT,OAAO;AACL,UAAM,CAACC,SAASC,SAASC,OAAOC,KAAAA,IAASN;AACzC,WAAO;MACLO,MAAM;QAAEC,KAAKC,SAASN,OAAAA;QAAUO,KAAKD,SAASL,OAAAA;MAAS;MACvDO,IAAI;QAAEH,KAAKC,SAASJ,KAAAA;QAAQK,KAAKD,SAASH,KAAAA;MAAO;IACnD;EACF;AACF;;;ADpBA,IAAMM,UAAwDC,eAAeC,KAC3EC,UAAUC,YACDC,kBAAW,WAAW,EAAEC,SAASC,QAAQC,IAAG,GAAE;AACnD,QAAMC,gBAAgB,OAAOC,WAAWC,IAAIC,kBAAkBC,aAAa;AAC3E,QAAMC,QAAQL,cAAcE,IAAIL,OAAAA;AAChC,MAAI,CAACQ,OAAO;AACV;EACF;AACAA,QAAMC,cAAcP,GAAAA;AACpB,QAAMQ,QAAQC,6BAA6BV,MAAAA;AAC3C,MAAIS,OAAO;AACTF,UAAMI,KAAKC,SAAS;MAAE,GAAGH,MAAMI;MAAIC,OAAO;IAAO,GAAG,IAAA;EACtD;AACF,CAAA,CAAA,CAAA;AAIJ,IAAA,2BAAerB;",
6
- "names": ["Effect", "Capability", "Operation", "useCallback", "useEffect", "useMemo", "useOperationInvoker", "LayoutOperation", "debounce", "inRange", "Obj", "Relation", "ThreadOperation", "Filter", "Query", "useQuery", "linkedSegment", "AnchoredTo", "Thread", "useSheetContext", "parseThreadAnchorAsCellRange", "cursor", "coords", "split", "length", "fromCol", "fromRow", "toCol", "toRow", "from", "col", "parseInt", "row", "to", "handler", "ScrollToAnchor", "pipe", "Operation", "withHandler", "fnUntraced", "subject", "cursor", "ref", "gridInstances", "Capability", "get", "SheetCapabilities", "GridInstances", "entry", "setActiveRefs", "range", "parseThreadAnchorAsCellRange", "grid", "setFocus", "to", "plane"]
7
- }
@@ -1,93 +0,0 @@
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
@@ -1,7 +0,0 @@
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,263 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- __export
4
- } from "./chunk-HSLMI22Q.mjs";
5
-
6
- // src/types/capabilities.ts
7
- import { Capability } from "@dxos/app-framework";
8
- import { meta } from "#meta";
9
- (function(SheetCapabilities2) {
10
- SheetCapabilities2.ComputeGraphRegistry = Capability.make(`${meta.id}.capability.compute-graph-registry`);
11
- SheetCapabilities2.GridInstances = Capability.make(`${meta.id}.capability.grid-instances`);
12
- })(SheetCapabilities || (SheetCapabilities = {}));
13
- var SheetCapabilities;
14
-
15
- // src/types/Sheet.ts
16
- var Sheet_exports = {};
17
- __export(Sheet_exports, {
18
- CellValue: () => CellValue,
19
- Range: () => Range,
20
- RowColumnMeta: () => RowColumnMeta,
21
- Sheet: () => Sheet,
22
- make: () => make
23
- });
24
- import * as Schema from "effect/Schema";
25
- import { addressFromA1Notation as addressFromA1Notation2, isFormula as isFormula2 } from "@dxos/compute-hyperformula";
26
- import { Annotation, Obj, Type } from "@dxos/echo";
27
- import { FormInputAnnotation } from "@dxos/echo/internal";
28
-
29
- // src/types/util.ts
30
- import { addressFromA1Notation, addressToA1Notation, isFormula } from "@dxos/compute-hyperformula";
31
- import { randomBytes } from "@dxos/crypto";
32
- import { invariant } from "@dxos/invariant";
33
- var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-sheet/src/types/util.ts";
34
- var MAX_ROWS = 500;
35
- var MAX_COLS = 676;
36
- var DEFAULT_ROWS = 50;
37
- var DEFAULT_COLS = 26;
38
- var ApiError = class extends Error {
39
- };
40
- var ReadonlyException = class extends ApiError {
41
- };
42
- var RangeException = class extends ApiError {
43
- constructor(n) {
44
- super();
45
- }
46
- };
47
- var createIndex = (length = 8) => {
48
- const characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
49
- const charactersLength = characters.length;
50
- const randomBuffer = randomBytes(length);
51
- return Array.from(randomBuffer, (byte) => characters[byte % charactersLength]).join("");
52
- };
53
- var createIndices = (length) => Array.from({
54
- length
55
- }).map(() => createIndex());
56
- var insertIndices = (indices, i, n, max) => {
57
- if (i + n > max) {
58
- throw new RangeException(i + n);
59
- }
60
- const idx = createIndices(n);
61
- indices.splice(i, 0, ...idx);
62
- return idx;
63
- };
64
- var initialize = (sheet, { rows = DEFAULT_ROWS, columns = DEFAULT_COLS } = {}) => {
65
- if (!sheet.rows.length) {
66
- insertIndices(sheet.rows, 0, rows, MAX_ROWS);
67
- }
68
- if (!sheet.columns.length) {
69
- insertIndices(sheet.columns, 0, columns, MAX_COLS);
70
- }
71
- };
72
- var addressToIndex = (sheet, cell) => {
73
- return `${sheet.columns[cell.col]}@${sheet.rows[cell.row]}`;
74
- };
75
- var addressFromIndex = (sheet, idx) => {
76
- const [column, row] = idx.split("@");
77
- return {
78
- col: sheet.columns.indexOf(column),
79
- row: sheet.rows.indexOf(row)
80
- };
81
- };
82
- var rangeToIndex = (sheet, range) => {
83
- return [
84
- range.from,
85
- range.to ?? range.from
86
- ].map((cell) => addressToIndex(sheet, cell)).join(":");
87
- };
88
- var rangeFromIndex = (sheet, idx) => {
89
- const [from, to] = idx.split(":").map((index) => addressFromIndex(sheet, index));
90
- return {
91
- from,
92
- to
93
- };
94
- };
95
- var compareIndexPositions = (sheet, indexA, indexB) => {
96
- const { row: rowA, col: columnA } = addressFromIndex(sheet, indexA);
97
- const { row: rowB, col: columnB } = addressFromIndex(sheet, indexB);
98
- if (rowA !== rowB) {
99
- return rowA - rowB;
100
- } else {
101
- return columnA - columnB;
102
- }
103
- };
104
- var mapFormulaRefsToIndices = (sheet, formula) => {
105
- invariant(isFormula(formula), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 96, S: void 0, A: ["isFormula(formula)", ""] });
106
- return formula.replace(/([a-zA-Z]+)([0-9]+)/g, (match) => {
107
- return addressToIndex(sheet, addressFromA1Notation(match));
108
- });
109
- };
110
- var mapFormulaIndicesToRefs = (sheet, formula) => {
111
- invariant(isFormula(formula), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 104, S: void 0, A: ["isFormula(formula)", ""] });
112
- return formula.replace(/([a-zA-Z0-9]+)@([a-zA-Z0-9]+)/g, (idx) => {
113
- return addressToA1Notation(addressFromIndex(sheet, idx));
114
- });
115
- };
116
-
117
- // src/types/Sheet.ts
118
- var CellValue = Schema.Struct({
119
- // TODO(burdon): How to store dates (datetime, date, time), percentages, etc.
120
- // Consider import/export; natural access for other plugins. Special handling for currency (precision).
121
- // TODO(burdon): Automerge (long string) or short string or number.
122
- value: Schema.Any
123
- });
124
- var Range = Schema.Struct({
125
- range: Schema.String,
126
- key: Schema.String,
127
- value: Schema.String
128
- });
129
- var RowColumnMeta = Schema.Struct({
130
- size: Schema.optional(Schema.Number)
131
- });
132
- var Sheet = Schema.Struct({
133
- name: Schema.optional(Schema.String),
134
- // Sparse map of cells referenced by index.
135
- cells: Schema.Record({
136
- key: Schema.String,
137
- value: CellValue
138
- }).pipe(FormInputAnnotation.set(false)),
139
- // Ordered row indices.
140
- rows: Schema.Array(Schema.String).pipe(FormInputAnnotation.set(false)),
141
- // Ordered column indices.
142
- columns: Schema.Array(Schema.String).pipe(FormInputAnnotation.set(false)),
143
- // Row metadata referenced by index.
144
- rowMeta: Schema.Record({
145
- key: Schema.String,
146
- value: RowColumnMeta
147
- }).pipe(FormInputAnnotation.set(false)),
148
- // Column metadata referenced by index.
149
- columnMeta: Schema.Record({
150
- key: Schema.String,
151
- value: RowColumnMeta
152
- }).pipe(FormInputAnnotation.set(false)),
153
- // Cell formatting referenced by indexed range.
154
- ranges: Schema.Array(Range).pipe(FormInputAnnotation.set(false))
155
- }).pipe(Type.object({
156
- typename: "org.dxos.type.sheet",
157
- version: "0.1.0"
158
- }), Annotation.IconAnnotation.set({
159
- icon: "ph--grid-nine--regular",
160
- hue: "indigo"
161
- }));
162
- var make = ({ name, cells = {}, ...size } = {}) => {
163
- const sheet = Obj.make(Sheet, {
164
- name,
165
- cells: {},
166
- rows: [],
167
- columns: [],
168
- rowMeta: {},
169
- columnMeta: {},
170
- ranges: []
171
- });
172
- Obj.update(sheet, (sheet2) => {
173
- initialize(sheet2, size);
174
- if (cells) {
175
- Object.entries(cells).forEach(([key, { value }]) => {
176
- const idx = addressToIndex(sheet2, addressFromA1Notation2(key));
177
- if (isFormula2(value)) {
178
- value = mapFormulaRefsToIndices(sheet2, value);
179
- }
180
- sheet2.cells[idx] = {
181
- value
182
- };
183
- });
184
- }
185
- });
186
- return sheet;
187
- };
188
-
189
- // src/types/sheet-range-types.ts
190
- var alignKey = "alignment";
191
- var commentKey = "comment";
192
- var styleKey = "style";
193
- var cellClassNameForRange = ({ key, value }) => {
194
- switch (key) {
195
- case alignKey:
196
- switch (value) {
197
- case "start":
198
- return "text-start";
199
- case "center":
200
- return "text-center";
201
- case "end":
202
- return "text-end";
203
- default:
204
- return void 0;
205
- }
206
- case commentKey:
207
- return "bg-grid-comment";
208
- case styleKey:
209
- switch (value) {
210
- case "highlight":
211
- return "bg-grid-highlight!";
212
- case "softwrap":
213
- return "whitespace-normal!";
214
- default:
215
- return void 0;
216
- }
217
- default:
218
- return void 0;
219
- }
220
- };
221
-
222
- // src/types/types.ts
223
- import * as Schema2 from "effect/Schema";
224
- var ActionAxis = Schema2.Union(Schema2.Literal("row"), Schema2.Literal("col"));
225
- (function(SheetAction2) {
226
- SheetAction2.RestoreAxis = Schema2.Struct({
227
- axis: ActionAxis,
228
- axisIndex: Schema2.String,
229
- index: Schema2.Number,
230
- axisMeta: RowColumnMeta,
231
- values: Schema2.Array(Schema2.Any)
232
- });
233
- })(SheetAction || (SheetAction = {}));
234
- var SheetAction;
235
-
236
- export {
237
- SheetCapabilities,
238
- MAX_ROWS,
239
- MAX_COLS,
240
- DEFAULT_ROWS,
241
- DEFAULT_COLS,
242
- ApiError,
243
- ReadonlyException,
244
- RangeException,
245
- createIndex,
246
- createIndices,
247
- insertIndices,
248
- initialize,
249
- addressToIndex,
250
- addressFromIndex,
251
- rangeToIndex,
252
- rangeFromIndex,
253
- compareIndexPositions,
254
- mapFormulaRefsToIndices,
255
- mapFormulaIndicesToRefs,
256
- Sheet_exports,
257
- alignKey,
258
- commentKey,
259
- styleKey,
260
- cellClassNameForRange,
261
- SheetAction
262
- };
263
- //# sourceMappingURL=chunk-4A2KAXTF.mjs.map
@@ -1,7 +0,0 @@
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
- }