@rowsncolumns/spreadsheet 10.2.73 → 10.2.74

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 (130) hide show
  1. package/dist/cjs/api/evaluate-formula.d.ts +17 -0
  2. package/dist/cjs/api/evaluate-formula.d.ts.map +1 -0
  3. package/dist/cjs/api/evaluate-formula.js +141 -0
  4. package/dist/cjs/api/go-to.d.ts +19 -0
  5. package/dist/cjs/api/go-to.d.ts.map +1 -0
  6. package/dist/cjs/api/go-to.js +49 -0
  7. package/dist/cjs/atoms/evaluate-formula-dialog.atom.d.ts +36 -0
  8. package/dist/cjs/atoms/evaluate-formula-dialog.atom.d.ts.map +1 -0
  9. package/dist/cjs/atoms/evaluate-formula-dialog.atom.js +36 -0
  10. package/dist/cjs/atoms/go-to-dialog.atom.d.ts +36 -0
  11. package/dist/cjs/atoms/go-to-dialog.atom.d.ts.map +1 -0
  12. package/dist/cjs/atoms/go-to-dialog.atom.js +34 -0
  13. package/dist/cjs/atoms/index.d.ts +4 -0
  14. package/dist/cjs/atoms/index.d.ts.map +1 -1
  15. package/dist/cjs/atoms/index.js +4 -0
  16. package/dist/cjs/atoms/paste-special-dialog.atom.d.ts +29 -0
  17. package/dist/cjs/atoms/paste-special-dialog.atom.d.ts.map +1 -0
  18. package/dist/cjs/atoms/paste-special-dialog.atom.js +34 -0
  19. package/dist/cjs/atoms/remove-duplicates-dialog.atom.d.ts +45 -0
  20. package/dist/cjs/atoms/remove-duplicates-dialog.atom.d.ts.map +1 -0
  21. package/dist/cjs/atoms/remove-duplicates-dialog.atom.js +37 -0
  22. package/dist/cjs/components/canvas-grid/index.d.ts.map +1 -1
  23. package/dist/cjs/components/canvas-grid/index.js +109 -3
  24. package/dist/cjs/components/canvas-grid/typings.d.ts +54 -8
  25. package/dist/cjs/components/canvas-grid/typings.d.ts.map +1 -1
  26. package/dist/cjs/components/context-menu/index.d.ts +16 -3
  27. package/dist/cjs/components/context-menu/index.d.ts.map +1 -1
  28. package/dist/cjs/components/context-menu/index.js +112 -5
  29. package/dist/cjs/components/context-menu/total-row-functions.d.ts +32 -0
  30. package/dist/cjs/components/context-menu/total-row-functions.d.ts.map +1 -0
  31. package/dist/cjs/components/context-menu/total-row-functions.js +62 -0
  32. package/dist/cjs/components/evaluate-formula-dialog/index.d.ts +34 -0
  33. package/dist/cjs/components/evaluate-formula-dialog/index.d.ts.map +1 -0
  34. package/dist/cjs/components/evaluate-formula-dialog/index.js +106 -0
  35. package/dist/cjs/components/go-to-dialog/index.d.ts +35 -0
  36. package/dist/cjs/components/go-to-dialog/index.d.ts.map +1 -0
  37. package/dist/cjs/components/go-to-dialog/index.js +93 -0
  38. package/dist/cjs/components/paste-special-dialog/index.d.ts +29 -0
  39. package/dist/cjs/components/paste-special-dialog/index.d.ts.map +1 -0
  40. package/dist/cjs/components/paste-special-dialog/index.js +99 -0
  41. package/dist/cjs/components/remove-duplicates-dialog/index.d.ts +37 -0
  42. package/dist/cjs/components/remove-duplicates-dialog/index.d.ts.map +1 -0
  43. package/dist/cjs/components/remove-duplicates-dialog/index.js +91 -0
  44. package/dist/cjs/components/toolbar/index.d.ts +1 -0
  45. package/dist/cjs/components/toolbar/index.d.ts.map +1 -1
  46. package/dist/cjs/components/toolbar/index.js +1 -0
  47. package/dist/cjs/components/toolbar/text-rotation-selector.d.ts +29 -0
  48. package/dist/cjs/components/toolbar/text-rotation-selector.d.ts.map +1 -0
  49. package/dist/cjs/components/toolbar/text-rotation-selector.js +78 -0
  50. package/dist/cjs/components/toolbar/text-wrap-selector.d.ts +7 -1
  51. package/dist/cjs/components/toolbar/text-wrap-selector.d.ts.map +1 -1
  52. package/dist/cjs/components/toolbar/text-wrap-selector.js +10 -3
  53. package/dist/cjs/hooks/use-copy-paste-cut.d.ts +20 -1
  54. package/dist/cjs/hooks/use-copy-paste-cut.d.ts.map +1 -1
  55. package/dist/cjs/hooks/use-copy-paste-cut.js +25 -20
  56. package/dist/cjs/hooks/use-keyboard-handler.d.ts +17 -2
  57. package/dist/cjs/hooks/use-keyboard-handler.d.ts.map +1 -1
  58. package/dist/cjs/hooks/use-keyboard-handler.js +182 -19
  59. package/dist/cjs/index.d.ts +6 -1
  60. package/dist/cjs/index.d.ts.map +1 -1
  61. package/dist/cjs/index.js +7 -1
  62. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  63. package/dist/cjs/types.d.ts +173 -1
  64. package/dist/cjs/types.d.ts.map +1 -1
  65. package/dist/esm/api/evaluate-formula.d.ts +17 -0
  66. package/dist/esm/api/evaluate-formula.d.ts.map +1 -0
  67. package/dist/esm/api/evaluate-formula.js +109 -0
  68. package/dist/esm/api/go-to.d.ts +19 -0
  69. package/dist/esm/api/go-to.d.ts.map +1 -0
  70. package/dist/esm/api/go-to.js +41 -0
  71. package/dist/esm/atoms/evaluate-formula-dialog.atom.d.ts +36 -0
  72. package/dist/esm/atoms/evaluate-formula-dialog.atom.d.ts.map +1 -0
  73. package/dist/esm/atoms/evaluate-formula-dialog.atom.js +25 -0
  74. package/dist/esm/atoms/go-to-dialog.atom.d.ts +36 -0
  75. package/dist/esm/atoms/go-to-dialog.atom.d.ts.map +1 -0
  76. package/dist/esm/atoms/go-to-dialog.atom.js +25 -0
  77. package/dist/esm/atoms/index.d.ts +4 -0
  78. package/dist/esm/atoms/index.d.ts.map +1 -1
  79. package/dist/esm/atoms/index.js +4 -0
  80. package/dist/esm/atoms/paste-special-dialog.atom.d.ts +29 -0
  81. package/dist/esm/atoms/paste-special-dialog.atom.d.ts.map +1 -0
  82. package/dist/esm/atoms/paste-special-dialog.atom.js +25 -0
  83. package/dist/esm/atoms/remove-duplicates-dialog.atom.d.ts +45 -0
  84. package/dist/esm/atoms/remove-duplicates-dialog.atom.d.ts.map +1 -0
  85. package/dist/esm/atoms/remove-duplicates-dialog.atom.js +26 -0
  86. package/dist/esm/components/canvas-grid/index.d.ts.map +1 -1
  87. package/dist/esm/components/canvas-grid/index.js +107 -3
  88. package/dist/esm/components/canvas-grid/typings.d.ts +54 -8
  89. package/dist/esm/components/canvas-grid/typings.d.ts.map +1 -1
  90. package/dist/esm/components/context-menu/index.d.ts +16 -3
  91. package/dist/esm/components/context-menu/index.d.ts.map +1 -1
  92. package/dist/esm/components/context-menu/index.js +114 -7
  93. package/dist/esm/components/context-menu/total-row-functions.d.ts +32 -0
  94. package/dist/esm/components/context-menu/total-row-functions.d.ts.map +1 -0
  95. package/dist/esm/components/context-menu/total-row-functions.js +50 -0
  96. package/dist/esm/components/evaluate-formula-dialog/index.d.ts +34 -0
  97. package/dist/esm/components/evaluate-formula-dialog/index.d.ts.map +1 -0
  98. package/dist/esm/components/evaluate-formula-dialog/index.js +86 -0
  99. package/dist/esm/components/go-to-dialog/index.d.ts +35 -0
  100. package/dist/esm/components/go-to-dialog/index.d.ts.map +1 -0
  101. package/dist/esm/components/go-to-dialog/index.js +84 -0
  102. package/dist/esm/components/paste-special-dialog/index.d.ts +29 -0
  103. package/dist/esm/components/paste-special-dialog/index.d.ts.map +1 -0
  104. package/dist/esm/components/paste-special-dialog/index.js +90 -0
  105. package/dist/esm/components/remove-duplicates-dialog/index.d.ts +37 -0
  106. package/dist/esm/components/remove-duplicates-dialog/index.d.ts.map +1 -0
  107. package/dist/esm/components/remove-duplicates-dialog/index.js +82 -0
  108. package/dist/esm/components/toolbar/index.d.ts +1 -0
  109. package/dist/esm/components/toolbar/index.d.ts.map +1 -1
  110. package/dist/esm/components/toolbar/index.js +1 -0
  111. package/dist/esm/components/toolbar/text-rotation-selector.d.ts +29 -0
  112. package/dist/esm/components/toolbar/text-rotation-selector.d.ts.map +1 -0
  113. package/dist/esm/components/toolbar/text-rotation-selector.js +71 -0
  114. package/dist/esm/components/toolbar/text-wrap-selector.d.ts +7 -1
  115. package/dist/esm/components/toolbar/text-wrap-selector.d.ts.map +1 -1
  116. package/dist/esm/components/toolbar/text-wrap-selector.js +10 -3
  117. package/dist/esm/hooks/use-copy-paste-cut.d.ts +20 -1
  118. package/dist/esm/hooks/use-copy-paste-cut.d.ts.map +1 -1
  119. package/dist/esm/hooks/use-copy-paste-cut.js +8 -3
  120. package/dist/esm/hooks/use-keyboard-handler.d.ts +17 -2
  121. package/dist/esm/hooks/use-keyboard-handler.d.ts.map +1 -1
  122. package/dist/esm/hooks/use-keyboard-handler.js +169 -19
  123. package/dist/esm/index.d.ts +6 -1
  124. package/dist/esm/index.d.ts.map +1 -1
  125. package/dist/esm/index.js +5 -0
  126. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  127. package/dist/esm/types.d.ts +173 -1
  128. package/dist/esm/types.d.ts.map +1 -1
  129. package/dist/spreadsheet.min.css +1 -1
  130. package/package.json +5 -5
