@dxos/plugin-sheet 0.6.12-main.5cc132e → 0.6.12-main.78ddbdf

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 (256) hide show
  1. package/dist/lib/browser/SheetContainer-V4GCCZTX.mjs +261 -0
  2. package/dist/lib/browser/SheetContainer-V4GCCZTX.mjs.map +7 -0
  3. package/dist/lib/browser/{chunk-GNNVBNCX.mjs → chunk-6ZMQVB4Z.mjs} +358 -678
  4. package/dist/lib/browser/chunk-6ZMQVB4Z.mjs.map +7 -0
  5. package/dist/lib/browser/{chunk-JRL5LGCE.mjs → chunk-QILRZNE5.mjs} +2 -5
  6. package/dist/lib/browser/chunk-QILRZNE5.mjs.map +7 -0
  7. package/dist/lib/{node-esm/chunk-WUPTZUTX.mjs → browser/chunk-T3NJFTD4.mjs} +4 -14
  8. package/dist/lib/browser/chunk-T3NJFTD4.mjs.map +7 -0
  9. package/dist/lib/browser/{SheetContainer-Y7ZMFBAP.mjs → chunk-U2JHW3L6.mjs} +819 -498
  10. package/dist/lib/browser/chunk-U2JHW3L6.mjs.map +7 -0
  11. package/dist/lib/browser/graph-T27BOBOV.mjs +21 -0
  12. package/dist/lib/browser/graph-T27BOBOV.mjs.map +7 -0
  13. package/dist/lib/browser/index.mjs +58 -55
  14. package/dist/lib/browser/index.mjs.map +3 -3
  15. package/dist/lib/browser/meta.json +1 -1
  16. package/dist/lib/browser/meta.mjs +1 -1
  17. package/dist/lib/browser/types.mjs +4 -6
  18. package/dist/lib/node/SheetContainer-3ZY7MPWJ.cjs +279 -0
  19. package/dist/lib/node/SheetContainer-3ZY7MPWJ.cjs.map +7 -0
  20. package/dist/lib/node/{chunk-BJ6ZD7MN.cjs → chunk-BNARJ5GM.cjs} +5 -18
  21. package/dist/lib/node/chunk-BNARJ5GM.cjs.map +7 -0
  22. package/dist/lib/node/{chunk-ZRQZFV5T.cjs → chunk-DD6FIXWC.cjs} +359 -679
  23. package/dist/lib/node/chunk-DD6FIXWC.cjs.map +7 -0
  24. package/dist/lib/node/{SheetContainer-KEOKUKAQ.cjs → chunk-OTTD7FBK.cjs} +875 -551
  25. package/dist/lib/node/chunk-OTTD7FBK.cjs.map +7 -0
  26. package/dist/lib/node/{chunk-VJU3NPUJ.cjs → chunk-Q3HBHPRL.cjs} +8 -19
  27. package/dist/lib/node/chunk-Q3HBHPRL.cjs.map +7 -0
  28. package/dist/lib/node/graph-SPKGX7W4.cjs +43 -0
  29. package/dist/lib/node/graph-SPKGX7W4.cjs.map +7 -0
  30. package/dist/lib/node/index.cjs +75 -64
  31. package/dist/lib/node/index.cjs.map +3 -3
  32. package/dist/lib/node/meta.cjs +3 -3
  33. package/dist/lib/node/meta.cjs.map +1 -1
  34. package/dist/lib/node/meta.json +1 -1
  35. package/dist/lib/node/types.cjs +10 -12
  36. package/dist/lib/node/types.cjs.map +2 -2
  37. package/dist/lib/node-esm/SheetContainer-PXSJX6XK.mjs +262 -0
  38. package/dist/lib/node-esm/SheetContainer-PXSJX6XK.mjs.map +7 -0
  39. package/dist/lib/node-esm/{SheetContainer-Y7ZMFBAP.mjs → chunk-7HVSOTGA.mjs} +820 -498
  40. package/dist/lib/node-esm/chunk-7HVSOTGA.mjs.map +7 -0
  41. package/dist/lib/{browser/chunk-WUPTZUTX.mjs → node-esm/chunk-BMNA27EX.mjs} +5 -14
  42. package/dist/lib/node-esm/chunk-BMNA27EX.mjs.map +7 -0
  43. package/dist/lib/node-esm/{chunk-GNNVBNCX.mjs → chunk-D6KU5MI7.mjs} +359 -677
  44. package/dist/lib/node-esm/chunk-D6KU5MI7.mjs.map +7 -0
  45. package/dist/lib/node-esm/{chunk-JRL5LGCE.mjs → chunk-IU2L277A.mjs} +4 -5
  46. package/dist/lib/node-esm/chunk-IU2L277A.mjs.map +7 -0
  47. package/dist/lib/node-esm/graph-U67IO4UC.mjs +22 -0
  48. package/dist/lib/node-esm/graph-U67IO4UC.mjs.map +7 -0
  49. package/dist/lib/node-esm/index.mjs +59 -55
  50. package/dist/lib/node-esm/index.mjs.map +3 -3
  51. package/dist/lib/node-esm/meta.json +1 -1
  52. package/dist/lib/node-esm/meta.mjs +2 -1
  53. package/dist/lib/node-esm/types.mjs +5 -6
  54. package/dist/types/src/SheetPlugin.d.ts.map +1 -1
  55. package/dist/types/src/components/CellEditor/CellEditor.d.ts +23 -3
  56. package/dist/types/src/components/CellEditor/CellEditor.d.ts.map +1 -1
  57. package/dist/types/src/components/CellEditor/CellEditor.stories.d.ts +2 -2
  58. package/dist/types/src/components/CellEditor/CellEditor.stories.d.ts.map +1 -1
  59. package/dist/types/src/components/CellEditor/extension.d.ts +1 -1
  60. package/dist/types/src/components/CellEditor/extension.d.ts.map +1 -1
  61. package/dist/types/src/components/ComputeGraph/ComputeGraphContextProvider.d.ts +11 -0
  62. package/dist/types/src/components/ComputeGraph/ComputeGraphContextProvider.d.ts.map +1 -0
  63. package/dist/types/src/components/ComputeGraph/index.d.ts +1 -3
  64. package/dist/types/src/components/ComputeGraph/index.d.ts.map +1 -1
  65. package/dist/types/src/components/GridSheet/GridSheet.d.ts +10 -0
  66. package/dist/types/src/components/GridSheet/GridSheet.d.ts.map +1 -0
  67. package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts +9 -0
  68. package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts.map +1 -0
  69. package/dist/types/src/components/GridSheet/util.d.ts +7 -0
  70. package/dist/types/src/components/GridSheet/util.d.ts.map +1 -0
  71. package/dist/types/src/components/Sheet/Sheet.d.ts +1 -1
  72. package/dist/types/src/components/Sheet/Sheet.d.ts.map +1 -1
  73. package/dist/types/src/components/Sheet/Sheet.stories.d.ts +5 -6
  74. package/dist/types/src/components/Sheet/Sheet.stories.d.ts.map +1 -1
  75. package/dist/types/src/components/Sheet/grid.d.ts +2 -2
  76. package/dist/types/src/components/Sheet/grid.d.ts.map +1 -1
  77. package/dist/types/src/components/Sheet/nav.d.ts +3 -3
  78. package/dist/types/src/components/Sheet/nav.d.ts.map +1 -1
  79. package/dist/types/src/components/Sheet/sheet-context.d.ts +4 -5
  80. package/dist/types/src/components/Sheet/sheet-context.d.ts.map +1 -1
  81. package/dist/types/src/components/Sheet/threads.d.ts.map +1 -1
  82. package/dist/types/src/components/SheetContainer.d.ts +1 -1
  83. package/dist/types/src/components/SheetContainer.d.ts.map +1 -1
  84. package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +1 -1
  85. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts +1 -1
  86. package/dist/types/src/components/index.d.ts +2 -1
  87. package/dist/types/src/components/index.d.ts.map +1 -1
  88. package/dist/types/src/defs/index.d.ts +3 -0
  89. package/dist/types/src/defs/index.d.ts.map +1 -0
  90. package/dist/types/src/{model → defs}/types.d.ts +8 -3
  91. package/dist/types/src/defs/types.d.ts.map +1 -0
  92. package/dist/types/src/defs/types.test.d.ts.map +1 -0
  93. package/dist/types/src/{model → defs}/util.d.ts +8 -4
  94. package/dist/types/src/defs/util.d.ts.map +1 -0
  95. package/dist/types/src/extensions/compute.d.ts +5 -0
  96. package/dist/types/src/extensions/compute.d.ts.map +1 -0
  97. package/dist/types/src/extensions/compute.stories.d.ts +26 -0
  98. package/dist/types/src/extensions/compute.stories.d.ts.map +1 -0
  99. package/dist/types/src/extensions/index.d.ts +2 -0
  100. package/dist/types/src/extensions/index.d.ts.map +1 -0
  101. package/dist/types/src/{components/ComputeGraph → graph}/async-function.d.ts +1 -1
  102. package/dist/types/src/graph/async-function.d.ts.map +1 -0
  103. package/dist/types/src/graph/compute-graph.browser.test.d.ts +2 -0
  104. package/dist/types/src/graph/compute-graph.browser.test.d.ts.map +1 -0
  105. package/dist/types/src/graph/compute-graph.d.ts +81 -0
  106. package/dist/types/src/graph/compute-graph.d.ts.map +1 -0
  107. package/dist/types/src/graph/compute-graph.stories.d.ts +10 -0
  108. package/dist/types/src/graph/compute-graph.stories.d.ts.map +1 -0
  109. package/dist/types/src/graph/compute-node.d.ts +19 -0
  110. package/dist/types/src/graph/compute-node.d.ts.map +1 -0
  111. package/dist/types/src/{components/ComputeGraph/custom.d.ts → graph/custom-function.d.ts} +1 -1
  112. package/dist/types/src/graph/custom-function.d.ts.map +1 -0
  113. package/dist/types/src/graph/edge-function.d.ts.map +1 -0
  114. package/dist/types/src/{model/functions.d.ts → graph/function-defs.d.ts} +1 -1
  115. package/dist/types/src/graph/function-defs.d.ts.map +1 -0
  116. package/dist/types/src/graph/hyperformula.test.d.ts +2 -0
  117. package/dist/types/src/graph/hyperformula.test.d.ts.map +1 -0
  118. package/dist/types/src/graph/index.d.ts +4 -0
  119. package/dist/types/src/graph/index.d.ts.map +1 -0
  120. package/dist/types/src/graph/util.d.ts +2 -0
  121. package/dist/types/src/graph/util.d.ts.map +1 -0
  122. package/dist/types/src/hooks/hooks.stories.d.ts +11 -0
  123. package/dist/types/src/hooks/hooks.stories.d.ts.map +1 -0
  124. package/dist/types/src/hooks/index.d.ts +4 -0
  125. package/dist/types/src/hooks/index.d.ts.map +1 -0
  126. package/dist/types/src/hooks/useComputeGraph.d.ts +7 -0
  127. package/dist/types/src/hooks/useComputeGraph.d.ts.map +1 -0
  128. package/dist/types/src/hooks/useFormattingModel.d.ts +3 -0
  129. package/dist/types/src/hooks/useFormattingModel.d.ts.map +1 -0
  130. package/dist/types/src/hooks/useSheetModel.d.ts +8 -0
  131. package/dist/types/src/hooks/useSheetModel.d.ts.map +1 -0
  132. package/dist/types/src/meta.d.ts +1 -4
  133. package/dist/types/src/meta.d.ts.map +1 -1
  134. package/dist/types/src/model/formatting-model.d.ts +16 -0
  135. package/dist/types/src/model/formatting-model.d.ts.map +1 -0
  136. package/dist/types/src/model/index.d.ts +2 -4
  137. package/dist/types/src/model/index.d.ts.map +1 -1
  138. package/dist/types/src/model/{model.d.ts → sheet-model.d.ts} +9 -48
  139. package/dist/types/src/model/sheet-model.d.ts.map +1 -0
  140. package/dist/types/src/sanity.test.d.ts +2 -0
  141. package/dist/types/src/sanity.test.d.ts.map +1 -0
  142. package/dist/types/src/testing/index.d.ts +2 -0
  143. package/dist/types/src/testing/index.d.ts.map +1 -0
  144. package/dist/types/src/testing/testing.d.ts +9 -0
  145. package/dist/types/src/testing/testing.d.ts.map +1 -0
  146. package/dist/types/src/types.d.ts +12 -2
  147. package/dist/types/src/types.d.ts.map +1 -1
  148. package/dist/vendor/hyperformula.mjs +37145 -0
  149. package/package.json +41 -38
  150. package/src/SheetPlugin.tsx +39 -59
  151. package/src/components/CellEditor/CellEditor.stories.tsx +4 -3
  152. package/src/components/CellEditor/CellEditor.tsx +59 -9
  153. package/src/components/CellEditor/extension.test.ts +3 -3
  154. package/src/components/CellEditor/extension.ts +1 -3
  155. package/src/components/ComputeGraph/ComputeGraphContextProvider.tsx +20 -0
  156. package/src/components/ComputeGraph/index.ts +1 -3
  157. package/src/components/GridSheet/GridSheet.stories.tsx +36 -0
  158. package/src/components/GridSheet/GridSheet.tsx +153 -0
  159. package/src/components/GridSheet/util.ts +108 -0
  160. package/src/components/Sheet/Sheet.stories.tsx +41 -82
  161. package/src/components/Sheet/Sheet.tsx +12 -10
  162. package/src/components/Sheet/grid.ts +3 -3
  163. package/src/components/Sheet/nav.ts +19 -19
  164. package/src/components/Sheet/sheet-context.tsx +10 -80
  165. package/src/components/Sheet/threads.tsx +10 -6
  166. package/src/components/SheetContainer.tsx +2 -2
  167. package/src/components/Toolbar/Toolbar.tsx +1 -2
  168. package/src/components/index.ts +1 -0
  169. package/src/defs/index.ts +6 -0
  170. package/src/{model → defs}/types.test.ts +7 -7
  171. package/src/{model → defs}/types.ts +23 -14
  172. package/src/{model → defs}/util.ts +49 -17
  173. package/src/extensions/compute.stories.tsx +151 -0
  174. package/src/extensions/compute.ts +98 -0
  175. package/src/extensions/index.ts +5 -0
  176. package/src/{components/ComputeGraph → graph}/async-function.ts +3 -1
  177. package/src/graph/compute-graph.browser.test.ts +104 -0
  178. package/src/graph/compute-graph.stories.tsx +92 -0
  179. package/src/graph/compute-graph.ts +290 -0
  180. package/src/graph/compute-node.ts +51 -0
  181. package/src/{components/ComputeGraph/custom.ts → graph/custom-function.ts} +2 -6
  182. package/src/{components/ComputeGraph → graph}/edge-function.ts +2 -1
  183. package/src/graph/hyperformula.test.ts +15 -0
  184. package/src/graph/index.ts +7 -0
  185. package/src/graph/util.ts +8 -0
  186. package/src/hooks/hooks.stories.tsx +50 -0
  187. package/src/hooks/index.ts +7 -0
  188. package/src/hooks/useComputeGraph.ts +20 -0
  189. package/src/hooks/useFormattingModel.ts +11 -0
  190. package/src/hooks/useSheetModel.ts +43 -0
  191. package/src/meta.tsx +1 -5
  192. package/src/{components/Sheet/formatting.ts → model/formatting-model.ts} +20 -13
  193. package/src/model/index.ts +2 -4
  194. package/src/model/{model.ts → sheet-model.ts} +67 -184
  195. package/src/sanity.test.ts +40 -0
  196. package/src/testing/index.ts +5 -0
  197. package/src/testing/testing.tsx +66 -0
  198. package/src/types.ts +14 -12
  199. package/dist/lib/browser/SheetContainer-Y7ZMFBAP.mjs.map +0 -7
  200. package/dist/lib/browser/chunk-GNNVBNCX.mjs.map +0 -7
  201. package/dist/lib/browser/chunk-JRL5LGCE.mjs.map +0 -7
  202. package/dist/lib/browser/chunk-PGKZPKUD.mjs +0 -175
  203. package/dist/lib/browser/chunk-PGKZPKUD.mjs.map +0 -7
  204. package/dist/lib/browser/chunk-VBF7YENS.mjs +0 -8
  205. package/dist/lib/browser/chunk-VBF7YENS.mjs.map +0 -7
  206. package/dist/lib/browser/chunk-WUPTZUTX.mjs.map +0 -7
  207. package/dist/lib/browser/testing.mjs +0 -92
  208. package/dist/lib/browser/testing.mjs.map +0 -7
  209. package/dist/lib/node/SheetContainer-KEOKUKAQ.cjs.map +0 -7
  210. package/dist/lib/node/chunk-57PB2HPY.cjs +0 -40
  211. package/dist/lib/node/chunk-57PB2HPY.cjs.map +0 -7
  212. package/dist/lib/node/chunk-6LWBQAQZ.cjs +0 -202
  213. package/dist/lib/node/chunk-6LWBQAQZ.cjs.map +0 -7
  214. package/dist/lib/node/chunk-BJ6ZD7MN.cjs.map +0 -7
  215. package/dist/lib/node/chunk-VJU3NPUJ.cjs.map +0 -7
  216. package/dist/lib/node/chunk-ZRQZFV5T.cjs.map +0 -7
  217. package/dist/lib/node/testing.cjs +0 -111
  218. package/dist/lib/node/testing.cjs.map +0 -7
  219. package/dist/lib/node-esm/SheetContainer-Y7ZMFBAP.mjs.map +0 -7
  220. package/dist/lib/node-esm/chunk-GNNVBNCX.mjs.map +0 -7
  221. package/dist/lib/node-esm/chunk-JRL5LGCE.mjs.map +0 -7
  222. package/dist/lib/node-esm/chunk-PGKZPKUD.mjs +0 -175
  223. package/dist/lib/node-esm/chunk-PGKZPKUD.mjs.map +0 -7
  224. package/dist/lib/node-esm/chunk-VBF7YENS.mjs +0 -8
  225. package/dist/lib/node-esm/chunk-VBF7YENS.mjs.map +0 -7
  226. package/dist/lib/node-esm/chunk-WUPTZUTX.mjs.map +0 -7
  227. package/dist/lib/node-esm/testing.mjs +0 -92
  228. package/dist/lib/node-esm/testing.mjs.map +0 -7
  229. package/dist/types/src/components/ComputeGraph/async-function.d.ts.map +0 -1
  230. package/dist/types/src/components/ComputeGraph/custom.d.ts.map +0 -1
  231. package/dist/types/src/components/ComputeGraph/edge-function.d.ts.map +0 -1
  232. package/dist/types/src/components/ComputeGraph/graph-context.d.ts +0 -12
  233. package/dist/types/src/components/ComputeGraph/graph-context.d.ts.map +0 -1
  234. package/dist/types/src/components/ComputeGraph/graph.browser.test.d.ts +0 -2
  235. package/dist/types/src/components/ComputeGraph/graph.browser.test.d.ts.map +0 -1
  236. package/dist/types/src/components/ComputeGraph/graph.d.ts +0 -26
  237. package/dist/types/src/components/ComputeGraph/graph.d.ts.map +0 -1
  238. package/dist/types/src/components/Sheet/formatting.d.ts +0 -14
  239. package/dist/types/src/components/Sheet/formatting.d.ts.map +0 -1
  240. package/dist/types/src/model/functions.d.ts.map +0 -1
  241. package/dist/types/src/model/model.browser.test.d.ts +0 -2
  242. package/dist/types/src/model/model.browser.test.d.ts.map +0 -1
  243. package/dist/types/src/model/model.d.ts.map +0 -1
  244. package/dist/types/src/model/types.d.ts.map +0 -1
  245. package/dist/types/src/model/types.test.d.ts.map +0 -1
  246. package/dist/types/src/model/util.d.ts.map +0 -1
  247. package/dist/types/src/testing.d.ts +0 -9
  248. package/dist/types/src/testing.d.ts.map +0 -1
  249. package/src/components/ComputeGraph/graph-context.tsx +0 -50
  250. package/src/components/ComputeGraph/graph.browser.test.ts +0 -49
  251. package/src/components/ComputeGraph/graph.ts +0 -62
  252. package/src/model/model.browser.test.ts +0 -99
  253. package/src/testing.ts +0 -50
  254. /package/dist/types/src/{model → defs}/types.test.d.ts +0 -0
  255. /package/dist/types/src/{components/ComputeGraph → graph}/edge-function.d.ts +0 -0
  256. /package/src/{model/functions.ts → graph/function-defs.ts} +0 -0
