@dxos/plugin-sheet 0.7.5-main.9d26e3a → 0.7.5-main.b19bfc8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (210) hide show
  1. package/dist/lib/browser/SheetContainer-IMHGS7Z4.mjs +370 -0
  2. package/dist/lib/browser/SheetContainer-IMHGS7Z4.mjs.map +7 -0
  3. package/dist/lib/browser/{chunk-A374JPWV.mjs → chunk-AT7F2WDW.mjs} +157 -391
  4. package/dist/lib/browser/chunk-AT7F2WDW.mjs.map +7 -0
  5. package/dist/lib/browser/chunk-FOO6NGBM.mjs +229 -0
  6. package/dist/lib/browser/chunk-FOO6NGBM.mjs.map +7 -0
  7. package/dist/lib/browser/chunk-GAFHJBCU.mjs +18 -0
  8. package/dist/lib/browser/chunk-GAFHJBCU.mjs.map +7 -0
  9. package/dist/lib/browser/chunk-LXHRT3CC.mjs +15 -0
  10. package/dist/lib/browser/chunk-LXHRT3CC.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-Q4XS4YWF.mjs → chunk-OOSRC36N.mjs} +2 -2
  12. package/dist/lib/browser/chunk-OOSRC36N.mjs.map +7 -0
  13. package/dist/lib/browser/compute-graph-registry-EGPD4HEX.mjs +27 -0
  14. package/dist/lib/browser/compute-graph-registry-EGPD4HEX.mjs.map +7 -0
  15. package/dist/lib/browser/index.mjs +88 -218
  16. package/dist/lib/browser/index.mjs.map +4 -4
  17. package/dist/lib/browser/intent-resolver-6S2RMLQF.mjs +56 -0
  18. package/dist/lib/browser/intent-resolver-6S2RMLQF.mjs.map +7 -0
  19. package/dist/lib/browser/markdown-CFJIWHZX.mjs +26 -0
  20. package/dist/lib/browser/markdown-CFJIWHZX.mjs.map +7 -0
  21. package/dist/lib/browser/meta.json +1 -1
  22. package/dist/lib/browser/react-surface-PHKJZYFB.mjs +52 -0
  23. package/dist/lib/browser/react-surface-PHKJZYFB.mjs.map +7 -0
  24. package/dist/lib/browser/thread-7ZWW5EA7.mjs +17 -0
  25. package/dist/lib/browser/thread-7ZWW5EA7.mjs.map +7 -0
  26. package/dist/lib/browser/types/index.mjs +2 -2
  27. package/dist/lib/node/SheetContainer-NNIZN4AK.cjs +364 -0
  28. package/dist/lib/node/SheetContainer-NNIZN4AK.cjs.map +7 -0
  29. package/dist/lib/node/{chunk-FDEQ2PGJ.cjs → chunk-2KCZUH72.cjs} +198 -428
  30. package/dist/lib/node/chunk-2KCZUH72.cjs.map +7 -0
  31. package/dist/lib/node/{chunk-TQOJ7DG2.cjs → chunk-4LSYTNS4.cjs} +6 -6
  32. package/dist/lib/node/chunk-4LSYTNS4.cjs.map +7 -0
  33. package/dist/lib/node/{chunk-2ZVZI2KJ.cjs → chunk-MLU6KRQN.cjs} +12 -9
  34. package/dist/lib/node/chunk-MLU6KRQN.cjs.map +7 -0
  35. package/dist/lib/node/chunk-P4KSGZSS.cjs +251 -0
  36. package/dist/lib/node/chunk-P4KSGZSS.cjs.map +7 -0
  37. package/dist/lib/node/{meta.cjs → chunk-ZV2RS3QH.cjs} +12 -8
  38. package/dist/lib/node/chunk-ZV2RS3QH.cjs.map +7 -0
  39. package/dist/lib/node/compute-graph-registry-GJK5H264.cjs +53 -0
  40. package/dist/lib/node/compute-graph-registry-GJK5H264.cjs.map +7 -0
  41. package/dist/lib/node/index.cjs +89 -215
  42. package/dist/lib/node/index.cjs.map +4 -4
  43. package/dist/lib/node/intent-resolver-I25V7SBT.cjs +69 -0
  44. package/dist/lib/node/intent-resolver-I25V7SBT.cjs.map +7 -0
  45. package/dist/lib/node/markdown-YTCSW66K.cjs +40 -0
  46. package/dist/lib/node/markdown-YTCSW66K.cjs.map +7 -0
  47. package/dist/lib/node/meta.json +1 -1
  48. package/dist/lib/node/react-surface-HLE6CRA6.cjs +70 -0
  49. package/dist/lib/node/react-surface-HLE6CRA6.cjs.map +7 -0
  50. package/dist/lib/node/thread-DRNYTR6M.cjs +32 -0
  51. package/dist/lib/node/thread-DRNYTR6M.cjs.map +7 -0
  52. package/dist/lib/node/types/index.cjs +30 -30
  53. package/dist/lib/node/types/index.cjs.map +1 -1
  54. package/dist/lib/node-esm/SheetContainer-PGDJKGTZ.mjs +371 -0
  55. package/dist/lib/node-esm/SheetContainer-PGDJKGTZ.mjs.map +7 -0
  56. package/dist/lib/node-esm/{chunk-NYYIDVR7.mjs → chunk-HPAMZ6SP.mjs} +2 -2
  57. package/dist/lib/node-esm/chunk-HPAMZ6SP.mjs.map +7 -0
  58. package/dist/lib/node-esm/chunk-PTOI45NK.mjs +231 -0
  59. package/dist/lib/node-esm/chunk-PTOI45NK.mjs.map +7 -0
  60. package/dist/lib/node-esm/chunk-RTZXXOS2.mjs +20 -0
  61. package/dist/lib/node-esm/chunk-RTZXXOS2.mjs.map +7 -0
  62. package/dist/lib/node-esm/chunk-SX3S7UKU.mjs +16 -0
  63. package/dist/lib/node-esm/chunk-SX3S7UKU.mjs.map +7 -0
  64. package/dist/lib/node-esm/{chunk-L5PQHVTX.mjs → chunk-ZM7XLUGL.mjs} +157 -391
  65. package/dist/lib/node-esm/chunk-ZM7XLUGL.mjs.map +7 -0
  66. package/dist/lib/node-esm/compute-graph-registry-3F5JCYEN.mjs +28 -0
  67. package/dist/lib/node-esm/compute-graph-registry-3F5JCYEN.mjs.map +7 -0
  68. package/dist/lib/node-esm/index.mjs +88 -218
  69. package/dist/lib/node-esm/index.mjs.map +4 -4
  70. package/dist/lib/node-esm/intent-resolver-IPRSINII.mjs +57 -0
  71. package/dist/lib/node-esm/intent-resolver-IPRSINII.mjs.map +7 -0
  72. package/dist/lib/node-esm/markdown-CGSK44XJ.mjs +27 -0
  73. package/dist/lib/node-esm/markdown-CGSK44XJ.mjs.map +7 -0
  74. package/dist/lib/node-esm/meta.json +1 -1
  75. package/dist/lib/node-esm/react-surface-PFRJ7V5N.mjs +53 -0
  76. package/dist/lib/node-esm/react-surface-PFRJ7V5N.mjs.map +7 -0
  77. package/dist/lib/node-esm/thread-6T5VXPAF.mjs +18 -0
  78. package/dist/lib/node-esm/thread-6T5VXPAF.mjs.map +7 -0
  79. package/dist/lib/node-esm/types/index.mjs +2 -2
  80. package/dist/types/src/SheetPlugin.d.ts +1 -3
  81. package/dist/types/src/SheetPlugin.d.ts.map +1 -1
  82. package/dist/types/src/capabilities/capabilities.d.ts +5 -0
  83. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -0
  84. package/dist/types/src/capabilities/compute-graph-registry.d.ts +4 -0
  85. package/dist/types/src/capabilities/compute-graph-registry.d.ts.map +1 -0
  86. package/dist/types/src/capabilities/index.d.ts +12 -0
  87. package/dist/types/src/capabilities/index.d.ts.map +1 -0
  88. package/dist/types/src/capabilities/intent-resolver.d.ts +4 -0
  89. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -0
  90. package/dist/types/src/capabilities/markdown.d.ts +6 -0
  91. package/dist/types/src/capabilities/markdown.d.ts.map +1 -0
  92. package/dist/types/src/capabilities/react-surface.d.ts +4 -0
  93. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  94. package/dist/types/src/capabilities/thread.d.ts +6 -0
  95. package/dist/types/src/capabilities/thread.d.ts.map +1 -0
  96. package/dist/types/src/components/ComputeGraph/ComputeGraphContextProvider.d.ts +1 -1
  97. package/dist/types/src/components/ComputeGraph/ComputeGraphContextProvider.d.ts.map +1 -1
  98. package/dist/types/src/components/FunctionEditor/FunctionEditor.d.ts +1 -2
  99. package/dist/types/src/components/FunctionEditor/FunctionEditor.d.ts.map +1 -1
  100. package/dist/types/src/components/GridSheet/GridSheet.d.ts +1 -2
  101. package/dist/types/src/components/GridSheet/GridSheet.d.ts.map +1 -1
  102. package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts +1 -2
  103. package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts.map +1 -1
  104. package/dist/types/src/components/GridSheet/SheetCellEditor.stories.d.ts +1 -2
  105. package/dist/types/src/components/GridSheet/SheetCellEditor.stories.d.ts.map +1 -1
  106. package/dist/types/src/components/RangeList/RangeList.d.ts +1 -2
  107. package/dist/types/src/components/RangeList/RangeList.d.ts.map +1 -1
  108. package/dist/types/src/components/SheetContainer/SheetContainer.d.ts +1 -2
  109. package/dist/types/src/components/SheetContainer/SheetContainer.d.ts.map +1 -1
  110. package/dist/types/src/components/SheetContainer/SheetContainer.stories.d.ts +2 -3
  111. package/dist/types/src/components/SheetContainer/SheetContainer.stories.d.ts.map +1 -1
  112. package/dist/types/src/components/SheetContext/SheetContext.d.ts +2 -2
  113. package/dist/types/src/components/SheetContext/SheetContext.d.ts.map +1 -1
  114. package/dist/types/src/components/SheetToolbar/SheetToolbar.d.ts +7 -0
  115. package/dist/types/src/components/SheetToolbar/SheetToolbar.d.ts.map +1 -0
  116. package/dist/types/src/components/SheetToolbar/SheetToolbar.stories.d.ts +6 -0
  117. package/dist/types/src/components/SheetToolbar/SheetToolbar.stories.d.ts.map +1 -0
  118. package/dist/types/src/components/SheetToolbar/align.d.ts +28 -0
  119. package/dist/types/src/components/SheetToolbar/align.d.ts.map +1 -0
  120. package/dist/types/src/components/SheetToolbar/comment.d.ts +23 -0
  121. package/dist/types/src/components/SheetToolbar/comment.d.ts.map +1 -0
  122. package/dist/types/src/components/SheetToolbar/index.d.ts +2 -0
  123. package/dist/types/src/components/SheetToolbar/index.d.ts.map +1 -0
  124. package/dist/types/src/components/SheetToolbar/style.d.ts +26 -0
  125. package/dist/types/src/components/SheetToolbar/style.d.ts.map +1 -0
  126. package/dist/types/src/components/SheetToolbar/useToolbarAction.d.ts +8 -0
  127. package/dist/types/src/components/SheetToolbar/useToolbarAction.d.ts.map +1 -0
  128. package/dist/types/src/components/SheetToolbar/useToolbarState.d.ts +6 -0
  129. package/dist/types/src/components/SheetToolbar/useToolbarState.d.ts.map +1 -0
  130. package/dist/types/src/components/index.d.ts +3 -4
  131. package/dist/types/src/components/index.d.ts.map +1 -1
  132. package/dist/types/src/extensions/compute.stories.d.ts +2 -3
  133. package/dist/types/src/extensions/compute.stories.d.ts.map +1 -1
  134. package/dist/types/src/index.d.ts +2 -3
  135. package/dist/types/src/index.d.ts.map +1 -1
  136. package/dist/types/src/integrations/thread-ranges.d.ts.map +1 -1
  137. package/dist/types/src/meta.d.ts +2 -2
  138. package/dist/types/src/meta.d.ts.map +1 -1
  139. package/dist/types/src/testing/testing.d.ts +1 -1
  140. package/dist/types/src/testing/testing.d.ts.map +1 -1
  141. package/dist/types/src/types/schema.d.ts +14 -14
  142. package/dist/types/src/types/schema.d.ts.map +1 -1
  143. package/dist/types/src/types/sheet-range-types.d.ts +1 -1
  144. package/dist/types/src/types/sheet-range-types.d.ts.map +1 -1
  145. package/dist/types/src/types/types.d.ts +0 -11
  146. package/dist/types/src/types/types.d.ts.map +1 -1
  147. package/dist/types/tsconfig.tsbuildinfo +1 -1
  148. package/package.json +46 -52
  149. package/src/SheetPlugin.tsx +68 -105
  150. package/src/capabilities/capabilities.ts +14 -0
  151. package/src/capabilities/compute-graph-registry.ts +25 -0
  152. package/src/capabilities/index.ts +13 -0
  153. package/src/capabilities/intent-resolver.ts +38 -0
  154. package/src/capabilities/markdown.ts +22 -0
  155. package/src/capabilities/react-surface.tsx +37 -0
  156. package/src/capabilities/thread.ts +14 -0
  157. package/src/components/GridSheet/GridSheet.stories.tsx +2 -0
  158. package/src/components/GridSheet/util.ts +1 -1
  159. package/src/components/SheetContainer/SheetContainer.stories.tsx +28 -22
  160. package/src/components/SheetContainer/SheetContainer.tsx +3 -8
  161. package/src/components/{Toolbar/Toolbar.stories.tsx → SheetToolbar/SheetToolbar.stories.tsx} +4 -8
  162. package/src/components/SheetToolbar/SheetToolbar.tsx +48 -0
  163. package/src/components/SheetToolbar/align.ts +68 -0
  164. package/src/components/SheetToolbar/comment.ts +56 -0
  165. package/src/components/{Toolbar → SheetToolbar}/index.ts +1 -1
  166. package/src/components/SheetToolbar/style.ts +72 -0
  167. package/src/components/SheetToolbar/useToolbarAction.ts +87 -0
  168. package/src/components/SheetToolbar/useToolbarState.ts +17 -0
  169. package/src/components/index.ts +0 -1
  170. package/src/extensions/compute.stories.tsx +2 -2
  171. package/src/index.ts +2 -5
  172. package/src/integrations/thread-ranges.ts +21 -10
  173. package/src/meta.ts +4 -2
  174. package/src/types/sheet-range-types.ts +1 -1
  175. package/src/types/types.ts +0 -26
  176. package/dist/lib/browser/SheetContainer-S4NCLUYL.mjs +0 -290
  177. package/dist/lib/browser/SheetContainer-S4NCLUYL.mjs.map +0 -7
  178. package/dist/lib/browser/chunk-A374JPWV.mjs.map +0 -7
  179. package/dist/lib/browser/chunk-Q4XS4YWF.mjs.map +0 -7
  180. package/dist/lib/browser/chunk-RABELMEQ.mjs +0 -15
  181. package/dist/lib/browser/chunk-RABELMEQ.mjs.map +0 -7
  182. package/dist/lib/browser/meta.mjs +0 -9
  183. package/dist/lib/browser/meta.mjs.map +0 -7
  184. package/dist/lib/node/SheetContainer-TP4GYXZB.cjs +0 -296
  185. package/dist/lib/node/SheetContainer-TP4GYXZB.cjs.map +0 -7
  186. package/dist/lib/node/chunk-2ZVZI2KJ.cjs.map +0 -7
  187. package/dist/lib/node/chunk-FDEQ2PGJ.cjs.map +0 -7
  188. package/dist/lib/node/chunk-TQOJ7DG2.cjs.map +0 -7
  189. package/dist/lib/node/meta.cjs.map +0 -7
  190. package/dist/lib/node-esm/SheetContainer-YB3JBVPZ.mjs +0 -291
  191. package/dist/lib/node-esm/SheetContainer-YB3JBVPZ.mjs.map +0 -7
  192. package/dist/lib/node-esm/chunk-BM2Q3FFC.mjs +0 -17
  193. package/dist/lib/node-esm/chunk-BM2Q3FFC.mjs.map +0 -7
  194. package/dist/lib/node-esm/chunk-L5PQHVTX.mjs.map +0 -7
  195. package/dist/lib/node-esm/chunk-NYYIDVR7.mjs.map +0 -7
  196. package/dist/lib/node-esm/meta.mjs +0 -10
  197. package/dist/lib/node-esm/meta.mjs.map +0 -7
  198. package/dist/types/src/components/SheetObjectSettings.d.ts +0 -7
  199. package/dist/types/src/components/SheetObjectSettings.d.ts.map +0 -1
  200. package/dist/types/src/components/Toolbar/Toolbar.d.ts +0 -48
  201. package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +0 -1
  202. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts +0 -7
  203. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts.map +0 -1
  204. package/dist/types/src/components/Toolbar/index.d.ts +0 -2
  205. package/dist/types/src/components/Toolbar/index.d.ts.map +0 -1
  206. package/dist/types/src/testing/playwright/playwright.config.d.ts +0 -3
  207. package/dist/types/src/testing/playwright/playwright.config.d.ts.map +0 -1
  208. package/src/components/SheetObjectSettings.tsx +0 -38
  209. package/src/components/Toolbar/Toolbar.tsx +0 -344
  210. /package/src/testing/playwright/{playwright.config.ts → playwright.config.cts} +0 -0