@@ -1,12 +1,16 @@
1
1
  import type { CellInterface, SelectionArea } from "@rowsncolumns/grid";
2
2
  import type React from "react";
3
3
  import type { CanvasGridProps, SelectionAttributes } from "../components/canvas-grid/typings";
4
- import type { CellFormat, SheetRange } from "../types";
4
+ import type { CellFormat, ExtendedValue, Maybe, SheetRange } from "../types";
5
5
  import type { useContextMenu } from "./use-context-menu";
6
6
  type FormattingKeyboardProps = {
7
7
  sheetId: number;
8
8
  locale?: string;
9
9
  showFormulas?: boolean;
10
+ /**
11
+ * Resolves the Excel-vs-Sheets shortcut conflicts; defaults to "sheets".
12
+ */
13
+ keymap?: CanvasGridProps["keymap"];
10
14
  defaultFontSizePoint: NonNullable<CanvasGridProps["defaultFontSizePoint"]>;
11
15
  canEditCell(sheetId: number, cell: CellInterface): boolean;
12
16
  onChangeFormatting: CanvasGridProps["onChangeFormatting"];
@@ -20,6 +24,9 @@ type FormattingKeyboardProps = {
20
24
  selections: SelectionArea<SelectionAttributes>[];
21
25
  selectedRows: Record<string, boolean>;
22
26
  selectedColumns: Record<string, boolean>;
27
+ /** Whole rows / columns selected through their headers */
28
+ selectedRowHeadersIds?: number[];
29
+ selectedColumnHeadersIds?: number[];
23
30
  onSelectNextSheet: CanvasGridProps["onSelectNextSheet"];
24
31
  onSelectPreviousSheet: CanvasGridProps["onSelectPreviousSheet"];
25
32
  onCreateNewSheet: CanvasGridProps["onCreateNewSheet"];
@@ -51,7 +58,15 @@ type FormattingKeyboardProps = {
51
58
  onShowContextMenu: ReturnType<typeof useContextMenu>["showContextMenu"];
52
59
  onAddQuickEdit(range: SheetRange): void;
53
60
  isSheetFocused(): boolean;
61
+ onCalculateNow?: CanvasGridProps["onCalculateNow"];
62
+ onRequestGoTo?: CanvasGridProps["onRequestGoTo"];
63
+ /** Ctrl+Alt+V — Paste Special dialog (Excel). */
64
+ onRequestPasteSpecial?: () => void;
65
+ /** Ctrl+' / Ctrl+Shift+" write the cell above into the active cell */
66
+ onChangeBatch?: CanvasGridProps["onChangeBatch"];
67
+ getUserEnteredValue?(sheetId: number, rowIndex: number, columnIndex: number): string | undefined | null;
68
+ getEffectiveValue?(sheetId: number, rowIndex: number, columnIndex: number): Maybe<ExtendedValue>;
54
69
  };
55
- export declare const useKeyboardHandler: ({ sheetId, locale, selectedRows, selectedColumns, showFormulas, defaultFontSizePoint, onShowFormulas, onChangeFormatting, onRepeatFormatting, onClearFormatting, onSelectNextSheet, onSelectPreviousSheet, onCreateNewSheet, onFillRange, disableFillRightShortcut, onInsertTime, onInsertDate, onInsertDateTime, onInsertNote, onInsertAutoSum, onRedo, onUndo, onRequestSearch, onRequestReplace, onRequestFormatCells, onRequestInsertComment, onRequestInsertLink, onCreateTable, onCreateBasicFilter, clearCopiedSelections, getCellFormat, onShowContextMenu, onHideColumn, onGroupColumns, onUngroupColumns, onHideRow, onGroupRows, onUngroupRows, onDeleteRow, onInsertRow, onAddQuickEdit, canEditCell, isSheetFocused, activeCell, selections, }: FormattingKeyboardProps) => (e: React.KeyboardEvent<HTMLDivElement>) => void;
70
+ export declare const useKeyboardHandler: ({ sheetId, locale, selectedRows, selectedColumns, selectedRowHeadersIds, selectedColumnHeadersIds, showFormulas, keymap, defaultFontSizePoint, onShowFormulas, onChangeFormatting, onRepeatFormatting, onClearFormatting, onSelectNextSheet, onSelectPreviousSheet, onCreateNewSheet, onFillRange, disableFillRightShortcut, onInsertTime, onInsertDate, onInsertDateTime, onInsertNote, onInsertAutoSum, onRedo, onUndo, onRequestSearch, onRequestReplace, onRequestFormatCells, onRequestInsertComment, onRequestInsertLink, onCreateTable, onCreateBasicFilter, clearCopiedSelections, getCellFormat, onShowContextMenu, onHideColumn, onShowColumn, onGroupColumns, onUngroupColumns, onHideRow, onShowRow, onGroupRows, onUngroupRows, onDeleteRow, onInsertRow, onAddQuickEdit, onCalculateNow, onRequestGoTo, onRequestPasteSpecial, onChangeBatch, getUserEnteredValue, getEffectiveValue, canEditCell, isSheetFocused, activeCell, selections, }: FormattingKeyboardProps) => (e: React.KeyboardEvent<HTMLDivElement>) => void;
56
71
  export {};
57
72
  //# sourceMappingURL=use-keyboard-handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-keyboard-handler.d.ts","sourceRoot":"","sources":["../../../hooks/use-keyboard-handler.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-keyboard-handler.d.ts","sourceRoot":"","sources":["../../../hooks/use-keyboard-handler.tsx"],"names":[],"mappings":"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"}
@@ -1,14 +1,48 @@
1
1
  import { Direction, selectionFromActiveCell } from "@rowsncolumns/grid";
2
- import { getHotkeyKey, getLongDateFormat } from "@rowsncolumns/utils";
2
+ import { getExtendedValueBool, getExtendedValueNumber, getExtendedValueString, getHotkeyKey, getLongDateFormat, } from "@rowsncolumns/utils";
3
3
  import { useCallback } from "react";
4
4
  import { useCallbackRef } from "./use-callback-ref";
5
- export const useKeyboardHandler = ({ sheetId, locale, selectedRows, selectedColumns, showFormulas, defaultFontSizePoint, onShowFormulas, onChangeFormatting, onRepeatFormatting, onClearFormatting, onSelectNextSheet, onSelectPreviousSheet, onCreateNewSheet, onFillRange, disableFillRightShortcut,
5
+ /**
6
+ * The computed value of a cell as the constant Excel's Ctrl+Shift+" writes
7
+ * into the cell below. Errors have no literal form, so they copy nothing.
8
+ */
9
+ const extendedValueToConstant = (value) => getExtendedValueBool(value) ??
10
+ getExtendedValueNumber(value) ??
11
+ getExtendedValueString(value);
12
+ /**
13
+ * The rows / columns a hide or unhide shortcut acts on.
14
+ *
15
+ * `useSelectedRowsColumns` routes whole-row / whole-column header
16
+ * selections into `selectedRowHeadersIds` / `selectedColumnHeadersIds`
17
+ * and only the cell-range (and active cell) rows / columns into
18
+ * `selectedRows` / `selectedColumns`, so both sources are unioned — the
19
+ * same indexes the context menu's Hide item uses. The `"all"` key means
20
+ * the other axis is fully selected (whole rows for a column shortcut):
21
+ * Excel would hide every column; the selection names no column, so the
22
+ * result is empty and callers skip the action rather than hiding just
23
+ * the active cell's column.
24
+ */
25
+ const hideableDimensionIndexes = (selected, headerIds = []) => {
26
+ if (selected["all"])
27
+ return [];
28
+ const indexes = new Set(headerIds);
29
+ for (const key of Object.keys(selected)) {
30
+ const index = Number(key);
31
+ if (!Number.isNaN(index)) {
32
+ indexes.add(index);
33
+ }
34
+ }
35
+ return [...indexes].sort((a, b) => a - b);
36
+ };
37
+ export const useKeyboardHandler = ({ sheetId, locale, selectedRows, selectedColumns, selectedRowHeadersIds, selectedColumnHeadersIds, showFormulas, keymap = "sheets", defaultFontSizePoint, onShowFormulas, onChangeFormatting, onRepeatFormatting, onClearFormatting, onSelectNextSheet, onSelectPreviousSheet, onCreateNewSheet, onFillRange, disableFillRightShortcut,
6
38
  // Inserts
7
- onInsertTime, onInsertDate, onInsertDateTime, onInsertNote, onInsertAutoSum, onRedo, onUndo, onRequestSearch, onRequestReplace, onRequestFormatCells, onRequestInsertComment, onRequestInsertLink, onCreateTable, onCreateBasicFilter, clearCopiedSelections, getCellFormat, onShowContextMenu, onHideColumn, onGroupColumns, onUngroupColumns,
39
+ onInsertTime, onInsertDate, onInsertDateTime, onInsertNote, onInsertAutoSum, onRedo, onUndo, onRequestSearch, onRequestReplace, onRequestFormatCells, onRequestInsertComment, onRequestInsertLink, onCreateTable, onCreateBasicFilter, clearCopiedSelections, getCellFormat, onShowContextMenu, onHideColumn, onShowColumn, onGroupColumns, onUngroupColumns,
8
40
  // Rows
9
- onHideRow, onGroupRows, onUngroupRows, onDeleteRow, onInsertRow,
41
+ onHideRow, onShowRow, onGroupRows, onUngroupRows, onDeleteRow, onInsertRow,
10
42
  // Quick edit
11
- onAddQuickEdit, canEditCell, isSheetFocused, activeCell, selections, }) => {
43
+ onAddQuickEdit,
44
+ // Excel keymap
45
+ onCalculateNow, onRequestGoTo, onRequestPasteSpecial, onChangeBatch, getUserEnteredValue, getEffectiveValue, canEditCell, isSheetFocused, activeCell, selections, }) => {
12
46
  return useCallbackRef(useCallback((e) => {
13
47
  const isCtrl = e.ctrlKey; // Ctrl
14
48
  const isMeta = e.metaKey || (!e.metaKey && e.ctrlKey); // Command
@@ -55,6 +89,12 @@ onAddQuickEdit, canEditCell, isSheetFocused, activeCell, selections, }) => {
55
89
  e.preventDefault();
56
90
  return;
57
91
  }
92
+ // Cmd/Ctrl + Alt + V — Paste Special dialog (Excel)
93
+ if (isAlt && code === "KeyV" && onRequestPasteSpecial) {
94
+ onRequestPasteSpecial();
95
+ e.preventDefault();
96
+ return;
97
+ }
58
98
  switch (key) {
59
99
  // Cmd/Ctrl + PageDown
60
100
  case "PageDown":
@@ -117,7 +157,33 @@ onAddQuickEdit, canEditCell, isSheetFocused, activeCell, selections, }) => {
117
157
  e.preventDefault();
118
158
  }
119
159
  return;
160
+ // Cmd/Ctrl + G — Go To (Excel). Claimed only when the host
161
+ // handles it so the browser's find-next keeps working otherwise.
162
+ case "g":
163
+ if (!isShift && onRequestGoTo) {
164
+ onRequestGoTo(sheetId, activeCell, selections);
165
+ e.preventDefault();
166
+ }
167
+ return;
168
+ }
169
+ }
170
+ // F5 — Go To (Excel). Claimed only when the host handles it so a
171
+ // plain reload still works otherwise.
172
+ if (key === "F5" && !isMeta && !isAlt && !isShift) {
173
+ if (onRequestGoTo) {
174
+ onRequestGoTo(sheetId, activeCell, selections);
175
+ e.preventDefault();
176
+ }
177
+ return;
178
+ }
179
+ // F9 / Shift+F9 — recalculate the workbook / the active sheet
180
+ // (Excel). Not an edit, so it works on protected cells too.
181
+ if (key === "F9" && !isMeta && !isAlt) {
182
+ if (onCalculateNow) {
183
+ onCalculateNow(sheetId, isShift ? "sheet" : "workbook");
184
+ e.preventDefault();
120
185
  }
186
+ return;
121
187
  }
122
188
  if (isAlt) {
123
189
  switch (key) {
@@ -213,6 +279,34 @@ onAddQuickEdit, canEditCell, isSheetFocused, activeCell, selections, }) => {
213
279
  onFillRange?.(sheetId, activeCell, selections, Direction.Down);
214
280
  e.preventDefault();
215
281
  break;
282
+ // Cmd/Ctrl + ' — copy the formula (entered text) of the cell
283
+ // above verbatim; Cmd/Ctrl + Shift + " — copy its computed value
284
+ // as a constant (Excel). Unlike Ctrl+D no references shift.
285
+ // Shifted Quote is `"` on US layouts and a dead/non-ASCII key
286
+ // elsewhere, so both spellings land here and Shift decides.
287
+ case "'":
288
+ case '"': {
289
+ if (isAlt) {
290
+ break;
291
+ }
292
+ e.preventDefault();
293
+ if (rowIndex <= 1) {
294
+ break;
295
+ }
296
+ const value = isShift
297
+ ? extendedValueToConstant(getEffectiveValue?.(sheetId, rowIndex - 1, columnIndex))
298
+ : getUserEnteredValue?.(sheetId, rowIndex - 1, columnIndex);
299
+ if (value === undefined || value === null || value === "") {
300
+ break;
301
+ }
302
+ onChangeBatch?.(sheetId, {
303
+ startRowIndex: rowIndex,
304
+ endRowIndex: rowIndex,
305
+ startColumnIndex: columnIndex,
306
+ endColumnIndex: columnIndex,
307
+ }, [[value]]);
308
+ break;
309
+ }
216
310
  // Cmd/Ctrl + ;
217
311
  case ";":
218
312
  e.preventDefault();
@@ -228,6 +322,12 @@ onAddQuickEdit, canEditCell, isSheetFocused, activeCell, selections, }) => {
228
322
  case "e":
229
323
  case "r":
230
324
  if (isShift) {
325
+ // Excel binds Ctrl+Shift+L to the AutoFilter toggle
326
+ if (key === "l" && keymap === "excel") {
327
+ onCreateBasicFilter?.(sheetId, activeCell, selections);
328
+ e.preventDefault();
329
+ break;
330
+ }
231
331
  const alignment = key === "l" ? "left" : key === "e" ? "center" : "right";
232
332
  onChangeFormatting?.(sheetId, activeCell, selections, "horizontalAlignment", alignment);
233
333
  e.preventDefault();
@@ -249,9 +349,11 @@ onAddQuickEdit, canEditCell, isSheetFocused, activeCell, selections, }) => {
249
349
  break;
250
350
  }
251
351
  break;
252
- // Cmd/Ctrl + Option/Alt + T (macOS reports Option+T as "†")
352
+ // Cmd/Ctrl + T (Excel) or Cmd/Ctrl + Option/Alt + T (Sheets;
353
+ // macOS reports Option+T as "†"). Ctrl+Shift+T stays the
354
+ // browser's reopen-tab.
253
355
  case "t":
254
- if (isAlt) {
356
+ if (isAlt || !isShift) {
255
357
  onCreateTable?.(sheetId, activeCell, selections, undefined, "TableStyleLight1");
256
358
  e.preventDefault();
257
359
  }
@@ -284,28 +386,58 @@ onAddQuickEdit, canEditCell, isSheetFocused, activeCell, selections, }) => {
284
386
  }
