@odoo/o-spreadsheet 16.4.0-alpha.7 → 16.5.0-alpha.0

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.
@@ -917,8 +917,8 @@ declare function toXC(col: HeaderIndex, row: HeaderIndex, rangePart?: RangePart)
917
917
  * Formats a cell value with its format.
918
918
  */
919
919
  declare function formatValue(value: CellValue, { format, locale }: LocaleFormat): FormattedValue;
920
+ declare function createCurrencyFormat(currency: Partial<Currency>): Format;
920
921
 
921
- declare function computeTextWidth(context: CanvasRenderingContext2D, text: string, style: Style): number;
922
922
  declare function isMarkdownLink(str: string): boolean;
923
923
  /**
924
924
  * Build a markdown link from a label and an url
@@ -978,6 +978,8 @@ declare class RangeImpl implements Range {
978
978
  clone(rangeParams?: Partial<ConstructorArgs>): RangeImpl;
979
979
  }
980
980
 
981
+ declare function computeTextWidth(context: CanvasRenderingContext2D, text: string, style: Style): number;
982
+
981
983
  declare class UuidGenerator {
982
984
  private isFastIdStrategy;
983
985
  private fastIdStart;
@@ -1121,6 +1123,7 @@ interface ModelConfig {
1121
1123
  readonly custom: Readonly<{
1122
1124
  [key: string]: any;
1123
1125
  }>;
1126
+ readonly defaultCurrencyFormat: Format;
1124
1127
  /**
1125
1128
  * External dependencies required to enable some features
1126
1129
  * such as uploading images.
@@ -1675,9 +1678,9 @@ interface PositionDependentCommand {
1675
1678
  row: number;
1676
1679
  }
1677
1680
  declare const invalidateEvaluationCommands: 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" | "MOVE_CONDITIONAL_FORMAT" | "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" | "UPDATE_LOCALE" | "UNDO" | "REDO" | "EVALUATE_CELLS">;
1678
- declare const invalidateDependenciesCommands: 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" | "MOVE_CONDITIONAL_FORMAT" | "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" | "UPDATE_LOCALE" | "SORT_CELLS" | "SET_DECIMAL" | "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" | "REPEAT_PASTE" | "CLEAN_CLIPBOARD_HIGHLIGHT" | "AUTOFILL_CELL" | "PASTE_FROM_OS_CLIPBOARD" | "ACTIVATE_PAINT_FORMAT" | "AUTORESIZE_COLUMNS" | "AUTORESIZE_ROWS" | "MOVE_COLUMNS_ROWS" | "ACTIVATE_SHEET" | "PREPARE_SELECTION_INPUT_EXPANSION" | "STOP_SELECTION_INPUT" | "EVALUATE_CELLS" | "CHANGE_HIGHLIGHT" | "START_CHANGE_HIGHLIGHT" | "SET_HIGHLIGHT_COLOR" | "STOP_COMPOSER_RANGE_SELECTION" | "START_EDITION" | "STOP_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" | "REFRESH_SEARCH" | "CLEAR_SEARCH" | "SELECT_SEARCH_PREVIOUS_MATCH" | "SELECT_SEARCH_NEXT_MATCH" | "REPLACE_SEARCH" | "REPLACE_ALL_SEARCH" | "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">;
1681
+ declare const invalidateDependenciesCommands: 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" | "MOVE_CONDITIONAL_FORMAT" | "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" | "UPDATE_LOCALE" | "SORT_CELLS" | "SET_DECIMAL" | "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" | "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" | "PREPARE_SELECTION_INPUT_EXPANSION" | "STOP_SELECTION_INPUT" | "EVALUATE_CELLS" | "CHANGE_HIGHLIGHT" | "START_CHANGE_HIGHLIGHT" | "SET_HIGHLIGHT_COLOR" | "STOP_COMPOSER_RANGE_SELECTION" | "START_EDITION" | "STOP_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" | "REFRESH_SEARCH" | "CLEAR_SEARCH" | "SELECT_SEARCH_PREVIOUS_MATCH" | "SELECT_SEARCH_NEXT_MATCH" | "REPLACE_SEARCH" | "REPLACE_ALL_SEARCH" | "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">;
1679
1682
  declare const invalidateCFEvaluationCommands: 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" | "MOVE_CONDITIONAL_FORMAT" | "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" | "UPDATE_LOCALE" | "UNDO" | "REDO" | "EVALUATE_CELLS">;
1680
- declare const readonlyAllowedCommands: 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" | "MOVE_CONDITIONAL_FORMAT" | "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" | "UPDATE_LOCALE" | "SORT_CELLS" | "SET_DECIMAL" | "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" | "REPEAT_PASTE" | "CLEAN_CLIPBOARD_HIGHLIGHT" | "AUTOFILL_CELL" | "PASTE_FROM_OS_CLIPBOARD" | "ACTIVATE_PAINT_FORMAT" | "AUTORESIZE_COLUMNS" | "AUTORESIZE_ROWS" | "MOVE_COLUMNS_ROWS" | "ACTIVATE_SHEET" | "PREPARE_SELECTION_INPUT_EXPANSION" | "STOP_SELECTION_INPUT" | "EVALUATE_CELLS" | "CHANGE_HIGHLIGHT" | "START_CHANGE_HIGHLIGHT" | "SET_HIGHLIGHT_COLOR" | "STOP_COMPOSER_RANGE_SELECTION" | "START_EDITION" | "STOP_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" | "REFRESH_SEARCH" | "CLEAR_SEARCH" | "SELECT_SEARCH_PREVIOUS_MATCH" | "SELECT_SEARCH_NEXT_MATCH" | "REPLACE_SEARCH" | "REPLACE_ALL_SEARCH" | "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">;
1683
+ declare const readonlyAllowedCommands: 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" | "MOVE_CONDITIONAL_FORMAT" | "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" | "UPDATE_LOCALE" | "SORT_CELLS" | "SET_DECIMAL" | "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" | "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" | "PREPARE_SELECTION_INPUT_EXPANSION" | "STOP_SELECTION_INPUT" | "EVALUATE_CELLS" | "CHANGE_HIGHLIGHT" | "START_CHANGE_HIGHLIGHT" | "SET_HIGHLIGHT_COLOR" | "STOP_COMPOSER_RANGE_SELECTION" | "START_EDITION" | "STOP_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" | "REFRESH_SEARCH" | "CLEAR_SEARCH" | "SELECT_SEARCH_PREVIOUS_MATCH" | "SELECT_SEARCH_NEXT_MATCH" | "REPLACE_SEARCH" | "REPLACE_ALL_SEARCH" | "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">;
1681
1684
  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" | "MOVE_CONDITIONAL_FORMAT" | "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" | "UPDATE_LOCALE">;
1682
1685
  interface UpdateCellCommand extends PositionDependentCommand {
1683
1686
  type: "UPDATE_CELL";
@@ -1918,6 +1921,10 @@ interface AutoFillCellCommand {
1918
1921
  }
1919
1922
  interface ActivatePaintFormatCommand {
1920
1923
  type: "ACTIVATE_PAINT_FORMAT";
1924
+ persistent?: boolean;
1925
+ }
1926
+ interface CancelPaintFormatCommand {
1927
+ type: "CANCEL_PAINT_FORMAT";
1921
1928
  }
1922
1929
  interface PasteFromOSClipboardCommand {
1923
1930
  type: "PASTE_FROM_OS_CLIPBOARD";
@@ -2255,7 +2262,7 @@ UpdateCellCommand | UpdateCellPositionCommand | ClearCellCommand | DeleteContent
2255
2262
  | CreateImageOverCommand
2256
2263
  /** FILTERS */
