@rowsncolumns/spreadsheet-state 29.1.0 → 29.1.2

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 (75) hide show
  1. package/dist/cjs/api/anchored-objects.d.ts +9 -1
  2. package/dist/cjs/api/anchored-objects.d.ts.map +1 -1
  3. package/dist/cjs/api/anchored-objects.js +24 -0
  4. package/dist/cjs/atoms/editing-data-validation-id.atom.d.ts +15 -0
  5. package/dist/cjs/atoms/editing-data-validation-id.atom.d.ts.map +1 -1
  6. package/dist/cjs/atoms/editing-data-validation-id.atom.js +18 -0
  7. package/dist/cjs/components/editors/data-validation-editor.d.ts.map +1 -1
  8. package/dist/cjs/components/editors/data-validation-editor.js +17 -12
  9. package/dist/cjs/hooks/use-on-delete-sheet.d.ts +2 -1
  10. package/dist/cjs/hooks/use-on-delete-sheet.d.ts.map +1 -1
  11. package/dist/cjs/hooks/use-on-delete-sheet.js +3 -1
  12. package/dist/cjs/hooks/use-on-request-data-validation.d.ts +7 -0
  13. package/dist/cjs/hooks/use-on-request-data-validation.d.ts.map +1 -1
  14. package/dist/cjs/hooks/use-on-request-data-validation.js +23 -11
  15. package/dist/cjs/hooks/use-spreadsheet-state.d.ts.map +1 -1
  16. package/dist/cjs/hooks/use-spreadsheet-state.js +1 -0
  17. package/dist/cjs/interface/delete-cells-shift-left.d.ts.map +1 -1
  18. package/dist/cjs/interface/delete-cells-shift-left.js +8 -2
  19. package/dist/cjs/interface/delete-cells-shift-up.d.ts.map +1 -1
  20. package/dist/cjs/interface/delete-cells-shift-up.js +8 -2
  21. package/dist/cjs/interface/delete-cells.d.ts.map +1 -1
  22. package/dist/cjs/interface/delete-cells.js +27 -21
  23. package/dist/cjs/interface/delete-column.d.ts.map +1 -1
  24. package/dist/cjs/interface/delete-column.js +8 -2
  25. package/dist/cjs/interface/delete-row.d.ts.map +1 -1
  26. package/dist/cjs/interface/delete-row.js +8 -2
  27. package/dist/cjs/interface/delete-sheet.d.ts +1 -1
  28. package/dist/cjs/interface/delete-sheet.d.ts.map +1 -1
  29. package/dist/cjs/interface/delete-sheet.js +32 -2
  30. package/dist/cjs/interface/insert-cells-shift-down.d.ts.map +1 -1
  31. package/dist/cjs/interface/insert-cells-shift-down.js +2 -1
  32. package/dist/cjs/interface/insert-cells-shift-right.d.ts.map +1 -1
  33. package/dist/cjs/interface/insert-cells-shift-right.js +2 -1
  34. package/dist/cjs/interface/insert-column.d.ts.map +1 -1
  35. package/dist/cjs/interface/insert-column.js +2 -1
  36. package/dist/cjs/interface/insert-row.d.ts.map +1 -1
  37. package/dist/cjs/interface/insert-row.js +2 -1
  38. package/dist/esm/api/anchored-objects.d.ts +9 -1
  39. package/dist/esm/api/anchored-objects.d.ts.map +1 -1
  40. package/dist/esm/api/anchored-objects.js +24 -0
  41. package/dist/esm/atoms/editing-data-validation-id.atom.d.ts +15 -0
  42. package/dist/esm/atoms/editing-data-validation-id.atom.d.ts.map +1 -1
  43. package/dist/esm/atoms/editing-data-validation-id.atom.js +12 -0
  44. package/dist/esm/components/editors/data-validation-editor.d.ts.map +1 -1
  45. package/dist/esm/components/editors/data-validation-editor.js +17 -12
  46. package/dist/esm/hooks/use-on-delete-sheet.d.ts +2 -1
  47. package/dist/esm/hooks/use-on-delete-sheet.d.ts.map +1 -1
  48. package/dist/esm/hooks/use-on-delete-sheet.js +3 -1
  49. package/dist/esm/hooks/use-on-request-data-validation.d.ts +7 -0
  50. package/dist/esm/hooks/use-on-request-data-validation.d.ts.map +1 -1
  51. package/dist/esm/hooks/use-on-request-data-validation.js +23 -11
  52. package/dist/esm/hooks/use-spreadsheet-state.d.ts.map +1 -1
  53. package/dist/esm/hooks/use-spreadsheet-state.js +1 -0
  54. package/dist/esm/interface/delete-cells-shift-left.d.ts.map +1 -1
  55. package/dist/esm/interface/delete-cells-shift-left.js +8 -2
  56. package/dist/esm/interface/delete-cells-shift-up.d.ts.map +1 -1
  57. package/dist/esm/interface/delete-cells-shift-up.js +8 -2
  58. package/dist/esm/interface/delete-cells.d.ts.map +1 -1
  59. package/dist/esm/interface/delete-cells.js +22 -16
  60. package/dist/esm/interface/delete-column.d.ts.map +1 -1
  61. package/dist/esm/interface/delete-column.js +8 -2
  62. package/dist/esm/interface/delete-row.d.ts.map +1 -1
  63. package/dist/esm/interface/delete-row.js +8 -2
  64. package/dist/esm/interface/delete-sheet.d.ts +1 -1
  65. package/dist/esm/interface/delete-sheet.d.ts.map +1 -1
  66. package/dist/esm/interface/delete-sheet.js +20 -1
  67. package/dist/esm/interface/insert-cells-shift-down.d.ts.map +1 -1
  68. package/dist/esm/interface/insert-cells-shift-down.js +2 -1
  69. package/dist/esm/interface/insert-cells-shift-right.d.ts.map +1 -1
  70. package/dist/esm/interface/insert-cells-shift-right.js +2 -1
  71. package/dist/esm/interface/insert-column.d.ts.map +1 -1
  72. package/dist/esm/interface/insert-column.js +2 -1
  73. package/dist/esm/interface/insert-row.d.ts.map +1 -1
  74. package/dist/esm/interface/insert-row.js +2 -1
  75. package/package.json +2 -2
@@ -1,4 +1,4 @@
1
- import type { CellInterface, GridRange } from "@rowsncolumns/common-types";
1
+ import type { CellInterface, Citation, GridRange } from "@rowsncolumns/common-types";
2
2
  import type { EmbeddedChart, EmbeddedObject, OverlayPosition, OverlayToAnchor, ProtectedRange, Slicer, TableView } from "@rowsncolumns/spreadsheet";