@@ -1,4 +1,8 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ rangeExtension,
4
+ sheetExtension
5
+ } from "./chunk-PTOI45NK.mjs";
2
6
  import {
3
7
  DEFAULT_COLS,
4
8
  DEFAULT_ROWS,
@@ -7,10 +11,10 @@ import {
7
11
  cellClassNameForRange,
8
12
  rangeFromIndex,
9
13
  useSheetModel
10
- } from "./chunk-NYYIDVR7.mjs";
14
+ } from "./chunk-HPAMZ6SP.mjs";
11
15
  import {
12
16
  SHEET_PLUGIN
13
- } from "./chunk-BM2Q3FFC.mjs";
17
+ } from "./chunk-RTZXXOS2.mjs";
14
18
 
15
19
  // packages/plugins/plugin-sheet/src/components/ComputeGraph/ComputeGraphContextProvider.tsx
16
20
  import React, { createContext, useContext } from "react";
@@ -39,334 +43,8 @@ var useComputeGraph = (space) => {
39
43
  return graph;
40
44
  };
41
45
 
42
- // packages/plugins/plugin-sheet/src/extensions/compute.ts
43
- import { syntaxTree } from "@codemirror/language";
44
- import { RangeSetBuilder, StateEffect, StateField } from "@codemirror/state";
45
- import { Decoration, EditorView, ViewPlugin, WidgetType } from "@codemirror/view";
46
- import { debounce } from "@dxos/async";
47
- import { createSheetName } from "@dxos/compute";
48
- import { invariant } from "@dxos/invariant";
49
- import { documentId, singleValueFacet } from "@dxos/react-ui-editor";
50
- var updateAllDecorations = StateEffect.define();
51
- var computeGraphFacet = singleValueFacet();
52
-
53
- // packages/plugins/plugin-sheet/src/extensions/editor/extension.ts
54
- import { acceptCompletion, autocompletion, completionStatus, startCompletion } from "@codemirror/autocomplete";
55
- import { HighlightStyle, syntaxHighlighting } from "@codemirror/language";
56
- import { ViewPlugin as ViewPlugin2, keymap } from "@codemirror/view";
57
- import { tags } from "@lezer/highlight";
58
- import { spreadsheet } from "codemirror-lang-spreadsheet";
59
- import { RANGE_NOTATION } from "@dxos/compute";
60
- import { singleValueFacet as singleValueFacet2 } from "@dxos/react-ui-editor";
61
- import { mx } from "@dxos/react-ui-theme";
62
- var highlightStyles = HighlightStyle.define([
63
- // Function.
64
- {
65
- tag: tags.name,
66
- class: "text-accentText"
67
- },
68
- // Range.
69
- {
70
- tag: tags.tagName,
71
- class: "text-pinkText"
72
- },
73
- // Values.
74
- {
75
- tag: tags.number,
76
- class: "text-tealText"
77
- },
78
- {
79
- tag: tags.bool,
80
- class: "text-tealText"
81
- },
82
- {
83
- tag: tags.string,
84
- class: "text-tealText"
85
- },
86
- // Error.
87
- {
88
- tag: tags.invalid,
89
- class: "text-unAccent"
90
- }
91
- ]);
92
- var languageFacet = singleValueFacet2();
93
- var sheetExtension = ({ debug, functions = [] }) => {
94
- const { extension, language } = spreadsheet({
95
- idiom: "en-US",
96
- decimalSeparator: "."
97
- });
98
- const createCompletion = (name) => {
99
- const { section = "Custom", description, syntax } = functions.find((value) => value.name === name) ?? {};
100
- return {
101
- section,
102
- label: name,
103
- info: () => {
104
- if (!description && !syntax) {
105
- return null;
106
- }
107
- const root = document.createElement("div");
108
- root.className = "flex flex-col gap-2 text-sm";
109
- const title = document.createElement("h2");
110
- title.innerText = name;
111
- title.className = "text-lg font-mono text-accentText";
112
- root.appendChild(title);
113
- if (description) {
114
- const info = document.createElement("p");
115
- info.innerText = description;
116
- info.className = "text-subdued";
117
- root.appendChild(info);
118
- }
119
- if (syntax) {
120
- const detail = document.createElement("pre");
121
- detail.innerText = syntax;
122
- detail.className = "whitespace-pre-wrap text-greenText";
123
- root.appendChild(detail);
124
- }
125
- return root;
126
- },
127
- apply: (view, completion, from, to) => {
128
- const insertParens = to === view.state.doc.toString().length;
129
- view.dispatch(view.state.update({
130
- changes: {
131
- from,
132
- to,
133
- insert: completion.label + (insertParens ? "()" : "")
134
- },
135
- selection: {
136
- anchor: from + completion.label.length + 1
137
- }
138
- }));
139
- }
140
- };
141
- };
142
- return [
143
- extension,
144
- languageFacet.of(language),
145
- language.data.of({
146
- autocomplete: (context) => {
147
- if (context.state.doc.toString()[0] !== "=") {
148
- return null;
149
- }
150
- const match = context.matchBefore(/\w*/);
151
- if (!match || match.from === match.to) {
152
- return null;
153
- }
154
- const text = match.text.toUpperCase();
155
- if (!context.explicit && match.text.length < 2) {
156
- return null;
157
- }
158
- return {
159
- from: match.from,
160
- options: functions?.filter(({ name }) => name.startsWith(text)).map(({ name }) => createCompletion(name)) ?? []
161
- };
162
- }
163
- }),
164
- syntaxHighlighting(highlightStyles),
165
- autocompletion({
166
- aboveCursor: false,
167
- defaultKeymap: true,
168
- activateOnTyping: true,
169
- closeOnBlur: !debug,
170
- icons: false,
171
- tooltipClass: () => mx("!-left-[1px] !top-[33px] !-m-0 border !border-t-0 [&>ul]:!min-w-[198px]", "[&>ul>li[aria-selected]]:!bg-accentSurface", "border-separator")
172
- }),
173
- keymap.of([
174
- {
175
- key: "Tab",
176
- run: (view) => {
177
- return completionStatus(view.state) === "active" ? acceptCompletion(view) : startCompletion(view);
178
- }
179
- }
180
- ])
181
- ];
182
- };
183
- var rangeExtension = ({ onInit, onStateChange }) => {
184
- let view;
185
- let activeRange;
186
- const notifier = {
187
- setRange: (range) => {
188
- if (activeRange) {
189
- view.dispatch(view.state.update({
190
- changes: {
191
- ...activeRange,
192
- insert: range.toString()
193
- },
194
- selection: {
195
- anchor: activeRange.from + range.length
196
- }
197
- }));
198
- }
199
- view.focus();
200
- }
201
- };
202
- return ViewPlugin2.fromClass(class {
203
- constructor(_view) {
204
- view = _view;
205
- onInit?.(notifier);
206
- }
207
- update(view2) {
208
- const { anchor } = view2.state.selection.ranges[0];
209
- activeRange = void 0;
210
- const language = view2.state.facet(languageFacet);
211
- const { topNode } = language.parser.parse(view2.state.doc.toString());
212
- visitTree(topNode, ({ type, from, to }) => {
213
- if (from <= anchor && to >= anchor) {
214
- switch (type.name) {
215
- case "Function":
216
- activeRange = {
217
- from: to,
218
- to
219
- };
220
- break;
221
- case "CloseParen":
222
- activeRange = {
223
- from,
224
- to: from
225
- };
226
- break;
227
- case "RangeToken":
228
- case "CellToken":
229
- activeRange = {
230
- from,
231
- to
232
- };
233
- return true;
234
- }
235
- }
236
- return false;
237
- });
238
- if (!activeRange && view2.state.doc.toString()[0] === "=") {
239
- const str = view2.state.doc.sliceString(1);
240
- if (RANGE_NOTATION.test(str)) {
241
- activeRange = {
242
- from: 1,
243
- to: str.length + 1
244
- };
245
- }
246
- }
247
- onStateChange?.({
248
- activeRange: activeRange ? view2.state.doc.sliceString(activeRange.from, activeRange.to) : void 0
249
- });
250
- }
251
- });
252
- };
253
- var visitTree = (node, callback) => {
254
- if (callback(node)) {
255
- return true;
256
- }
257
- for (let child = node.firstChild; child !== null; child = child.nextSibling) {
258
- if (visitTree(child, callback)) {
259
- return true;
260
- }
261
- }
262
- return false;
263
- };
264
-
265
- // packages/plugins/plugin-sheet/src/components/SheetContext/SheetContext.tsx
266
- import React2, { createContext as createContext2, useCallback, useContext as useContext2, useState } from "react";
267
- import { invariant as invariant2 } from "@dxos/invariant";
268
- import { fullyQualifiedId } from "@dxos/react-client/echo";
269
- import { Grid, useGridContext } from "@dxos/react-ui-grid";
270
- var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-sheet/src/components/SheetContext/SheetContext.tsx";
271
- var SheetContext = /* @__PURE__ */ createContext2(void 0);
272
- var useSheetContext = () => {
273
- const context = useContext2(SheetContext);
274
- invariant2(context, void 0, {
275
- F: __dxlog_file,
276
- L: 54,
277
- S: void 0,
278
- A: [
279
- "context",
280
- ""
281
- ]
282
- });
283
- return context;
284
- };
285
- var SheetProviderImpl = ({ model, onInfo, ignoreAttention, children, __gridScope }) => {
286
- const { id, editing, setEditing } = useGridContext("SheetProvider", __gridScope);
287
- const [cursor, setCursorInternal] = useState();
288
- const [range, setRangeInternal] = useState();
289
- const [cursorFallbackRange, setCursorFallbackRange] = useState();
290
- const [activeRefs, setActiveRefs] = useState("");
291
- const setCursor = useCallback((nextCursor) => {
292
- setCursorInternal(nextCursor);
293
- setCursorFallbackRange(range?.to ? range : nextCursor ? {
294
- from: nextCursor,
295
- to: nextCursor
296
- } : void 0);
297
- }, [
298
- range
299
- ]);
300
- const setRange = useCallback((nextRange) => {
301
- setRangeInternal(nextRange);
302
- setCursorFallbackRange(nextRange?.to ? nextRange : cursor ? {
303
- from: cursor,
304
- to: cursor
305
- } : void 0);
306
- }, [
307
- cursor
308
- ]);
309
- return /* @__PURE__ */ React2.createElement(SheetContext.Provider, {
310
- value: {
311
- id,
312
- model,
313
- editing,
314
- setEditing,
315
- cursor,
316
- setCursor,
317
- range,
318
- setRange,
319
- cursorFallbackRange,
320
- activeRefs,
321
- setActiveRefs,
322
- // TODO(burdon): Change to event.
323
- onInfo,
324
- ignoreAttention
325
- }
326
- }, children);
327
- };
328
- var SheetProvider = ({ children, graph, sheet, readonly, ignoreAttention, onInfo }) => {
329
- const model = useSheetModel(graph, sheet, {
330
- readonly
331
- });
332
- return !model ? null : /* @__PURE__ */ React2.createElement(Grid.Root, {
333
- id: fullyQualifiedId(sheet)
334
- }, /* @__PURE__ */ React2.createElement(SheetProviderImpl, {
335
- model,
336
- onInfo,
337
- ignoreAttention
338
- }, children));
339
- };
340
-
341
- // packages/plugins/plugin-sheet/src/components/GridSheet/GridSheet.tsx
342
- import React5, { useCallback as useCallback4, useMemo as useMemo2, useRef, useState as useState3 } from "react";
343
- import { createIntent as createIntent2, useIntentDispatcher as useIntentDispatcher2 } from "@dxos/app-framework";
344
- import { rangeToA1Notation as rangeToA1Notation2 } from "@dxos/compute";
345
- import { DropdownMenu, Icon, useTranslation as useTranslation3 } from "@dxos/react-ui";
346
- import { useAttention } from "@dxos/react-ui-attention";
347
- import { closestCell, defaultSizeRow, editorKeys, Grid as Grid2, GridCellEditor, parseCellIndex } from "@dxos/react-ui-grid";
348
-
349
- // packages/plugins/plugin-sheet/src/components/GridSheet/util.ts
350
- import { useEffect as useEffect2, useState as useState2 } from "react";
351
- import { inRange as inRange2 } from "@dxos/compute";
352
- import { createDocAccessor, fullyQualifiedId as fullyQualifiedId3 } from "@dxos/react-client/echo";
353
- import { parseValue, cellClassesForFieldType } from "@dxos/react-ui-form";
354
- import { colToA1Notation, rowToA1Notation, commentedClassName } from "@dxos/react-ui-grid";
355
- import { mx as mx2 } from "@dxos/react-ui-theme";
356
-
357
- // packages/plugins/plugin-sheet/src/integrations/thread-ranges.ts
358
- import { useCallback as useCallback3, useEffect, useMemo } from "react";
359
- import { createIntent, createResolver, LayoutAction, useIntentDispatcher, useIntentResolver } from "@dxos/app-framework";
360
- import { debounce as debounce2 } from "@dxos/async";
361
- import { inRange } from "@dxos/compute";
362
- import { ThreadAction } from "@dxos/plugin-thread/types";
363
- import { fullyQualifiedId as fullyQualifiedId2 } from "@dxos/react-client/echo";
364
-
365
- // packages/plugins/plugin-sheet/src/components/index.ts
366
- import { lazy } from "react";
367
-
368
46
  // packages/plugins/plugin-sheet/src/components/RangeList/RangeList.tsx