2257
2264
  | CreateFilterTableCommand | RemoveFilterTableCommand | UpdateLocaleCommand;
2258
- type LocalCommand = RequestUndoCommand | RequestRedoCommand | UndoCommand | RedoCommand | NewInputCommand | RemoveInputCommand | UnfocusInputCommand | FocusInputCommand | AddEmptyRangeCommand | AddRangeCommand | RemoveRangeCommand | ChangeRangeCommand | CopyCommand | CutCommand | PasteCommand | RepeatPasteCommand | CleanClipBoardHighlightCommand | AutoFillCellCommand | PasteFromOSClipboardCommand | ActivatePaintFormatCommand | AutoresizeColumnsCommand | AutoresizeRowsCommand | MoveColumnsRowsCommand | ActivateSheetCommand | PrepareExpansionCommand | StopSelectionCommand | EvaluateCellsCommand | ChangeHighlightCommand | StartChangeHighlightCommand | SetColorCommand | StopComposerSelectionCommand | StartEditionCommand | StopEditionCommand | SetCurrentContentCommand | ChangeComposerSelectionCommand | ReplaceComposerSelectionCommand | CycleEditionReferencesCommand | StartCommand | AutofillCommand | AutofillSelectCommand | ShowFormulaCommand | AutofillAutoCommand | SelectFigureCommand | UpdateSearchCommand | RefreshSearchCommand | ClearSearchCommand | SelectSearchPreviousCommand | SelectSearchNextCommand | ReplaceSearchCommand | ReplaceAllSearchCommand | SortCommand | SetDecimalCommand | ResizeViewportCommand | SumSelectionCommand | DeleteCellCommand | InsertCellCommand | SetViewportOffsetCommand | MoveViewportDownCommand | MoveViewportUpCommand | OpenCellPopoverCommand | CloseCellPopoverCommand | ActivateNextSheetCommand | ActivatePreviousSheetCommand | UpdateFilterCommand | SplitTextIntoColumnsCommand;
2265
+ type LocalCommand = RequestUndoCommand | RequestRedoCommand | UndoCommand | RedoCommand | NewInputCommand | RemoveInputCommand | UnfocusInputCommand | FocusInputCommand | AddEmptyRangeCommand | AddRangeCommand | RemoveRangeCommand | ChangeRangeCommand | CopyCommand | CutCommand | PasteCommand | RepeatPasteCommand | CleanClipBoardHighlightCommand | AutoFillCellCommand | PasteFromOSClipboardCommand | ActivatePaintFormatCommand | CancelPaintFormatCommand | AutoresizeColumnsCommand | AutoresizeRowsCommand | MoveColumnsRowsCommand | ActivateSheetCommand | PrepareExpansionCommand | StopSelectionCommand | EvaluateCellsCommand | ChangeHighlightCommand | StartChangeHighlightCommand | SetColorCommand | StopComposerSelectionCommand | StartEditionCommand | StopEditionCommand | SetCurrentContentCommand | ChangeComposerSelectionCommand | ReplaceComposerSelectionCommand | CycleEditionReferencesCommand | StartCommand | AutofillCommand | AutofillSelectCommand | ShowFormulaCommand | AutofillAutoCommand | SelectFigureCommand | UpdateSearchCommand | RefreshSearchCommand | ClearSearchCommand | SelectSearchPreviousCommand | SelectSearchNextCommand | ReplaceSearchCommand | ReplaceAllSearchCommand | SortCommand | SetDecimalCommand | ResizeViewportCommand | SumSelectionCommand | DeleteCellCommand | InsertCellCommand | SetViewportOffsetCommand | MoveViewportDownCommand | MoveViewportUpCommand | OpenCellPopoverCommand | CloseCellPopoverCommand | ActivateNextSheetCommand | ActivatePreviousSheetCommand | UpdateFilterCommand | SplitTextIntoColumnsCommand;
2259
2266
  type Command = CoreCommand | LocalCommand;
2260
2267
  /**
2261
2268
  * Holds the result of a command dispatch.
@@ -2372,7 +2379,8 @@ declare const enum CommandResult {
2372
2379
  SplitWillOverwriteContent = 91,
2373
2380
  NoSplitSeparatorInSelection = 92,
2374
2381
  NoActiveSheet = 93,
2375
- InvalidLocale = 94
2382
+ InvalidLocale = 94,
2383
+ AlreadyInPaintingFormatMode = 95
2376
2384
  }
2377
2385
  interface CommandHandler<T> {
2378
2386
  allowDispatch(command: T): CommandResult | CommandResult[];
@@ -3084,7 +3092,7 @@ declare class BordersPlugin extends CorePlugin<BordersPluginState> implements Bo
3084
3092
  private moveBordersOfColumn;
3085
3093
  /**
3086
3094
  * Set the borders of a cell.
3087
- * It overrides the current border if override == true.
3095
+ * It overrides the current border if override === true.
3088
3096
  */
3089
3097
  private setBorder;
3090
3098
  /**
@@ -3433,34 +3441,15 @@ declare class FiltersPlugin extends CorePlugin<FiltersState> implements FiltersS
3433
3441
  exportForExcel(data: ExcelWorkbookData): void;
3434
3442
  }
3435
3443
 
3436
- interface HeaderSize {
3437
- manualSize: Pixel | undefined;
3438
- computedSize: Lazy<Pixel>;
3444
+ interface HeaderSizeState$1 {
3445
+ sizes: Record<UID, Record<Dimension, Array<Pixel | undefined>>>;
3439
3446
  }
3440
- interface HeaderSizeState {
3441
- sizes: Record<UID, Record<Dimension, Array<HeaderSize>>>;
3442
- }
3443
- declare class HeaderSizePlugin extends CorePlugin<HeaderSizeState> implements HeaderSizeState {
3444
- static getters: readonly ["getRowSize", "getColSize"];
3445
- readonly sizes: Record<UID, Record<Dimension, Array<HeaderSize>>>;
3447
+ declare class HeaderSizePlugin extends CorePlugin<HeaderSizeState$1> implements HeaderSizeState$1 {
3448
+ static getters: readonly ["getUserRowSize", "getColSize"];
3449
+ readonly sizes: Record<UID, Record<Dimension, Array<Pixel | undefined>>>;
3446
3450
  handle(cmd: Command): void;
3447
3451
  getColSize(sheetId: UID, index: HeaderIndex): Pixel;
3448
- getRowSize(sheetId: UID, index: HeaderIndex): Pixel;
3449
- private getHeaderSize;
3450
- private computeSheetSizes;
3451
- private getDefaultHeaderSize;
3452
- /**
3453
- * Return the height the cell should have in the sheet, which is either DEFAULT_CELL_HEIGHT if the cell is in a multi-row
3454
- * merge, or the height of the cell computed based on its font size.
3455
- */
3456
- private getCellHeight;
3457
- /**
3458
- * Get the tallest cell of a row and its size.
3459
- *
3460
- * The tallest cell of the row correspond to the cell with the biggest font size,
3461
- * and that is not part of a multi-line merge.
3462
- */
3463
- private getRowTallestCellSize;
3452
+ getUserRowSize(sheetId: UID, index: HeaderIndex): Pixel | undefined;
3464
3453
  import(data: WorkbookData): void;
