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

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 (85) hide show
  1. package/dist/lib/browser/{SheetContainer-LG77O4RM.mjs → SheetContainer-7QG5RIM4.mjs} +4 -4
  2. package/dist/lib/browser/{chunk-WZMOZKQZ.mjs → chunk-4DPOO6BK.mjs} +18 -6
  3. package/dist/lib/browser/{chunk-WZMOZKQZ.mjs.map → chunk-4DPOO6BK.mjs.map} +3 -3
  4. package/dist/lib/browser/{chunk-CHQAW4F4.mjs → chunk-BKTLTM2Y.mjs} +83 -227
  5. package/dist/lib/browser/chunk-BKTLTM2Y.mjs.map +7 -0
  6. package/dist/lib/browser/{chunk-QILRZNE5.mjs → chunk-D3QTX46O.mjs} +4 -5
  7. package/dist/lib/browser/chunk-D3QTX46O.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 +2 -2
  13. package/dist/lib/node/{SheetContainer-OZ7DHH4L.cjs → SheetContainer-DXDD2G3A.cjs} +16 -16
  14. package/dist/lib/node/{chunk-5FTFZL5W.cjs → chunk-4FMMRVT2.cjs} +42 -185
  15. package/dist/lib/node/chunk-4FMMRVT2.cjs.map +7 -0
  16. package/dist/lib/node/{chunk-AOP42UAA.cjs → chunk-PJY2K5S2.cjs} +22 -10
  17. package/dist/lib/node/{chunk-AOP42UAA.cjs.map → chunk-PJY2K5S2.cjs.map} +3 -3
  18. package/dist/lib/node/{chunk-BNARJ5GM.cjs → chunk-QIFIGEKV.cjs} +6 -7
  19. package/dist/lib/node/chunk-QIFIGEKV.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 +9 -9
  26. package/dist/lib/node/types.cjs.map +1 -1
  27. package/dist/lib/node-esm/{SheetContainer-4XS2G25Z.mjs → SheetContainer-5WYNOYYD.mjs} +4 -4
  28. package/dist/lib/node-esm/{chunk-RR2AO4SM.mjs → chunk-2X36GIGW.mjs} +18 -6
  29. package/dist/lib/node-esm/{chunk-RR2AO4SM.mjs.map → chunk-2X36GIGW.mjs.map} +3 -3
  30. package/dist/lib/node-esm/{chunk-KK3XL37M.mjs → chunk-JYDBXLDH.mjs} +83 -227
  31. package/dist/lib/node-esm/chunk-JYDBXLDH.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 +2 -2
  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/types.d.ts.map +1 -1
  55. package/package.json +34 -34
  56. package/src/components/GridSheet/GridSheet.tsx +14 -32
  57. package/src/components/{CellEditor/CellEditor.stories.tsx → GridSheet/SheetCellEditor.stories.tsx} +2 -2
  58. package/src/components/GridSheet/util.ts +2 -6
  59. package/src/components/Sheet/Sheet.tsx +2 -8
  60. package/src/{components/CellEditor → extensions/editor}/index.ts +0 -1
  61. package/src/extensions/index.ts +1 -0
  62. package/src/{meta.tsx → meta.ts} +3 -3
  63. package/src/model/sheet-model.test.ts +1 -3
  64. package/src/types.ts +4 -4
  65. package/dist/lib/browser/chunk-CHQAW4F4.mjs.map +0 -7
  66. package/dist/lib/browser/chunk-QILRZNE5.mjs.map +0 -7
  67. package/dist/lib/node/chunk-5FTFZL5W.cjs.map +0 -7
  68. package/dist/lib/node/chunk-BNARJ5GM.cjs.map +0 -7
  69. package/dist/lib/node-esm/chunk-IU2L277A.mjs.map +0 -7
  70. package/dist/lib/node-esm/chunk-KK3XL37M.mjs.map +0 -7
  71. package/dist/types/src/components/CellEditor/CellEditor.d.ts +0 -34
  72. package/dist/types/src/components/CellEditor/CellEditor.d.ts.map +0 -1
  73. package/dist/types/src/components/CellEditor/CellEditor.stories.d.ts.map +0 -1
  74. package/dist/types/src/components/CellEditor/extension.d.ts.map +0 -1
  75. package/dist/types/src/components/CellEditor/extension.test.d.ts.map +0 -1
  76. package/dist/types/src/components/CellEditor/index.d.ts +0 -3
  77. package/dist/types/src/components/CellEditor/index.d.ts.map +0 -1
  78. package/src/components/CellEditor/CellEditor.tsx +0 -163
  79. /package/dist/lib/browser/{SheetContainer-LG77O4RM.mjs.map → SheetContainer-7QG5RIM4.mjs.map} +0 -0
  80. /package/dist/lib/node/{SheetContainer-OZ7DHH4L.cjs.map → SheetContainer-DXDD2G3A.cjs.map} +0 -0
  81. /package/dist/lib/node-esm/{SheetContainer-4XS2G25Z.mjs.map → SheetContainer-5WYNOYYD.mjs.map} +0 -0
  82. /package/dist/types/src/{components/CellEditor → extensions/editor}/extension.d.ts +0 -0
  83. /package/dist/types/src/{components/CellEditor → extensions/editor}/extension.test.d.ts +0 -0
  84. /package/src/{components/CellEditor → extensions/editor}/extension.test.ts +0 -0
  85. /package/src/{components/CellEditor → extensions/editor}/extension.ts +0 -0
