@odoo/o-spreadsheet 20.1.0-alpha.0 → 20.1.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/o_spreadsheet.cjs +36872 -36621
- package/dist/o_spreadsheet.css +3 -3
- package/dist/o_spreadsheet.esm.js +36727 -36476
- package/dist/o_spreadsheet.iife.js +36723 -36472
- package/dist/o_spreadsheet.min.iife.js +309 -309
- package/dist/o_spreadsheet.xml +40 -6
- package/dist/types/actions/format_actions.d.ts +0 -1
- package/dist/types/components/figures/figure_carousel/figure_carousel.d.ts +1 -0
- package/dist/types/components/figures/figure_chart/figure_chart.d.ts +3 -1
- package/dist/types/components/grid/grid.d.ts +4 -0
- package/dist/types/components/grid_overlay/grid_overlay.d.ts +0 -1
- package/dist/types/components/header_resize_editor/header_resize_editor.d.ts +40 -0
- package/dist/types/components/named_range_selector/named_range_selector.d.ts +1 -0
- package/dist/types/components/number_editor/number_editor.d.ts +5 -0
- package/dist/types/components/side_panel/carousel_panel/carousel_panel.d.ts +1 -0
- package/dist/types/components/side_panel/conditional_formatting/cf_editor/cf_editor.d.ts +1 -0
- package/dist/types/components/side_panel/conditional_formatting/cf_preview/cf_preview.d.ts +1 -0
- package/dist/types/components/side_panel/conditional_formatting/cf_preview_list/cf_preview_list.d.ts +2 -0
- package/dist/types/components/side_panel/data_validation/data_validation_panel.d.ts +2 -0
- package/dist/types/components/side_panel/data_validation/dv_editor/dv_editor.d.ts +1 -0
- package/dist/types/components/side_panel/data_validation/dv_preview/dv_preview.d.ts +1 -0
- package/dist/types/components/side_panel/pivot/pivot_layout_configurator/pivot_measure/pivot_measure.d.ts +2 -0
- package/dist/types/components/side_panel/pivot/pivot_measure_display_panel/pivot_measure_display_panel.d.ts +1 -0
- package/dist/types/components/side_panel/pivot/pivot_title_section/pivot_title_section.d.ts +2 -0
- package/dist/types/components/side_panel/side_panel/side_panel.d.ts +1 -1
- package/dist/types/components/side_panel/side_panel/side_panel_store.d.ts +1 -1
- package/dist/types/components/side_panel/side_panels/side_panels.d.ts +2 -2
- package/dist/types/components/tables/table_dropdown_button/table_dropdown_button.d.ts +1 -0
- package/dist/types/components/tables/table_style_preview/table_style_preview.d.ts +1 -0
- package/dist/types/components/tables/table_styles_popover/table_styles_popover.d.ts +1 -0
- package/dist/types/components/top_bar/zoom_editor/zoom_editor.d.ts +4 -2
- package/dist/types/constants.d.ts +1 -0
- package/dist/types/helpers/format/format.d.ts +2 -0
- package/dist/types/index.d.ts +3 -2
- package/dist/types/registries/side_panel_registry.d.ts +2 -15
- package/dist/types/registries/side_panel_registry_definition.d.ts +21 -0
- package/dist/types/stores/viewports_store.d.ts +2 -0
- package/dist/types/types/spreadsheet_env.d.ts +0 -3
- package/package.json +1 -1
package/dist/o_spreadsheet.xml
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<!--
|
|
2
2
|
This file is generated by o-spreadsheet build tools. Do not edit it.
|
|
3
3
|
@see https://github.com/odoo/o-spreadsheet
|
|
4
|
-
@version 20.1.0-alpha.
|
|
5
|
-
@date 2026-09-
|
|
6
|
-
@hash
|
|
4
|
+
@version 20.1.0-alpha.2
|
|
5
|
+
@date 2026-09-21T06:31:53.568Z
|
|
6
|
+
@hash 63c49a8
|
|
7
7
|
-->
|
|
8
8
|
<odoo>
|
|
9
9
|
<t t-name="o-spreadsheet-ValidationMessages">
|
|
@@ -202,14 +202,14 @@
|
|
|
202
202
|
|
|
203
203
|
<div t-name="o-spreadsheet-TopBarZoom" t-on-click.stop="">
|
|
204
204
|
<NumberEditor
|
|
205
|
-
currentValue="this.
|
|
205
|
+
currentValue="this.getZoomLevel()"
|
|
206
206
|
onValueChange.bind="this.setZoom"
|
|
207
207
|
class="this.props.class"
|
|
208
208
|
onToggle.bind="this.toggle"
|
|
209
209
|
onFocusInput.bind="this.onFocusInput"
|
|
210
210
|
valueIcon="'%'"
|
|
211
|
-
min="
|
|
212
|
-
max="
|
|
211
|
+
min="this.minZoom"
|
|
212
|
+
max="this.maxZoom"
|
|
213
213
|
valueList="this.valueList"
|
|
214
214
|
title.translate="Zoom"
|
|
215
215
|
/>
|
|
@@ -6204,6 +6204,16 @@
|
|
|
6204
6204
|
/>
|
|
6205
6205
|
</svg>
|
|
6206
6206
|
</t>
|
|
6207
|
+
<t t-name="o-spreadsheet-Icon.RESIZE_HORIZONTAL">
|
|
6208
|
+
<div class="o-icon">
|
|
6209
|
+
<i class="oi" data-icon="width"/>
|
|
6210
|
+
</div>
|
|
6211
|
+
</t>
|
|
6212
|
+
<t t-name="o-spreadsheet-Icon.RESIZE_VERTICAL">
|
|
6213
|
+
<div class="o-icon">
|
|
6214
|
+
<i class="oi" data-icon="height"/>
|
|
6215
|
+
</div>
|
|
6216
|
+
</t>
|
|
6207
6217
|
<t t-name="o-spreadsheet-Icon.INSERT_CELL">
|
|
6208
6218
|
<svg class="o-icon" viewBox="0 0 18 18">
|
|
6209
6219
|
<path
|
|
@@ -7459,6 +7469,29 @@
|
|
|
7459
7469
|
</div>
|
|
7460
7470
|
</t>
|
|
7461
7471
|
|
|
7472
|
+
<t t-name="o-spreadsheet-HeaderResizeEditor">
|
|
7473
|
+
<Popover t-if="this.props.target()" t-props="this.popoverProps">
|
|
7474
|
+
<div class="p-3" t-ref="this.editorRef">
|
|
7475
|
+
<div class="d-flex align-items-center gap-3">
|
|
7476
|
+
<input
|
|
7477
|
+
type="number"
|
|
7478
|
+
class="o-input"
|
|
7479
|
+
t-on-input="this.onInput"
|
|
7480
|
+
t-on-keydown="this.onKeydown"
|
|
7481
|
+
t-ref="this.inputRef"
|
|
7482
|
+
/>
|
|
7483
|
+
<button type="button" class="o-button primary" t-on-click="this.apply">Apply</button>
|
|
7484
|
+
</div>
|
|
7485
|
+
<small t-if="this.isInputEmpty()" class="text-muted" t-out="this.emptyInputHint"/>
|
|
7486
|
+
<div
|
|
7487
|
+
t-if="this.errorMessage()"
|
|
7488
|
+
class="o-validation o-validation-error mt-2 px-2 py-1"
|
|
7489
|
+
t-out="this.errorMessage()"
|
|
7490
|
+
/>
|
|
7491
|
+
</div>
|
|
7492
|
+
</Popover>
|
|
7493
|
+
</t>
|
|
7494
|
+
|
|
7462
7495
|
<t t-name="o-spreadsheet-HeaderGroupContainer">
|
|
7463
7496
|
<div
|
|
7464
7497
|
class="o-header-group-container d-flex w-100 h-100 overflow-hidden"
|
|
@@ -7674,6 +7707,7 @@
|
|
|
7674
7707
|
anchorRect="this.menuState.anchorRect"
|
|
7675
7708
|
onClose="() => this.closeMenu()"
|
|
7676
7709
|
/>
|
|
7710
|
+
<HeaderResizeEditor target="this.headerResizeEditorTarget" gridRect="this.getGridRect()"/>
|
|
7677
7711
|
<t
|
|
7678
7712
|
t-if="this.displayTableResizer"
|
|
7679
7713
|
t-foreach="this.staticTables"
|
|
@@ -23,7 +23,6 @@ export declare const formatNumberScientific: NumberFormatActionSpec;
|
|
|
23
23
|
export declare const formatNumberCurrency: NumberFormatActionSpec;
|
|
24
24
|
export declare const formatNumberCurrencyRounded: NumberFormatActionSpec;
|
|
25
25
|
export declare const formatNumberAccounting: NumberFormatActionSpec;
|
|
26
|
-
export declare const EXAMPLE_DATE: CellValue;
|
|
27
26
|
export declare const formatCustomCurrency: ActionSpec;
|
|
28
27
|
export declare const formatNumberDate: NumberFormatActionSpec;
|
|
29
28
|
export declare const formatNumberTime: NumberFormatActionSpec;
|
|
@@ -28,6 +28,7 @@ export declare class CarouselFigure extends Component<SpreadsheetChildEnv> {
|
|
|
28
28
|
private hiddenItems;
|
|
29
29
|
protected animationStore: Store<ChartAnimationStore> | undefined;
|
|
30
30
|
private fullScreenFigureStore;
|
|
31
|
+
private sidePanelStore;
|
|
31
32
|
setup(): void;
|
|
32
33
|
get carousel(): Carousel;
|
|
33
34
|
get selectedCarouselItem(): CarouselItem | undefined;
|
|
@@ -1,19 +1,21 @@
|
|
|
1
|
+
import { Component } from "../../../owl3_compatibility_layer";
|
|
1
2
|
import { ChartType } from "../../../types/chart/chart";
|
|
2
3
|
import { UID } from "../../../types/misc";
|
|
3
4
|
import { Rect } from "../../../types/rendering";
|
|
4
5
|
import { SpreadsheetChildEnv } from "../../../types/spreadsheet_env";
|
|
5
6
|
import { ChartMenu } from "../chart/chart_menu/chart_menu";
|
|
6
|
-
import { Component } from "../../../owl3_compatibility_layer";
|
|
7
7
|
export declare class ChartFigure extends Component<SpreadsheetChildEnv> {
|
|
8
8
|
static template: string;
|
|
9
9
|
static components: {
|
|
10
10
|
ChartMenu: typeof ChartMenu;
|
|
11
11
|
};
|
|
12
|
+
private sidePanelStore;
|
|
12
13
|
protected props: import("@odoo/owl").Props<{
|
|
13
14
|
figureUI: import("../../..").FigureUI;
|
|
14
15
|
isFullScreen?: boolean | undefined;
|
|
15
16
|
openContextMenu?: ((anchorRect: Rect, onClose?: () => void) => void) | undefined;
|
|
16
17
|
}>;
|
|
18
|
+
setup(): void;
|
|
17
19
|
onDoubleClick(): void;
|
|
18
20
|
get chartType(): ChartType;
|
|
19
21
|
get chartId(): UID;
|
|
@@ -13,6 +13,7 @@ import { GridComposer } from "../composer/grid_composer/grid_composer";
|
|
|
13
13
|
import { FiguresContainer } from "../figures/figure_container/figure_container";
|
|
14
14
|
import { GridOverlay } from "../grid_overlay/grid_overlay";
|
|
15
15
|
import { GridPopover } from "../grid_popover/grid_popover";
|
|
16
|
+
import { HeaderResizeEditor } from "../header_resize_editor/header_resize_editor";
|
|
16
17
|
import { HeadersOverlay } from "../headers_overlay/headers_overlay";
|
|
17
18
|
import { ZoomedMouseEvent } from "../helpers/zoom";
|
|
18
19
|
import { Highlight } from "../highlight/highlight/highlight";
|
|
@@ -41,6 +42,7 @@ export declare class Grid extends Component<SpreadsheetChildEnv> {
|
|
|
41
42
|
GridComposer: typeof GridComposer;
|
|
42
43
|
GridOverlay: typeof GridOverlay;
|
|
43
44
|
GridPopover: typeof GridPopover;
|
|
45
|
+
HeaderResizeEditor: typeof HeaderResizeEditor;
|
|
44
46
|
HeadersOverlay: typeof HeadersOverlay;
|
|
45
47
|
MenuPopover: typeof MenuPopover;
|
|
46
48
|
Autofill: typeof Autofill;
|
|
@@ -60,6 +62,7 @@ export declare class Grid extends Component<SpreadsheetChildEnv> {
|
|
|
60
62
|
readonly HEADER_HEIGHT = 26;
|
|
61
63
|
readonly HEADER_WIDTH = 48;
|
|
62
64
|
private menuState;
|
|
65
|
+
private headerResizeEditorTarget;
|
|
63
66
|
private gridRef;
|
|
64
67
|
private canvasRef;
|
|
65
68
|
private highlightStore;
|
|
@@ -111,6 +114,7 @@ export declare class Grid extends Component<SpreadsheetChildEnv> {
|
|
|
111
114
|
onKeydown(ev: KeyboardEvent): void;
|
|
112
115
|
onInputContextMenu(ev: MouseEvent): void;
|
|
113
116
|
onCellRightClicked(col: HeaderIndex, row: HeaderIndex, { x, y }: DOMCoordinates): void;
|
|
117
|
+
private getMenuItems;
|
|
114
118
|
/**
|
|
115
119
|
* expects x and y coordinates in true pixels (not zoomed)
|
|
116
120
|
*/
|
|
@@ -35,7 +35,6 @@ export declare class GridOverlay extends Component<SpreadsheetChildEnv> {
|
|
|
35
35
|
onCellClicked(zoomedMouseEvent: ZoomedMouseEvent<MouseEvent | PointerEvent>): void;
|
|
36
36
|
onDoubleClick(ev: MouseEvent): void;
|
|
37
37
|
onContextMenu(ev: MouseEvent): void;
|
|
38
|
-
private getCartesianCoordinates;
|
|
39
38
|
private getInteractiveIconAtEvent;
|
|
40
39
|
get isFooterVisible(): boolean;
|
|
41
40
|
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Component } from "../../owl3_compatibility_layer";
|
|
2
|
+
import { Dimension, HeaderIndex } from "../../types/misc";
|
|
3
|
+
import { PropsOf } from "../../types/props_of";
|
|
4
|
+
import { Rect } from "../../types/rendering";
|
|
5
|
+
import { SpreadsheetChildEnv } from "../../types/spreadsheet_env";
|
|
6
|
+
import { Popover } from "../popover/popover";
|
|
7
|
+
export interface HeaderResizeEditorTarget {
|
|
8
|
+
dimension: Dimension;
|
|
9
|
+
index: HeaderIndex;
|
|
10
|
+
}
|
|
11
|
+
export declare class HeaderResizeEditor extends Component<SpreadsheetChildEnv> {
|
|
12
|
+
static template: string;
|
|
13
|
+
static components: {
|
|
14
|
+
Popover: typeof Popover;
|
|
15
|
+
};
|
|
16
|
+
protected props: import("@odoo/owl").Props<{
|
|
17
|
+
target: import("@odoo/owl").ReactiveValue<HeaderResizeEditorTarget | null, HeaderResizeEditorTarget | null>;
|
|
18
|
+
gridRect: Rect;
|
|
19
|
+
}>;
|
|
20
|
+
errorMessage: import("@odoo/owl").Signal<string>;
|
|
21
|
+
isInputEmpty: import("@odoo/owl").Signal<boolean>;
|
|
22
|
+
private inputRef;
|
|
23
|
+
private editorRef;
|
|
24
|
+
private viewStore;
|
|
25
|
+
private zoomStore;
|
|
26
|
+
private DOMFocusableElementStore;
|
|
27
|
+
setup(): void;
|
|
28
|
+
private get target();
|
|
29
|
+
get popoverProps(): PropsOf<Popover>;
|
|
30
|
+
private get anchorRect();
|
|
31
|
+
get minSize(): number;
|
|
32
|
+
get currentSize(): number;
|
|
33
|
+
onExternalClick(ev: MouseEvent): void;
|
|
34
|
+
private close;
|
|
35
|
+
onInput(ev: InputEvent): void;
|
|
36
|
+
get emptyInputHint(): string;
|
|
37
|
+
onKeydown(ev: KeyboardEvent): void;
|
|
38
|
+
apply(): void;
|
|
39
|
+
private validateAndParseSize;
|
|
40
|
+
}
|
|
@@ -14,6 +14,7 @@ export declare class NamedRangeSelector extends Component<SpreadsheetChildEnv> {
|
|
|
14
14
|
MenuPopover: typeof MenuPopover;
|
|
15
15
|
};
|
|
16
16
|
private DOMFocusableElementStore;
|
|
17
|
+
private sidePanelStore;
|
|
17
18
|
topBarToolStore: ToolBarDropdownStore;
|
|
18
19
|
menuState: State;
|
|
19
20
|
private namedRangeSelectorRef;
|
|
@@ -26,6 +26,11 @@ export declare class NumberEditor extends Component<SpreadsheetChildEnv> {
|
|
|
26
26
|
private inputRef;
|
|
27
27
|
private rootEditorRef;
|
|
28
28
|
private valueListRef;
|
|
29
|
+
/**
|
|
30
|
+
* Skips the change event triggered when moving focus out of the input.
|
|
31
|
+
* The value has already been committed by `onInputKeydown`.
|
|
32
|
+
*/
|
|
33
|
+
private skipNextInputChange;
|
|
29
34
|
private DOMFocusableElementStore;
|
|
30
35
|
setup(): void;
|
|
31
36
|
get popoverProps(): PropsOf<Popover>;
|
|
@@ -37,6 +37,7 @@ export declare class CarouselPanel extends Component<SpreadsheetChildEnv> {
|
|
|
37
37
|
private dragAndDrop;
|
|
38
38
|
private previewListRef;
|
|
39
39
|
addChartButton: import("@odoo/owl").Signal<HTMLButtonElement | null>;
|
|
40
|
+
private sidePanelStore;
|
|
40
41
|
state: CarouselPanelState;
|
|
41
42
|
setup(): void;
|
|
42
43
|
get carouselItems(): CarouselItem[];
|
|
@@ -13,6 +13,7 @@ export declare class ConditionalFormatPreview extends Component<SpreadsheetChild
|
|
|
13
13
|
svg: import("../../../../types/image").ImageSVG;
|
|
14
14
|
}>;
|
|
15
15
|
private cfPreviewRef;
|
|
16
|
+
private sidePanelStore;
|
|
16
17
|
setup(): void;
|
|
17
18
|
get previewImageStyle(): string;
|
|
18
19
|
get description(): string;
|
package/dist/types/components/side_panel/conditional_formatting/cf_preview_list/cf_preview_list.d.ts
CHANGED
|
@@ -12,6 +12,8 @@ export declare class ConditionalFormatPreviewList extends Component<SpreadsheetC
|
|
|
12
12
|
}>;
|
|
13
13
|
private dragAndDrop;
|
|
14
14
|
private cfListRef;
|
|
15
|
+
private sidePanelStore;
|
|
16
|
+
setup(): void;
|
|
15
17
|
get conditionalFormats(): ConditionalFormat[];
|
|
16
18
|
getPreviewDivStyle(cf: ConditionalFormat): string;
|
|
17
19
|
onPreviewMouseDown(cf: ConditionalFormat, event: MouseEvent): void;
|
|
@@ -9,6 +9,8 @@ export declare class DataValidationPanel extends Component<SpreadsheetChildEnv>
|
|
|
9
9
|
protected props: import("@odoo/owl").Props<{
|
|
10
10
|
onCloseSidePanel: () => void;
|
|
11
11
|
}>;
|
|
12
|
+
private sidePanelStore;
|
|
13
|
+
setup(): void;
|
|
12
14
|
addDataValidationRule(): void;
|
|
13
15
|
get validationRules(): import("../../..").DataValidationRule[];
|
|
14
16
|
}
|
|
@@ -28,6 +28,7 @@ export declare class DataValidationEditor extends Component<SpreadsheetChildEnv>
|
|
|
28
28
|
}>;
|
|
29
29
|
state: State;
|
|
30
30
|
private editingSheetId;
|
|
31
|
+
private sidePanelStore;
|
|
31
32
|
setup(): void;
|
|
32
33
|
onCriterionTypeChanged(type: DataValidationCriterionType): void;
|
|
33
34
|
onRangesChanged(ranges: string[]): void;
|
|
@@ -22,6 +22,8 @@ export declare class PivotMeasureEditor extends Component<SpreadsheetChildEnv> {
|
|
|
22
22
|
generateMeasureId: (fieldName: string, aggregator?: string) => string;
|
|
23
23
|
aggregators: {};
|
|
24
24
|
}>;
|
|
25
|
+
private sidePanelStore;
|
|
26
|
+
setup(): void;
|
|
25
27
|
getMeasureAutocomplete(): import("../../../../../registries/auto_completes/auto_complete_registry").AutoCompleteProviderDefinition;
|
|
26
28
|
updateMeasureFormula(formula: string): void;
|
|
27
29
|
updateAggregator(aggregator: string): void;
|
|
@@ -15,6 +15,8 @@ export declare class PivotTitleSection extends Component<SpreadsheetChildEnv> {
|
|
|
15
15
|
pivotId: import("../../../..").UID;
|
|
16
16
|
flipAxis: () => void;
|
|
17
17
|
}>;
|
|
18
|
+
private sidePanelStore;
|
|
19
|
+
setup(): void;
|
|
18
20
|
get cogWheelMenuItems(): ActionSpec[];
|
|
19
21
|
get name(): string;
|
|
20
22
|
get displayName(): string;
|
|
@@ -3,7 +3,7 @@ import { Component } from "../../../owl3_compatibility_layer";
|
|
|
3
3
|
export declare class SidePanel extends Component<SpreadsheetChildEnv> {
|
|
4
4
|
static template: string;
|
|
5
5
|
protected props: import("@odoo/owl").Props<{
|
|
6
|
-
panelContent: import("../../../registries/
|
|
6
|
+
panelContent: import("../../../registries/side_panel_registry_definition").SidePanelContent;
|
|
7
7
|
panelProps: import("./side_panel_store").SidePanelComponentProps;
|
|
8
8
|
onCloseSidePanel: () => void;
|
|
9
9
|
onStartHandleDrag: (ev: MouseEvent) => void;
|
|
@@ -43,7 +43,7 @@ export declare class SidePanelStore extends SpreadsheetStore {
|
|
|
43
43
|
open(componentTag: string, currentPanelProps?: SidePanelComponentProps): void;
|
|
44
44
|
replace(componentTag: string, currentPanelKey: string, currentPanelProps?: SidePanelComponentProps): void;
|
|
45
45
|
private _openPanel;
|
|
46
|
-
toggle(componentTag: string, panelProps
|
|
46
|
+
toggle(componentTag: string, panelProps?: SidePanelComponentProps): void;
|
|
47
47
|
close(): void;
|
|
48
48
|
closeMainPanel(): void;
|
|
49
49
|
changePanelSize(panel: "mainPanel" | "secondaryPanel", size: number): void;
|
|
@@ -18,7 +18,7 @@ export declare class SidePanels extends Component<SpreadsheetChildEnv> {
|
|
|
18
18
|
get panelList(): {
|
|
19
19
|
key: string | undefined;
|
|
20
20
|
props: (Omit<import("@odoo/owl").Props<{
|
|
21
|
-
panelContent: import("../../../registries/
|
|
21
|
+
panelContent: import("../../../registries/side_panel_registry_definition").SidePanelContent;
|
|
22
22
|
panelProps: import("../side_panel/side_panel_store").SidePanelComponentProps;
|
|
23
23
|
onCloseSidePanel: () => void;
|
|
24
24
|
onStartHandleDrag: (ev: MouseEvent) => void;
|
|
@@ -28,7 +28,7 @@ export declare class SidePanels extends Component<SpreadsheetChildEnv> {
|
|
|
28
28
|
onToggleCollapsePanel?: (() => void) | undefined;
|
|
29
29
|
isCollapsed?: boolean | undefined;
|
|
30
30
|
}>, typeof import("@odoo/owl").isProps> & Partial<Pick<import("@odoo/owl").Props<{
|
|
31
|
-
panelContent: import("../../../registries/
|
|
31
|
+
panelContent: import("../../../registries/side_panel_registry_definition").SidePanelContent;
|
|
32
32
|
panelProps: import("../side_panel/side_panel_store").SidePanelComponentProps;
|
|
33
33
|
onCloseSidePanel: () => void;
|
|
34
34
|
onStartHandleDrag: (ev: MouseEvent) => void;
|
|
@@ -21,6 +21,7 @@ export declare class TableDropdownButton extends Component<SpreadsheetChildEnv>
|
|
|
21
21
|
class?: string | undefined;
|
|
22
22
|
}>;
|
|
23
23
|
topBarToolStore: ToolBarDropdownStore;
|
|
24
|
+
private sidePanelStore;
|
|
24
25
|
state: State;
|
|
25
26
|
setup(): void;
|
|
26
27
|
onStylePicked(styleId: string): void;
|
|
@@ -45,6 +45,7 @@ export declare class TableStylesPopover extends Component<SpreadsheetChildEnv> {
|
|
|
45
45
|
selectedStyleId?: string | undefined;
|
|
46
46
|
}>;
|
|
47
47
|
private tableStyleListRef;
|
|
48
|
+
private sidePanelStore;
|
|
48
49
|
state: State;
|
|
49
50
|
setup(): void;
|
|
50
51
|
onExternalClick(ev: CustomTablePopoverMouseEvent): void;
|
|
@@ -13,9 +13,11 @@ export declare class ToolBarZoom extends Component<SpreadsheetChildEnv> {
|
|
|
13
13
|
topBarToolStore: ToolBarDropdownStore;
|
|
14
14
|
private zoomStore;
|
|
15
15
|
valueList: number[];
|
|
16
|
+
minZoom: number;
|
|
17
|
+
maxZoom: number;
|
|
16
18
|
setup(): void;
|
|
17
|
-
|
|
18
|
-
setZoom(
|
|
19
|
+
getZoomLevel(): number;
|
|
20
|
+
setZoom(zoomPercentage: number): void;
|
|
19
21
|
toggle(): void;
|
|
20
22
|
onFocusInput(): void;
|
|
21
23
|
}
|
|
@@ -39,6 +39,7 @@ export declare const PIVOT_TOKEN_COLOR = "#F28C28";
|
|
|
39
39
|
export declare const COLOR_PICKER_DEFAULTS: Color[];
|
|
40
40
|
export declare const MIN_ROW_HEIGHT = 10;
|
|
41
41
|
export declare const MIN_COL_WIDTH = 5;
|
|
42
|
+
export declare const MAX_HEADER_SIZE = 2000;
|
|
42
43
|
export declare const HEADER_HEIGHT = 26;
|
|
43
44
|
export declare const HEADER_WIDTH = 48;
|
|
44
45
|
export declare const DESKTOP_TOPBAR_TOOLBAR_HEIGHT = 34;
|
|
@@ -5,6 +5,8 @@ import { Locale } from "../../types/locale";
|
|
|
5
5
|
import { FunctionResultObject, Maybe } from "../../types/misc";
|
|
6
6
|
export declare const MONTHS: Readonly<Record<number, string>>;
|
|
7
7
|
export declare const DAYS: Readonly<Record<number, string>>;
|
|
8
|
+
/** Date used to preview date formats in the UI */
|
|
9
|
+
export declare const EXAMPLE_DATE: number;
|
|
8
10
|
interface FormatWidth {
|
|
9
11
|
availableWidth: number;
|
|
10
12
|
measureText: (text: string) => number;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -92,7 +92,7 @@ import { periodYearToComparable, pivotTimeAdapter } from "./helpers/pivot/pivot_
|
|
|
92
92
|
import { createEmptyExcelSheet, createEmptySheet, createEmptyWorkbookData } from "./migrations/data";
|
|
93
93
|
import { genericRepeat } from "./registries/repeat_commands_registry";
|
|
94
94
|
import { DependencyContainer } from "./store_engine/dependency_container";
|
|
95
|
-
import { useLocalStore, useStore, useStoreProvider } from "./store_engine/store_hooks";
|
|
95
|
+
import { proxifyStoreMutation, useLocalStore, useStore, useStoreProvider } from "./store_engine/store_hooks";
|
|
96
96
|
import { ClientFocusStore } from "./stores/client_focus_store";
|
|
97
97
|
import { GridRenderer } from "./stores/grid_renderer_store";
|
|
98
98
|
import { HighlightStore } from "./stores/highlight_store";
|
|
@@ -158,7 +158,7 @@ export declare const registries: {
|
|
|
158
158
|
evaluationPluginRegistry: import("./plugins/plugin_registries").PluginRegistry<import("./plugins/evaluation_plugin").EvaluationPluginConstructor>;
|
|
159
159
|
corePluginRegistry: import("./plugins/plugin_registries").PluginRegistry<import("./plugins/core_plugin").CorePluginConstructor>;
|
|
160
160
|
rowMenuRegistry: import("./registries/menu_items_registry").MenuItemRegistry;
|
|
161
|
-
sidePanelRegistry: import(".").Registry<import("./registries/
|
|
161
|
+
sidePanelRegistry: import(".").Registry<import("./registries/side_panel_registry_definition").SidePanelContent>;
|
|
162
162
|
figureRegistry: import(".").Registry<import("./registries/figures_registry").FigureContent>;
|
|
163
163
|
chartSidePanelComponentRegistry: import(".").Registry<import("./components/side_panel/chart/chart_side_panel_registry").ChartSidePanel>;
|
|
164
164
|
chartDataSourceSidePanelComponentRegistry: import(".").Registry<import("@odoo/owl").ComponentConstructor>;
|
|
@@ -422,6 +422,7 @@ export declare const compatibility: {
|
|
|
422
422
|
};
|
|
423
423
|
export declare const stores: {
|
|
424
424
|
useStoreProvider: typeof useStoreProvider;
|
|
425
|
+
proxifyStoreMutation: typeof proxifyStoreMutation;
|
|
425
426
|
DependencyContainer: typeof DependencyContainer;
|
|
426
427
|
CellPopoverStore: typeof CellPopoverStore;
|
|
427
428
|
ComposerFocusStore: typeof ComposerFocusStore;
|
|
@@ -1,15 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import { SpreadsheetChildEnv } from "../types/spreadsheet_env";
|
|
4
|
-
import { Registry } from "./registry";
|
|
5
|
-
export interface SidePanelContent {
|
|
6
|
-
title: string | ((env: SpreadsheetChildEnv, props: object) => string);
|
|
7
|
-
Body: any;
|
|
8
|
-
Footer?: any;
|
|
9
|
-
/**
|
|
10
|
-
* A callback used to validate the props or generate new props
|
|
11
|
-
* based on the current state of the spreadsheet model, using the getters.
|
|
12
|
-
*/
|
|
13
|
-
computeState?: (getters: Getters, initialProps: object) => SidePanelState;
|
|
14
|
-
}
|
|
15
|
-
export declare const sidePanelRegistry: Registry<SidePanelContent>;
|
|
1
|
+
export { sidePanelRegistry } from "./side_panel_registry_definition";
|
|
2
|
+
export type { SidePanelContent } from "./side_panel_registry_definition";
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SidePanelState } from "../components/side_panel/side_panel/side_panel_store";
|
|
2
|
+
import { Getters } from "../types/getters";
|
|
3
|
+
import { SpreadsheetChildEnv } from "../types/spreadsheet_env";
|
|
4
|
+
import { Registry } from "./registry";
|
|
5
|
+
/**
|
|
6
|
+
* The registry is defined in its own module, without any reference to the side
|
|
7
|
+
* panel components, to avoid a circular dependency between the side panel store
|
|
8
|
+
* (which reads the registry) and the panel components (which use the store).
|
|
9
|
+
* The registry content is declared in `side_panel_registry.ts`.
|
|
10
|
+
*/
|
|
11
|
+
export interface SidePanelContent {
|
|
12
|
+
title: string | ((env: SpreadsheetChildEnv, props: object) => string);
|
|
13
|
+
Body: any;
|
|
14
|
+
Footer?: any;
|
|
15
|
+
/**
|
|
16
|
+
* A callback used to validate the props or generate new props
|
|
17
|
+
* based on the current state of the spreadsheet model, using the getters.
|
|
18
|
+
*/
|
|
19
|
+
computeState?: (getters: Getters, initialProps: object) => SidePanelState;
|
|
20
|
+
}
|
|
21
|
+
export declare const sidePanelRegistry: Registry<SidePanelContent>;
|
|
@@ -13,6 +13,7 @@ type getHeaderDimensionsCallback = (sheetId: UID, dimension: "COL" | "ROW", inde
|
|
|
13
13
|
*/
|
|
14
14
|
export declare class ViewportsStore extends SpreadsheetStore {
|
|
15
15
|
mutators: readonly ["setViewportOffset", "resizeSheetView", "shiftViewportDown", "shiftViewportUp", "scrollToCell", "setDisplayedSheetId", "setViewportArgs", "rebuildViewports"];
|
|
16
|
+
storeGetters: readonly ["getCartesianCoordinates"];
|
|
16
17
|
private zoomStore;
|
|
17
18
|
private getHeaderDimensionsCallback;
|
|
18
19
|
private getFooterSizeCallback;
|
|
@@ -38,6 +39,7 @@ export declare class ViewportsStore extends SpreadsheetStore {
|
|
|
38
39
|
get sheetViewDimensionWithHeaders(): DOMDimension;
|
|
39
40
|
get sheetViewDimension(): DOMDimension;
|
|
40
41
|
get gridOffset(): DOMCoordinates;
|
|
42
|
+
getCartesianCoordinates(x: Pixel, y: Pixel): [HeaderIndex, HeaderIndex];
|
|
41
43
|
/** type as pane, not viewport but basically pane extends viewport */
|
|
42
44
|
get activeMainViewport(): Viewport;
|
|
43
45
|
/**
|
|
@@ -8,9 +8,6 @@ import { NotificationStoreMethods } from "./stores/notification_store_methods";
|
|
|
8
8
|
export interface SpreadsheetChildEnv extends NotificationStoreMethods {
|
|
9
9
|
model: Model;
|
|
10
10
|
imageProvider?: ImageProviderInterface;
|
|
11
|
-
openSidePanel: (panel: string, panelProps?: any) => void;
|
|
12
|
-
replaceSidePanel: (panel: string, currentPanel: string, panelProps?: any) => void;
|
|
13
|
-
toggleSidePanel: (panel: string, panelProps?: any) => void;
|
|
14
11
|
clipboard: ClipboardInterface;
|
|
15
12
|
startCellEdition: (content?: string) => void;
|
|
16
13
|
loadCurrencies?: () => Promise<Currency[]>;
|