3465
3454
  exportForExcel(data: ExcelWorkbookData): void;
3466
3455
  export(data: WorkbookData): void;
@@ -3878,6 +3867,33 @@ declare class EvaluationConditionalFormatPlugin extends UIPlugin {
3878
3867
  private rulePredicate;
3879
3868
  }
3880
3869
 
3870
+ interface HeaderSizeState {
3871
+ tallestCellInRow: Immutable<Record<UID, Array<CellWithSize | undefined>>>;
3872
+ }
3873
+ interface CellWithSize {
3874
+ cell: CellPosition;
3875
+ size: Pixel;
3876
+ }
3877
+ declare class UIRowSizePlugin extends UIPlugin<HeaderSizeState> implements HeaderSizeState {
3878
+ static getters: readonly ["getRowSize"];
3879
+ readonly tallestCellInRow: Immutable<Record<UID, Array<CellWithSize | undefined>>>;
3880
+ private ctx;
3881
+ handle(cmd: Command): void;
3882
+ getRowSize(sheetId: UID, row: HeaderIndex): Pixel;
3883
+ private updateRowSizeForCellChange;
3884
+ private initializeSheet;
3885
+ /**
3886
+ * Return the height the cell should have in the sheet, which is either DEFAULT_CELL_HEIGHT if the cell is in a multi-row
3887
+ * merge, or the height of the cell computed based on its style/content.
3888
+ */
3889
+ private getCellHeight;
3890
+ private isInMultiRowMerge;
3891
+ /**
3892
+ * Get the tallest cell of a row and its size.
3893
+ */
3894
+ private getRowTallestCell;
3895
+ }
3896
+
3881
3897
  /**
3882
3898
  * Autofill Plugin
3883
3899
  *
@@ -4405,7 +4421,6 @@ declare class SheetUIPlugin extends UIPlugin {
4405
4421
  */
4406
4422
  getColRowOffset(dimension: Dimension, referenceIndex: HeaderIndex, index: HeaderIndex, sheetId?: UID): Pixel;
4407
4423
  private getColMaxWidth;
4408
- private splitWordToSpecificWidth;
4409
4424
  /**
4410
4425
  * Check that any "sheetId" in the command matches an existing
4411
4426
  * sheet.
@@ -4430,7 +4445,7 @@ declare class ClipboardPlugin extends UIPlugin {
4430
4445
  private status;
4431
4446
  private state?;
4432
4447
  private lastPasteState?;
4433
- private _isPaintingFormat;
4448
+ private paintFormatStatus;
4434
4449
  private originSheetId?;
4435
4450
  allowDispatch(cmd: LocalCommand): CommandResult;
4436
4451
  handle(cmd: Command): void;
@@ -4860,10 +4875,11 @@ type ViewportGetters = Pick<SheetViewPlugin, GetterNames<typeof SheetViewPlugin>
4860
4875
  type CellPopoverPluginGetters = Pick<CellPopoverPlugin, GetterNames<typeof CellPopoverPlugin>>;
4861
4876
  type FilterEvaluationGetters = Pick<FilterEvaluationPlugin, GetterNames<typeof FilterEvaluationPlugin>>;
4862
4877
  type SplitToColumnsGetters = Pick<SplitToColumnsPlugin, GetterNames<typeof SplitToColumnsPlugin>>;
4878
+ type UIRowSizeGetters = Pick<UIRowSizePlugin, GetterNames<typeof UIRowSizePlugin>>;
4863
4879
  type Getters = {
4864
4880
  isReadonly: () => boolean;
4865
4881
  isDashboard: () => boolean;
4866
- } & LocalHistoryGetters & CoreGetters & AutofillGetters & AutomaticSumGetters & ClipboardGetters & EditionGetters & EvaluationGetters & EvaluationChartGetters & EvaluationConditionalFormatGetters & FindAndReplaceGetters & HighlightGetters & CustomColorsGetters & RendererGetters & SelectionGetters & SelectionInputGetters & CollaborativeGetters & SortGetters & UIOptionsGetters & SheetUIGetters & ViewportGetters & CellPopoverPluginGetters & FilterEvaluationGetters & HeaderVisibilityIUIGetters & SplitToColumnsGetters;
4882
+ } & LocalHistoryGetters & CoreGetters & AutofillGetters & AutomaticSumGetters & ClipboardGetters & EditionGetters & EvaluationGetters & EvaluationChartGetters & EvaluationConditionalFormatGetters & FindAndReplaceGetters & HighlightGetters & CustomColorsGetters & RendererGetters & SelectionGetters & SelectionInputGetters & CollaborativeGetters & SortGetters & UIOptionsGetters & SheetUIGetters & ViewportGetters & CellPopoverPluginGetters & FilterEvaluationGetters & HeaderVisibilityIUIGetters & SplitToColumnsGetters & UIRowSizeGetters;
4867
4883
 
4868
4884
  interface HistoryChange {
4869
4885
  root: any;
@@ -5045,7 +5061,7 @@ interface ChartBuilder {
5045
5061
  sequence: number;
5046
5062
  }
5047
5063
 
5048
- interface Props$E {
5064
+ interface Props$F {
5049
5065
  ranges: () => string[];
5050
5066
  hasSingleRange?: boolean;
5051
5067
  required?: boolean;
@@ -5067,7 +5083,7 @@ interface SelectionRange extends Omit<RangeInputValue, "color"> {
5067
5083
  * onSelectionChanged is called every time the input value
5068
5084
  * changes.
5069
5085
  */
