@dxos/plugin-sheet 0.6.12-main.89e9959 → 0.6.12-main.ac23639

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 (96) hide show
  1. package/dist/lib/browser/{SheetContainer-LG77O4RM.mjs → SheetContainer-XBTEYQ6T.mjs} +4 -4
  2. package/dist/lib/browser/{chunk-QILRZNE5.mjs → chunk-D3QTX46O.mjs} +4 -5
  3. package/dist/lib/browser/chunk-D3QTX46O.mjs.map +7 -0
  4. package/dist/lib/browser/{chunk-CHQAW4F4.mjs → chunk-NA6NLHDE.mjs} +117 -260
  5. package/dist/lib/browser/chunk-NA6NLHDE.mjs.map +7 -0
  6. package/dist/lib/browser/{chunk-WZMOZKQZ.mjs → chunk-NZBWHQSR.mjs} +21 -25
  7. package/dist/lib/browser/chunk-NZBWHQSR.mjs.map +7 -0
  8. package/dist/lib/browser/index.mjs +8 -17
  9. package/dist/lib/browser/index.mjs.map +4 -4
  10. package/dist/lib/browser/meta.json +1 -1
  11. package/dist/lib/browser/meta.mjs +1 -1
  12. package/dist/lib/browser/types.mjs +4 -8
  13. package/dist/lib/node/{SheetContainer-OZ7DHH4L.cjs → SheetContainer-HSRYKV52.cjs} +16 -16
  14. package/dist/lib/node/{chunk-BNARJ5GM.cjs → chunk-QIFIGEKV.cjs} +6 -7
  15. package/dist/lib/node/chunk-QIFIGEKV.cjs.map +7 -0
  16. package/dist/lib/node/{chunk-5FTFZL5W.cjs → chunk-UXH6GKEU.cjs} +61 -202
  17. package/dist/lib/node/chunk-UXH6GKEU.cjs.map +7 -0
  18. package/dist/lib/node/{chunk-AOP42UAA.cjs → chunk-XYGN3RTG.cjs} +27 -33
  19. package/dist/lib/node/chunk-XYGN3RTG.cjs.map +7 -0
  20. package/dist/lib/node/index.cjs +29 -37
  21. package/dist/lib/node/index.cjs.map +4 -4
  22. package/dist/lib/node/meta.cjs +3 -3
  23. package/dist/lib/node/meta.cjs.map +1 -1
  24. package/dist/lib/node/meta.json +1 -1
  25. package/dist/lib/node/types.cjs +8 -12
  26. package/dist/lib/node/types.cjs.map +2 -2
  27. package/dist/lib/node-esm/{SheetContainer-4XS2G25Z.mjs → SheetContainer-Q4PHM7ZE.mjs} +4 -4
  28. package/dist/lib/node-esm/{chunk-RR2AO4SM.mjs → chunk-GH33JLIW.mjs} +21 -25
  29. package/dist/lib/node-esm/chunk-GH33JLIW.mjs.map +7 -0
  30. package/dist/lib/node-esm/{chunk-KK3XL37M.mjs → chunk-J2KAVUQA.mjs} +117 -260
  31. package/dist/lib/node-esm/chunk-J2KAVUQA.mjs.map +7 -0
  32. package/dist/lib/node-esm/{chunk-IU2L277A.mjs → chunk-VCYJWE3O.mjs} +4 -5
  33. package/dist/lib/node-esm/chunk-VCYJWE3O.mjs.map +7 -0
  34. package/dist/lib/node-esm/index.mjs +8 -17
  35. package/dist/lib/node-esm/index.mjs.map +4 -4
  36. package/dist/lib/node-esm/meta.json +1 -1
  37. package/dist/lib/node-esm/meta.mjs +1 -1
  38. package/dist/lib/node-esm/types.mjs +4 -8
  39. package/dist/types/src/components/GridSheet/GridSheet.d.ts.map +1 -1
  40. package/dist/types/src/components/{CellEditor/CellEditor.stories.d.ts → GridSheet/SheetCellEditor.stories.d.ts} +2 -2
  41. package/dist/types/src/components/GridSheet/SheetCellEditor.stories.d.ts.map +1 -0
  42. package/dist/types/src/components/GridSheet/util.d.ts +2 -2
  43. package/dist/types/src/components/GridSheet/util.d.ts.map +1 -1
  44. package/dist/types/src/components/Sheet/Sheet.d.ts.map +1 -1
  45. package/dist/types/src/components/Sheet/Sheet.stories.d.ts.map +1 -1
  46. package/dist/types/src/extensions/editor/extension.d.ts.map +1 -0
  47. package/dist/types/src/extensions/editor/extension.test.d.ts.map +1 -0
  48. package/dist/types/src/extensions/editor/index.d.ts +2 -0
  49. package/dist/types/src/extensions/editor/index.d.ts.map +1 -0
  50. package/dist/types/src/extensions/index.d.ts +1 -0
  51. package/dist/types/src/extensions/index.d.ts.map +1 -1
  52. package/dist/types/src/meta.d.ts +3 -6
  53. package/dist/types/src/meta.d.ts.map +1 -1
  54. package/dist/types/src/model/formatting-model.d.ts +3 -0
  55. package/dist/types/src/model/formatting-model.d.ts.map +1 -1
  56. package/dist/types/src/model/sheet-model.d.ts +3 -2
  57. package/dist/types/src/model/sheet-model.d.ts.map +1 -1
  58. package/dist/types/src/types.d.ts +4 -20
  59. package/dist/types/src/types.d.ts.map +1 -1
  60. package/package.json +36 -34
  61. package/src/components/GridSheet/GridSheet.tsx +14 -32
  62. package/src/components/{CellEditor/CellEditor.stories.tsx → GridSheet/SheetCellEditor.stories.tsx} +2 -2
  63. package/src/components/GridSheet/util.ts +2 -6
  64. package/src/components/Sheet/Sheet.stories.tsx +4 -3
  65. package/src/components/Sheet/Sheet.tsx +2 -8
  66. package/src/{components/CellEditor → extensions/editor}/index.ts +0 -1
  67. package/src/extensions/index.ts +1 -0
  68. package/src/{meta.tsx → meta.ts} +3 -3
  69. package/src/model/formatting-model.ts +11 -8
  70. package/src/model/sheet-model.test.ts +1 -3
  71. package/src/model/sheet-model.ts +13 -11
  72. package/src/types.ts +8 -35
  73. package/dist/lib/browser/chunk-CHQAW4F4.mjs.map +0 -7
  74. package/dist/lib/browser/chunk-QILRZNE5.mjs.map +0 -7
  75. package/dist/lib/browser/chunk-WZMOZKQZ.mjs.map +0 -7
  76. package/dist/lib/node/chunk-5FTFZL5W.cjs.map +0 -7
  77. package/dist/lib/node/chunk-AOP42UAA.cjs.map +0 -7
  78. package/dist/lib/node/chunk-BNARJ5GM.cjs.map +0 -7
  79. package/dist/lib/node-esm/chunk-IU2L277A.mjs.map +0 -7
  80. package/dist/lib/node-esm/chunk-KK3XL37M.mjs.map +0 -7
  81. package/dist/lib/node-esm/chunk-RR2AO4SM.mjs.map +0 -7
  82. package/dist/types/src/components/CellEditor/CellEditor.d.ts +0 -34
  83. package/dist/types/src/components/CellEditor/CellEditor.d.ts.map +0 -1
  84. package/dist/types/src/components/CellEditor/CellEditor.stories.d.ts.map +0 -1
  85. package/dist/types/src/components/CellEditor/extension.d.ts.map +0 -1
  86. package/dist/types/src/components/CellEditor/extension.test.d.ts.map +0 -1
  87. package/dist/types/src/components/CellEditor/index.d.ts +0 -3
  88. package/dist/types/src/components/CellEditor/index.d.ts.map +0 -1
  89. package/src/components/CellEditor/CellEditor.tsx +0 -163
  90. /package/dist/lib/browser/{SheetContainer-LG77O4RM.mjs.map → SheetContainer-XBTEYQ6T.mjs.map} +0 -0
  91. /package/dist/lib/node/{SheetContainer-OZ7DHH4L.cjs.map → SheetContainer-HSRYKV52.cjs.map} +0 -0
  92. /package/dist/lib/node-esm/{SheetContainer-4XS2G25Z.mjs.map → SheetContainer-Q4PHM7ZE.mjs.map} +0 -0
  93. /package/dist/types/src/{components/CellEditor → extensions/editor}/extension.d.ts +0 -0
  94. /package/dist/types/src/{components/CellEditor → extensions/editor}/extension.test.d.ts +0 -0
  95. /package/src/{components/CellEditor → extensions/editor}/extension.test.ts +0 -0
  96. /package/src/{components/CellEditor → extensions/editor}/extension.ts +0 -0