@@ -2,10 +2,10 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import {
3
3
  SheetType,
4
4
  ValueTypeEnum
5
- } from "./chunk-RR2AO4SM.mjs";
5
+ } from "./chunk-2X36GIGW.mjs";
6
6
  import {
7
7
  SHEET_PLUGIN
8
- } from "./chunk-IU2L277A.mjs";
8
+ } from "./chunk-VCYJWE3O.mjs";
9
9
  import {
10
10
  createSheetName
11
11
  } from "./chunk-5WPZCXNS.mjs";
@@ -16,13 +16,14 @@ import { restrictToHorizontalAxis, restrictToVerticalAxis } from "@dnd-kit/modif
16
16
  import { getEventCoordinates, useCombinedRefs } from "@dnd-kit/utilities";
17
17
  import { Function as FunctionIcon } from "@phosphor-icons/react";
18
18
  import { Resizable } from "re-resizable";
19
- import React6, { forwardRef, useEffect as useEffect4, useImperativeHandle, useMemo as useMemo4, useRef, useState as useState5 } from "react";
19
+ import React5, { forwardRef, useEffect as useEffect4, useImperativeHandle, useMemo as useMemo4, useRef, useState as useState5 } from "react";
20
20
  import { createPortal } from "react-dom";
21
21
  import { useResizeDetector } from "react-resize-detector";
22
- import { debounce as debounce2 } from "@dxos/async";
22
+ import { debounce as debounce3 } from "@dxos/async";
23
23
  import { fullyQualifiedId as fullyQualifiedId2, createDocAccessor } from "@dxos/client/echo";
24
24
  import { log as log2 } from "@dxos/log";
25
25
  import { ATTENABLE_ATTRIBUTE, useAttendableAttributes, useAttention, useAttentionPath } from "@dxos/react-ui-attention";
26
+ import { CellEditor, editorKeys } from "@dxos/react-ui-grid";
26
27
  import { mx as mx2 } from "@dxos/react-ui-theme";
27
28
 
28
29
  // packages/plugins/plugin-sheet/src/components/Sheet/grid.ts
@@ -545,7 +546,7 @@ var ComputeGraphContextProvider = ({ registry, children }) => {
545
546
  };
546
547
 
547
548
  // packages/plugins/plugin-sheet/src/components/index.ts
548
- var SheetContainer = React2.lazy(() => import("./SheetContainer-4XS2G25Z.mjs"));
549
+ var SheetContainer = React2.lazy(() => import("./SheetContainer-5WYNOYYD.mjs"));
549
550
 
550
551
  // packages/plugins/plugin-sheet/src/hooks/useComputeGraph.ts
551
552
  var useComputeGraph = (space) => {
@@ -1439,169 +1440,23 @@ var scrollIntoView = (scrollContainer, el) => {
1439
1440
  }
1440
1441
  };
1441
1442
 
