@odoo/o-spreadsheet 17.1.27 → 17.1.28

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.
@@ -2,9 +2,9 @@
2
2
  /**
3
3
  * This file is generated by o-spreadsheet build tools. Do not edit it.
4
4
  * @see https://github.com/odoo/o-spreadsheet
5
- * @version 17.1.27
6
- * @date 2024-08-09T12:20:52.051Z
7
- * @hash c626332
5
+ * @version 17.1.28
6
+ * @date 2024-08-19T08:08:59.669Z
7
+ * @hash 9674f1b
8
8
  */
9
9
 
10
10
  'use strict';
@@ -1895,6 +1895,7 @@ const coreTypes = new Set([
1895
1895
  "UPDATE_CELL",
1896
1896
  "UPDATE_CELL_POSITION",
1897
1897
  "CLEAR_CELL",
1898
+ "CLEAR_CELLS",
1898
1899
  "DELETE_CONTENT",
1899
1900
  /** GRID SHAPE */
1900
1901
  "ADD_COLUMNS_ROWS",
@@ -35672,7 +35673,7 @@ function parse(str) {
35672
35673
  }
35673
35674
  function parseTokens(tokens) {
35674
35675
  tokens = tokens.filter((x) => x.type !== "SPACE");
35675
- if (tokens[0].value === "=") {
35676
+ if (tokens[0]?.value === "=") {
35676
35677
  tokens.splice(0, 1);
35677
35678
  }
35678
35679
  const result = parseExpression(tokens);
@@ -36239,6 +36240,9 @@ class CellPlugin extends CorePlugin {
36239
36240
  format: "",
36240
36241
  });
36241
36242
  break;
36243
+ case "CLEAR_CELLS":
36244
+ this.clearCells(cmd.sheetId, cmd.target);
36245
+ break;
36242
36246
  }
36243
36247
  }
36244
36248
  /**
@@ -36277,6 +36281,25 @@ class CellPlugin extends CorePlugin {
36277
36281
  }
36278
36282
  }
36279
36283
  }
36284
+ /**
36285
+ * Clear the styles, the format and the content of zones
36286
+ */
36287
+ clearCells(sheetId, zones) {
36288
+ for (const zone of zones) {
36289
+ for (let col = zone.left; col <= zone.right; col++) {
36290
+ for (let row = zone.top; row <= zone.bottom; row++) {
36291
+ this.dispatch("UPDATE_CELL", {
36292
+ sheetId: sheetId,
36293
+ col,
36294
+ row,
36295
+ content: "",
36296
+ style: null,
36297
+ format: "",
36298
+ });
36299
+ }
36300
+ }
36301
+ }
36302
+ }
36280
36303
  /**
36281
36304
  * Copy the style of the reference column/row to the new columns/rows.
36282
36305
  */
@@ -40012,19 +40035,23 @@ class SheetPlugin extends CorePlugin {
40012
40035
  }
40013
40036
  }