@@ -32,15 +32,14 @@ __export(node_exports, {
32
32
  default: () => src_default
33
33
  });
34
34
  module.exports = __toCommonJS(node_exports);
35
- var import_chunk_57PB2HPY = require("./chunk-57PB2HPY.cjs");
36
- var import_chunk_6LWBQAQZ = require("./chunk-6LWBQAQZ.cjs");
37
- var import_chunk_ZRQZFV5T = require("./chunk-ZRQZFV5T.cjs");
38
- var import_chunk_VJU3NPUJ = require("./chunk-VJU3NPUJ.cjs");
39
- var import_chunk_BJ6ZD7MN = require("./chunk-BJ6ZD7MN.cjs");
35
+ var import_chunk_OTTD7FBK = require("./chunk-OTTD7FBK.cjs");
36
+ var import_chunk_Q3HBHPRL = require("./chunk-Q3HBHPRL.cjs");
37
+ var import_chunk_BNARJ5GM = require("./chunk-BNARJ5GM.cjs");
38
+ var import_chunk_DD6FIXWC = require("./chunk-DD6FIXWC.cjs");
40
39
  var import_react = require("@phosphor-icons/react");
41
40
  var import_react2 = __toESM(require("react"));
42
41
  var import_app_framework = require("@dxos/app-framework");