369
- import React3, { useCallback as useCallback2 } from "react";
47
+ import React2, { useCallback } from "react";
370
48
  import { rangeToA1Notation } from "@dxos/compute";
371
49
  import { S } from "@dxos/echo-schema";
372
50
  import { useTranslation } from "@dxos/react-ui";
@@ -376,59 +54,62 @@ var RangeList = ({ sheet }) => {
376
54
  const { t } = useTranslation(SHEET_PLUGIN);
377
55
  const handleSelectRange = (range) => {
378
56
  };
379
- const handleDeleteRange = useCallback2((range) => {
57
+ const handleDeleteRange = useCallback((range) => {
380
58
  const index = sheet.ranges.findIndex((sheetRange) => sheetRange === range);
381
59
  sheet.ranges.splice(index, 1);
382
60
  }, [
383
61
  sheet
384
62
  ]);
385
- return /* @__PURE__ */ React3.createElement(React3.Fragment, null, /* @__PURE__ */ React3.createElement("h2", {
63
+ return /* @__PURE__ */ React2.createElement(React2.Fragment, null, /* @__PURE__ */ React2.createElement("h2", {
386
64
  className: "p-2 text-sm font-semibold"
387
- }, t("range list heading")), /* @__PURE__ */ React3.createElement(List.Root, {
65
+ }, t("range list heading")), /* @__PURE__ */ React2.createElement(List.Root, {
388
66
  items: sheet.ranges,
389
67
  isItem: S.is(Range)
390
- }, ({ items: ranges }) => ranges.map((range, i) => /* @__PURE__ */ React3.createElement(List.Item, {
68
+ }, ({ items: ranges }) => ranges.map((range, i) => /* @__PURE__ */ React2.createElement(List.Item, {
391
69
  key: i,
392
70
  item: range,
393
71
  classNames: [
394
72
  "p-2",
395
73
  ghostHover
396
74
  ]
397
- }, /* @__PURE__ */ React3.createElement(List.ItemDragHandle, null), /* @__PURE__ */ React3.createElement(List.ItemTitle, {
75
+ }, /* @__PURE__ */ React2.createElement(List.ItemDragHandle, null), /* @__PURE__ */ React2.createElement(List.ItemTitle, {
398
76
  onClick: () => handleSelectRange(range)
399
77
  }, t("range title", {
400
78
  position: rangeToA1Notation(rangeFromIndex(sheet, range.range)),
401
79
  key: t(`range key ${range.key} label`),
402
80
  value: t(`range value ${range.value} label`)
403
- })), /* @__PURE__ */ React3.createElement(List.ItemDeleteButton, {
81
+ })), /* @__PURE__ */ React2.createElement(List.ItemDeleteButton, {
404
82
  onClick: () => handleDeleteRange(range)
405
83
  })))));
406
84
  };
407
85
 
408
- // packages/plugins/plugin-sheet/src/components/SheetObjectSettings.tsx
409
- import React4 from "react";
410
- import { SPACE_PLUGIN } from "@dxos/plugin-space/meta";
411
- import { Input, useTranslation as useTranslation2 } from "@dxos/react-ui";
412
- var SheetObjectSettings = ({ sheet }) => {
413
- const { t } = useTranslation2(SPACE_PLUGIN);
414
- return /* @__PURE__ */ React4.createElement(React4.Fragment, null, /* @__PURE__ */ React4.createElement("div", {
415
- role: "form",
416
- className: "flex flex-col w-full p-2 gap-1"
417
- }, /* @__PURE__ */ React4.createElement(Input.Root, null, /* @__PURE__ */ React4.createElement(Input.Label, null, t("name label")), /* @__PURE__ */ React4.createElement(Input.TextInput, {
418
- placeholder: t("name placeholder"),
419
- value: sheet.name ?? "",
420
- onChange: (event) => {
421
- sheet.name = event.target.value;
422
- }
423
- }))), /* @__PURE__ */ React4.createElement(RangeList, {
424
- sheet
425
- }));
426
- };
427
-
428
86
  // packages/plugins/plugin-sheet/src/components/index.ts
429
- var SheetContainer = lazy(() => import("./SheetContainer-YB3JBVPZ.mjs"));
87
+ import { lazy } from "react";
88
+
89
+ // packages/plugins/plugin-sheet/src/components/GridSheet/GridSheet.tsx
90
+ import React4, { useCallback as useCallback4, useMemo as useMemo2, useRef, useState as useState3 } from "react";
91
+ import { createIntent as createIntent2, useIntentDispatcher as useIntentDispatcher2 } from "@dxos/app-framework";
92
+ import { rangeToA1Notation as rangeToA1Notation2 } from "@dxos/compute";
93
+ import { DropdownMenu, Icon, useTranslation as useTranslation2 } from "@dxos/react-ui";
94
+ import { useAttention } from "@dxos/react-ui-attention";
95
+ import { closestCell, defaultSizeRow, editorKeys, Grid as Grid2, GridCellEditor, parseCellIndex } from "@dxos/react-ui-grid";
96
+
97
+ // packages/plugins/plugin-sheet/src/components/GridSheet/util.ts
98
+ import { useEffect as useEffect2, useState } from "react";
99
+ import { inRange as inRange2 } from "@dxos/compute";
100
+ import { createDocAccessor, fullyQualifiedId as fullyQualifiedId2 } from "@dxos/react-client/echo";
101
+ import { parseValue, cellClassesForFieldType } from "@dxos/react-ui-form";
102
+ import { colToA1Notation, rowToA1Notation, commentedClassName } from "@dxos/react-ui-grid";
103
+ import { mx } from "@dxos/react-ui-theme";
430
104
 
431
105
  // packages/plugins/plugin-sheet/src/integrations/thread-ranges.ts
106
+ import { useCallback as useCallback2, useEffect, useMemo } from "react";
107
+ import { createIntent, createResolver, LayoutAction, useIntentResolver, useIntentDispatcher } from "@dxos/app-framework";
108
+ import { debounce } from "@dxos/async";
109
+ import { inRange } from "@dxos/compute";
110
+ import { S as S2 } from "@dxos/echo-schema";
111
+ import { ThreadAction } from "@dxos/plugin-thread/types";
112
+ import { fullyQualifiedId } from "@dxos/react-client/echo";
432
113
  var completeCellRangeToThreadCursor = (range) => {
433
114
  return `${range.from.col},${range.from.row},${range.to.col},${range.to.row}`;
434
115
  };
@@ -452,16 +133,23 @@ var parseThreadAnchorAsCellRange = (cursor) => {
452
133
  };
453
134
  var useUpdateFocusedCellOnThreadSelection = (grid) => {
454
135
  const { model, setActiveRefs } = useSheetContext();
455
- const scrollIntoViewResolver = useMemo(() => createResolver(LayoutAction.ScrollIntoView, ({ cursor, ref }) => {
456
- setActiveRefs(ref);
457
- const range = parseThreadAnchorAsCellRange(cursor);
458
- range && grid?.setFocus({
459
- ...range.to,
460
- plane: "grid"
461
- }, true);
462
- }, {
463
- disposition: "hoist",
464
- filter: (data) => data.id === fullyQualifiedId2(model.sheet) && !!data.cursor
136
+ const scrollIntoViewResolver = useMemo(() => createResolver({
137
+ intent: LayoutAction.ScrollIntoView,
138
+ position: "hoist",
139
+ filter: (data) => {
140
+ if (!S2.is(LayoutAction.ScrollIntoView.fields.input)(data)) {
141
+ return false;
142
+ }
143
+ return data.subject === fullyQualifiedId(model.sheet) && !!data.options?.cursor;
144
+ },
145
+ resolve: ({ options: { cursor, ref } }) => {
146
+ setActiveRefs(ref);
147
+ const range = parseThreadAnchorAsCellRange(cursor);
148
+ range && grid?.setFocus({
149
+ ...range.to,
150
+ plane: "grid"
151
+ }, true);
152
+ }
465
153
  }), [
466
154
  model.sheet,
467
155
  setActiveRefs
@@ -475,7 +163,7 @@ var useSelectThreadOnCellFocus = () => {
475
163
  // TODO(thure): Surely we can find a better dependency for this…
476
164
  JSON.stringify(model.sheet.threads)
477
165
  ]);
478
- const selectClosestThread = useCallback3((cellAddress) => {
166
+ const selectClosestThread = useCallback2((cellAddress) => {
479
167
  if (!cellAddress || !threads) {
480
168
  return;
481
169
  }
@@ -489,7 +177,7 @@ var useSelectThreadOnCellFocus = () => {
489
177
  });
490
178
  if (closestThread) {
491
179
  void dispatch(createIntent(ThreadAction.Select, {
492
- current: fullyQualifiedId2(closestThread)
180
+ current: fullyQualifiedId(closestThread)
493
181
  }));
494
182
  }
495
183
  }, [
@@ -497,7 +185,7 @@ var useSelectThreadOnCellFocus = () => {
497
185
  threads
498
186
  ]);
499
187
  const debounced = useMemo(() => {
500
- return debounce2((cellCoords) => requestAnimationFrame(() => selectClosestThread(cellCoords)), 50);
188
+ return debounce((cellCoords) => requestAnimationFrame(() => selectClosestThread(cellCoords)), 50);
501
189
  }, [
502
190
  selectClosestThread
503
191
  ]);
@@ -549,7 +237,7 @@ var projectCellProps = (model, col, row) => {
549
237
  const threadRefs = model.sheet.threads?.filter((thread) => {
550
238
  const range = thread.target?.anchor && parseThreadAnchorAsCellRange(thread.target.anchor);
551
239
  return thread && range ? inRange2(range, address) : false;
552
- }).map((thread) => fullyQualifiedId3(thread)).join(" ");
240
+ }).map((thread) => fullyQualifiedId2(thread)).join(" ");
553
241
  const description = model.getValueDescription(address);
554
242
  const type = description?.type;
555
243
  const format = description?.format;
@@ -560,7 +248,7 @@ var projectCellProps = (model, col, row) => {
560
248
  format,
561
249
  value: rawValue
562
250
  }),
563
- className: mx2(cellClassesForFieldType({
251
+ className: mx(cellClassesForFieldType({
564
252
  type,
565
253
  format
566
254
  }), threadRefs && commentedClassName, classNames),
@@ -586,7 +274,7 @@ var gridCellGetter = (model) => {
586
274
  };
587
275
  var rowLabelCell = (row) => ({
588
276
  value: rowToA1Notation(row),
589
- className: "text-end !pie-1 text-subdued",
277
+ className: "text-end pie-1 text-subdued",
590
278
  resizeHandle: "row"
591
279
  });
592
280
  var colLabelCell = (col) => ({
@@ -622,8 +310,8 @@ var cellGetter = (model) => {
622
310
  };
623
311
  };
624
312
  var useSheetModelDxGridProps = (dxGrid, model) => {
625
- const [columns, setColumns] = useState2(createDxGridColumns(model));
626
- const [rows, setRows] = useState2(createDxGridRows(model));
313
+ const [columns, setColumns] = useState(createDxGridColumns(model));
314
+ const [rows, setRows] = useState(createDxGridRows(model));
627
315
  useEffect2(() => {
628
316
  const cellsAccessor = createDocAccessor(model.sheet, [
629
317
  "cells"
@@ -673,6 +361,82 @@ var useSheetModelDxGridProps = (dxGrid, model) => {
673
361
  };
674
362
  };
675
363
 
364
+ // packages/plugins/plugin-sheet/src/components/SheetContext/SheetContext.tsx
365
+ import React3, { createContext as createContext2, useCallback as useCallback3, useContext as useContext2, useState as useState2 } from "react";
366
+ import { invariant } from "@dxos/invariant";
367
+ import { fullyQualifiedId as fullyQualifiedId3 } from "@dxos/react-client/echo";
368
+ import { Grid, useGridContext } from "@dxos/react-ui-grid";
369
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-sheet/src/components/SheetContext/SheetContext.tsx";
370
+ var SheetContext = /* @__PURE__ */ createContext2(void 0);
371
+ var useSheetContext = () => {
372
+ const context = useContext2(SheetContext);
373
+ invariant(context, void 0, {
374
+ F: __dxlog_file,
375
+ L: 54,
376
+ S: void 0,
377
+ A: [
378
+ "context",
379
+ ""
380
+ ]
381
+ });
382
+ return context;
383
+ };
384
+ var SheetProviderImpl = ({ model, onInfo, ignoreAttention, children, __gridScope }) => {
385
+ const { id, editing, setEditing } = useGridContext("SheetProvider", __gridScope);
386
+ const [cursor, setCursorInternal] = useState2();
387
+ const [range, setRangeInternal] = useState2();
388
+ const [cursorFallbackRange, setCursorFallbackRange] = useState2();
389
+ const [activeRefs, setActiveRefs] = useState2("");
390
+ const setCursor = useCallback3((nextCursor) => {
391
+ setCursorInternal(nextCursor);
392
+ setCursorFallbackRange(range?.to ? range : nextCursor ? {
393
+ from: nextCursor,
394
+ to: nextCursor
395
+ } : void 0);
396
+ }, [
397
+ range
398
+ ]);
399
+ const setRange = useCallback3((nextRange) => {
400
+ setRangeInternal(nextRange);
401
+ setCursorFallbackRange(nextRange?.to ? nextRange : cursor ? {
402
+ from: cursor,
403
+ to: cursor
404
+ } : void 0);
405
+ }, [
406
+ cursor
407
+ ]);
408
+ return /* @__PURE__ */ React3.createElement(SheetContext.Provider, {
409
+ value: {
410
+ id,
411
+ model,
412
+ editing,
413
+ setEditing,
414
+ cursor,
415
+ setCursor,
416
+ range,
417
+ setRange,
418
+ cursorFallbackRange,
419
+ activeRefs,
420
+ setActiveRefs,
421
+ // TODO(burdon): Change to event.
422
+ onInfo,
423
+ ignoreAttention
424
+ }
425
+ }, children);
426
+ };
427
+ var SheetProvider = ({ children, graph, sheet, readonly, ignoreAttention, onInfo }) => {
428
+ const model = useSheetModel(graph, sheet, {
429
+ readonly
430
+ });
431
+ return !model ? null : /* @__PURE__ */ React3.createElement(Grid.Root, {
432
+ id: fullyQualifiedId3(sheet)
433
+ }, /* @__PURE__ */ React3.createElement(SheetProviderImpl, {
434
+ model,
435
+ onInfo,
436
+ ignoreAttention
437
+ }, children));
438
+ };
439
+
676
440
  // packages/plugins/plugin-sheet/src/components/GridSheet/GridSheet.tsx
677
441
  var inertPosition = {
678
442
  plane: "grid",
@@ -719,7 +483,7 @@ var sheetColDefault = {
719
483
  }
720
484
  };
721
485
  var GridSheet = () => {
722
- const { t } = useTranslation3(SHEET_PLUGIN);
486
+ const { t } = useTranslation2(SHEET_PLUGIN);
723
487
  const { id, model, editing, setCursor, setRange, cursor, cursorFallbackRange, activeRefs, ignoreAttention } = useSheetContext();
724
488
  const [dxGrid, setDxGrid] = useState3(null);
725
489
  const [extraplanarFocus, setExtraplanarFocus] = useState3(null);
@@ -971,14 +735,14 @@ var GridSheet = () => {
971
735
  ]);
972
736
  useUpdateFocusedCellOnThreadSelection(dxGrid);
973
737
  useSelectThreadOnCellFocus();
974
- return /* @__PURE__ */ React5.createElement("div", {
738
+ return /* @__PURE__ */ React4.createElement("div", {
975
739
  role: "none",
976
740
  className: "relative min-bs-0"
977
- }, /* @__PURE__ */ React5.createElement(GridCellEditor, {
741
+ }, /* @__PURE__ */ React4.createElement(GridCellEditor, {
978
742
  getCellContent,
979
743
  extension,
980
744
  onBlur: handleBlur
981
- }), /* @__PURE__ */ React5.createElement(Grid2.Content, {
745
+ }), /* @__PURE__ */ React4.createElement(Grid2.Content, {
982
746
  initialCells,
983
747
  limitColumns: DEFAULT_COLS,
984
748
  limitRows: DEFAULT_ROWS,
@@ -998,46 +762,48 @@ var GridSheet = () => {
998
762
  className: "[--dx-grid-base:var(--surface-bg)] [&_.dx-grid]:border-bs [&_.dx-grid]:absolute [&_.dx-grid]:inset-0 [&_.dx-grid]:border-separator",
999
763
  activeRefs,
1000
764
  ref: setDxGrid
1001
- }), /* @__PURE__ */ React5.createElement(DropdownMenu.Root, {
765
+ }), /* @__PURE__ */ React4.createElement(DropdownMenu.Root, {
1002
766
  modal: false,
1003
767
  open: !!contextMenuOpen,
1004
768
  onOpenChange: (nextOpen) => setContextMenuOpen(nextOpen ? inertPosition : null)
1005
- }, /* @__PURE__ */ React5.createElement(DropdownMenu.VirtualTrigger, {
769
+ }, /* @__PURE__ */ React4.createElement(DropdownMenu.VirtualTrigger, {
1006
770
  virtualRef: contextMenuAnchorRef
1007
- }), /* @__PURE__ */ React5.createElement(DropdownMenu.Content, {
771
+ }), /* @__PURE__ */ React4.createElement(DropdownMenu.Content, {
1008
772
  side: contextMenuAxis === "col" ? "bottom" : "right",
1009
773
  sideOffset: 4,
1010
774
  collisionPadding: 8
1011
- }, /* @__PURE__ */ React5.createElement(DropdownMenu.Viewport, null, /* @__PURE__ */ React5.createElement(DropdownMenu.Item, {
775
+ }, /* @__PURE__ */ React4.createElement(DropdownMenu.Viewport, null, /* @__PURE__ */ React4.createElement(DropdownMenu.Item, {
1012
776
  onClick: () => handleAxisMenuAction("insert-before"),
1013
777
  "data-testid": `grid.${contextMenuAxis}.insert-before`
1014
- }, /* @__PURE__ */ React5.createElement(Icon, {
778
+ }, /* @__PURE__ */ React4.createElement(Icon, {
1015
779
  size: 5,
1016
780
  icon: contextMenuAxis === "col" ? "ph--columns-plus-left--regular" : "ph--rows-plus-top--regular"
1017
- }), /* @__PURE__ */ React5.createElement("span", null, t(`add ${contextMenuAxis} before label`))), /* @__PURE__ */ React5.createElement(DropdownMenu.Item, {
781
+ }), /* @__PURE__ */ React4.createElement("span", null, t(`add ${contextMenuAxis} before label`))), /* @__PURE__ */ React4.createElement(DropdownMenu.Item, {
1018
782
  onClick: () => handleAxisMenuAction("insert-after"),
1019
783
  "data-testid": `grid.${contextMenuAxis}.insert-after`
1020
- }, /* @__PURE__ */ React5.createElement(Icon, {
784
+ }, /* @__PURE__ */ React4.createElement(Icon, {
1021
785
  size: 5,
1022
786
  icon: contextMenuAxis === "col" ? "ph--columns-plus-right--regular" : "ph--rows-plus-bottom--regular"
1023
- }), /* @__PURE__ */ React5.createElement("span", null, t(`add ${contextMenuAxis} after label`))), /* @__PURE__ */ React5.createElement(DropdownMenu.Item, {
787
+ }), /* @__PURE__ */ React4.createElement("span", null, t(`add ${contextMenuAxis} after label`))), /* @__PURE__ */ React4.createElement(DropdownMenu.Item, {
1024
788
  onClick: () => handleAxisMenuAction("drop"),
1025
789
  "data-testid": `grid.${contextMenuAxis}.drop`
1026
- }, /* @__PURE__ */ React5.createElement(Icon, {
790
+ }, /* @__PURE__ */ React4.createElement(Icon, {
1027
791
  size: 5,
1028
792
  icon: "ph--backspace--regular"
1029
- }), /* @__PURE__ */ React5.createElement("span", null, t(`delete ${contextMenuAxis} label`)))), /* @__PURE__ */ React5.createElement(DropdownMenu.Arrow, null))));
793
+ }), /* @__PURE__ */ React4.createElement("span", null, t(`delete ${contextMenuAxis} label`)))), /* @__PURE__ */ React4.createElement(DropdownMenu.Arrow, null))));
1030
794
  };
1031
795
 
796
+ // packages/plugins/plugin-sheet/src/components/index.ts
797
+ var SheetContainer = lazy(() => import("./SheetContainer-PGDJKGTZ.mjs"));
798
+
1032
799
  export {
1033
800
  ComputeGraphContextProvider,
1034
801
  useComputeGraph,
1035
802
  completeCellRangeToThreadCursor,
1036
- computeGraphFacet,
1037
803
  useSheetContext,
1038
804
  SheetProvider,
1039
805
  GridSheet,
1040
- SheetObjectSettings,
806
+ RangeList,
1041
807
  SheetContainer
1042
808
  };
1043
- //# sourceMappingURL=chunk-L5PQHVTX.mjs.map
809
+ //# sourceMappingURL=chunk-ZM7XLUGL.mjs.map