1442
- // packages/plugins/plugin-sheet/src/components/CellEditor/CellEditor.tsx
1443
- import { EditorView, keymap } from "@codemirror/view";
1444
- import React5 from "react";
1445
- import { useThemeContext } from "@dxos/react-ui";
1446
- import { createBasicExtensions, createThemeExtensions, preventNewline, useTextEditor } from "@dxos/react-ui-editor";
1447
- var editorKeys = ({ onNav, onClose }) => {
1448
- return keymap.of([
1449
- {
1450
- key: "ArrowUp",
1451
- run: (editor) => {
1452
- const value = editor.state.doc.toString();
1453
- onNav?.(value, {
1454
- key: "ArrowUp"
1455
- });
1456
- return !!onNav;
1457
- }
1458
- },
1459
- {
1460
- key: "ArrowDown",
1461
- run: (editor) => {
1462
- const value = editor.state.doc.toString();
1463
- onNav?.(value, {
1464
- key: "ArrowDown"
1465
- });
1466
- return !!onNav;
1467
- }
1468
- },
1469
- {
1470
- key: "ArrowLeft",
1471
- run: (editor) => {
1472
- const value = editor.state.doc.toString();
1473
- onNav?.(value, {
1474
- key: "ArrowLeft"
1475
- });
1476
- return !!onNav;
1477
- }
1478
- },
1479
- {
1480
- key: "ArrowRight",
1481
- run: (editor) => {
1482
- const value = editor.state.doc.toString();
1483
- onNav?.(value, {
1484
- key: "ArrowRight"
1485
- });
1486
- return !!onNav;
1487
- }
1488
- },
1489
- {
1490
- key: "Enter",
1491
- run: (editor) => {
1492
- onClose(editor.state.doc.toString(), {
1493
- key: "Enter"
1494
- });
1495
- return true;
1496
- },
1497
- shift: (editor) => {
1498
- onClose(editor.state.doc.toString(), {
1499
- key: "Enter",
1500
- shift: true
1501
- });
1502
- return true;
1503
- }
1504
- },
1505
- {
1506
- key: "Tab",
1507
- run: (editor) => {
1508
- onClose(editor.state.doc.toString(), {
1509
- key: "Tab"
1510
- });
1511
- return true;
1512
- },
1513
- shift: (editor) => {
1514
- onClose(editor.state.doc.toString(), {
1515
- key: "Tab",
1516
- shift: true
1517
- });
1518
- return true;
1519
- }
1520
- },
1521
- {
1522
- key: "Escape",
1523
- run: () => {
1524
- onClose(void 0, {
1525
- key: "Escape"
1526
- });
1527
- return true;
1528
- }
1529
- }
1530
- ]);
1531
- };
1532
- var editorVariants = {
1533
- // TODO(thure): remove when legacy is no longer used.
1534
- legacy: {
1535
- root: "flex w-full",
1536
- editor: "flex w-full [&>.cm-scroller]:scrollbar-none",
1537
- content: "!px-2 !py-1"
1538
- },
1539
- grid: {
1540
- root: "absolute z-[1]",
1541
- editor: "[&>.cm-scroller]:scrollbar-none tabular-nums",
1542
- content: "!border !border-transparent !p-0.5"
1543
- }
1544
- };
1545
- var CellEditor = ({ value, extension, autoFocus, onBlur, variant = "legacy", box, gridId }) => {
1546
- const { themeMode } = useThemeContext();
1547
- const { parentRef } = useTextEditor(() => {
1548
- return {
1549
- autoFocus,
1550
- initialValue: value,
1551
- selection: {
1552
- anchor: value?.length ?? 0
1553
- },
1554
- extensions: [
1555
- extension ?? [],
1556
- preventNewline,
1557
- EditorView.focusChangeEffect.of((_, focusing) => {
1558
- if (!focusing) {
1559
- onBlur?.({
1560
- type: "blur"
1561
- });
1562
- }
1563
- return null;
1564
- }),
1565
- createBasicExtensions({
1566
- lineWrapping: false
1567
- }),
1568
- createThemeExtensions({
1569
- themeMode,
1570
- slots: {
1571
- editor: {
1572
- className: editorVariants[variant].editor
1573
- },
1574
- content: {
1575
- className: editorVariants[variant].content
1576
- }
1577
- }
1578
- })
1579
- ]
1580
- };
1581
- }, [
1582
- extension,
1583
- autoFocus,
1584
- value,
1585
- variant,
1586
- onBlur
1587
- ]);
1588
- return /* @__PURE__ */ React5.createElement("div", {
1589
- ref: parentRef,
1590
- className: editorVariants[variant].root,
1591
- style: box,
1592
- ...gridId && {
1593
- "data-grid": gridId
1594
- }
1595
- });
1596
- };
1443
+ // packages/plugins/plugin-sheet/src/extensions/compute.ts
1444
+ import { syntaxTree } from "@codemirror/language";
1445
+ import { RangeSetBuilder, StateEffect, StateField } from "@codemirror/state";
1446
+ import { Decoration, EditorView, ViewPlugin, WidgetType } from "@codemirror/view";
1447
+ import { debounce as debounce2 } from "@dxos/async";
1448
+ import { invariant as invariant4 } from "@dxos/invariant";
1449
+ import { documentId, singleValueFacet } from "@dxos/react-ui-editor/state";
1450
+ var updateAllDecorations = StateEffect.define();
1451
+ var computeGraphFacet = singleValueFacet();
1597
1452
 
1598
- // packages/plugins/plugin-sheet/src/components/CellEditor/extension.ts
1453
+ // packages/plugins/plugin-sheet/src/extensions/editor/extension.ts
1599
1454
  import { acceptCompletion, autocompletion, completionStatus, startCompletion } from "@codemirror/autocomplete";
1600
1455
  import { HighlightStyle, syntaxHighlighting } from "@codemirror/language";
1601
- import { ViewPlugin, keymap as keymap2 } from "@codemirror/view";
1456
+ import { ViewPlugin as ViewPlugin2, keymap } from "@codemirror/view";
1602
1457
  import { tags } from "@lezer/highlight";
1603
1458
  import { spreadsheet } from "codemirror-lang-spreadsheet";
1604
- import { singleValueFacet } from "@dxos/react-ui-editor/state";
1459
+ import { singleValueFacet as singleValueFacet2 } from "@dxos/react-ui-editor/state";
1605
1460
  import { mx } from "@dxos/react-ui-theme";
