@dxos/plugin-sheet 0.6.10 → 0.6.11-staging.32b42e4
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.
- package/dist/lib/browser/{SheetContainer-ISY6DUVE.mjs → SheetContainer-U4H5D34A.mjs} +64 -52
- package/dist/lib/browser/SheetContainer-U4H5D34A.mjs.map +7 -0
- package/dist/lib/browser/chunk-APHOLYUB.mjs +175 -0
- package/dist/lib/browser/chunk-APHOLYUB.mjs.map +7 -0
- package/dist/lib/browser/{chunk-CBRBNG3R.mjs → chunk-D5AGLXJP.mjs} +123 -202
- package/dist/lib/browser/chunk-D5AGLXJP.mjs.map +7 -0
- package/dist/lib/browser/{chunk-D3PUKBH6.mjs → chunk-FUAGSXA4.mjs} +1 -1
- package/dist/lib/browser/{chunk-D3PUKBH6.mjs.map → chunk-FUAGSXA4.mjs.map} +2 -2
- package/dist/lib/browser/chunk-NU4PBN33.mjs +8 -0
- package/dist/lib/browser/chunk-NU4PBN33.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +37 -80
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing.mjs +92 -0
- package/dist/lib/browser/testing.mjs.map +7 -0
- package/dist/lib/browser/types.mjs +1 -1
- package/dist/lib/node/{SheetContainer-ESRTE7A5.cjs → SheetContainer-AXQV3ZT5.cjs} +83 -72
- package/dist/lib/node/SheetContainer-AXQV3ZT5.cjs.map +7 -0
- package/dist/lib/node/{chunk-4EGEA3KL.cjs → chunk-5KKJ4NPP.cjs} +135 -214
- package/dist/lib/node/chunk-5KKJ4NPP.cjs.map +7 -0
- package/dist/lib/node/chunk-CN3RPESU.cjs +202 -0
- package/dist/lib/node/chunk-CN3RPESU.cjs.map +7 -0
- package/dist/lib/node/{chunk-3R3J7IZR.cjs → chunk-DSYKOI4E.cjs} +4 -4
- package/dist/lib/node/{chunk-3R3J7IZR.cjs.map → chunk-DSYKOI4E.cjs.map} +2 -2
- package/dist/lib/node/chunk-PYXHNAAK.cjs +40 -0
- package/dist/lib/node/chunk-PYXHNAAK.cjs.map +7 -0
- package/dist/lib/node/index.cjs +38 -79
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/testing.cjs +111 -0
- package/dist/lib/node/testing.cjs.map +7 -0
- package/dist/lib/node/types.cjs +9 -9
- package/dist/lib/node/types.cjs.map +1 -1
- package/dist/types/src/SheetPlugin.d.ts.map +1 -1
- package/dist/types/src/components/CellEditor/extension.d.ts.map +1 -1
- package/dist/types/src/components/ComputeGraph/edge-function.d.ts.map +1 -1
- package/dist/types/src/components/ComputeGraph/graph-context.d.ts.map +1 -1
- package/dist/types/src/components/Sheet/Sheet.d.ts.map +1 -1
- package/dist/types/src/components/Sheet/Sheet.stories.d.ts.map +1 -1
- package/dist/types/src/components/SheetContainer.d.ts +1 -1
- package/dist/types/src/components/SheetContainer.d.ts.map +1 -1
- package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +1 -1
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/model/model.d.ts.map +1 -1
- package/dist/types/src/testing.d.ts +9 -0
- package/dist/types/src/testing.d.ts.map +1 -0
- package/dist/types/src/types.d.ts.map +1 -1
- package/package.json +38 -28
- package/src/SheetPlugin.tsx +36 -16
- package/src/components/CellEditor/extension.ts +16 -10
- package/src/components/ComputeGraph/edge-function.ts +6 -2
- package/src/components/ComputeGraph/graph-context.tsx +10 -1
- package/src/components/Sheet/Sheet.stories.tsx +9 -47
- package/src/components/Sheet/Sheet.tsx +24 -33
- package/src/components/Sheet/formatting.ts +1 -1
- package/src/components/SheetContainer.tsx +3 -4
- package/src/components/Toolbar/Toolbar.stories.tsx +5 -10
- package/src/model/model.ts +2 -3
- package/src/testing.ts +50 -0
- package/src/types.ts +2 -0
- package/dist/lib/browser/SheetContainer-ISY6DUVE.mjs.map +0 -7
- package/dist/lib/browser/chunk-CBRBNG3R.mjs.map +0 -7
- package/dist/lib/node/SheetContainer-ESRTE7A5.cjs.map +0 -7
- package/dist/lib/node/chunk-4EGEA3KL.cjs.map +0 -7
|
@@ -26,13 +26,14 @@ 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
|
|
30
|
-
__export(
|
|
29
|
+
var SheetContainer_AXQV3ZT5_exports = {};
|
|
30
|
+
__export(SheetContainer_AXQV3ZT5_exports, {
|
|
31
31
|
default: () => SheetContainer_default
|
|
32
32
|
});
|
|
33
|
-
module.exports = __toCommonJS(
|
|
34
|
-
var
|
|
35
|
-
var
|
|
33
|
+
module.exports = __toCommonJS(SheetContainer_AXQV3ZT5_exports);
|
|
34
|
+
var import_chunk_CN3RPESU = require("./chunk-CN3RPESU.cjs");
|
|
35
|
+
var import_chunk_5KKJ4NPP = require("./chunk-5KKJ4NPP.cjs");
|
|
36
|
+
var import_chunk_DSYKOI4E = require("./chunk-DSYKOI4E.cjs");
|
|
36
37
|
var import_chunk_BJ6ZD7MN = require("./chunk-BJ6ZD7MN.cjs");
|
|
37
38
|
var import_react = __toESM(require("react"));
|
|
38
39
|
var import_react_ui_theme = require("@dxos/react-ui-theme");
|
|
@@ -181,12 +182,12 @@ var getCellAtPointer = (event) => {
|
|
|
181
182
|
if (root) {
|
|
182
183
|
const value = root.dataset[CELL_DATA_KEY];
|
|
183
184
|
if (value) {
|
|
184
|
-
return (0,
|
|
185
|
+
return (0, import_chunk_5KKJ4NPP.addressFromA1Notation)(value);
|
|
185
186
|
}
|
|
186
187
|
}
|
|
187
188
|
};
|
|
188
189
|
var getCellElement = (root, cell) => {
|
|
189
|
-
const pos = (0,
|
|
190
|
+
const pos = (0, import_chunk_5KKJ4NPP.addressToA1Notation)(cell);
|
|
190
191
|
return root.querySelector(`[data-${CELL_DATA_KEY}="${pos}"]`);
|
|
191
192
|
};
|
|
192
193
|
var handleNav = (ev, cursor, range, size) => {
|
|
@@ -314,7 +315,7 @@ var useRangeSelect = (cb) => {
|
|
|
314
315
|
const onMouseMove = (ev) => {
|
|
315
316
|
if (from) {
|
|
316
317
|
let current = getCellAtPointer(ev);
|
|
317
|
-
if ((0,
|
|
318
|
+
if ((0, import_chunk_5KKJ4NPP.posEquals)(current, from)) {
|
|
318
319
|
current = void 0;
|
|
319
320
|
}
|
|
320
321
|
setTo(current);
|
|
@@ -327,7 +328,7 @@ var useRangeSelect = (cb) => {
|
|
|
327
328
|
const onMouseUp = (ev) => {
|
|
328
329
|
if (from) {
|
|
329
330
|
let current = getCellAtPointer(ev);
|
|
330
|
-
if ((0,
|
|
331
|
+
if ((0, import_chunk_5KKJ4NPP.posEquals)(current, from)) {
|
|
331
332
|
current = void 0;
|
|
332
333
|
}
|
|
333
334
|
setFrom(void 0);
|
|
@@ -370,7 +371,7 @@ var FormattingModel = class {
|
|
|
370
371
|
];
|
|
371
372
|
for (const [idx2, _formatting] of Object.entries(this.model.sheet.formatting)) {
|
|
372
373
|
const range = this.model.rangeFromIndex(idx2);
|
|
373
|
-
if ((0,
|
|
374
|
+
if ((0, import_chunk_5KKJ4NPP.inRange)(range, cell)) {
|
|
374
375
|
if (_formatting.classNames) {
|
|
375
376
|
classNames.push(..._formatting.classNames);
|
|
376
377
|
}
|
|
@@ -382,16 +383,19 @@ var FormattingModel = class {
|
|
|
382
383
|
const defaultNumber = "justify-end font-mono";
|
|
383
384
|
const type = formatting?.type ?? this.model.getValueType(cell);
|
|
384
385
|
switch (type) {
|
|
385
|
-
case
|
|
386
|
+
case import_chunk_DSYKOI4E.ValueTypeEnum.Boolean: {
|
|
386
387
|
return {
|
|
387
388
|
value: value.toLocaleString().toUpperCase(),
|
|
388
389
|
classNames: [
|
|
389
390
|
...classNames,
|
|
390
|
-
value ? "!text-
|
|
391
|
+
value ? "!text-greenText" : "!text-orangeText"
|
|
391
392
|
]
|
|
392
393
|
};
|
|
393
394
|
}
|
|
394
|
-
|
|
395
|
+
//
|
|
396
|
+
// Numbers.
|
|
397
|
+
//
|
|
398
|
+
case import_chunk_DSYKOI4E.ValueTypeEnum.Number: {
|
|
395
399
|
return {
|
|
396
400
|
value: value.toLocaleString(locales),
|
|
397
401
|
classNames: [
|
|
@@ -400,7 +404,7 @@ var FormattingModel = class {
|
|
|
400
404
|
]
|
|
401
405
|
};
|
|
402
406
|
}
|
|
403
|
-
case
|
|
407
|
+
case import_chunk_DSYKOI4E.ValueTypeEnum.Percent: {
|
|
404
408
|
return {
|
|
405
409
|
value: value * 100 + "%",
|
|
406
410
|
classNames: [
|
|
@@ -409,7 +413,7 @@ var FormattingModel = class {
|
|
|
409
413
|
]
|
|
410
414
|
};
|
|
411
415
|
}
|
|
412
|
-
case
|
|
416
|
+
case import_chunk_DSYKOI4E.ValueTypeEnum.Currency: {
|
|
413
417
|
return {
|
|
414
418
|
value: value.toLocaleString(locales, {
|
|
415
419
|
style: "currency",
|
|
@@ -423,21 +427,24 @@ var FormattingModel = class {
|
|
|
423
427
|
]
|
|
424
428
|
};
|
|
425
429
|
}
|
|
426
|
-
|
|
430
|
+
//
|
|
431
|
+
// Dates.
|
|
432
|
+
//
|
|
433
|
+
case import_chunk_DSYKOI4E.ValueTypeEnum.DateTime: {
|
|
427
434
|
const date = this.model.toLocalDate(value);
|
|
428
435
|
return {
|
|
429
436
|
value: date.toLocaleString(locales),
|
|
430
437
|
classNames
|
|
431
438
|
};
|
|
432
439
|
}
|
|
433
|
-
case
|
|
440
|
+
case import_chunk_DSYKOI4E.ValueTypeEnum.Date: {
|
|
434
441
|
const date = this.model.toLocalDate(value);
|
|
435
442
|
return {
|
|
436
443
|
value: date.toLocaleDateString(locales),
|
|
437
444
|
classNames
|
|
438
445
|
};
|
|
439
446
|
}
|
|
440
|
-
case
|
|
447
|
+
case import_chunk_DSYKOI4E.ValueTypeEnum.Time: {
|
|
441
448
|
const date = this.model.toLocalDate(value);
|
|
442
449
|
return {
|
|
443
450
|
value: date.toLocaleTimeString(locales),
|
|
@@ -471,7 +478,7 @@ var useSheetContext = () => {
|
|
|
471
478
|
};
|
|
472
479
|
var mapFormulaBindingToId = (functions) => (formula) => {
|
|
473
480
|
return formula.replace(/([a-zA-Z0-9]+)\((.*)\)/g, (match, binding, args) => {
|
|
474
|
-
if (
|
|
481
|
+
if (import_chunk_5KKJ4NPP.defaultFunctions.find((fn2) => fn2.name === binding) || binding === "EDGE") {
|
|
475
482
|
return match;
|
|
476
483
|
}
|
|
477
484
|
const fn = functions.find((fn2) => fn2.binding === binding);
|
|
@@ -497,7 +504,7 @@ var mapFormulaBindingFromId = (functions) => (formula) => {
|
|
|
497
504
|
});
|
|
498
505
|
};
|
|
499
506
|
var SheetContextProvider = ({ children, sheet, space, readonly, onInfo, ...options }) => {
|
|
500
|
-
const graph = (0,
|
|
507
|
+
const graph = (0, import_chunk_CN3RPESU.useComputeGraph)(space, options);
|
|
501
508
|
const [cursor, setCursor] = (0, import_react6.useState)();
|
|
502
509
|
const [range, setRange] = (0, import_react6.useState)();
|
|
503
510
|
const [editing, setEditing] = (0, import_react6.useState)(false);
|
|
@@ -506,7 +513,7 @@ var SheetContextProvider = ({ children, sheet, space, readonly, onInfo, ...optio
|
|
|
506
513
|
let model2;
|
|
507
514
|
let formatting2;
|
|
508
515
|
const t = setTimeout(async () => {
|
|
509
|
-
model2 = new
|
|
516
|
+
model2 = new import_chunk_5KKJ4NPP.SheetModel(graph, sheet, space, {
|
|
510
517
|
readonly,
|
|
511
518
|
mapFormulaBindingToId,
|
|
512
519
|
mapFormulaBindingFromId
|
|
@@ -681,30 +688,30 @@ var highlightStyles = import_language.HighlightStyle.define([
|
|
|
681
688
|
// Function.
|
|
682
689
|
{
|
|
683
690
|
tag: import_highlight.tags.name,
|
|
684
|
-
class: "text-
|
|
691
|
+
class: "text-accentText"
|
|
685
692
|
},
|
|
686
693
|
// Range.
|
|
687
694
|
{
|
|
688
695
|
tag: import_highlight.tags.tagName,
|
|
689
|
-
class: "text-
|
|
696
|
+
class: "text-pinkText"
|
|
690
697
|
},
|
|
691
698
|
// Values.
|
|
692
699
|
{
|
|
693
700
|
tag: import_highlight.tags.number,
|
|
694
|
-
class: "text-
|
|
701
|
+
class: "text-tealText"
|
|
695
702
|
},
|
|
696
703
|
{
|
|
697
704
|
tag: import_highlight.tags.bool,
|
|
698
|
-
class: "text-
|
|
705
|
+
class: "text-tealText"
|
|
699
706
|
},
|
|
700
707
|
{
|
|
701
708
|
tag: import_highlight.tags.string,
|
|
702
|
-
class: "text-
|
|
709
|
+
class: "text-tealText"
|
|
703
710
|
},
|
|
704
711
|
// Error.
|
|
705
712
|
{
|
|
706
713
|
tag: import_highlight.tags.invalid,
|
|
707
|
-
class: "text-
|
|
714
|
+
class: "text-unAccent"
|
|
708
715
|
}
|
|
709
716
|
]);
|
|
710
717
|
var languageFacet = import_state.Facet.define();
|
|
@@ -726,7 +733,7 @@ var sheetExtension = ({ functions = [] }) => {
|
|
|
726
733
|
root.className = "flex flex-col gap-2 text-sm";
|
|
727
734
|
const title = document.createElement("h2");
|
|
728
735
|
title.innerText = name;
|
|
729
|
-
title.className = "text-lg font-mono text-
|
|
736
|
+
title.className = "text-lg font-mono text-accentText";
|
|
730
737
|
root.appendChild(title);
|
|
731
738
|
if (description) {
|
|
732
739
|
const info = document.createElement("p");
|
|
@@ -737,7 +744,7 @@ var sheetExtension = ({ functions = [] }) => {
|
|
|
737
744
|
if (syntax) {
|
|
738
745
|
const detail = document.createElement("pre");
|
|
739
746
|
detail.innerText = syntax;
|
|
740
|
-
detail.className = "whitespace-pre-wrap text-
|
|
747
|
+
detail.className = "whitespace-pre-wrap text-greenText";
|
|
741
748
|
root.appendChild(detail);
|
|
742
749
|
}
|
|
743
750
|
return root;
|
|
@@ -791,8 +798,8 @@ var sheetExtension = ({ functions = [] }) => {
|
|
|
791
798
|
// TODO(burdon): Factor out fragments.
|
|
792
799
|
// TODO(burdon): Size to make width same as column.
|
|
793
800
|
"!-left-[1px] !top-[33px] !-m-0 border !border-t-0 [&>ul]:!min-w-[198px]",
|
|
794
|
-
"[&>ul>li[aria-selected]]:!bg-
|
|
795
|
-
"border-
|
|
801
|
+
"[&>ul>li[aria-selected]]:!bg-accentSurface",
|
|
802
|
+
"border-separator"
|
|
796
803
|
)
|
|
797
804
|
}),
|
|
798
805
|
import_view2.keymap.of([
|
|
@@ -842,6 +849,13 @@ var rangeExtension = (onInit) => {
|
|
|
842
849
|
};
|
|
843
850
|
break;
|
|
844
851
|
}
|
|
852
|
+
case "CloseParen": {
|
|
853
|
+
activeRange = {
|
|
854
|
+
from,
|
|
855
|
+
to: from
|
|
856
|
+
};
|
|
857
|
+
break;
|
|
858
|
+
}
|
|
845
859
|
case "RangeToken":
|
|
846
860
|
case "CellToken":
|
|
847
861
|
activeRange = {
|
|
@@ -875,11 +889,10 @@ var visitTree = (node, callback) => {
|
|
|
875
889
|
};
|
|
876
890
|
var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-sheet/src/components/Sheet/Sheet.tsx";
|
|
877
891
|
var fragments = {
|
|
878
|
-
axis: "bg-
|
|
879
|
-
axisSelected: "bg-
|
|
880
|
-
cell: "
|
|
881
|
-
cellSelected: "bg-
|
|
882
|
-
border: "border-neutral-200 dark:border-neutral-700"
|
|
892
|
+
axis: "bg-axisSurface text-axisText text-xs select-none",
|
|
893
|
+
axisSelected: "bg-attention text-baseText",
|
|
894
|
+
cell: "bg-gridCell",
|
|
895
|
+
cellSelected: "bg-gridCellSelected text-baseText border !border-accentSurface"
|
|
883
896
|
};
|
|
884
897
|
var SheetRoot = ({ children, ...props }) => {
|
|
885
898
|
return /* @__PURE__ */ import_react3.default.createElement(SheetContextProvider, props, children);
|
|
@@ -999,7 +1012,7 @@ var SheetMain = /* @__PURE__ */ (0, import_react3.forwardRef)(({ classNames, num
|
|
|
999
1012
|
};
|
|
1000
1013
|
return /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1001
1014
|
role: "none",
|
|
1002
|
-
className: (0, import_react_ui_theme2.mx)("grid grid-cols-[calc(var(--rail-size)-2px)_1fr] grid-rows-[32px_1fr_32px] bs-full is-full overflow-hidden",
|
|
1015
|
+
className: (0, import_react_ui_theme2.mx)("grid grid-cols-[calc(var(--rail-size)-2px)_1fr] grid-rows-[32px_1fr_32px] bs-full is-full overflow-hidden", classNames)
|
|
1003
1016
|
}, /* @__PURE__ */ import_react3.default.createElement(GridCorner, {
|
|
1004
1017
|
onClick: () => {
|
|
1005
1018
|
setCursor(void 0);
|
|
@@ -1088,7 +1101,7 @@ var GridCorner = (props) => {
|
|
|
1088
1101
|
};
|
|
1089
1102
|
var MovingOverlay = ({ label }) => {
|
|
1090
1103
|
return /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1091
|
-
className: "flex w-full h-full justify-center items-center text-sm p-1 bg-
|
|
1104
|
+
className: "flex w-full h-full justify-center items-center text-sm p-1 bg-gridOverlay cursor-pointer"
|
|
1092
1105
|
}, label);
|
|
1093
1106
|
};
|
|
1094
1107
|
var mouseConstraints = {
|
|
@@ -1134,7 +1147,7 @@ var SheetRows = /* @__PURE__ */ (0, import_react3.forwardRef)(({ rows, sizes, se
|
|
|
1134
1147
|
return /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1135
1148
|
className: "relative flex grow overflow-hidden"
|
|
1136
1149
|
}, /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1137
|
-
className: (0, import_react_ui_theme2.mx)("z-20 absolute inset-0 border-y pointer-events-none"
|
|
1150
|
+
className: (0, import_react_ui_theme2.mx)("z-20 absolute inset-0 border-y border-gridLine pointer-events-none"),
|
|
1138
1151
|
style: {
|
|
1139
1152
|
width: axisWidth
|
|
1140
1153
|
}
|
|
@@ -1222,14 +1235,14 @@ var GridRowCell = ({ idx, index, label, size, resize, selected, onSelect, onResi
|
|
|
1222
1235
|
ref: setNodeRef,
|
|
1223
1236
|
...attributes,
|
|
1224
1237
|
...listeners,
|
|
1225
|
-
className: (0, import_react_ui_theme2.mx)("flex h-full items-center justify-center cursor-pointer", "border-t focus-visible:outline-none", fragments.
|
|
1238
|
+
className: (0, import_react_ui_theme2.mx)("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),
|
|
1226
1239
|
onClick: () => onSelect?.(index)
|
|
1227
1240
|
}, /* @__PURE__ */ import_react3.default.createElement("span", {
|
|
1228
1241
|
className: "flex w-full justify-center"
|
|
1229
1242
|
}, label), over?.id === idx && !isDragging && /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1230
|
-
className: "z-20 absolute top-0 w-full min-h-[4px] border-b-4 border-
|
|
1243
|
+
className: "z-20 absolute top-0 w-full min-h-[4px] border-b-4 border-accentSurface"
|
|
1231
1244
|
}), resizing && /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1232
|
-
className: "z-20 absolute bottom-0 w-full min-h-[4px] border-b-4 border-
|
|
1245
|
+
className: "z-20 absolute bottom-0 w-full min-h-[4px] border-b-4 border-accentSurface"
|
|
1233
1246
|
})));
|
|
1234
1247
|
};
|
|
1235
1248
|
var SheetColumns = /* @__PURE__ */ (0, import_react3.forwardRef)(({ columns, sizes, selected, onSelect, onResize, onMove }, forwardRef2) => {
|
|
@@ -1268,7 +1281,7 @@ var SheetColumns = /* @__PURE__ */ (0, import_react3.forwardRef)(({ columns, siz
|
|
|
1268
1281
|
return /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1269
1282
|
className: "relative flex grow overflow-hidden"
|
|
1270
1283
|
}, /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1271
|
-
className: (0, import_react_ui_theme2.mx)("z-20 absolute inset-0 border-x pointer-events-none"
|
|
1284
|
+
className: (0, import_react_ui_theme2.mx)("z-20 absolute inset-0 border-x border-gridLine pointer-events-none"),
|
|
1272
1285
|
style: {
|
|
1273
1286
|
height: axisHeight
|
|
1274
1287
|
}
|
|
@@ -1296,14 +1309,14 @@ var SheetColumns = /* @__PURE__ */ (0, import_react3.forwardRef)(({ columns, siz
|
|
|
1296
1309
|
key: idx,
|
|
1297
1310
|
idx,
|
|
1298
1311
|
index,
|
|
1299
|
-
label: (0,
|
|
1312
|
+
label: (0, import_chunk_5KKJ4NPP.columnLetter)(index),
|
|
1300
1313
|
size: sizes?.[idx] ?? defaultWidth,
|
|
1301
1314
|
resize: index < columns.length - 1,
|
|
1302
1315
|
selected: selected === index,
|
|
1303
1316
|
onResize,
|
|
1304
1317
|
onSelect
|
|
1305
1318
|
}))), /* @__PURE__ */ (0, import_react_dom.createPortal)(/* @__PURE__ */ import_react3.default.createElement(import_core.DragOverlay, null, active && /* @__PURE__ */ import_react3.default.createElement(MovingOverlay, {
|
|
1306
|
-
label: (0,
|
|
1319
|
+
label: (0, import_chunk_5KKJ4NPP.columnLetter)(active.data.current.index)
|
|
1307
1320
|
})), document.body))));
|
|
1308
1321
|
});
|
|
1309
1322
|
var GridColumnCell = ({ idx, index, label, size, resize, selected, onSelect, onResize }) => {
|
|
@@ -1359,14 +1372,14 @@ var GridColumnCell = ({ idx, index, label, size, resize, selected, onSelect, onR
|
|
|
1359
1372
|
ref: setNodeRef,
|
|
1360
1373
|
...attributes,
|
|
1361
1374
|
...listeners,
|
|
1362
|
-
className: (0, import_react_ui_theme2.mx)("flex h-full items-center justify-center cursor-pointer", "border-l focus-visible:outline-none", fragments.
|
|
1375
|
+
className: (0, import_react_ui_theme2.mx)("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),
|
|
1363
1376
|
onClick: () => onSelect?.(index)
|
|
1364
1377
|
}, /* @__PURE__ */ import_react3.default.createElement("span", {
|
|
1365
1378
|
className: "flex w-full justify-center"
|
|
1366
1379
|
}, label), over?.id === idx && !isDragging && /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1367
|
-
className: "z-20 absolute left-0 h-full min-w-[4px] border-l-4 border-
|
|
1380
|
+
className: "z-20 absolute left-0 h-full min-w-[4px] border-l-4 border-accentSurface"
|
|
1368
1381
|
}), resizing && /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1369
|
-
className: "z-20 absolute right-0 h-full min-h-[4px] border-l-4 border-
|
|
1382
|
+
className: "z-20 absolute right-0 h-full min-h-[4px] border-l-4 border-accentSurface"
|
|
1370
1383
|
})));
|
|
1371
1384
|
};
|
|
1372
1385
|
var SheetGrid = /* @__PURE__ */ (0, import_react3.forwardRef)(({ size, rows, columns, rowSizes, columnSizes }, forwardRef2) => {
|
|
@@ -1385,7 +1398,7 @@ var SheetGrid = /* @__PURE__ */ (0, import_react3.forwardRef)(({ size, rows, col
|
|
|
1385
1398
|
id: model.id
|
|
1386
1399
|
}, {
|
|
1387
1400
|
F: __dxlog_file2,
|
|
1388
|
-
L:
|
|
1401
|
+
L: 730,
|
|
1389
1402
|
S: void 0,
|
|
1390
1403
|
C: (f, a) => f(...a)
|
|
1391
1404
|
});
|
|
@@ -1502,18 +1515,18 @@ var SheetGrid = /* @__PURE__ */ (0, import_react3.forwardRef)(({ size, rows, col
|
|
|
1502
1515
|
rowSizes,
|
|
1503
1516
|
columnSizes
|
|
1504
1517
|
});
|
|
1505
|
-
const
|
|
1506
|
-
const attendableAttrs = (0, import_react_ui_attention.createAttendableAttributes)(
|
|
1507
|
-
const
|
|
1518
|
+
const id = (0, import_echo.fullyQualifiedId)(model.sheet);
|
|
1519
|
+
const attendableAttrs = (0, import_react_ui_attention.createAttendableAttributes)(id);
|
|
1520
|
+
const hasAttention = (0, import_react_ui_attention.useHasAttention)(id);
|
|
1508
1521
|
return /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1509
1522
|
ref: containerRef,
|
|
1510
1523
|
role: "grid",
|
|
1511
1524
|
className: "relative flex grow overflow-hidden"
|
|
1512
1525
|
}, /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1513
|
-
className: (0, import_react_ui_theme2.mx)("z-20 absolute inset-0 border pointer-events-none"
|
|
1526
|
+
className: (0, import_react_ui_theme2.mx)("z-20 absolute inset-0 border border-gridLine pointer-events-none")
|
|
1514
1527
|
}), /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1515
1528
|
ref: scrollerRef,
|
|
1516
|
-
className: (0, import_react_ui_theme2.mx)("grow",
|
|
1529
|
+
className: (0, import_react_ui_theme2.mx)("grow", hasAttention && "overflow-auto scrollbar-thin")
|
|
1517
1530
|
}, /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1518
1531
|
className: "relative select-none",
|
|
1519
1532
|
style: {
|
|
@@ -1537,9 +1550,9 @@ var SheetGrid = /* @__PURE__ */ (0, import_react3.forwardRef)(({ size, rows, col
|
|
|
1537
1550
|
row,
|
|
1538
1551
|
column
|
|
1539
1552
|
};
|
|
1540
|
-
const
|
|
1553
|
+
const id2 = (0, import_chunk_5KKJ4NPP.addressToA1Notation)(cell);
|
|
1541
1554
|
const idx = model.addressToIndex(cell);
|
|
1542
|
-
const active = (0,
|
|
1555
|
+
const active = (0, import_chunk_5KKJ4NPP.posEquals)(cursor, cell);
|
|
1543
1556
|
if (active && editing) {
|
|
1544
1557
|
const value = initialText.current ?? model.getCellText(cell) ?? "";
|
|
1545
1558
|
const handleClose = (value2) => {
|
|
@@ -1580,8 +1593,8 @@ var SheetGrid = /* @__PURE__ */ (0, import_react3.forwardRef)(({ size, rows, col
|
|
|
1580
1593
|
});
|
|
1581
1594
|
}
|
|
1582
1595
|
return /* @__PURE__ */ import_react3.default.createElement(SheetCell, {
|
|
1583
|
-
key:
|
|
1584
|
-
id,
|
|
1596
|
+
key: id2,
|
|
1597
|
+
id: id2,
|
|
1585
1598
|
cell,
|
|
1586
1599
|
active,
|
|
1587
1600
|
style,
|
|
@@ -1615,7 +1628,7 @@ var SelectionOverlay = ({ root }) => {
|
|
|
1615
1628
|
return /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1616
1629
|
role: "none",
|
|
1617
1630
|
style: bounds,
|
|
1618
|
-
className: "z-10 absolute pointer-events-none bg-
|
|
1631
|
+
className: "z-10 absolute pointer-events-none bg-gridSelectionOverlay border border-gridOverlay"
|
|
1619
1632
|
});
|
|
1620
1633
|
};
|
|
1621
1634
|
var SheetCell = ({ id, cell, style, active, onSelect }) => {
|
|
@@ -1625,7 +1638,7 @@ var SheetCell = ({ id, cell, style, active, onSelect }) => {
|
|
|
1625
1638
|
[`data-${CELL_DATA_KEY}`]: id,
|
|
1626
1639
|
role: "cell",
|
|
1627
1640
|
style,
|
|
1628
|
-
className: (0, import_react_ui_theme2.mx)("flex w-full h-full truncate items-center border cursor-pointer",
|
|
1641
|
+
className: (0, import_react_ui_theme2.mx)("flex w-full h-full px-2 py-1 truncate items-center border border-gridLine cursor-pointer", fragments.cell, active && [
|
|
1629
1642
|
"z-20",
|
|
1630
1643
|
fragments.cellSelected
|
|
1631
1644
|
], classNames),
|
|
@@ -1646,7 +1659,7 @@ var GridCellEditor = ({ style, value, onNav, onClose }) => {
|
|
|
1646
1659
|
const notifier = (0, import_react3.useRef)();
|
|
1647
1660
|
(0, import_react3.useEffect)(() => {
|
|
1648
1661
|
if (range) {
|
|
1649
|
-
notifier.current?.((0,
|
|
1662
|
+
notifier.current?.((0, import_chunk_5KKJ4NPP.rangeToA1Notation)(range));
|
|
1650
1663
|
}
|
|
1651
1664
|
}, [
|
|
1652
1665
|
range
|
|
@@ -1688,15 +1701,15 @@ var SheetStatusBar = () => {
|
|
|
1688
1701
|
}
|
|
1689
1702
|
}
|
|
1690
1703
|
return /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1691
|
-
className: (0, import_react_ui_theme2.mx)("flex shrink-0 justify-between items-center px-4 py-1 text-sm border-x
|
|
1704
|
+
className: (0, import_react_ui_theme2.mx)("flex shrink-0 justify-between items-center px-4 py-1 text-sm border-x border-gridLine")
|
|
1692
1705
|
}, /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1693
1706
|
className: "flex gap-4 items-center"
|
|
1694
1707
|
}, /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1695
1708
|
className: "flex w-16 items-center font-mono"
|
|
1696
|
-
}, range && (0,
|
|
1709
|
+
}, range && (0, import_chunk_5KKJ4NPP.rangeToA1Notation)(range) || cursor && (0, import_chunk_5KKJ4NPP.addressToA1Notation)(cursor)), /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1697
1710
|
className: "flex gap-2 items-center"
|
|
1698
1711
|
}, /* @__PURE__ */ import_react3.default.createElement(import_react2.Function, {
|
|
1699
|
-
className: (0, import_react_ui_theme2.mx)("text-
|
|
1712
|
+
className: (0, import_react_ui_theme2.mx)("text-greenText", isFormula ? "visible" : "invisible")
|
|
1700
1713
|
}), /* @__PURE__ */ import_react3.default.createElement("span", {
|
|
1701
1714
|
className: "font-mono"
|
|
1702
1715
|
}, value))));
|
|
@@ -1716,7 +1729,7 @@ var SheetDebug = () => {
|
|
|
1716
1729
|
model
|
|
1717
1730
|
]);
|
|
1718
1731
|
return /* @__PURE__ */ import_react3.default.createElement("div", {
|
|
1719
|
-
className: (0, import_react_ui_theme2.mx)("z-20 absolute right-0 top-20 bottom-20 w-[30rem] overflow-auto scrollbar-thin", "border text-xs bg-neutral-50 dark:bg-black text-cyan-500 font-mono p-1 opacity-80"
|
|
1732
|
+
className: (0, import_react_ui_theme2.mx)("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")
|
|
1720
1733
|
}, /* @__PURE__ */ import_react3.default.createElement("pre", {
|
|
1721
1734
|
className: "whitespace-pre-wrap"
|
|
1722
1735
|
}, JSON.stringify({
|
|
@@ -1738,17 +1751,15 @@ var Sheet = {
|
|
|
1738
1751
|
StatusBar: SheetStatusBar,
|
|
1739
1752
|
Debug: SheetDebug
|
|
1740
1753
|
};
|
|
1741
|
-
var SheetContainer = ({ sheet, space, role,
|
|
1742
|
-
part: "main",
|
|
1743
|
-
entryId: ""
|
|
1744
|
-
} }) => {
|
|
1754
|
+
var SheetContainer = ({ sheet, space, role, remoteFunctionUrl }) => {
|
|
1745
1755
|
return /* @__PURE__ */ import_react.default.createElement("div", {
|
|
1746
1756
|
role: "none",
|
|
1747
|
-
className: (0, import_react_ui_theme.mx)("flex", role === "article" && "row-span-2", role === "section" && "aspect-square border-y border-is border-separator"
|
|
1757
|
+
className: (0, import_react_ui_theme.mx)("flex", role === "article" && "row-span-2", role === "section" && "aspect-square border-y border-is border-separator")
|
|
1748
1758
|
}, /* @__PURE__ */ import_react.default.createElement(Sheet.Root, {
|
|
1749
1759
|
sheet,
|
|
1750
|
-
space
|
|
1760
|
+
space,
|
|
1761
|
+
remoteFunctionUrl
|
|
1751
1762
|
}, /* @__PURE__ */ import_react.default.createElement(Sheet.Main, null)));
|
|
1752
1763
|
};
|
|
1753
1764
|
var SheetContainer_default = SheetContainer;
|
|
1754
|
-
//# sourceMappingURL=SheetContainer-
|
|
1765
|
+
//# sourceMappingURL=SheetContainer-AXQV3ZT5.cjs.map
|