285
387
  // Digiits
286
388
  switch (code) {
287
- // Cmd/Ctrl + Option/Alt + 1
389
+ // Cmd/Ctrl + 1 (Excel) or Cmd/Ctrl + Option/Alt + 1 (Sheets).
390
+ // Ctrl+Shift+1 stays the number format below.
288
391
  case "Digit1":
289
- if (isAlt) {
392
+ if (isAlt || !isShift) {
290
393
  onRequestFormatCells?.(sheetId, activeCell, selections);
291
394
  e.preventDefault();
292
395
  }
293
396
  break;
294
- // Cmd/Ctrl + Option/Alt + 9
397
+ // Cmd/Ctrl + 5 — strikethrough (Excel). Ctrl+Shift+5 stays the
398
+ // percent format below.
399
+ case "Digit5":
400
+ if (!isAlt && !isShift) {
401
+ onChangeFormatting?.(sheetId, activeCell, selections, "textFormat", {
402
+ strikethrough: !getCellFormat?.(sheetId, rowIndex, columnIndex)?.textFormat?.strikethrough,
403
+ });
404
+ e.preventDefault();
405
+ }
406
+ break;
407
+ // Hide rows: Cmd/Ctrl + Option/Alt + 9 (Sheets) or Cmd/Ctrl + 9
408
+ // under the Excel keymap. Unhide rows: Cmd/Ctrl + Shift + 9 — Excel
409
+ // and Sheets agree, so it is on in both keymaps (Alt tolerated).
410
+ // A whole-column selection carries no row indexes; Excel would
411
+ // hide every row, we leave the sheet alone.
295
412
  case "Digit9":
296
- // TODO @vinay
297
- // Handle unhide rows onShift key press
298
- if (isAlt) {
299
- onHideRow?.(sheetId, Object.keys(selectedRows).map(Number));
413
+ if (isShift || isAlt || keymap === "excel") {
414
+ const rowIndexes = hideableDimensionIndexes(selectedRows, selectedRowHeadersIds);
415
+ if (rowIndexes.length > 0) {
416
+ if (isShift) {
417
+ onShowRow?.(sheetId, rowIndexes);
418
+ }
419
+ else {
420
+ onHideRow?.(sheetId, rowIndexes);
421
+ }
422
+ }
300
423
  e.preventDefault();
301
424
  }
302
425
  break;
303
- // Cmd/Ctrl + Option/Alt + 0
426
+ // Hide columns: Cmd/Ctrl + Option/Alt + 0 (Sheets) or Cmd/Ctrl + 0
427
+ // under the Excel keymap. Unhide columns: Cmd/Ctrl + Shift + 0 in
428
+ // both keymaps (Alt tolerated). Whole-row selection → no-op.
304
429
  case "Digit0":
305
- // TODO @vinay
306
- // Handle unhide column onShift key press
307
- if (isAlt) {
308
- onHideColumn?.(sheetId, Object.keys(selectedColumns).map(Number));
430
+ if (isShift || isAlt || keymap === "excel") {
431
+ const columnIndexes = hideableDimensionIndexes(selectedColumns, selectedColumnHeadersIds);
432
+ if (columnIndexes.length > 0) {
433
+ if (isShift) {
434
+ onShowColumn?.(sheetId, columnIndexes);
435
+ }
436
+ else {
437
+ onHideColumn?.(sheetId, columnIndexes);
438
+ }
439
+ }
440
+ e.preventDefault();
309
441
  }
310
442
  break;
311
443
  // Cmd/Ctrl + `
@@ -417,6 +549,13 @@ onAddQuickEdit, canEditCell, isSheetFocused, activeCell, selections, }) => {
417
549
  pattern: "0%",
418
550
  });
419
551
  break;
552
+ // Ctrl + Shift + 6 (Excel Ctrl+Shift+^: scientific)
553
+ case "Digit6":
554
+ onChangeFormatting?.(sheetId, activeCell, selections, "numberFormat", {
555
+ type: "SCIENTIFIC",
556
+ pattern: "0.00E+00",
557
+ });
558
+ break;
420
559
  }