5070
- declare class SelectionInput extends Component<Props$E, SpreadsheetChildEnv> {
5086
+ declare class SelectionInput extends Component<Props$F, SpreadsheetChildEnv> {
5071
5087
  static template: string;
5072
5088
  private id;
5073
5089
  private previousRanges;
@@ -5096,22 +5112,22 @@ declare class SelectionInput extends Component<Props$E, SpreadsheetChildEnv> {
5096
5112
  confirm(): void;
5097
5113
  }
5098
5114
 
5099
- interface Props$D {
5115
+ interface Props$E {
5100
5116
  messages: string[];
5101
5117
  msgType: "warning" | "error";
5102
5118
  }
5103
- declare class SidePanelErrors extends Component<Props$D, SpreadsheetChildEnv> {
5119
+ declare class SidePanelErrors extends Component<Props$E, SpreadsheetChildEnv> {
5104
5120
  static template: string;
5105
5121
  get divClasses(): "o-sidepanel-warning text-warning" | "o-sidepanel-error text-danger";
5106
5122
  }
5107
5123
 
5108
- interface Props$C {
5124
+ interface Props$D {
5109
5125
  figureId: UID;
5110
5126
  definition: LineChartDefinition | BarChartDefinition | PieChartDefinition;
5111
5127
  canUpdateChart: (figureId: UID, definition: Partial<LineChartDefinition | BarChartDefinition | PieChartDefinition>) => DispatchResult;
5112
5128
  updateChart: (figureId: UID, definition: Partial<LineChartDefinition | BarChartDefinition | PieChartDefinition>) => DispatchResult;
5113
5129
  }
5114
- declare class LineBarPieConfigPanel extends Component<Props$C, SpreadsheetChildEnv> {
5130
+ declare class LineBarPieConfigPanel extends Component<Props$D, SpreadsheetChildEnv> {
5115
5131
  static template: string;
5116
5132
  static components: {
5117
5133
  SelectionInput: typeof SelectionInput;
@@ -5239,7 +5255,7 @@ declare class ColorPicker extends Component<ColorPickerProps, SpreadsheetChildEn
5239
5255
  isSameColor(color1: Color, color2: Color): boolean;
5240
5256
  }
5241
5257
 
5242
- interface Props$B {
5258
+ interface Props$C {
5243
5259
  currentColor: string | undefined;
5244
5260
  toggleColorPicker: () => void;
5245
5261
  showColorPicker: boolean;
@@ -5250,7 +5266,7 @@ interface Props$B {
5250
5266
  dropdownMaxHeight?: Pixel;
5251
5267
  class?: string;
5252
5268
  }
5253
- declare class ColorPickerWidget extends Component<Props$B, SpreadsheetChildEnv> {
5269
+ declare class ColorPickerWidget extends Component<Props$C, SpreadsheetChildEnv> {
5254
5270
  static template: string;
5255
5271
  static components: {
5256
5272
  ColorPicker: typeof ColorPicker;
@@ -5262,13 +5278,13 @@ declare class ColorPickerWidget extends Component<Props$B, SpreadsheetChildEnv>
5262
5278
  get colorPickerAnchorRect(): Rect;
5263
5279
  }
5264
5280
 
5265
- interface Props$A {
5281
+ interface Props$B {
5266
5282
  figureId: UID;
5267
5283
  definition: LineChartDefinition | BarChartDefinition | PieChartDefinition;
5268
5284
  canUpdateChart: (definition: Partial<LineChartDefinition | BarChartDefinition | PieChartDefinition>) => DispatchResult;
5269
5285
  updateChart: (figureId: UID, definition: Partial<LineChartDefinition | BarChartDefinition | PieChartDefinition>) => DispatchResult;
5270
5286
  }
5271
- declare class LineBarPieDesignPanel extends Component<Props$A, SpreadsheetChildEnv> {
5287
+ declare class LineBarPieDesignPanel extends Component<Props$B, SpreadsheetChildEnv> {
5272
5288
  static template: string;
5273
5289
  static components: {
5274
5290
  ColorPickerWidget: typeof ColorPickerWidget;
@@ -5282,13 +5298,13 @@ declare class LineBarPieDesignPanel extends Component<Props$A, SpreadsheetChildE
5282
5298
  updateSelect(attr: string, ev: any): void;
5283
5299
  }
5284
5300
 
5285
- interface Props$z {
5301
+ interface Props$A {
5286
5302
  figureId: UID;
5287
5303
  definition: GaugeChartDefinition;
5288
5304
  canUpdateChart: (figureId: UID, definition: Partial<GaugeChartDefinition>) => DispatchResult;
5289
5305
  updateChart: (figureId: UID, definition: Partial<GaugeChartDefinition>) => DispatchResult;
5290
5306
  }
5291
- declare class GaugeChartConfigPanel extends Component<Props$z, SpreadsheetChildEnv> {
5307
+ declare class GaugeChartConfigPanel extends Component<Props$A, SpreadsheetChildEnv> {
5292
5308
  static template: string;
5293
5309
  static components: {
5294
5310
  SelectionInput: typeof SelectionInput;
@@ -5304,13 +5320,13 @@ declare class GaugeChartConfigPanel extends Component<Props$z, SpreadsheetChildE
5304
5320
  }
5305
5321
 
5306
5322
  type GaugeMenu = "backgroundColor" | "sectionColor-lowerColor" | "sectionColor-middleColor" | "sectionColor-upperColor";
5307
- interface Props$y {
5323
+ interface Props$z {
5308
5324
  figureId: UID;
5309
5325
  definition: GaugeChartDefinition;
5310
5326
  canUpdateChart: (figureId: UID, definition: Partial<GaugeChartDefinition>) => DispatchResult;
5311
5327
  updateChart: (figureId: UID, definition: Partial<GaugeChartDefinition>) => DispatchResult;
5312
5328
  }
5313
- declare class GaugeChartDesignPanel extends Component<Props$y, SpreadsheetChildEnv> {
5329
+ declare class GaugeChartDesignPanel extends Component<Props$z, SpreadsheetChildEnv> {
5314
5330
  static template: string;
5315
5331
  static components: {
5316
5332
  ColorPickerWidget: typeof ColorPickerWidget;
@@ -5340,13 +5356,13 @@ declare class LineConfigPanel extends LineBarPieConfigPanel {
5340
5356
  onUpdateAggregated(ev: any): void;
5341
5357
  }
5342
5358
 
5343
- interface Props$x {
5359
+ interface Props$y {
5344
5360
  figureId: UID;
5345
5361
  definition: ScorecardChartDefinition;
5346
5362
  canUpdateChart: (figureId: UID, definition: Partial<ScorecardChartDefinition>) => DispatchResult;
5347
5363
  updateChart: (figureId: UID, definition: Partial<ScorecardChartDefinition>) => DispatchResult;
5348
5364
  }
5349
- declare class ScorecardChartConfigPanel extends Component<Props$x, SpreadsheetChildEnv> {
5365
+ declare class ScorecardChartConfigPanel extends Component<Props$y, SpreadsheetChildEnv> {
5350
5366
  static template: string;
5351
5367
  static components: {
5352
5368
  SelectionInput: typeof SelectionInput;
@@ -5368,13 +5384,13 @@ declare class ScorecardChartConfigPanel extends Component<Props$x, SpreadsheetCh
5368
5384
  }
5369
5385
 
5370
5386
  type ColorPickerId = undefined | "backgroundColor" | "baselineColorUp" | "baselineColorDown";
5371
- interface Props$w {
5387
+ interface Props$x {
5372
5388
  figureId: UID;
5373
5389
  definition: ScorecardChartDefinition;
5374
5390
  canUpdateChart: (figureId: UID, definition: Partial<ScorecardChartDefinition>) => DispatchResult;
5375
5391
  updateChart: (figureId: UID, definition: Partial<ScorecardChartDefinition>) => DispatchResult;
5376
5392
  }
5377
- declare class ScorecardChartDesignPanel extends Component<Props$w, SpreadsheetChildEnv> {
5393
+ declare class ScorecardChartDesignPanel extends Component<Props$x, SpreadsheetChildEnv> {
5378
5394
  static template: string;
5379
5395
  static components: {
5380
5396
  ColorPickerWidget: typeof ColorPickerWidget;
@@ -5398,7 +5414,7 @@ interface ActionSpec {
5398
5414
  * String or a function to compute the name
5399
5415
  */
5400
5416
  name: string | ((env: SpreadsheetChildEnv) => string);
5401
- description?: string;
5417
+ description?: string | ((env: SpreadsheetChildEnv) => string);
5402
5418
  /**
5403
5419
  * which represents its position inside the
5404
5420
  * menus (the lower sequence it has, the upper it is in the menu)
@@ -5423,7 +5439,7 @@ interface ActionSpec {
5423
5439
  /**
5424
5440
  * Can be defined to display an icon
5425
5441
  */
5426
- icon?: string;
5442
+ icon?: string | ((env: SpreadsheetChildEnv) => string);
5427
5443
  /**
5428
5444
  * is the action allowed when running spreadsheet in readonly mode
5429
5445
  */
@@ -5447,13 +5463,13 @@ interface ActionSpec {
5447
5463
  }
5448
5464
  interface Action {
5449
5465
  name: (env: SpreadsheetChildEnv) => string;
5450
- description: string;
5466
+ description: (env: SpreadsheetChildEnv) => string;
5451
5467
  sequence: number;
5452
5468
  id: string;
5453
5469
  isVisible: (env: SpreadsheetChildEnv) => boolean;
5454
5470
  isEnabled: (env: SpreadsheetChildEnv) => boolean;
5455
5471
  isActive?: (env: SpreadsheetChildEnv) => boolean;
5456
- icon: string;
5472
+ icon: (env: SpreadsheetChildEnv) => string;
5457
5473
  isReadonlyAllowed: boolean;
5458
5474
  execute?: (env: SpreadsheetChildEnv) => unknown;
5459
5475
  children: (env: SpreadsheetChildEnv) => Action[];
@@ -5515,10 +5531,10 @@ interface AutofillRule {
5515
5531
  sequence: number;
5516
5532
  }
5517
5533
 
5518
- interface Props$v {
5534
+ interface Props$w {
5519
5535
  figure: Figure;
5520
5536
  }
5521
- declare class ChartJsComponent extends Component<Props$v, SpreadsheetChildEnv> {
5537
+ declare class ChartJsComponent extends Component<Props$w, SpreadsheetChildEnv> {
5522
5538
  static template: string;
5523
5539
  private canvas;
5524
5540
  private chart?;
@@ -5530,10 +5546,10 @@ declare class ChartJsComponent extends Component<Props$v, SpreadsheetChildEnv> {
5530
5546
  private updateChartJs;
5531
5547
  }
5532
5548
 
5533
- interface Props$u {
5549
+ interface Props$v {
5534
5550
  figure: Figure;
5535
5551
  }
5536
- declare class ScorecardChart extends Component<Props$u, SpreadsheetChildEnv> {
5552
+ declare class ScorecardChart extends Component<Props$v, SpreadsheetChildEnv> {
5537
5553
  static template: string;
5538
5554
  private ctx;
5539
5555
  get runtime(): ScorecardChartRuntime;
@@ -5565,7 +5581,7 @@ declare class ScorecardChart extends Component<Props$u, SpreadsheetChildEnv> {
5565
5581
  }
5566
5582
 
5567
5583
  type MenuItemOrSeparator = Action | "separator";
5568
- interface Props$t {
5584
+ interface Props$u {
5569
5585
  position: DOMCoordinates;
5570
5586
  menuItems: Action[];
5571
5587
  depth: number;
@@ -5581,7 +5597,7 @@ interface MenuState {
5581
5597
  scrollOffset?: Pixel;
5582
5598
  menuItems: Action[];
5583
5599
  }
5584
- declare class Menu extends Component<Props$t, SpreadsheetChildEnv> {
5600
+ declare class Menu extends Component<Props$u, SpreadsheetChildEnv> {
5585
5601
  static template: string;
5586
5602
  static components: {
5587
5603
  Menu: typeof Menu;
@@ -5619,14 +5635,14 @@ declare class Menu extends Component<Props$t, SpreadsheetChildEnv> {
5619
5635
  }
5620
5636
 
5621
5637
  type ResizeAnchor = "top left" | "top" | "top right" | "right" | "bottom right" | "bottom" | "bottom left" | "left";
5622
- interface Props$s {
5638
+ interface Props$t {
5623
5639
  figure: Figure;
5624
5640
  style: string;
5625
5641
  onFigureDeleted: () => void;
5626
5642
  onMouseDown: (ev: MouseEvent) => void;
5627
5643
  onClickAnchor(dirX: ResizeDirection, dirY: ResizeDirection, ev: MouseEvent): void;
5628
5644
  }
5629
- declare class FigureComponent extends Component<Props$s, SpreadsheetChildEnv> {
5645
+ declare class FigureComponent extends Component<Props$t, SpreadsheetChildEnv> {
5630
5646
  static template: string;
5631
5647
  static components: {
5632
5648
  Menu: typeof Menu;
@@ -5656,11 +5672,11 @@ declare class FigureComponent extends Component<Props$s, SpreadsheetChildEnv> {
5656
5672
  private openContextMenu;
5657
5673
  }
5658
5674
 
5659
- interface Props$r {
5675
+ interface Props$s {
5660
5676
  figure: Figure;
5661
5677
  onFigureDeleted: () => void;
5662
5678
  }
5663
- declare class ChartFigure extends Component<Props$r, SpreadsheetChildEnv> {
5679
+ declare class ChartFigure extends Component<Props$s, SpreadsheetChildEnv> {
5664
5680
  static template: string;
5665
5681
  static components: {};
5666
5682
  onDoubleClick(): void;
@@ -5668,7 +5684,7 @@ declare class ChartFigure extends Component<Props$r, SpreadsheetChildEnv> {
5668
5684
  get chartComponent(): new (...args: any) => Component;
5669
5685
  }
5670
5686
 
5671
- interface Props$q {
5687
+ interface Props$r {
5672
5688
  isVisible: boolean;
5673
5689
  position: Position;
5674
5690
  }
@@ -5680,7 +5696,7 @@ interface State$5 {
5680
5696
  position: Position;
5681
5697
  handler: boolean;
5682
5698
  }
5683
- declare class Autofill extends Component<Props$q, SpreadsheetChildEnv> {
5699
+ declare class Autofill extends Component<Props$r, SpreadsheetChildEnv> {
5684
5700
  static template: string;
5685
5701
  state: State$5;
5686
5702
  get style(): string;
@@ -5754,13 +5770,13 @@ declare class Ripple extends Component<RippleProps, SpreadsheetChildEnv> {
5754
5770
  getRippleEffectProps(id: number): RippleEffectProps;
5755
5771
  }
5756
5772
 
5757
- interface Props$p {
5773
+ interface Props$q {
5758
5774
  sheetId: string;
5759
5775
  openContextMenu: (registry: MenuItemRegistry, ev: MouseEvent) => void;
5760
5776
  style?: string;
5761
5777
  onMouseDown: (ev: MouseEvent) => void;
5762
5778
  }
5763
- declare class BottomBarSheet extends Component<Props$p, SpreadsheetChildEnv> {
5779
+ declare class BottomBarSheet extends Component<Props$q, SpreadsheetChildEnv> {
5764
5780
  static template: string;
5765
5781
  static components: {
5766
5782
  Ripple: typeof Ripple;
@@ -5794,11 +5810,11 @@ declare class BottomBarSheet extends Component<Props$p, SpreadsheetChildEnv> {
5794
5810
  get sheetName(): string;
5795
5811
  }
5796
5812
 
5797
- interface Props$o {
5813
+ interface Props$p {
5798
5814
  openContextMenu: (x: number, y: number, registry: MenuItemRegistry) => void;
5799
5815
  closeContextMenu: () => void;
5800
5816
  }
5801
- declare class BottomBarStatistic extends Component<Props$o, SpreadsheetChildEnv> {
5817
+ declare class BottomBarStatistic extends Component<Props$p, SpreadsheetChildEnv> {
5802
5818
  static template: string;
5803
5819
  static components: {
5804
5820
  Ripple: typeof Ripple;
@@ -5820,13 +5836,13 @@ interface SheetState {
5820
5836
  isDnd: boolean;
5821
5837
  sheetDndPositions: Record<UID, number> | undefined;
5822
5838
  }
5823
- interface Props$n {
5839
+ interface Props$o {
5824
5840
  onClick: () => void;
5825
5841
  }
5826
5842
  interface BottomBarMenuState extends MenuState {
5827
5843
  menuId: UID | undefined;
5828
5844
  }
5829
- declare class BottomBar extends Component<Props$n, SpreadsheetChildEnv> {
5845
+ declare class BottomBar extends Component<Props$o, SpreadsheetChildEnv> {
5830
5846
  static template: string;
5831
5847
  static components: {
5832
5848
  Menu: typeof Menu;
@@ -5869,21 +5885,21 @@ declare class BottomBar extends Component<Props$n, SpreadsheetChildEnv> {
5869
5885
  get sheetListMaxScroll(): number;
5870
5886
  }
5871
5887
 
5872
- interface Props$m {
5888
+ interface Props$n {
5873
5889
  position: DOMCoordinates;
5874
5890
  isActive: boolean;
5875
5891
  onClick: () => void;
5876
5892
  }
5877
- declare class FilterIcon extends Component<Props$m, SpreadsheetEnv> {
5893
+ declare class FilterIcon extends Component<Props$n, SpreadsheetEnv> {
5878
5894
  static style: string;
5879
5895
  static template: string;
5880
5896
  get style(): string;
5881
5897
  }
5882
5898
 
5883
- interface Props$l {
5899
+ interface Props$m {
5884
5900
  gridPosition: DOMCoordinates;
5885
5901
  }
5886
- declare class FilterIconsOverlay extends Component<Props$l, SpreadsheetChildEnv> {
5902
+ declare class FilterIconsOverlay extends Component<Props$m, SpreadsheetChildEnv> {
5887
5903
  static style: string;
5888
5904
  static template: string;
5889
5905
  static components: {
@@ -5913,7 +5929,7 @@ interface SnapLine<T extends HFigureAxisType | VFigureAxisType> {
5913
5929
  }
5914
5930
 
5915
5931
  type ContainerType = "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "dnd";
5916
- interface Props$k {
5932
+ interface Props$l {
5917
5933
  onFigureDeleted: () => void;
5918
5934
  }
5919
5935
  interface Container {
@@ -5992,7 +6008,7 @@ interface DndState {
5992
6008
  * that occurred during the drag & drop, and to position the figure on the correct pane.
5993
6009
  *
5994
6010
  */
5995
- declare class FiguresContainer extends Component<Props$k, SpreadsheetChildEnv> {
6011
+ declare class FiguresContainer extends Component<Props$l, SpreadsheetChildEnv> {
5996
6012
  static template: string;
5997
6013
  static components: {
5998
6014
  FigureComponent: typeof FigureComponent;
@@ -6024,7 +6040,7 @@ declare class FiguresContainer extends Component<Props$k, SpreadsheetChildEnv> {
6024
6040
  private getSnapLineStyle;
6025
6041
  }
6026
6042
 
6027
- interface Props$j {
6043
+ interface Props$k {
6028
6044
  onCellHovered: (position: Partial<Position$1>) => void;
6029
6045
  onCellDoubleClicked: (col: HeaderIndex, row: HeaderIndex) => void;
6030
6046
  onCellClicked: (col: HeaderIndex, row: HeaderIndex, modifiers: {
@@ -6037,7 +6053,7 @@ interface Props$j {
6037
6053
  gridOverlayDimensions: string;
6038
6054
  onFigureDeleted: () => void;
6039
6055
  }
6040
- declare class GridOverlay extends Component<Props$j, SpreadsheetChildEnv> {
6056
+ declare class GridOverlay extends Component<Props$k, SpreadsheetChildEnv> {
6041
6057
  static template: string;
6042
6058
  static components: {
6043
6059
  FiguresContainer: typeof FiguresContainer;
@@ -6053,19 +6069,21 @@ declare class GridOverlay extends Component<Props$j, SpreadsheetChildEnv> {
6053
6069
  private gridOverlay;
6054
6070
  setup(): void;
6055
6071
  get gridOverlayEl(): HTMLElement;
6072
+ get style(): string;
6073
+ get isPaintingFormat(): boolean;
6056
6074
  onMouseDown(ev: MouseEvent): void;
6057
6075
  onDoubleClick(ev: MouseEvent): void;
6058
6076
  onContextMenu(ev: MouseEvent): void;
6059
6077
  private getCartesianCoordinates;
6060
6078
  }
6061
6079
 
6062
- interface Props$i {
6080
+ interface Props$j {
6063
6081
  hoveredCell: Partial<Position$1>;
6064
6082
  gridRect: Rect;
6065
6083
  onClosePopover: () => void;
6066
6084
  onMouseWheel: (ev: WheelEvent) => void;
6067
6085
  }
6068
- declare class GridPopover extends Component<Props$i, SpreadsheetChildEnv> {
6086
+ declare class GridPopover extends Component<Props$j, SpreadsheetChildEnv> {
6069
6087
  static template: string;
6070
6088
  static components: {
6071
6089
  Popover: typeof Popover;
@@ -6076,7 +6094,7 @@ declare class GridPopover extends Component<Props$i, SpreadsheetChildEnv> {
6076
6094
 
6077
6095
  type ScrollDirection = "horizontal" | "vertical";
6078
6096
 
6079
- interface Props$h {
6097
+ interface Props$i {
6080
6098
  width: Pixel;
6081
6099
  height: Pixel;
6082
6100
  direction: ScrollDirection;
@@ -6084,7 +6102,7 @@ interface Props$h {
6084
6102
  offset: Pixel;
6085
6103
  onScroll: (offset: Pixel) => void;
6086
6104
  }
6087
- declare class ScrollBar extends Component<Props$h> {
6105
+ declare class ScrollBar extends Component<Props$i> {
6088
6106
  static template: string;
6089
6107
  static defaultProps: {
6090
6108
  width: number;
@@ -6098,10 +6116,10 @@ declare class ScrollBar extends Component<Props$h> {
6098
6116
  onScroll(ev: any): void;
6099
6117
  }
6100
6118
 
6101
- interface Props$g {
6119
+ interface Props$h {
6102
6120
  leftOffset: number;
6103
6121
  }
6104
- declare class HorizontalScrollBar extends Component<Props$g, SpreadsheetChildEnv> {
6122
+ declare class HorizontalScrollBar extends Component<Props$h, SpreadsheetChildEnv> {
6105
6123
  static components: {
6106
6124
  ScrollBar: typeof ScrollBar;
6107
6125
  };
@@ -6121,10 +6139,10 @@ declare class HorizontalScrollBar extends Component<Props$g, SpreadsheetChildEnv
6121
6139
  onScroll(offset: any): void;
6122
6140
  }
6123
6141
 
6124
- interface Props$f {
6142
+ interface Props$g {
6125
6143
  topOffset: number;
6126
6144
  }
6127
- declare class VerticalScrollBar extends Component<Props$f, SpreadsheetChildEnv> {
6145
+ declare class VerticalScrollBar extends Component<Props$g, SpreadsheetChildEnv> {
6128
6146
  static components: {
6129
6147
  ScrollBar: typeof ScrollBar;
6130
6148
  };
@@ -6144,7 +6162,7 @@ declare class VerticalScrollBar extends Component<Props$f, SpreadsheetChildEnv>
6144
6162
  onScroll(offset: any): void;
6145
6163
  }
6146
6164
 
6147
- interface Props$e {
6165
+ interface Props$f {
6148
6166
  }
6149
6167
  interface ClickableCell {
6150
6168
  coordinates: Rect;
@@ -6152,7 +6170,7 @@ interface ClickableCell {
6152
6170
  action: (position: CellPosition, env: SpreadsheetChildEnv) => void;
6153
6171
  tKey: string;
6154
6172
  }
6155
- declare class SpreadsheetDashboard extends Component<Props$e, SpreadsheetChildEnv> {
6173
+ declare class SpreadsheetDashboard extends Component<Props$f, SpreadsheetChildEnv> {
6156
6174
  static template: string;
6157
6175
  static components: {
6158
6176
  GridOverlay: typeof GridOverlay;
@@ -6188,7 +6206,7 @@ declare class SpreadsheetDashboard extends Component<Props$e, SpreadsheetChildEn
6188
6206
  private getGridRect;
6189
6207
  }
6190
6208
 
6191
- interface Props$d {
6209
+ interface Props$e {
6192
6210
  component: string;
6193
6211
  panelProps: any;
6194
6212
  onCloseSidePanel: () => void;
@@ -6196,7 +6214,7 @@ interface Props$d {
6196
6214
  interface State$4 {
6197
6215
  panel: SidePanelContent;
6198
6216
  }
6199
- declare class SidePanel extends Component<Props$d, SpreadsheetChildEnv> {
6217
+ declare class SidePanel extends Component<Props$e, SpreadsheetChildEnv> {
6200
6218
  static template: string;
6201
6219
  state: State$4;
6202
6220
  setup(): void;
@@ -6296,6 +6314,7 @@ declare const formatAlignmentVertical: ActionSpec;
6296
6314
  declare const formatAlignmentTop: ActionSpec;
6297
6315
  declare const formatAlignmentMiddle: ActionSpec;
6298
6316
  declare const formatAlignmentBottom: ActionSpec;
6317
+ declare const formatWrappingIcon: ActionSpec;
6299
6318
  declare const formatWrapping: ActionSpec;
6300
6319
  declare const formatWrappingOverflow: ActionSpec;
6301
6320
  declare const formatWrappingWrap: ActionSpec;
@@ -6303,7 +6322,6 @@ declare const formatWrappingClip: ActionSpec;
6303
6322
  declare const textColor: ActionSpec;
6304
6323
  declare const fillColor: ActionSpec;
6305
6324
  declare const formatCF: ActionSpec;
6306
- declare const paintFormat: ActionSpec;
6307
6325
  declare const clearFormat: ActionSpec;
6308
6326
 
6309
6327
  declare const ACTION_FORMAT_formatNumberAutomatic: typeof formatNumberAutomatic;
@@ -6333,6 +6351,7 @@ declare const ACTION_FORMAT_formatAlignmentVertical: typeof formatAlignmentVerti
6333
6351
  declare const ACTION_FORMAT_formatAlignmentTop: typeof formatAlignmentTop;
6334
6352
  declare const ACTION_FORMAT_formatAlignmentMiddle: typeof formatAlignmentMiddle;
6335
6353
  declare const ACTION_FORMAT_formatAlignmentBottom: typeof formatAlignmentBottom;
6354
+ declare const ACTION_FORMAT_formatWrappingIcon: typeof formatWrappingIcon;
6336
6355
  declare const ACTION_FORMAT_formatWrapping: typeof formatWrapping;
6337
6356
  declare const ACTION_FORMAT_formatWrappingOverflow: typeof formatWrappingOverflow;
6338
6357
  declare const ACTION_FORMAT_formatWrappingWrap: typeof formatWrappingWrap;
@@ -6340,7 +6359,6 @@ declare const ACTION_FORMAT_formatWrappingClip: typeof formatWrappingClip;
6340
6359
  declare const ACTION_FORMAT_textColor: typeof textColor;
6341
6360
  declare const ACTION_FORMAT_fillColor: typeof fillColor;
6342
6361
  declare const ACTION_FORMAT_formatCF: typeof formatCF;
6343
- declare const ACTION_FORMAT_paintFormat: typeof paintFormat;
6344
6362
  declare const ACTION_FORMAT_clearFormat: typeof clearFormat;
6345
6363
  declare namespace ACTION_FORMAT {
6346
6364
  export {
@@ -6371,6 +6389,7 @@ declare namespace ACTION_FORMAT {
6371
6389
  ACTION_FORMAT_formatAlignmentTop as formatAlignmentTop,
6372
6390
  ACTION_FORMAT_formatAlignmentMiddle as formatAlignmentMiddle,
6373
6391
  ACTION_FORMAT_formatAlignmentBottom as formatAlignmentBottom,
6392
+ ACTION_FORMAT_formatWrappingIcon as formatWrappingIcon,
6374
6393
  ACTION_FORMAT_formatWrapping as formatWrapping,
6375
6394
  ACTION_FORMAT_formatWrappingOverflow as formatWrappingOverflow,
6376
6395
  ACTION_FORMAT_formatWrappingWrap as formatWrappingWrap,
@@ -6378,7 +6397,6 @@ declare namespace ACTION_FORMAT {
6378
6397
  ACTION_FORMAT_textColor as textColor,
6379
6398
  ACTION_FORMAT_fillColor as fillColor,
6380
6399
  ACTION_FORMAT_formatCF as formatCF,
6381
- ACTION_FORMAT_paintFormat as paintFormat,
6382
6400
  ACTION_FORMAT_clearFormat as clearFormat,
6383
6401
  };
6384
6402
  }
@@ -6446,14 +6464,14 @@ declare namespace ACTION_VIEW {
6446
6464
  };
6447
6465
  }
6448
6466
 
6449
- interface Props$c {
6467
+ interface Props$d {
6450
6468
  action: ActionSpec;
6451
6469
  hasTriangleDownIcon?: boolean;
6452
6470
  selectedColor?: string;
6453
6471
  class?: string;
6454
6472
  onClick?: (ev: MouseEvent) => void;
6455
6473
  }
6456
- declare class ActionButton extends Component<Props$c, SpreadsheetChildEnv> {
6474
+ declare class ActionButton extends Component<Props$d, SpreadsheetChildEnv> {
6457
6475
  static template: string;
6458
6476
  private actionButton;
6459
6477
  setup(): void;
@@ -6503,7 +6521,7 @@ declare class BorderEditor extends Component<BorderEditorProps, SpreadsheetChild
6503
6521
  get lineStylePickerAnchorRect(): Rect;
6504
6522
  }
6505
6523
 
6506
- interface Props$b {
6524
+ interface Props$c {
6507
6525
  toggleBorderEditor: () => void;
6508
6526
  showBorderEditor: boolean;
6509
6527
  disabled?: boolean;
@@ -6515,7 +6533,7 @@ interface State$2 {
6515
6533
  currentStyle: BorderStyle;
6516
6534
  currentPosition: BorderPosition | undefined;
6517
6535
  }
6518
- declare class BorderEditorWidget extends Component<Props$b, SpreadsheetChildEnv> {
6536
+ declare class BorderEditorWidget extends Component<Props$c, SpreadsheetChildEnv> {
6519
6537
  static template: string;
6520
6538
  static components: {
6521
6539
  BorderEditor: typeof BorderEditor;
@@ -6531,12 +6549,12 @@ declare class BorderEditorWidget extends Component<Props$b, SpreadsheetChildEnv>
6531
6549
  private updateBorder;
6532
6550
  }
6533
6551
 
6534
- interface Props$a {
6552
+ interface Props$b {
6535
6553
  values: AutocompleteValue[];
6536
6554
  selectedIndex: number;
6537
6555
  onValueSelected: (value: string) => void;
6538
6556
  }
6539
- declare class TextValueProvider extends Component<Props$a> {
6557
+ declare class TextValueProvider extends Component<Props$b> {
6540
6558
  static template: string;
6541
6559
  }
6542
6560
 
@@ -6600,7 +6618,7 @@ declare class ContentEditableHelper {
6600
6618
  getText(): string;
6601
6619
  }
6602
6620
 
6603
- interface Props$9 {
6621
+ interface Props$a {
6604
6622
  functionName: string;
6605
6623
  functionDescription: FunctionDescription;
6606
6624
  argToFocus: number;
@@ -6608,12 +6626,12 @@ interface Props$9 {
6608
6626
  interface AssistantState {
6609
6627
  allowCellSelectionBehind: boolean;
6610
6628
  }
6611
- declare class FunctionDescriptionProvider extends Component<Props$9> {
6629
+ declare class FunctionDescriptionProvider extends Component<Props$a> {
6612
6630
  static template: string;
6613
6631
  assistantState: AssistantState;
6614
6632
  private timeOutId;
6615
6633
  setup(): void;
6616
- getContext(): Props$9;
6634
+ getContext(): Props$a;
6617
6635
  onMouseMove(): void;
6618
6636
  }
6619
6637
 
@@ -6723,11 +6741,11 @@ declare class Composer extends Component<ComposerProps, SpreadsheetChildEnv> {
6723
6741
  private autoComplete;
6724
6742
  }
6725
6743
 
6726
- interface Props$8 {
6744
+ interface Props$9 {
6727
6745
  focus: ComposerFocusType;
6728
6746
  onComposerContentFocused: (selection: ComposerSelection) => void;
6729
6747
  }
6730
- declare class TopBarComposer extends Component<Props$8, SpreadsheetChildEnv> {
6748
+ declare class TopBarComposer extends Component<Props$9, SpreadsheetChildEnv> {
6731
6749
  static template: string;
6732
6750
  static components: {
6733
6751
  Composer: typeof Composer;
@@ -6739,12 +6757,12 @@ declare class TopBarComposer extends Component<Props$8, SpreadsheetChildEnv> {
6739
6757
  interface State$1 {
6740
6758
  isOpen: boolean;
6741
6759
  }
6742
- interface Props$7 {
6760
+ interface Props$8 {
6743
6761
  onToggle: () => void;
6744
6762
  dropdownStyle: string;
6745
6763
  class: string;
6746
6764
  }
6747
- declare class FontSizeEditor extends Component<Props$7, SpreadsheetChildEnv> {
6765
+ declare class FontSizeEditor extends Component<Props$8, SpreadsheetChildEnv> {
6748
6766
  static template: string;
6749
6767
  static components: {};
6750
6768
  fontSizes: number[];
@@ -6763,6 +6781,16 @@ declare class FontSizeEditor extends Component<Props$7, SpreadsheetChildEnv> {
6763
6781
  onInputKeydown(ev: KeyboardEvent): void;
6764
6782
  }
6765
6783
 
6784
+ interface Props$7 {
6785
+ class?: string;
6786
+ }
6787
+ declare class PaintFormatButton extends Component<Props$7, SpreadsheetChildEnv> {
6788
+ static template: string;
6789
+ get isActive(): boolean;
6790
+ onDblClick(): void;
6791
+ togglePaintFormat(): void;
6792
+ }
6793
+
6766
6794
  interface State {
6767
6795
  menuState: MenuState;
6768
6796
  activeTool: string;
@@ -6785,6 +6813,7 @@ declare class TopBar extends Component<Props$6, SpreadsheetChildEnv> {
6785
6813
  TopBarComposer: typeof TopBarComposer;
6786
6814
  FontSizeEditor: typeof FontSizeEditor;
6787
6815
  ActionButton: typeof ActionButton;
6816
+ PaintFormatButton: typeof PaintFormatButton;
6788
6817
  BorderEditorWidget: typeof BorderEditorWidget;
6789
6818
  };
6790
6819
  state: State;
@@ -7272,6 +7301,7 @@ declare const helpers: {
7272
7301
  numberToLetters: typeof numberToLetters;
7273
7302
  UuidGenerator: typeof UuidGenerator;
7274
7303
  formatValue: typeof formatValue;
7304
+ createCurrencyFormat: typeof createCurrencyFormat;
7275
7305
  computeTextWidth: typeof computeTextWidth;
7276
7306
  createEmptyWorkbookData: typeof createEmptyWorkbookData;
7277
7307
  createEmptySheet: typeof createEmptySheet;