3
3
  import type { Draft } from "immer";
4
4
  import type { RangeBandSpan } from "./formula";
@@ -179,4 +179,12 @@ export declare const growTableBoundChartSpecRanges: (spec: unknown, sheetId: num
179
179
  export declare const shiftChartsOnTableEdit: (draft: Draft<EmbeddedChart>[], sheetId: number, binding: TableBinding, axis: StructuralAxis, op: StructuralOp, index: number, count: number) => void;
180
180
  /** Every chart's table-bound ranges grow / shrink with a resized or auto-expanded table (see `growTableBoundChartSpecRanges`). */
181
181
  export declare const growChartsWithTable: (draft: Draft<EmbeddedChart>[], sheetId: number, binding: TableBinding, rowDelta: number, columnDelta: number) => void;
182
+ /**
183
+ * Re-derive a citation's denormalized `destinationAnchor` from its `range`
184
+ * after a structural row / column / cell shift, so the anchor and the range
185
+ * travel together in the same history entry. A single cell becomes a
186
+ * `sheet_cell` anchor, anything larger a `sheet_range`; a citation without an
187
+ * anchor, or with an anchor of another type, is left alone.
188
+ */
189
+ export declare const refreshCitationAnchor: (citation: Citation) => void;
182
190
  //# sourceMappingURL=anchored-objects.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"anchored-objects.d.ts","sourceRoot":"","sources":["../../../api/anchored-objects.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anchored-objects.d.ts","sourceRoot":"","sources":["../../../api/anchored-objects.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { __assign, __read, __values } from "tslib";
2
+ import { cellToAddress } from "@rowsncolumns/utils";
2
3
  /**
3
4
  * Shift the `[start, end]` span of a range along the edited axis. Returns the
4
5
  * new span, or `null` when a delete consumes it entirely.
@@ -678,3 +679,26 @@ export var growChartsWithTable = function (draft, sheetId, binding, rowDelta, co
678
679
  finally { if (e_9) throw e_9.error; }
679
680
  }
680
681
  };
682
+ /**
683
+ * Re-derive a citation's denormalized `destinationAnchor` from its `range`
684
+ * after a structural row / column / cell shift, so the anchor and the range
685
+ * travel together in the same history entry. A single cell becomes a
686
+ * `sheet_cell` anchor, anything larger a `sheet_range`; a citation without an
687
+ * anchor, or with an anchor of another type, is left alone.
688
+ */
689
+ export var refreshCitationAnchor = function (citation) {
690
+ var anchor = citation.destinationAnchor;
691
+ if (!anchor || (anchor.type !== "sheet_cell" && anchor.type !== "sheet_range")) {
692
+ return;
693
+ }
694
+ var _a = citation.range, sheetId = _a.sheetId, startRowIndex = _a.startRowIndex, endRowIndex = _a.endRowIndex, startColumnIndex = _a.startColumnIndex, endColumnIndex = _a.endColumnIndex;
695
+ var start = cellToAddress({ rowIndex: startRowIndex, columnIndex: startColumnIndex });
696
+ var end = cellToAddress({ rowIndex: endRowIndex, columnIndex: endColumnIndex });
697
+ if (!start || !end)
698
+ return;
699
+ if (startRowIndex === endRowIndex && startColumnIndex === endColumnIndex) {
700
+ citation.destinationAnchor = { type: "sheet_cell", sheetId: sheetId, cell: start };
701
+ return;
702
+ }
703
+ citation.destinationAnchor = { type: "sheet_range", sheetId: sheetId, range: "".concat(start, ":").concat(end) };
704
+ };
@@ -1,7 +1,22 @@
1
+ import type { DataValidationRuleRecord } from "@rowsncolumns/spreadsheet";
1
2
  export declare const editingDataValidationId: import("jotai").PrimitiveAtom<string | number | undefined> & {
2
3
  init: string | number | undefined;
3
4
  };
4
5
  export declare const useEditingDataValidationIdValue: () => string | number | undefined;
5
6
  export declare const useSetEditingDataValidationId: () => (args_0: string | number | ((prev: string | number | undefined) => string | number | undefined) | undefined) => void;
6
7
  export declare const useEditingDataValidationIdState: () => [string | number | undefined, (args_0: string | number | ((prev: string | number | undefined) => string | number | undefined) | undefined) => void];
8
+ /**
9
+ * A data-validation rule the editor is composing that does NOT exist in the
10
+ * document yet — Excel's Data Validation dialog is transactional (nothing is
11
+ * written until OK). Insert → Dropdown / the ribbon's Data Validation button
12
+ * seed this atom instead of creating the rule; the `DataValidationEditor`
13
+ * resolves the editing id against it when no persisted rule matches, creates
14
+ * it on Save and discards it on Cancel / close.
15
+ */
16
+ export declare const draftDataValidationRule: import("jotai").PrimitiveAtom<DataValidationRuleRecord | undefined> & {
17
+ init: DataValidationRuleRecord | undefined;
18
+ };
19
+ export declare const useDraftDataValidationRuleValue: () => DataValidationRuleRecord | undefined;
20
+ export declare const useSetDraftDataValidationRule: () => (args_0: DataValidationRuleRecord | ((prev: DataValidationRuleRecord | undefined) => DataValidationRuleRecord | undefined) | undefined) => void;
21
+ export declare const useDraftDataValidationRuleState: () => [DataValidationRuleRecord | undefined, (args_0: DataValidationRuleRecord | ((prev: DataValidationRuleRecord | undefined) => DataValidationRuleRecord | undefined) | undefined) => void];
7
22
  //# sourceMappingURL=editing-data-validation-id.atom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"editing-data-validation-id.atom.d.ts","sourceRoot":"","sources":["../../../atoms/editing-data-validation-id.atom.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,uBAAuB;;CAExB,CAAC;AAEb,eAAO,MAAM,+BAA+B,mCACL,CAAC;AAExC,eAAO,MAAM,6BAA6B,4HACL,CAAC;AAEtC,eAAO,MAAM,+BAA+B,2JACV,CAAC"}
1
+ {"version":3,"file":"editing-data-validation-id.atom.d.ts","sourceRoot":"","sources":["../../../atoms/editing-data-validation-id.atom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAI1E,eAAO,MAAM,uBAAuB;;CAExB,CAAC;AAEb,eAAO,MAAM,+BAA+B,mCACL,CAAC;AAExC,eAAO,MAAM,6BAA6B,4HACL,CAAC;AAEtC,eAAO,MAAM,+BAA+B,2JACV,CAAC;AAEnC;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB;;CAExB,CAAC;AAEb,eAAO,MAAM,+BAA+B,4CACL,CAAC;AAExC,eAAO,MAAM,6BAA6B,uJACL,CAAC;AAEtC,eAAO,MAAM,+BAA+B,+LACV,CAAC"}
@@ -10,3 +10,21 @@ export var useSetEditingDataValidationId = function () {
10
10
  export var useEditingDataValidationIdState = function () {
11
11
  return useAtom(editingDataValidationId);
12
12
  };
13
+ /**
14
+ * A data-validation rule the editor is composing that does NOT exist in the
15
+ * document yet — Excel's Data Validation dialog is transactional (nothing is
16
+ * written until OK). Insert → Dropdown / the ribbon's Data Validation button
17
+ * seed this atom instead of creating the rule; the `DataValidationEditor`
18
+ * resolves the editing id against it when no persisted rule matches, creates
19
+ * it on Save and discards it on Cancel / close.
20
+ */
21
+ export var draftDataValidationRule = atom(undefined);
22
+ export var useDraftDataValidationRuleValue = function () {
23
+ return useAtomValue(draftDataValidationRule);
24
+ };
25
+ export var useSetDraftDataValidationRule = function () {
26
+ return useSetAtom(draftDataValidationRule);
27
+ };
28
+ export var useDraftDataValidationRuleState = function () {
29
+ return useAtom(draftDataValidationRule);
30
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"data-validation-editor.d.ts","sourceRoot":"","sources":["../../../../components/editors/data-validation-editor.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,2BAA2B,CAAC;AAoBnC,OAAO,KAA4D,MAAM,OAAO,CAAC;AAIjF,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,mCAAmC,CAAC;AAQ3C,KAAK,yBAAyB,GAAG;IAC/B,eAAe,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB,CAAC,EAAE,eAAe,CAAC,sBAAsB,CAAC,CAAC;IAC/D,aAAa,EAAE,UAAU,CACvB,OAAO,mBAAmB,CAC3B,CAAC,6BAA6B,CAAC,CAAC;IACjC,YAAY,EAAE,UAAU,CACtB,OAAO,mBAAmB,CAC3B,CAAC,4BAA4B,CAAC,CAAC;IAChC,YAAY,EAAE,UAAU,CACtB,OAAO,mBAAmB,CAC3B,CAAC,4BAA4B,CAAC,CAAC;IAChC,YAAY,EAAE,UAAU,CACtB,OAAO,mBAAmB,CAC3B,CAAC,4BAA4B,CAAC,CAAC;IAChC;;OAEG;IACH,kBAAkB,CAAC,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;CAChE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,kIASlC,yBAAyB,sBA+O3B,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,eAExC;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,sBAyBA,CAAC"}
1
+ {"version":3,"file":"data-validation-editor.d.ts","sourceRoot":"","sources":["../../../../components/editors/data-validation-editor.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,2BAA2B,CAAC;AAoBnC,OAAO,KAAkD,MAAM,OAAO,CAAC;AAOvE,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,mCAAmC,CAAC;AAQ3C,KAAK,yBAAyB,GAAG;IAC/B,eAAe,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB,CAAC,EAAE,eAAe,CAAC,sBAAsB,CAAC,CAAC;IAC/D,aAAa,EAAE,UAAU,CACvB,OAAO,mBAAmB,CAC3B,CAAC,6BAA6B,CAAC,CAAC;IACjC,YAAY,EAAE,UAAU,CACtB,OAAO,mBAAmB,CAC3B,CAAC,4BAA4B,CAAC,CAAC;IAChC,YAAY,EAAE,UAAU,CACtB,OAAO,mBAAmB,CAC3B,CAAC,4BAA4B,CAAC,CAAC;IAChC,YAAY,EAAE,UAAU,CACtB,OAAO,mBAAmB,CAC3B,CAAC,4BAA4B,CAAC,CAAC;IAChC;;OAEG;IACH,kBAAkB,CAAC,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;CAChE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,kIASlC,yBAAyB,sBAoP3B,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,eAExC;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,sBAyBA,CAAC"}
@@ -3,9 +3,9 @@ import { CopyIcon, Cross2Icon, Pencil2Icon, PlusIcon, TrashIcon, } from "@rowsnc
3
3
  import { CONDITION_LABELS, getUserSelections, useFocusSheet, useFormulaRangeHelpers, useSpreadsheetApi, } from "@rowsncolumns/spreadsheet";
4
4
  import { Button, Dialog, DialogBody, DialogCloseButton, DialogContent, DialogTitle, IconButton, Separator, Stack, } from "@rowsncolumns/ui";
5
5
  import { uuid } from "@rowsncolumns/utils";
6
- import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
6
+ import React, { useCallback, useEffect, useMemo, useRef } from "react";
7
7
  import { useDataValidationDialogState } from "../../atoms/dialog-state.atom";
8
- import { useEditingDataValidationIdState } from "../../atoms/editing-data-validation-id.atom";
8
+ import { useDraftDataValidationRuleState, useEditingDataValidationIdState, } from "../../atoms/editing-data-validation-id.atom";
9
9
  import { DataValidationRuleEditor } from "./data-validation-rule-editor";
10
10
  import { SheetFilterEmptyState, SheetFilterSelect, useSheetFilter, } from "./sheet-filter";
11
11
  /**
@@ -16,10 +16,12 @@ import { SheetFilterEmptyState, SheetFilterSelect, useSheetFilter, } from "./she
16
16
  export var DataValidationEditor = function (_a) {
17
17
  var sheetId = _a.sheetId, dataValidations = _a.dataValidations, functionDescriptions = _a.functionDescriptions, idCreationStrategy = _a.idCreationStrategy, onDeleteRules = _a.onDeleteRules, onDeleteRule = _a.onDeleteRule, onCreateRule = _a.onCreateRule, onUpdateRule = _a.onUpdateRule;
18
18
  var _b = __read(useEditingDataValidationIdState(), 2), editingId = _b[0], setEditingId = _b[1];
19
- // Deferred create: "Add rule" holds the new rule as a local draft and only persists
20
- // it on Save — Excel's dialog is transactional (no rule exists until OK), and an
21
- // eagerly-created stub would survive Cancel/close as a blank, conditionless rule.
22
- var _c = __read(useState(), 2), draftRule = _c[0], setDraftRule = _c[1];
19
+ // Deferred create: "Add rule" and the seeded openers (Insert → Dropdown, the ribbon's
20
+ // Data Validation button via `useOnRequestDataValidation`) hold the new rule as a draft
21
+ // and only persist it on Save — Excel's dialog is transactional (no rule exists until
22
+ // OK), and an eagerly-created stub would survive Cancel/close as a real rule (a blank
23
+ // conditionless one, or a placeholder list that rejects every existing cell value).
24
+ var _c = __read(useDraftDataValidationRuleState(), 2), draftRule = _c[0], setDraftRule = _c[1];
23
25
  var api = useSpreadsheetApi();
24
26
  var rangeToFormula = useFormulaRangeHelpers({
25
27
  sheetId: sheetId,
@@ -74,19 +76,22 @@ export var DataValidationEditor = function (_a) {
74
76
  ? draftRule
75
77
  : dataValidations === null || dataValidations === void 0 ? void 0 : dataValidations.find(function (rule) { return rule.id === editingId; });
76
78
  }, [dataValidations, editingId, draftRule]);
77
- // The editing id lives in a shared atom that outlives this editor. If the dialog
78
- // closes while a draft is being edited, clear it on unmount — otherwise reopening
79
- // the dialog resolves an id with no rule, hiding the Add rule / Remove all footer.
79
+ // The editing id and the draft live in shared atoms that outlive this editor. If the
80
+ // dialog closes while a draft is being edited, clear both on unmount — otherwise
81
+ // reopening the dialog resumes the abandoned draft instead of showing the rule list.
80
82
  var unmountCleanupRef = useRef({ editingId: undefined, draftId: undefined });
81
83
  useEffect(function () {
82
84
  unmountCleanupRef.current = { editingId: editingId, draftId: draftRule === null || draftRule === void 0 ? void 0 : draftRule.id };
83
85
  }, [editingId, draftRule]);
84
86
  useEffect(function () { return function () {
85
87
  var _a = unmountCleanupRef.current, editingId = _a.editingId, draftId = _a.draftId;
86
- if (draftId !== undefined && editingId === draftId) {
87
- setEditingId(undefined);
88
+ if (draftId !== undefined) {
89
+ setDraftRule(undefined);
90
+ if (editingId === draftId) {
91
+ setEditingId(undefined);
92
+ }
88
93
  }
89
- }; }, [setEditingId]);
94
+ }; }, [setEditingId, setDraftRule]);
90
95
  var unMark = function () {
91
96
  api === null || api === void 0 ? void 0 : api.unmark();
92
97
  };
@@ -15,10 +15,11 @@ export type UseOnDeleteSheetProps<T extends CellData, S extends Sheet> = {
15
15
  onChangeDataValidations?: UseSpreadsheetProps<T, S>["onChangeDataValidations"];
16
16
  onChangeNamedRanges?: UseSpreadsheetProps<T, S>["onChangeNamedRanges"];
17
17
  onChangeProtectedRanges?: UseSpreadsheetProps<T, S>["onChangeProtectedRanges"];
18
+ onChangeCitations?: UseSpreadsheetProps<T, S>["onChangeCitations"];
18
19
  enqueueGraphOperation(operation: CalculationOperation): void;
19
20
  onChangeActiveSheet: (sheetId: number) => void;
20
21
  createHistory: () => (patches: SpreadsheetPatch) => void;
21
22
  onCommand?: OnCommand;
22
23
  };
23
- export declare const useOnDeleteSheet: <T extends CellData, S extends Sheet>({ sheets, onChangeSheetData, onChangeActiveSheet, onChangeSheets, onChangeCharts, onChangeEmbeds, onChangeSlicers, onChangeTables, onChangeConditionalFormats, onChangeDataValidations, onChangeNamedRanges, onChangeProtectedRanges, createHistory, enqueueGraphOperation, onCommand, }: UseOnDeleteSheetProps<T, S>) => (sheetId: number) => void;
24
+ export declare const useOnDeleteSheet: <T extends CellData, S extends Sheet>({ sheets, onChangeSheetData, onChangeActiveSheet, onChangeSheets, onChangeCharts, onChangeEmbeds, onChangeSlicers, onChangeTables, onChangeConditionalFormats, onChangeDataValidations, onChangeNamedRanges, onChangeProtectedRanges, onChangeCitations, createHistory, enqueueGraphOperation, onCommand, }: UseOnDeleteSheetProps<T, S>) => (sheetId: number) => void;
24
25
  //# sourceMappingURL=use-on-delete-sheet.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-on-delete-sheet.d.ts","sourceRoot":"","sources":["../../../hooks/use-on-delete-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAGtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,IAAI;IACvE,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,iBAAiB,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;IAClE,cAAc,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC5D,cAAc,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC7D,cAAc,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC7D,eAAe,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC/D,cAAc,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC7D,0BAA0B,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC;IACrF,uBAAuB,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC;IAC/E,mBAAmB,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;IACvE,uBAAuB,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC;IAC/E,qBAAqB,CAAC,SAAS,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC7D,mBAAmB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACzD,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,0RAgBnE,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,eAIhB,MAAM,SAqDnB,CAAC"}
1
+ {"version":3,"file":"use-on-delete-sheet.d.ts","sourceRoot":"","sources":["../../../hooks/use-on-delete-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAGtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,IAAI;IACvE,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,iBAAiB,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;IAClE,cAAc,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC5D,cAAc,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC7D,cAAc,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC7D,eAAe,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC/D,cAAc,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC7D,0BAA0B,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC;IACrF,uBAAuB,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC;IAC/E,mBAAmB,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;IACvE,uBAAuB,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC;IAC/E,iBAAiB,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;IACnE,qBAAqB,CAAC,SAAS,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC7D,mBAAmB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACzD,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,6SAiBnE,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,eAIhB,MAAM,SAuDnB,CAAC"}
@@ -2,7 +2,7 @@ import { useCallback } from "react";
2
2
  import { deleteSheet } from "../interface/delete-sheet";
3
3
  import { useCanEditSheet, useCanEditWorkbook } from "./use-can-edit-cellrange";
4
4
  export var useOnDeleteSheet = function (_a) {
5
- var sheets = _a.sheets, onChangeSheetData = _a.onChangeSheetData, onChangeActiveSheet = _a.onChangeActiveSheet, onChangeSheets = _a.onChangeSheets, onChangeCharts = _a.onChangeCharts, onChangeEmbeds = _a.onChangeEmbeds, onChangeSlicers = _a.onChangeSlicers, onChangeTables = _a.onChangeTables, onChangeConditionalFormats = _a.onChangeConditionalFormats, onChangeDataValidations = _a.onChangeDataValidations, onChangeNamedRanges = _a.onChangeNamedRanges, onChangeProtectedRanges = _a.onChangeProtectedRanges, createHistory = _a.createHistory, enqueueGraphOperation = _a.enqueueGraphOperation, onCommand = _a.onCommand;
5
+ var sheets = _a.sheets, onChangeSheetData = _a.onChangeSheetData, onChangeActiveSheet = _a.onChangeActiveSheet, onChangeSheets = _a.onChangeSheets, onChangeCharts = _a.onChangeCharts, onChangeEmbeds = _a.onChangeEmbeds, onChangeSlicers = _a.onChangeSlicers, onChangeTables = _a.onChangeTables, onChangeConditionalFormats = _a.onChangeConditionalFormats, onChangeDataValidations = _a.onChangeDataValidations, onChangeNamedRanges = _a.onChangeNamedRanges, onChangeProtectedRanges = _a.onChangeProtectedRanges, onChangeCitations = _a.onChangeCitations, createHistory = _a.createHistory, enqueueGraphOperation = _a.enqueueGraphOperation, onCommand = _a.onCommand;
6
6
  var canEditSheet = useCanEditSheet();
7
7
  var canEditWorkbook = useCanEditWorkbook();
8
8
  return useCallback(function (sheetId) {
@@ -27,6 +27,7 @@ export var useOnDeleteSheet = function (_a) {
27
27
  onChangeDataValidations: onChangeDataValidations,
28
28
  onChangeNamedRanges: onChangeNamedRanges,
29
29
  onChangeProtectedRanges: onChangeProtectedRanges,
30
+ onChangeCitations: onChangeCitations,
30
31
  createHistory: createHistory,
31
32
  enqueueGraphOperation: enqueueGraphOperation,
32
33
  })(sheetId);
@@ -43,6 +44,7 @@ export var useOnDeleteSheet = function (_a) {
43
44
  onChangeDataValidations,
44
45
  onChangeNamedRanges,
45
46
  onChangeProtectedRanges,
47
+ onChangeCitations,
46
48
  enqueueGraphOperation,
47
49
  onChangeActiveSheet,
48
50
  createHistory,
@@ -2,6 +2,13 @@ import type { useDataValidationRules } from "./use-data-validation-rules";
2
2
  type UseOnRequestDataValidationProps = {
3
3
  onCreateDataValidationRule?: ReturnType<typeof useDataValidationRules>["onCreateDataValidationRule"];
4
4
  };
5
+ /**
6
+ * Opens the Data Validation dialog. A seeded rule is NOT written to the document
7
+ * while the dialog is showing it: Excel's dialog is transactional (nothing exists
8
+ * until OK), so the rule is handed to the editor as a draft that Save creates and
9
+ * Cancel / close discards. Only a seeded rule with the edit UI suppressed
10
+ * (Insert → Checkbox) is created immediately — there is no dialog to confirm it.
11
+ */
5
12
  export declare const useOnRequestDataValidation: ({ onCreateDataValidationRule, }: UseOnRequestDataValidationProps) => (sheetId: number, activeCell: import("@rowsncolumns/grid").CellInterface, selections: import("@rowsncolumns/grid").SelectionArea<import("@rowsncolumns/spreadsheet").SelectionAttributes>[], initialDataValidationRule?: import("@rowsncolumns/common-types").DataValidationRuleRecord, showEditUI?: boolean) => void;
6
13
  export {};
7
14
  //# sourceMappingURL=use-on-request-data-validation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-on-request-data-validation.d.ts","sourceRoot":"","sources":["../../../hooks/use-on-request-data-validation.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAE1E,KAAK,+BAA+B,GAAG;IACrC,0BAA0B,CAAC,EAAE,UAAU,CACrC,OAAO,sBAAsB,CAC9B,CAAC,4BAA4B,CAAC,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,iCAExC,+BAA+B,0TA4BjC,CAAC"}
1
+ {"version":3,"file":"use-on-request-data-validation.d.ts","sourceRoot":"","sources":["../../../hooks/use-on-request-data-validation.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAE1E,KAAK,+BAA+B,GAAG;IACrC,0BAA0B,CAAC,EAAE,UAAU,CACrC,OAAO,sBAAsB,CAC9B,CAAC,4BAA4B,CAAC,CAAC;CACjC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GAAI,iCAExC,+BAA+B,0TAgCjC,CAAC"}
@@ -1,23 +1,35 @@
1
1
  import { useCallback } from "react";
2
2
  import { useSetDataValidationDialogAState } from "../atoms/dialog-state.atom";
3
- import { useSetEditingDataValidationId } from "../atoms/editing-data-validation-id.atom";
3
+ import { useSetDraftDataValidationRule, useSetEditingDataValidationId, } from "../atoms/editing-data-validation-id.atom";
4
+ /**
5
+ * Opens the Data Validation dialog. A seeded rule is NOT written to the document
6
+ * while the dialog is showing it: Excel's dialog is transactional (nothing exists
7
+ * until OK), so the rule is handed to the editor as a draft that Save creates and
8
+ * Cancel / close discards. Only a seeded rule with the edit UI suppressed
9
+ * (Insert → Checkbox) is created immediately — there is no dialog to confirm it.
10
+ */
4
11
  export var useOnRequestDataValidation = function (_a) {
5
12
  var onCreateDataValidationRule = _a.onCreateDataValidationRule;
6
13
  var onOpenChange = useSetDataValidationDialogAState();
7
14
  var setEditingDataValidationId = useSetEditingDataValidationId();
15
+ var setDraftDataValidationRule = useSetDraftDataValidationRule();
8
16
  return useCallback(function (sheetId, activeCell, selections, initialDataValidationRule, showEditUI) {
9
17
  if (showEditUI === void 0) { showEditUI = true; }
10
- if (initialDataValidationRule) {
11
- // Create a new rule
12
- onCreateDataValidationRule === null || onCreateDataValidationRule === void 0 ? void 0 : onCreateDataValidationRule(initialDataValidationRule);
13
- }
14
- if (showEditUI) {
15
- // Open dialog
16
- onOpenChange(true);
18
+ if (!showEditUI) {
17
19
  if (initialDataValidationRule) {
18
- // Set editing id
19
- setEditingDataValidationId(initialDataValidationRule.id);
20
+ onCreateDataValidationRule === null || onCreateDataValidationRule === void 0 ? void 0 : onCreateDataValidationRule(initialDataValidationRule);
20
21
  }
22
+ return;
23
+ }
24
+ if (initialDataValidationRule) {
25
+ setDraftDataValidationRule(initialDataValidationRule);
26
+ setEditingDataValidationId(initialDataValidationRule.id);
21
27
  }
22
- }, [onOpenChange, setEditingDataValidationId, onCreateDataValidationRule]);
28
+ onOpenChange(true);
29
+ }, [
30
+ onOpenChange,
31
+ setEditingDataValidationId,
32
+ setDraftDataValidationRule,
33
+ onCreateDataValidationRule,
34
+ ]);
23
35
  };
@@ -1 +1 @@
1
- {"version":3,"file":"use-spreadsheet-state.d.ts","sourceRoot":"","sources":["../../../hooks/use-spreadsheet-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-spreadsheet-state.d.ts","sourceRoot":"","sources":["../../../hooks/use-spreadsheet-state.ts"],"names":[],"mappings":"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"}
@@ -709,6 +709,7 @@ export var useSpreadsheetState = function (_a) {
709
709
  createHistory: createHistory,
710
710
  onChangeSheetData: onChangeSheetData,
711
711
  onChangeSheets: onChangeSheets,
712
+ onChangeCitations: onChangeCitations,
712
713
  onChangeCharts: onChangeCharts,
713
714
  onChangeEmbeds: onChangeEmbeds,
714
715
  onChangeSlicers: onChangeSlicers,
@@ -1 +1 @@
1
- {"version":3,"file":"delete-cells-shift-left.d.ts","sourceRoot":"","sources":["../../../interface/delete-cells-shift-left.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,aAAa,EACd,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,QAAQ,EACR,mBAAmB,EACnB,KAAK,EACN,MAAM,2BAA2B,CAAC;AAiBnC,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AAI9F;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,8SAmBvE,8BAA8B,CAAC,CAAC,EAAE,CAAC,CAAC,MAEnC,SAAS,MAAM,EACf,YAAY,aAAa,EACzB,YAAY,aAAa,CAAC,mBAAmB,CAAC,EAAE,SAySnD,CAAC"}
1
+ {"version":3,"file":"delete-cells-shift-left.d.ts","sourceRoot":"","sources":["../../../interface/delete-cells-shift-left.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,aAAa,EACd,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,QAAQ,EACR,mBAAmB,EACnB,KAAK,EACN,MAAM,2BAA2B,CAAC;AAiBnC,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AAI9F;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,8SAmBvE,8BAA8B,CAAC,CAAC,EAAE,CAAC,CAAC,MAEnC,SAAS,MAAM,EACf,YAAY,aAAa,EACzB,YAAY,aAAa,CAAC,mBAAmB,CAAC,EAAE,SA+SnD,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { __assign, __read, __spreadArray, __values } from "tslib";
2
2
  import { produceWithPatches } from "immer";
3
- import { shiftChartsOnCellShift } from "../api/anchored-objects";
3
+ import { refreshCitationAnchor, shiftChartsOnCellShift } from "../api/anchored-objects";
4
4
  import { collectUniqueDependentsForRange, moveFormulaAtPosition, } from "../api/dependency";
5
5
  import { contractRangesInFormula } from "../api/formula";
6
6
  import { createSheetDraft } from "../api/immer-utils";
@@ -71,6 +71,7 @@ export var deleteCellsShiftLeft = function (_a) {
71
71
  });
72
72
  // Update citations - delete if overlapping, shift back if after
73
73
  onChangeCitations === null || onChangeCitations === void 0 ? void 0 : onChangeCitations(function (prevCitations) {
74
+ var updatedAt = new Date().toISOString();
74
75
  var _a = __read(produceWithPatches(prevCitations, function (draft) {
75
76
  for (var idx = draft.length - 1; idx >= 0; idx--) {
76
77
  var citation = draft[idx];
@@ -82,11 +83,16 @@ export var deleteCellsShiftLeft = function (_a) {
82
83
  var colsOverlap = !(citation.range.endColumnIndex < c1 ||
83
84
  citation.range.startColumnIndex > c2);
84
85
  if (colsOverlap) {
85
- draft.splice(idx, 1);
86
+ // Soft-delete: keep the record for provenance / undo, hide it from the UI
87
+ if (citation.active !== false) {
88
+ citation.active = false;
89
+ citation.updated_at = updatedAt;
90
+ }
86
91
  }
87
92
  else if (citation.range.startColumnIndex > c2) {
88
93
  citation.range.startColumnIndex -= count;
89
94
  citation.range.endColumnIndex -= count;
95
+ refreshCitationAnchor(citation);
90
96
  }
91
97
  }
92
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"delete-cells-shift-up.d.ts","sourceRoot":"","sources":["../../../interface/delete-cells-shift-up.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,aAAa,EACd,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,QAAQ,EACR,mBAAmB,EACnB,KAAK,EACN,MAAM,2BAA2B,CAAC;AAiBnC,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAI1F;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,8SAmBrE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,MAEjC,SAAS,MAAM,EACf,YAAY,aAAa,EACzB,YAAY,aAAa,CAAC,mBAAmB,CAAC,EAAE,SAuRnD,CAAC"}
1
+ {"version":3,"file":"delete-cells-shift-up.d.ts","sourceRoot":"","sources":["../../../interface/delete-cells-shift-up.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,aAAa,EACd,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,QAAQ,EACR,mBAAmB,EACnB,KAAK,EACN,MAAM,2BAA2B,CAAC;AAiBnC,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAI1F;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,8SAmBrE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,MAEjC,SAAS,MAAM,EACf,YAAY,aAAa,EACzB,YAAY,aAAa,CAAC,mBAAmB,CAAC,EAAE,SA6RnD,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { __assign, __read, __spreadArray, __values } from "tslib";
2
2
  import { produceWithPatches } from "immer";
3
- import { shiftChartsOnCellShift } from "../api/anchored-objects";
3
+ import { refreshCitationAnchor, shiftChartsOnCellShift } from "../api/anchored-objects";
4
4
  import { collectUniqueDependentsForRange, moveFormulaAtPosition, } from "../api/dependency";
5
5
  import { contractRangesInFormula } from "../api/formula";
6
6
  import { createSheetDraft } from "../api/immer-utils";
@@ -72,6 +72,7 @@ export var deleteCellsShiftUp = function (_a) {
72
72
  });
73
73
  // Update citations - delete if overlapping, shift back if after
74
74
  onChangeCitations === null || onChangeCitations === void 0 ? void 0 : onChangeCitations(function (prevCitations) {
75
+ var updatedAt = new Date().toISOString();
75
76
  var _a = __read(produceWithPatches(prevCitations, function (draft) {
76
77
  for (var idx = draft.length - 1; idx >= 0; idx--) {
77
78
  var citation = draft[idx];
@@ -83,11 +84,16 @@ export var deleteCellsShiftUp = function (_a) {
83
84
  var rowsOverlap = !(citation.range.endRowIndex < r1 ||
84
85
  citation.range.startRowIndex > r2);
85
86
  if (rowsOverlap) {
86
- draft.splice(idx, 1);
87
+ // Soft-delete: keep the record for provenance / undo, hide it from the UI
88
+ if (citation.active !== false) {
89
+ citation.active = false;
90
+ citation.updated_at = updatedAt;
91
+ }
87
92
  }
88
93
  else if (citation.range.startRowIndex > r2) {
89
94
  citation.range.startRowIndex -= count;
90
95
  citation.range.endRowIndex -= count;
96
+ refreshCitationAnchor(citation);
91
97
  }
92
98
  }
93
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"delete-cells.d.ts","sourceRoot":"","sources":["../../../interface/delete-cells.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,aAAa,EACd,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EACV,QAAQ,EAER,mBAAmB,EACnB,KAAK,EACN,MAAM,2BAA2B,CAAC;AAKnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAK/D,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,SAAS,CAAC;AAEvD,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,gUAoB9D,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,MAErB,SAAS,MAAM,EACf,MAAM,aAAa,EACnB,YAAY,aAAa,CAAC,mBAAmB,CAAC,EAAE,EAChD,YAAW,SAAsB,SA0RpC,CAAC"}
1
+ {"version":3,"file":"delete-cells.d.ts","sourceRoot":"","sources":["../../../interface/delete-cells.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,aAAa,EACd,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EACV,QAAQ,EAER,mBAAmB,EACnB,KAAK,EACN,MAAM,2BAA2B,CAAC;AAKnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAK/D,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,SAAS,CAAC;AAEvD,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,gUAoB9D,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,MAErB,SAAS,MAAM,EACf,MAAM,aAAa,EACnB,YAAY,aAAa,CAAC,mBAAmB,CAAC,EAAE,EAChD,YAAW,SAAsB,SAgSpC,CAAC"}
@@ -209,29 +209,35 @@ export var deleteCells = function (_a) {
209
209
  return nextState;
210
210
  });
211
211
  }
212
- // Update citations - remove citations that overlap with deleted cells
213
- onChangeCitations === null || onChangeCitations === void 0 ? void 0 : onChangeCitations(function (prevCitations) {
214
- var _a = __read(produceWithPatches(prevCitations, function (draft) {
215
- var _loop_2 = function (idx) {
216
- var citation = draft[idx];
217
- // Check if citation is on the same sheet and overlaps with any deleted selection
218
- if (citation.range.sheetId === sheetId &&
219
- finalSelections.some(function (sel) {
220
- return areaInsideArea(citation.range, sel.range);
221
- })) {
222
- // Remove citation since its referenced cells are being deleted
223
- draft.splice(idx, 1);
212
+ // Update citations - retire citations whose cited cells lose their contents.
213
+ // Clearing formats only leaves the cited values in place, so the citations stay.
214
+ if (shouldClearContents) {
215
+ onChangeCitations === null || onChangeCitations === void 0 ? void 0 : onChangeCitations(function (prevCitations) {
216
+ var updatedAt = new Date().toISOString();
217
+ var _a = __read(produceWithPatches(prevCitations, function (draft) {
218
+ var _loop_2 = function (idx) {
219
+ var citation = draft[idx];
220
+ // Check if citation is active, on the same sheet and inside a cleared selection
221
+ if (citation.active !== false &&
222
+ citation.range.sheetId === sheetId &&
223
+ finalSelections.some(function (sel) {
224
+ return areaInsideArea(citation.range, sel.range);
225
+ })) {
226
+ // Soft-delete: keep the record for provenance / undo, hide it from the UI
227
+ citation.active = false;
228
+ citation.updated_at = updatedAt;
229
+ }
230
+ };
231
+ for (var idx = draft.length - 1; idx >= 0; idx--) {
232
+ _loop_2(idx);
224
233
  }
225
- };
226
- for (var idx = draft.length - 1; idx >= 0; idx--) {
227
- _loop_2(idx);
228
- }
229
- }), 3), nextState = _a[0], patches = _a[1], inversePatches = _a[2];
230
- saveHistory({
231
- citations: { patches: patches, inversePatches: inversePatches },
234
+ }), 3), nextState = _a[0], patches = _a[1], inversePatches = _a[2];
235
+ saveHistory({
236
+ citations: { patches: patches, inversePatches: inversePatches },
237
+ });
238
+ return nextState;
232
239
  });
233
- return nextState;
234
- });
240
+ }
235
241
  // Update banded cells
236
242
  onChangeSheets === null || onChangeSheets === void 0 ? void 0 : onChangeSheets(function (prevSheets) {
237
243
  var _a = __read(produceWithPatches(prevSheets, function (draft) {
@@ -1 +1 @@
1
- {"version":3,"file":"delete-column.d.ts","sourceRoot":"","sources":["../../../interface/delete-column.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAuBjE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAG5E,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,2iBAgC/D,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,MACrB,SAAS,MAAM,EAAE,eAAe,MAAM,EAAE,SAgdjD,CAAC"}
1
+ {"version":3,"file":"delete-column.d.ts","sourceRoot":"","sources":["../../../interface/delete-column.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAwBjE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAG5E,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,2iBAgC/D,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,MACrB,SAAS,MAAM,EAAE,eAAe,MAAM,EAAE,SAsdjD,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { __assign, __read, __spreadArray, __values } from "tslib";
2
2
  import { Direction } from "@rowsncolumns/common-types";
3
3
  import { produceWithPatches } from "immer";
4
- import { shiftChartsOnStructuralChange, shiftEmbedsOnStructuralChange, shiftSlicersOnStructuralChange, shiftProtectedRangesOnStructuralChange, } from "../api/anchored-objects";
4
+ import { shiftChartsOnStructuralChange, shiftEmbedsOnStructuralChange, shiftSlicersOnStructuralChange, shiftProtectedRangesOnStructuralChange, refreshCitationAnchor, } from "../api/anchored-objects";
5
5
  import { shrinkMergesOnColumnDelete } from "../api/merges";
6
6
  import { updateNamedRangesOnStructuralChange, updatePrintSettingsOnStructuralChange, } from "../api/named-range-structural";
7
7
  import { shiftPivotsOnDelete } from "../api/pivot-range";
@@ -163,6 +163,7 @@ export var deleteColumn = function (_a) {
163
163
  });
164
164
  // Citations
165
165
  onChangeCitations === null || onChangeCitations === void 0 ? void 0 : onChangeCitations(function (prevCitations) {
166
+ var updatedAt = new Date().toISOString();
166
167
  var _a = __read(produceWithPatches(prevCitations, function (draft) {
167
168
  var deleteEnd = minColumnIndex + count - 1;
168
169
  for (var idx = draft.length - 1; idx >= 0; idx--) {
@@ -172,11 +173,16 @@ export var deleteColumn = function (_a) {
172
173
  var citationStart = citation.range.startColumnIndex;
173
174
  var citationEnd = citation.range.endColumnIndex;
174
175
  if (citationStart <= deleteEnd && citationEnd >= minColumnIndex) {
175
- draft.splice(idx, 1);
176
+ // Soft-delete: keep the record for provenance / undo, hide it from the UI
177
+ if (citation.active !== false) {
178
+ citation.active = false;
179
+ citation.updated_at = updatedAt;
180
+ }
176
181
  }
177
182
  else if (citationStart > deleteEnd) {
178
183
  citation.range.startColumnIndex -= count;
179
184
  citation.range.endColumnIndex -= count;
185
+ refreshCitationAnchor(citation);
180
186
  }
181
187
  }
182
188
  }), 3), nextState = _a[0], patches = _a[1], inversePatches = _a[2];
@@ -1 +1 @@
1
- {"version":3,"file":"delete-row.d.ts","sourceRoot":"","sources":["../../../interface/delete-row.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAa,MAAM,2BAA2B,CAAC;AA0B5E,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAiCtE,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,2iBAgC5D,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,MAClB,SAAS,MAAM,EAAE,YAAY,MAAM,EAAE,SA4jB9C,CAAC"}
1
+ {"version":3,"file":"delete-row.d.ts","sourceRoot":"","sources":["../../../interface/delete-row.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAa,MAAM,2BAA2B,CAAC;AA2B5E,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAiCtE,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,KAAK,EAAE,2iBAgC5D,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,MAClB,SAAS,MAAM,EAAE,YAAY,MAAM,EAAE,SAkkB9C,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { __assign, __read, __spreadArray, __values } from "tslib";
2
2
  import { Direction } from "@rowsncolumns/common-types";
3
3
  import { produceWithPatches } from "immer";
4
- import { shiftChartsOnStructuralChange, shiftEmbedsOnStructuralChange, shiftSlicersOnStructuralChange, shiftProtectedRangesOnStructuralChange, } from "../api/anchored-objects";
4
+ import { shiftChartsOnStructuralChange, shiftEmbedsOnStructuralChange, shiftSlicersOnStructuralChange, shiftProtectedRangesOnStructuralChange, refreshCitationAnchor, } from "../api/anchored-objects";
5
5
  import { shrinkMergesOnRowDelete } from "../api/merges";
6
6
  import { updateNamedRangesOnStructuralChange, updatePrintSettingsOnStructuralChange, } from "../api/named-range-structural";
7
7
  import { shiftPivotsOnDelete } from "../api/pivot-range";
@@ -173,6 +173,7 @@ export var deleteRow = function (_a) {
173
173
  // Citations: drop if overlapping with deletion, shift up if entirely
174
174
  // after.
175
175
  onChangeCitations === null || onChangeCitations === void 0 ? void 0 : onChangeCitations(function (prevCitations) {
176
+ var updatedAt = new Date().toISOString();
176
177
  var _a = __read(produceWithPatches(prevCitations, function (draft) {
177
178
  var deleteEnd = minRowIndex + count - 1;
178
179
  for (var idx = draft.length - 1; idx >= 0; idx--) {
@@ -182,11 +183,16 @@ export var deleteRow = function (_a) {
182
183
  var citationStart = citation.range.startRowIndex;
183
184
  var citationEnd = citation.range.endRowIndex;
184
185
  if (citationStart <= deleteEnd && citationEnd >= minRowIndex) {
185
- draft.splice(idx, 1);
186
+ // Soft-delete: keep the record for provenance / undo, hide it from the UI
187
+ if (citation.active !== false) {
188
+ citation.active = false;
189
+ citation.updated_at = updatedAt;
190
+ }
186
191
  }
187
192
  else if (citationStart > deleteEnd) {
188
193
  citation.range.startRowIndex -= count;
189
194
  citation.range.endRowIndex -= count;
195
+ refreshCitationAnchor(citation);
190
196
  }
191
197
  }
192
198
  }), 3), nextState = _a[0], patches = _a[1], inversePatches = _a[2];
@@ -1,4 +1,4 @@
1
1
  import type { CellData, Sheet } from "@rowsncolumns/spreadsheet";
2
2
  import type { UseOnDeleteSheetProps } from "../hooks/use-on-delete-sheet";
3
- export declare const deleteSheet: <T extends CellData, S extends Sheet>({ sheets, onChangeSheetData, onChangeActiveSheet, onChangeSheets, onChangeCharts, onChangeEmbeds, onChangeSlicers, onChangeTables, onChangeConditionalFormats, onChangeDataValidations, onChangeNamedRanges, onChangeProtectedRanges, createHistory, enqueueGraphOperation, }: UseOnDeleteSheetProps<T, S>) => (sheetId: number) => void;
3
+ export declare const deleteSheet: <T extends CellData, S extends Sheet>({ sheets, onChangeSheetData, onChangeActiveSheet, onChangeSheets, onChangeCharts, onChangeEmbeds, onChangeSlicers, onChangeTables, onChangeConditionalFormats, onChangeDataValidations, onChangeNamedRanges, onChangeProtectedRanges, onChangeCitations, createHistory, enqueueGraphOperation, }: UseOnDeleteSheetProps<T, S>) => (sheetId: number) => void;
4
4
  //# sourceMappingURL=delete-sheet.d.ts.map