@@ -16,23 +16,22 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var chunk_BNARJ5GM_exports = {};
20
- __export(chunk_BNARJ5GM_exports, {
19
+ var chunk_QIFIGEKV_exports = {};
20
+ __export(chunk_QIFIGEKV_exports, {
21
21
  SHEET_PLUGIN: () => SHEET_PLUGIN,
22
22
  meta_default: () => meta_default
23
23
  });
24
- module.exports = __toCommonJS(chunk_BNARJ5GM_exports);
25
- var import_app_framework = require("@dxos/app-framework");
24
+ module.exports = __toCommonJS(chunk_QIFIGEKV_exports);
26
25
  var SHEET_PLUGIN = "dxos.org/plugin/sheet";
27
- var meta_default = (0, import_app_framework.pluginMeta)({
26
+ var meta_default = {
28
27
  id: SHEET_PLUGIN,
29
28
  name: "Sheet",
30
29
  description: "A simple spreadsheet plugin.",
31
30
  icon: "ph--grid-nine--regular"
32
- });
31
+ };
33
32
  // Annotate the CommonJS export names for ESM import in node:
34
33
  0 && (module.exports = {
35
34
  SHEET_PLUGIN,
36
35
  meta_default
37
36
  });
38
- //# sourceMappingURL=chunk-BNARJ5GM.cjs.map
37
+ //# sourceMappingURL=chunk-QIFIGEKV.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/meta.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const SHEET_PLUGIN = 'dxos.org/plugin/sheet';\n\nexport default {\n id: SHEET_PLUGIN,\n name: 'Sheet',\n description: 'A simple spreadsheet plugin.',\n icon: 'ph--grid-nine--regular',\n} satisfies PluginMeta;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAMA,eAAe;AAE5B,IAAA,eAAe;EACbC,IAAID;EACJE,MAAM;EACNC,aAAa;EACbC,MAAM;AACR;",
6
+ "names": ["SHEET_PLUGIN", "id", "name", "description", "icon"]
7
+ }
@@ -26,20 +26,21 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var chunk_5FTFZL5W_exports = {};
30
- __export(chunk_5FTFZL5W_exports, {
29
+ var chunk_UXH6GKEU_exports = {};
30
+ __export(chunk_UXH6GKEU_exports, {
31
31
  ComputeGraphContextProvider: () => ComputeGraphContextProvider,
32
32
  Sheet: () => Sheet,
33
33
  SheetContainer: () => SheetContainer,
34
34
  addressToIndex: () => addressToIndex,
35
35
  compareIndexPositions: () => compareIndexPositions,
36
+ computeGraphFacet: () => computeGraphFacet,
36
37
  createSheet: () => createSheet,
37
38
  useComputeGraph: () => useComputeGraph,
38
39
  useSheetContext: () => useSheetContext
39
40
  });
40
- module.exports = __toCommonJS(chunk_5FTFZL5W_exports);
41
- var import_chunk_AOP42UAA = require("./chunk-AOP42UAA.cjs");
42
- var import_chunk_BNARJ5GM = require("./chunk-BNARJ5GM.cjs");
41
+ module.exports = __toCommonJS(chunk_UXH6GKEU_exports);
42
+ var import_chunk_XYGN3RTG = require("./chunk-XYGN3RTG.cjs");
43
+ var import_chunk_QIFIGEKV = require("./chunk-QIFIGEKV.cjs");
43
44
  var import_chunk_5XPK2V4A = require("./chunk-5XPK2V4A.cjs");
44
45
  var import_core = require("@dnd-kit/core");
45
46
  var import_modifiers = require("@dnd-kit/modifiers");
@@ -53,6 +54,7 @@ var import_async = require("@dxos/async");
53
54
  var import_echo = require("@dxos/client/echo");
54
55
  var import_log = require("@dxos/log");
55
56
  var import_react_ui_attention = require("@dxos/react-ui-attention");
57
+ var import_react_ui_grid = require("@dxos/react-ui-grid");
56
58
  var import_react_ui_theme = require("@dxos/react-ui-theme");
57
59
  var import_react3 = require("react");
58
60
  var import_invariant = require("@dxos/invariant");
@@ -68,12 +70,14 @@ var import_react_hooks = require("@dxos/react-hooks");
68
70
  var import_react7 = __toESM(require("react"));
69
71
  var import_react8 = __toESM(require("react"));
70
72
  var import_react9 = require("react");
73
+ var import_schema = require("@dxos/schema");
71
74
  var import_async2 = require("@dxos/async");
72
75
  var import_context = require("@dxos/context");
73
76
  var import_echo_schema3 = require("@dxos/echo-schema");
74
77
  var import_invariant3 = require("@dxos/invariant");
75
78
  var import_keys = require("@dxos/keys");
76
79
  var import_log2 = require("@dxos/log");
80
+ var import_schema2 = require("@dxos/schema");
77
81
  var import_hyperformula = require("#hyperformula");
78
82
  var import_react10 = require("react");
79
83
  var import_signals_core = require("@preact/signals-core");
@@ -82,16 +86,18 @@ var import_app_framework = require("@dxos/app-framework");
82
86
  var import_async3 = require("@dxos/async");
83
87
  var import_echo2 = require("@dxos/react-client/echo");
84
88
  var import_react_ui = require("@dxos/react-ui");
89
+ var import_language = require("@codemirror/language");
90
+ var import_state = require("@codemirror/state");
85
91
  var import_view = require("@codemirror/view");
86
- var import_react12 = __toESM(require("react"));
87
- var import_react_ui2 = require("@dxos/react-ui");
88
- var import_react_ui_editor = require("@dxos/react-ui-editor");
92
+ var import_async4 = require("@dxos/async");
93
+ var import_invariant4 = require("@dxos/invariant");
94
+ var import_state2 = require("@dxos/react-ui-editor/state");
89
95
  var import_autocomplete = require("@codemirror/autocomplete");
90
- var import_language = require("@codemirror/language");
96
+ var import_language2 = require("@codemirror/language");
91
97
  var import_view2 = require("@codemirror/view");
92
98
  var import_highlight = require("@lezer/highlight");
93
99
  var import_codemirror_lang_spreadsheet = require("codemirror-lang-spreadsheet");
94
- var import_state = require("@dxos/react-ui-editor/state");
100
+ var import_state3 = require("@dxos/react-ui-editor/state");
95
101
  var import_react_ui_theme2 = require("@dxos/react-ui-theme");
96
102
  var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-sheet/src/defs/types.ts";
97
103
  var DEFAULT_ROWS = 50;
@@ -192,7 +198,7 @@ var initialize = (sheet, { rows = DEFAULT_ROWS, columns = DEFAULT_COLUMNS } = {}
192
198
  }
193
199
  };
194
200
  var createSheet = ({ name, cells, ...size } = {}) => {
195
- const sheet = (0, import_echo_schema.create)(import_chunk_AOP42UAA.SheetType, {
201
+ const sheet = (0, import_echo_schema.create)(import_chunk_XYGN3RTG.SheetType, {
196
202
  name,
197
203
  cells: {},
198
204
  rows: [],
@@ -579,7 +585,7 @@ var ComputeGraphContextProvider = ({ registry, children }) => {
579
585
  }
580
586
  }, children);
581
587
  };
582
- var SheetContainer = import_react7.default.lazy(() => import("./SheetContainer-OZ7DHH4L.cjs"));
588
+ var SheetContainer = import_react7.default.lazy(() => import("./SheetContainer-HSRYKV52.cjs"));
583
589
  var useComputeGraph = (space) => {
584
590
  const { registry } = (0, import_react6.useContext)(ComputeGraphContext) ?? (0, import_debug.raise)(new Error("Missing ComputeGraphContext"));
585
591
  const [graph] = (0, import_react_hooks.useAsyncState)(async () => {
@@ -626,7 +632,7 @@ var FormattingModel = class {
626
632
  const defaultNumber = "justify-end font-mono";
627
633
  const type = formatting?.type ?? this._model.getValueType(cell);
628
634
  switch (type) {
629
- case import_chunk_AOP42UAA.ValueTypeEnum.Boolean: {
635
+ case import_schema.FieldValueType.Boolean: {
630
636
  return {
631
637
  value: value.toLocaleString().toUpperCase(),
632
638
  classNames: [
@@ -638,7 +644,7 @@ var FormattingModel = class {
638
644
  //
639
645
  // Numbers.
640
646
  //
641
- case import_chunk_AOP42UAA.ValueTypeEnum.Number: {
647
+ case import_schema.FieldValueType.Number: {
642
648
  return {
643
649
  value: value.toLocaleString(locales),
644
650
  classNames: [
@@ -647,7 +653,7 @@ var FormattingModel = class {
647
653
  ]
648
654
  };
649
655
  }
650
- case import_chunk_AOP42UAA.ValueTypeEnum.Percent: {
656
+ case import_schema.FieldValueType.Percent: {
651
657
  return {
652
658
  value: value * 100 + "%",
653
659
  classNames: [
@@ -656,7 +662,7 @@ var FormattingModel = class {
656
662
  ]
657
663
  };
658
664
  }
659
- case import_chunk_AOP42UAA.ValueTypeEnum.Currency: {
665
+ case import_schema.FieldValueType.Currency: {
660
666
  return {
661
667
  value: value.toLocaleString(locales, {
662
668
  style: "currency",
@@ -673,21 +679,21 @@ var FormattingModel = class {
673
679
  //
674
680
  // Dates.
675
681
  //
676
- case import_chunk_AOP42UAA.ValueTypeEnum.DateTime: {
682
+ case import_schema.FieldValueType.DateTime: {
677
683
  const date = this._model.toLocalDate(value);
678
684
  return {
679
685
  value: date.toLocaleString(locales),
680
686
  classNames
681
687
  };
682
688
  }
683
- case import_chunk_AOP42UAA.ValueTypeEnum.Date: {
689
+ case import_schema.FieldValueType.Date: {
684
690
  const date = this._model.toLocalDate(value);
685
691
  return {
686
692
  value: date.toLocaleDateString(locales),
687
693
  classNames
688
694
  };
689
695
  }
690
- case import_chunk_AOP42UAA.ValueTypeEnum.Time: {
696
+ case import_schema.FieldValueType.Time: {
691
697
  const date = this._model.toLocalDate(value);
692
698
  return {
693
699
  value: date.toLocaleTimeString(locales),
@@ -705,13 +711,13 @@ var FormattingModel = class {
705
711
  };
706
712
  var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-sheet/src/model/sheet-model.ts";
707
713
  var typeMap = {
708
- BOOLEAN: import_chunk_AOP42UAA.ValueTypeEnum.Boolean,
709
- NUMBER_RAW: import_chunk_AOP42UAA.ValueTypeEnum.Number,
710
- NUMBER_PERCENT: import_chunk_AOP42UAA.ValueTypeEnum.Percent,
711
- NUMBER_CURRENCY: import_chunk_AOP42UAA.ValueTypeEnum.Currency,
712
- NUMBER_DATETIME: import_chunk_AOP42UAA.ValueTypeEnum.DateTime,
713
- NUMBER_DATE: import_chunk_AOP42UAA.ValueTypeEnum.Date,
714
- NUMBER_TIME: import_chunk_AOP42UAA.ValueTypeEnum.Time
714
+ BOOLEAN: import_schema2.FieldValueType.Boolean,
715
+ NUMBER_RAW: import_schema2.FieldValueType.Number,
716
+ NUMBER_PERCENT: import_schema2.FieldValueType.Percent,
717
+ NUMBER_CURRENCY: import_schema2.FieldValueType.Currency,
718
+ NUMBER_DATETIME: import_schema2.FieldValueType.DateTime,
719
+ NUMBER_DATE: import_schema2.FieldValueType.Date,
720
+ NUMBER_TIME: import_schema2.FieldValueType.Time
715
721
  };
716
722
  var getTopLeft = (range) => {
717
723
  const to = range.to ?? range.from;
@@ -761,7 +767,7 @@ var SheetModel = class extends import_context.Resource {
761
767
  id: this.id
762
768
  }, {
763
769
  F: __dxlog_file2,
764
- L: 104,
770
+ L: 106,
765
771
  S: this,
766
772
  C: (f, a) => f(...a)
767
773
  });
@@ -783,7 +789,7 @@ var SheetModel = class extends import_context.Resource {
783
789
  reset() {
784
790
  (0, import_invariant3.invariant)(this._node, void 0, {
785
791
  F: __dxlog_file2,
786
- L: 124,
792
+ L: 126,
787
793
  S: this,
788
794
  A: [
789
795
  "this._node",
@@ -794,7 +800,7 @@ var SheetModel = class extends import_context.Resource {
794
800
  Object.entries(this._sheet.cells).forEach(([key, { value }]) => {
795
801
  (0, import_invariant3.invariant)(this._node, void 0, {
796
802
  F: __dxlog_file2,
797
- L: 127,
803
+ L: 129,
798
804
  S: this,
799
805
  A: [
800
806
  "this._node",
@@ -840,7 +846,7 @@ var SheetModel = class extends import_context.Resource {
840
846
  clear(range) {
841
847
  (0, import_invariant3.invariant)(this._node, void 0, {
842
848
  F: __dxlog_file2,
843
- L: 169,
849
+ L: 171,
844
850
  S: this,
845
851
  A: [
846
852
  "this._node",
@@ -858,7 +864,7 @@ var SheetModel = class extends import_context.Resource {
858
864
  cut(range) {
859
865
  (0, import_invariant3.invariant)(this._node, void 0, {
860
866
  F: __dxlog_file2,
861
- L: 180,
867
+ L: 182,
862
868
  S: this,
863
869
  A: [
864
870
  "this._node",
@@ -874,7 +880,7 @@ var SheetModel = class extends import_context.Resource {
874
880
  copy(range) {
875
881
  (0, import_invariant3.invariant)(this._node, void 0, {
876
882
  F: __dxlog_file2,
877
- L: 189,
883
+ L: 191,
878
884
  S: this,
879
885
  A: [
880
886
  "this._node",
@@ -886,7 +892,7 @@ var SheetModel = class extends import_context.Resource {
886
892
  paste(cell) {
887
893
  (0, import_invariant3.invariant)(this._node, void 0, {
888
894
  F: __dxlog_file2,
889
- L: 194,
895
+ L: 196,
890
896
  S: this,
891
897
  A: [
892
898
  "this._node",
@@ -913,7 +919,7 @@ var SheetModel = class extends import_context.Resource {
913
919
  undo() {
914
920
  (0, import_invariant3.invariant)(this._node, void 0, {
915
921
  F: __dxlog_file2,
916
- L: 209,
922
+ L: 211,
917
923
  S: this,
918
924
  A: [
919
925
  "this._node",
@@ -927,7 +933,7 @@ var SheetModel = class extends import_context.Resource {
927
933
  redo() {
928
934
  (0, import_invariant3.invariant)(this._node, void 0, {
929
935
  F: __dxlog_file2,
930
- L: 217,
936
+ L: 219,
931
937
  S: this,
932
938
  A: [
933
939
  "this._node",
@@ -971,7 +977,7 @@ var SheetModel = class extends import_context.Resource {
971
977
  getValue(cell) {
972
978
  (0, import_invariant3.invariant)(this._node, void 0, {
973
979
  F: __dxlog_file2,
974
- L: 260,
980
+ L: 262,
975
981
  S: this,
976
982
  A: [
977
983
  "this._node",
@@ -990,7 +996,7 @@ var SheetModel = class extends import_context.Resource {
990
996
  getValueType(cell) {
991
997
  (0, import_invariant3.invariant)(this._node, void 0, {
992
998
  F: __dxlog_file2,
993
- L: 273,
999
+ L: 275,
994
1000
  S: this,
995
1001
  A: [
996
1002
  "this._node",
@@ -1007,7 +1013,7 @@ var SheetModel = class extends import_context.Resource {
1007
1013
  setValue(cell, value) {
1008
1014
  (0, import_invariant3.invariant)(this._node, void 0, {
1009
1015
  F: __dxlog_file2,
1010
- L: 283,
1016
+ L: 285,
1011
1017
  S: this,
1012
1018
  A: [
1013
1019
  "this._node",
@@ -1104,7 +1110,7 @@ var SheetModel = class extends import_context.Resource {
1104
1110
  mapFormulaRefsToIndices(formula) {
1105
1111
  (0, import_invariant3.invariant)(formula.charAt(0) === "=", void 0, {
1106
1112
  F: __dxlog_file2,
1107
- L: 372,
1113
+ L: 374,
1108
1114
  S: this,
1109
1115
  A: [
1110
1116
  "formula.charAt(0) === '='",
@@ -1121,7 +1127,7 @@ var SheetModel = class extends import_context.Resource {
1121
1127
  mapFormulaIndicesToRefs(formula) {
1122
1128
  (0, import_invariant3.invariant)(formula.charAt(0) === "=", void 0, {
1123
1129
  F: __dxlog_file2,
1124
- L: 382,
1130
+ L: 384,
1125
1131
  S: this,
1126
1132
  A: [
1127
1133
  "formula.charAt(0) === '='",
@@ -1147,7 +1153,7 @@ var SheetModel = class extends import_context.Resource {
1147
1153
  toDateTime(num) {
1148
1154
  (0, import_invariant3.invariant)(this._node, void 0, {
1149
1155
  F: __dxlog_file2,
1150
- L: 403,
1156
+ L: 405,
1151
1157
  S: this,
1152
1158
  A: [
1153
1159
  "this._node",
@@ -1159,7 +1165,7 @@ var SheetModel = class extends import_context.Resource {
1159
1165
  toDate(num) {
1160
1166
  (0, import_invariant3.invariant)(this._node, void 0, {
1161
1167
  F: __dxlog_file2,
1162
- L: 408,
1168
+ L: 410,
1163
1169
  S: this,
1164
1170
  A: [
1165
1171
  "this._node",
@@ -1171,7 +1177,7 @@ var SheetModel = class extends import_context.Resource {
1171
1177
  toTime(num) {
1172
1178
  (0, import_invariant3.invariant)(this._node, void 0, {
1173
1179
  F: __dxlog_file2,
1174
- L: 413,
1180
+ L: 415,
1175
1181
  S: this,
1176
1182
  A: [
1177
1183
  "this._node",
@@ -1260,7 +1266,7 @@ var CommentIndicator = () => {
1260
1266
  var ThreadedCellWrapper = ({ children }) => {
1261
1267
  const dispatch = (0, import_app_framework.useIntentDispatcher)();
1262
1268
  const [isHovered, setIsHovered] = import_react11.default.useState(false);
1263
- const { t } = (0, import_react_ui.useTranslation)(import_chunk_BNARJ5GM.SHEET_PLUGIN);
1269
+ const { t } = (0, import_react_ui.useTranslation)(import_chunk_QIFIGEKV.SHEET_PLUGIN);
1264
1270
  const handleClick = import_react11.default.useCallback((_event) => {
1265
1271
  void dispatch({
1266
1272
  action: import_app_framework.LayoutAction.SET_LAYOUT,
@@ -1315,7 +1321,7 @@ var useUpdateCursorOnThreadSelection = () => {
1315
1321
  model.sheet,
1316
1322
  setCursor
1317
1323
  ]);
1318
- (0, import_app_framework.useIntentResolver)(import_chunk_BNARJ5GM.SHEET_PLUGIN, handleScrollIntoView);
1324
+ (0, import_app_framework.useIntentResolver)(import_chunk_QIFIGEKV.SHEET_PLUGIN, handleScrollIntoView);
1319
1325
  };
1320
1326
  var useSelectThreadOnCursorChange = () => {
1321
1327
  const { cursor, model } = useSheetContext();
@@ -1439,157 +1445,9 @@ var scrollIntoView = (scrollContainer, el) => {
1439
1445
  scrollContainer.scrollLeft += 2 + scrollerBounds.right - cellBounds.right;
1440
1446
  }
1441
1447
  };
1442
- var editorKeys = ({ onNav, onClose }) => {
1443
- return import_view.keymap.of([
1444
- {
1445
- key: "ArrowUp",
1446
- run: (editor) => {
1447
- const value = editor.state.doc.toString();
1448
- onNav?.(value, {
1449
- key: "ArrowUp"
1450
- });
1451
- return !!onNav;
1452
- }
1453
- },
1454
- {
1455
- key: "ArrowDown",
1456
- run: (editor) => {
1457
- const value = editor.state.doc.toString();
1458
- onNav?.(value, {
1459
- key: "ArrowDown"
1460
- });
1461
- return !!onNav;
1462
- }
1463
- },
1464
- {
1465
- key: "ArrowLeft",
1466
- run: (editor) => {
1467
- const value = editor.state.doc.toString();
1468
- onNav?.(value, {
1469
- key: "ArrowLeft"
1470
- });
1471
- return !!onNav;
1472
- }
1473
- },
1474
- {
1475
- key: "ArrowRight",
1476
- run: (editor) => {
1477
- const value = editor.state.doc.toString();
1478
- onNav?.(value, {
1479
- key: "ArrowRight"
1480
- });
1481
- return !!onNav;
1482
- }
1483
- },
1484
- {
1485
- key: "Enter",
1486
- run: (editor) => {
1487
- onClose(editor.state.doc.toString(), {
1488
- key: "Enter"
1489
- });
1490
- return true;
1491
- },
1492
- shift: (editor) => {
1493
- onClose(editor.state.doc.toString(), {
1494
- key: "Enter",
1495
- shift: true
1496
- });
1497
- return true;
1498
- }
1499
- },
1500
- {
1501
- key: "Tab",
1502
- run: (editor) => {
1503
- onClose(editor.state.doc.toString(), {
1504
- key: "Tab"
1505
- });
1506
- return true;
1507
- },
1508
- shift: (editor) => {
1509
- onClose(editor.state.doc.toString(), {
1510
- key: "Tab",
1511
- shift: true
1512
- });
1513
- return true;
1514
- }
1515
- },
1516
- {
1517
- key: "Escape",
1518
- run: () => {
1519
- onClose(void 0, {
1520
- key: "Escape"
1521
- });
1522
- return true;
1523
- }
1524
- }
1525
- ]);
1526
- };
1527
- var editorVariants = {
1528
- // TODO(thure): remove when legacy is no longer used.
1529
- legacy: {
1530
- root: "flex w-full",
1531
- editor: "flex w-full [&>.cm-scroller]:scrollbar-none",
1532
- content: "!px-2 !py-1"
1533
- },
1534
- grid: {
1535
- root: "absolute z-[1]",
1536
- editor: "[&>.cm-scroller]:scrollbar-none tabular-nums",
1537
- content: "!border !border-transparent !p-0.5"
1538
- }
1539
- };
1540
- var CellEditor = ({ value, extension, autoFocus, onBlur, variant = "legacy", box, gridId }) => {
1541
- const { themeMode } = (0, import_react_ui2.useThemeContext)();
1542
- const { parentRef } = (0, import_react_ui_editor.useTextEditor)(() => {
1543
- return {
1544
- autoFocus,
1545
- initialValue: value,
1546
- selection: {
1547
- anchor: value?.length ?? 0
1548
- },
1549
- extensions: [
1550
- extension ?? [],
1551
- import_react_ui_editor.preventNewline,
1552
- import_view.EditorView.focusChangeEffect.of((_, focusing) => {
1553
- if (!focusing) {
1554
- onBlur?.({
1555
- type: "blur"
1556
- });
1557
- }
1558
- return null;
1559
- }),
1560
- (0, import_react_ui_editor.createBasicExtensions)({
1561
- lineWrapping: false
1562
- }),
1563
- (0, import_react_ui_editor.createThemeExtensions)({
1564
- themeMode,
1565
- slots: {
1566
- editor: {
1567
- className: editorVariants[variant].editor
1568
- },
1569
- content: {
1570
- className: editorVariants[variant].content
1571
- }
1572
- }
1573
- })
1574
- ]
1575
- };
1576
- }, [
1577
- extension,
1578
- autoFocus,
1579
- value,
1580
- variant,
1581
- onBlur
1582
- ]);
1583
- return /* @__PURE__ */ import_react12.default.createElement("div", {
1584
- ref: parentRef,
1585
- className: editorVariants[variant].root,
1586
- style: box,
1587
- ...gridId && {
1588
- "data-grid": gridId
1589
- }
1590
- });
1591
- };
1592
- var highlightStyles = import_language.HighlightStyle.define([
1448
+ var updateAllDecorations = import_state.StateEffect.define();
1449
+ var computeGraphFacet = (0, import_state2.singleValueFacet)();
1450
+ var highlightStyles = import_language2.HighlightStyle.define([
1593
1451
  // Function.
1594
1452
  {
1595
1453
  tag: import_highlight.tags.name,
@@ -1619,7 +1477,7 @@ var highlightStyles = import_language.HighlightStyle.define([
1619
1477
  class: "text-unAccent"
1620
1478
  }
1621
1479
  ]);
1622
- var languageFacet = (0, import_state.singleValueFacet)();
1480
+ var languageFacet = (0, import_state3.singleValueFacet)();
1623
1481
  var sheetExtension = ({ functions = [] }) => {
1624
1482
  const { extension, language } = (0, import_codemirror_lang_spreadsheet.spreadsheet)({
1625
1483
  idiom: "en-US",
@@ -1691,7 +1549,7 @@ var sheetExtension = ({ functions = [] }) => {
1691
1549
  };
1692
1550
  }
1693
1551
  }),
1694
- (0, import_language.syntaxHighlighting)(highlightStyles),
1552
+ (0, import_language2.syntaxHighlighting)(highlightStyles),
1695
1553
  (0, import_autocomplete.autocompletion)({
1696
1554
  aboveCursor: false,
1697
1555
  defaultKeymap: true,
@@ -2298,7 +2156,7 @@ var SheetGrid = /* @__PURE__ */ (0, import_react2.forwardRef)(({ size, rows, col
2298
2156
  id: model.id
2299
2157
  }, {
2300
2158
  F: __dxlog_file4,
2301
- L: 738,
2159
+ L: 732,
2302
2160
  S: void 0,
2303
2161
  C: (f, a) => f(...a)
2304
2162
  });
@@ -2590,7 +2448,7 @@ var GridCellEditor = ({ style, value, onNav, onClose }) => {
2590
2448
  range
2591
2449
  ]);
2592
2450
  const extension = (0, import_react2.useMemo)(() => [
2593
- editorKeys({
2451
+ (0, import_react_ui_grid.editorKeys)({
2594
2452
  onNav,
2595
2453
  onClose
2596
2454
  }),
@@ -2606,7 +2464,7 @@ var GridCellEditor = ({ style, value, onNav, onClose }) => {
2606
2464
  style,
2607
2465
  className: (0, import_react_ui_theme.mx)("z-20 flex", fragments.cellSelected),
2608
2466
  onClick: (ev) => ev.stopPropagation()
2609
- }, /* @__PURE__ */ import_react2.default.createElement(CellEditor, {
2467
+ }, /* @__PURE__ */ import_react2.default.createElement(import_react_ui_grid.CellEditor, {
2610
2468
  autoFocus: true,
2611
2469
  value,
2612
2470
  extension
@@ -2683,8 +2541,9 @@ var Sheet = {
2683
2541
  SheetContainer,
2684
2542
  addressToIndex,
2685
2543
  compareIndexPositions,
2544
+ computeGraphFacet,
2686
2545
  createSheet,
2687
2546
  useComputeGraph,
2688
2547
  useSheetContext
2689
2548
  });
2690
- //# sourceMappingURL=chunk-5FTFZL5W.cjs.map
2549
+ //# sourceMappingURL=chunk-UXH6GKEU.cjs.map