1606
1461
  var highlightStyles = HighlightStyle.define([
1607
1462
  // Function.
@@ -1633,7 +1488,7 @@ var highlightStyles = HighlightStyle.define([
1633
1488
  class: "text-unAccent"
1634
1489
  }
1635
1490
  ]);
1636
- var languageFacet = singleValueFacet();
1491
+ var languageFacet = singleValueFacet2();
1637
1492
  var sheetExtension = ({ functions = [] }) => {
1638
1493
  const { extension, language } = spreadsheet({
1639
1494
  idiom: "en-US",
@@ -1715,7 +1570,7 @@ var sheetExtension = ({ functions = [] }) => {
1715
1570
  icons: false,
1716
1571
  tooltipClass: () => mx("!-left-[1px] !top-[33px] !-m-0 border !border-t-0 [&>ul]:!min-w-[198px]", "[&>ul>li[aria-selected]]:!bg-accentSurface", "border-separator")
1717
1572
  }),
1718
- keymap2.of([
1573
+ keymap.of([
1719
1574
  {
1720
1575
  key: "Tab",
1721
1576
  run: (view) => {
@@ -1742,7 +1597,7 @@ var rangeExtension = (onInit) => {
1742
1597
  }
1743
1598
  view.focus();
1744
1599
  };
1745
- return ViewPlugin.fromClass(class {
1600
+ return ViewPlugin2.fromClass(class {
1746
1601
  constructor(_view) {
1747
1602
  view = _view;
1748
1603
  onInit(provider);
@@ -1810,7 +1665,7 @@ var fragments = {
1810
1665
  cellSelected: "bg-gridCellSelected text-baseText border !border-accentSurface"
1811
1666
  };
1812
1667
  var SheetRoot = ({ children, ...props }) => {
1813
- return /* @__PURE__ */ React6.createElement(SheetContextProvider, props, children);
1668
+ return /* @__PURE__ */ React5.createElement(SheetContextProvider, props, children);
1814
1669
  };
1815
1670
  var SheetMain = /* @__PURE__ */ forwardRef(({ classNames, numRows, numCols }, forwardRef2) => {
1816
1671
  const { model, cursor, setCursor, setRange, setEditing } = useSheetContext();
@@ -1829,7 +1684,7 @@ var SheetMain = /* @__PURE__ */ forwardRef(({ classNames, numRows, numCols }, fo
1829
1684
  const columnsAccessor = createDocAccessor(model.sheet, [
1830
1685
  "columns"
1831
1686
  ]);
1832
- const handleUpdate = debounce2(() => {
1687
+ const handleUpdate = debounce3(() => {
1833
1688
  setRows([
1834
1689
  ...model.sheet.rows
1835
1690
  ]);
@@ -1884,7 +1739,7 @@ var SheetMain = /* @__PURE__ */ forwardRef(({ classNames, numRows, numCols }, fo
1884
1739
  const columnAccessor = createDocAccessor(model.sheet, [
1885
1740
  "columnMeta"
1886
1741
  ]);
1887
- const handleUpdate = debounce2(() => {
1742
+ const handleUpdate = debounce3(() => {
1888
1743
  const mapSizes = (values) => values.reduce((map, [idx, meta]) => {
1889
1744
  if (meta.size) {
1890
1745
  map[idx] = meta.size;
@@ -1926,16 +1781,16 @@ var SheetMain = /* @__PURE__ */ forwardRef(({ classNames, numRows, numCols }, fo
1926
1781
  }));
1927
1782
  }
1928
1783
  };
1929
- return /* @__PURE__ */ React6.createElement("div", {
1784
+ return /* @__PURE__ */ React5.createElement("div", {
1930
1785
  role: "none",
1931
1786
  className: mx2("grid grid-cols-[calc(var(--rail-size)-2px)_1fr] grid-rows-[32px_1fr_32px] bs-full is-full overflow-hidden", classNames)
1932
- }, /* @__PURE__ */ React6.createElement(GridCorner, {
1787
+ }, /* @__PURE__ */ React5.createElement(GridCorner, {
1933
1788
  onClick: () => {
1934
1789
  setCursor(void 0);
1935
1790
  setRange(void 0);
1936
1791
  setEditing(false);
1937
1792
  }
1938
- }), /* @__PURE__ */ React6.createElement(SheetColumns, {
1793
+ }), /* @__PURE__ */ React5.createElement(SheetColumns, {
1939
1794
  ref: columnsRef,
1940
1795
  columns,
1941
1796
  sizes: columnSizes,
@@ -1946,7 +1801,7 @@ var SheetMain = /* @__PURE__ */ forwardRef(({ classNames, numRows, numCols }, fo
1946
1801
  }),
1947
1802
  onResize: handleResizeColumn,
1948
1803
  onMove: handleMoveColumns
1949
- }), /* @__PURE__ */ React6.createElement(SheetRows, {
1804
+ }), /* @__PURE__ */ React5.createElement(SheetRows, {
1950
1805
  ref: rowsRef,
1951
1806
  rows,
1952
1807
  sizes: rowSizes,
@@ -1957,7 +1812,7 @@ var SheetMain = /* @__PURE__ */ forwardRef(({ classNames, numRows, numCols }, fo
1957
1812
  }),
1958
1813
  onResize: handleResizeRow,
1959
1814
  onMove: handleMoveRows
1960
- }), /* @__PURE__ */ React6.createElement(SheetGrid, {
1815
+ }), /* @__PURE__ */ React5.createElement(SheetGrid, {
1961
1816
  ref: contentRef,
1962
1817
  size: {
1963
1818
  numRows: numRows ?? rows.length,
@@ -1967,7 +1822,7 @@ var SheetMain = /* @__PURE__ */ forwardRef(({ classNames, numRows, numCols }, fo
1967
1822
  columns,
1968
1823
  rowSizes,
1969
1824
  columnSizes
1970
- }), /* @__PURE__ */ React6.createElement(GridCorner, null), /* @__PURE__ */ React6.createElement(SheetStatusBar, null));
1825
+ }), /* @__PURE__ */ React5.createElement(GridCorner, null), /* @__PURE__ */ React5.createElement(SheetStatusBar, null));
1971
1826
  });
1972
1827
  var useScrollHandlers = () => {
1973
1828
  const rowsRef = useRef(null);
@@ -2010,13 +1865,13 @@ var useScrollHandlers = () => {
2010
1865
  };
2011
1866
  };
2012
1867
  var GridCorner = (props) => {
2013
- return /* @__PURE__ */ React6.createElement("div", {
1868
+ return /* @__PURE__ */ React5.createElement("div", {
2014
1869
  className: fragments.axis,
2015
1870
  ...props
2016
1871
  });
2017
1872
  };
2018
1873
  var MovingOverlay = ({ label }) => {
2019
- return /* @__PURE__ */ React6.createElement("div", {
1874
+ return /* @__PURE__ */ React5.createElement("div", {
2020
1875
  className: "flex w-full h-full justify-center items-center text-sm p-1 bg-gridOverlay cursor-pointer"
2021
1876
  }, label);
2022
1877
  };
@@ -2060,18 +1915,18 @@ var SheetRows = /* @__PURE__ */ forwardRef(({ rows, sizes, selected, onSelect, o
2060
1915
  }
2061
1916
  return transform;
2062
1917
  };
2063
- return /* @__PURE__ */ React6.createElement("div", {
1918
+ return /* @__PURE__ */ React5.createElement("div", {
2064
1919
  className: "relative flex grow overflow-hidden"
2065
- }, /* @__PURE__ */ React6.createElement("div", {
1920
+ }, /* @__PURE__ */ React5.createElement("div", {
2066
1921
  className: mx2("z-20 absolute inset-0 border-y border-gridLine pointer-events-none"),
2067
1922
  style: {
2068
1923
  width: axisWidth
2069
1924
  }
2070
- }), /* @__PURE__ */ React6.createElement("div", {
1925
+ }), /* @__PURE__ */ React5.createElement("div", {
2071
1926
  ref: forwardRef2,
2072
1927
  role: "rowheader",
2073
1928
  className: "grow overflow-y-auto scrollbar-none"
2074
- }, /* @__PURE__ */ React6.createElement(DndContext, {
1929
+ }, /* @__PURE__ */ React5.createElement(DndContext, {
2075
1930
  sensors,
2076
1931
  modifiers: [
2077
1932
  restrictToVerticalAxis,
@@ -2079,12 +1934,12 @@ var SheetRows = /* @__PURE__ */ forwardRef(({ rows, sizes, selected, onSelect, o
2079
1934
  ],
2080
1935
  onDragStart: handleDragStart,
2081
1936
  onDragEnd: handleDragEnd
2082
- }, /* @__PURE__ */ React6.createElement("div", {
1937
+ }, /* @__PURE__ */ React5.createElement("div", {
2083
1938
  className: "flex flex-col",
2084
1939
  style: {
2085
1940
  width: axisWidth
2086
1941
  }
2087
- }, rows.map((idx, index) => /* @__PURE__ */ React6.createElement(GridRowCell, {
1942
+ }, rows.map((idx, index) => /* @__PURE__ */ React5.createElement(GridRowCell, {
2088
1943
  key: idx,
2089
1944
  idx,
2090
1945
  index,
@@ -2094,7 +1949,7 @@ var SheetRows = /* @__PURE__ */ forwardRef(({ rows, sizes, selected, onSelect, o
2094
1949
  selected: selected === index,
2095
1950
  onResize,
2096
1951
  onSelect
2097
- }))), /* @__PURE__ */ createPortal(/* @__PURE__ */ React6.createElement(DragOverlay, null, active && /* @__PURE__ */ React6.createElement(MovingOverlay, {
1952
+ }))), /* @__PURE__ */ createPortal(/* @__PURE__ */ React5.createElement(DragOverlay, null, active && /* @__PURE__ */ React5.createElement(MovingOverlay, {
2098
1953
  label: String(active.data.current.index + 1)
2099
1954
  })), document.body))));
2100
1955
  });
@@ -2135,7 +1990,7 @@ var GridRowCell = ({ idx, index, label, size, resize, selected, onSelect, onResi
2135
1990
  onResize?.(idx, initialSize + height, true);
2136
1991
  setResizing(false);
2137
1992
  };
2138
- return /* @__PURE__ */ React6.createElement(Resizable, {
1993
+ return /* @__PURE__ */ React5.createElement(Resizable, {
2139
1994
  enable: {
2140
1995
  bottom: resize
2141
1996
  },
@@ -2147,17 +2002,17 @@ var GridRowCell = ({ idx, index, label, size, resize, selected, onSelect, onResi
2147
2002
  onResizeStart: handleResizeStart,
2148
2003
  onResize: handleResize,
2149
2004
  onResizeStop: handleResizeStop
2150
- }, /* @__PURE__ */ React6.createElement("div", {
2005
+ }, /* @__PURE__ */ React5.createElement("div", {
2151
2006
  ref: setNodeRef,
2152
2007
  ...attributes,
2153
2008
  ...listeners,
2154
2009
  className: mx2("flex h-full items-center justify-center cursor-pointer", "border-t border-gridLine focus-visible:outline-none", fragments.axis, selected && fragments.axisSelected, isDragging && fragments.axisSelected),
2155
2010
  onClick: () => onSelect?.(index)
2156
- }, /* @__PURE__ */ React6.createElement("span", {
2011
+ }, /* @__PURE__ */ React5.createElement("span", {
2157
2012
  className: "flex w-full justify-center"
2158
- }, label), over?.id === idx && !isDragging && /* @__PURE__ */ React6.createElement("div", {
2013
+ }, label), over?.id === idx && !isDragging && /* @__PURE__ */ React5.createElement("div", {
2159
2014
  className: "z-20 absolute top-0 w-full min-h-[4px] border-b-4 border-accentSurface"
2160
- }), resizing && /* @__PURE__ */ React6.createElement("div", {
2015
+ }), resizing && /* @__PURE__ */ React5.createElement("div", {
2161
2016
  className: "z-20 absolute bottom-0 w-full min-h-[4px] border-b-4 border-accentSurface"
2162
2017
  })));
2163
2018
  };
@@ -2194,18 +2049,18 @@ var SheetColumns = /* @__PURE__ */ forwardRef(({ columns, sizes, selected, onSel
2194
2049
  }
2195
2050
  return transform;
2196
2051
  };
2197
- return /* @__PURE__ */ React6.createElement("div", {
2052
+ return /* @__PURE__ */ React5.createElement("div", {
2198
2053
  className: "relative flex grow overflow-hidden"
2199
- }, /* @__PURE__ */ React6.createElement("div", {
2054
+ }, /* @__PURE__ */ React5.createElement("div", {
2200
2055
  className: mx2("z-20 absolute inset-0 border-x border-gridLine pointer-events-none"),
2201
2056
  style: {
2202
2057
  height: axisHeight
2203
2058
  }
2204
- }), /* @__PURE__ */ React6.createElement("div", {
2059
+ }), /* @__PURE__ */ React5.createElement("div", {
2205
2060
  ref: forwardRef2,
2206
2061
  role: "columnheader",
2207
2062
  className: "grow overflow-x-auto scrollbar-none"
2208
- }, /* @__PURE__ */ React6.createElement(DndContext, {
2063
+ }, /* @__PURE__ */ React5.createElement(DndContext, {
2209
2064
  autoScroll: {
2210
2065
  enabled: true
2211
2066
  },
@@ -2216,12 +2071,12 @@ var SheetColumns = /* @__PURE__ */ forwardRef(({ columns, sizes, selected, onSel
2216
2071
  ],
2217
2072
  onDragStart: handleDragStart,
2218
2073
  onDragEnd: handleDragEnd
2219
- }, /* @__PURE__ */ React6.createElement("div", {
2074
+ }, /* @__PURE__ */ React5.createElement("div", {
2220
2075
  className: "flex h-full",
2221
2076
  style: {
2222
2077
  height: axisHeight
2223
2078
  }
2224
- }, columns.map((idx, index) => /* @__PURE__ */ React6.createElement(GridColumnCell, {
2079
+ }, columns.map((idx, index) => /* @__PURE__ */ React5.createElement(GridColumnCell, {
2225
2080
  key: idx,
2226
2081
  idx,
2227
2082
  index,
@@ -2231,7 +2086,7 @@ var SheetColumns = /* @__PURE__ */ forwardRef(({ columns, sizes, selected, onSel
2231
2086
  selected: selected === index,
2232
2087
  onResize,
2233
2088
  onSelect
2234
- }))), /* @__PURE__ */ createPortal(/* @__PURE__ */ React6.createElement(DragOverlay, null, active && /* @__PURE__ */ React6.createElement(MovingOverlay, {
2089
+ }))), /* @__PURE__ */ createPortal(/* @__PURE__ */ React5.createElement(DragOverlay, null, active && /* @__PURE__ */ React5.createElement(MovingOverlay, {
2235
2090
  label: columnLetter(active.data.current.index)
2236
2091
  })), document.body))));
2237
2092
  });
@@ -2272,7 +2127,7 @@ var GridColumnCell = ({ idx, index, label, size, resize, selected, onSelect, onR
2272
2127
  onResize?.(idx, initialSize + width, true);
2273
2128
  setResizing(false);
2274
2129
  };
2275
- return /* @__PURE__ */ React6.createElement(Resizable, {
2130
+ return /* @__PURE__ */ React5.createElement(Resizable, {
2276
2131
  enable: {
2277
2132
  right: resize
2278
2133
  },
@@ -2284,17 +2139,17 @@ var GridColumnCell = ({ idx, index, label, size, resize, selected, onSelect, onR
2284
2139
  onResizeStart: handleResizeStart,
2285
2140
  onResize: handleResize,
2286
2141
  onResizeStop: handleResizeStop
2287
- }, /* @__PURE__ */ React6.createElement("div", {
2142
+ }, /* @__PURE__ */ React5.createElement("div", {
2288
2143
  ref: setNodeRef,
2289
2144
  ...attributes,
2290
2145
  ...listeners,
2291
2146
  className: mx2("flex h-full items-center justify-center cursor-pointer", "border-l border-gridLine focus-visible:outline-none", fragments.axis, selected && fragments.axisSelected, isDragging && fragments.axisSelected),
2292
2147
  onClick: () => onSelect?.(index)
2293
- }, /* @__PURE__ */ React6.createElement("span", {
2148
+ }, /* @__PURE__ */ React5.createElement("span", {
2294
2149
  className: "flex w-full justify-center"
2295
- }, label), over?.id === idx && !isDragging && /* @__PURE__ */ React6.createElement("div", {
2150
+ }, label), over?.id === idx && !isDragging && /* @__PURE__ */ React5.createElement("div", {
2296
2151
  className: "z-20 absolute left-0 h-full min-w-[4px] border-l-4 border-accentSurface"
2297
- }), resizing && /* @__PURE__ */ React6.createElement("div", {
2152
+ }), resizing && /* @__PURE__ */ React5.createElement("div", {
2298
2153
  className: "z-20 absolute right-0 h-full min-h-[4px] border-l-4 border-accentSurface"
2299
2154
  })));
2300
2155
  };
@@ -2314,7 +2169,7 @@ var SheetGrid = /* @__PURE__ */ forwardRef(({ size, rows, columns, rowSizes, col
2314
2169
  id: model.id
2315
2170
  }, {
2316
2171
  F: __dxlog_file4,
2317
- L: 738,
2172
+ L: 732,
2318
2173
  S: void 0,
2319
2174
  C: (f, a) => f(...a)
2320
2175
  });
@@ -2433,16 +2288,16 @@ var SheetGrid = /* @__PURE__ */ forwardRef(({ size, rows, columns, rowSizes, col
2433
2288
  });
2434
2289
  const id = fullyQualifiedId2(model.sheet);
2435
2290
  const { hasAttention } = useAttention(id);
2436
- return /* @__PURE__ */ React6.createElement("div", {
2291
+ return /* @__PURE__ */ React5.createElement("div", {
2437
2292
  ref: containerRef,
2438
2293
  role: "grid",
2439
2294
  className: "relative flex grow overflow-hidden"
2440
- }, /* @__PURE__ */ React6.createElement("div", {
2295
+ }, /* @__PURE__ */ React5.createElement("div", {
2441
2296
  className: mx2("z-20 absolute inset-0 border border-gridLine pointer-events-none")
2442
- }), /* @__PURE__ */ React6.createElement("div", {
2297
+ }), /* @__PURE__ */ React5.createElement("div", {
2443
2298
  ref: scrollerRef,
2444
2299
  className: mx2("grow", hasAttention && "overflow-auto scrollbar-thin")
2445
- }, /* @__PURE__ */ React6.createElement("div", {
2300
+ }, /* @__PURE__ */ React5.createElement("div", {
2446
2301
  className: "relative select-none",
2447
2302
  style: {
2448
2303
  width,
@@ -2450,7 +2305,7 @@ var SheetGrid = /* @__PURE__ */ forwardRef(({ size, rows, columns, rowSizes, col
2450
2305
  },
2451
2306
  onClick: () => inputRef.current?.focus(),
2452
2307
  ...handlers
2453
- }, scrollerRef.current && /* @__PURE__ */ React6.createElement(SelectionOverlay, {
2308
+ }, scrollerRef.current && /* @__PURE__ */ React5.createElement(SelectionOverlay, {
2454
2309
  root: scrollerRef.current
2455
2310
  }), rowRange.map(({ row, top, height: height2 }) => {
2456
2311
  return columnRange.map(({ col, left, width: width2 }) => {
@@ -2499,7 +2354,7 @@ var SheetGrid = /* @__PURE__ */ forwardRef(({ size, rows, columns, rowSizes, col
2499
2354
  inputRef.current?.focus();
2500
2355
  setEditing(false);
2501
2356
  };
2502
- return /* @__PURE__ */ React6.createElement(GridCellEditor, {
2357
+ return /* @__PURE__ */ React5.createElement(GridCellEditor, {
2503
2358
  key: idx,
2504
2359
  value,
2505
2360
  style,
@@ -2507,7 +2362,7 @@ var SheetGrid = /* @__PURE__ */ forwardRef(({ size, rows, columns, rowSizes, col
2507
2362
  onClose: handleClose
2508
2363
  });
2509
2364
  }
2510
- return /* @__PURE__ */ React6.createElement(SheetCell, {
2365
+ return /* @__PURE__ */ React5.createElement(SheetCell, {
2511
2366
  key: id2,
2512
2367
  id: id2,
2513
2368
  cell,
@@ -2519,7 +2374,7 @@ var SheetGrid = /* @__PURE__ */ forwardRef(({ size, rows, columns, rowSizes, col
2519
2374
  }
2520
2375
  });
2521
2376
  });
2522
- }))), /* @__PURE__ */ createPortal(/* @__PURE__ */ React6.createElement(SheetInput, {
2377
+ }))), /* @__PURE__ */ createPortal(/* @__PURE__ */ React5.createElement(SheetInput, {
2523
2378
  ref: inputRef,
2524
2379
  id,
2525
2380
  onKeyDown: handleKeyDown
@@ -2529,10 +2384,10 @@ var SheetInput = /* @__PURE__ */ forwardRef(({ id, onKeyDown }, forwardedRef) =>
2529
2384
  const path = useAttentionPath();
2530
2385
  const attendableAttrs = useAttendableAttributes(id);
2531
2386
  return path.toReversed().reduce((acc, part) => {
2532
- return /* @__PURE__ */ React6.createElement("div", {
2387
+ return /* @__PURE__ */ React5.createElement("div", {
2533
2388
  [ATTENABLE_ATTRIBUTE]: part
2534
2389
  }, acc);
2535
- }, /* @__PURE__ */ React6.createElement("input", {
2390
+ }, /* @__PURE__ */ React5.createElement("input", {
2536
2391
  ref: forwardedRef,
2537
2392
  className: "absolute w-[1px] h-[1px] bg-transparent outline-none border-none caret-transparent",
2538
2393
  onKeyDown,
@@ -2552,7 +2407,7 @@ var SelectionOverlay = ({ root }) => {
2552
2407
  const b1 = getRelativeClientRect(root, c1);
2553
2408
  const b2 = getRelativeClientRect(root, c2);
2554
2409
  const bounds = getRectUnion(b1, b2);
2555
- return /* @__PURE__ */ React6.createElement("div", {
2410
+ return /* @__PURE__ */ React5.createElement("div", {
2556
2411
  role: "none",
2557
2412
  style: bounds,
2558
2413
  className: "z-10 absolute pointer-events-none bg-gridSelectionOverlay border border-gridOverlay"
@@ -2570,12 +2425,12 @@ var SheetCell = ({ id, cell, style, active, onSelect }) => {
2570
2425
  return children;
2571
2426
  }
2572
2427
  const DecoratorComponent = decorate;
2573
- return /* @__PURE__ */ React6.createElement(DecoratorComponent, null, children);
2574
- }, /* @__PURE__ */ React6.createElement("div", {
2428
+ return /* @__PURE__ */ React5.createElement(DecoratorComponent, null, children);
2429
+ }, /* @__PURE__ */ React5.createElement("div", {
2575
2430
  role: "none",
2576
2431
  className: mx2("flex flex-grow bs-full is-full px-2 items-center truncate cursor-pointer", ...decorationAddedClasses)
2577
2432
  }, value));
2578
- return /* @__PURE__ */ React6.createElement("div", {
2433
+ return /* @__PURE__ */ React5.createElement("div", {
2579
2434
  [`data-${CELL_DATA_KEY}`]: id,
2580
2435
  role: "cell",
2581
2436
  style,
@@ -2617,12 +2472,12 @@ var GridCellEditor = ({ style, value, onNav, onClose }) => {
2617
2472
  ], [
2618
2473
  model
2619
2474
  ]);
2620
- return /* @__PURE__ */ React6.createElement("div", {
2475
+ return /* @__PURE__ */ React5.createElement("div", {
2621
2476
  role: "cell",
2622
2477
  style,
2623
2478
  className: mx2("z-20 flex", fragments.cellSelected),
2624
2479
  onClick: (ev) => ev.stopPropagation()
2625
- }, /* @__PURE__ */ React6.createElement(CellEditor, {
2480
+ }, /* @__PURE__ */ React5.createElement(CellEditor, {
2626
2481
  autoFocus: true,
2627
2482
  value,
2628
2483
  extension
@@ -2641,17 +2496,17 @@ var SheetStatusBar = () => {
2641
2496
  value = String(value);
2642
2497
  }
2643
2498
  }
2644
- return /* @__PURE__ */ React6.createElement("div", {
2499
+ return /* @__PURE__ */ React5.createElement("div", {
2645
2500
  className: mx2("flex shrink-0 justify-between items-center px-4 py-1 text-sm border-x border-gridLine")
2646
- }, /* @__PURE__ */ React6.createElement("div", {
2501
+ }, /* @__PURE__ */ React5.createElement("div", {
2647
2502
  className: "flex gap-4 items-center"
2648
- }, /* @__PURE__ */ React6.createElement("div", {
2503
+ }, /* @__PURE__ */ React5.createElement("div", {
2649
2504
  className: "flex w-16 items-center font-mono"
2650
- }, range && rangeToA1Notation(range) || cursor && addressToA1Notation(cursor)), /* @__PURE__ */ React6.createElement("div", {
2505
+ }, range && rangeToA1Notation(range) || cursor && addressToA1Notation(cursor)), /* @__PURE__ */ React5.createElement("div", {
2651
2506
  className: "flex gap-2 items-center"
2652
- }, /* @__PURE__ */ React6.createElement(FunctionIcon, {
2507
+ }, /* @__PURE__ */ React5.createElement(FunctionIcon, {
2653
2508
  className: mx2("text-greenText", isFormula ? "visible" : "invisible")
2654
- }), /* @__PURE__ */ React6.createElement("span", {
2509
+ }), /* @__PURE__ */ React5.createElement("span", {
2655
2510
  className: "font-mono"
2656
2511
  }, value))));
2657
2512
  };
@@ -2669,9 +2524,9 @@ var SheetDebug = () => {
2669
2524
  }, [
2670
2525
  model
2671
2526
  ]);
2672
- return /* @__PURE__ */ React6.createElement("div", {
2527
+ return /* @__PURE__ */ React5.createElement("div", {
2673
2528
  className: mx2("z-20 absolute right-0 top-20 bottom-20 w-[30rem] overflow-auto scrollbar-thin", "border border-gridLine text-xs bg-neutral-50 dark:bg-black text-cyan-500 font-mono p-1 opacity-80")
2674
- }, /* @__PURE__ */ React6.createElement("pre", {
2529
+ }, /* @__PURE__ */ React5.createElement("pre", {
2675
2530
  className: "whitespace-pre-wrap"
2676
2531
  }, JSON.stringify({
2677
2532
  cursor,
@@ -2700,7 +2555,8 @@ export {
2700
2555
  compareIndexPositions,
2701
2556
  useComputeGraph,
2702
2557
  useSheetContext,
2558
+ computeGraphFacet,
2703
2559
  Sheet,
2704
2560
  SheetContainer
2705
2561
  };
2706
- //# sourceMappingURL=chunk-KK3XL37M.mjs.map
2562
+ //# sourceMappingURL=chunk-JYDBXLDH.mjs.map