@odoo/o-spreadsheet 16.1.0 → 16.2.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.
@@ -83,11 +83,11 @@ interface ASTFuncall extends ASTBase {
83
83
  value: string;
84
84
  args: AST[];
85
85
  }
86
- interface ASTUnknown extends ASTBase {
87
- type: "UNKNOWN";
88
- value: string;
86
+ interface ASTEmpty extends ASTBase {
87
+ type: "EMPTY";
88
+ value: "";
89
89
  }
90
- declare type AST = ASTOperation | ASTUnaryOperation | ASTFuncall | ASTNumber | ASTBoolean | ASTString | ASTReference | ASTUnknown;
90
+ declare type AST = ASTOperation | ASTUnaryOperation | ASTFuncall | ASTNumber | ASTBoolean | ASTString | ASTReference | ASTEmpty;
91
91
  /**
92
92
  * Parse an expression (as a string) into an AST.
93
93
  */
@@ -222,6 +222,10 @@ declare function parseMarkdownLink(str: string): {
222
222
  * const foo: number[] = [1, 2, undefined, 4].filter(isDefined)
223
223
  */
224
224
  declare function isDefined<T>(argument: T | undefined): argument is T;
225
+ /**
226
+ * Lazy value computed by the provided function.
227
+ */
228
+ declare function lazy<T>(fn: (() => T) | T): Lazy<T>;
225
229
 
226
230
  interface ConstructorArgs {
227
231
  readonly zone: Readonly<Zone | UnboundedZone>;
@@ -307,13 +311,15 @@ interface ZonesSelected extends SelectionEventPayload {
307
311
  interface HeadersSelected extends SelectionEventPayload {
308
312
  type: "HeadersSelected";
309
313
  }
310
- interface AlterZoneCorner extends SelectionEventPayload {
311
- type: "AlterZoneCorner";
314
+ interface AlterZone extends SelectionEventPayload {
315
+ type: "AlterZone";
312
316
  }
313
- declare type SelectionEvent = Readonly<ZonesSelected | HeadersSelected | AlterZoneCorner>;
317
+ declare type SelectionEvent = Readonly<ZonesSelected | HeadersSelected | AlterZone>;
314
318
 
315
319
  interface StreamCallbacks<Event> {
316
320
  handleEvent: (event: Event) => void;
321
+ /** this callback will only be called when another consumer captures the stream,
322
+ * not when the current consumer decides to release itself */
317
323
  release?: () => void;
318
324
  }
319
325
 
@@ -324,6 +330,7 @@ declare type StatefulStream<Event, State> = {
324
330
  resetAnchor: (owner: unknown, state: State) => void;
325
331
  observe: (owner: unknown, callbacks: StreamCallbacks<Event>) => void;
326
332
  release: (owner: unknown) => void;
333
+ getBackToDefault(): void;
327
334
  };
328
335
  /**
329
336
  * Allows to select cells in the grid and update the selection
@@ -341,134 +348,7 @@ interface SelectionProcessor {
341
348
  loopSelection(): DispatchResult;
342
349
  selectTableAroundSelection(): DispatchResult;
343
350
  }
344
- /**
345
- * Processes all selection updates (usually from user inputs) and emits an event
346
- * with the new selected anchor
347
- */
348
- declare class SelectionStreamProcessor implements SelectionProcessor, StatefulStream<SelectionEvent, AnchorZone> {
349
- private getters;
350
- private stream;
351
- /**
352
- * "Active" anchor used as a reference to compute new anchors
353
- * An new initial value is given each time the stream is
354
- * captured. The value is updated with each new anchor.
355
- */
356
- private anchor;
357
- private defaultAnchor;
358
- constructor(getters: Getters);
359
- capture(owner: unknown, anchor: AnchorZone, callbacks: StreamCallbacks<SelectionEvent>): void;
360
- /**
361
- * Register as default subscriber and capture the event stream.
362
- */
363
- registerAsDefault(owner: unknown, anchor: AnchorZone, callbacks: StreamCallbacks<SelectionEvent>): void;
364
- resetDefaultAnchor(owner: unknown, anchor: AnchorZone): void;
365
- resetAnchor(owner: unknown, anchor: AnchorZone): void;
366
- observe(owner: unknown, callbacks: StreamCallbacks<SelectionEvent>): void;
367
- release(owner: unknown): void;
368
- getBackToDefault(): void;
369
- /**
370
- * Select a new anchor
371
- */
372
- selectZone(anchor: AnchorZone, mode?: SelectionEvent["mode"]): DispatchResult;
373
- /**
374
- * Select a single cell as the new anchor.
375
- */
376
- selectCell(col: HeaderIndex, row: HeaderIndex): DispatchResult;
377
- /**
378
- * Set the selection to one of the cells adjacent to the current anchor cell.
379
- */
380
- moveAnchorCell(direction: SelectionDirection, step?: SelectionStep): DispatchResult;
381
- /**
382
- * Update the current anchor such that it includes the given
383
- * cell position.
384
- */
385
- setAnchorCorner(col: HeaderIndex, row: HeaderIndex): DispatchResult;
386
- /**
387
- * Add a new cell to the current selection
388
- */
389
- addCellToSelection(col: HeaderIndex, row: HeaderIndex): DispatchResult;
390
- /**
391
- * Increase or decrease the size of the current anchor zone.
392
- * The anchor cell remains where it is. It's the opposite side
393
- * of the anchor zone which moves.
394
- */
395
- resizeAnchorZone(direction: SelectionDirection, step?: SelectionStep): DispatchResult;
396
- selectColumn(index: HeaderIndex, mode: SelectionEvent["mode"]): DispatchResult;
397
- selectRow(index: HeaderIndex, mode: SelectionEvent["mode"]): DispatchResult;
398
- /**
399
- * Loop the current selection while keeping the same anchor. The selection will loop through:
400
- * 1) the smallest zone that contain the anchor and that have only empty cells bordering it
401
- * 2) the whole sheet
402
- * 3) the anchor cell
403
- */
404
- loopSelection(): DispatchResult;
405
- /**
406
- * Select a "table" around the current selection.
407
- * We define a table by the smallest zone that contain the anchor and that have only empty
408
- * cells bordering it
409
- */
410
- selectTableAroundSelection(): DispatchResult;
411
- /**
412
- * Select the entire sheet
413
- */
414
- selectAll(): DispatchResult;
415
- /**
416
- * Process a new anchor selection event. If the new anchor is inside
417
- * the sheet boundaries, the event is pushed to the event stream to
418
- * be processed.
419
- */
420
- private processEvent;
421
- private checkEventAnchorZone;
422
- private checkAnchorZone;
423
- private checkAnchorZoneOrThrow;
424
- /**
425
- * ---- PRIVATE ----
426
- */
427
- /** Computes the next cell position in the direction of deltaX and deltaY
428
- * by crossing through merges and skipping hidden cells.
429
- * Note that the resulting position might be out of the sheet, it needs to be validated.
430
- */
431
- private getNextAvailablePosition;
432
- private getNextAvailableCol;
433
- private getNextAvailableRow;
434
- private getNextAvailableHeader;
435
- /**
436
- * Finds a visible cell in the currently selected zone starting with the anchor.
437
- * If the anchor is hidden, browses from left to right and top to bottom to
438
- * find a visible cell.
439
- */
440
- private getReferencePosition;
441
- private deltaToTarget;
442
- private getStartingPosition;
443
- /**
444
- * Given a starting position, compute the end of the cluster containing the position in the given
445
- * direction or the start of the next cluster. We define cluster here as side-by-side cells that
446
- * all have a content.
447
- *
448
- * We will return the end of the cluster if the given cell is inside a cluster, and the start of the
449
- * next cluster if the given cell is outside a cluster or at the border of a cluster in the given direction.
450
- */
451
- private getEndOfCluster;
452
- /**
453
- * Check if a cell is empty or undefined in the model. If the cell is part of a merge,
454
- * check if the merge containing the cell is empty.
455
- */
456
- private isCellEmpty;
457
- /** Computes the next cell position in the given direction by crossing through merges and skipping hidden cells.
458
- *
459
- * This has the same behaviour as getNextAvailablePosition() for certain arguments, but use this method instead
460
- * inside directionToDelta(), which is called in getNextAvailablePosition(), to avoid possible infinite
461
- * recursion.
462
- */
463
- private getNextCellPosition;
464
- private getPosition;
465
- /**
466
- * Expand the given zone to a table.
467
- * We define a table by the smallest zone that contain the anchor and that have only empty
468
- * cells bordering it
469
- */
470
- private expandZoneToTable;
471
- }
351
+ declare type SelectionStreamProcessor = SelectionProcessor & StatefulStream<SelectionEvent, AnchorZone>;
472
352
 
473
353
  interface XLSXExportFile {
474
354
  path: string;
@@ -1373,7 +1253,7 @@ interface ComposerSelection {
1373
1253
  end: number;
1374
1254
  }
1375
1255
  declare class EditionPlugin extends UIPlugin {
1376
- static getters: readonly ["getEditionMode", "isSelectingForComposer", "showSelectionIndicator", "getCurrentContent", "getEditionSheet", "getComposerSelection", "getCurrentTokens", "getTokenAtCursor", "getComposerHighlights"];
1256
+ static getters: readonly ["getEditionMode", "isSelectingForComposer", "showSelectionIndicator", "getCurrentContent", "getEditionSheet", "getComposerSelection", "getCurrentTokens", "getTokenAtCursor", "getComposerHighlights", "getCurrentEditedCell"];
1377
1257
  private col;
1378
1258
  private row;
1379
1259
  private mode;
@@ -1390,11 +1270,11 @@ declare class EditionPlugin extends UIPlugin {
1390
1270
  allowDispatch(cmd: Command): CommandResult;
1391
1271
  private handleEvent;
1392
1272
  handle(cmd: Command): void;
1393
- unsubscribe(): void;
1394
1273
  getEditionMode(): EditionMode;
1395
1274
  getCurrentContent(): string;
1396
1275
  getEditionSheet(): string;
1397
1276
  getComposerSelection(): ComposerSelection;
1277
+ getCurrentEditedCell(): CellPosition;
1398
1278
  isSelectingForComposer(): boolean;
1399
1279
  showSelectionIndicator(): boolean;
1400
1280
  getCurrentTokens(): EnrichedToken[];
@@ -1686,7 +1566,7 @@ interface DuplicateSheetCommand extends SheetDependentCommand {
1686
1566
  }
1687
1567
  interface MoveSheetCommand extends SheetDependentCommand {
1688
1568
  type: "MOVE_SHEET";
1689
- direction: "left" | "right";
1569
+ delta: number;
1690
1570
  }
1691
1571
  interface RenameSheetCommand extends SheetDependentCommand {
1692
1572
  type: "RENAME_SHEET";
@@ -2490,7 +2370,7 @@ interface Lazy<T> {
2490
2370
  interface Cloneable<T> {
2491
2371
  clone: (args?: Partial<T>) => T;
2492
2372
  }
2493
- declare type CSSProperties<P extends string = string> = Record<P, string>;
2373
+ declare type CSSProperties<P extends string = string> = Record<P, string | undefined>;
2494
2374
  interface SortOptions {
2495
2375
  /** If true sort the headers of the range along with the rest */
2496
2376
  sortHeaders?: boolean;
@@ -2581,6 +2461,13 @@ interface IncrementModifier {
2581
2461
  increment: number;
2582
2462
  current: number;
2583
2463
  }
2464
+ interface AlphanumericIncrementModifier {
2465
+ type: "ALPHANUMERIC_INCREMENT_MODIFIER";
2466
+ increment: number;
2467
+ current: number;
2468
+ prefix: string;
2469
+ numberPostfixLength: number;
2470
+ }
2584
2471
  interface CopyModifier {
2585
2472
  type: "COPY_MODIFIER";
2586
2473
  }
@@ -2589,7 +2476,7 @@ interface FormulaModifier {
2589
2476
  increment: number;
2590
2477
  current: number;
2591
2478
  }
2592
- declare type AutofillModifier = IncrementModifier | CopyModifier | FormulaModifier;
2479
+ declare type AutofillModifier = IncrementModifier | AlphanumericIncrementModifier | CopyModifier | FormulaModifier;
2593
2480
  interface Tooltip {
2594
2481
  props: any;
2595
2482
  component?: any;
@@ -2661,7 +2548,7 @@ interface InformationNotification {
2661
2548
  }
2662
2549
  interface SpreadsheetEnv {
2663
2550
  notifyUser: (notification: InformationNotification) => any;
2664
- raiseError: (text: string) => any;
2551
+ raiseError: (text: string, callback?: () => void) => any;
2665
2552
  askConfirmation: (content: string, confirm: () => any, cancel?: () => any) => any;
2666
2553
  editText: (title: string, callback: (text: string | null) => any, options?: EditTextOptions) => any;
2667
2554
  }
@@ -2673,6 +2560,7 @@ interface SpreadsheetChildEnv extends SpreadsheetEnv {
2673
2560
  toggleSidePanel: (panel: string, panelProps?: any) => void;
2674
2561
  clipboard: ClipboardInterface;
2675
2562
  _t: TranslationFunction;
2563
+ startCellEdition: (content: string) => void;
2676
2564
  loadCurrencies?: () => Promise<Currency[]>;
2677
2565
  }
2678
2566
 
@@ -2697,6 +2585,7 @@ interface AddFunctionDescription {
2697
2585
  args: ArgDefinition[];
2698
2586
  returns: [ArgType];
2699
2587
  isExported?: boolean;
2588
+ hidden?: boolean;
2700
2589
  }
2701
2590
  interface FunctionDescription extends AddFunctionDescription {
2702
2591
  minArgRequired: number;
@@ -3604,13 +3493,13 @@ declare class MergePlugin extends CorePlugin<MergeState> implements MergeState {
3604
3493
  exportForExcel(data: ExcelWorkbookData): void;
3605
3494
  }
3606
3495
 
3607
- interface SheetState {
3496
+ interface SheetState$1 {
3608
3497
  readonly sheets: Record<UID, Sheet | undefined>;
3609
3498
  readonly orderedSheetIds: UID[];
3610
3499
  readonly sheetIdsMapName: Record<string, UID | undefined>;
3611
3500
  readonly cellPosition: Record<UID, CellPosition | undefined>;
3612
3501
  }
3613
- declare class SheetPlugin extends CorePlugin<SheetState> implements SheetState {
3502
+ declare class SheetPlugin extends CorePlugin<SheetState$1> implements SheetState$1 {
3614
3503
  static getters: readonly ["getSheetName", "tryGetSheetName", "getSheet", "tryGetSheet", "getSheetIdByName", "getSheetIds", "getVisibleSheetIds", "isSheetVisible", "getEvaluationSheets", "doesHeaderExist", "getCell", "getCellPosition", "getColsZone", "getRowCells", "getRowsZone", "getNumberCols", "getNumberRows", "getNumberHeaders", "getGridLinesVisibility", "getNextSheetName", "isEmpty", "getSheetSize", "getSheetZone", "getPaneDivisions"];
3615
3504
  readonly sheetIdsMapName: Record<string, UID | undefined>;
3616
3505
  readonly orderedSheetIds: UID[];
@@ -3670,8 +3559,7 @@ declare class SheetPlugin extends CorePlugin<SheetState> implements SheetState {
3670
3559
  private clearZones;
3671
3560
  private createSheet;
3672
3561
  private moveSheet;
3673
- private findIndexOfPreviousVisibleSheet;
3674
- private findIndexOfNextVisibleSheet;
3562
+ private findIndexOfTargetSheet;
3675
3563
  private checkSheetName;
3676
3564
  private checkSheetPosition;
3677
3565
  private checkRowFreezeQuantity;
@@ -3773,7 +3661,7 @@ declare class CustomColorsPlugin extends UIPlugin {
3773
3661
  }
3774
3662
 
3775
3663
  declare class EvaluationPlugin extends UIPlugin {
3776
- static getters: readonly ["evaluateFormula", "getRangeFormattedValues", "getRangeValues", "getEvaluatedCell", "getEvaluatedCells", "getColEvaluatedCells", "getEvaluatedCellsInZone"];
3664
+ static getters: readonly ["evaluateFormula", "getRangeFormattedValues", "getRangeValues", "getRangeFormats", "getEvaluatedCell", "getEvaluatedCells", "getColEvaluatedCells", "getEvaluatedCellsInZone"];
3777
3665
  private isUpToDate;
3778
3666
  private evaluatedCells;
3779
3667
  private readonly evalContext;
@@ -3790,6 +3678,10 @@ declare class EvaluationPlugin extends UIPlugin {
3790
3678
  * Return the value of each cell in the range.
3791
3679
  */
3792
3680
  getRangeValues(range: Range): CellValue[];
3681
+ /**
3682
+ * Return the format of each cell in the range.
3683
+ */
3684
+ getRangeFormats(range: Range): (Format | undefined)[];
3793
3685
  getEvaluatedCell({ sheetId, col, row }: CellPosition): EvaluatedCell;
3794
3686
  getEvaluatedCells(sheetId: UID): Record<UID, EvaluatedCell>;
3795
3687
  /**
@@ -4383,7 +4275,6 @@ declare class SelectionInputPlugin extends UIPlugin implements StreamCallbacks<S
4383
4275
  allowDispatch(cmd: Command): CommandResult;
4384
4276
  handleEvent(event: SelectionEvent): void;
4385
4277
  handle(cmd: Command): void;
4386
- unsubscribe(): void;
4387
4278
  getSelectionInputValue(): string[];
4388
4279
  getSelectionInputHighlights(): Highlight$1[];
4389
4280
  /**
@@ -4444,7 +4335,6 @@ declare class SelectionInputsManagerPlugin extends UIPlugin {
4444
4335
  constructor(config: UIPluginConfig);
4445
4336
  allowDispatch(cmd: Command): CommandResult;
4446
4337
  handle(cmd: Command): void;
4447
- unsubscribe(): void;
4448
4338
  /**
4449
4339
  * Return a list of all valid XCs.
4450
4340
  * e.g. ["A1", "Sheet2!B3", "E12"]
@@ -4564,9 +4454,13 @@ declare class SheetUIPlugin extends UIPlugin {
4564
4454
  allowDispatch(cmd: Command): CommandResult;
4565
4455
  handle(cmd: Command): void;
4566
4456
  getCellWidth(position: CellPosition): number;
4567
- getTextWidth(position: CellPosition): Pixel;
4457
+ getTextWidth(text: string, style: Style): Pixel;
4568
4458
  getCellText(position: CellPosition, showFormula?: boolean): string;
4569
- getCellMultiLineText(position: CellPosition, width: number): string[];
4459
+ /**
4460
+ * Return the text of a cell, split in multiple lines if needed. The text will be split in multiple
4461
+ * line if it contains NEWLINE characters, or if it's longer than the given width.
4462
+ */
4463
+ getCellMultiLineText(position: CellPosition, width: number | undefined): string[];
4570
4464
  /**
4571
4465
  * Returns the size, start and end coordinates of a column on an unfolded sheet
4572
4466
  */
@@ -4952,9 +4846,10 @@ interface ChartBuilder {
4952
4846
  transformDefinition(definition: ChartDefinition, executed: AddColumnsRowsCommand | RemoveColumnsRowsCommand): ChartDefinition;
4953
4847
  getChartDefinitionFromContextCreation(context: ChartCreationContext): ChartDefinition;
4954
4848
  name: string;
4849
+ sequence: number;
4955
4850
  }
4956
4851
 
4957
- interface Props$x {
4852
+ interface Props$B {
4958
4853
  ranges: string[];
4959
4854
  hasSingleRange?: boolean;
4960
4855
  required?: boolean;
@@ -4976,12 +4871,13 @@ interface SelectionRange extends Omit<RangeInputValue, "color"> {
4976
4871
  * onSelectionChanged is called every time the input value
4977
4872
  * changes.
4978
4873
  */
4979
- declare class SelectionInput extends Component<Props$x, SpreadsheetChildEnv> {
4874
+ declare class SelectionInput extends Component<Props$B, SpreadsheetChildEnv> {
4980
4875
  static template: string;
4981
4876
  private id;
4982
4877
  private previousRanges;
4983
4878
  private originSheet;
4984
4879
  private state;
4880
+ private focusedInput;
4985
4881
  get ranges(): SelectionRange[];
4986
4882
  get hasFocus(): boolean;
4987
4883
  get canAddRange(): boolean;
@@ -5000,13 +4896,13 @@ declare class SelectionInput extends Component<Props$x, SpreadsheetChildEnv> {
5000
4896
  disable(): void;
5001
4897
  }
5002
4898
 
5003
- interface Props$w {
4899
+ interface Props$A {
5004
4900
  sheetId: UID;
5005
4901
  figureId: UID;
5006
4902
  definition: LineChartDefinition | BarChartDefinition | PieChartDefinition;
5007
4903
  updateChart: (definition: Partial<LineChartDefinition | BarChartDefinition | PieChartDefinition>) => DispatchResult;
5008
4904
  }
5009
- declare class LineBarPieConfigPanel extends Component<Props$w, SpreadsheetChildEnv> {
4905
+ declare class LineBarPieConfigPanel extends Component<Props$A, SpreadsheetChildEnv> {
5010
4906
  static template: string;
5011
4907
  static components: {
5012
4908
  SelectionInput: typeof SelectionInput;
@@ -5066,15 +4962,35 @@ declare class ColorPicker extends Component<ColorPickerProps, SpreadsheetChildEn
5066
4962
  get magnifyingGlassStyle(): string;
5067
4963
  }
5068
4964
 
5069
- interface Props$v {
4965
+ interface Props$z {
4966
+ currentColor: string | undefined;
4967
+ toggleColorPicker: () => void;
4968
+ showColorPicker: boolean;
4969
+ onColorPicked: (color: string) => void;
4970
+ icon: string;
4971
+ dropdownDirection?: "left" | "right" | "center";
4972
+ title?: string;
4973
+ disabled?: boolean;
4974
+ dropdownMaxHeight?: Pixel;
4975
+ class?: string;
4976
+ }
4977
+ declare class ColorPickerWidget extends Component<Props$z, SpreadsheetChildEnv> {
4978
+ static template: string;
4979
+ static components: {
4980
+ ColorPicker: typeof ColorPicker;
4981
+ };
4982
+ get iconStyle(): string;
4983
+ }
4984
+
4985
+ interface Props$y {
5070
4986
  figureId: UID;
5071
4987
  definition: LineChartDefinition | BarChartDefinition | PieChartDefinition;
5072
4988
  updateChart: (definition: Partial<LineChartDefinition | BarChartDefinition | PieChartDefinition>) => CommandResult | CommandResult[];
5073
4989
  }
5074
- declare class LineBarPieDesignPanel extends Component<Props$v, SpreadsheetChildEnv> {
4990
+ declare class LineBarPieDesignPanel extends Component<Props$y, SpreadsheetChildEnv> {
5075
4991
  static template: string;
5076
4992
  static components: {
5077
- ColorPicker: typeof ColorPicker;
4993
+ ColorPickerWidget: typeof ColorPickerWidget;
5078
4994
  };
5079
4995
  private state;
5080
4996
  onClick(ev: MouseEvent): void;
@@ -5085,13 +5001,13 @@ declare class LineBarPieDesignPanel extends Component<Props$v, SpreadsheetChildE
5085
5001
  updateSelect(attr: string, ev: any): void;
5086
5002
  }
5087
5003
 
5088
- interface Props$u {
5004
+ interface Props$x {
5089
5005
  sheetId: UID;
5090
5006
  figureId: UID;
5091
5007
  definition: GaugeChartDefinition;
5092
5008
  updateChart: (definition: Partial<GaugeChartDefinition>) => DispatchResult;
5093
5009
  }
5094
- declare class GaugeChartConfigPanel extends Component<Props$u, SpreadsheetChildEnv> {
5010
+ declare class GaugeChartConfigPanel extends Component<Props$x, SpreadsheetChildEnv> {
5095
5011
  static template: string;
5096
5012
  static components: {
5097
5013
  SelectionInput: typeof SelectionInput;
@@ -5105,17 +5021,18 @@ declare class GaugeChartConfigPanel extends Component<Props$u, SpreadsheetChildE
5105
5021
  }
5106
5022
 
5107
5023
  declare type GaugeMenu = "backgroundColor" | "sectionColor-lowerColor" | "sectionColor-middleColor" | "sectionColor-upperColor";
5108
- interface Props$t {
5024
+ interface Props$w {
5109
5025
  figureId: UID;
5110
5026
  definition: GaugeChartDefinition;
5111
5027
  updateChart: (definition: Partial<GaugeChartDefinition>) => DispatchResult;
5112
5028
  }
5113
- declare class GaugeChartDesignPanel extends Component<Props$t, SpreadsheetChildEnv> {
5029
+ declare class GaugeChartDesignPanel extends Component<Props$w, SpreadsheetChildEnv> {
5114
5030
  static template: string;
5115
5031
  static components: {
5116
- ColorPicker: typeof ColorPicker;
5032
+ ColorPickerWidget: typeof ColorPickerWidget;
5117
5033
  };
5118
5034
  private state;
5035
+ setup(): void;
5119
5036
  get designErrorMessages(): string[];
5120
5037
  updateBackgroundColor(color: string): void;
5121
5038
  updateTitle(ev: any): void;
@@ -5141,13 +5058,13 @@ declare class LineConfigPanel extends LineBarPieConfigPanel {
5141
5058
  onUpdateAggregated(ev: any): void;
5142
5059
  }
5143
5060
 
5144
- interface Props$s {
5061
+ interface Props$v {
5145
5062
  sheetId: UID;
5146
5063
  figureId: UID;
5147
5064
  definition: ScorecardChartDefinition;
5148
5065
  updateChart: (definition: Partial<ScorecardChartDefinition>) => DispatchResult;
5149
5066
  }
5150
- declare class ScorecardChartConfigPanel extends Component<Props$s, SpreadsheetChildEnv> {
5067
+ declare class ScorecardChartConfigPanel extends Component<Props$v, SpreadsheetChildEnv> {
5151
5068
  static template: string;
5152
5069
  static components: {
5153
5070
  SelectionInput: typeof SelectionInput;
@@ -5166,21 +5083,23 @@ declare class ScorecardChartConfigPanel extends Component<Props$s, SpreadsheetCh
5166
5083
  }
5167
5084
 
5168
5085
  declare type ColorPickerId = undefined | "backgroundColor" | "baselineColorUp" | "baselineColorDown";
5169
- interface Props$r {
5086
+ interface Props$u {
5170
5087
  figureId: UID;
5171
5088
  definition: ScorecardChartDefinition;
5172
5089
  updateChart: (definition: Partial<ScorecardChartDefinition>) => DispatchResult;
5173
5090
  }
5174
- declare class ScorecardChartDesignPanel extends Component<Props$r, SpreadsheetChildEnv> {
5091
+ declare class ScorecardChartDesignPanel extends Component<Props$u, SpreadsheetChildEnv> {
5175
5092
  static template: string;
5176
5093
  static components: {
5177
- ColorPicker: typeof ColorPicker;
5094
+ ColorPickerWidget: typeof ColorPickerWidget;
5178
5095
  };
5179
5096
  private state;
5097
+ setup(): void;
5180
5098
  updateTitle(ev: any): void;
5181
5099
  updateBaselineDescr(ev: any): void;
5182
- openColorPicker(colorPickerId: ColorPickerId): void;
5100
+ toggleColorPicker(colorPickerId: ColorPickerId): void;
5183
5101
  setColor(color: string, colorPickerId: ColorPickerId): void;
5102
+ private closeMenus;
5184
5103
  }
5185
5104
 
5186
5105
  interface ChartSidePanel {
@@ -5227,44 +5146,52 @@ interface SidePanelContent {
5227
5146
  * NB: a separator defined on the last item is not displayed !
5228
5147
  *
5229
5148
  */
5230
- interface MenuItem {
5149
+ interface MenuItemSpec {
5231
5150
  name: string | ((env: SpreadsheetChildEnv) => string);
5232
5151
  description?: string;
5233
- sequence: number;
5152
+ sequence?: number;
5234
5153
  id?: string;
5235
5154
  isVisible?: (env: SpreadsheetChildEnv) => boolean;
5236
5155
  isEnabled?: (env: SpreadsheetChildEnv) => boolean;
5237
5156
  isReadonlyAllowed?: boolean;
5238
5157
  action?: (env: SpreadsheetChildEnv) => unknown;
5239
- children?: menuChildren;
5158
+ children?: MenuChildren;
5240
5159
  separator?: boolean;
5241
5160
  icon?: string;
5242
5161
  textColor?: string;
5243
5162
  }
5244
- declare type FullMenuItem = Required<MenuItem>;
5245
- declare type MenuItemsBuilder = (env: SpreadsheetChildEnv) => FullMenuItem[];
5246
- declare type menuChildren = (FullMenuItem | MenuItemsBuilder)[];
5247
- declare function createFullMenuItem(key: string, value: MenuItem): FullMenuItem;
5163
+ interface MenuItem {
5164
+ id: string;
5165
+ sequence: number;
5166
+ name: (env: SpreadsheetChildEnv) => string;
5167
+ isVisible: (env: SpreadsheetChildEnv) => boolean;
5168
+ isEnabled: (env: SpreadsheetChildEnv) => boolean;
5169
+ isReadonlyAllowed: boolean;
5170
+ action?: (env: SpreadsheetChildEnv) => unknown;
5171
+ children: (env: SpreadsheetChildEnv) => MenuItem[];
5172
+ separator: boolean;
5173
+ description: string;
5174
+ textColor?: string;
5175
+ icon?: string;
5176
+ }
5177
+ declare type MenuItemsBuilder = (env: SpreadsheetChildEnv) => MenuItemSpec[];
5178
+ declare type MenuChildren = (MenuItemSpec | MenuItemsBuilder)[];
5248
5179
  /**
5249
5180
  * The class Registry is extended in order to add the function addChild
5250
5181
  *
5251
5182
  */
5252
- declare class MenuItemRegistry extends Registry<FullMenuItem> {
5183
+ declare class MenuItemRegistry extends Registry<MenuItemSpec> {
5253
5184
  /**
5254
5185
  * @override
5255
5186
  */
5256
- add(key: string, value: MenuItem): MenuItemRegistry;
5187
+ add(key: string, value: MenuItemSpec): MenuItemRegistry;
5257
5188
  /**
5258
5189
  * Add a subitem to an existing item
5259
5190
  * @param path Path of items to add this subitem
5260
5191
  * @param value Subitem to add
5261
5192
  */
5262
- addChild(key: string, path: string[], value: MenuItem | MenuItemsBuilder): MenuItemRegistry;
5263
- /**
5264
- * Get a list of all elements in the registry, ordered by sequence
5265
- * @override
5266
- */
5267
- getAll(): FullMenuItem[];
5193
+ addChild(key: string, path: string[], value: MenuItemSpec | MenuItemsBuilder): MenuItemRegistry;
5194
+ getMenuItems(): MenuItem[];
5268
5195
  }
5269
5196
 
5270
5197
  /**
@@ -5280,10 +5207,10 @@ interface AutofillRule {
5280
5207
  sequence: number;
5281
5208
  }
5282
5209
 
5283
- interface Props$q {
5210
+ interface Props$t {
5284
5211
  figure: Figure;
5285
5212
  }
5286
- declare class ChartJsComponent extends Component<Props$q, SpreadsheetChildEnv> {
5213
+ declare class ChartJsComponent extends Component<Props$t, SpreadsheetChildEnv> {
5287
5214
  static template: string;
5288
5215
  private canvas;
5289
5216
  private chart?;
@@ -5295,10 +5222,10 @@ declare class ChartJsComponent extends Component<Props$q, SpreadsheetChildEnv> {
5295
5222
  private updateChartJs;
5296
5223
  }
5297
5224
 
5298
- interface Props$p {
5225
+ interface Props$s {
5299
5226
  figure: Figure;
5300
5227
  }
5301
- declare class ScorecardChart extends Component<Props$p, SpreadsheetChildEnv> {
5228
+ declare class ScorecardChart extends Component<Props$s, SpreadsheetChildEnv> {
5302
5229
  static template: string;
5303
5230
  private ctx;
5304
5231
  get runtime(): ScorecardChartRuntime;
@@ -5362,22 +5289,23 @@ declare class Popover extends Component<PopoverProps, SpreadsheetChildEnv> {
5362
5289
  setup(): void;
5363
5290
  }
5364
5291
 
5365
- interface Props$o {
5292
+ interface Props$r {
5366
5293
  position: DOMCoordinates;
5367
- menuItems: FullMenuItem[];
5294
+ menuItems: MenuItem[];
5368
5295
  depth: number;
5296
+ maxHeight?: Pixel;
5369
5297
  onClose: () => void;
5370
5298
  onMenuClicked?: (ev: CustomEvent) => void;
5371
5299
  menuId?: UID;
5372
5300
  }
5373
5301
  interface MenuState {
5374
5302
  isOpen: boolean;
5375
- parentMenu?: FullMenuItem;
5303
+ parentMenu?: MenuItem;
5376
5304
  position: null | DOMCoordinates;
5377
5305
  scrollOffset?: Pixel;
5378
- menuItems: FullMenuItem[];
5306
+ menuItems: MenuItem[];
5379
5307
  }
5380
- declare class Menu extends Component<Props$o, SpreadsheetChildEnv> {
5308
+ declare class Menu extends Component<Props$r, SpreadsheetChildEnv> {
5381
5309
  static template: string;
5382
5310
  static components: {
5383
5311
  Menu: typeof Menu;
@@ -5390,11 +5318,12 @@ declare class Menu extends Component<Props$o, SpreadsheetChildEnv> {
5390
5318
  private menuRef;
5391
5319
  private position;
5392
5320
  setup(): void;
5321
+ get visibleMenuItems(): MenuItem[];
5393
5322
  get subMenuPosition(): DOMCoordinates;
5394
5323
  get menuHeight(): Pixel;
5395
5324
  get popoverProps(): PopoverProps;
5396
- getColor(menu: FullMenuItem): string | undefined;
5397
- activateMenu(menu: FullMenuItem): Promise<void>;
5325
+ getColor(menu: MenuItem): string | undefined;
5326
+ activateMenu(menu: MenuItem): Promise<void>;
5398
5327
  private close;
5399
5328
  /**
5400
5329
  * Return the number of pixels between the top of the menu
@@ -5403,27 +5332,26 @@ declare class Menu extends Component<Props$o, SpreadsheetChildEnv> {
5403
5332
  private subMenuVerticalPosition;
5404
5333
  private onExternalClick;
5405
5334
  private getMenuItemsHeight;
5406
- getName(menu: FullMenuItem): string;
5407
- getDescription(menu: FullMenuItem): string;
5408
- isRoot(menu: FullMenuItem): boolean;
5409
- isEnabled(menu: FullMenuItem): boolean;
5335
+ getName(menu: MenuItem): string;
5336
+ isRoot(menu: MenuItem): boolean;
5337
+ isEnabled(menu: MenuItem): boolean;
5410
5338
  onScroll(ev: any): void;
5411
5339
  /**
5412
5340
  * If the given menu is not disabled, open it's submenu at the
5413
5341
  * correct position according to available surrounding space.
5414
5342
  */
5415
- openSubMenu(menu: FullMenuItem, menuIndex: number): void;
5416
- isParentMenu(subMenu: MenuState, menuItem: FullMenuItem): boolean;
5343
+ openSubMenu(menu: MenuItem, menuIndex: number): void;
5344
+ isParentMenu(subMenu: MenuState, menuItem: MenuItem): boolean;
5417
5345
  closeSubMenu(): void;
5418
- onClickMenu(menu: FullMenuItem, menuIndex: number): void;
5419
- onMouseOver(menu: FullMenuItem, position: Pixel): void;
5346
+ onClickMenu(menu: MenuItem, menuIndex: number): void;
5347
+ onMouseOver(menu: MenuItem, position: Pixel): void;
5420
5348
  }
5421
5349
 
5422
- interface Props$n {
5350
+ interface Props$q {
5423
5351
  figure: Figure;
5424
5352
  onFigureDeleted: () => void;
5425
5353
  }
5426
- declare class ChartFigure extends Component<Props$n, SpreadsheetChildEnv> {
5354
+ declare class ChartFigure extends Component<Props$q, SpreadsheetChildEnv> {
5427
5355
  static template: string;
5428
5356
  static components: {
5429
5357
  Menu: typeof Menu;
@@ -5441,23 +5369,24 @@ declare class ChartFigure extends Component<Props$n, SpreadsheetChildEnv> {
5441
5369
  get chartComponent(): new (...args: any) => Component;
5442
5370
  }
5443
5371
 
5444
- interface Props$m {
5372
+ interface Props$p {
5373
+ isVisible: boolean;
5445
5374
  position: Position;
5446
5375
  }
5447
5376
  interface Position {
5448
5377
  top: HeaderIndex;
5449
5378
  left: HeaderIndex;
5450
5379
  }
5451
- interface State$2 {
5380
+ interface State$3 {
5452
5381
  position: Position;
5453
5382
  handler: boolean;
5454
5383
  }
5455
- declare class Autofill extends Component<Props$m, SpreadsheetChildEnv> {
5384
+ declare class Autofill extends Component<Props$p, SpreadsheetChildEnv> {
5456
5385
  static template: string;
5457
- state: State$2;
5386
+ state: State$3;
5458
5387
  get style(): string;
5459
- get styleHandler(): string;
5460
- get styleNextvalue(): string;
5388
+ get handlerStyle(): string;
5389
+ get styleNextValue(): string;
5461
5390
  getTooltip(): Tooltip | undefined;
5462
5391
  onMouseDown(ev: MouseEvent): void;
5463
5392
  onDblClick(): void;
@@ -5475,227 +5404,187 @@ declare class ClientTag extends Component<ClientTagProps, SpreadsheetChildEnv> {
5475
5404
  get tagStyle(): string;
5476
5405
  }
5477
5406
 
5478
- interface Props$l {
5479
- values: AutocompleteValue[];
5480
- selectedIndex: number;
5481
- onValueSelected: (value: string) => void;
5407
+ interface RippleProps {
5408
+ color: string;
5409
+ opacity: number;
5410
+ duration: number;
5411
+ /** If true, the ripple will play from the element center instead of the position of the click */
5412
+ ignoreClickPosition?: boolean;
5413
+ /** Width of the ripple. Defaults to the width of the element the ripple is on (without margins). */
5414
+ width?: number;
5415
+ /** Height of the ripple. Defaults to the height of the element the ripple is on (without margins). */
5416
+ height?: number;
5417
+ offsetY?: number;
5418
+ offsetX?: number;
5419
+ allowOverflow?: boolean;
5420
+ enabled: boolean;
5421
+ onAnimationEnd: () => void;
5422
+ class: string;
5423
+ }
5424
+ interface RippleEffectProps extends Omit<Required<RippleProps>, "ignoreClickPosition" | "enabled" | "class"> {
5425
+ x: string;
5426
+ y: string;
5427
+ style: string;
5482
5428
  }
5483
- declare class TextValueProvider extends Component<Props$l> {
5429
+ declare class RippleEffect extends Component<RippleEffectProps, SpreadsheetChildEnv> {
5484
5430
  static template: string;
5431
+ private rippleRef;
5432
+ setup(): void;
5433
+ get rippleStyle(): string;
5485
5434
  }
5486
-
5487
- declare class ContentEditableHelper {
5488
- el: HTMLElement;
5489
- constructor(el: HTMLElement | null);
5490
- updateEl(el: HTMLElement): void;
5491
- /**
5492
- * select the text at position start to end, no matter the children
5493
- */
5494
- selectRange(start: number, end: number): void;
5495
- /**
5496
- * finds the dom element that contains the character at `offset`
5497
- */
5498
- private findChildAtCharacterIndex;
5499
- /**
5500
- * Iterate over the dom tree starting at `el` and over all the children depth first.
5501
- * */
5502
- private iterateChildren;
5503
- /**
5504
- * Sets (or Replaces all) the text inside the root element in the form of distinctive
5505
- * span for each element provided in `contents`.
5506
- *
5507
- * Each span will have its own fontcolor and specific class if provided in the HtmlContent object.
5508
- */
5509
- setText(contents: HtmlContent[]): void;
5510
- /**
5511
- * remove the current selection of the user
5512
- * */
5513
- removeSelection(): void;
5514
- removeAll(): void;
5515
- /**
5516
- * finds the indexes of the current selection.
5517
- * */
5518
- getCurrentSelection(): {
5519
- start: number;
5520
- end: number;
5435
+ declare class Ripple extends Component<RippleProps, SpreadsheetChildEnv> {
5436
+ static template: string;
5437
+ static components: {
5438
+ RippleEffect: typeof RippleEffect;
5521
5439
  };
5522
- private findSizeBeforeElement;
5523
- private getStartAndEndSelection;
5440
+ static defaultProps: {
5441
+ color: string;
5442
+ opacity: number;
5443
+ duration: number;
5444
+ enabled: boolean;
5445
+ onAnimationEnd: () => void;
5446
+ class: string;
5447
+ };
5448
+ private childContainer;
5449
+ private state;
5450
+ private currentId;
5451
+ onClick(ev: MouseEvent): void;
5452
+ private getRippleStyle;
5453
+ private getRippleChildRectInfo;
5454
+ private removeRipple;
5455
+ getRippleEffectProps(id: number): RippleEffectProps;
5524
5456
  }
5525
5457
 
5526
- interface Props$k {
5527
- functionName: string;
5528
- functionDescription: FunctionDescription;
5529
- argToFocus: number;
5530
- }
5531
- interface AssistantState {
5532
- allowCellSelectionBehind: boolean;
5458
+ interface Props$o {
5459
+ sheetId: string;
5460
+ openContextMenu: (registry: MenuItemRegistry, ev: MouseEvent) => void;
5461
+ style?: string;
5462
+ onMouseDown: (ev: MouseEvent) => void;
5533
5463
  }
5534
- declare class FunctionDescriptionProvider extends Component<Props$k> {
5464
+ declare class BottomBarSheet extends Component<Props$o, SpreadsheetChildEnv> {
5535
5465
  static template: string;
5536
- assistantState: AssistantState;
5537
- private timeOutId;
5466
+ static components: {
5467
+ Ripple: typeof Ripple;
5468
+ };
5469
+ static defaultProps: {
5470
+ onMouseDown: () => void;
5471
+ style: string;
5472
+ };
5473
+ private state;
5474
+ private sheetDivRef;
5475
+ private sheetNameRef;
5476
+ private editionState;
5538
5477
  setup(): void;
5539
- getContext(): Props$k;
5540
- onMouseMove(): void;
5478
+ private focusInputAndSelectContent;
5479
+ private scrollToSheet;
5480
+ onFocusOut(): void;
5481
+ onMouseDown(ev: any): void;
5482
+ private activateSheet;
5483
+ onDblClick(): void;
5484
+ onKeyDown(ev: KeyboardEvent): void;
5485
+ onClickSheetName(ev: MouseEvent): void;
5486
+ private startEdition;
5487
+ private stopEdition;
5488
+ private cancelEdition;
5489
+ onIconClick(ev: MouseEvent): void;
5490
+ onContextMenu(ev: MouseEvent): void;
5491
+ private getInputContent;
5492
+ private setInputContent;
5493
+ get contextMenuRegistry(): MenuItemRegistry;
5494
+ get isSheetActive(): boolean;
5495
+ get sheetName(): string;
5541
5496
  }
5542
5497
 
5543
- declare type HtmlContent = {
5544
- value: string;
5545
- color?: string;
5546
- class?: string;
5547
- };
5548
- interface AutocompleteValue {
5549
- text: string;
5550
- description: string;
5498
+ interface Props$n {
5499
+ openContextMenu: (x: number, y: number, registry: MenuItemRegistry) => void;
5500
+ closeContextMenu: () => void;
5551
5501
  }
5552
- interface Props$j {
5553
- inputStyle: string;
5554
- rect?: Rect;
5555
- delimitation?: DOMDimension;
5556
- focus: "inactive" | "cellFocus" | "contentFocus";
5557
- onComposerUnmounted?: () => void;
5558
- onComposerContentFocused: (selection: ComposerSelection) => void;
5502
+ declare class BottomBarStatistic extends Component<Props$n, SpreadsheetChildEnv> {
5503
+ static template: string;
5504
+ static components: {
5505
+ Ripple: typeof Ripple;
5506
+ };
5507
+ selectedStatisticFn: string;
5508
+ private statisticFnResults;
5509
+ setup(): void;
5510
+ getSelectedStatistic(): string | undefined;
5511
+ listSelectionStatistics(ev: MouseEvent): void;
5512
+ private getComposedFnName;
5559
5513
  }
5560
- interface ComposerState$1 {
5561
- positionStart: number;
5562
- positionEnd: number;
5514
+
5515
+ interface BottomBarSheetItem {
5516
+ id: UID;
5517
+ name: string;
5563
5518
  }
5564
- interface AutoCompleteState {
5565
- showProvider: boolean;
5566
- selectedIndex: number;
5567
- values: AutocompleteValue[];
5519
+ interface SheetState {
5520
+ sheetList: BottomBarSheetItem[];
5521
+ isDnd: boolean;
5522
+ sheetDndPositions: Record<UID, number> | undefined;
5568
5523
  }
5569
- interface FunctionDescriptionState {
5570
- showDescription: boolean;
5571
- functionName: string;
5572
- functionDescription: FunctionDescription;
5573
- argToFocus: number;
5524
+ interface Props$m {
5525
+ onClick: () => void;
5574
5526
  }
5575
- declare class Composer extends Component<Props$j, SpreadsheetChildEnv> {
5527
+ interface BottomBarMenuState extends MenuState {
5528
+ menuId: UID | undefined;
5529
+ }
5530
+ declare class BottomBar extends Component<Props$m, SpreadsheetChildEnv> {
5576
5531
  static template: string;
5577
5532
  static components: {
5578
- TextValueProvider: typeof TextValueProvider;
5579
- FunctionDescriptionProvider: typeof FunctionDescriptionProvider;
5533
+ Menu: typeof Menu;
5534
+ Ripple: typeof Ripple;
5535
+ BottomBarSheet: typeof BottomBarSheet;
5536
+ BottomBarStatistic: typeof BottomBarStatistic;
5580
5537
  };
5538
+ private bottomBarRef;
5539
+ private sheetListRef;
5540
+ private dndHelper;
5541
+ private targetScroll;
5542
+ private state;
5543
+ menuMaxHeight: number;
5544
+ menuState: BottomBarMenuState;
5545
+ sheetState: SheetState;
5546
+ setup(): void;
5547
+ isDragged(sheetId: UID): boolean;
5548
+ clickAddSheet(ev: MouseEvent): void;
5549
+ private getVisibleSheets;
5550
+ getSheets(): BottomBarSheetItem[];
5551
+ clickListSheets(ev: MouseEvent): void;
5552
+ openContextMenu(x: Pixel, y: Pixel, menuId: UID, registry: MenuItemRegistry): void;
5553
+ onSheetContextMenu(sheetId: UID, registry: MenuItemRegistry, ev: MenuMouseEvent): void;
5554
+ closeMenu(): void;
5555
+ closeContextMenuWithId(menuId: UID): void;
5556
+ onWheel(ev: WheelEvent): void;
5557
+ onScroll(): void;
5558
+ onArrowLeft(ev: MouseEvent): void;
5559
+ onArrowRight(ev: MouseEvent): void;
5560
+ private updateScrollState;
5561
+ private scrollSheetListTo;
5562
+ onSheetMouseDown(sheetId: UID, event: MouseEvent): void;
5563
+ private onDragEnd;
5564
+ getSheetStyle(sheetId: UID): string;
5565
+ private stopDragging;
5566
+ private getSheetItemRects;
5567
+ getSheetClasses(sheetId: UID): string;
5568
+ get sheetListCurrentScroll(): number;
5569
+ get sheetListWidth(): number;
5570
+ get sheetListMaxScroll(): number;
5571
+ }
5572
+
5573
+ declare type ResizeAnchor = "top left" | "top" | "top right" | "right" | "bottom right" | "bottom" | "bottom left" | "left";
5574
+ interface Props$l {
5575
+ figure: Figure;
5576
+ style: string;
5577
+ onFigureDeleted: () => void;
5578
+ onMouseDown: (ev: MouseEvent) => void;
5579
+ onClickAnchor(dirX: ResizeDirection, dirY: ResizeDirection, ev: MouseEvent): void;
5580
+ }
5581
+ declare class FigureComponent extends Component<Props$l, SpreadsheetChildEnv> {
5582
+ static template: string;
5583
+ static components: {};
5581
5584
  static defaultProps: {
5582
- inputStyle: string;
5583
- };
5584
- composerRef: {
5585
- el: HTMLElement | null;
5586
- };
5587
- contentHelper: ContentEditableHelper;
5588
- composerState: ComposerState$1;
5589
- autoCompleteState: AutoCompleteState;
5590
- functionDescriptionState: FunctionDescriptionState;
5591
- private isKeyStillDown;
5592
- private compositionActive;
5593
- get assistantStyle(): string;
5594
- shouldProcessInputEvents: boolean;
5595
- tokens: EnrichedToken[];
5596
- keyMapping: {
5597
- [key: string]: Function;
5598
- };
5599
- setup(): void;
5600
- private processArrowKeys;
5601
- private handleArrowKeysForAutocomplete;
5602
- private processTabKey;
5603
- private processEnterKey;
5604
- private processEscapeKey;
5605
- private processF4Key;
5606
- onCompositionStart(): void;
5607
- onCompositionEnd(): void;
5608
- onKeydown(ev: KeyboardEvent): void;
5609
- onInput(): void;
5610
- onKeyup(ev: KeyboardEvent): void;
5611
- showAutocomplete(searchTerm: string): void;
5612
- onMousedown(ev: MouseEvent): void;
5613
- onClick(): void;
5614
- onBlur(): void;
5615
- private processContent;
5616
- private getContent;
5617
- private getColoredTokens;
5618
- private rangeColor;
5619
- /**
5620
- * Compute the state of the composer from the tokenAtCursor.
5621
- * If the token is a function or symbol (that isn't a cell/range reference) we have to initialize
5622
- * the autocomplete engine otherwise we initialize the formula assistant.
5623
- */
5624
- private processTokenAtCursor;
5625
- private autoComplete;
5626
- }
5627
-
5628
- interface Props$i {
5629
- focus: "inactive" | "cellFocus" | "contentFocus";
5630
- onComposerUnmounted: () => void;
5631
- onComposerContentFocused: (selection: ComposerSelection) => void;
5632
- }
5633
- /**
5634
- * This component is a composer which positions itself on the grid at the anchor cell.
5635
- * It also applies the style of the cell to the composer input.
5636
- */
5637
- declare class GridComposer extends Component<Props$i, SpreadsheetChildEnv> {
5638
- static template: string;
5639
- static components: {
5640
- Composer: typeof Composer;
5641
- };
5642
- private gridComposerRef;
5643
- private zone;
5644
- private rect;
5645
- private composerState;
5646
- setup(): void;
5647
- get containerStyle(): string;
5648
- get composerStyle(): string;
5649
- }
5650
-
5651
- interface Props$h {
5652
- position: DOMCoordinates;
5653
- isActive: boolean;
5654
- onClick: () => void;
5655
- }
5656
- declare class FilterIcon extends Component<Props$h, SpreadsheetEnv> {
5657
- static style: string;
5658
- static template: string;
5659
- get style(): string;
5660
- }
5661
-
5662
- interface Props$g {
5663
- gridPosition: DOMCoordinates;
5664
- }
5665
- declare class FilterIconsOverlay extends Component<Props$g, SpreadsheetChildEnv> {
5666
- static style: string;
5667
- static template: string;
5668
- static components: {
5669
- FilterIcon: typeof FilterIcon;
5670
- };
5671
- static defaultProps: {
5672
- gridPosition: {
5673
- x: number;
5674
- y: number;
5675
- };
5676
- };
5677
- getVisibleFilterHeaders(): Position$1[];
5678
- getFilterHeaderPosition(position: Position$1): DOMCoordinates;
5679
- isFilterActive(position: Position$1): boolean;
5680
- toggleFilterMenu(position: Position$1): void;
5681
- private isPositionVisible;
5682
- }
5683
-
5684
- declare type ResizeAnchor = "top left" | "top" | "top right" | "right" | "bottom right" | "bottom" | "bottom left" | "left";
5685
- interface Props$f {
5686
- figure: Figure;
5687
- style: string;
5688
- onFigureDeleted: () => void;
5689
- onMouseDown: (ev: MouseEvent) => void;
5690
- onClickAnchor(dirX: ResizeDirection, dirY: ResizeDirection, ev: MouseEvent): void;
5691
- }
5692
- declare class FigureComponent extends Component<Props$f, SpreadsheetChildEnv> {
5693
- static template: string;
5694
- static components: {};
5695
- static defaultProps: {
5696
- onFigureDeleted: () => void;
5697
- onMouseDown: () => void;
5698
- onClickAnchor: () => void;
5585
+ onFigureDeleted: () => void;
5586
+ onMouseDown: () => void;
5587
+ onClickAnchor: () => void;
5699
5588
  };
5700
5589
  private borderWidth;
5701
5590
  private figureRef;
@@ -5719,7 +5608,7 @@ interface DndState {
5719
5608
  width: Pixel;
5720
5609
  height: Pixel;
5721
5610
  }
5722
- interface Props$e {
5611
+ interface Props$k {
5723
5612
  onFigureDeleted: () => void;
5724
5613
  }
5725
5614
  interface Container {
@@ -5788,7 +5677,7 @@ interface Container {
5788
5677
  * that occurred during the drag & drop, and to position the figure on the correct pane.
5789
5678
  *
5790
5679
  */
5791
- declare class FiguresContainer extends Component<Props$e, SpreadsheetChildEnv> {
5680
+ declare class FiguresContainer extends Component<Props$k, SpreadsheetChildEnv> {
5792
5681
  static template: string;
5793
5682
  static components: {
5794
5683
  FigureComponent: typeof FigureComponent;
@@ -5808,7 +5697,7 @@ declare class FiguresContainer extends Component<Props$e, SpreadsheetChildEnv> {
5808
5697
  private screenCoordinatesToInternal;
5809
5698
  }
5810
5699
 
5811
- interface Props$d {
5700
+ interface Props$j {
5812
5701
  onCellHovered: (position: Partial<Position$1>) => void;
5813
5702
  onCellDoubleClicked: (col: HeaderIndex, row: HeaderIndex) => void;
5814
5703
  onCellClicked: (col: HeaderIndex, row: HeaderIndex, modifiers: {
@@ -5821,7 +5710,7 @@ interface Props$d {
5821
5710
  gridOverlayDimensions: string;
5822
5711
  onFigureDeleted: () => void;
5823
5712
  }
5824
- declare class GridOverlay extends Component<Props$d, SpreadsheetChildEnv> {
5713
+ declare class GridOverlay extends Component<Props$j, SpreadsheetChildEnv> {
5825
5714
  static template: string;
5826
5715
  static components: {
5827
5716
  FiguresContainer: typeof FiguresContainer;
@@ -5843,13 +5732,13 @@ declare class GridOverlay extends Component<Props$d, SpreadsheetChildEnv> {
5843
5732
  private getCartesianCoordinates;
5844
5733
  }
5845
5734
 
5846
- interface Props$c {
5735
+ interface Props$i {
5847
5736
  hoveredCell: Partial<Position$1>;
5848
5737
  gridRect: Rect;
5849
5738
  onClosePopover: () => void;
5850
5739
  onMouseWheel: (ev: WheelEvent) => void;
5851
5740
  }
5852
- declare class GridPopover extends Component<Props$c, SpreadsheetChildEnv> {
5741
+ declare class GridPopover extends Component<Props$i, SpreadsheetChildEnv> {
5853
5742
  static template: string;
5854
5743
  static components: {
5855
5744
  Popover: typeof Popover;
@@ -5857,167 +5746,9 @@ declare class GridPopover extends Component<Props$c, SpreadsheetChildEnv> {
5857
5746
  get cellPopover(): PositionedCellPopover | ClosedCellPopover;
5858
5747
  }
5859
5748
 
5860
- interface ResizerState {
5861
- resizerIsActive: boolean;
5862
- isResizing: boolean;
5863
- isMoving: boolean;
5864
- isSelecting: boolean;
5865
- waitingForMove: boolean;
5866
- activeElement: Pixel;
5867
- draggerLinePosition: Pixel;
5868
- draggerShadowPosition: Pixel;
5869
- draggerShadowThickness: number;
5870
- delta: number;
5871
- base: number;
5872
- }
5873
- interface ResizerProps {
5874
- onOpenContextMenu: (type: ContextMenuType, x: Pixel, y: Pixel) => void;
5875
- }
5876
- declare abstract class AbstractResizer extends Component<ResizerProps, SpreadsheetChildEnv> {
5877
- PADDING: number;
5878
- MAX_SIZE_MARGIN: number;
5879
- MIN_ELEMENT_SIZE: number;
5880
- lastSelectedElementIndex: HeaderIndex | null;
5881
- state: ResizerState;
5882
- abstract _getEvOffset(ev: MouseEvent): Pixel;
5883
- abstract _getViewportOffset(): Pixel;
5884
- abstract _getClientPosition(ev: MouseEvent): Pixel;
5885
- abstract _getElementIndex(position: Pixel): HeaderIndex;
5886
- abstract _getSelectedZoneStart(): HeaderIndex;
5887
- abstract _getSelectedZoneEnd(): HeaderIndex;
5888
- abstract _getEdgeScroll(position: Pixel): EdgeScrollInfo;
5889
- abstract _getDimensionsInViewport(index: HeaderIndex): HeaderDimensions;
5890
- abstract _getElementSize(index: HeaderIndex): Pixel;
5891
- abstract _getMaxSize(): Pixel;
5892
- abstract _updateSize(): void;
5893
- abstract _moveElements(): void;
5894
- abstract _selectElement(index: HeaderIndex, ctrlKey: boolean): void;
5895
- abstract _increaseSelection(index: HeaderIndex): void;
5896
- abstract _fitElementSize(index: HeaderIndex): void;
5897
- abstract _getType(): ContextMenuType;
5898
- abstract _getActiveElements(): Set<HeaderIndex>;
5899
- abstract _getPreviousVisibleElement(index: HeaderIndex): HeaderIndex;
5900
- _computeHandleDisplay(ev: MouseEvent): void;
5901
- _computeGrabDisplay(ev: MouseEvent): void;
5902
- onMouseMove(ev: MouseEvent): void;
5903
- onMouseLeave(): void;
5904
- onDblClick(ev: MouseEvent): void;
5905
- onMouseDown(ev: MouseEvent): void;
5906
- select(ev: MouseEvent): void;
5907
- private startMovement;
5908
- private startSelection;
5909
- onMouseUp(ev: MouseEvent): void;
5910
- onContextMenu(ev: MouseEvent): void;
5911
- }
5912
- declare class ColResizer extends AbstractResizer {
5913
- static template: string;
5914
- private colResizerRef;
5915
- setup(): void;
5916
- _getEvOffset(ev: MouseEvent): Pixel;
5917
- _getViewportOffset(): Pixel;
5918
- _getClientPosition(ev: MouseEvent): Pixel;
5919
- _getElementIndex(position: Pixel): HeaderIndex;
5920
- _getSelectedZoneStart(): HeaderIndex;
5921
- _getSelectedZoneEnd(): HeaderIndex;
5922
- _getEdgeScroll(position: Pixel): EdgeScrollInfo;
5923
- _getDimensionsInViewport(index: HeaderIndex): HeaderDimensions;
5924
- _getElementSize(index: HeaderIndex): Pixel;
5925
- _getMaxSize(): Pixel;
5926
- _updateSize(): void;
5927
- _moveElements(): void;
5928
- _selectElement(index: HeaderIndex, ctrlKey: boolean): void;
5929
- _increaseSelection(index: HeaderIndex): void;
5930
- _fitElementSize(index: HeaderIndex): void;
5931
- _getType(): ContextMenuType;
5932
- _getActiveElements(): Set<HeaderIndex>;
5933
- _getPreviousVisibleElement(index: HeaderIndex): HeaderIndex;
5934
- unhide(hiddenElements: HeaderIndex[]): void;
5935
- unhideStyleValue(hiddenIndex: HeaderIndex): Pixel;
5936
- }
5937
- declare class RowResizer extends AbstractResizer {
5938
- static template: string;
5939
- setup(): void;
5940
- private rowResizerRef;
5941
- _getEvOffset(ev: MouseEvent): Pixel;
5942
- _getViewportOffset(): Pixel;
5943
- _getClientPosition(ev: MouseEvent): Pixel;
5944
- _getElementIndex(position: Pixel): HeaderIndex;
5945
- _getSelectedZoneStart(): HeaderIndex;
5946
- _getSelectedZoneEnd(): HeaderIndex;
5947
- _getEdgeScroll(position: Pixel): EdgeScrollInfo;
5948
- _getDimensionsInViewport(index: HeaderIndex): HeaderDimensions;
5949
- _getElementSize(index: HeaderIndex): Pixel;
5950
- _getMaxSize(): Pixel;
5951
- _updateSize(): void;
5952
- _moveElements(): void;
5953
- _selectElement(index: HeaderIndex, ctrlKey: boolean): void;
5954
- _increaseSelection(index: HeaderIndex): void;
5955
- _fitElementSize(index: HeaderIndex): void;
5956
- _getType(): ContextMenuType;
5957
- _getActiveElements(): Set<HeaderIndex>;
5958
- _getPreviousVisibleElement(index: HeaderIndex): HeaderIndex;
5959
- unhide(hiddenElements: HeaderIndex[]): void;
5960
- unhideStyleValue(hiddenIndex: HeaderIndex): Pixel;
5961
- }
5962
- declare class HeadersOverlay extends Component<any, SpreadsheetChildEnv> {
5963
- static template: string;
5964
- static components: {
5965
- ColResizer: typeof ColResizer;
5966
- RowResizer: typeof RowResizer;
5967
- };
5968
- selectAll(): void;
5969
- }
5970
-
5971
- declare type Orientation$1 = "n" | "s" | "w" | "e";
5972
- interface Props$b {
5973
- zone: Zone;
5974
- orientation: Orientation$1;
5975
- isMoving: boolean;
5976
- onMoveHighlight: (x: Pixel, y: Pixel) => void;
5977
- }
5978
- declare class Border extends Component<Props$b, SpreadsheetChildEnv> {
5979
- static template: string;
5980
- get style(): string;
5981
- onMouseDown(ev: MouseEvent): void;
5982
- }
5983
-
5984
- declare type Orientation = "nw" | "ne" | "sw" | "se";
5985
- interface Props$a {
5986
- zone: Zone;
5987
- color: string;
5988
- orientation: Orientation;
5989
- isResizing: boolean;
5990
- onResizeHighlight: (isLeft: boolean, isRight: boolean) => void;
5991
- }
5992
- declare class Corner extends Component<Props$a, SpreadsheetChildEnv> {
5993
- static template: string;
5994
- private isTop;
5995
- private isLeft;
5996
- get style(): string;
5997
- onMouseDown(ev: MouseEvent): void;
5998
- }
5999
-
6000
- interface Props$9 {
6001
- zone: Zone;
6002
- color: string;
6003
- }
6004
- interface HighlightState {
6005
- shiftingMode: "isMoving" | "isResizing" | "none";
6006
- }
6007
- declare class Highlight extends Component<Props$9, SpreadsheetChildEnv> {
6008
- static template: string;
6009
- static components: {
6010
- Corner: typeof Corner;
6011
- Border: typeof Border;
6012
- };
6013
- highlightState: HighlightState;
6014
- onResizeHighlight(isLeft: boolean, isTop: boolean): void;
6015
- onMoveHighlight(clientX: Pixel, clientY: Pixel): void;
6016
- }
6017
-
6018
5749
  declare type ScrollDirection = "horizontal" | "vertical";
6019
5750
 
6020
- interface Props$8 {
5751
+ interface Props$h {
6021
5752
  width: Pixel;
6022
5753
  height: Pixel;
6023
5754
  direction: ScrollDirection;
@@ -6025,7 +5756,7 @@ interface Props$8 {
6025
5756
  offset: Pixel;
6026
5757
  onScroll: (offset: Pixel) => void;
6027
5758
  }
6028
- declare class ScrollBar extends Component<Props$8> {
5759
+ declare class ScrollBar extends Component<Props$h> {
6029
5760
  static template: string;
6030
5761
  static defaultProps: {
6031
5762
  width: number;
@@ -6039,10 +5770,10 @@ declare class ScrollBar extends Component<Props$8> {
6039
5770
  onScroll(ev: any): void;
6040
5771
  }
6041
5772
 
6042
- interface Props$7 {
5773
+ interface Props$g {
6043
5774
  leftOffset: number;
6044
5775
  }
6045
- declare class HorizontalScrollBar extends Component<Props$7, SpreadsheetChildEnv> {
5776
+ declare class HorizontalScrollBar extends Component<Props$g, SpreadsheetChildEnv> {
6046
5777
  static components: {
6047
5778
  ScrollBar: typeof ScrollBar;
6048
5779
  };
@@ -6062,10 +5793,10 @@ declare class HorizontalScrollBar extends Component<Props$7, SpreadsheetChildEnv
6062
5793
  onScroll(offset: any): void;
6063
5794
  }
6064
5795
 
6065
- interface Props$6 {
5796
+ interface Props$f {
6066
5797
  topOffset: number;
6067
5798
  }
6068
- declare class VerticalScrollBar extends Component<Props$6, SpreadsheetChildEnv> {
5799
+ declare class VerticalScrollBar extends Component<Props$f, SpreadsheetChildEnv> {
6069
5800
  static components: {
6070
5801
  ScrollBar: typeof ScrollBar;
6071
5802
  };
@@ -6085,117 +5816,312 @@ declare class VerticalScrollBar extends Component<Props$6, SpreadsheetChildEnv>
6085
5816
  onScroll(offset: any): void;
6086
5817
  }
6087
5818
 
6088
- interface Props$5 {
5819
+ interface Props$e {
5820
+ position: DOMCoordinates;
5821
+ isActive: boolean;
6089
5822
  onClick: () => void;
6090
5823
  }
6091
- interface BottomBarMenuState extends MenuState {
6092
- menuId: UID | undefined;
5824
+ declare class FilterIcon extends Component<Props$e, SpreadsheetEnv> {
5825
+ static style: string;
5826
+ static template: string;
5827
+ get style(): string;
6093
5828
  }
6094
- declare class BottomBar extends Component<Props$5, SpreadsheetChildEnv> {
5829
+
5830
+ interface Props$d {
5831
+ gridPosition: DOMCoordinates;
5832
+ }
5833
+ declare class FilterIconsOverlay extends Component<Props$d, SpreadsheetChildEnv> {
5834
+ static style: string;
6095
5835
  static template: string;
6096
5836
  static components: {
6097
- Menu: typeof Menu;
5837
+ FilterIcon: typeof FilterIcon;
6098
5838
  };
6099
- private bottomBarRef;
6100
- menuState: BottomBarMenuState;
6101
- selectedStatisticFn: string;
5839
+ static defaultProps: {
5840
+ gridPosition: {
5841
+ x: number;
5842
+ y: number;
5843
+ };
5844
+ };
5845
+ getVisibleFilterHeaders(): Position$1[];
5846
+ getFilterHeaderPosition(position: Position$1): DOMCoordinates;
5847
+ isFilterActive(position: Position$1): boolean;
5848
+ toggleFilterMenu(position: Position$1): void;
5849
+ private isPositionVisible;
5850
+ }
5851
+
5852
+ interface Props$c {
5853
+ }
5854
+ interface ClickableCell {
5855
+ coordinates: Rect;
5856
+ position: Position$1;
5857
+ action: (position: CellPosition, env: SpreadsheetChildEnv) => void;
5858
+ tKey: string;
5859
+ }
5860
+ declare class SpreadsheetDashboard extends Component<Props$c, SpreadsheetChildEnv> {
5861
+ static template: string;
5862
+ static components: {
5863
+ GridOverlay: typeof GridOverlay;
5864
+ GridPopover: typeof GridPopover;
5865
+ Popover: typeof Popover;
5866
+ VerticalScrollBar: typeof VerticalScrollBar;
5867
+ HorizontalScrollBar: typeof HorizontalScrollBar;
5868
+ FilterIconsOverlay: typeof FilterIconsOverlay;
5869
+ };
5870
+ onMouseWheel: (ev: WheelEvent) => void;
5871
+ canvasPosition: DOMCoordinates;
5872
+ hoveredCell: Partial<Position$1>;
6102
5873
  setup(): void;
6103
- focusSheet(): void;
6104
- addSheet(): void;
6105
- getVisibleSheets(): Sheet[];
6106
- listSheets(ev: MouseEvent): void;
6107
- activateSheet(name: string): void;
6108
- onDblClick(sheetId: UID): void;
6109
- openContextMenu(x: Pixel, y: Pixel, registry: MenuItemRegistry, menuId?: UID): void;
6110
- onIconClick(sheetId: UID, ev: MenuMouseEvent): void;
6111
- onContextMenu(sheetId: UID, ev: MouseEvent): void;
6112
- getSelectedStatistic(): string | undefined;
6113
- listSelectionStatistics(ev: MouseEvent): void;
6114
- private getComposedFnName;
5874
+ onCellHovered({ col, row }: {
5875
+ col: any;
5876
+ row: any;
5877
+ }): void;
5878
+ get gridContainer(): string;
5879
+ get gridOverlayDimensions(): string;
5880
+ getCellClickableStyle(coordinates: Rect): string;
5881
+ /**
5882
+ * Get all the boxes for the cell in the sheet view that are clickable.
5883
+ * This function is used to render an overlay over each clickable cell in
5884
+ * order to display a pointer cursor.
5885
+ *
5886
+ */
5887
+ getClickableCells(): ClickableCell[];
5888
+ getClickableAction(position: CellPosition): false | ((position: CellPosition, env: SpreadsheetChildEnv) => void);
5889
+ selectClickableCell(clickableCell: ClickableCell): void;
5890
+ onClosePopover(): void;
5891
+ onGridResized({ height, width }: DOMDimension): void;
5892
+ private moveCanvas;
5893
+ private getGridRect;
5894
+ }
5895
+
5896
+ interface Props$b {
5897
+ component: string;
5898
+ panelProps: any;
5899
+ onCloseSidePanel: () => void;
5900
+ }
5901
+ interface State$2 {
5902
+ panel: SidePanelContent;
5903
+ }
5904
+ declare class SidePanel extends Component<Props$b, SpreadsheetChildEnv> {
5905
+ static template: string;
5906
+ state: State$2;
5907
+ setup(): void;
5908
+ getTitle(): string;
5909
+ }
5910
+
5911
+ interface Props$a {
5912
+ values: AutocompleteValue[];
5913
+ selectedIndex: number;
5914
+ onValueSelected: (value: string) => void;
5915
+ }
5916
+ declare class TextValueProvider extends Component<Props$a> {
5917
+ static template: string;
5918
+ }
5919
+
5920
+ declare class ContentEditableHelper {
5921
+ el: HTMLElement;
5922
+ constructor(el: HTMLElement);
5923
+ updateEl(el: HTMLElement): void;
5924
+ /**
5925
+ * select the text at position start to end, no matter the children
5926
+ */
5927
+ selectRange(start: number, end: number): void;
5928
+ /**
5929
+ * finds the dom element that contains the character at `offset`
5930
+ */
5931
+ private findChildAtCharacterIndex;
5932
+ /**
5933
+ * Sets (or Replaces all) the text inside the root element in the form of distinctive
5934
+ * span for each element provided in `contents`.
5935
+ *
5936
+ * Each span will have its own fontcolor and specific class if provided in the HtmlContent object.
5937
+ */
5938
+ setText(contents: HtmlContent[][]): void;
5939
+ scrollSelectionIntoView(): void;
5940
+ /**
5941
+ * remove the current selection of the user
5942
+ * */
5943
+ removeSelection(): void;
5944
+ removeAll(): void;
5945
+ /**
5946
+ * finds the indexes of the current selection.
5947
+ * */
5948
+ getCurrentSelection(): {
5949
+ start: number;
5950
+ end: number;
5951
+ };
5952
+ private findSizeBeforeElement;
5953
+ private getStartAndEndSelection;
5954
+ getText(): string;
5955
+ }
5956
+
5957
+ interface Props$9 {
5958
+ functionName: string;
5959
+ functionDescription: FunctionDescription;
5960
+ argToFocus: number;
5961
+ }
5962
+ interface AssistantState {
5963
+ allowCellSelectionBehind: boolean;
5964
+ }
5965
+ declare class FunctionDescriptionProvider extends Component<Props$9> {
5966
+ static template: string;
5967
+ assistantState: AssistantState;
5968
+ private timeOutId;
5969
+ setup(): void;
5970
+ getContext(): Props$9;
5971
+ onMouseMove(): void;
5972
+ }
5973
+
5974
+ declare type HtmlContent = {
5975
+ value: string;
5976
+ color?: string;
5977
+ class?: string;
5978
+ };
5979
+ interface AutocompleteValue {
5980
+ text: string;
5981
+ description: string;
5982
+ }
5983
+ interface ComposerProps {
5984
+ focus: ComposerFocusType;
5985
+ onComposerContentFocused: (selection: ComposerSelection) => void;
5986
+ inputStyle?: string;
5987
+ rect?: Rect;
5988
+ delimitation?: DOMDimension;
5989
+ onComposerUnmounted?: () => void;
5990
+ }
5991
+ interface ComposerState$1 {
5992
+ positionStart: number;
5993
+ positionEnd: number;
5994
+ }
5995
+ interface AutoCompleteState {
5996
+ showProvider: boolean;
5997
+ selectedIndex: number;
5998
+ values: AutocompleteValue[];
5999
+ }
6000
+ interface FunctionDescriptionState {
6001
+ showDescription: boolean;
6002
+ functionName: string;
6003
+ functionDescription: FunctionDescription;
6004
+ argToFocus: number;
6005
+ }
6006
+ declare class Composer extends Component<ComposerProps, SpreadsheetChildEnv> {
6007
+ static template: string;
6008
+ static components: {
6009
+ TextValueProvider: typeof TextValueProvider;
6010
+ FunctionDescriptionProvider: typeof FunctionDescriptionProvider;
6011
+ };
6012
+ static defaultProps: {
6013
+ inputStyle: string;
6014
+ };
6015
+ composerRef: {
6016
+ el: HTMLElement | null;
6017
+ };
6018
+ contentHelper: ContentEditableHelper;
6019
+ composerState: ComposerState$1;
6020
+ autoCompleteState: AutoCompleteState;
6021
+ functionDescriptionState: FunctionDescriptionState;
6022
+ private isKeyStillDown;
6023
+ private compositionActive;
6024
+ get assistantStyle(): string;
6025
+ shouldProcessInputEvents: boolean;
6026
+ tokens: EnrichedToken[];
6027
+ keyMapping: {
6028
+ [key: string]: Function;
6029
+ };
6030
+ setup(): void;
6031
+ private processArrowKeys;
6032
+ private handleArrowKeysForAutocomplete;
6033
+ private processTabKey;
6034
+ private processEnterKey;
6035
+ private processEscapeKey;
6036
+ private processF4Key;
6037
+ onCompositionStart(): void;
6038
+ onCompositionEnd(): void;
6039
+ onKeydown(ev: KeyboardEvent): void;
6040
+ onInput(): void;
6041
+ onKeyup(ev: KeyboardEvent): void;
6042
+ showAutocomplete(searchTerm: string): void;
6043
+ onMousedown(ev: MouseEvent): void;
6044
+ onClick(): void;
6045
+ onBlur(): void;
6046
+ private processContent;
6047
+ /**
6048
+ * Get the HTML content corresponding to the current composer token, divided by lines.
6049
+ */
6050
+ private getContentLines;
6051
+ private getColoredTokens;
6052
+ /**
6053
+ * Split an array of HTMLContents into lines. Each NEWLINE character encountered will create a new
6054
+ * line. Contents can be split into multiple parts if they contain multiple NEWLINE characters.
6055
+ */
6056
+ private splitHtmlContentIntoLines;
6057
+ private isContentEmpty;
6058
+ private rangeColor;
6059
+ /**
6060
+ * Compute the state of the composer from the tokenAtCursor.
6061
+ * If the token is a function or symbol (that isn't a cell/range reference) we have to initialize
6062
+ * the autocomplete engine otherwise we initialize the formula assistant.
6063
+ */
6064
+ private processTokenAtCursor;
6065
+ private autoComplete;
6115
6066
  }
6116
6067
 
6117
- interface Props$4 {
6118
- }
6119
- interface ClickableCell {
6120
- coordinates: Rect;
6121
- position: Position$1;
6122
- action: (position: CellPosition, env: SpreadsheetChildEnv) => void;
6123
- tKey: string;
6068
+ interface Props$8 {
6069
+ focus: ComposerFocusType;
6070
+ onComposerContentFocused: (selection: ComposerSelection) => void;
6124
6071
  }
6125
- declare class SpreadsheetDashboard extends Component<Props$4, SpreadsheetChildEnv> {
6072
+ declare class TopBarComposer extends Component<Props$8, SpreadsheetChildEnv> {
6126
6073
  static template: string;
6127
6074
  static components: {
6128
- GridOverlay: typeof GridOverlay;
6129
- GridPopover: typeof GridPopover;
6130
- Popover: typeof Popover;
6131
- VerticalScrollBar: typeof VerticalScrollBar;
6132
- HorizontalScrollBar: typeof HorizontalScrollBar;
6133
- FilterIconsOverlay: typeof FilterIconsOverlay;
6075
+ Composer: typeof Composer;
6134
6076
  };
6135
- onMouseWheel: (ev: WheelEvent) => void;
6136
- canvasPosition: DOMCoordinates;
6137
- hoveredCell: Partial<Position$1>;
6138
- setup(): void;
6139
- onCellHovered({ col, row }: {
6140
- col: any;
6141
- row: any;
6142
- }): void;
6143
- get gridContainer(): string;
6144
- get gridOverlayDimensions(): string;
6145
- getCellClickableStyle(coordinates: Rect): string;
6146
- /**
6147
- * Get all the boxes for the cell in the sheet view that are clickable.
6148
- * This function is used to render an overlay over each clickable cell in
6149
- * order to display a pointer cursor.
6150
- *
6151
- */
6152
- getClickableCells(): ClickableCell[];
6153
- getClickableAction(position: CellPosition): false | ((position: CellPosition, env: SpreadsheetChildEnv) => void);
6154
- selectClickableCell(clickableCell: ClickableCell): void;
6155
- onClosePopover(): void;
6156
- onGridResized({ height, width }: DOMDimension): void;
6157
- private moveCanvas;
6158
- private getGridRect;
6077
+ get composerStyle(): string;
6078
+ get containerStyle(): string;
6159
6079
  }
6160
6080
 
6161
- interface Props$3 {
6162
- component: string;
6163
- panelProps: any;
6164
- onCloseSidePanel: () => void;
6165
- }
6166
6081
  interface State$1 {
6167
- panel: SidePanelContent;
6082
+ isOpen: boolean;
6083
+ }
6084
+ interface Props$7 {
6085
+ onToggle: () => void;
6086
+ dropdownStyle: string;
6168
6087
  }
6169
- declare class SidePanel extends Component<Props$3, SpreadsheetChildEnv> {
6088
+ declare class FontSizeEditor extends Component<Props$7, SpreadsheetChildEnv> {
6170
6089
  static template: string;
6171
- state: State$1;
6090
+ static components: {};
6091
+ fontSizes: number[];
6092
+ dropdown: State$1;
6093
+ private inputRef;
6094
+ private rootEditorRef;
6172
6095
  setup(): void;
6173
- getTitle(): string;
6174
- }
6175
-
6176
- interface FontSize {
6177
- pt: number;
6178
- px: number;
6096
+ onExternalClick(ev: MouseEvent): void;
6097
+ get currentFontSize(): number;
6098
+ toggleFontList(): void;
6099
+ closeFontList(): void;
6100
+ private setSize;
6101
+ setSizeFromInput(ev: InputEvent): void;
6102
+ setSizeFromList(fontSizeStr: string): void;
6103
+ onInputFocused(ev: InputEvent): void;
6104
+ onInputKeydown(ev: KeyboardEvent): void;
6179
6105
  }
6180
6106
 
6181
- declare type Tool = "" | "formatTool" | "alignTool" | "textColorTool" | "fillColorTool" | "borderTool" | "fontSizeTool";
6107
+ declare type Tool = "" | "formatTool" | "alignTool" | "textColorTool" | "fillColorTool" | "borderTool";
6182
6108
  interface State {
6183
6109
  menuState: MenuState;
6184
6110
  activeTool: Tool;
6185
6111
  }
6186
- interface Props$2 {
6112
+ interface Props$6 {
6187
6113
  onClick: () => void;
6188
6114
  focusComposer: Omit<ComposerFocusType, "cellFocus">;
6189
6115
  onComposerContentFocused: (selection: ComposerSelection) => void;
6190
6116
  dropdownMaxHeight: Pixel;
6191
6117
  }
6192
- declare class TopBar extends Component<Props$2, SpreadsheetChildEnv> {
6118
+ declare class TopBar extends Component<Props$6, SpreadsheetChildEnv> {
6193
6119
  static template: string;
6194
- DEFAULT_FONT_SIZE: number;
6195
6120
  static components: {
6196
- ColorPicker: typeof ColorPicker;
6121
+ ColorPickerWidget: typeof ColorPickerWidget;
6197
6122
  Menu: typeof Menu;
6198
- Composer: typeof Composer;
6123
+ TopBarComposer: typeof TopBarComposer;
6124
+ FontSizeEditor: typeof FontSizeEditor;
6199
6125
  };
6200
6126
  commonFormats: ({
6201
6127
  name: string;
@@ -6214,7 +6140,6 @@ declare class TopBar extends Component<Props$2, SpreadsheetChildEnv> {
6214
6140
  sidePanel: string;
6215
6141
  }[];
6216
6142
  currentFormatName: string;
6217
- fontSizes: FontSize[];
6218
6143
  get dropdownStyle(): string;
6219
6144
  style: Style;
6220
6145
  state: State;
@@ -6227,22 +6152,23 @@ declare class TopBar extends Component<Props$2, SpreadsheetChildEnv> {
6227
6152
  paintFormatTool: boolean;
6228
6153
  fillColor: string;
6229
6154
  textColor: string;
6230
- menus: FullMenuItem[];
6231
- composerStyle: string;
6155
+ menus: MenuItem[];
6232
6156
  setup(): void;
6233
6157
  get topbarComponents(): TopbarComponent[];
6234
6158
  onExternalClick(ev: MouseEvent): void;
6235
6159
  onClick(): void;
6236
6160
  toggleStyle(style: string): void;
6237
6161
  toggleFormat(formatName: string): void;
6238
- toggleAlign(align: Align): void;
6239
- onMenuMouseOver(menu: FullMenuItem, ev: MouseEvent): void;
6162
+ toggleHorizontalAlign(align: Align): void;
6163
+ toggleVerticalAlign(verticalAlign: VerticalAlign): void;
6164
+ toggleTextWrapping(wrapping: Wrapping): void;
6165
+ onMenuMouseOver(menu: MenuItem, ev: MouseEvent): void;
6240
6166
  toggleDropdownTool(tool: Tool, ev: MouseEvent): void;
6241
- toggleContextMenu(menu: FullMenuItem, ev: MouseEvent): void;
6167
+ toggleContextMenu(menu: MenuItem, ev: MouseEvent): void;
6242
6168
  private openMenu;
6243
6169
  closeMenus(): void;
6244
6170
  updateCellState(): void;
6245
- getMenuName(menu: FullMenuItem): string;
6171
+ getMenuName(menu: MenuItem): string;
6246
6172
  toggleMerge(): void;
6247
6173
  setColor(target: string, color: string): void;
6248
6174
  setBorder(command: BorderCommand): void;
@@ -6251,7 +6177,6 @@ declare class TopBar extends Component<Props$2, SpreadsheetChildEnv> {
6251
6177
  setDecimal(step: SetDecimalStep): void;
6252
6178
  paintFormat(): void;
6253
6179
  clearFormatting(): void;
6254
- setSize(fontSizeStr: string): void;
6255
6180
  doAction(action: (env: SpreadsheetChildEnv) => void): void;
6256
6181
  undo(): void;
6257
6182
  redo(): void;
@@ -6271,8 +6196,8 @@ interface SidePanelState {
6271
6196
  panelProps: any;
6272
6197
  }
6273
6198
  interface ComposerState {
6274
- topBarFocus: "inactive" | "contentFocus";
6275
- gridFocusMode: "inactive" | "cellFocus" | "contentFocus";
6199
+ topBarFocus: Exclude<ComposerFocusType, "cellFocus">;
6200
+ gridFocusMode: ComposerFocusType;
6276
6201
  }
6277
6202
  declare class Spreadsheet extends Component<SpreadsheetProps, SpreadsheetChildEnv> {
6278
6203
  static template: string;
@@ -6313,6 +6238,192 @@ declare class Spreadsheet extends Component<SpreadsheetProps, SpreadsheetChildEn
6313
6238
  get gridHeight(): Pixel;
6314
6239
  }
6315
6240
 
6241
+ interface Props$5 {
6242
+ focus: ComposerFocusType;
6243
+ onComposerUnmounted: () => void;
6244
+ onComposerContentFocused: (selection: ComposerSelection) => void;
6245
+ gridDims: ZoneDimension;
6246
+ }
6247
+ /**
6248
+ * This component is a composer which positions itself on the grid at the anchor cell.
6249
+ * It also applies the style of the cell to the composer input.
6250
+ */
6251
+ declare class GridComposer extends Component<Props$5, SpreadsheetChildEnv> {
6252
+ static template: string;
6253
+ static components: {
6254
+ Composer: typeof Composer;
6255
+ };
6256
+ private gridComposerRef;
6257
+ private zone;
6258
+ private rect;
6259
+ private isCellReferenceVisible;
6260
+ private composerState;
6261
+ setup(): void;
6262
+ get shouldDisplayCellReference(): boolean;
6263
+ get cellReference(): string;
6264
+ get cellReferenceStyle(): string;
6265
+ get containerStyle(): string;
6266
+ get composerStyle(): string;
6267
+ }
6268
+
6269
+ interface ResizerState {
6270
+ resizerIsActive: boolean;
6271
+ isResizing: boolean;
6272
+ isMoving: boolean;
6273
+ isSelecting: boolean;
6274
+ waitingForMove: boolean;
6275
+ activeElement: Pixel;
6276
+ draggerLinePosition: Pixel;
6277
+ draggerShadowPosition: Pixel;
6278
+ draggerShadowThickness: number;
6279
+ delta: number;
6280
+ base: number;
6281
+ }
6282
+ interface ResizerProps {
6283
+ onOpenContextMenu: (type: ContextMenuType, x: Pixel, y: Pixel) => void;
6284
+ }
6285
+ declare abstract class AbstractResizer extends Component<ResizerProps, SpreadsheetChildEnv> {
6286
+ PADDING: number;
6287
+ MAX_SIZE_MARGIN: number;
6288
+ MIN_ELEMENT_SIZE: number;
6289
+ lastSelectedElementIndex: HeaderIndex | null;
6290
+ state: ResizerState;
6291
+ abstract _getEvOffset(ev: MouseEvent): Pixel;
6292
+ abstract _getViewportOffset(): Pixel;
6293
+ abstract _getClientPosition(ev: MouseEvent): Pixel;
6294
+ abstract _getElementIndex(position: Pixel): HeaderIndex;
6295
+ abstract _getSelectedZoneStart(): HeaderIndex;
6296
+ abstract _getSelectedZoneEnd(): HeaderIndex;
6297
+ abstract _getEdgeScroll(position: Pixel): EdgeScrollInfo;
6298
+ abstract _getDimensionsInViewport(index: HeaderIndex): HeaderDimensions;
6299
+ abstract _getElementSize(index: HeaderIndex): Pixel;
6300
+ abstract _getMaxSize(): Pixel;
6301
+ abstract _updateSize(): void;
6302
+ abstract _moveElements(): void;
6303
+ abstract _selectElement(index: HeaderIndex, ctrlKey: boolean): void;
6304
+ abstract _increaseSelection(index: HeaderIndex): void;
6305
+ abstract _fitElementSize(index: HeaderIndex): void;
6306
+ abstract _getType(): ContextMenuType;
6307
+ abstract _getActiveElements(): Set<HeaderIndex>;
6308
+ abstract _getPreviousVisibleElement(index: HeaderIndex): HeaderIndex;
6309
+ _computeHandleDisplay(ev: MouseEvent): void;
6310
+ _computeGrabDisplay(ev: MouseEvent): void;
6311
+ onMouseMove(ev: MouseEvent): void;
6312
+ onMouseLeave(): void;
6313
+ onDblClick(ev: MouseEvent): void;
6314
+ onMouseDown(ev: MouseEvent): void;
6315
+ select(ev: MouseEvent): void;
6316
+ private startMovement;
6317
+ private startSelection;
6318
+ onMouseUp(ev: MouseEvent): void;
6319
+ onContextMenu(ev: MouseEvent): void;
6320
+ }
6321
+ declare class ColResizer extends AbstractResizer {
6322
+ static template: string;
6323
+ private colResizerRef;
6324
+ setup(): void;
6325
+ _getEvOffset(ev: MouseEvent): Pixel;
6326
+ _getViewportOffset(): Pixel;
6327
+ _getClientPosition(ev: MouseEvent): Pixel;
6328
+ _getElementIndex(position: Pixel): HeaderIndex;
6329
+ _getSelectedZoneStart(): HeaderIndex;
6330
+ _getSelectedZoneEnd(): HeaderIndex;
6331
+ _getEdgeScroll(position: Pixel): EdgeScrollInfo;
6332
+ _getDimensionsInViewport(index: HeaderIndex): HeaderDimensions;
6333
+ _getElementSize(index: HeaderIndex): Pixel;
6334
+ _getMaxSize(): Pixel;
6335
+ _updateSize(): void;
6336
+ _moveElements(): void;
6337
+ _selectElement(index: HeaderIndex, ctrlKey: boolean): void;
6338
+ _increaseSelection(index: HeaderIndex): void;
6339
+ _fitElementSize(index: HeaderIndex): void;
6340
+ _getType(): ContextMenuType;
6341
+ _getActiveElements(): Set<HeaderIndex>;
6342
+ _getPreviousVisibleElement(index: HeaderIndex): HeaderIndex;
6343
+ unhide(hiddenElements: HeaderIndex[]): void;
6344
+ unhideStyleValue(hiddenIndex: HeaderIndex): Pixel;
6345
+ }
6346
+ declare class RowResizer extends AbstractResizer {
6347
+ static template: string;
6348
+ setup(): void;
6349
+ private rowResizerRef;
6350
+ _getEvOffset(ev: MouseEvent): Pixel;
6351
+ _getViewportOffset(): Pixel;
6352
+ _getClientPosition(ev: MouseEvent): Pixel;
6353
+ _getElementIndex(position: Pixel): HeaderIndex;
6354
+ _getSelectedZoneStart(): HeaderIndex;
6355
+ _getSelectedZoneEnd(): HeaderIndex;
6356
+ _getEdgeScroll(position: Pixel): EdgeScrollInfo;
6357
+ _getDimensionsInViewport(index: HeaderIndex): HeaderDimensions;
6358
+ _getElementSize(index: HeaderIndex): Pixel;
6359
+ _getMaxSize(): Pixel;
6360
+ _updateSize(): void;
6361
+ _moveElements(): void;
6362
+ _selectElement(index: HeaderIndex, ctrlKey: boolean): void;
6363
+ _increaseSelection(index: HeaderIndex): void;
6364
+ _fitElementSize(index: HeaderIndex): void;
6365
+ _getType(): ContextMenuType;
6366
+ _getActiveElements(): Set<HeaderIndex>;
6367
+ _getPreviousVisibleElement(index: HeaderIndex): HeaderIndex;
6368
+ unhide(hiddenElements: HeaderIndex[]): void;
6369
+ unhideStyleValue(hiddenIndex: HeaderIndex): Pixel;
6370
+ }
6371
+ declare class HeadersOverlay extends Component<any, SpreadsheetChildEnv> {
6372
+ static template: string;
6373
+ static components: {
6374
+ ColResizer: typeof ColResizer;
6375
+ RowResizer: typeof RowResizer;
6376
+ };
6377
+ selectAll(): void;
6378
+ }
6379
+
6380
+ declare type Orientation$1 = "n" | "s" | "w" | "e";
6381
+ interface Props$4 {
6382
+ zone: Zone;
6383
+ orientation: Orientation$1;
6384
+ isMoving: boolean;
6385
+ onMoveHighlight: (x: Pixel, y: Pixel) => void;
6386
+ }
6387
+ declare class Border extends Component<Props$4, SpreadsheetChildEnv> {
6388
+ static template: string;
6389
+ get style(): string;
6390
+ onMouseDown(ev: MouseEvent): void;
6391
+ }
6392
+
6393
+ declare type Orientation = "nw" | "ne" | "sw" | "se";
6394
+ interface Props$3 {
6395
+ zone: Zone;
6396
+ color: string;
6397
+ orientation: Orientation;
6398
+ isResizing: boolean;
6399
+ onResizeHighlight: (isLeft: boolean, isRight: boolean) => void;
6400
+ }
6401
+ declare class Corner extends Component<Props$3, SpreadsheetChildEnv> {
6402
+ static template: string;
6403
+ private isTop;
6404
+ private isLeft;
6405
+ get style(): string;
6406
+ onMouseDown(ev: MouseEvent): void;
6407
+ }
6408
+
6409
+ interface Props$2 {
6410
+ zone: Zone;
6411
+ color: string;
6412
+ }
6413
+ interface HighlightState {
6414
+ shiftingMode: "isMoving" | "isResizing" | "none";
6415
+ }
6416
+ declare class Highlight extends Component<Props$2, SpreadsheetChildEnv> {
6417
+ static template: string;
6418
+ static components: {
6419
+ Corner: typeof Corner;
6420
+ Border: typeof Border;
6421
+ };
6422
+ highlightState: HighlightState;
6423
+ onResizeHighlight(isLeft: boolean, isTop: boolean): void;
6424
+ onMoveHighlight(clientX: Pixel, clientY: Pixel): void;
6425
+ }
6426
+
6316
6427
  /**
6317
6428
  * The Grid component is the main part of the spreadsheet UI. It is responsible
6318
6429
  * for displaying the actual grid, rendering it, managing events, ...
@@ -6369,7 +6480,7 @@ declare class Grid extends Component<Props$1, SpreadsheetChildEnv> {
6369
6480
  left: number;
6370
6481
  top: number;
6371
6482
  };
6372
- isAutoFillActive(): boolean;
6483
+ get isAutofillVisible(): boolean;
6373
6484
  onGridResized({ height, width }: DOMDimension): void;
6374
6485
  private moveCanvas;
6375
6486
  getClientPositionKey(client: Client): string;
@@ -6416,13 +6527,7 @@ declare function toString(value: string | number | boolean | null | undefined):
6416
6527
  declare function toBoolean(value: string | number | boolean | null | undefined): boolean;
6417
6528
  declare function toJsDate(value: string | number | boolean | null | undefined): Date;
6418
6529
 
6419
- /**
6420
- * This function is meant to be used as a tag for a template strings.
6421
- *
6422
- * Its job is to convert a textual description of the list of arguments into an
6423
- * actual array of Arg, suitable for consumption.
6424
- */
6425
- declare function args(strings: string): ArgDefinition[];
6530
+ declare function arg(definition: string, description?: string): ArgDefinition;
6426
6531
 
6427
6532
  declare class ChartColors {
6428
6533
  private graphColorIndex;
@@ -6437,7 +6542,7 @@ declare function chartFontColor(backgroundColor: Color | undefined): Color;
6437
6542
  /**
6438
6543
  * Get a default chart js configuration
6439
6544
  */
6440
- declare function getDefaultChartJsRuntime(chart: AbstractChart, labels: string[], fontColor: Color): ChartConfiguration;
6545
+ declare function getDefaultChartJsRuntime(chart: AbstractChart, labels: string[], fontColor: Color, dataSetsFormat?: Format | undefined): ChartConfiguration;
6441
6546
  /** See https://www.chartjs.org/docs/latest/charts/area.html#filling-modes */
6442
6547
  declare function getFillingMode(index: number): "origin" | number;
6443
6548
 
@@ -6453,8 +6558,6 @@ declare function createEmptySheet(sheetId: UID, name: string): SheetData;
6453
6558
  declare function createEmptyWorkbookData(sheetName?: string): WorkbookData;
6454
6559
  declare function createEmptyExcelSheet(sheetId: UID, name: string): ExcelSheetData;
6455
6560
 
6456
- declare function getMenuChildren(node: FullMenuItem, env: SpreadsheetChildEnv): FullMenuItem[];
6457
-
6458
6561
  declare const DATETIME_FORMAT: RegExp;
6459
6562
 
6460
6563
  /**
@@ -6486,12 +6589,7 @@ declare const registries: {
6486
6589
  mapping: {
6487
6590
  [key: string]: ComputeFunction<Arg, FunctionReturn>;
6488
6591
  };
6489
- add(name: string, addDescr: AddFunctionDescription): any; /**
6490
- * We export here all entities that needs to be accessed publicly by Odoo.
6491
- *
6492
- * Note that the __info__ key is actually completed by the build process (see
6493
- * the rollup.config.js file)
6494
- */
6592
+ add(name: string, addDescr: AddFunctionDescription): any;
6495
6593
  content: {
6496
6594
  [key: string]: FunctionDescription;
6497
6595
  };
@@ -6508,7 +6606,6 @@ declare const registries: {
6508
6606
  rowMenuRegistry: MenuItemRegistry;
6509
6607
  sidePanelRegistry: Registry<SidePanelContent>;
6510
6608
  figureRegistry: Registry<FigureContent>;
6511
- sheetMenuRegistry: MenuItemRegistry;
6512
6609
  chartSidePanelComponentRegistry: Registry<ChartSidePanel>;
6513
6610
  chartComponentRegistry: Registry<new (...args: any) => _odoo_owl.Component<any, any>>;
6514
6611
  chartRegistry: Registry<ChartBuilder>;
@@ -6535,7 +6632,7 @@ declare const registries: {
6535
6632
  cellPopoverRegistry: Registry<PopoverBuilders>;
6536
6633
  };
6537
6634
  declare const helpers: {
6538
- args: typeof args;
6635
+ arg: typeof arg;
6539
6636
  toBoolean: typeof toBoolean;
6540
6637
  toJsDate: typeof toJsDate;
6541
6638
  toNumber: typeof toNumber;
@@ -6544,7 +6641,6 @@ declare const helpers: {
6544
6641
  toZone: typeof toZone;
6545
6642
  toCartesian: typeof toCartesian;
6546
6643
  numberToLetters: typeof numberToLetters;
6547
- createFullMenuItem: typeof createFullMenuItem;
6548
6644
  UuidGenerator: typeof UuidGenerator;
6549
6645
  formatValue: typeof formatValue;
6550
6646
  computeTextWidth: typeof computeTextWidth;
@@ -6553,7 +6649,6 @@ declare const helpers: {
6553
6649
  createEmptyExcelSheet: typeof createEmptyExcelSheet;
6554
6650
  getDefaultChartJsRuntime: typeof getDefaultChartJsRuntime;
6555
6651
  chartFontColor: typeof chartFontColor;
6556
- getMenuChildren: typeof getMenuChildren;
6557
6652
  ChartColors: typeof ChartColors;
6558
6653
  EvaluationError: typeof EvaluationError;
6559
6654
  CellErrorLevel: typeof CellErrorLevel;
@@ -6562,6 +6657,7 @@ declare const helpers: {
6562
6657
  colorToRGBA: typeof colorToRGBA;
6563
6658
  positionToZone: typeof positionToZone;
6564
6659
  isDefined: typeof isDefined;
6660
+ lazy: typeof lazy;
6565
6661
  };
6566
6662
  declare const links: {
6567
6663
  isMarkdownLink: typeof isMarkdownLink;