43
- var import_echo_schema = require("@dxos/echo-schema");
42
+ var import_invariant = require("@dxos/invariant");
44
43
  var import_plugin_client = require("@dxos/plugin-client");
45
44
  var import_plugin_graph = require("@dxos/plugin-graph");
46
45
  var import_types = require("@dxos/plugin-script/types");
@@ -49,7 +48,7 @@ var import_echo = require("@dxos/react-client/echo");
49
48
  var translations_default = [
50
49
  {
51
50
  "en-US": {
52
- [import_chunk_BJ6ZD7MN.SHEET_PLUGIN]: {
51
+ [import_chunk_BNARJ5GM.SHEET_PLUGIN]: {
53
52
  "plugin name": "Sheets",
54
53
  "sheet title placeholder": "New sheet",
55
54
  "create sheet label": "Create sheet",
@@ -67,56 +66,82 @@ var translations_default = [
67
66
  }
68
67
  }
69
68
  ];
69
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-sheet/src/SheetPlugin.tsx";
70
70
  var SheetPlugin = () => {
71
- let remoteFunctionUrl;
72
- const graphs = (0, import_echo_schema.create)({});
73
- const setGraph = (key, graph) => {
74
- graphs[key] = graph;
75
- };
71
+ let graphRegistry;
76
72
  return {
77
- meta: import_chunk_BJ6ZD7MN.meta_default,
73
+ meta: import_chunk_BNARJ5GM.meta_default,
78
74
  ready: async (plugins) => {
79
75
  const client = (0, import_app_framework.resolvePlugin)(plugins, import_plugin_client.parseClientPlugin)?.provides.client;
80
- if (!client) {
81
- return;
82
- }
76
+ (0, import_invariant.invariant)(client, void 0, {
77
+ F: __dxlog_file,
78
+ L: 30,
79
+ S: void 0,
80
+ A: [
81
+ "client",
82
+ ""
83
+ ]
84
+ });
85
+ let remoteFunctionUrl;
83
86
  if (client.config.values.runtime?.services?.edge?.url) {
84
87
  const url = new URL("/functions", client.config.values.runtime?.services?.edge?.url);
85
88
  url.protocol = "https";
86
89
  remoteFunctionUrl = url.toString();
87
90
  }
91
+ const { createComputeGraphRegistry } = await import("./graph-SPKGX7W4.cjs");
92
+ graphRegistry = createComputeGraphRegistry({
93
+ remoteFunctionUrl
94
+ });
88
95
  },
89
96
  provides: {
90
97
  context: ({ children }) => {
91
- return /* @__PURE__ */ import_react2.default.createElement(import_chunk_6LWBQAQZ.ComputeGraphContextProvider, {
92
- graphs,
93
- setGraph
98
+ (0, import_invariant.invariant)(graphRegistry, void 0, {
99
+ F: __dxlog_file,
100
+ L: 44,
101
+ S: void 0,
102
+ A: [
103
+ "graphRegistry",
104
+ ""
105
+ ]
106
+ });
107
+ return /* @__PURE__ */ import_react2.default.createElement(import_chunk_OTTD7FBK.ComputeGraphContextProvider, {
108
+ registry: graphRegistry
94
109
  }, children);
95
110
  },
96
111
  metadata: {
97
112
  records: {
98
- [import_chunk_VJU3NPUJ.SheetType.typename]: {
99
- label: (object) => object instanceof import_chunk_VJU3NPUJ.SheetType ? object.title : void 0,
113
+ [import_chunk_Q3HBHPRL.SheetType.typename]: {
114
+ label: (object) => object instanceof import_chunk_Q3HBHPRL.SheetType ? object.title : void 0,
100
115
  placeholder: [
101
116
  "sheet title placeholder",
102
117
  {
103
- ns: import_chunk_BJ6ZD7MN.SHEET_PLUGIN
118
+ ns: import_chunk_BNARJ5GM.SHEET_PLUGIN
104
119
  }
105
120
  ],
106
- icon: (props) => /* @__PURE__ */ import_react2.default.createElement(import_react.GridNine, props),
107
- iconSymbol: "ph--grid-nine--regular"
121
+ icon: "ph--grid-nine--regular"
108
122
  }
109
123
  }
110
124
  },
111
125
  translations: translations_default,
112
126
  echo: {
113
127
  // TODO(wittjosiah): Factor out to common package/plugin.
114
- // FunctionType is currently registered here in case script plugin isn't enabled.
128
+ // FunctionType is currently registered here in case script plugin isn't enabled.
115
129
  schema: [
116
- import_chunk_VJU3NPUJ.SheetType,
130
+ import_chunk_Q3HBHPRL.SheetType,
117
131
  import_types.FunctionType
118
132
  ]
119
133
  },
134
+ space: {
135
+ onSpaceCreate: {
136
+ label: [
137
+ "create sheet label",
138
+ {
139
+ ns: import_chunk_BNARJ5GM.SHEET_PLUGIN
140
+ }
141
+ ],
142
+ action: import_chunk_Q3HBHPRL.SheetAction.CREATE
143
+ }
144
+ },
120
145
  graph: {
121
146
  builder: (plugins) => {
122
147
  const client = (0, import_app_framework.resolvePlugin)(plugins, import_plugin_client.parseClientPlugin)?.provides.client;
@@ -125,7 +150,7 @@ var SheetPlugin = () => {
125
150
  return [];
126
151
  }
127
152
  return (0, import_plugin_graph.createExtension)({
128
- id: import_chunk_VJU3NPUJ.SheetAction.CREATE,
153
+ id: import_chunk_Q3HBHPRL.SheetAction.CREATE,
129
154
  filter: (node) => (0, import_plugin_graph.isActionGroup)(node) && node.id.startsWith(import_plugin_space.SpaceAction.ADD_OBJECT),
130
155
  actions: ({ node }) => {
131
156
  const id = node.id.split("/").at(-1);
@@ -138,12 +163,12 @@ var SheetPlugin = () => {
138
163
  }
139
164
  return [
140
165
  {
141
- id: `${import_chunk_BJ6ZD7MN.SHEET_PLUGIN}/create/${node.id}`,
166
+ id: `${import_chunk_BNARJ5GM.SHEET_PLUGIN}/create/${node.id}`,
142
167
  data: async () => {
143
168
  await dispatch([
144
169
  {
145
- plugin: import_chunk_BJ6ZD7MN.SHEET_PLUGIN,
146
- action: import_chunk_VJU3NPUJ.SheetAction.CREATE,
170
+ plugin: import_chunk_BNARJ5GM.SHEET_PLUGIN,
171
+ action: import_chunk_Q3HBHPRL.SheetAction.CREATE,
147
172
  data: {
148
173
  space
149
174
  }
@@ -163,11 +188,10 @@ var SheetPlugin = () => {
163
188
  label: [
164
189
  "create sheet label",
165
190
  {
166
- ns: import_chunk_BJ6ZD7MN.SHEET_PLUGIN
191
+ ns: import_chunk_BNARJ5GM.SHEET_PLUGIN
167
192
  }
168
193
  ],
169
- icon: (props) => /* @__PURE__ */ import_react2.default.createElement(import_react.GridNine, props),
170
- iconSymbol: "ph--grid-nine--regular",
194
+ icon: "ph--grid-nine--regular",
171
195
  testId: "sheetPlugin.createObject"
172
196
  }
173
197
  }
@@ -176,6 +200,12 @@ var SheetPlugin = () => {
176
200
  });
177
201
  }
178
202
  },
203
+ markdown: {
204
+ // TODO(burdon): Construct compute node.
205
+ extensions: ({ document }) => {
206
+ return void 0;
207
+ }
208
+ },
179
209
  stack: {
180
210
  creators: [
181
211
  {
@@ -184,39 +214,38 @@ var SheetPlugin = () => {
184
214
  type: [
185
215
  "plugin name",
186
216
  {
187
- ns: import_chunk_BJ6ZD7MN.SHEET_PLUGIN
217
+ ns: import_chunk_BNARJ5GM.SHEET_PLUGIN
188
218
  }
189
219
  ],
190
220
  label: [
191
221
  "create sheet section label",
192
222
  {
193
- ns: import_chunk_BJ6ZD7MN.SHEET_PLUGIN
223
+ ns: import_chunk_BNARJ5GM.SHEET_PLUGIN
194
224
  }
195
225
  ],
196
226
  icon: (props) => /* @__PURE__ */ import_react2.default.createElement(import_react.GridNine, props),
197
227
  intent: {
198
- plugin: import_chunk_BJ6ZD7MN.SHEET_PLUGIN,
199
- action: import_chunk_VJU3NPUJ.SheetAction.CREATE
228
+ plugin: import_chunk_BNARJ5GM.SHEET_PLUGIN,
229
+ action: import_chunk_Q3HBHPRL.SheetAction.CREATE
200
230
  }
201
231
  }
202
232
  ]
203
233
  },
204
234
  thread: {
205
- predicate: (data) => data instanceof import_chunk_VJU3NPUJ.SheetType,
206
- createSort: (sheet) => (anchorA, anchorB) => !anchorA || !anchorB ? 0 : (0, import_chunk_ZRQZFV5T.compareIndexPositions)(sheet, anchorA, anchorB)
235
+ predicate: (data) => data instanceof import_chunk_Q3HBHPRL.SheetType,
236
+ createSort: (sheet) => (indexA, indexB) => !indexA || !indexB ? 0 : (0, import_chunk_OTTD7FBK.compareIndexPositions)(sheet, indexA, indexB)
207
237
  },
208
238
  surface: {
209
- component: ({ data, role = "never" }) => {
239
+ component: ({ data, role }) => {
210
240
  const space = (0, import_echo.isEchoObject)(data.object) && (0, import_echo.getSpace)(data.object);
211
- if (space && data.object instanceof import_chunk_VJU3NPUJ.SheetType) {
241
+ if (space && data.object instanceof import_chunk_Q3HBHPRL.SheetType) {
212
242
  switch (role) {
213
243
  case "article":
214
244
  case "section": {
215
- return /* @__PURE__ */ import_react2.default.createElement(import_chunk_57PB2HPY.SheetContainer, {
245
+ return /* @__PURE__ */ import_react2.default.createElement(import_chunk_OTTD7FBK.SheetContainer, {
216
246
  sheet: data.object,
217
247
  space,
218
- role,
219
- remoteFunctionUrl
248
+ role
220
249
  });
221
250
  }
222
251
  }
@@ -227,27 +256,9 @@ var SheetPlugin = () => {
227
256
  intent: {
228
257
  resolver: async (intent) => {
229
258
  switch (intent.action) {
230
- case import_chunk_VJU3NPUJ.SheetAction.CREATE: {
231
- const space = intent.data?.space;
232
- const sheet = (0, import_chunk_VJU3NPUJ.createSheet)();
233
- const graph = graphs[space.id] ?? (0, import_chunk_ZRQZFV5T.createComputeGraph)([
234
- {
235
- plugin: import_chunk_6LWBQAQZ.EdgeFunctionPlugin,
236
- translations: import_chunk_6LWBQAQZ.EdgeFunctionPluginTranslations
237
- },
238
- // TODO(wittjosiah): Remove. Needed for current test sheet generated data.
239
- {
240
- plugin: import_chunk_ZRQZFV5T.CustomPlugin,
241
- translations: import_chunk_ZRQZFV5T.CustomPluginTranslations
242
- }
243
- ], space, {
244
- remoteFunctionUrl
245
- });
246
- const model = new import_chunk_ZRQZFV5T.SheetModel(graph, sheet);
247
- await model.initialize();
248
- await model.destroy();
259
+ case import_chunk_Q3HBHPRL.SheetAction.CREATE: {
249
260
  return {
250
- data: sheet
261
+ data: (0, import_chunk_OTTD7FBK.createSheet)()
251
262
  };
252
263
  }
253
264
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/SheetPlugin.tsx", "../../../src/translations.ts", "../../../src/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type IconProps, GridNine } from '@phosphor-icons/react';\nimport React from 'react';\n\nimport { NavigationAction, parseIntentPlugin, resolvePlugin, type PluginDefinition } from '@dxos/app-framework';\nimport { create } from '@dxos/echo-schema';\nimport { parseClientPlugin } from '@dxos/plugin-client';\nimport { type ActionGroup, createExtension, isActionGroup } from '@dxos/plugin-graph';\nimport { FunctionType } from '@dxos/plugin-script/types';\nimport { SpaceAction } from '@dxos/plugin-space';\nimport { getSpace, isEchoObject } from '@dxos/react-client/echo';\n\nimport {\n createComputeGraph,\n CustomPlugin,\n CustomPluginTranslations,\n SheetContainer,\n type ComputeGraph,\n} from './components';\n// TODO(wittjosiah): Refactor. These are not exported from ./components due to depending on ECHO.\nimport { EdgeFunctionPlugin, EdgeFunctionPluginTranslations } from './components/ComputeGraph/edge-function';\nimport { ComputeGraphContextProvider } from './components/ComputeGraph/graph-context';\nimport meta, { SHEET_PLUGIN } from './meta';\nimport { compareIndexPositions, SheetModel } from './model';\nimport translations from './translations';\nimport { createSheet, SheetAction, type SheetPluginProvides, SheetType } from './types';\n\nexport const SheetPlugin = (): PluginDefinition<SheetPluginProvides> => {\n let remoteFunctionUrl: string | undefined;\n\n const graphs = create<Record<string, ComputeGraph>>({});\n const setGraph = (key: string, graph: ComputeGraph) => {\n graphs[key] = graph;\n };\n\n return {\n meta,\n ready: async (plugins) => {\n const client = resolvePlugin(plugins, parseClientPlugin)?.provides.client;\n if (!client) {\n return;\n }\n\n if (client.config.values.runtime?.services?.edge?.url) {\n const url = new URL('/functions', client.config.values.runtime?.services?.edge?.url);\n url.protocol = 'https';\n remoteFunctionUrl = url.toString();\n }\n },\n provides: {\n context: ({ children }) => {\n return (\n <ComputeGraphContextProvider graphs={graphs} setGraph={setGraph}>\n {children}\n </ComputeGraphContextProvider>\n );\n },\n metadata: {\n records: {\n [SheetType.typename]: {\n label: (object: any) => (object instanceof SheetType ? object.title : undefined),\n placeholder: ['sheet title placeholder', { ns: SHEET_PLUGIN }],\n icon: (props: IconProps) => <GridNine {...props} />,\n iconSymbol: 'ph--grid-nine--regular',\n },\n },\n },\n translations,\n echo: {\n // TODO(wittjosiah): Factor out to common package/plugin.\n // FunctionType is currently registered here in case script plugin isn't enabled.\n schema: [SheetType, FunctionType],\n },\n graph: {\n builder: (plugins) => {\n const client = resolvePlugin(plugins, parseClientPlugin)?.provides.client;\n const dispatch = resolvePlugin(plugins, parseIntentPlugin)?.provides.intent.dispatch;\n if (!client || !dispatch) {\n return [];\n }\n\n return createExtension({\n id: SheetAction.CREATE,\n filter: (node): node is ActionGroup => isActionGroup(node) && node.id.startsWith(SpaceAction.ADD_OBJECT),\n actions: ({ node }) => {\n const id = node.id.split('/').at(-1);\n const [spaceId, objectId] = id?.split(':') ?? [];\n const space = client.spaces.get().find((space) => space.id === spaceId);\n const object = objectId && space?.db.getObjectById(objectId);\n const target = objectId ? object : space;\n if (!target) {\n return;\n }\n\n return [\n {\n id: `${SHEET_PLUGIN}/create/${node.id}`,\n data: async () => {\n await dispatch([\n { plugin: SHEET_PLUGIN, action: SheetAction.CREATE, data: { space } },\n { action: SpaceAction.ADD_OBJECT, data: { target } },\n { action: NavigationAction.OPEN },\n ]);\n },\n properties: {\n label: ['create sheet label', { ns: SHEET_PLUGIN }],\n icon: (props: IconProps) => <GridNine {...props} />,\n iconSymbol: 'ph--grid-nine--regular',\n testId: 'sheetPlugin.createObject',\n },\n },\n ];\n },\n });\n },\n },\n stack: {\n creators: [\n {\n id: 'create-stack-section-sheet',\n testId: 'sheetPlugin.createSection',\n type: ['plugin name', { ns: SHEET_PLUGIN }],\n label: ['create sheet section label', { ns: SHEET_PLUGIN }],\n icon: (props: any) => <GridNine {...props} />,\n intent: {\n plugin: SHEET_PLUGIN,\n action: SheetAction.CREATE,\n },\n },\n ],\n },\n thread: {\n predicate: (data) => data instanceof SheetType,\n createSort: (sheet) => (anchorA, anchorB) =>\n !anchorA || !anchorB ? 0 : compareIndexPositions(sheet, anchorA, anchorB),\n },\n surface: {\n component: ({ data, role = 'never' }) => {\n // TODO(burdon): Standardize wrapper (with room for toolbar).\n const space = isEchoObject(data.object) && getSpace(data.object);\n if (space && data.object instanceof SheetType) {\n switch (role) {\n case 'article':\n case 'section': {\n return (\n <SheetContainer sheet={data.object} space={space} role={role} remoteFunctionUrl={remoteFunctionUrl} />\n );\n }\n }\n }\n\n return null;\n },\n },\n intent: {\n resolver: async (intent) => {\n switch (intent.action) {\n case SheetAction.CREATE: {\n const space = intent.data?.space;\n const sheet = createSheet();\n const graph =\n graphs[space.id] ??\n createComputeGraph(\n [\n { plugin: EdgeFunctionPlugin, translations: EdgeFunctionPluginTranslations },\n // TODO(wittjosiah): Remove. Needed for current test sheet generated data.\n { plugin: CustomPlugin, translations: CustomPluginTranslations },\n ],\n space,\n { remoteFunctionUrl },\n );\n const model = new SheetModel(graph, sheet);\n await model.initialize();\n await model.destroy();\n return { data: sheet };\n }\n }\n },\n },\n },\n };\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { SHEET_PLUGIN } from './meta';\n\nexport default [\n {\n 'en-US': {\n [SHEET_PLUGIN]: {\n 'plugin name': 'Sheets',\n 'sheet title placeholder': 'New sheet',\n 'create sheet label': 'Create sheet',\n 'create sheet section label': 'Create sheet',\n 'cell placeholder': 'Cell value...',\n 'toolbar left label': 'Align left',\n 'toolbar left center': 'Align center',\n 'toolbar left right': 'Align right',\n 'selection overlaps existing comment label': 'Selected cell already has a comment',\n 'comment label': 'Add comment',\n 'comment ranges not supported label': 'Commenting on ranges is not yet supported',\n 'no cursor label': 'Select a cell to comment',\n 'open comment for sheet cell': 'View comments for cell',\n },\n },\n },\n] as const;\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { SheetPlugin } from './SheetPlugin';\n\nexport default SheetPlugin;\n\nexport * from './SheetPlugin';\n"],
5
- "mappings": "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",
6
- "names": ["import_react", "SHEET_PLUGIN", "SheetPlugin", "remoteFunctionUrl", "graphs", "create", "setGraph", "key", "graph", "meta", "ready", "plugins", "client", "resolvePlugin", "parseClientPlugin", "provides", "config", "values", "runtime", "services", "edge", "url", "URL", "protocol", "toString", "context", "children", "React", "ComputeGraphContextProvider", "metadata", "records", "SheetType", "typename", "label", "object", "title", "undefined", "placeholder", "ns", "icon", "props", "GridNine", "iconSymbol", "translations", "echo", "schema", "FunctionType", "builder", "dispatch", "parseIntentPlugin", "intent", "createExtension", "id", "SheetAction", "CREATE", "filter", "node", "isActionGroup", "startsWith", "SpaceAction", "ADD_OBJECT", "actions", "split", "at", "spaceId", "objectId", "space", "spaces", "get", "find", "db", "getObjectById", "target", "data", "plugin", "action", "NavigationAction", "OPEN", "properties", "testId", "stack", "creators", "type", "thread", "predicate", "createSort", "sheet", "anchorA", "anchorB", "compareIndexPositions", "surface", "component", "role", "isEchoObject", "getSpace", "SheetContainer", "resolver", "createSheet", "createComputeGraph", "EdgeFunctionPlugin", "EdgeFunctionPluginTranslations", "CustomPlugin", "CustomPluginTranslations", "model", "SheetModel", "initialize", "destroy"]
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { GridNine } from '@phosphor-icons/react';\nimport React from 'react';\n\nimport { NavigationAction, parseIntentPlugin, resolvePlugin, type PluginDefinition } from '@dxos/app-framework';\nimport { invariant } from '@dxos/invariant';\nimport { parseClientPlugin } from '@dxos/plugin-client';\nimport { createExtension, isActionGroup, type ActionGroup } from '@dxos/plugin-graph';\nimport { FunctionType } from '@dxos/plugin-script/types';\nimport { SpaceAction } from '@dxos/plugin-space';\nimport { getSpace, isEchoObject } from '@dxos/react-client/echo';\n\nimport { ComputeGraphContextProvider, SheetContainer } from './components';\nimport { compareIndexPositions, createSheet } from './defs';\nimport { type ComputeGraphRegistry } from './graph';\nimport meta, { SHEET_PLUGIN } from './meta';\nimport translations from './translations';\nimport { SheetAction, SheetType, type SheetPluginProvides } from './types';\n\nexport const SheetPlugin = (): PluginDefinition<SheetPluginProvides> => {\n let graphRegistry: ComputeGraphRegistry | undefined;\n\n return {\n meta,\n ready: async (plugins) => {\n const client = resolvePlugin(plugins, parseClientPlugin)?.provides.client;\n invariant(client);\n let remoteFunctionUrl: string | undefined;\n if (client.config.values.runtime?.services?.edge?.url) {\n const url = new URL('/functions', client.config.values.runtime?.services?.edge?.url);\n url.protocol = 'https';\n remoteFunctionUrl = url.toString();\n }\n\n // Async import removes direct dependency on hyperformula.\n const { createComputeGraphRegistry } = await import('./graph');\n graphRegistry = createComputeGraphRegistry({ remoteFunctionUrl });\n },\n provides: {\n context: ({ children }) => {\n invariant(graphRegistry);\n return <ComputeGraphContextProvider registry={graphRegistry}>{children}</ComputeGraphContextProvider>;\n },\n metadata: {\n records: {\n [SheetType.typename]: {\n label: (object: any) => (object instanceof SheetType ? object.title : undefined),\n placeholder: ['sheet title placeholder', { ns: SHEET_PLUGIN }],\n icon: 'ph--grid-nine--regular',\n },\n },\n },\n translations,\n echo: {\n // TODO(wittjosiah): Factor out to common package/plugin.\n // FunctionType is currently registered here in case script plugin isn't enabled.\n schema: [SheetType, FunctionType],\n },\n space: {\n onSpaceCreate: {\n label: ['create sheet label', { ns: SHEET_PLUGIN }],\n action: SheetAction.CREATE,\n },\n },\n graph: {\n builder: (plugins) => {\n const client = resolvePlugin(plugins, parseClientPlugin)?.provides.client;\n const dispatch = resolvePlugin(plugins, parseIntentPlugin)?.provides.intent.dispatch;\n if (!client || !dispatch) {\n return [];\n }\n\n return createExtension({\n id: SheetAction.CREATE,\n filter: (node): node is ActionGroup => isActionGroup(node) && node.id.startsWith(SpaceAction.ADD_OBJECT),\n actions: ({ node }) => {\n const id = node.id.split('/').at(-1);\n const [spaceId, objectId] = id?.split(':') ?? [];\n const space = client.spaces.get().find((space) => space.id === spaceId);\n const object = objectId && space?.db.getObjectById(objectId);\n const target = objectId ? object : space;\n if (!target) {\n return;\n }\n\n return [\n {\n id: `${SHEET_PLUGIN}/create/${node.id}`,\n data: async () => {\n await dispatch([\n { plugin: SHEET_PLUGIN, action: SheetAction.CREATE, data: { space } },\n { action: SpaceAction.ADD_OBJECT, data: { target } },\n { action: NavigationAction.OPEN },\n ]);\n },\n properties: {\n label: ['create sheet label', { ns: SHEET_PLUGIN }],\n icon: 'ph--grid-nine--regular',\n testId: 'sheetPlugin.createObject',\n },\n },\n ];\n },\n });\n },\n },\n markdown: {\n // TODO(burdon): Construct compute node.\n extensions: ({ document }) => {\n return undefined;\n // return [\n // compute(document)\n // ];\n },\n },\n stack: {\n creators: [\n {\n id: 'create-stack-section-sheet',\n testId: 'sheetPlugin.createSection',\n type: ['plugin name', { ns: SHEET_PLUGIN }],\n label: ['create sheet section label', { ns: SHEET_PLUGIN }],\n icon: (props: any) => <GridNine {...props} />,\n intent: {\n plugin: SHEET_PLUGIN,\n action: SheetAction.CREATE,\n },\n },\n ],\n },\n thread: {\n predicate: (data) => data instanceof SheetType,\n createSort: (sheet) => (indexA, indexB) =>\n !indexA || !indexB ? 0 : compareIndexPositions(sheet, indexA, indexB),\n },\n surface: {\n component: ({ data, role }) => {\n const space = isEchoObject(data.object) && getSpace(data.object);\n if (space && data.object instanceof SheetType) {\n switch (role) {\n case 'article':\n case 'section': {\n return <SheetContainer sheet={data.object} space={space} role={role} />;\n }\n }\n }\n\n return null;\n },\n },\n intent: {\n resolver: async (intent) => {\n switch (intent.action) {\n case SheetAction.CREATE: {\n return { data: createSheet() };\n }\n }\n },\n },\n },\n };\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { SHEET_PLUGIN } from './meta';\n\nexport default [\n {\n 'en-US': {\n [SHEET_PLUGIN]: {\n 'plugin name': 'Sheets',\n 'sheet title placeholder': 'New sheet',\n 'create sheet label': 'Create sheet',\n 'create sheet section label': 'Create sheet',\n 'cell placeholder': 'Cell value...',\n 'toolbar left label': 'Align left',\n 'toolbar left center': 'Align center',\n 'toolbar left right': 'Align right',\n 'selection overlaps existing comment label': 'Selected cell already has a comment',\n 'comment label': 'Add comment',\n 'comment ranges not supported label': 'Commenting on ranges is not yet supported',\n 'no cursor label': 'Select a cell to comment',\n 'open comment for sheet cell': 'View comments for cell',\n },\n },\n },\n] as const;\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { SheetPlugin } from './SheetPlugin';\n\nexport default SheetPlugin;\n\nexport * from './SheetPlugin';\n"],
5
+ "mappings": "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",
6
+ "names": ["import_react", "SHEET_PLUGIN", "SheetPlugin", "graphRegistry", "meta", "ready", "plugins", "client", "resolvePlugin", "parseClientPlugin", "provides", "invariant", "remoteFunctionUrl", "config", "values", "runtime", "services", "edge", "url", "URL", "protocol", "toString", "createComputeGraphRegistry", "context", "children", "React", "ComputeGraphContextProvider", "registry", "metadata", "records", "SheetType", "typename", "label", "object", "title", "undefined", "placeholder", "ns", "icon", "translations", "echo", "schema", "FunctionType", "space", "onSpaceCreate", "action", "SheetAction", "CREATE", "graph", "builder", "dispatch", "parseIntentPlugin", "intent", "createExtension", "id", "filter", "node", "isActionGroup", "startsWith", "SpaceAction", "ADD_OBJECT", "actions", "split", "at", "spaceId", "objectId", "spaces", "get", "find", "db", "getObjectById", "target", "data", "plugin", "NavigationAction", "OPEN", "properties", "testId", "markdown", "extensions", "document", "stack", "creators", "type", "props", "GridNine", "thread", "predicate", "createSort", "sheet", "indexA", "indexB", "compareIndexPositions", "surface", "component", "role", "isEchoObject", "getSpace", "SheetContainer", "resolver", "createSheet"]
7
7
  }
@@ -18,11 +18,11 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var meta_exports = {};
20
20
  __export(meta_exports, {
21
- SHEET_PLUGIN: () => import_chunk_BJ6ZD7MN.SHEET_PLUGIN,
22
- default: () => import_chunk_BJ6ZD7MN.meta_default
21
+ SHEET_PLUGIN: () => import_chunk_BNARJ5GM.SHEET_PLUGIN,
22
+ default: () => import_chunk_BNARJ5GM.meta_default
23
23
  });
24
24
  module.exports = __toCommonJS(meta_exports);
25
- var import_chunk_BJ6ZD7MN = require("./chunk-BJ6ZD7MN.cjs");
25
+ var import_chunk_BNARJ5GM = require("./chunk-BNARJ5GM.cjs");
26
26
  // Annotate the CommonJS export names for ESM import in node:
27
27
  0 && (module.exports = {
28
28
  SHEET_PLUGIN
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["meta.cjs"],
4
- "sourcesContent": ["import {\n SHEET_PLUGIN,\n meta_default\n} from \"./chunk-BJ6ZD7MN.cjs\";\nexport {\n SHEET_PLUGIN,\n meta_default as default\n};\n//# sourceMappingURL=meta.cjs.map\n"],
4
+ "sourcesContent": ["import {\n SHEET_PLUGIN,\n meta_default\n} from \"./chunk-BNARJ5GM.cjs\";\nexport {\n SHEET_PLUGIN,\n meta_default as default\n};\n//# sourceMappingURL=meta.cjs.map\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAGO;",
6
6
  "names": []
7
7
  }