421
560
  }
422
561
  }
@@ -455,6 +594,15 @@ onAddQuickEdit, canEditCell, isSheetFocused, activeCell, selections, }) => {
455
594
  onShowContextMenu,
456
595
  onHideColumn,
457
596
  onHideRow,
597
+ onShowColumn,
598
+ onShowRow,
599
+ onCalculateNow,
600
+ onRequestGoTo,
601
+ onRequestPasteSpecial,
602
+ onChangeBatch,
603
+ getUserEnteredValue,
604
+ getEffectiveValue,
605
+ keymap,
458
606
  onGroupRows,
459
607
  onUngroupRows,
460
608
  onGroupColumns,
@@ -467,6 +615,8 @@ onAddQuickEdit, canEditCell, isSheetFocused, activeCell, selections, }) => {
467
615
  sheetId,
468
616
  selectedColumns,
469
617
  selectedRows,
618
+ selectedColumnHeadersIds,
619
+ selectedRowHeadersIds,
470
620
  showFormulas,
471
621
  canEditCell,
472
622
  disableFillRightShortcut,
@@ -8,6 +8,11 @@ export * from "./components/sheet-status";
8
8
  export * from "./components/cell-tooltip";
9
9
  export * from "./components/insert-function-dialog";
10
10
  export * from "./components/sort-range-dialog";
11
+ export * from "./components/paste-special-dialog";
12
+ export * from "./components/go-to-dialog";
13
+ export * from "./components/evaluate-formula-dialog";
14
+ export { resolveGoToReference, type GoToResolverContext } from "./api/go-to";
15
+ export * from "./components/remove-duplicates-dialog";
11
16
  export * from "./components/validation-alert-dialog";
12
17
  export * from "./components/cell-input";
13
18
  export * from "./components/formula-bar";
@@ -51,7 +56,7 @@ export { type ContextMenuWrapperProps } from "./hooks/use-context-menu";
51
56
  export * from "./api/scheduler";
52
57
  export * from "./themes";
53
58
  export * from "./signals/scroll-subscriber";
54
- export type { PasteSpecialType } from "./hooks/use-copy-paste-cut";
59
+ export type { PasteSpecialOperation, PasteSpecialOptions, PasteSpecialRequest, PasteSpecialType, } from "./hooks/use-copy-paste-cut";
55
60
  export * from "./hooks/use-formula-range-helpers";
56
61
  export * from "./components/cell-structured";
57
62
  export * from "./components/cell-structured/types";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.tsx"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AAEjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8CAA8C,CAAC;AAC7D,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qCAAqC,CAAC;AACpD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sCAAsC,CAAC;AACrD,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,cAAc,qCAAqC,CAAC;AACpD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oCAAoC,CAAC;AAEnD,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,cAAc,SAAS,CAAC;AACxB,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACxE,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,6BAA6B,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,cAAc,mCAAmC,CAAC;AAGlD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AAGnD,cAAc,8BAA8B,CAAC;AAG7C,cAAc,mCAAmC,CAAC;AAGlD,cAAc,mCAAmC,CAAC;AAGlD,cAAc,mCAAmC,CAAC;AAGlD,cAAc,0CAA0C,CAAC;AAGzD,cAAc,6BAA6B,CAAC;AAG5C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AAGrD,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.tsx"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AAEjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8CAA8C,CAAC;AAC7D,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qCAAqC,CAAC;AACpD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sCAAsC,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC7E,cAAc,uCAAuC,CAAC;AACtD,cAAc,sCAAsC,CAAC;AACrD,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,cAAc,qCAAqC,CAAC;AACpD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oCAAoC,CAAC;AAEnD,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,cAAc,SAAS,CAAC;AACxB,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACxE,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,6BAA6B,CAAC;AAC5C,YAAY,EACV,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,4BAA4B,CAAC;AACpC,cAAc,mCAAmC,CAAC;AAGlD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AAGnD,cAAc,8BAA8B,CAAC;AAG7C,cAAc,mCAAmC,CAAC;AAGlD,cAAc,mCAAmC,CAAC;AAGlD,cAAc,mCAAmC,CAAC;AAGlD,cAAc,0CAA0C,CAAC;AAGzD,cAAc,6BAA6B,CAAC;AAG5C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AAGrD,cAAc,sBAAsB,CAAC"}
package/dist/esm/index.js CHANGED
@@ -8,6 +8,11 @@ export * from "./components/sheet-status";
8
8
  export * from "./components/cell-tooltip";
9
9
  export * from "./components/insert-function-dialog";
10
10
  export * from "./components/sort-range-dialog";
11
+ export * from "./components/paste-special-dialog";
12
+ export * from "./components/go-to-dialog";
13
+ export * from "./components/evaluate-formula-dialog";
14
+ export { resolveGoToReference } from "./api/go-to";
15
+ export * from "./components/remove-duplicates-dialog";
11
16
  export * from "./components/validation-alert-dialog";
12
17
  export * from "./components/cell-input";
13
18
  export * from "./components/formula-bar";
@@ -1 +1 @@
1
- {"root":["../../config.ts","../../helpers.ts","../../index.tsx","../../release-date.ts","../../test-setup.ts","../../themes.ts","../../types.ts","../../vitest.config.ts","../../api/animate.ts","../../api/banded-ranges.ts","../../api/cf-engine.ts","../../api/cf-overlays.ts","../../api/cf-window.ts","../../api/colors.ts","../../api/copy-paste.ts","../../api/fill-patterns.ts","../../api/font-loader.ts","../../api/heatmap.ts","../../api/scheduler.ts","../../api/scroller.ts","../../api/selections.ts","../../api/spreadsheet-api.ts","../../api/table.ts","../../api/validation.ts","../../atoms/active-editor.atom.ts","../../atoms/cell-input-context.atom.ts","../../atoms/editing-cell.atom.ts","../../atoms/formula-bar-editor-value.atom.ts","../../atoms/formula-mode.atom.ts","../../atoms/formula-selection-state.atom.ts","../../atoms/formula-selections.atom.ts","../../atoms/index.ts","../../atoms/loading-indicator.atom.ts","../../atoms/magic-fill-state.atom.ts","../../atoms/paste-menu.atom.ts","../../atoms/persistent-tooltip.atom.ts","../../atoms/popover.atom.ts","../../atoms/range-selector.atom.ts","../../atoms/selected-chart-embed.atom.ts","../../atoms/sheet-context.atom.ts","../../atoms/sheet-status-display.atom.ts","../../atoms/show-formula-help.atom.ts","../../atoms/sort-dialog.atom.ts","../../atoms/spreadsheet-api.atom.ts","../../atoms/validation-alert.atom.ts","../../components/bottom-bar/index.tsx","../../components/canvas-grid/helpers.ts","../../components/canvas-grid/index.tsx","../../components/canvas-grid/typings.ts","../../components/cell/alignment.ts","../../components/cell/cell-background.tsx","../../components/cell/cell-text-runs.tsx","../../components/cell/helpers.ts","../../components/cell/index.tsx","../../components/cell/rich-text.ts","../../components/cell/typings.ts","../../components/cell-arrow/index.tsx","../../components/cell-calculated/index.tsx","../../components/cell-checkbox/index.tsx","../../components/cell-diff/index.tsx","../../components/cell-editor/calendar-popup.tsx","../../components/cell-editor/formula-result-preview.tsx","../../components/cell-editor/helpers.spec.ts","../../components/cell-editor/helpers.ts","../../components/cell-editor/index.tsx","../../components/cell-editor/style.tsx","../../components/cell-error/index.tsx","../../components/cell-expand/index.tsx","../../components/cell-filter/index.tsx","../../components/cell-group/index.tsx","../../components/cell-input/cell-input.tsx","../../components/cell-input/formula-bar-cell-input.tsx","../../components/cell-input/index.tsx","../../components/cell-input/style.tsx","../../components/cell-overlay/index.tsx","../../components/cell-structured/index.tsx","../../components/cell-structured/sparkline-math.ts","../../components/cell-structured/sparkline.tsx","../../components/cell-structured/types.ts","../../components/cell-tooltip/index.tsx","../../components/cell-tooltip/note-editor.tsx","../../components/cell-tooltip/style.tsx","../../components/context-menu/index.tsx","../../components/context-menu/menu.tsx","../../components/context-menu/style.tsx","../../components/embeds/chart-component.tsx","../../components/embeds/embed-component.tsx","../../components/embeds/embed-draggable.tsx","../../components/embeds/index.tsx","../../components/embeds/shape-geometry.ts","../../components/embeds/shape-svg.tsx","../../components/embeds/slicer-component.tsx","../../components/fill-handle/index.tsx","../../components/filter-box/filter-by-color.tsx","../../components/filter-box/filter-by-condition.tsx","../../components/filter-box/filter-by-value.tsx","../../components/filter-box/index.tsx","../../components/floating-cell-editor/index.tsx","../../components/formula-bar/index.tsx","../../components/formula-bar/style.tsx","../../components/formula-input/index.tsx","../../components/grid-footer/index.tsx","../../components/header-cell/index.tsx","../../components/header-menu/index.tsx","../../components/header-move/index.tsx","../../components/header-resizer/index.tsx","../../components/hidden-markers/index.tsx","../../components/hidden-markers/style.tsx","../../components/insert-function-dialog/index.tsx","../../components/loading-indicator/index.tsx","../../components/outline-gutter/index.tsx","../../components/pivot-placeholder/index.tsx","../../components/print-preview/cell-styles.ts","../../components/print-preview/index.ts","../../components/print-preview/page-block.tsx","../../components/print-preview/print-preview-dialog.tsx","../../components/print-preview/run-print.ts","../../components/print-preview/settings.ts","../../components/print-preview/use-page-layout.ts","../../components/range-selector/index.tsx","../../components/resizer/index.tsx","../../components/selection/avatar.tsx","../../components/selection/index.tsx","../../components/selection/magic-fill.tsx","../../components/selection/paste-menu.tsx","../../components/selection/quick-edit.tsx","../../components/selection/style.tsx","../../components/selection/suggestion-action.tsx","../../components/selection/title.tsx","../../components/selection/types.ts","../../components/selection-input/index.tsx","../../components/selection-input/style.tsx","../../components/sheet-search/index.tsx","../../components/sheet-status/index.tsx","../../components/sheet-status/style.tsx","../../components/sheet-switcher/index.tsx","../../components/sheet-switcher/new-sheet-button.tsx","../../components/sheet-tabs/context-menu.tsx","../../components/sheet-tabs/index.tsx","../../components/sheet-tabs/sheet-tab.tsx","../../components/sheet-tabs/style.tsx","../../components/sheet-tabs/types.ts","../../components/sort-range-dialog/index.tsx","../../components/toolbar/background-color-selector.tsx","../../components/toolbar/border-color-selector.tsx","../../components/toolbar/border-line-style-options.tsx","../../components/toolbar/border-line-style-selector.tsx","../../components/toolbar/border-location-options.tsx","../../components/toolbar/border-selector.tsx","../../components/toolbar/buttons.tsx","../../components/toolbar/cell-style-selector.tsx","../../components/toolbar/color-selector.tsx","../../components/toolbar/font-family-selector.tsx","../../components/toolbar/font-size-selector.tsx","../../components/toolbar/index.tsx","../../components/toolbar/insert-menu.tsx","../../components/toolbar/merge-cells-selector.tsx","../../components/toolbar/scale-selector.tsx","../../components/toolbar/style.tsx","../../components/toolbar/table-actions.tsx","../../components/toolbar/table-style-selector.tsx","../../components/toolbar/text-color-selector.tsx","../../components/toolbar/text-format-selector.tsx","../../components/toolbar/text-horizontal-align-selector.tsx","../../components/toolbar/text-vertical-align-selector.tsx","../../components/toolbar/text-wrap-selector.tsx","../../components/toolbar/theme-selector.tsx","../../components/toolbar/toolbar.tsx","../../components/toolbar/types.ts","../../components/toolbar/view-menu.tsx","../../components/validation-alert-dialog/index.tsx","../../helpers/merged-cell-borders.ts","../../hooks/index.ts","../../hooks/show-zeros.ts","../../hooks/use-async.ts","../../hooks/use-border-styles.ts","../../hooks/use-callback-ref.ts","../../hooks/use-cell-diff-highlight.ts","../../hooks/use-cell-popover.tsx","../../hooks/use-cell-renderer.tsx","../../hooks/use-column-color-icons.ts","../../hooks/use-conditional-formatting.ts","../../hooks/use-context-menu.tsx","../../hooks/use-context-setter.ts","../../hooks/use-copy-paste-cut.tsx","../../hooks/use-create-address-from-selection.ts","../../hooks/use-create-formula-tokenizer.ts","../../hooks/use-delayed-value.ts","../../hooks/use-editable.tsx","../../hooks/use-editor-cancel.ts","../../hooks/use-editor-change.ts","../../hooks/use-editor-keydown.ts","../../hooks/use-editor-submit.ts","../../hooks/use-embeds-charts.tsx","../../hooks/use-expand-cell.tsx","../../hooks/use-export-range.ts","../../hooks/use-filter.ts","../../hooks/use-flash.ts","../../hooks/use-fonts.ts","../../hooks/use-formula-range-helpers.ts","../../hooks/use-get-tooltip.tsx","../../hooks/use-get-values-from-range.ts","../../hooks/use-grid-children.tsx","../../hooks/use-header-actions.tsx","../../hooks/use-hidden-dimension-markers.tsx","../../hooks/use-hidden-dimensions.ts","../../hooks/use-hovered-selection-ids.ts","../../hooks/use-isomorphic-layout-effect.ts","../../hooks/use-keyboard-handler.tsx","../../hooks/use-licensekey-validator.tsx","../../hooks/use-memo-compare.ts","../../hooks/use-merge.refs.ts","../../hooks/use-move-columns-rows.tsx","../../hooks/use-navigate-sheet-range.ts","../../hooks/use-previous.ts","../../hooks/use-raf.ts","../../hooks/use-resize-observer.ts","../../hooks/use-scale-listener.ts","../../hooks/use-selected-rows-columns.ts","../../hooks/use-selection-aware-formatting.ts","../../hooks/use-selection-change.ts","../../hooks/use-selection-interceptors.ts","../../hooks/use-selection-move.ts","../../hooks/use-selection-renderer.tsx","../../hooks/use-selection-resize.ts","../../hooks/use-selection.ts","../../hooks/use-sheet-change-handler.ts","../../hooks/use-sizer.ts","../../hooks/use-spreadsheet-theme.ts","../../hooks/use-stable-ref.ts","../../hooks/use-structured-reference-selection.ts","../../hooks/use-table-resizer.tsx","../../hooks/use-text-dimensions.ts","../../hooks/use-tooltip.ts","../../hooks/use-touch.ts","../../providers/spreadsheet-provider.tsx","../../signals/scroll-subscriber.ts","../../utils/maybe.ts"],"version":"5.8.3"}
1
+ {"root":["../../config.ts","../../helpers.ts","../../index.tsx","../../release-date.ts","../../test-setup.ts","../../themes.ts","../../types.ts","../../vitest.config.ts","../../api/animate.ts","../../api/banded-ranges.ts","../../api/cf-engine.ts","../../api/cf-overlays.ts","../../api/cf-window.ts","../../api/colors.ts","../../api/copy-paste.ts","../../api/evaluate-formula.ts","../../api/fill-patterns.ts","../../api/font-loader.ts","../../api/go-to.ts","../../api/heatmap.ts","../../api/scheduler.ts","../../api/scroller.ts","../../api/selections.ts","../../api/spreadsheet-api.ts","../../api/table.ts","../../api/validation.ts","../../atoms/active-editor.atom.ts","../../atoms/cell-input-context.atom.ts","../../atoms/editing-cell.atom.ts","../../atoms/evaluate-formula-dialog.atom.ts","../../atoms/formula-bar-editor-value.atom.ts","../../atoms/formula-mode.atom.ts","../../atoms/formula-selection-state.atom.ts","../../atoms/formula-selections.atom.ts","../../atoms/go-to-dialog.atom.ts","../../atoms/index.ts","../../atoms/loading-indicator.atom.ts","../../atoms/magic-fill-state.atom.ts","../../atoms/paste-menu.atom.ts","../../atoms/paste-special-dialog.atom.ts","../../atoms/persistent-tooltip.atom.ts","../../atoms/popover.atom.ts","../../atoms/range-selector.atom.ts","../../atoms/remove-duplicates-dialog.atom.ts","../../atoms/selected-chart-embed.atom.ts","../../atoms/sheet-context.atom.ts","../../atoms/sheet-status-display.atom.ts","../../atoms/show-formula-help.atom.ts","../../atoms/sort-dialog.atom.ts","../../atoms/spreadsheet-api.atom.ts","../../atoms/validation-alert.atom.ts","../../components/bottom-bar/index.tsx","../../components/canvas-grid/helpers.ts","../../components/canvas-grid/index.tsx","../../components/canvas-grid/typings.ts","../../components/cell/alignment.ts","../../components/cell/cell-background.tsx","../../components/cell/cell-text-runs.tsx","../../components/cell/helpers.ts","../../components/cell/index.tsx","../../components/cell/rich-text.ts","../../components/cell/typings.ts","../../components/cell-arrow/index.tsx","../../components/cell-calculated/index.tsx","../../components/cell-checkbox/index.tsx","../../components/cell-diff/index.tsx","../../components/cell-editor/calendar-popup.tsx","../../components/cell-editor/formula-result-preview.tsx","../../components/cell-editor/helpers.spec.ts","../../components/cell-editor/helpers.ts","../../components/cell-editor/index.tsx","../../components/cell-editor/style.tsx","../../components/cell-error/index.tsx","../../components/cell-expand/index.tsx","../../components/cell-filter/index.tsx","../../components/cell-group/index.tsx","../../components/cell-input/cell-input.tsx","../../components/cell-input/formula-bar-cell-input.tsx","../../components/cell-input/index.tsx","../../components/cell-input/style.tsx","../../components/cell-overlay/index.tsx","../../components/cell-structured/index.tsx","../../components/cell-structured/sparkline-math.ts","../../components/cell-structured/sparkline.tsx","../../components/cell-structured/types.ts","../../components/cell-tooltip/index.tsx","../../components/cell-tooltip/note-editor.tsx","../../components/cell-tooltip/style.tsx","../../components/context-menu/index.tsx","../../components/context-menu/menu.tsx","../../components/context-menu/style.tsx","../../components/context-menu/total-row-functions.ts","../../components/embeds/chart-component.tsx","../../components/embeds/embed-component.tsx","../../components/embeds/embed-draggable.tsx","../../components/embeds/index.tsx","../../components/embeds/shape-geometry.ts","../../components/embeds/shape-svg.tsx","../../components/embeds/slicer-component.tsx","../../components/evaluate-formula-dialog/index.tsx","../../components/fill-handle/index.tsx","../../components/filter-box/filter-by-color.tsx","../../components/filter-box/filter-by-condition.tsx","../../components/filter-box/filter-by-value.tsx","../../components/filter-box/index.tsx","../../components/floating-cell-editor/index.tsx","../../components/formula-bar/index.tsx","../../components/formula-bar/style.tsx","../../components/formula-input/index.tsx","../../components/go-to-dialog/index.tsx","../../components/grid-footer/index.tsx","../../components/header-cell/index.tsx","../../components/header-menu/index.tsx","../../components/header-move/index.tsx","../../components/header-resizer/index.tsx","../../components/hidden-markers/index.tsx","../../components/hidden-markers/style.tsx","../../components/insert-function-dialog/index.tsx","../../components/loading-indicator/index.tsx","../../components/outline-gutter/index.tsx","../../components/paste-special-dialog/index.tsx","../../components/pivot-placeholder/index.tsx","../../components/print-preview/cell-styles.ts","../../components/print-preview/index.ts","../../components/print-preview/page-block.tsx","../../components/print-preview/print-preview-dialog.tsx","../../components/print-preview/run-print.ts","../../components/print-preview/settings.ts","../../components/print-preview/use-page-layout.ts","../../components/range-selector/index.tsx","../../components/remove-duplicates-dialog/index.tsx","../../components/resizer/index.tsx","../../components/selection/avatar.tsx","../../components/selection/index.tsx","../../components/selection/magic-fill.tsx","../../components/selection/paste-menu.tsx","../../components/selection/quick-edit.tsx","../../components/selection/style.tsx","../../components/selection/suggestion-action.tsx","../../components/selection/title.tsx","../../components/selection/types.ts","../../components/selection-input/index.tsx","../../components/selection-input/style.tsx","../../components/sheet-search/index.tsx","../../components/sheet-status/index.tsx","../../components/sheet-status/style.tsx","../../components/sheet-switcher/index.tsx","../../components/sheet-switcher/new-sheet-button.tsx","../../components/sheet-tabs/context-menu.tsx","../../components/sheet-tabs/index.tsx","../../components/sheet-tabs/sheet-tab.tsx","../../components/sheet-tabs/style.tsx","../../components/sheet-tabs/types.ts","../../components/sort-range-dialog/index.tsx","../../components/toolbar/background-color-selector.tsx","../../components/toolbar/border-color-selector.tsx","../../components/toolbar/border-line-style-options.tsx","../../components/toolbar/border-line-style-selector.tsx","../../components/toolbar/border-location-options.tsx","../../components/toolbar/border-selector.tsx","../../components/toolbar/buttons.tsx","../../components/toolbar/cell-style-selector.tsx","../../components/toolbar/color-selector.tsx","../../components/toolbar/font-family-selector.tsx","../../components/toolbar/font-size-selector.tsx","../../components/toolbar/index.tsx","../../components/toolbar/insert-menu.tsx","../../components/toolbar/merge-cells-selector.tsx","../../components/toolbar/scale-selector.tsx","../../components/toolbar/style.tsx","../../components/toolbar/table-actions.tsx","../../components/toolbar/table-style-selector.tsx","../../components/toolbar/text-color-selector.tsx","../../components/toolbar/text-format-selector.tsx","../../components/toolbar/text-horizontal-align-selector.tsx","../../components/toolbar/text-rotation-selector.tsx","../../components/toolbar/text-vertical-align-selector.tsx","../../components/toolbar/text-wrap-selector.tsx","../../components/toolbar/theme-selector.tsx","../../components/toolbar/toolbar.tsx","../../components/toolbar/types.ts","../../components/toolbar/view-menu.tsx","../../components/validation-alert-dialog/index.tsx","../../helpers/merged-cell-borders.ts","../../hooks/index.ts","../../hooks/show-zeros.ts","../../hooks/use-async.ts","../../hooks/use-border-styles.ts","../../hooks/use-callback-ref.ts","../../hooks/use-cell-diff-highlight.ts","../../hooks/use-cell-popover.tsx","../../hooks/use-cell-renderer.tsx","../../hooks/use-column-color-icons.ts","../../hooks/use-conditional-formatting.ts","../../hooks/use-context-menu.tsx","../../hooks/use-context-setter.ts","../../hooks/use-copy-paste-cut.tsx","../../hooks/use-create-address-from-selection.ts","../../hooks/use-create-formula-tokenizer.ts","../../hooks/use-delayed-value.ts","../../hooks/use-editable.tsx","../../hooks/use-editor-cancel.ts","../../hooks/use-editor-change.ts","../../hooks/use-editor-keydown.ts","../../hooks/use-editor-submit.ts","../../hooks/use-embeds-charts.tsx","../../hooks/use-expand-cell.tsx","../../hooks/use-export-range.ts","../../hooks/use-filter.ts","../../hooks/use-flash.ts","../../hooks/use-fonts.ts","../../hooks/use-formula-range-helpers.ts","../../hooks/use-get-tooltip.tsx","../../hooks/use-get-values-from-range.ts","../../hooks/use-grid-children.tsx","../../hooks/use-header-actions.tsx","../../hooks/use-hidden-dimension-markers.tsx","../../hooks/use-hidden-dimensions.ts","../../hooks/use-hovered-selection-ids.ts","../../hooks/use-isomorphic-layout-effect.ts","../../hooks/use-keyboard-handler.tsx","../../hooks/use-licensekey-validator.tsx","../../hooks/use-memo-compare.ts","../../hooks/use-merge.refs.ts","../../hooks/use-move-columns-rows.tsx","../../hooks/use-navigate-sheet-range.ts","../../hooks/use-previous.ts","../../hooks/use-raf.ts","../../hooks/use-resize-observer.ts","../../hooks/use-scale-listener.ts","../../hooks/use-selected-rows-columns.ts","../../hooks/use-selection-aware-formatting.ts","../../hooks/use-selection-change.ts","../../hooks/use-selection-interceptors.ts","../../hooks/use-selection-move.ts","../../hooks/use-selection-renderer.tsx","../../hooks/use-selection-resize.ts","../../hooks/use-selection.ts","../../hooks/use-sheet-change-handler.ts","../../hooks/use-sizer.ts","../../hooks/use-spreadsheet-theme.ts","../../hooks/use-stable-ref.ts","../../hooks/use-structured-reference-selection.ts","../../hooks/use-table-resizer.tsx","../../hooks/use-text-dimensions.ts","../../hooks/use-tooltip.ts","../../hooks/use-touch.ts","../../providers/spreadsheet-provider.tsx","../../signals/scroll-subscriber.ts","../../utils/maybe.ts"],"version":"5.8.3"}