@dxos/plugin-sheet 0.7.2 → 0.7.3-main.2dd075e

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 (128) hide show
  1. package/dist/lib/browser/{SheetContainer-YAMIOFC6.mjs → SheetContainer-KCLT6PEO.mjs} +8 -6
  2. package/dist/lib/browser/SheetContainer-KCLT6PEO.mjs.map +7 -0
  3. package/dist/lib/browser/{chunk-QHQFM7LV.mjs → chunk-E5WQ7U7G.mjs} +77 -78
  4. package/dist/lib/browser/chunk-E5WQ7U7G.mjs.map +7 -0
  5. package/dist/lib/browser/{chunk-VMSX6Z4X.mjs → chunk-F3HE6D3J.mjs} +76 -26
  6. package/dist/lib/browser/chunk-F3HE6D3J.mjs.map +7 -0
  7. package/dist/lib/browser/{chunk-BVUN7SHF.mjs → chunk-JXFPOYNA.mjs} +1 -1
  8. package/dist/lib/browser/chunk-JXFPOYNA.mjs.map +7 -0
  9. package/dist/lib/browser/{compute-graph-GGWUX644.mjs → compute-graph-SNUS7HOH.mjs} +3 -3
  10. package/dist/lib/browser/index.mjs +84 -32
  11. package/dist/lib/browser/index.mjs.map +3 -3
  12. package/dist/lib/browser/meta.json +1 -1
  13. package/dist/lib/browser/types.mjs +1 -1
  14. package/dist/lib/node/{SheetContainer-BSDHHYXE.cjs → SheetContainer-VVVRYTQG.cjs} +32 -31
  15. package/dist/lib/node/SheetContainer-VVVRYTQG.cjs.map +7 -0
  16. package/dist/lib/node/{chunk-J5ZFWMOD.cjs → chunk-45YW2DX2.cjs} +96 -101
  17. package/dist/lib/node/chunk-45YW2DX2.cjs.map +7 -0
  18. package/dist/lib/node/{chunk-O7XR4R7Y.cjs → chunk-KSEEI5VC.cjs} +87 -27
  19. package/dist/lib/node/chunk-KSEEI5VC.cjs.map +7 -0
  20. package/dist/lib/node/{chunk-AWKOWDMI.cjs → chunk-OWH2EUHZ.cjs} +4 -4
  21. package/dist/lib/node/chunk-OWH2EUHZ.cjs.map +7 -0
  22. package/dist/lib/node/{compute-graph-KGWA2QLE.cjs → compute-graph-WILPHO4A.cjs} +20 -20
  23. package/dist/lib/node/{compute-graph-KGWA2QLE.cjs.map → compute-graph-WILPHO4A.cjs.map} +2 -2
  24. package/dist/lib/node/index.cjs +101 -47
  25. package/dist/lib/node/index.cjs.map +3 -3
  26. package/dist/lib/node/meta.json +1 -1
  27. package/dist/lib/node/types.cjs +6 -6
  28. package/dist/lib/node/types.cjs.map +1 -1
  29. package/dist/lib/node-esm/{SheetContainer-T47T2NYJ.mjs → SheetContainer-LSBE6Q4X.mjs} +8 -6
  30. package/dist/lib/node-esm/SheetContainer-LSBE6Q4X.mjs.map +7 -0
  31. package/dist/lib/node-esm/{chunk-CR4K75EL.mjs → chunk-6JF2AHKO.mjs} +76 -26
  32. package/dist/lib/node-esm/chunk-6JF2AHKO.mjs.map +7 -0
  33. package/dist/lib/node-esm/{chunk-UIBWRHW7.mjs → chunk-BVS2IQRO.mjs} +1 -1
  34. package/dist/lib/node-esm/chunk-BVS2IQRO.mjs.map +7 -0
  35. package/dist/lib/node-esm/{chunk-6GSTEN7N.mjs → chunk-NYDNXI7L.mjs} +77 -78
  36. package/dist/lib/node-esm/chunk-NYDNXI7L.mjs.map +7 -0
  37. package/dist/lib/node-esm/{compute-graph-2SCZT7N5.mjs → compute-graph-S6CVN7RS.mjs} +3 -3
  38. package/dist/lib/node-esm/index.mjs +84 -32
  39. package/dist/lib/node-esm/index.mjs.map +3 -3
  40. package/dist/lib/node-esm/meta.json +1 -1
  41. package/dist/lib/node-esm/types.mjs +1 -1
  42. package/dist/types/src/SheetPlugin.d.ts.map +1 -1
  43. package/dist/types/src/components/GridSheet/GridSheet.d.ts.map +1 -1
  44. package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts +1 -0
  45. package/dist/types/src/components/GridSheet/GridSheet.stories.d.ts.map +1 -1
  46. package/dist/types/src/components/GridSheet/util.d.ts +0 -2
  47. package/dist/types/src/components/GridSheet/util.d.ts.map +1 -1
  48. package/dist/types/src/components/SheetContainer/SheetContainer.stories.d.ts +2 -0
  49. package/dist/types/src/components/SheetContainer/SheetContainer.stories.d.ts.map +1 -1
  50. package/dist/types/src/components/SheetObjectSettings.d.ts +7 -0
  51. package/dist/types/src/components/SheetObjectSettings.d.ts.map +1 -0
  52. package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +1 -1
  53. package/dist/types/src/components/index.d.ts +1 -0
  54. package/dist/types/src/components/index.d.ts.map +1 -1
  55. package/dist/types/src/defs/sheet-range-types.d.ts.map +1 -1
  56. package/dist/types/src/defs/types.d.ts +2 -4
  57. package/dist/types/src/defs/types.d.ts.map +1 -1
  58. package/dist/types/src/defs/util.d.ts +8 -0
  59. package/dist/types/src/defs/util.d.ts.map +1 -1
  60. package/dist/types/src/extensions/editor/extension.d.ts +2 -1
  61. package/dist/types/src/extensions/editor/extension.d.ts.map +1 -1
  62. package/dist/types/src/index.d.ts +1 -0
  63. package/dist/types/src/index.d.ts.map +1 -1
  64. package/dist/types/src/integrations/thread-ranges.d.ts.map +1 -1
  65. package/dist/types/src/model/sheet-model.d.ts +0 -4
  66. package/dist/types/src/model/sheet-model.d.ts.map +1 -1
  67. package/dist/types/src/model/testing.d.ts +6 -0
  68. package/dist/types/src/model/testing.d.ts.map +1 -0
  69. package/dist/types/src/testing/data.d.ts +3 -0
  70. package/dist/types/src/testing/data.d.ts.map +1 -0
  71. package/dist/types/src/testing/index.d.ts +1 -0
  72. package/dist/types/src/testing/index.d.ts.map +1 -1
  73. package/dist/types/src/testing/playwright/playwright.config.d.ts +3 -0
  74. package/dist/types/src/testing/playwright/playwright.config.d.ts.map +1 -0
  75. package/dist/types/src/testing/playwright/sheet-manager.d.ts +24 -0
  76. package/dist/types/src/testing/playwright/sheet-manager.d.ts.map +1 -0
  77. package/dist/types/src/testing/playwright/sheet.spec.d.ts +2 -0
  78. package/dist/types/src/testing/playwright/sheet.spec.d.ts.map +1 -0
  79. package/dist/types/src/testing/testing.d.ts +1 -2
  80. package/dist/types/src/testing/testing.d.ts.map +1 -1
  81. package/dist/types/src/translations.d.ts +61 -0
  82. package/dist/types/src/translations.d.ts.map +1 -1
  83. package/dist/types/src/types.d.ts +2 -3
  84. package/dist/types/src/types.d.ts.map +1 -1
  85. package/package.json +40 -37
  86. package/src/SheetPlugin.tsx +9 -21
  87. package/src/components/FunctionEditor/FunctionEditor.tsx +2 -2
  88. package/src/components/GridSheet/GridSheet.stories.tsx +2 -0
  89. package/src/components/GridSheet/GridSheet.tsx +18 -8
  90. package/src/components/GridSheet/util.ts +1 -9
  91. package/src/components/SheetContainer/SheetContainer.stories.tsx +44 -2
  92. package/src/components/SheetObjectSettings.tsx +38 -0
  93. package/src/components/Toolbar/Toolbar.tsx +7 -1
  94. package/src/components/index.ts +1 -0
  95. package/src/compute-graph/compute-graph.stories.tsx +1 -1
  96. package/src/compute-graph/compute-graph.test.ts +1 -1
  97. package/src/defs/sheet-range-types.ts +3 -0
  98. package/src/defs/types.ts +3 -1
  99. package/src/defs/util.ts +32 -1
  100. package/src/extensions/editor/extension.ts +3 -3
  101. package/src/index.ts +3 -0
  102. package/src/integrations/thread-ranges.ts +2 -0
  103. package/src/model/sheet-model.test.ts +35 -1
  104. package/src/model/sheet-model.ts +5 -17
  105. package/src/model/testing.ts +35 -0
  106. package/src/sanity.test.ts +1 -1
  107. package/src/testing/data.ts +33 -0
  108. package/src/testing/index.ts +1 -0
  109. package/src/testing/playwright/playwright.config.ts +18 -0
  110. package/src/testing/playwright/sheet-manager.ts +91 -0
  111. package/src/testing/playwright/sheet.spec.ts +78 -0
  112. package/src/testing/testing.tsx +1 -31
  113. package/src/translations.ts +4 -0
  114. package/src/types.ts +1 -3
  115. package/dist/lib/browser/SheetContainer-YAMIOFC6.mjs.map +0 -7
  116. package/dist/lib/browser/chunk-BVUN7SHF.mjs.map +0 -7
  117. package/dist/lib/browser/chunk-QHQFM7LV.mjs.map +0 -7
  118. package/dist/lib/browser/chunk-VMSX6Z4X.mjs.map +0 -7
  119. package/dist/lib/node/SheetContainer-BSDHHYXE.cjs.map +0 -7
  120. package/dist/lib/node/chunk-AWKOWDMI.cjs.map +0 -7
  121. package/dist/lib/node/chunk-J5ZFWMOD.cjs.map +0 -7
  122. package/dist/lib/node/chunk-O7XR4R7Y.cjs.map +0 -7
  123. package/dist/lib/node-esm/SheetContainer-T47T2NYJ.mjs.map +0 -7
  124. package/dist/lib/node-esm/chunk-6GSTEN7N.mjs.map +0 -7
  125. package/dist/lib/node-esm/chunk-CR4K75EL.mjs.map +0 -7
  126. package/dist/lib/node-esm/chunk-UIBWRHW7.mjs.map +0 -7
  127. /package/dist/lib/browser/{compute-graph-GGWUX644.mjs.map → compute-graph-SNUS7HOH.mjs.map} +0 -0
  128. /package/dist/lib/node-esm/{compute-graph-2SCZT7N5.mjs.map → compute-graph-S6CVN7RS.mjs.map} +0 -0