40014
40037
  moveCellOnColumnsDeletion(sheet, deletedColumn) {
40038
+ this.dispatch("CLEAR_CELLS", {
40039
+ sheetId: sheet.id,
40040
+ target: [
40041
+ {
40042
+ left: deletedColumn,
40043
+ top: 0,
40044
+ right: deletedColumn,
40045
+ bottom: sheet.rows.length - 1,
40046
+ },
40047
+ ],
40048
+ });
40015
40049
  for (let rowIndex = 0; rowIndex < sheet.rows.length; rowIndex++) {
40016
40050
  const row = sheet.rows[rowIndex];
40017
40051
  for (let i in row.cells) {
40018
40052
  const colIndex = Number(i);
40019
40053
  const cellId = row.cells[i];
40020
40054
  if (cellId) {
40021
- if (colIndex === deletedColumn) {
40022
- this.dispatch("CLEAR_CELL", {
40023
- sheetId: sheet.id,
40024
- col: colIndex,
40025
- row: rowIndex,
40026
- });
40027
- }
40028
40055
  if (colIndex > deletedColumn) {
40029
40056
  this.setNewPosition(cellId, sheet.id, colIndex - 1, rowIndex);
40030
40057
  }
@@ -40070,22 +40097,20 @@ class SheetPlugin extends CorePlugin {
40070
40097
  *
40071
40098
  */
40072
40099
  moveCellOnRowsDeletion(sheet, deleteFromRow, deleteToRow) {
40100
+ this.dispatch("CLEAR_CELLS", {
40101
+ sheetId: sheet.id,
40102
+ target: [
40103
+ {
40104
+ left: 0,
40105
+ top: deleteFromRow,
40106
+ right: this.getters.getNumberCols(sheet.id),
40107
+ bottom: deleteToRow,
40108
+ },
40109
+ ],
40110
+ });
40073
40111
  const numberRows = deleteToRow - deleteFromRow + 1;
40074
40112
  for (let rowIndex = 0; rowIndex < sheet.rows.length; rowIndex++) {
40075
40113
  const row = sheet.rows[rowIndex];
40076
- if (rowIndex >= deleteFromRow && rowIndex <= deleteToRow) {
40077
- for (let i in row.cells) {
40078
- const colIndex = Number(i);
40079
- const cellId = row.cells[i];
40080
- if (cellId) {
40081
- this.dispatch("CLEAR_CELL", {
40082
- sheetId: sheet.id,
40083
- col: colIndex,
40084
- row: rowIndex,
40085
- });
40086
- }
40087
- }
40088
- }
40089
40114
  if (rowIndex > deleteToRow) {
40090
40115
  for (let i in row.cells) {
40091
40116
  const colIndex = Number(i);
@@ -44914,7 +44939,7 @@ class Session extends EventBus {
44914
44939
  */
44915
44940
  leave(data) {
44916
44941
  if (Object.keys(this.clients).length === 1 && this.processedRevisions.size) {
44917
- this.snapshot(data);
44942
+ this.snapshot(data());
44918
44943
  }
44919
44944
  delete this.clients[this.clientId];
44920
44945
  this.transportService.leave(this.clientId);
@@ -45587,13 +45612,10 @@ class ClipboardCellsState extends ClipboardCellsAbstractState {
45587
45612
  * Clear the clipped zones: remove the cells and clear the formatting
45588
45613
  */
45589
45614
  clearClippedZones() {
45590
- for (const row of this.cells) {
45591
- for (const cell of row) {
45592
- if (cell?.cell) {
45593
- this.dispatch("CLEAR_CELL", cell.position);
45594
- }
45595
- }
45596
- }
45615
+ this.dispatch("CLEAR_CELLS", {
45616
+ sheetId: this.sheetId,
45617
+ target: this.zones,
45618
+ });
45597
45619
  this.dispatch("CLEAR_FORMATTING", {
45598
45620
  sheetId: this.sheetId,
45599
45621
  target: this.zones,
@@ -45942,9 +45964,7 @@ class DataCleanupPlugin extends UIPlugin {
45942
45964
  bottom: rowIndex,
45943
45965
  }));
45944
45966
  const state = new ClipboardCellsState(rowsToKeep, "COPY", this.getters, this.dispatch, this.selection);
45945
- for (const { col, row } of positions(zone)) {
45946
- this.dispatch("CLEAR_CELL", { col, row, sheetId });
45947
- }
45967
+ this.dispatch("CLEAR_CELLS", { target: [zone], sheetId });
45948
45968
  const zonePasted = {
45949
45969
  left: zone.left,
45950
45970
  top: zone.top,
@@ -47969,6 +47989,9 @@ class SheetUIPlugin extends UIPlugin {
47969
47989
  if (showFormula && cell?.isFormula) {
47970
47990
  return localizeFormula(cell.content, this.getters.getLocale());
47971
47991
  }
47992
+ else if (showFormula && !cell?.content) {
47993
+ return "";
47994
+ }
47972
47995
  else {
47973
47996
  return this.getters.getEvaluatedCell(position).formattedValue;
47974
47997
  }
@@ -48216,6 +48239,7 @@ function repeatGroupHeadersCommand(getters, cmd) {
48216
48239
  const repeatCommandTransformRegistry = new Registry();
48217
48240
  repeatCommandTransformRegistry.add("UPDATE_CELL", genericRepeat);
48218
48241
  repeatCommandTransformRegistry.add("CLEAR_CELL", genericRepeat);
48242
+ repeatCommandTransformRegistry.add("CLEAR_CELLS", genericRepeat);
48219
48243
  repeatCommandTransformRegistry.add("DELETE_CONTENT", genericRepeat);
48220
48244
  repeatCommandTransformRegistry.add("ADD_MERGE", genericRepeat);
48221
48245
  repeatCommandTransformRegistry.add("REMOVE_MERGE", genericRepeat);
@@ -48957,9 +48981,10 @@ class ClipboardPlugin extends UIPlugin {
48957
48981
  case "DELETE_CELL": {
48958
48982
  const { cut, paste } = this.getDeleteCellsTargets(cmd.zone, cmd.shiftDimension);
48959
48983
  if (!isZoneValid(cut[0])) {
48960
- for (const { col, row } of positions(cmd.zone)) {
48961
- this.dispatch("CLEAR_CELL", { col, row, sheetId: this.getters.getActiveSheetId() });
48962
- }
48984
+ this.dispatch("CLEAR_CELLS", {
48985
+ target: [cmd.zone],
48986
+ sheetId: this.getters.getActiveSheetId(),
48987
+ });
48963
48988
  break;
48964
48989
  }
48965
48990
  const state = this.getClipboardStateForCopyCells(cut, "CUT");
@@ -57391,7 +57416,7 @@ class Model extends EventBus {
57391
57416
  this.session.join(this.config.client);
57392
57417
  }
57393
57418
  leaveSession() {
57394
- this.session.leave(this.exportData());
57419
+ this.session.leave(lazy(() => this.exportData()));
57395
57420
  }
57396
57421
  setupUiPlugin(Plugin) {
57397
57422
  const plugin = new Plugin(this.uiPluginConfig);
@@ -57903,6 +57928,6 @@ exports.setTranslationMethod = setTranslationMethod;
57903
57928
  exports.tokenize = tokenize;
57904
57929
 
57905
57930
 
57906
- __info__.version = "17.1.27";
57907
- __info__.date = "2024-08-09T12:20:52.051Z";
57908
- __info__.hash = "c626332";
57931
+ __info__.version = "17.1.28";
57932
+ __info__.date = "2024-08-19T08:08:59.669Z";
57933
+ __info__.hash = "9674f1b";
@@ -841,7 +841,7 @@ declare class Session extends EventBus<CollaborativeEvent> {
841
841
  /**
842
842
  * Notify the server that the user client left the collaborative session
843
843
  */
844
- leave(data: WorkbookData): void;
844
+ leave(data: Lazy<WorkbookData>): void;
845
845
  /**
846
846
  * Send a snapshot of the spreadsheet to the collaboration server
847
847
  */
@@ -1694,11 +1694,11 @@ interface ZoneDependentCommand {
1694
1694
  sheetId: UID;
1695
1695
  zone: Zone;
1696
1696
  }
1697
- declare const invalidateEvaluationCommands: Set<"SORT_CELLS" | "UPDATE_CELL" | "UPDATE_CELL_POSITION" | "CLEAR_CELL" | "DELETE_CONTENT" | "ADD_COLUMNS_ROWS" | "REMOVE_COLUMNS_ROWS" | "RESIZE_COLUMNS_ROWS" | "HIDE_COLUMNS_ROWS" | "UNHIDE_COLUMNS_ROWS" | "SET_GRID_LINES_VISIBILITY" | "FREEZE_COLUMNS" | "FREEZE_ROWS" | "UNFREEZE_COLUMNS_ROWS" | "UNFREEZE_COLUMNS" | "UNFREEZE_ROWS" | "ADD_MERGE" | "REMOVE_MERGE" | "CREATE_SHEET" | "DELETE_SHEET" | "DUPLICATE_SHEET" | "MOVE_SHEET" | "RENAME_SHEET" | "HIDE_SHEET" | "SHOW_SHEET" | "MOVE_RANGES" | "ADD_CONDITIONAL_FORMAT" | "REMOVE_CONDITIONAL_FORMAT" | "CHANGE_CONDITIONAL_FORMAT_PRIORITY" | "CREATE_FIGURE" | "DELETE_FIGURE" | "UPDATE_FIGURE" | "SET_FORMATTING" | "CLEAR_FORMATTING" | "SET_ZONE_BORDERS" | "SET_BORDER" | "CREATE_CHART" | "UPDATE_CHART" | "CREATE_IMAGE" | "CREATE_FILTER_TABLE" | "REMOVE_FILTER_TABLE" | "GROUP_HEADERS" | "UNGROUP_HEADERS" | "UNFOLD_HEADER_GROUP" | "FOLD_HEADER_GROUP" | "FOLD_ALL_HEADER_GROUPS" | "UNFOLD_ALL_HEADER_GROUPS" | "UNFOLD_HEADER_GROUPS_IN_ZONE" | "FOLD_HEADER_GROUPS_IN_ZONE" | "ADD_DATA_VALIDATION_RULE" | "REMOVE_DATA_VALIDATION_RULE" | "UPDATE_LOCALE" | "REQUEST_UNDO" | "REQUEST_REDO" | "UNDO" | "REDO" | "ENABLE_NEW_SELECTION_INPUT" | "DISABLE_SELECTION_INPUT" | "UNFOCUS_SELECTION_INPUT" | "FOCUS_RANGE" | "ADD_EMPTY_RANGE" | "ADD_RANGE" | "REMOVE_RANGE" | "CHANGE_RANGE" | "COPY" | "CUT" | "PASTE" | "COPY_PASTE_CELLS_ABOVE" | "COPY_PASTE_CELLS_ON_LEFT" | "REPEAT_PASTE" | "CLEAN_CLIPBOARD_HIGHLIGHT" | "AUTOFILL_CELL" | "PASTE_FROM_OS_CLIPBOARD" | "ACTIVATE_PAINT_FORMAT" | "CANCEL_PAINT_FORMAT" | "AUTORESIZE_COLUMNS" | "AUTORESIZE_ROWS" | "MOVE_COLUMNS_ROWS" | "ACTIVATE_SHEET" | "EVALUATE_CELLS" | "START_CHANGE_HIGHLIGHT" | "SET_HIGHLIGHT_COLOR" | "STOP_COMPOSER_RANGE_SELECTION" | "START_EDITION" | "STOP_EDITION" | "CANCEL_EDITION" | "SET_CURRENT_CONTENT" | "CHANGE_COMPOSER_CURSOR_SELECTION" | "REPLACE_COMPOSER_CURSOR_SELECTION" | "CYCLE_EDITION_REFERENCES" | "START" | "AUTOFILL" | "AUTOFILL_SELECT" | "SET_FORMULA_VISIBILITY" | "AUTOFILL_AUTO" | "SELECT_FIGURE" | "UPDATE_SEARCH" | "CLEAR_SEARCH" | "SELECT_SEARCH_PREVIOUS_MATCH" | "SELECT_SEARCH_NEXT_MATCH" | "REPLACE_SEARCH" | "REPLACE_ALL_SEARCH" | "SET_DECIMAL" | "RESIZE_SHEETVIEW" | "SUM_SELECTION" | "DELETE_CELL" | "INSERT_CELL" | "SET_VIEWPORT_OFFSET" | "SHIFT_VIEWPORT_DOWN" | "SHIFT_VIEWPORT_UP" | "OPEN_CELL_POPOVER" | "CLOSE_CELL_POPOVER" | "ACTIVATE_NEXT_SHEET" | "ACTIVATE_PREVIOUS_SHEET" | "UPDATE_FILTER" | "SPLIT_TEXT_INTO_COLUMNS" | "REMOVE_DUPLICATES" | "TRIM_WHITESPACE">;
1698
- declare const invalidateDependenciesCommands: Set<"SORT_CELLS" | "UPDATE_CELL" | "UPDATE_CELL_POSITION" | "CLEAR_CELL" | "DELETE_CONTENT" | "ADD_COLUMNS_ROWS" | "REMOVE_COLUMNS_ROWS" | "RESIZE_COLUMNS_ROWS" | "HIDE_COLUMNS_ROWS" | "UNHIDE_COLUMNS_ROWS" | "SET_GRID_LINES_VISIBILITY" | "FREEZE_COLUMNS" | "FREEZE_ROWS" | "UNFREEZE_COLUMNS_ROWS" | "UNFREEZE_COLUMNS" | "UNFREEZE_ROWS" | "ADD_MERGE" | "REMOVE_MERGE" | "CREATE_SHEET" | "DELETE_SHEET" | "DUPLICATE_SHEET" | "MOVE_SHEET" | "RENAME_SHEET" | "HIDE_SHEET" | "SHOW_SHEET" | "MOVE_RANGES" | "ADD_CONDITIONAL_FORMAT" | "REMOVE_CONDITIONAL_FORMAT" | "CHANGE_CONDITIONAL_FORMAT_PRIORITY" | "CREATE_FIGURE" | "DELETE_FIGURE" | "UPDATE_FIGURE" | "SET_FORMATTING" | "CLEAR_FORMATTING" | "SET_ZONE_BORDERS" | "SET_BORDER" | "CREATE_CHART" | "UPDATE_CHART" | "CREATE_IMAGE" | "CREATE_FILTER_TABLE" | "REMOVE_FILTER_TABLE" | "GROUP_HEADERS" | "UNGROUP_HEADERS" | "UNFOLD_HEADER_GROUP" | "FOLD_HEADER_GROUP" | "FOLD_ALL_HEADER_GROUPS" | "UNFOLD_ALL_HEADER_GROUPS" | "UNFOLD_HEADER_GROUPS_IN_ZONE" | "FOLD_HEADER_GROUPS_IN_ZONE" | "ADD_DATA_VALIDATION_RULE" | "REMOVE_DATA_VALIDATION_RULE" | "UPDATE_LOCALE" | "REQUEST_UNDO" | "REQUEST_REDO" | "UNDO" | "REDO" | "ENABLE_NEW_SELECTION_INPUT" | "DISABLE_SELECTION_INPUT" | "UNFOCUS_SELECTION_INPUT" | "FOCUS_RANGE" | "ADD_EMPTY_RANGE" | "ADD_RANGE" | "REMOVE_RANGE" | "CHANGE_RANGE" | "COPY" | "CUT" | "PASTE" | "COPY_PASTE_CELLS_ABOVE" | "COPY_PASTE_CELLS_ON_LEFT" | "REPEAT_PASTE" | "CLEAN_CLIPBOARD_HIGHLIGHT" | "AUTOFILL_CELL" | "PASTE_FROM_OS_CLIPBOARD" | "ACTIVATE_PAINT_FORMAT" | "CANCEL_PAINT_FORMAT" | "AUTORESIZE_COLUMNS" | "AUTORESIZE_ROWS" | "MOVE_COLUMNS_ROWS" | "ACTIVATE_SHEET" | "EVALUATE_CELLS" | "START_CHANGE_HIGHLIGHT" | "SET_HIGHLIGHT_COLOR" | "STOP_COMPOSER_RANGE_SELECTION" | "START_EDITION" | "STOP_EDITION" | "CANCEL_EDITION" | "SET_CURRENT_CONTENT" | "CHANGE_COMPOSER_CURSOR_SELECTION" | "REPLACE_COMPOSER_CURSOR_SELECTION" | "CYCLE_EDITION_REFERENCES" | "START" | "AUTOFILL" | "AUTOFILL_SELECT" | "SET_FORMULA_VISIBILITY" | "AUTOFILL_AUTO" | "SELECT_FIGURE" | "UPDATE_SEARCH" | "CLEAR_SEARCH" | "SELECT_SEARCH_PREVIOUS_MATCH" | "SELECT_SEARCH_NEXT_MATCH" | "REPLACE_SEARCH" | "REPLACE_ALL_SEARCH" | "SET_DECIMAL" | "RESIZE_SHEETVIEW" | "SUM_SELECTION" | "DELETE_CELL" | "INSERT_CELL" | "SET_VIEWPORT_OFFSET" | "SHIFT_VIEWPORT_DOWN" | "SHIFT_VIEWPORT_UP" | "OPEN_CELL_POPOVER" | "CLOSE_CELL_POPOVER" | "ACTIVATE_NEXT_SHEET" | "ACTIVATE_PREVIOUS_SHEET" | "UPDATE_FILTER" | "SPLIT_TEXT_INTO_COLUMNS" | "REMOVE_DUPLICATES" | "TRIM_WHITESPACE">;
1699
- declare const invalidateCFEvaluationCommands: Set<"SORT_CELLS" | "UPDATE_CELL" | "UPDATE_CELL_POSITION" | "CLEAR_CELL" | "DELETE_CONTENT" | "ADD_COLUMNS_ROWS" | "REMOVE_COLUMNS_ROWS" | "RESIZE_COLUMNS_ROWS" | "HIDE_COLUMNS_ROWS" | "UNHIDE_COLUMNS_ROWS" | "SET_GRID_LINES_VISIBILITY" | "FREEZE_COLUMNS" | "FREEZE_ROWS" | "UNFREEZE_COLUMNS_ROWS" | "UNFREEZE_COLUMNS" | "UNFREEZE_ROWS" | "ADD_MERGE" | "REMOVE_MERGE" | "CREATE_SHEET" | "DELETE_SHEET" | "DUPLICATE_SHEET" | "MOVE_SHEET" | "RENAME_SHEET" | "HIDE_SHEET" | "SHOW_SHEET" | "MOVE_RANGES" | "ADD_CONDITIONAL_FORMAT" | "REMOVE_CONDITIONAL_FORMAT" | "CHANGE_CONDITIONAL_FORMAT_PRIORITY" | "CREATE_FIGURE" | "DELETE_FIGURE" | "UPDATE_FIGURE" | "SET_FORMATTING" | "CLEAR_FORMATTING" | "SET_ZONE_BORDERS" | "SET_BORDER" | "CREATE_CHART" | "UPDATE_CHART" | "CREATE_IMAGE" | "CREATE_FILTER_TABLE" | "REMOVE_FILTER_TABLE" | "GROUP_HEADERS" | "UNGROUP_HEADERS" | "UNFOLD_HEADER_GROUP" | "FOLD_HEADER_GROUP" | "FOLD_ALL_HEADER_GROUPS" | "UNFOLD_ALL_HEADER_GROUPS" | "UNFOLD_HEADER_GROUPS_IN_ZONE" | "FOLD_HEADER_GROUPS_IN_ZONE" | "ADD_DATA_VALIDATION_RULE" | "REMOVE_DATA_VALIDATION_RULE" | "UPDATE_LOCALE" | "REQUEST_UNDO" | "REQUEST_REDO" | "UNDO" | "REDO" | "ENABLE_NEW_SELECTION_INPUT" | "DISABLE_SELECTION_INPUT" | "UNFOCUS_SELECTION_INPUT" | "FOCUS_RANGE" | "ADD_EMPTY_RANGE" | "ADD_RANGE" | "REMOVE_RANGE" | "CHANGE_RANGE" | "COPY" | "CUT" | "PASTE" | "COPY_PASTE_CELLS_ABOVE" | "COPY_PASTE_CELLS_ON_LEFT" | "REPEAT_PASTE" | "CLEAN_CLIPBOARD_HIGHLIGHT" | "AUTOFILL_CELL" | "PASTE_FROM_OS_CLIPBOARD" | "ACTIVATE_PAINT_FORMAT" | "CANCEL_PAINT_FORMAT" | "AUTORESIZE_COLUMNS" | "AUTORESIZE_ROWS" | "MOVE_COLUMNS_ROWS" | "ACTIVATE_SHEET" | "EVALUATE_CELLS" | "START_CHANGE_HIGHLIGHT" | "SET_HIGHLIGHT_COLOR" | "STOP_COMPOSER_RANGE_SELECTION" | "START_EDITION" | "STOP_EDITION" | "CANCEL_EDITION" | "SET_CURRENT_CONTENT" | "CHANGE_COMPOSER_CURSOR_SELECTION" | "REPLACE_COMPOSER_CURSOR_SELECTION" | "CYCLE_EDITION_REFERENCES" | "START" | "AUTOFILL" | "AUTOFILL_SELECT" | "SET_FORMULA_VISIBILITY" | "AUTOFILL_AUTO" | "SELECT_FIGURE" | "UPDATE_SEARCH" | "CLEAR_SEARCH" | "SELECT_SEARCH_PREVIOUS_MATCH" | "SELECT_SEARCH_NEXT_MATCH" | "REPLACE_SEARCH" | "REPLACE_ALL_SEARCH" | "SET_DECIMAL" | "RESIZE_SHEETVIEW" | "SUM_SELECTION" | "DELETE_CELL" | "INSERT_CELL" | "SET_VIEWPORT_OFFSET" | "SHIFT_VIEWPORT_DOWN" | "SHIFT_VIEWPORT_UP" | "OPEN_CELL_POPOVER" | "CLOSE_CELL_POPOVER" | "ACTIVATE_NEXT_SHEET" | "ACTIVATE_PREVIOUS_SHEET" | "UPDATE_FILTER" | "SPLIT_TEXT_INTO_COLUMNS" | "REMOVE_DUPLICATES" | "TRIM_WHITESPACE">;
1700
- declare const readonlyAllowedCommands: Set<"SORT_CELLS" | "UPDATE_CELL" | "UPDATE_CELL_POSITION" | "CLEAR_CELL" | "DELETE_CONTENT" | "ADD_COLUMNS_ROWS" | "REMOVE_COLUMNS_ROWS" | "RESIZE_COLUMNS_ROWS" | "HIDE_COLUMNS_ROWS" | "UNHIDE_COLUMNS_ROWS" | "SET_GRID_LINES_VISIBILITY" | "FREEZE_COLUMNS" | "FREEZE_ROWS" | "UNFREEZE_COLUMNS_ROWS" | "UNFREEZE_COLUMNS" | "UNFREEZE_ROWS" | "ADD_MERGE" | "REMOVE_MERGE" | "CREATE_SHEET" | "DELETE_SHEET" | "DUPLICATE_SHEET" | "MOVE_SHEET" | "RENAME_SHEET" | "HIDE_SHEET" | "SHOW_SHEET" | "MOVE_RANGES" | "ADD_CONDITIONAL_FORMAT" | "REMOVE_CONDITIONAL_FORMAT" | "CHANGE_CONDITIONAL_FORMAT_PRIORITY" | "CREATE_FIGURE" | "DELETE_FIGURE" | "UPDATE_FIGURE" | "SET_FORMATTING" | "CLEAR_FORMATTING" | "SET_ZONE_BORDERS" | "SET_BORDER" | "CREATE_CHART" | "UPDATE_CHART" | "CREATE_IMAGE" | "CREATE_FILTER_TABLE" | "REMOVE_FILTER_TABLE" | "GROUP_HEADERS" | "UNGROUP_HEADERS" | "UNFOLD_HEADER_GROUP" | "FOLD_HEADER_GROUP" | "FOLD_ALL_HEADER_GROUPS" | "UNFOLD_ALL_HEADER_GROUPS" | "UNFOLD_HEADER_GROUPS_IN_ZONE" | "FOLD_HEADER_GROUPS_IN_ZONE" | "ADD_DATA_VALIDATION_RULE" | "REMOVE_DATA_VALIDATION_RULE" | "UPDATE_LOCALE" | "REQUEST_UNDO" | "REQUEST_REDO" | "UNDO" | "REDO" | "ENABLE_NEW_SELECTION_INPUT" | "DISABLE_SELECTION_INPUT" | "UNFOCUS_SELECTION_INPUT" | "FOCUS_RANGE" | "ADD_EMPTY_RANGE" | "ADD_RANGE" | "REMOVE_RANGE" | "CHANGE_RANGE" | "COPY" | "CUT" | "PASTE" | "COPY_PASTE_CELLS_ABOVE" | "COPY_PASTE_CELLS_ON_LEFT" | "REPEAT_PASTE" | "CLEAN_CLIPBOARD_HIGHLIGHT" | "AUTOFILL_CELL" | "PASTE_FROM_OS_CLIPBOARD" | "ACTIVATE_PAINT_FORMAT" | "CANCEL_PAINT_FORMAT" | "AUTORESIZE_COLUMNS" | "AUTORESIZE_ROWS" | "MOVE_COLUMNS_ROWS" | "ACTIVATE_SHEET" | "EVALUATE_CELLS" | "START_CHANGE_HIGHLIGHT" | "SET_HIGHLIGHT_COLOR" | "STOP_COMPOSER_RANGE_SELECTION" | "START_EDITION" | "STOP_EDITION" | "CANCEL_EDITION" | "SET_CURRENT_CONTENT" | "CHANGE_COMPOSER_CURSOR_SELECTION" | "REPLACE_COMPOSER_CURSOR_SELECTION" | "CYCLE_EDITION_REFERENCES" | "START" | "AUTOFILL" | "AUTOFILL_SELECT" | "SET_FORMULA_VISIBILITY" | "AUTOFILL_AUTO" | "SELECT_FIGURE" | "UPDATE_SEARCH" | "CLEAR_SEARCH" | "SELECT_SEARCH_PREVIOUS_MATCH" | "SELECT_SEARCH_NEXT_MATCH" | "REPLACE_SEARCH" | "REPLACE_ALL_SEARCH" | "SET_DECIMAL" | "RESIZE_SHEETVIEW" | "SUM_SELECTION" | "DELETE_CELL" | "INSERT_CELL" | "SET_VIEWPORT_OFFSET" | "SHIFT_VIEWPORT_DOWN" | "SHIFT_VIEWPORT_UP" | "OPEN_CELL_POPOVER" | "CLOSE_CELL_POPOVER" | "ACTIVATE_NEXT_SHEET" | "ACTIVATE_PREVIOUS_SHEET" | "UPDATE_FILTER" | "SPLIT_TEXT_INTO_COLUMNS" | "REMOVE_DUPLICATES" | "TRIM_WHITESPACE">;
1701
- declare const coreTypes: Set<"UPDATE_CELL" | "UPDATE_CELL_POSITION" | "CLEAR_CELL" | "DELETE_CONTENT" | "ADD_COLUMNS_ROWS" | "REMOVE_COLUMNS_ROWS" | "RESIZE_COLUMNS_ROWS" | "HIDE_COLUMNS_ROWS" | "UNHIDE_COLUMNS_ROWS" | "SET_GRID_LINES_VISIBILITY" | "FREEZE_COLUMNS" | "FREEZE_ROWS" | "UNFREEZE_COLUMNS_ROWS" | "UNFREEZE_COLUMNS" | "UNFREEZE_ROWS" | "ADD_MERGE" | "REMOVE_MERGE" | "CREATE_SHEET" | "DELETE_SHEET" | "DUPLICATE_SHEET" | "MOVE_SHEET" | "RENAME_SHEET" | "HIDE_SHEET" | "SHOW_SHEET" | "MOVE_RANGES" | "ADD_CONDITIONAL_FORMAT" | "REMOVE_CONDITIONAL_FORMAT" | "CHANGE_CONDITIONAL_FORMAT_PRIORITY" | "CREATE_FIGURE" | "DELETE_FIGURE" | "UPDATE_FIGURE" | "SET_FORMATTING" | "CLEAR_FORMATTING" | "SET_ZONE_BORDERS" | "SET_BORDER" | "CREATE_CHART" | "UPDATE_CHART" | "CREATE_IMAGE" | "CREATE_FILTER_TABLE" | "REMOVE_FILTER_TABLE" | "GROUP_HEADERS" | "UNGROUP_HEADERS" | "UNFOLD_HEADER_GROUP" | "FOLD_HEADER_GROUP" | "FOLD_ALL_HEADER_GROUPS" | "UNFOLD_ALL_HEADER_GROUPS" | "UNFOLD_HEADER_GROUPS_IN_ZONE" | "FOLD_HEADER_GROUPS_IN_ZONE" | "ADD_DATA_VALIDATION_RULE" | "REMOVE_DATA_VALIDATION_RULE" | "UPDATE_LOCALE">;
1697
+ declare const invalidateEvaluationCommands: Set<"SORT_CELLS" | "UPDATE_CELL" | "UPDATE_CELL_POSITION" | "CLEAR_CELL" | "CLEAR_CELLS" | "DELETE_CONTENT" | "ADD_COLUMNS_ROWS" | "REMOVE_COLUMNS_ROWS" | "RESIZE_COLUMNS_ROWS" | "HIDE_COLUMNS_ROWS" | "UNHIDE_COLUMNS_ROWS" | "SET_GRID_LINES_VISIBILITY" | "FREEZE_COLUMNS" | "FREEZE_ROWS" | "UNFREEZE_COLUMNS_ROWS" | "UNFREEZE_COLUMNS" | "UNFREEZE_ROWS" | "ADD_MERGE" | "REMOVE_MERGE" | "CREATE_SHEET" | "DELETE_SHEET" | "DUPLICATE_SHEET" | "MOVE_SHEET" | "RENAME_SHEET" | "HIDE_SHEET" | "SHOW_SHEET" | "MOVE_RANGES" | "ADD_CONDITIONAL_FORMAT" | "REMOVE_CONDITIONAL_FORMAT" | "CHANGE_CONDITIONAL_FORMAT_PRIORITY" | "CREATE_FIGURE" | "DELETE_FIGURE" | "UPDATE_FIGURE" | "SET_FORMATTING" | "CLEAR_FORMATTING" | "SET_ZONE_BORDERS" | "SET_BORDER" | "CREATE_CHART" | "UPDATE_CHART" | "CREATE_IMAGE" | "CREATE_FILTER_TABLE" | "REMOVE_FILTER_TABLE" | "GROUP_HEADERS" | "UNGROUP_HEADERS" | "UNFOLD_HEADER_GROUP" | "FOLD_HEADER_GROUP" | "FOLD_ALL_HEADER_GROUPS" | "UNFOLD_ALL_HEADER_GROUPS" | "UNFOLD_HEADER_GROUPS_IN_ZONE" | "FOLD_HEADER_GROUPS_IN_ZONE" | "ADD_DATA_VALIDATION_RULE" | "REMOVE_DATA_VALIDATION_RULE" | "UPDATE_LOCALE" | "REQUEST_UNDO" | "REQUEST_REDO" | "UNDO" | "REDO" | "ENABLE_NEW_SELECTION_INPUT" | "DISABLE_SELECTION_INPUT" | "UNFOCUS_SELECTION_INPUT" | "FOCUS_RANGE" | "ADD_EMPTY_RANGE" | "ADD_RANGE" | "REMOVE_RANGE" | "CHANGE_RANGE" | "COPY" | "CUT" | "PASTE" | "COPY_PASTE_CELLS_ABOVE" | "COPY_PASTE_CELLS_ON_LEFT" | "REPEAT_PASTE" | "CLEAN_CLIPBOARD_HIGHLIGHT" | "AUTOFILL_CELL" | "PASTE_FROM_OS_CLIPBOARD" | "ACTIVATE_PAINT_FORMAT" | "CANCEL_PAINT_FORMAT" | "AUTORESIZE_COLUMNS" | "AUTORESIZE_ROWS" | "MOVE_COLUMNS_ROWS" | "ACTIVATE_SHEET" | "EVALUATE_CELLS" | "START_CHANGE_HIGHLIGHT" | "SET_HIGHLIGHT_COLOR" | "STOP_COMPOSER_RANGE_SELECTION" | "START_EDITION" | "STOP_EDITION" | "CANCEL_EDITION" | "SET_CURRENT_CONTENT" | "CHANGE_COMPOSER_CURSOR_SELECTION" | "REPLACE_COMPOSER_CURSOR_SELECTION" | "CYCLE_EDITION_REFERENCES" | "START" | "AUTOFILL" | "AUTOFILL_SELECT" | "SET_FORMULA_VISIBILITY" | "AUTOFILL_AUTO" | "SELECT_FIGURE" | "UPDATE_SEARCH" | "CLEAR_SEARCH" | "SELECT_SEARCH_PREVIOUS_MATCH" | "SELECT_SEARCH_NEXT_MATCH" | "REPLACE_SEARCH" | "REPLACE_ALL_SEARCH" | "SET_DECIMAL" | "RESIZE_SHEETVIEW" | "SUM_SELECTION" | "DELETE_CELL" | "INSERT_CELL" | "SET_VIEWPORT_OFFSET" | "SHIFT_VIEWPORT_DOWN" | "SHIFT_VIEWPORT_UP" | "OPEN_CELL_POPOVER" | "CLOSE_CELL_POPOVER" | "ACTIVATE_NEXT_SHEET" | "ACTIVATE_PREVIOUS_SHEET" | "UPDATE_FILTER" | "SPLIT_TEXT_INTO_COLUMNS" | "REMOVE_DUPLICATES" | "TRIM_WHITESPACE">;
1698
+ declare const invalidateDependenciesCommands: Set<"SORT_CELLS" | "UPDATE_CELL" | "UPDATE_CELL_POSITION" | "CLEAR_CELL" | "CLEAR_CELLS" | "DELETE_CONTENT" | "ADD_COLUMNS_ROWS" | "REMOVE_COLUMNS_ROWS" | "RESIZE_COLUMNS_ROWS" | "HIDE_COLUMNS_ROWS" | "UNHIDE_COLUMNS_ROWS" | "SET_GRID_LINES_VISIBILITY" | "FREEZE_COLUMNS" | "FREEZE_ROWS" | "UNFREEZE_COLUMNS_ROWS" | "UNFREEZE_COLUMNS" | "UNFREEZE_ROWS" | "ADD_MERGE" | "REMOVE_MERGE" | "CREATE_SHEET" | "DELETE_SHEET" | "DUPLICATE_SHEET" | "MOVE_SHEET" | "RENAME_SHEET" | "HIDE_SHEET" | "SHOW_SHEET" | "MOVE_RANGES" | "ADD_CONDITIONAL_FORMAT" | "REMOVE_CONDITIONAL_FORMAT" | "CHANGE_CONDITIONAL_FORMAT_PRIORITY" | "CREATE_FIGURE" | "DELETE_FIGURE" | "UPDATE_FIGURE" | "SET_FORMATTING" | "CLEAR_FORMATTING" | "SET_ZONE_BORDERS" | "SET_BORDER" | "CREATE_CHART" | "UPDATE_CHART" | "CREATE_IMAGE" | "CREATE_FILTER_TABLE" | "REMOVE_FILTER_TABLE" | "GROUP_HEADERS" | "UNGROUP_HEADERS" | "UNFOLD_HEADER_GROUP" | "FOLD_HEADER_GROUP" | "FOLD_ALL_HEADER_GROUPS" | "UNFOLD_ALL_HEADER_GROUPS" | "UNFOLD_HEADER_GROUPS_IN_ZONE" | "FOLD_HEADER_GROUPS_IN_ZONE" | "ADD_DATA_VALIDATION_RULE" | "REMOVE_DATA_VALIDATION_RULE" | "UPDATE_LOCALE" | "REQUEST_UNDO" | "REQUEST_REDO" | "UNDO" | "REDO" | "ENABLE_NEW_SELECTION_INPUT" | "DISABLE_SELECTION_INPUT" | "UNFOCUS_SELECTION_INPUT" | "FOCUS_RANGE" | "ADD_EMPTY_RANGE" | "ADD_RANGE" | "REMOVE_RANGE" | "CHANGE_RANGE" | "COPY" | "CUT" | "PASTE" | "COPY_PASTE_CELLS_ABOVE" | "COPY_PASTE_CELLS_ON_LEFT" | "REPEAT_PASTE" | "CLEAN_CLIPBOARD_HIGHLIGHT" | "AUTOFILL_CELL" | "PASTE_FROM_OS_CLIPBOARD" | "ACTIVATE_PAINT_FORMAT" | "CANCEL_PAINT_FORMAT" | "AUTORESIZE_COLUMNS" | "AUTORESIZE_ROWS" | "MOVE_COLUMNS_ROWS" | "ACTIVATE_SHEET" | "EVALUATE_CELLS" | "START_CHANGE_HIGHLIGHT" | "SET_HIGHLIGHT_COLOR" | "STOP_COMPOSER_RANGE_SELECTION" | "START_EDITION" | "STOP_EDITION" | "CANCEL_EDITION" | "SET_CURRENT_CONTENT" | "CHANGE_COMPOSER_CURSOR_SELECTION" | "REPLACE_COMPOSER_CURSOR_SELECTION" | "CYCLE_EDITION_REFERENCES" | "START" | "AUTOFILL" | "AUTOFILL_SELECT" | "SET_FORMULA_VISIBILITY" | "AUTOFILL_AUTO" | "SELECT_FIGURE" | "UPDATE_SEARCH" | "CLEAR_SEARCH" | "SELECT_SEARCH_PREVIOUS_MATCH" | "SELECT_SEARCH_NEXT_MATCH" | "REPLACE_SEARCH" | "REPLACE_ALL_SEARCH" | "SET_DECIMAL" | "RESIZE_SHEETVIEW" | "SUM_SELECTION" | "DELETE_CELL" | "INSERT_CELL" | "SET_VIEWPORT_OFFSET" | "SHIFT_VIEWPORT_DOWN" | "SHIFT_VIEWPORT_UP" | "OPEN_CELL_POPOVER" | "CLOSE_CELL_POPOVER" | "ACTIVATE_NEXT_SHEET" | "ACTIVATE_PREVIOUS_SHEET" | "UPDATE_FILTER" | "SPLIT_TEXT_INTO_COLUMNS" | "REMOVE_DUPLICATES" | "TRIM_WHITESPACE">;
1699
+ declare const invalidateCFEvaluationCommands: Set<"SORT_CELLS" | "UPDATE_CELL" | "UPDATE_CELL_POSITION" | "CLEAR_CELL" | "CLEAR_CELLS" | "DELETE_CONTENT" | "ADD_COLUMNS_ROWS" | "REMOVE_COLUMNS_ROWS" | "RESIZE_COLUMNS_ROWS" | "HIDE_COLUMNS_ROWS" | "UNHIDE_COLUMNS_ROWS" | "SET_GRID_LINES_VISIBILITY" | "FREEZE_COLUMNS" | "FREEZE_ROWS" | "UNFREEZE_COLUMNS_ROWS" | "UNFREEZE_COLUMNS" | "UNFREEZE_ROWS" | "ADD_MERGE" | "REMOVE_MERGE" | "CREATE_SHEET" | "DELETE_SHEET" | "DUPLICATE_SHEET" | "MOVE_SHEET" | "RENAME_SHEET" | "HIDE_SHEET" | "SHOW_SHEET" | "MOVE_RANGES" | "ADD_CONDITIONAL_FORMAT" | "REMOVE_CONDITIONAL_FORMAT" | "CHANGE_CONDITIONAL_FORMAT_PRIORITY" | "CREATE_FIGURE" | "DELETE_FIGURE" | "UPDATE_FIGURE" | "SET_FORMATTING" | "CLEAR_FORMATTING" | "SET_ZONE_BORDERS" | "SET_BORDER" | "CREATE_CHART" | "UPDATE_CHART" | "CREATE_IMAGE" | "CREATE_FILTER_TABLE" | "REMOVE_FILTER_TABLE" | "GROUP_HEADERS" | "UNGROUP_HEADERS" | "UNFOLD_HEADER_GROUP" | "FOLD_HEADER_GROUP" | "FOLD_ALL_HEADER_GROUPS" | "UNFOLD_ALL_HEADER_GROUPS" | "UNFOLD_HEADER_GROUPS_IN_ZONE" | "FOLD_HEADER_GROUPS_IN_ZONE" | "ADD_DATA_VALIDATION_RULE" | "REMOVE_DATA_VALIDATION_RULE" | "UPDATE_LOCALE" | "REQUEST_UNDO" | "REQUEST_REDO" | "UNDO" | "REDO" | "ENABLE_NEW_SELECTION_INPUT" | "DISABLE_SELECTION_INPUT" | "UNFOCUS_SELECTION_INPUT" | "FOCUS_RANGE" | "ADD_EMPTY_RANGE" | "ADD_RANGE" | "REMOVE_RANGE" | "CHANGE_RANGE" | "COPY" | "CUT" | "PASTE" | "COPY_PASTE_CELLS_ABOVE" | "COPY_PASTE_CELLS_ON_LEFT" | "REPEAT_PASTE" | "CLEAN_CLIPBOARD_HIGHLIGHT" | "AUTOFILL_CELL" | "PASTE_FROM_OS_CLIPBOARD" | "ACTIVATE_PAINT_FORMAT" | "CANCEL_PAINT_FORMAT" | "AUTORESIZE_COLUMNS" | "AUTORESIZE_ROWS" | "MOVE_COLUMNS_ROWS" | "ACTIVATE_SHEET" | "EVALUATE_CELLS" | "START_CHANGE_HIGHLIGHT" | "SET_HIGHLIGHT_COLOR" | "STOP_COMPOSER_RANGE_SELECTION" | "START_EDITION" | "STOP_EDITION" | "CANCEL_EDITION" | "SET_CURRENT_CONTENT" | "CHANGE_COMPOSER_CURSOR_SELECTION" | "REPLACE_COMPOSER_CURSOR_SELECTION" | "CYCLE_EDITION_REFERENCES" | "START" | "AUTOFILL" | "AUTOFILL_SELECT" | "SET_FORMULA_VISIBILITY" | "AUTOFILL_AUTO" | "SELECT_FIGURE" | "UPDATE_SEARCH" | "CLEAR_SEARCH" | "SELECT_SEARCH_PREVIOUS_MATCH" | "SELECT_SEARCH_NEXT_MATCH" | "REPLACE_SEARCH" | "REPLACE_ALL_SEARCH" | "SET_DECIMAL" | "RESIZE_SHEETVIEW" | "SUM_SELECTION" | "DELETE_CELL" | "INSERT_CELL" | "SET_VIEWPORT_OFFSET" | "SHIFT_VIEWPORT_DOWN" | "SHIFT_VIEWPORT_UP" | "OPEN_CELL_POPOVER" | "CLOSE_CELL_POPOVER" | "ACTIVATE_NEXT_SHEET" | "ACTIVATE_PREVIOUS_SHEET" | "UPDATE_FILTER" | "SPLIT_TEXT_INTO_COLUMNS" | "REMOVE_DUPLICATES" | "TRIM_WHITESPACE">;
1700
+ declare const readonlyAllowedCommands: Set<"SORT_CELLS" | "UPDATE_CELL" | "UPDATE_CELL_POSITION" | "CLEAR_CELL" | "CLEAR_CELLS" | "DELETE_CONTENT" | "ADD_COLUMNS_ROWS" | "REMOVE_COLUMNS_ROWS" | "RESIZE_COLUMNS_ROWS" | "HIDE_COLUMNS_ROWS" | "UNHIDE_COLUMNS_ROWS" | "SET_GRID_LINES_VISIBILITY" | "FREEZE_COLUMNS" | "FREEZE_ROWS" | "UNFREEZE_COLUMNS_ROWS" | "UNFREEZE_COLUMNS" | "UNFREEZE_ROWS" | "ADD_MERGE" | "REMOVE_MERGE" | "CREATE_SHEET" | "DELETE_SHEET" | "DUPLICATE_SHEET" | "MOVE_SHEET" | "RENAME_SHEET" | "HIDE_SHEET" | "SHOW_SHEET" | "MOVE_RANGES" | "ADD_CONDITIONAL_FORMAT" | "REMOVE_CONDITIONAL_FORMAT" | "CHANGE_CONDITIONAL_FORMAT_PRIORITY" | "CREATE_FIGURE" | "DELETE_FIGURE" | "UPDATE_FIGURE" | "SET_FORMATTING" | "CLEAR_FORMATTING" | "SET_ZONE_BORDERS" | "SET_BORDER" | "CREATE_CHART" | "UPDATE_CHART" | "CREATE_IMAGE" | "CREATE_FILTER_TABLE" | "REMOVE_FILTER_TABLE" | "GROUP_HEADERS" | "UNGROUP_HEADERS" | "UNFOLD_HEADER_GROUP" | "FOLD_HEADER_GROUP" | "FOLD_ALL_HEADER_GROUPS" | "UNFOLD_ALL_HEADER_GROUPS" | "UNFOLD_HEADER_GROUPS_IN_ZONE" | "FOLD_HEADER_GROUPS_IN_ZONE" | "ADD_DATA_VALIDATION_RULE" | "REMOVE_DATA_VALIDATION_RULE" | "UPDATE_LOCALE" | "REQUEST_UNDO" | "REQUEST_REDO" | "UNDO" | "REDO" | "ENABLE_NEW_SELECTION_INPUT" | "DISABLE_SELECTION_INPUT" | "UNFOCUS_SELECTION_INPUT" | "FOCUS_RANGE" | "ADD_EMPTY_RANGE" | "ADD_RANGE" | "REMOVE_RANGE" | "CHANGE_RANGE" | "COPY" | "CUT" | "PASTE" | "COPY_PASTE_CELLS_ABOVE" | "COPY_PASTE_CELLS_ON_LEFT" | "REPEAT_PASTE" | "CLEAN_CLIPBOARD_HIGHLIGHT" | "AUTOFILL_CELL" | "PASTE_FROM_OS_CLIPBOARD" | "ACTIVATE_PAINT_FORMAT" | "CANCEL_PAINT_FORMAT" | "AUTORESIZE_COLUMNS" | "AUTORESIZE_ROWS" | "MOVE_COLUMNS_ROWS" | "ACTIVATE_SHEET" | "EVALUATE_CELLS" | "START_CHANGE_HIGHLIGHT" | "SET_HIGHLIGHT_COLOR" | "STOP_COMPOSER_RANGE_SELECTION" | "START_EDITION" | "STOP_EDITION" | "CANCEL_EDITION" | "SET_CURRENT_CONTENT" | "CHANGE_COMPOSER_CURSOR_SELECTION" | "REPLACE_COMPOSER_CURSOR_SELECTION" | "CYCLE_EDITION_REFERENCES" | "START" | "AUTOFILL" | "AUTOFILL_SELECT" | "SET_FORMULA_VISIBILITY" | "AUTOFILL_AUTO" | "SELECT_FIGURE" | "UPDATE_SEARCH" | "CLEAR_SEARCH" | "SELECT_SEARCH_PREVIOUS_MATCH" | "SELECT_SEARCH_NEXT_MATCH" | "REPLACE_SEARCH" | "REPLACE_ALL_SEARCH" | "SET_DECIMAL" | "RESIZE_SHEETVIEW" | "SUM_SELECTION" | "DELETE_CELL" | "INSERT_CELL" | "SET_VIEWPORT_OFFSET" | "SHIFT_VIEWPORT_DOWN" | "SHIFT_VIEWPORT_UP" | "OPEN_CELL_POPOVER" | "CLOSE_CELL_POPOVER" | "ACTIVATE_NEXT_SHEET" | "ACTIVATE_PREVIOUS_SHEET" | "UPDATE_FILTER" | "SPLIT_TEXT_INTO_COLUMNS" | "REMOVE_DUPLICATES" | "TRIM_WHITESPACE">;
1701
+ declare const coreTypes: Set<"UPDATE_CELL" | "UPDATE_CELL_POSITION" | "CLEAR_CELL" | "CLEAR_CELLS" | "DELETE_CONTENT" | "ADD_COLUMNS_ROWS" | "REMOVE_COLUMNS_ROWS" | "RESIZE_COLUMNS_ROWS" | "HIDE_COLUMNS_ROWS" | "UNHIDE_COLUMNS_ROWS" | "SET_GRID_LINES_VISIBILITY" | "FREEZE_COLUMNS" | "FREEZE_ROWS" | "UNFREEZE_COLUMNS_ROWS" | "UNFREEZE_COLUMNS" | "UNFREEZE_ROWS" | "ADD_MERGE" | "REMOVE_MERGE" | "CREATE_SHEET" | "DELETE_SHEET" | "DUPLICATE_SHEET" | "MOVE_SHEET" | "RENAME_SHEET" | "HIDE_SHEET" | "SHOW_SHEET" | "MOVE_RANGES" | "ADD_CONDITIONAL_FORMAT" | "REMOVE_CONDITIONAL_FORMAT" | "CHANGE_CONDITIONAL_FORMAT_PRIORITY" | "CREATE_FIGURE" | "DELETE_FIGURE" | "UPDATE_FIGURE" | "SET_FORMATTING" | "CLEAR_FORMATTING" | "SET_ZONE_BORDERS" | "SET_BORDER" | "CREATE_CHART" | "UPDATE_CHART" | "CREATE_IMAGE" | "CREATE_FILTER_TABLE" | "REMOVE_FILTER_TABLE" | "GROUP_HEADERS" | "UNGROUP_HEADERS" | "UNFOLD_HEADER_GROUP" | "FOLD_HEADER_GROUP" | "FOLD_ALL_HEADER_GROUPS" | "UNFOLD_ALL_HEADER_GROUPS" | "UNFOLD_HEADER_GROUPS_IN_ZONE" | "FOLD_HEADER_GROUPS_IN_ZONE" | "ADD_DATA_VALIDATION_RULE" | "REMOVE_DATA_VALIDATION_RULE" | "UPDATE_LOCALE">;
1702
1702
  interface UpdateCellCommand extends PositionDependentCommand {
1703
1703
  type: "UPDATE_CELL";
1704
1704
  content?: string;
@@ -2078,6 +2078,9 @@ interface DeleteContentCommand {
2078
2078
  interface ClearCellCommand extends PositionDependentCommand {
2079
2079
  type: "CLEAR_CELL";
2080
2080
  }
2081
+ interface ClearCellsCommand extends TargetDependentCommand {
2082
+ type: "CLEAR_CELLS";
2083
+ }
2081
2084
  interface UndoCommand {
2082
2085
  type: "UNDO";
2083
2086
  commands: readonly CoreCommand[];
@@ -2293,7 +2296,7 @@ interface SplitTextIntoColumnsCommand {
2293
2296
  }
2294
2297
  type CoreCommand =
2295
2298
  /** CELLS */
2296
- UpdateCellCommand | UpdateCellPositionCommand | ClearCellCommand | DeleteContentCommand
2299
+ UpdateCellCommand | UpdateCellPositionCommand | ClearCellCommand | ClearCellsCommand | DeleteContentCommand
2297
2300
  /** GRID SHAPE */
2298
2301
  | AddColumnsRowsCommand | RemoveColumnsRowsCommand | ResizeColumnsRowsCommand | HideColumnsRowsCommand | UnhideColumnsRowsCommand | SetGridLinesVisibilityCommand | FreezeColumnsCommand | FreezeRowsCommand | UnfreezeColumnsRowsCommand | UnfreezeColumnsCommand | UnfreezeRowsCommand
2299
2302
  /** MERGE */
@@ -3292,6 +3295,10 @@ declare class CellPlugin extends CorePlugin<CoreState> implements CoreState {
3292
3295
  * Clear the styles and format of zones
3293
3296
  */
3294
3297
  private clearFormatting;
3298
+ /**
3299
+ * Clear the styles, the format and the content of zones
3300
+ */
3301
+ private clearCells;
3295
3302
  /**
3296
3303
  * Copy the style of the reference column/row to the new columns/rows.
3297
3304
  */
@@ -2,9 +2,9 @@
2
2
  /**
3
3
  * This file is generated by o-spreadsheet build tools. Do not edit it.
4
4
  * @see https://github.com/odoo/o-spreadsheet
5
- * @version 17.1.27
6
- * @date 2024-08-09T12:20:52.051Z
7
- * @hash c626332
5
+ * @version 17.1.28
6
+ * @date 2024-08-19T08:08:59.669Z
7
+ * @hash 9674f1b
8
8
  */
9
9
 
10
10
  import { Component, useRef, onMounted, onWillUnmount, useEffect, onWillPatch, useState, onWillUpdateProps, onPatched, useComponent, useExternalListener, onWillStart, xml, useChildSubEnv, useSubEnv, markRaw } from '@odoo/owl';
@@ -1893,6 +1893,7 @@ const coreTypes = new Set([
1893
1893
  "UPDATE_CELL",
1894
1894
  "UPDATE_CELL_POSITION",
1895
1895
  "CLEAR_CELL",
1896
+ "CLEAR_CELLS",
1896
1897
  "DELETE_CONTENT",
1897
1898
  /** GRID SHAPE */
1898
1899
  "ADD_COLUMNS_ROWS",
@@ -35670,7 +35671,7 @@ function parse(str) {
35670
35671
  }
35671
35672
  function parseTokens(tokens) {
35672
35673
  tokens = tokens.filter((x) => x.type !== "SPACE");
35673
- if (tokens[0].value === "=") {
35674
+ if (tokens[0]?.value === "=") {
35674
35675
  tokens.splice(0, 1);
35675
35676
  }
35676
35677
  const result = parseExpression(tokens);
@@ -36237,6 +36238,9 @@ class CellPlugin extends CorePlugin {
36237
36238
  format: "",
36238
36239
  });
36239
36240
  break;
36241
+ case "CLEAR_CELLS":
36242
+ this.clearCells(cmd.sheetId, cmd.target);
36243
+ break;
36240
36244
  }
36241
36245
  }
36242
36246
  /**
@@ -36275,6 +36279,25 @@ class CellPlugin extends CorePlugin {
36275
36279
  }
36276
36280
  }
36277
36281
  }
36282
+ /**
36283
+ * Clear the styles, the format and the content of zones
36284
+ */
36285
+ clearCells(sheetId, zones) {
36286
+ for (const zone of zones) {
36287
+ for (let col = zone.left; col <= zone.right; col++) {
36288
+ for (let row = zone.top; row <= zone.bottom; row++) {
36289
+ this.dispatch("UPDATE_CELL", {
36290
+ sheetId: sheetId,
36291
+ col,
36292
+ row,
36293
+ content: "",
36294
+ style: null,
36295
+ format: "",
36296
+ });
36297
+ }
36298
+ }
36299
+ }
36300
+ }
36278
36301
  /**
36279
36302
  * Copy the style of the reference column/row to the new columns/rows.
36280
36303
  */
@@ -40010,19 +40033,23 @@ class SheetPlugin extends CorePlugin {
40010
40033
  }
40011
40034
  }
40012
40035
  moveCellOnColumnsDeletion(sheet, deletedColumn) {
40036
+ this.dispatch("CLEAR_CELLS", {
40037
+ sheetId: sheet.id,
40038
+ target: [
40039
+ {
40040
+ left: deletedColumn,
40041
+ top: 0,
40042
+ right: deletedColumn,
40043
+ bottom: sheet.rows.length - 1,
40044
+ },
40045
+ ],
40046
+ });
40013
40047
  for (let rowIndex = 0; rowIndex < sheet.rows.length; rowIndex++) {
40014
40048
  const row = sheet.rows[rowIndex];
40015
40049
  for (let i in row.cells) {
40016
40050
  const colIndex = Number(i);
40017
40051
  const cellId = row.cells[i];
40018
40052
  if (cellId) {
40019
- if (colIndex === deletedColumn) {
40020
- this.dispatch("CLEAR_CELL", {
40021
- sheetId: sheet.id,
40022
- col: colIndex,
40023
- row: rowIndex,
40024
- });
40025
- }
40026
40053
  if (colIndex > deletedColumn) {
40027
40054
  this.setNewPosition(cellId, sheet.id, colIndex - 1, rowIndex);
40028
40055
  }
@@ -40068,22 +40095,20 @@ class SheetPlugin extends CorePlugin {
40068
40095
  *
40069
40096
  */
40070
40097
  moveCellOnRowsDeletion(sheet, deleteFromRow, deleteToRow) {
40098
+ this.dispatch("CLEAR_CELLS", {
40099
+ sheetId: sheet.id,
40100
+ target: [
40101
+ {
40102
+ left: 0,
40103
+ top: deleteFromRow,
40104
+ right: this.getters.getNumberCols(sheet.id),
40105
+ bottom: deleteToRow,
40106
+ },
40107
+ ],
40108
+ });
40071
40109
  const numberRows = deleteToRow - deleteFromRow + 1;
40072
40110
  for (let rowIndex = 0; rowIndex < sheet.rows.length; rowIndex++) {
40073
40111
  const row = sheet.rows[rowIndex];
40074
- if (rowIndex >= deleteFromRow && rowIndex <= deleteToRow) {
40075
- for (let i in row.cells) {
40076
- const colIndex = Number(i);
40077
- const cellId = row.cells[i];
40078
- if (cellId) {
40079
- this.dispatch("CLEAR_CELL", {
40080
- sheetId: sheet.id,
40081
- col: colIndex,
40082
- row: rowIndex,
40083
- });
40084
- }
40085
- }
40086
- }
40087
40112
  if (rowIndex > deleteToRow) {
40088
40113
  for (let i in row.cells) {
40089
40114
  const colIndex = Number(i);
@@ -44912,7 +44937,7 @@ class Session extends EventBus {
44912
44937
  */
44913
44938
  leave(data) {
44914
44939
  if (Object.keys(this.clients).length === 1 && this.processedRevisions.size) {
44915
- this.snapshot(data);
44940
+ this.snapshot(data());
44916
44941
  }
44917
44942
  delete this.clients[this.clientId];
44918
44943
  this.transportService.leave(this.clientId);
@@ -45585,13 +45610,10 @@ class ClipboardCellsState extends ClipboardCellsAbstractState {
45585
45610
  * Clear the clipped zones: remove the cells and clear the formatting
45586
45611
  */
45587
45612
  clearClippedZones() {
45588
- for (const row of this.cells) {
45589
- for (const cell of row) {
45590
- if (cell?.cell) {
45591
- this.dispatch("CLEAR_CELL", cell.position);
45592
- }
45593
- }
45594
- }
45613
+ this.dispatch("CLEAR_CELLS", {
45614
+ sheetId: this.sheetId,
45615
+ target: this.zones,
45616
+ });
45595
45617
  this.dispatch("CLEAR_FORMATTING", {
45596
45618
  sheetId: this.sheetId,
45597
45619
  target: this.zones,
@@ -45940,9 +45962,7 @@ class DataCleanupPlugin extends UIPlugin {
45940
45962
  bottom: rowIndex,
45941
45963
  }));
45942
45964
  const state = new ClipboardCellsState(rowsToKeep, "COPY", this.getters, this.dispatch, this.selection);
45943
- for (const { col, row } of positions(zone)) {
45944
- this.dispatch("CLEAR_CELL", { col, row, sheetId });
45945
- }
45965
+ this.dispatch("CLEAR_CELLS", { target: [zone], sheetId });
45946
45966
  const zonePasted = {
45947
45967
  left: zone.left,
45948
45968
  top: zone.top,
@@ -47967,6 +47987,9 @@ class SheetUIPlugin extends UIPlugin {
47967
47987
  if (showFormula && cell?.isFormula) {
47968
47988
  return localizeFormula(cell.content, this.getters.getLocale());
47969
47989
  }
47990
+ else if (showFormula && !cell?.content) {
47991
+ return "";
47992
+ }
47970
47993
  else {
47971
47994
  return this.getters.getEvaluatedCell(position).formattedValue;
47972
47995
  }
@@ -48214,6 +48237,7 @@ function repeatGroupHeadersCommand(getters, cmd) {
48214
48237
  const repeatCommandTransformRegistry = new Registry();
48215
48238
  repeatCommandTransformRegistry.add("UPDATE_CELL", genericRepeat);
48216
48239
  repeatCommandTransformRegistry.add("CLEAR_CELL", genericRepeat);
48240
+ repeatCommandTransformRegistry.add("CLEAR_CELLS", genericRepeat);
48217
48241
  repeatCommandTransformRegistry.add("DELETE_CONTENT", genericRepeat);
48218
48242
  repeatCommandTransformRegistry.add("ADD_MERGE", genericRepeat);
48219
48243
  repeatCommandTransformRegistry.add("REMOVE_MERGE", genericRepeat);
@@ -48955,9 +48979,10 @@ class ClipboardPlugin extends UIPlugin {
48955
48979
  case "DELETE_CELL": {
48956
48980
  const { cut, paste } = this.getDeleteCellsTargets(cmd.zone, cmd.shiftDimension);
48957
48981
  if (!isZoneValid(cut[0])) {
48958
- for (const { col, row } of positions(cmd.zone)) {
48959
- this.dispatch("CLEAR_CELL", { col, row, sheetId: this.getters.getActiveSheetId() });
48960
- }
48982
+ this.dispatch("CLEAR_CELLS", {
48983
+ target: [cmd.zone],
48984
+ sheetId: this.getters.getActiveSheetId(),
48985
+ });
48961
48986
  break;
48962
48987
  }
48963
48988
  const state = this.getClipboardStateForCopyCells(cut, "CUT");
@@ -57389,7 +57414,7 @@ class Model extends EventBus {
57389
57414
  this.session.join(this.config.client);
57390
57415
  }
57391
57416
  leaveSession() {
57392
- this.session.leave(this.exportData());
57417
+ this.session.leave(lazy(() => this.exportData()));
57393
57418
  }
57394
57419
  setupUiPlugin(Plugin) {
57395
57420
  const plugin = new Plugin(this.uiPluginConfig);
@@ -57865,6 +57890,6 @@ const constants = {
57865
57890
  export { AbstractChart, CellErrorType, CommandResult, CorePlugin, DispatchResult, EvaluationError, Model, Registry, Revision, SPREADSHEET_DIMENSIONS, Spreadsheet, UIPlugin, __info__, addFunction, astToFormula, compile, compileTokens, components, constants, convertAstNodes, coreTypes, findCellInNewZone, functionCache, helpers, hooks, invalidateCFEvaluationCommands, invalidateDependenciesCommands, invalidateEvaluationCommands, iterateAstNodes, links, load, parse, parseTokens, readonlyAllowedCommands, registries, setDefaultSheetViewSize, setTranslationMethod, tokenize };
57866
57891
 
57867
57892
 
57868
- __info__.version = "17.1.27";
57869
- __info__.date = "2024-08-09T12:20:52.051Z";
57870
- __info__.hash = "c626332";
57893
+ __info__.version = "17.1.28";
57894
+ __info__.date = "2024-08-19T08:08:59.669Z";
57895
+ __info__.hash = "9674f1b";