@@ -16,13 +16,15 @@ import {
16
16
  initialize,
17
17
  insertIndices,
18
18
  isFormula,
19
+ mapFormulaIndicesToRefs,
20
+ mapFormulaRefsToIndices,
19
21
  rangeFromIndex,
20
22
  rangeToA1Notation
21
- } from "./chunk-CR4K75EL.mjs";
23
+ } from "./chunk-6JF2AHKO.mjs";
22
24
  import {
23
25
  Range,
24
26
  SheetAction
25
- } from "./chunk-UIBWRHW7.mjs";
27
+ } from "./chunk-BVS2IQRO.mjs";
26
28
  import {
27
29
  SHEET_PLUGIN
28
30
  } from "./chunk-BM2Q3FFC.mjs";
@@ -103,7 +105,7 @@ var highlightStyles = HighlightStyle.define([
103
105
  }
104
106
  ]);
105
107
  var languageFacet = singleValueFacet2();
106
- var sheetExtension = ({ functions = [] }) => {
108
+ var sheetExtension = ({ debug, functions = [] }) => {
107
109
  const { extension, language } = spreadsheet({
108
110
  idiom: "en-US",
109
111
  decimalSeparator: "."
@@ -179,8 +181,7 @@ var sheetExtension = ({ functions = [] }) => {
179
181
  aboveCursor: false,
180
182
  defaultKeymap: true,
181
183
  activateOnTyping: true,
182
- // NOTE: Useful for debugging.
183
- closeOnBlur: false,
184
+ closeOnBlur: !debug,
184
185
  icons: false,
185
186
  tooltipClass: () => mx("!-left-[1px] !top-[33px] !-m-0 border !border-t-0 [&>ul]:!min-w-[198px]", "[&>ul>li[aria-selected]]:!bg-accentSurface", "border-separator")
186
187
  }),
@@ -367,7 +368,7 @@ var SheetModel = class extends Resource {
367
368
  id: this.id
368
369
  }, {
369
370
  F: __dxlog_file,
370
- L: 113,
371
+ L: 115,
371
372
  S: this,
372
373
  C: (f, a) => f(...a)
373
374
  });
@@ -394,7 +395,7 @@ var SheetModel = class extends Resource {
394
395
  reset() {
395
396
  invariant2(this._node, void 0, {
396
397
  F: __dxlog_file,
397
- L: 139,
398
+ L: 141,
398
399
  S: this,
399
400
  A: [
400
401
  "this._node",
@@ -405,7 +406,7 @@ var SheetModel = class extends Resource {
405
406
  Object.entries(this._sheet.cells).forEach(([key, { value }]) => {
406
407
  invariant2(this._node, void 0, {
407
408
  F: __dxlog_file,
408
- L: 142,
409
+ L: 144,
409
410
  S: this,
410
411
  A: [
411
412
  "this._node",
@@ -414,7 +415,7 @@ var SheetModel = class extends Resource {
414
415
  });
415
416
  const { col, row } = addressFromIndex(this._sheet, key);
416
417
  if (isFormula(value)) {
417
- const binding = this._graph.mapFunctionBindingFromId(this.mapFormulaIndicesToRefs(value));
418
+ const binding = this._graph.mapFunctionBindingFromId(mapFormulaIndicesToRefs(this._sheet, value));
418
419
  if (binding) {
419
420
  value = this._graph.mapFormulaToNative(binding);
420
421
  } else {
@@ -524,7 +525,7 @@ var SheetModel = class extends Resource {
524
525
  clear(range) {
525
526
  invariant2(this._node, void 0, {
526
527
  F: __dxlog_file,
527
- L: 245,
528
+ L: 247,
528
529
  S: this,
529
530
  A: [
530
531
  "this._node",
@@ -542,7 +543,7 @@ var SheetModel = class extends Resource {
542
543
  cut(range) {
543
544
  invariant2(this._node, void 0, {
544
545
  F: __dxlog_file,
545
- L: 256,
546
+ L: 258,
546
547
  S: this,
547
548
  A: [
548
549
  "this._node",
@@ -558,7 +559,7 @@ var SheetModel = class extends Resource {
558
559
  copy(range) {
559
560
  invariant2(this._node, void 0, {
560
561
  F: __dxlog_file,
561
- L: 265,
562
+ L: 267,
562
563
  S: this,
563
564
  A: [
564
565
  "this._node",
@@ -570,7 +571,7 @@ var SheetModel = class extends Resource {
570
571
  paste(cell) {
571
572
  invariant2(this._node, void 0, {
572
573
  F: __dxlog_file,
573
- L: 270,
574
+ L: 272,
574
575
  S: this,
575
576
  A: [
576
577
  "this._node",
@@ -597,7 +598,7 @@ var SheetModel = class extends Resource {
597
598
  undo() {
598
599
  invariant2(this._node, void 0, {
599
600
  F: __dxlog_file,
600
- L: 285,
601
+ L: 287,
601
602
  S: this,
602
603
  A: [
603
604
  "this._node",
@@ -611,7 +612,7 @@ var SheetModel = class extends Resource {
611
612
  redo() {
612
613
  invariant2(this._node, void 0, {
613
614
  F: __dxlog_file,
614
- L: 293,
615
+ L: 295,
615
616
  S: this,
616
617
  A: [
617
618
  "this._node",
@@ -638,7 +639,7 @@ var SheetModel = class extends Resource {
638
639
  return void 0;
639
640
  }
640
641
  if (isFormula(value)) {
641
- return this._graph.mapFunctionBindingFromId(this.mapFormulaIndicesToRefs(value));
642
+ return this._graph.mapFunctionBindingFromId(mapFormulaIndicesToRefs(this._sheet, value));
642
643
  } else {
643
644
  return String(value);
644
645
  }
@@ -655,7 +656,7 @@ var SheetModel = class extends Resource {
655
656
  getValue(cell) {
656
657
  invariant2(this._node, void 0, {
657
658
  F: __dxlog_file,
658
- L: 336,
659
+ L: 338,
659
660
  S: this,
660
661
  A: [
661
662
  "this._node",
@@ -670,7 +671,7 @@ var SheetModel = class extends Resource {
670
671
  error: value
671
672
  }, {
672
673
  F: __dxlog_file,
673
- L: 341,
674
+ L: 343,
674
675
  S: this,
675
676
  C: (f, a) => f(...a)
676
677
  });
@@ -684,7 +685,7 @@ var SheetModel = class extends Resource {
684
685
  getValueDescription(cell) {
685
686
  invariant2(this._node, void 0, {
686
687
  F: __dxlog_file,
687
- L: 352,
688
+ L: 354,
688
689
  S: this,
689
690
  A: [
690
691
  "this._node",
@@ -701,7 +702,7 @@ var SheetModel = class extends Resource {
701
702
  setValue(cell, value) {
702
703
  invariant2(this._node, void 0, {
703
704
  F: __dxlog_file,
704
- L: 362,
705
+ L: 364,
705
706
  S: this,
706
707
  A: [
707
708
  "this._node",
@@ -737,7 +738,7 @@ var SheetModel = class extends Resource {
737
738
  delete this._sheet.cells[idx];
738
739
  } else {
739
740
  if (isFormula(value)) {
740
- value = this._graph.mapFunctionBindingToId(this.mapFormulaRefsToIndices(value));
741
+ value = this._graph.mapFunctionBindingToId(mapFormulaRefsToIndices(this._sheet, value));
741
742
  }
742
743
  this._sheet.cells[idx] = {
743
744
  value
@@ -789,33 +790,13 @@ var SheetModel = class extends Resource {
789
790
  _moveIndices(indices, i, j, n) {
790
791
  throw new Error("Not implemented");
791
792
  }
792
- //
793
- // Indices.
794
- //
795
- /**
796
- * Map from A1 notation to indices.
797
- */
798
- mapFormulaRefsToIndices(formula) {
799
- invariant2(isFormula(formula), void 0, {
800
- F: __dxlog_file,
801
- L: 451,
802
- S: this,
803
- A: [
804
- "isFormula(formula)",
805
- ""
806
- ]
807
- });
808
- return formula.replace(/([a-zA-Z]+)([0-9]+)/g, (match) => {
809
- return addressToIndex(this._sheet, addressFromA1Notation(match));
810
- });
811
- }
812
793
  /**
813
794
  * Map from indices to A1 notation.
814
795
  */
815
796
  mapFormulaIndicesToRefs(formula) {
816
797
  invariant2(isFormula(formula), void 0, {
817
798
  F: __dxlog_file,
818
- L: 461,
799
+ L: 449,
819
800
  S: this,
820
801
  A: [
821
802
  "isFormula(formula)",
@@ -841,7 +822,7 @@ var SheetModel = class extends Resource {
841
822
  toDateTime(num) {
842
823
  invariant2(this._node, void 0, {
843
824
  F: __dxlog_file,
844
- L: 482,
825
+ L: 470,
845
826
  S: this,
846
827
  A: [
847
828
  "this._node",
@@ -853,7 +834,7 @@ var SheetModel = class extends Resource {
853
834
  toDate(num) {
854
835
  invariant2(this._node, void 0, {
855
836
  F: __dxlog_file,
856
- L: 487,
837
+ L: 475,
857
838
  S: this,
858
839
  A: [
859
840
  "this._node",
@@ -865,7 +846,7 @@ var SheetModel = class extends Resource {
865
846
  toTime(num) {
866
847
  invariant2(this._node, void 0, {
867
848
  F: __dxlog_file,
868
- L: 492,
849
+ L: 480,
869
850
  S: this,
870
851
  A: [
871
852
  "this._node",
@@ -977,11 +958,11 @@ var SheetProvider = ({ children, graph, sheet, readonly, ignoreAttention, onInfo
977
958
  };
978
959
 
979
960
  // packages/plugins/plugin-sheet/src/components/GridSheet/GridSheet.tsx
980
- import React4, { useCallback as useCallback4, useMemo as useMemo2, useRef, useState as useState4 } from "react";
961
+ import React5, { useCallback as useCallback4, useMemo as useMemo2, useRef, useState as useState4 } from "react";
981
962
  import { useIntentDispatcher as useIntentDispatcher2 } from "@dxos/app-framework";
982
- import { DropdownMenu, Icon, useTranslation as useTranslation2 } from "@dxos/react-ui";
963
+ import { DropdownMenu, Icon, useTranslation as useTranslation3 } from "@dxos/react-ui";
983
964
  import { useAttention } from "@dxos/react-ui-attention";
984
- import { closestCell, defaultSizeRow, editorKeys, Grid as Grid2, GridCellEditor } from "@dxos/react-ui-grid";
965
+ import { closestCell, defaultSizeRow, editorKeys, Grid as Grid2, GridCellEditor, parseCellIndex } from "@dxos/react-ui-grid";
985
966
 
986
967
  // packages/plugins/plugin-sheet/src/components/GridSheet/util.ts
987
968
  import { useEffect as useEffect3, useState as useState3 } from "react";
@@ -1038,8 +1019,28 @@ var RangeList = ({ sheet }) => {
1038
1019
  })))));
1039
1020
  };
1040
1021
 
1022
+ // packages/plugins/plugin-sheet/src/components/SheetObjectSettings.tsx
1023
+ import React4 from "react";
1024
+ import { SPACE_PLUGIN } from "@dxos/plugin-space/meta";
1025
+ import { Input, useTranslation as useTranslation2 } from "@dxos/react-ui";
1026
+ var SheetObjectSettings = ({ sheet }) => {
1027
+ const { t } = useTranslation2(SPACE_PLUGIN);
1028
+ return /* @__PURE__ */ React4.createElement(React4.Fragment, null, /* @__PURE__ */ React4.createElement("div", {
1029
+ role: "form",
1030
+ className: "flex flex-col w-full p-2 gap-1"
1031
+ }, /* @__PURE__ */ React4.createElement(Input.Root, null, /* @__PURE__ */ React4.createElement(Input.Label, null, t("name label")), /* @__PURE__ */ React4.createElement(Input.TextInput, {
1032
+ placeholder: t("name placeholder"),
1033
+ value: sheet.name ?? "",
1034
+ onChange: (event) => {
1035
+ sheet.name = event.target.value;
1036
+ }
1037
+ }))), /* @__PURE__ */ React4.createElement(RangeList, {
1038
+ sheet
1039
+ }));
1040
+ };
1041
+
1041
1042
  // packages/plugins/plugin-sheet/src/components/index.ts
1042
- var SheetContainer = lazy(() => import("./SheetContainer-T47T2NYJ.mjs"));
1043
+ var SheetContainer = lazy(() => import("./SheetContainer-LSBE6Q4X.mjs"));
1043
1044
 
1044
1045
  // packages/plugins/plugin-sheet/src/integrations/thread-ranges.ts
1045
1046
  var completeCellRangeToThreadCursor = (range) => {
@@ -1077,6 +1078,9 @@ var useUpdateFocusedCellOnThreadSelection = (grid) => {
1077
1078
  ...range.to,
1078
1079
  plane: "grid"
1079
1080
  }, true);
1081
+ return {
1082
+ data: true
1083
+ };
1080
1084
  }
1081
1085
  }
1082
1086
  }, [
@@ -1135,13 +1139,6 @@ var useSelectThreadOnCellFocus = () => {
1135
1139
  };
1136
1140
 
1137
1141
  // packages/plugins/plugin-sheet/src/components/GridSheet/util.ts
1138
- var dxGridCellIndexToSheetCellAddress = (index) => {
1139
- const [colStr, rowStr] = index.split(",");
1140
- return {
1141
- col: parseInt(colStr),
1142
- row: parseInt(rowStr)
1143
- };
1144
- };
1145
1142
  var createDxGridColumns = (model) => {
1146
1143
  return model.sheet.columns.reduce((acc, columnId, numericIndex) => {
1147
1144
  if (model.sheet.columnMeta[columnId] && model.sheet.columnMeta[columnId].size) {
@@ -1348,7 +1345,7 @@ var sheetColDefault = {
1348
1345
  }
1349
1346
  };
1350
1347
  var GridSheet = () => {
1351
- const { t } = useTranslation2(SHEET_PLUGIN);
1348
+ const { t } = useTranslation3(SHEET_PLUGIN);
1352
1349
  const { id, model, editing, setCursor, setRange, cursor, cursorFallbackRange, activeRefs, ignoreAttention } = useSheetContext();
1353
1350
  const [dxGrid, setDxGrid] = useState4(null);
1354
1351
  const [extraplanarFocus, setExtraplanarFocus] = useState4(null);
@@ -1400,7 +1397,7 @@ var GridSheet = () => {
1400
1397
  ]);
1401
1398
  const handleBlur = useCallback4((value) => {
1402
1399
  if (value !== void 0) {
1403
- model.setValue(dxGridCellIndexToSheetCellAddress(editing.index), value);
1400
+ model.setValue(parseCellIndex(editing.index), value);
1404
1401
  }
1405
1402
  }, [
1406
1403
  model,
@@ -1601,21 +1598,20 @@ var GridSheet = () => {
1601
1598
  editing
1602
1599
  ]);
1603
1600
  const getCellContent = useCallback4((index) => {
1604
- const cell = dxGridCellIndexToSheetCellAddress(index);
1605
- return model.getCellText(cell);
1601
+ return model.getCellText(parseCellIndex(index));
1606
1602
  }, [
1607
1603
  model
1608
1604
  ]);
1609
1605
  useUpdateFocusedCellOnThreadSelection(dxGrid);
1610
1606
  useSelectThreadOnCellFocus();
1611
- return /* @__PURE__ */ React4.createElement("div", {
1607
+ return /* @__PURE__ */ React5.createElement("div", {
1612
1608
  role: "none",
1613
1609
  className: "relative min-bs-0"
1614
- }, /* @__PURE__ */ React4.createElement(GridCellEditor, {
1610
+ }, /* @__PURE__ */ React5.createElement(GridCellEditor, {
1615
1611
  getCellContent,
1616
1612
  extension,
1617
1613
  onBlur: handleBlur
1618
- }), /* @__PURE__ */ React4.createElement(Grid2.Content, {
1614
+ }), /* @__PURE__ */ React5.createElement(Grid2.Content, {
1619
1615
  initialCells,
1620
1616
  limitColumns: DEFAULT_COLUMNS,
1621
1617
  limitRows: DEFAULT_ROWS,
@@ -1635,32 +1631,35 @@ var GridSheet = () => {
1635
1631
  className: "[--dx-grid-base:var(--surface-bg)] [&_.dx-grid]:border-bs [&_.dx-grid]:absolute [&_.dx-grid]:inset-0 [&_.dx-grid]:border-separator",
1636
1632
  activeRefs,
1637
1633
  ref: setDxGrid
1638
- }), /* @__PURE__ */ React4.createElement(DropdownMenu.Root, {
1634
+ }), /* @__PURE__ */ React5.createElement(DropdownMenu.Root, {
1639
1635
  modal: false,
1640
1636
  open: !!contextMenuOpen,
1641
1637
  onOpenChange: (nextOpen) => setContextMenuOpen(nextOpen ? inertPosition : null)
1642
- }, /* @__PURE__ */ React4.createElement(DropdownMenu.VirtualTrigger, {
1638
+ }, /* @__PURE__ */ React5.createElement(DropdownMenu.VirtualTrigger, {
1643
1639
  virtualRef: contextMenuAnchorRef
1644
- }), /* @__PURE__ */ React4.createElement(DropdownMenu.Content, {
1640
+ }), /* @__PURE__ */ React5.createElement(DropdownMenu.Content, {
1645
1641
  side: contextMenuAxis === "col" ? "bottom" : "right",
1646
1642
  sideOffset: 4,
1647
1643
  collisionPadding: 8
1648
- }, /* @__PURE__ */ React4.createElement(DropdownMenu.Viewport, null, /* @__PURE__ */ React4.createElement(DropdownMenu.Item, {
1649
- onClick: () => handleAxisMenuAction("insert-before")
1650
- }, /* @__PURE__ */ React4.createElement(Icon, {
1644
+ }, /* @__PURE__ */ React5.createElement(DropdownMenu.Viewport, null, /* @__PURE__ */ React5.createElement(DropdownMenu.Item, {
1645
+ onClick: () => handleAxisMenuAction("insert-before"),
1646
+ "data-testid": `grid.${contextMenuAxis}.insert-before`
1647
+ }, /* @__PURE__ */ React5.createElement(Icon, {
1651
1648
  size: 5,
1652
1649
  icon: contextMenuAxis === "col" ? "ph--columns-plus-left--regular" : "ph--rows-plus-top--regular"
1653
- }), /* @__PURE__ */ React4.createElement("span", null, t(`add ${contextMenuAxis} before label`))), /* @__PURE__ */ React4.createElement(DropdownMenu.Item, {
1654
- onClick: () => handleAxisMenuAction("insert-after")
1655
- }, /* @__PURE__ */ React4.createElement(Icon, {
1650
+ }), /* @__PURE__ */ React5.createElement("span", null, t(`add ${contextMenuAxis} before label`))), /* @__PURE__ */ React5.createElement(DropdownMenu.Item, {
1651
+ onClick: () => handleAxisMenuAction("insert-after"),
1652
+ "data-testid": `grid.${contextMenuAxis}.insert-after`
1653
+ }, /* @__PURE__ */ React5.createElement(Icon, {
1656
1654
  size: 5,
1657
1655
  icon: contextMenuAxis === "col" ? "ph--columns-plus-right--regular" : "ph--rows-plus-bottom--regular"
1658
- }), /* @__PURE__ */ React4.createElement("span", null, t(`add ${contextMenuAxis} after label`))), /* @__PURE__ */ React4.createElement(DropdownMenu.Item, {
1659
- onClick: () => handleAxisMenuAction("drop")
1660
- }, /* @__PURE__ */ React4.createElement(Icon, {
1656
+ }), /* @__PURE__ */ React5.createElement("span", null, t(`add ${contextMenuAxis} after label`))), /* @__PURE__ */ React5.createElement(DropdownMenu.Item, {
1657
+ onClick: () => handleAxisMenuAction("drop"),
1658
+ "data-testid": `grid.${contextMenuAxis}.drop`
1659
+ }, /* @__PURE__ */ React5.createElement(Icon, {
1661
1660
  size: 5,
1662
1661
  icon: "ph--backspace--regular"
1663
- }), /* @__PURE__ */ React4.createElement("span", null, t(`delete ${contextMenuAxis} label`)))), /* @__PURE__ */ React4.createElement(DropdownMenu.Arrow, null))));
1662
+ }), /* @__PURE__ */ React5.createElement("span", null, t(`delete ${contextMenuAxis} label`)))), /* @__PURE__ */ React5.createElement(DropdownMenu.Arrow, null))));
1664
1663
  };
1665
1664
 
1666
1665
  export {
@@ -1671,7 +1670,7 @@ export {
1671
1670
  useSheetContext,
1672
1671
  SheetProvider,
1673
1672
  GridSheet,
1674
- RangeList,
1673
+ SheetObjectSettings,
1675
1674
  SheetContainer
1676
1675
  };
1677
- //# sourceMappingURL=chunk-6GSTEN7N.mjs.map
1676
+ //# sourceMappingURL=chunk-NYDNXI7L.mjs.map