@odoo/o-spreadsheet 19.4.0-alpha.12 → 19.4.0-alpha.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/o_spreadsheet.cjs +818 -840
  2. package/dist/o_spreadsheet.css +29 -6
  3. package/dist/o_spreadsheet.esm.js +426 -448
  4. package/dist/o_spreadsheet.iife.js +818 -840
  5. package/dist/o_spreadsheet.min.iife.js +78 -78
  6. package/dist/o_spreadsheet.xml +19 -12
  7. package/dist/types/components/action_button/action_button.d.ts +1 -1
  8. package/dist/types/components/animation/ripple.d.ts +3 -3
  9. package/dist/types/components/border_editor/border_editor.d.ts +2 -2
  10. package/dist/types/components/bottom_bar/bottom_bar.d.ts +1 -1
  11. package/dist/types/components/color_picker/color_picker.d.ts +2 -0
  12. package/dist/types/components/figures/figure_carousel/figure_carousel.d.ts +2 -1
  13. package/dist/types/components/figures/figure_chart/figure_chart.d.ts +1 -1
  14. package/dist/types/components/figures/figure_image/figure_image.d.ts +1 -1
  15. package/dist/types/components/filters/filter_menu_item/filter_menu_value_item.d.ts +2 -2
  16. package/dist/types/components/grid_overlay/grid_overlay.d.ts +2 -3
  17. package/dist/types/components/helpers/dom_helpers.d.ts +0 -4
  18. package/dist/types/components/menu/menu.d.ts +1 -1
  19. package/dist/types/components/menu_popover/menu_popover.d.ts +1 -1
  20. package/dist/types/components/props_validation.d.ts +2 -6
  21. package/dist/types/components/side_panel/chart/building_blocks/axis_design/axis_design_editor.d.ts +5 -6
  22. package/dist/types/components/side_panel/chart/building_blocks/data_source/data_source.d.ts +5 -4
  23. package/dist/types/components/side_panel/chart/building_blocks/general_design/general_design_editor.d.ts +7 -7
  24. package/dist/types/components/side_panel/chart/building_blocks/legend/legend.d.ts +3 -2
  25. package/dist/types/components/side_panel/chart/building_blocks/range_data_source/range_data_source.d.ts +3 -2
  26. package/dist/types/components/side_panel/chart/building_blocks/series_design/series_design_editor.d.ts +5 -5
  27. package/dist/types/components/side_panel/chart/building_blocks/series_design/series_with_axis_design_editor.d.ts +3 -3
  28. package/dist/types/components/side_panel/chart/building_blocks/show_values/show_values.d.ts +7 -4
  29. package/dist/types/components/side_panel/chart/common.d.ts +3 -2
  30. package/dist/types/components/side_panel/chart/geo_chart_panel/geo_chart_region_select_section.d.ts +4 -4
  31. package/dist/types/components/side_panel/pivot/pivot_layout_configurator/pivot_dimension/pivot_dimension.d.ts +2 -2
  32. package/dist/types/components/side_panel/pivot/pivot_layout_configurator/pivot_measure/pivot_measure.d.ts +1 -1
  33. package/dist/types/components/top_bar/font_size_editor/font_size_editor.d.ts +1 -1
  34. package/package.json +1 -1
@@ -2,9 +2,9 @@
2
2
  /**
3
3
  * This file is generated by o-spreadsheet build tools. Do not edit it.
4
4
  * @see https://github.com/odoo/o-spreadsheet
5
- * @version 19.4.0-alpha.12
6
- * @date 2026-06-06T06:24:48.209Z
7
- * @hash a71f829
5
+ * @version 19.4.0-alpha.14
6
+ * @date 2026-06-12T09:49:11.281Z
7
+ * @hash f92f5e0
8
8
  */
9
9
 
10
10
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
@@ -332,12 +332,6 @@ function downloadFile(dataUrl, fileName) {
332
332
  a.click();
333
333
  document.body.removeChild(a);
334
334
  }
335
- /**
336
- * Detects if the current browser is Firefox
337
- */
338
- function isBrowserFirefox() {
339
- return /Firefox/i.test(navigator.userAgent);
340
- }
341
335
  function maxTouchPoints() {
342
336
  return navigator.maxTouchPoints || 1;
343
337
  }
@@ -3009,6 +3003,187 @@ function getDependencyContainer(env) {
3009
3003
  return container;
3010
3004
  }
3011
3005
 
3006
+ //#endregion
3007
+ //#region src/components/props_validation.ts
3008
+ /**
3009
+ * Validate that a prop is a number, but with a more specific type than just `number` (e.g. `Pixel`).
3010
+ */
3011
+ function validateNumber() {
3012
+ return _odoo_owl.types.number();
3013
+ }
3014
+ /**
3015
+ * Validate that a prop is a string, but with a more specific type than just `string` (e.g. `Color`).
3016
+ */
3017
+ function validateString() {
3018
+ return _odoo_owl.types.string();
3019
+ }
3020
+ /**
3021
+ * Validate that a prop is an object, but with a more specific type than just `object` (e.g. `ActionSpec`).
3022
+ */
3023
+ function validateObject() {
3024
+ return _odoo_owl.types.object();
3025
+ }
3026
+ /**
3027
+ * Validate that a prop is an array, but with a more specific element type than `any[]`.
3028
+ */
3029
+ function validateArrayOf() {
3030
+ return _odoo_owl.types.array();
3031
+ }
3032
+ /**
3033
+ * Validate that a prop is a record (string-keyed dictionary), but with a more
3034
+ * specific value type than `any`.
3035
+ */
3036
+ function validateRecordOf() {
3037
+ return _odoo_owl.types.record();
3038
+ }
3039
+ /**
3040
+ * Validate that a prop is a `Set`, typed with a specific element type.
3041
+ */
3042
+ function validateSetOf() {
3043
+ return _odoo_owl.types.instanceOf(Set);
3044
+ }
3045
+ function validateRect() {
3046
+ return _odoo_owl.types.object({
3047
+ x: _odoo_owl.types.number(),
3048
+ y: _odoo_owl.types.number(),
3049
+ width: _odoo_owl.types.number(),
3050
+ height: _odoo_owl.types.number()
3051
+ });
3052
+ }
3053
+ function validateBorderPosition() {
3054
+ return _odoo_owl.types.customValidator(validateString(), (position) => borderPositions.includes(position));
3055
+ }
3056
+ function validateBorderStyle() {
3057
+ return _odoo_owl.types.customValidator(validateString(), (style) => borderStyles.includes(style));
3058
+ }
3059
+ function validateDOMCoordinates() {
3060
+ return _odoo_owl.types.object({
3061
+ x: _odoo_owl.types.number(),
3062
+ y: _odoo_owl.types.number()
3063
+ });
3064
+ }
3065
+ function validateDOMDimension() {
3066
+ return _odoo_owl.types.object({
3067
+ width: _odoo_owl.types.number(),
3068
+ height: _odoo_owl.types.number()
3069
+ });
3070
+ }
3071
+ function validateSortDirection() {
3072
+ return _odoo_owl.types.customValidator(validateString(), (direction) => ["asc", "desc"].includes(direction));
3073
+ }
3074
+ function validateResizeDirection() {
3075
+ return _odoo_owl.types.customValidator(validateNumber(), (direction) => [
3076
+ -1,
3077
+ 0,
3078
+ 1
3079
+ ].includes(direction));
3080
+ }
3081
+ function validateComposerFocusType() {
3082
+ return _odoo_owl.types.customValidator(validateString(), (value) => composerFocusTypes.includes(value));
3083
+ }
3084
+ function validateDimension() {
3085
+ return _odoo_owl.types.customValidator(validateString(), (value) => ["COL", "ROW"].includes(value));
3086
+ }
3087
+ function validateContextMenuType() {
3088
+ return _odoo_owl.types.customValidator(validateString(), (value) => [
3089
+ "ROW",
3090
+ "COL",
3091
+ "CELL",
3092
+ "FILTER",
3093
+ "GROUP_HEADERS",
3094
+ "UNGROUP_HEADERS"
3095
+ ].includes(value));
3096
+ }
3097
+ /**
3098
+ * Validate that a prop is a store. Typed as the CQS-wrapped `Store<T>` to
3099
+ * match what `useStore(...)` returns at the call site.
3100
+ */
3101
+ function validateStore() {
3102
+ return _odoo_owl.types.object();
3103
+ }
3104
+ function validateFunction() {
3105
+ return _odoo_owl.types.function();
3106
+ }
3107
+ const types = {
3108
+ ..._odoo_owl.types,
3109
+ function: validateFunction,
3110
+ ArrayOf: validateArrayOf,
3111
+ RecordOf: validateRecordOf,
3112
+ SetOf: validateSetOf,
3113
+ GenericCriterionType: validateString,
3114
+ UID: validateString,
3115
+ CriterionFilter: validateObject,
3116
+ CSSProperties: validateObject,
3117
+ ResizeDirection: validateResizeDirection,
3118
+ FigureUI: validateObject,
3119
+ Token: validateObject,
3120
+ CellPosition: validateObject,
3121
+ AutoCompleteProviderDefinition: validateObject,
3122
+ AutoCompleteProposal: validateObject,
3123
+ FunctionDescription: validateObject,
3124
+ Rect: validateRect,
3125
+ Pixel: validateNumber,
3126
+ HeaderIndex: validateNumber,
3127
+ BorderPosition: validateBorderPosition,
3128
+ BorderStyle: validateBorderStyle,
3129
+ Color: validateString,
3130
+ ActionSpec: validateObject,
3131
+ DOMCoordinates: validateDOMCoordinates,
3132
+ DOMDimension: validateDOMDimension,
3133
+ ComposerFocusType: validateComposerFocusType,
3134
+ SortDirection: validateSortDirection,
3135
+ Store: validateStore,
3136
+ Position: validateObject,
3137
+ PivotCoreDefinition: validateObject,
3138
+ PivotField: validateObject,
3139
+ PivotDimension: validateObject,
3140
+ PivotMeasure: validateObject,
3141
+ PivotCoreMeasure: validateObject,
3142
+ PivotCustomGroupedField: validateObject,
3143
+ PivotRuntimeDefinition: validateObject,
3144
+ PivotFilter: validateObject,
3145
+ DataFilterValue: validateObject,
3146
+ SpreadsheetPivotCoreDefinition: validateObject,
3147
+ ComposerSelection: validateObject,
3148
+ Action: validateObject,
3149
+ MenuItemOrSeparator: validateObject,
3150
+ Model: validateObject,
3151
+ DispatchResult: validateObject,
3152
+ Zone: validateObject,
3153
+ Range: validateObject,
3154
+ HeaderGroup: validateObject,
3155
+ GridClickModifiers: validateObject,
3156
+ ZoomedMouseEvent: validateObject,
3157
+ ConditionalFormat: validateObject,
3158
+ ColorScaleThreshold: validateObject,
3159
+ Table: validateObject,
3160
+ CoreTable: validateObject,
3161
+ TableConfig: validateObject,
3162
+ TableStyle: validateObject,
3163
+ TitleDesign: validateObject,
3164
+ ChartDefinition: validateObject,
3165
+ ChartDefinitionWithDataSource: validateObject,
3166
+ ChartWithAxisDefinition: validateObject,
3167
+ ChartStyle: validateObject,
3168
+ ChartColorScale: validateObject,
3169
+ ChartRangeDataSource: validateObject,
3170
+ DataSetStyle: validateObject,
3171
+ GeoChartDefinition: validateObject,
3172
+ FunnelChartDefinition: validateObject,
3173
+ TreeMapChartDefinition: validateObject,
3174
+ TreeMapCategoryColorOptions: validateObject,
3175
+ TreeMapColorScaleOptions: validateObject,
3176
+ NamedRange: validateObject,
3177
+ DataValidationRule: validateObject,
3178
+ InformationNotification: validateObject,
3179
+ NotificationStoreMethods: validateObject,
3180
+ SidePanelContent: validateObject,
3181
+ SidePanelComponentProps: validateObject,
3182
+ DataValidationCriterionType: validateString,
3183
+ Dimension: validateDimension,
3184
+ ContextMenuType: validateContextMenuType
3185
+ };
3186
+
3012
3187
  //#endregion
3013
3188
  //#region src/components/figures/chart/chartJs/chartjs_animation_store.ts
3014
3189
  var ChartAnimationStore = class extends SpreadsheetStore {
@@ -10558,7 +10733,7 @@ function getFunnelChartScales(definition, args) {
10558
10733
  };
10559
10734
  }
10560
10735
  function getGeoChartProjection(projection) {
10561
- if (projection === "conicConformal") return globalThis.ChartGeo.geoConicConformal().rotate([100, 0]);
10736
+ if (globalThis.ChartGeo && projection === "conicConformal") return globalThis.ChartGeo.geoConicConformal().rotate([100, 0]);
10562
10737
  return projection;
10563
10738
  }
10564
10739
  function getChartAxisTitleRuntime(design) {
@@ -11524,8 +11699,8 @@ chartJsExtensionRegistry.add("chartBackgroundPlugin", {
11524
11699
  var ChartJsComponent = class extends Component {
11525
11700
  static template = "o-spreadsheet-ChartJsComponent";
11526
11701
  props = (0, _odoo_owl.props)({
11527
- chartId: _odoo_owl.types.string(),
11528
- "isFullScreen?": _odoo_owl.types.boolean()
11702
+ chartId: types.string(),
11703
+ "isFullScreen?": types.boolean()
11529
11704
  });
11530
11705
  canvas = (0, _odoo_owl.signal)(null);
11531
11706
  chart;
@@ -12223,8 +12398,8 @@ function getZoomTargetPosition(ev, zoom) {
12223
12398
  var ScorecardChart = class extends Component {
12224
12399
  static template = "o-spreadsheet-ScorecardChart";
12225
12400
  props = (0, _odoo_owl.props)({
12226
- chartId: _odoo_owl.types.string(),
12227
- "isFullScreen?": _odoo_owl.types.boolean()
12401
+ chartId: types.string(),
12402
+ "isFullScreen?": types.boolean()
12228
12403
  });
12229
12404
  canvas = (0, _odoo_owl.signal)(null);
12230
12405
  get runtime() {
@@ -13912,8 +14087,8 @@ const ANIMATION_DURATION = 1e3;
13912
14087
  var GaugeChartComponent = class extends Component {
13913
14088
  static template = "o-spreadsheet-GaugeChartComponent";
13914
14089
  props = (0, _odoo_owl.props)({
13915
- chartId: _odoo_owl.types.string(),
13916
- "isFullScreen?": _odoo_owl.types.boolean()
14090
+ chartId: types.string(),
14091
+ "isFullScreen?": types.boolean()
13917
14092
  });
13918
14093
  canvas = (0, _odoo_owl.signal)(null);
13919
14094
  animationStore;
@@ -14185,200 +14360,23 @@ function useTimeOut() {
14185
14360
  };
14186
14361
  }
14187
14362
 
14188
- //#endregion
14189
- //#region src/components/props_validation.ts
14190
- /**
14191
- * Validate that a prop is a number, but with a more specific type than just `number` (e.g. `Pixel`).
14192
- */
14193
- function validateNumber() {
14194
- return _odoo_owl.types.number();
14195
- }
14196
- /**
14197
- * Validate that a prop is a string, but with a more specific type than just `string` (e.g. `Color`).
14198
- */
14199
- function validateString() {
14200
- return _odoo_owl.types.string();
14201
- }
14202
- /**
14203
- * Validate that a prop is an object, but with a more specific type than just `object` (e.g. `ActionSpec`).
14204
- */
14205
- function validateObject() {
14206
- return _odoo_owl.types.object();
14207
- }
14208
- /**
14209
- * Validate that a prop is an array, but with a more specific element type than `any[]`.
14210
- */
14211
- function validateArrayOf() {
14212
- return _odoo_owl.types.array();
14213
- }
14214
- /**
14215
- * Validate that a prop is a record (string-keyed dictionary), but with a more
14216
- * specific value type than `any`.
14217
- */
14218
- function validateRecordOf() {
14219
- return _odoo_owl.types.record();
14220
- }
14221
- /**
14222
- * Validate that a prop is a `Set`, typed with a specific element type.
14223
- */
14224
- function validateSetOf() {
14225
- return _odoo_owl.types.instanceOf(Set);
14226
- }
14227
- function validateRect() {
14228
- return _odoo_owl.types.object({
14229
- x: _odoo_owl.types.number(),
14230
- y: _odoo_owl.types.number(),
14231
- width: _odoo_owl.types.number(),
14232
- height: _odoo_owl.types.number()
14233
- });
14234
- }
14235
- function validateBorderPosition() {
14236
- return _odoo_owl.types.customValidator(validateString(), (position) => borderPositions.includes(position));
14237
- }
14238
- function validateBorderStyle() {
14239
- return _odoo_owl.types.customValidator(validateString(), (style) => borderStyles.includes(style));
14240
- }
14241
- function validateDOMCoordinates() {
14242
- return _odoo_owl.types.object({
14243
- x: _odoo_owl.types.number(),
14244
- y: _odoo_owl.types.number()
14245
- });
14246
- }
14247
- function validateDOMDimension() {
14248
- return _odoo_owl.types.object({
14249
- width: _odoo_owl.types.number(),
14250
- height: _odoo_owl.types.number()
14251
- });
14252
- }
14253
- function validateSortDirection() {
14254
- return _odoo_owl.types.customValidator(validateString(), (direction) => ["asc", "desc"].includes(direction));
14255
- }
14256
- function validateResizeDirection() {
14257
- return _odoo_owl.types.customValidator(validateNumber(), (direction) => [
14258
- -1,
14259
- 0,
14260
- 1
14261
- ].includes(direction));
14262
- }
14263
- function validateComposerFocusType() {
14264
- return _odoo_owl.types.customValidator(validateString(), (value) => composerFocusTypes.includes(value));
14265
- }
14266
- function validateDimension() {
14267
- return _odoo_owl.types.customValidator(validateString(), (value) => ["COL", "ROW"].includes(value));
14268
- }
14269
- function validateContextMenuType() {
14270
- return _odoo_owl.types.customValidator(validateString(), (value) => [
14271
- "ROW",
14272
- "COL",
14273
- "CELL",
14274
- "FILTER",
14275
- "GROUP_HEADERS",
14276
- "UNGROUP_HEADERS"
14277
- ].includes(value));
14278
- }
14279
- /**
14280
- * Validate that a prop is a store. Typed as the CQS-wrapped `Store<T>` to
14281
- * match what `useStore(...)` returns at the call site.
14282
- */
14283
- function validateStore() {
14284
- return _odoo_owl.types.object();
14285
- }
14286
- const types$6 = {
14287
- ..._odoo_owl.types,
14288
- ArrayOf: validateArrayOf,
14289
- RecordOf: validateRecordOf,
14290
- SetOf: validateSetOf,
14291
- GenericCriterionType: validateString,
14292
- UID: validateString,
14293
- CriterionFilter: validateObject,
14294
- CSSProperties: validateObject,
14295
- ResizeDirection: validateResizeDirection,
14296
- FigureUI: validateObject,
14297
- Token: validateObject,
14298
- CellPosition: validateObject,
14299
- AutoCompleteProviderDefinition: validateObject,
14300
- AutoCompleteProposal: validateObject,
14301
- FunctionDescription: validateObject,
14302
- Rect: validateRect,
14303
- Pixel: validateNumber,
14304
- HeaderIndex: validateNumber,
14305
- BorderPosition: validateBorderPosition,
14306
- BorderStyle: validateBorderStyle,
14307
- Color: validateString,
14308
- ActionSpec: validateObject,
14309
- DOMCoordinates: validateDOMCoordinates,
14310
- DOMDimension: validateDOMDimension,
14311
- ComposerFocusType: validateComposerFocusType,
14312
- SortDirection: validateSortDirection,
14313
- Store: validateStore,
14314
- Position: validateObject,
14315
- PivotCoreDefinition: validateObject,
14316
- PivotField: validateObject,
14317
- PivotDimension: validateObject,
14318
- PivotMeasure: validateObject,
14319
- PivotCoreMeasure: validateObject,
14320
- PivotCustomGroupedField: validateObject,
14321
- PivotRuntimeDefinition: validateObject,
14322
- PivotFilter: validateObject,
14323
- DataFilterValue: validateObject,
14324
- SpreadsheetPivotCoreDefinition: validateObject,
14325
- ComposerSelection: validateObject,
14326
- Action: validateObject,
14327
- MenuItemOrSeparator: validateObject,
14328
- Model: validateObject,
14329
- DispatchResult: validateObject,
14330
- Zone: validateObject,
14331
- Range: validateObject,
14332
- HeaderGroup: validateObject,
14333
- GridClickModifiers: validateObject,
14334
- ZoomedMouseEvent: validateObject,
14335
- ConditionalFormat: validateObject,
14336
- ColorScaleThreshold: validateObject,
14337
- Table: validateObject,
14338
- CoreTable: validateObject,
14339
- TableConfig: validateObject,
14340
- TableStyle: validateObject,
14341
- TitleDesign: validateObject,
14342
- ChartDefinition: validateObject,
14343
- ChartDefinitionWithDataSource: validateObject,
14344
- ChartWithAxisDefinition: validateObject,
14345
- ChartStyle: validateObject,
14346
- ChartColorScale: validateObject,
14347
- ChartRangeDataSource: validateObject,
14348
- DataSetStyle: validateObject,
14349
- GeoChartDefinition: validateObject,
14350
- FunnelChartDefinition: validateObject,
14351
- TreeMapChartDefinition: validateObject,
14352
- TreeMapCategoryColorOptions: validateObject,
14353
- TreeMapColorScaleOptions: validateObject,
14354
- NamedRange: validateObject,
14355
- DataValidationRule: validateObject,
14356
- InformationNotification: validateObject,
14357
- NotificationStoreMethods: validateObject,
14358
- SidePanelContent: validateObject,
14359
- SidePanelComponentProps: validateObject,
14360
- DataValidationCriterionType: validateString,
14361
- Dimension: validateDimension,
14362
- ContextMenuType: validateContextMenuType
14363
- };
14364
-
14365
14363
  //#endregion
14366
14364
  //#region src/components/menu/menu.ts
14367
14365
  var Menu = class extends Component {
14368
14366
  static template = "o-spreadsheet-Menu";
14369
14367
  static components = {};
14370
14368
  props = (0, _odoo_owl.props)({
14371
- menuItems: types$6.ArrayOf(),
14372
- onClose: types$6.function([]),
14373
- "onClickMenu?": types$6.function([types$6.Action(), types$6.instanceOf(PointerEvent)]),
14374
- "onMouseEnter?": types$6.function([types$6.Action(), types$6.instanceOf(PointerEvent)]),
14375
- "onMouseLeave?": types$6.function([types$6.Action(), types$6.instanceOf(PointerEvent)]),
14376
- "width?": types$6.number(),
14377
- "hoveredMenuId?": types$6.string(),
14378
- "isHoveredMenuFocused?": types$6.boolean(),
14379
- "onScroll?": types$6.function([types$6.instanceOf(CustomEvent)]),
14380
- "onKeyDown?": types$6.function([types$6.instanceOf(KeyboardEvent)]),
14381
- "disableKeyboardNavigation?": types$6.boolean()
14369
+ menuItems: types.ArrayOf(),
14370
+ onClose: types.function(),
14371
+ "onClickMenu?": types.function(),
14372
+ "onMouseEnter?": types.function(),
14373
+ "onMouseLeave?": types.function(),
14374
+ "width?": types.number(),
14375
+ "hoveredMenuId?": types.string(),
14376
+ "isHoveredMenuFocused?": types.boolean(),
14377
+ "onScroll?": types.function(),
14378
+ "onKeyDown?": types.function(),
14379
+ "disableKeyboardNavigation?": types.boolean()
14382
14380
  });
14383
14381
  menuRef = (0, _odoo_owl.signal)(null);
14384
14382
  setup() {
@@ -14518,17 +14516,17 @@ function usePopoverContainer() {
14518
14516
  var Popover = class extends Component {
14519
14517
  static template = "o-spreadsheet-Popover";
14520
14518
  props = (0, _odoo_owl.props)({
14521
- anchorRect: types$6.Rect(),
14522
- "containerRect?": types$6.object({}),
14523
- "positioning?": types$6.or([types$6.literal("top-right"), types$6.literal("bottom-left")]),
14524
- "maxWidth?": types$6.Pixel(),
14525
- "maxHeight?": types$6.Pixel(),
14526
- "verticalOffset?": types$6.number(),
14527
- "onMouseWheel?": types$6.function([]),
14528
- "onPopoverHidden?": types$6.function([]),
14529
- "onPopoverMoved?": types$6.function([]),
14530
- "zIndex?": types$6.number(),
14531
- "class?": types$6.string()
14519
+ anchorRect: types.Rect(),
14520
+ "containerRect?": types.object({}),
14521
+ "positioning?": types.or([types.literal("top-right"), types.literal("bottom-left")]),
14522
+ "maxWidth?": types.Pixel(),
14523
+ "maxHeight?": types.Pixel(),
14524
+ "verticalOffset?": types.number(),
14525
+ "onMouseWheel?": types.function(),
14526
+ "onPopoverHidden?": types.function(),
14527
+ "onPopoverMoved?": types.function(),
14528
+ "zIndex?": types.number(),
14529
+ "class?": types.string()
14532
14530
  }, {
14533
14531
  positioning: "bottom-left",
14534
14532
  verticalOffset: 0,
@@ -14703,19 +14701,19 @@ var MenuPopover = class MenuPopover extends Component {
14703
14701
  Popover
14704
14702
  };
14705
14703
  props = (0, _odoo_owl.props)({
14706
- anchorRect: types$6.Rect(),
14707
- "popoverPositioning?": types$6.or([types$6.literal("top-right"), types$6.literal("bottom-left")]),
14708
- menuItems: types$6.ArrayOf(),
14709
- "depth?": types$6.number(),
14710
- "maxHeight?": types$6.Pixel(),
14711
- onClose: types$6.function([]),
14712
- "onMenuClicked?": types$6.function([types$6.instanceOf(CustomEvent)]),
14713
- "menuId?": types$6.UID(),
14714
- "onMouseOver?": types$6.function([]),
14715
- "width?": types$6.number(),
14716
- "autoSelectFirstItem?": types$6.boolean(),
14717
- "disableKeyboardNavigation?": types$6.boolean(),
14718
- "onKeyboardNavigation?": types$6.function([types$6.instanceOf(KeyboardEvent)])
14704
+ anchorRect: types.Rect(),
14705
+ "popoverPositioning?": types.or([types.literal("top-right"), types.literal("bottom-left")]),
14706
+ menuItems: types.ArrayOf(),
14707
+ "depth?": types.number(),
14708
+ "maxHeight?": types.Pixel(),
14709
+ onClose: types.function(),
14710
+ "onMenuClicked?": types.function(),
14711
+ "menuId?": types.UID(),
14712
+ "onMouseOver?": types.function(),
14713
+ "width?": types.number(),
14714
+ "autoSelectFirstItem?": types.boolean(),
14715
+ "disableKeyboardNavigation?": types.boolean(),
14716
+ "onKeyboardNavigation?": types.function()
14719
14717
  }, {
14720
14718
  depth: 0,
14721
14719
  popoverPositioning: "top-right"
@@ -14961,13 +14959,13 @@ var Select = class extends Component {
14961
14959
  static template = "o-spreadsheet-Select";
14962
14960
  static components = { Popover };
14963
14961
  props = (0, _odoo_owl.props)({
14964
- onChange: types$6.function([types$6.string()]),
14965
- values: types$6.array(),
14966
- "selectedValue?": types$6.string(),
14967
- "class?": types$6.string(),
14968
- "popoverClass?": types$6.string(),
14969
- "name?": types$6.string(),
14970
- "title?": types$6.string()
14962
+ onChange: types.function(),
14963
+ values: types.array(),
14964
+ "selectedValue?": types.string(),
14965
+ "class?": types.string(),
14966
+ "popoverClass?": types.string(),
14967
+ "name?": types.string(),
14968
+ "title?": types.string()
14971
14969
  });
14972
14970
  selectRef = (0, _odoo_owl.signal)(null);
14973
14971
  dropdownRef = (0, _odoo_owl.signal)(null);
@@ -15075,8 +15073,8 @@ var ChartDashboardMenu = class extends Component {
15075
15073
  Select
15076
15074
  };
15077
15075
  props = (0, _odoo_owl.props)({
15078
- chartId: types$6.UID(),
15079
- "hasFullScreenButton?": types$6.boolean()
15076
+ chartId: types.UID(),
15077
+ "hasFullScreenButton?": types.boolean()
15080
15078
  }, { hasFullScreenButton: true });
15081
15079
  fullScreenFigureStore;
15082
15080
  menuState = (0, _odoo_owl.proxy)({
@@ -15145,10 +15143,10 @@ var CarouselFigure = class extends Component {
15145
15143
  MenuPopover
15146
15144
  };
15147
15145
  props = (0, _odoo_owl.props)({
15148
- figureUI: types$6.FigureUI(),
15149
- "editFigureStyle?": types$6.function([types$6.CSSProperties()]),
15150
- "isFullScreen?": types$6.boolean(),
15151
- "openContextMenu?": types$6.function([types$6.Rect(), types$6.function([])])
15146
+ figureUI: types.FigureUI(),
15147
+ "editFigureStyle?": types.function(),
15148
+ "isFullScreen?": types.boolean(),
15149
+ "openContextMenu?": types.function()
15152
15150
  });
15153
15151
  carouselTabsRef = (0, _odoo_owl.signal)(null);
15154
15152
  carouselTabsDropdownRef = (0, _odoo_owl.signal)(null);
@@ -15187,6 +15185,12 @@ var CarouselFigure = class extends Component {
15187
15185
  this.env.model.dispatch("SELECT_FIGURE", { figureId: this.props.figureUI.id });
15188
15186
  this.env.openSidePanel("CarouselPanel", { figureId: this.props.figureUI.id });
15189
15187
  }
15188
+ onCarouselChartDoubleClick() {
15189
+ if (this.selectedCarouselItem?.type !== "chart") return;
15190
+ const chartId = this.selectedCarouselItem.chartId;
15191
+ this.env.model.dispatch("SELECT_FIGURE", { figureId: this.props.figureUI.id });
15192
+ this.env.openSidePanel("ChartPanel", { chartId });
15193
+ }
15190
15194
  isItemSelected(item) {
15191
15195
  const selectedItem = this.selectedCarouselItem;
15192
15196
  return deepEquals(selectedItem, item);
@@ -15286,10 +15290,10 @@ var ChartFigure = class extends Component {
15286
15290
  static template = "o-spreadsheet-ChartFigure";
15287
15291
  static components = { ChartDashboardMenu };
15288
15292
  props = (0, _odoo_owl.props)({
15289
- figureUI: types$6.FigureUI(),
15290
- "editFigureStyle?": types$6.function([types$6.CSSProperties()]),
15291
- "isFullScreen?": types$6.boolean(),
15292
- "openContextMenu?": types$6.function([types$6.Rect(), types$6.function([])])
15293
+ figureUI: types.FigureUI(),
15294
+ "editFigureStyle?": types.function(),
15295
+ "isFullScreen?": types.boolean(),
15296
+ "openContextMenu?": types.function()
15293
15297
  });
15294
15298
  onDoubleClick() {
15295
15299
  this.env.model.dispatch("SELECT_FIGURE", { figureId: this.props.figureUI.id });
@@ -15317,9 +15321,9 @@ var ImageFigure = class extends Component {
15317
15321
  static template = "o-spreadsheet-ImageFigure";
15318
15322
  static components = {};
15319
15323
  props = (0, _odoo_owl.props)({
15320
- figureUI: types$6.FigureUI(),
15321
- "editFigureStyle?": types$6.function([types$6.CSSProperties()]),
15322
- "openContextMenu?": types$6.function([types$6.Rect(), types$6.function([])])
15324
+ figureUI: types.FigureUI(),
15325
+ "editFigureStyle?": types.function(),
15326
+ "openContextMenu?": types.function()
15323
15327
  });
15324
15328
  get figureId() {
15325
15329
  return this.props.figureUI.id;
@@ -15358,15 +15362,11 @@ var FigureComponent = class extends Component {
15358
15362
  static template = "o-spreadsheet-FigureComponent";
15359
15363
  static components = { MenuPopover };
15360
15364
  props = (0, _odoo_owl.props)({
15361
- figureUI: types$6.FigureUI(),
15362
- style: types$6.string(),
15363
- class: types$6.string(),
15364
- "onMouseDown?": types$6.function([types$6.instanceOf(MouseEvent)]),
15365
- "onClickAnchor?": types$6.function([
15366
- types$6.ResizeDirection(),
15367
- types$6.ResizeDirection(),
15368
- types$6.instanceOf(MouseEvent)
15369
- ])
15365
+ figureUI: types.FigureUI(),
15366
+ style: types.string(),
15367
+ class: types.string(),
15368
+ "onMouseDown?": types.function(),
15369
+ "onClickAnchor?": types.function()
15370
15370
  }, {
15371
15371
  onMouseDown: () => {},
15372
15372
  onClickAnchor: () => {}
@@ -15430,7 +15430,7 @@ var FigureComponent = class extends Component {
15430
15430
  * correctly (and render?) before focusing the element.
15431
15431
  */
15432
15432
  el?.focus({ preventScroll: true });
15433
- });
15433
+ }, () => [this.env.model.getters.getSelectedFigureIds(), this.props.figureUI.id]);
15434
15434
  }
15435
15435
  clickAnchor(dirX, dirY, ev) {
15436
15436
  this.props.onClickAnchor(dirX, dirY, ev);
@@ -24486,18 +24486,18 @@ function useAutofocus(ref) {
24486
24486
  //#endregion
24487
24487
  //#region src/components/generic_input/generic_input.ts
24488
24488
  const genericInputPropsDefinition = {
24489
- value: types$6.or([types$6.number(), types$6.string()]),
24490
- onChange: types$6.function([types$6.string()]),
24491
- "onFocused?": types$6.function([]),
24492
- "onBlur?": types$6.function([]),
24493
- "onInput?": types$6.function([types$6.string()]),
24494
- "class?": types$6.string(),
24495
- "id?": types$6.string(),
24496
- "placeholder?": types$6.string(),
24497
- "autofocus?": types$6.boolean(),
24498
- "alwaysShowBorder?": types$6.boolean(),
24499
- "selectContentOnFocus?": types$6.boolean(),
24500
- "resetOnBlur?": types$6.boolean()
24489
+ value: types.or([types.number(), types.string()]),
24490
+ onChange: types.function(),
24491
+ "onFocused?": types.function(),
24492
+ "onBlur?": types.function(),
24493
+ "onInput?": types.function(),
24494
+ "class?": types.string(),
24495
+ "id?": types.string(),
24496
+ "placeholder?": types.string(),
24497
+ "autofocus?": types.boolean(),
24498
+ "alwaysShowBorder?": types.boolean(),
24499
+ "selectContentOnFocus?": types.boolean(),
24500
+ "resetOnBlur?": types.boolean()
24501
24501
  };
24502
24502
  var GenericInput = class extends Component {
24503
24503
  props = (0, _odoo_owl.props)(genericInputPropsDefinition);
@@ -24585,8 +24585,8 @@ var TextInput = class extends GenericInput {
24585
24585
  static components = {};
24586
24586
  props = (0, _odoo_owl.props)({
24587
24587
  ...genericInputPropsDefinition,
24588
- value: types$6.string(),
24589
- "errorMessage?": types$6.string()
24588
+ value: types.string(),
24589
+ "errorMessage?": types.string()
24590
24590
  });
24591
24591
  get inputClass() {
24592
24592
  return [
@@ -24603,11 +24603,11 @@ var TextInput = class extends GenericInput {
24603
24603
  var ActionButton = class extends Component {
24604
24604
  static template = "o-spreadsheet-ActionButton";
24605
24605
  props = (0, _odoo_owl.props)({
24606
- action: types$6.ActionSpec(),
24607
- "hasTriangleDownIcon?": types$6.boolean(),
24608
- "selectedColor?": types$6.string(),
24609
- "class?": types$6.string(),
24610
- "onClick?": types$6.function()
24606
+ action: types.ActionSpec(),
24607
+ "hasTriangleDownIcon?": types.boolean(),
24608
+ "selectedColor?": types.string(),
24609
+ "class?": types.string(),
24610
+ "onClick?": types.function()
24611
24611
  });
24612
24612
  actionButton = createAction(this.props.action);
24613
24613
  setup() {
@@ -24662,11 +24662,11 @@ var ColorPicker = class extends Component {
24662
24662
  static template = "o-spreadsheet-ColorPicker";
24663
24663
  static components = { Popover };
24664
24664
  props = (0, _odoo_owl.props)({
24665
- onColorPicked: types$6.function([types$6.string()]),
24666
- "currentColor?": types$6.string(),
24667
- "maxHeight?": types$6.Pixel(),
24668
- anchorRect: types$6.Rect(),
24669
- "disableNoColor?": types$6.boolean()
24665
+ onColorPicked: types.function(),
24666
+ "currentColor?": types.string(),
24667
+ "maxHeight?": types.Pixel(),
24668
+ anchorRect: types.Rect(),
24669
+ "disableNoColor?": types.boolean()
24670
24670
  }, { currentColor: "" });
24671
24671
  COLORS = COLOR_PICKER_DEFAULTS;
24672
24672
  state = (0, _odoo_owl.proxy)({
@@ -24805,6 +24805,18 @@ var ColorPicker = class extends Component {
24805
24805
  isSameColor(color1, color2) {
24806
24806
  return isSameColor(color1, color2);
24807
24807
  }
24808
+ get canUseEyeDropper() {
24809
+ return !!globalThis.EyeDropper && !this.env.model.getters.isDarkMode();
24810
+ }
24811
+ async activateEyedropper() {
24812
+ if (!globalThis.EyeDropper) return;
24813
+ try {
24814
+ const result = await new globalThis.EyeDropper().open();
24815
+ if (result && result.sRGBHex) this.props.onColorPicked(toHex(result.sRGBHex));
24816
+ } catch (error) {
24817
+ if (error.name !== "AbortError") throw error;
24818
+ }
24819
+ }
24808
24820
  };
24809
24821
 
24810
24822
  //#endregion
@@ -24813,15 +24825,15 @@ var ColorPickerWidget = class extends Component {
24813
24825
  static template = "o-spreadsheet-ColorPickerWidget";
24814
24826
  static components = { ColorPicker };
24815
24827
  props = (0, _odoo_owl.props)({
24816
- "currentColor?": types$6.string(),
24817
- toggleColorPicker: types$6.function([]),
24818
- showColorPicker: types$6.boolean(),
24819
- onColorPicked: types$6.function([types$6.string()]),
24820
- icon: types$6.string(),
24821
- "title?": types$6.string(),
24822
- "disabled?": types$6.boolean(),
24823
- "dropdownMaxHeight?": types$6.Pixel(),
24824
- "class?": types$6.string()
24828
+ "currentColor?": types.string(),
24829
+ toggleColorPicker: types.function(),
24830
+ showColorPicker: types.boolean(),
24831
+ onColorPicked: types.function(),
24832
+ icon: types.string(),
24833
+ "title?": types.string(),
24834
+ "disabled?": types.boolean(),
24835
+ "dropdownMaxHeight?": types.Pixel(),
24836
+ "class?": types.string()
24825
24837
  });
24826
24838
  colorPickerButtonRef = (0, _odoo_owl.signal)(null);
24827
24839
  get iconStyle() {
@@ -24838,16 +24850,16 @@ var NumberEditor = class extends Component {
24838
24850
  static template = "o-spreadsheet-NumberEditor";
24839
24851
  static components = { Popover };
24840
24852
  props = (0, _odoo_owl.props)({
24841
- currentValue: types$6.number(),
24842
- onValueChange: types$6.function([types$6.number()]),
24843
- "onToggle?": types$6.function([]),
24844
- "onFocusInput?": types$6.function([]),
24845
- class: types$6.string(),
24846
- "valueIcon?": types$6.string(),
24847
- min: types$6.number(),
24848
- max: types$6.number(),
24849
- title: types$6.string(),
24850
- valueList: types$6.array(types$6.number())
24853
+ currentValue: types.number(),
24854
+ onValueChange: types.function(),
24855
+ "onToggle?": types.function(),
24856
+ "onFocusInput?": types.function(),
24857
+ class: types.string(),
24858
+ "valueIcon?": types.string(),
24859
+ min: types.number(),
24860
+ max: types.number(),
24861
+ title: types.string(),
24862
+ valueList: types.array(types.number())
24851
24863
  }, { onFocusInput: () => {} });
24852
24864
  dropdown = (0, _odoo_owl.proxy)({ isOpen: false });
24853
24865
  inputRef = (0, _odoo_owl.signal)(null);
@@ -24928,11 +24940,11 @@ var FontSizeEditor = class extends Component {
24928
24940
  static template = "o-spreadsheet-FontSizeEditor";
24929
24941
  static components = { NumberEditor };
24930
24942
  props = (0, _odoo_owl.props)({
24931
- currentFontSize: types$6.number(),
24932
- onFontSizeChanged: types$6.function([types$6.number()]),
24933
- "onToggle?": types$6.function([]),
24934
- "onFocusInput?": types$6.function([]),
24935
- class: types$6.string()
24943
+ currentFontSize: types.number(),
24944
+ onFontSizeChanged: types.function(),
24945
+ "onToggle?": types.function(),
24946
+ "onFocusInput?": types.function(),
24947
+ class: types.string()
24936
24948
  }, { onFocusInput: () => {} });
24937
24949
  fontSizes = FONT_SIZES;
24938
24950
  };
@@ -24947,13 +24959,13 @@ var TextStyler = class extends Component {
24947
24959
  FontSizeEditor
24948
24960
  };
24949
24961
  props = (0, _odoo_owl.props)({
24950
- style: types$6.ChartStyle(),
24951
- updateStyle: types$6.function([types$6.ChartStyle()]),
24952
- "defaultStyle?": types$6.object({}),
24953
- "hasVerticalAlign?": types$6.boolean(),
24954
- "hasHorizontalAlign?": types$6.boolean(),
24955
- "hasBackgroundColor?": types$6.boolean(),
24956
- "class?": types$6.string()
24962
+ style: types.ChartStyle(),
24963
+ updateStyle: types.function(),
24964
+ "defaultStyle?": types.object({}),
24965
+ "hasVerticalAlign?": types.boolean(),
24966
+ "hasHorizontalAlign?": types.boolean(),
24967
+ "hasBackgroundColor?": types.boolean(),
24968
+ "class?": types.string()
24957
24969
  });
24958
24970
  openedEl = null;
24959
24971
  setup() {
@@ -25136,7 +25148,7 @@ var TextStyler = class extends Component {
25136
25148
  var CogWheelMenu = class extends Component {
25137
25149
  static template = "o-spreadsheet-CogWheelMenu";
25138
25150
  static components = { MenuPopover };
25139
- props = (0, _odoo_owl.props)({ items: types$6.array(types$6.ActionSpec()) });
25151
+ props = (0, _odoo_owl.props)({ items: types.array(types.ActionSpec()) });
25140
25152
  buttonRef = (0, _odoo_owl.signal)(null);
25141
25153
  menuState = (0, _odoo_owl.proxy)({
25142
25154
  isOpen: false,
@@ -25157,9 +25169,9 @@ var CogWheelMenu = class extends Component {
25157
25169
  var Section = class extends Component {
25158
25170
  static template = "o_spreadsheet.Section";
25159
25171
  props = (0, _odoo_owl.props)({
25160
- "class?": types$6.string(),
25161
- "title?": types$6.string(),
25162
- slots: types$6.object()
25172
+ "class?": types.string(),
25173
+ "title?": types.string(),
25174
+ slots: types.object()
25163
25175
  });
25164
25176
  };
25165
25177
 
@@ -25174,8 +25186,8 @@ var CarouselPanel = class extends Component {
25174
25186
  CogWheelMenu
25175
25187
  };
25176
25188
  props = (0, _odoo_owl.props)({
25177
- onCloseSidePanel: types$6.function([]),
25178
- figureId: types$6.UID()
25189
+ onCloseSidePanel: types.function(),
25190
+ figureId: types.UID()
25179
25191
  });
25180
25192
  DEFAULT_CAROUSEL_TITLE_STYLE = DEFAULT_CAROUSEL_TITLE_STYLE;
25181
25193
  dragAndDrop = useDragAndDropListItems();
@@ -25384,13 +25396,13 @@ const chartDataSourceSidePanelComponentRegistry = new Registry();
25384
25396
  var Checkbox = class extends Component {
25385
25397
  static template = "o-spreadsheet.Checkbox";
25386
25398
  props = (0, _odoo_owl.props)({
25387
- "label?": types$6.string(),
25388
- "value?": types$6.boolean(),
25389
- "className?": types$6.string(),
25390
- "name?": types$6.string(),
25391
- "title?": types$6.string(),
25392
- "disabled?": types$6.boolean(),
25393
- onChange: types$6.function([types$6.boolean()])
25399
+ "label?": types.string(),
25400
+ "value?": types.boolean(),
25401
+ "className?": types.string(),
25402
+ "name?": types.string(),
25403
+ "title?": types.string(),
25404
+ "disabled?": types.boolean(),
25405
+ onChange: types.function()
25394
25406
  }, { value: false });
25395
25407
  onChange(ev) {
25396
25408
  const value = ev.target.checked;
@@ -25401,10 +25413,10 @@ var Checkbox = class extends Component {
25401
25413
  //#endregion
25402
25414
  //#region src/components/side_panel/chart/common.ts
25403
25415
  const chartSidePanelPropsDefinition = {
25404
- chartId: types$6.UID(),
25405
- definition: types$6.object({}),
25406
- canUpdateChart: types$6.function([types$6.UID(), types$6.object({})], types$6.DispatchResult()),
25407
- updateChart: types$6.function([types$6.UID(), types$6.object({})], types$6.DispatchResult())
25416
+ chartId: types.UID(),
25417
+ definition: types.object({}),
25418
+ canUpdateChart: types.function(),
25419
+ updateChart: types.function()
25408
25420
  };
25409
25421
 
25410
25422
  //#endregion
@@ -25893,20 +25905,20 @@ var SelectionInputStore = class extends SpreadsheetStore {
25893
25905
  var SelectionInput = class extends Component {
25894
25906
  static template = "o-spreadsheet-SelectionInput";
25895
25907
  props = (0, _odoo_owl.props)({
25896
- ranges: types$6.array(types$6.string()),
25897
- "hasSingleRange?": types$6.boolean(),
25898
- "required?": types$6.boolean(),
25899
- "autofocus?": types$6.boolean(),
25900
- "isInvalid?": types$6.boolean(),
25901
- "class?": types$6.string(),
25902
- "onSelectionChanged?": types$6.function([types$6.array(types$6.string())]),
25903
- "onSelectionConfirmed?": types$6.function([]),
25904
- "onSelectionReordered?": types$6.function([types$6.array(types$6.number())]),
25905
- "onSelectionRemoved?": types$6.function([types$6.number()]),
25906
- "onInputFocused?": types$6.function([]),
25907
- "colors?": types$6.ArrayOf(),
25908
- "disabledRanges?": types$6.array(types$6.boolean()),
25909
- "disabledRangeTitle?": types$6.string()
25908
+ ranges: types.array(types.string()),
25909
+ "hasSingleRange?": types.boolean(),
25910
+ "required?": types.boolean(),
25911
+ "autofocus?": types.boolean(),
25912
+ "isInvalid?": types.boolean(),
25913
+ "class?": types.string(),
25914
+ "onSelectionChanged?": types.function(),
25915
+ "onSelectionConfirmed?": types.function(),
25916
+ "onSelectionReordered?": types.function(),
25917
+ "onSelectionRemoved?": types.function(),
25918
+ "onInputFocused?": types.function(),
25919
+ "colors?": types.ArrayOf(),
25920
+ "disabledRanges?": types.array(types.boolean()),
25921
+ "disabledRangeTitle?": types.string()
25910
25922
  }, {
25911
25923
  colors: [],
25912
25924
  disabledRanges: []
@@ -26075,18 +26087,18 @@ var ChartDataSeries = class extends Component {
26075
26087
  Section
26076
26088
  };
26077
26089
  props = (0, _odoo_owl.props)({
26078
- ranges: types$6.ArrayOf(),
26079
- "dataSetStyles?": types$6.DataSetStyle(),
26080
- "hasSingleRange?": types$6.boolean(),
26081
- onSelectionChanged: types$6.function([types$6.array(types$6.string())]),
26082
- "onSelectionReordered?": types$6.function([types$6.array(types$6.number())]),
26083
- "onSelectionRemoved?": types$6.function([types$6.number()]),
26084
- onSelectionConfirmed: types$6.function([]),
26085
- "maxNumberOfUsedRanges?": types$6.number(),
26086
- "title?": types$6.string(),
26087
- "datasetOrientation?": types$6.or([types$6.literal("rows"), types$6.literal("columns")]),
26088
- "canChangeDatasetOrientation?": types$6.boolean(),
26089
- "onFlipAxis?": types$6.function([types$6.string()])
26090
+ ranges: types.ArrayOf(),
26091
+ "dataSetStyles?": types.DataSetStyle(),
26092
+ "hasSingleRange?": types.boolean(),
26093
+ onSelectionChanged: types.function(),
26094
+ "onSelectionReordered?": types.function(),
26095
+ "onSelectionRemoved?": types.function(),
26096
+ onSelectionConfirmed: types.function(),
26097
+ "maxNumberOfUsedRanges?": types.number(),
26098
+ "title?": types.string(),
26099
+ "datasetOrientation?": types.or([types.literal("rows"), types.literal("columns")]),
26100
+ "canChangeDatasetOrientation?": types.boolean(),
26101
+ "onFlipAxis?": types.function()
26090
26102
  });
26091
26103
  get ranges() {
26092
26104
  return this.props.ranges.map((r) => r.dataRange);
@@ -26116,13 +26128,13 @@ var ChartLabelRange = class extends Component {
26116
26128
  Section
26117
26129
  };
26118
26130
  props = (0, _odoo_owl.props)({
26119
- "title?": types$6.string(),
26120
- range: types$6.string(),
26121
- "class?": types$6.string(),
26122
- isInvalid: types$6.boolean(),
26123
- onSelectionChanged: types$6.function([types$6.string()]),
26124
- onSelectionConfirmed: types$6.function([]),
26125
- "options?": types$6.ArrayOf()
26131
+ "title?": types.string(),
26132
+ range: types.string(),
26133
+ "class?": types.string(),
26134
+ isInvalid: types.boolean(),
26135
+ onSelectionChanged: types.function(),
26136
+ onSelectionConfirmed: types.function(),
26137
+ "options?": types.ArrayOf()
26126
26138
  }, {
26127
26139
  title: _t("Categories / Labels"),
26128
26140
  options: []
@@ -26141,14 +26153,13 @@ var ChartDataSourceComponent = class extends Component {
26141
26153
  ChartLabelRange
26142
26154
  };
26143
26155
  props = (0, _odoo_owl.props)({
26144
- chartId: types$6.UID(),
26145
- definition: types$6.ChartDefinitionWithDataSource(),
26146
- updateChart: types$6.function([]),
26147
- canUpdateChart: types$6.function([]),
26148
- "onErrorMessagesChanged?": types$6.function([types$6.array(types$6.string())]),
26149
- "dataSeriesTitle?": types$6.string(),
26150
- "labelRangeTitle?": types$6.string(),
26151
- "getLabelRangeOptions?": types$6.function([])
26156
+ chartId: types.UID(),
26157
+ definition: types.ChartDefinitionWithDataSource(),
26158
+ updateChart: types.function(),
26159
+ canUpdateChart: types.function(),
26160
+ "dataSeriesTitle?": types.string(),
26161
+ "labelRangeTitle?": types.string(),
26162
+ "getLabelRangeOptions?": types.function
26152
26163
  });
26153
26164
  get DataSourceComponent() {
26154
26165
  const dataSourceType = this.props.definition.dataSource.type;
@@ -26161,13 +26172,13 @@ var ChartDataSourceComponent = class extends Component {
26161
26172
  var ValidationMessages = class extends Component {
26162
26173
  static template = "o-spreadsheet-ValidationMessages";
26163
26174
  props = (0, _odoo_owl.props)({
26164
- messages: types$6.array(types$6.string()),
26165
- msgType: types$6.or([
26166
- types$6.literal("warning"),
26167
- types$6.literal("error"),
26168
- types$6.literal("info")
26175
+ messages: types.array(types.string()),
26176
+ msgType: types.or([
26177
+ types.literal("warning"),
26178
+ types.literal("error"),
26179
+ types.literal("info")
26169
26180
  ]),
26170
- "singleBox?": types$6.boolean()
26181
+ "singleBox?": types.boolean()
26171
26182
  });
26172
26183
  get divClasses() {
26173
26184
  if (this.props.msgType === "warning") return "o-validation-warning";
@@ -26187,7 +26198,7 @@ var ChartErrorSection = class extends Component {
26187
26198
  Section,
26188
26199
  ValidationMessages
26189
26200
  };
26190
- props = (0, _odoo_owl.props)({ messages: types$6.array(types$6.string()) });
26201
+ props = (0, _odoo_owl.props)({ messages: types.array(types.string()) });
26191
26202
  };
26192
26203
 
26193
26204
  //#endregion
@@ -26247,7 +26258,7 @@ var BarConfigPanel = class extends GenericChartConfigPanel {
26247
26258
  //#region src/components/side_panel/components/collapse/collapse.ts
26248
26259
  var Collapse = class extends Component {
26249
26260
  static template = "o-spreadsheet-Collapse";
26250
- props = (0, _odoo_owl.props)({ isCollapsed: types$6.boolean() });
26261
+ props = (0, _odoo_owl.props)({ isCollapsed: types.boolean() });
26251
26262
  contentRef = (0, _odoo_owl.signal)(null);
26252
26263
  setup() {
26253
26264
  (0, _odoo_owl.onMounted)(() => {
@@ -26281,9 +26292,9 @@ var SidePanelCollapsible = class extends Component {
26281
26292
  static template = "o-spreadsheet-SidePanelCollapsible";
26282
26293
  static components = { Collapse };
26283
26294
  props = (0, _odoo_owl.props)({
26284
- "title?": types$6.string(),
26285
- "isInitiallyCollapsed?": types$6.boolean(),
26286
- "class?": types$6.string()
26295
+ "title?": types.string(),
26296
+ "isInitiallyCollapsed?": types.boolean(),
26297
+ "class?": types.string()
26287
26298
  });
26288
26299
  state = (0, _odoo_owl.proxy)({ isCollapsed: !!this.props.isInitiallyCollapsed });
26289
26300
  toggle() {
@@ -26298,8 +26309,8 @@ var NumberInput = class extends GenericInput {
26298
26309
  static components = {};
26299
26310
  props = (0, _odoo_owl.props)({
26300
26311
  ...genericInputPropsDefinition,
26301
- "min?": types$6.number(),
26302
- "max?": types$6.number()
26312
+ "min?": types.number(),
26313
+ "max?": types.number()
26303
26314
  });
26304
26315
  debouncedOnChange = debounce(this.props.onChange.bind(this), 100, true);
26305
26316
  save() {
@@ -26322,9 +26333,9 @@ var DateInput = class extends NumberInput {
26322
26333
  var BadgeSelection = class extends Component {
26323
26334
  static template = "o-spreadsheet.BadgeSelection";
26324
26335
  props = (0, _odoo_owl.props)({
26325
- choices: types$6.ArrayOf(),
26326
- onChange: types$6.function([types$6.string()]),
26327
- selectedValue: types$6.string()
26336
+ choices: types.ArrayOf(),
26337
+ onChange: types.function(),
26338
+ selectedValue: types.string()
26328
26339
  });
26329
26340
  };
26330
26341
 
@@ -26338,13 +26349,13 @@ var ChartTitle = class extends Component {
26338
26349
  TextInput
26339
26350
  };
26340
26351
  props = (0, _odoo_owl.props)({
26341
- "title?": types$6.string(),
26342
- "placeholder?": types$6.string(),
26343
- updateTitle: types$6.function([types$6.string()]),
26344
- "name?": types$6.string(),
26345
- style: types$6.TitleDesign(),
26346
- "defaultStyle?": types$6.object({}),
26347
- updateStyle: types$6.function([types$6.object({})])
26352
+ "title?": types.string(),
26353
+ "placeholder?": types.string(),
26354
+ updateTitle: types.function(),
26355
+ "name?": types.string(),
26356
+ style: types.TitleDesign(),
26357
+ "defaultStyle?": types.object({}),
26358
+ updateStyle: types.function()
26348
26359
  }, {
26349
26360
  title: "",
26350
26361
  placeholder: ""
@@ -26367,10 +26378,10 @@ var AxisDesignEditor = class extends Component {
26367
26378
  DateInput
26368
26379
  };
26369
26380
  props = (0, _odoo_owl.props)({
26370
- chartId: types$6.UID(),
26371
- definition: types$6.ChartWithAxisDefinition(),
26372
- updateChart: types$6.function([types$6.UID(), types$6.object({})], types$6.DispatchResult()),
26373
- axesList: types$6.ArrayOf()
26381
+ chartId: types.UID(),
26382
+ definition: types.ChartWithAxisDefinition(),
26383
+ updateChart: types.function(),
26384
+ axesList: types.ArrayOf()
26374
26385
  });
26375
26386
  state = (0, _odoo_owl.proxy)({ currentAxis: "x" });
26376
26387
  defaultFontSize = 12;
@@ -26542,11 +26553,11 @@ var AxisDesignEditor = class extends Component {
26542
26553
  var RadioSelection = class extends Component {
26543
26554
  static template = "o-spreadsheet.RadioSelection";
26544
26555
  props = (0, _odoo_owl.props)({
26545
- choices: types$6.ArrayOf(),
26546
- onChange: types$6.function([types$6.any()]),
26547
- selectedValue: types$6.string(),
26548
- name: types$6.string(),
26549
- "direction?": types$6.or([types$6.literal("horizontal"), types$6.literal("vertical")])
26556
+ choices: types.ArrayOf(),
26557
+ onChange: types.function(),
26558
+ selectedValue: types.string(),
26559
+ name: types.string(),
26560
+ "direction?": types.or([types.literal("horizontal"), types.literal("vertical")])
26550
26561
  }, { direction: "horizontal" });
26551
26562
  };
26552
26563
 
@@ -26559,10 +26570,10 @@ var RoundColorPicker = class extends Component {
26559
26570
  ColorPicker
26560
26571
  };
26561
26572
  props = (0, _odoo_owl.props)({
26562
- "currentColor?": types$6.string(),
26563
- "title?": types$6.string(),
26564
- onColorPicked: types$6.function([types$6.string()]),
26565
- "disableNoColor?": types$6.boolean()
26573
+ "currentColor?": types.string(),
26574
+ "title?": types.string(),
26575
+ onColorPicked: types.function(),
26576
+ "disableNoColor?": types.boolean()
26566
26577
  });
26567
26578
  colorPickerButtonRef = (0, _odoo_owl.signal)(null);
26568
26579
  state;
@@ -26600,11 +26611,11 @@ var GeneralDesignEditor = class extends Component {
26600
26611
  RadioSelection
26601
26612
  };
26602
26613
  props = (0, _odoo_owl.props)({
26603
- chartId: types$6.UID(),
26604
- definition: types$6.ChartDefinition(),
26605
- canUpdateChart: types$6.function([types$6.UID(), types$6.object({})], types$6.DispatchResult()),
26606
- updateChart: types$6.function([types$6.UID(), types$6.object({})], types$6.DispatchResult()),
26607
- "defaultChartTitleFontSize?": types$6.number()
26614
+ chartId: types.UID(),
26615
+ definition: types.ChartDefinition(),
26616
+ canUpdateChart: types.function(),
26617
+ updateChart: types.function(),
26618
+ "defaultChartTitleFontSize?": types.number()
26608
26619
  }, { defaultChartTitleFontSize: 16 });
26609
26620
  state;
26610
26621
  setup() {
@@ -26661,11 +26672,11 @@ var ChartLegend = class extends Component {
26661
26672
  Select
26662
26673
  };
26663
26674
  props = (0, _odoo_owl.props)({
26664
- chartId: types$6.string(),
26665
- definition: types$6.ChartDefinitionWithDataSource(),
26666
- canUpdateChart: types$6.function(),
26667
- updateChart: types$6.function(),
26668
- "isDisabled?": types$6.boolean()
26675
+ chartId: types.string(),
26676
+ definition: types.ChartDefinitionWithDataSource(),
26677
+ canUpdateChart: types.function(),
26678
+ updateChart: types.function(),
26679
+ "isDisabled?": types.boolean()
26669
26680
  }, { isDisabled: false });
26670
26681
  updateLegendPosition(value) {
26671
26682
  this.props.updateChart(this.props.chartId, { legendPosition: value });
@@ -26707,10 +26718,10 @@ var SeriesDesignEditor = class extends Component {
26707
26718
  Select
26708
26719
  };
26709
26720
  props = (0, _odoo_owl.props)({
26710
- chartId: types$6.UID(),
26711
- definition: types$6.ChartDefinitionWithDataSource(),
26712
- canUpdateChart: types$6.function([types$6.UID(), types$6.object({})], types$6.DispatchResult()),
26713
- updateChart: types$6.function([types$6.UID(), types$6.object({})], types$6.DispatchResult())
26721
+ chartId: types.UID(),
26722
+ definition: types.ChartDefinitionWithDataSource(),
26723
+ updateChart: types.function(),
26724
+ canUpdateChart: types.function()
26714
26725
  });
26715
26726
  state = (0, _odoo_owl.proxy)({ dataSetId: this.getDataSeries()[0]?.dataSetId || "" });
26716
26727
  getRuntime() {
@@ -26772,10 +26783,10 @@ var SeriesWithAxisDesignEditor = class extends Component {
26772
26783
  Select
26773
26784
  };
26774
26785
  props = (0, _odoo_owl.props)({
26775
- chartId: types$6.UID(),
26776
- definition: types$6.ChartDefinitionWithDataSource(),
26777
- canUpdateChart: types$6.function([types$6.UID(), types$6.object({})], types$6.DispatchResult()),
26778
- updateChart: types$6.function([types$6.UID(), types$6.object({})], types$6.DispatchResult())
26786
+ chartId: types.UID(),
26787
+ definition: types.ChartDefinitionWithDataSource(),
26788
+ updateChart: types.function(),
26789
+ canUpdateChart: types.function()
26779
26790
  });
26780
26791
  axisChoices = CHART_AXIS_CHOICES;
26781
26792
  updateDataSeriesAxis(dataSetId, axis) {
@@ -26912,11 +26923,11 @@ var ChartShowValues = class extends Component {
26912
26923
  static template = "o-spreadsheet-ChartShowValues";
26913
26924
  static components = { Checkbox };
26914
26925
  props = (0, _odoo_owl.props)({
26915
- chartId: types$6.UID(),
26916
- definition: types$6.ChartDefinitionWithDataSource(),
26917
- canUpdateChart: types$6.function([]),
26918
- updateChart: types$6.function([]),
26919
- "defaultValue?": types$6.boolean()
26926
+ chartId: types.UID(),
26927
+ definition: types.ChartDefinitionWithDataSource(),
26928
+ canUpdateChart: types.function(),
26929
+ updateChart: types.function(),
26930
+ "defaultValue?": types.boolean()
26920
26931
  });
26921
26932
  };
26922
26933
 
@@ -29550,15 +29561,15 @@ var ChartRangeDataSourceComponent = class extends Component {
29550
29561
  ChartLabelRange
29551
29562
  };
29552
29563
  props = (0, _odoo_owl.props)({
29553
- chartId: types$6.UID(),
29554
- definition: types$6.ChartDefinitionWithDataSource(),
29555
- dataSource: types$6.ChartRangeDataSource(),
29556
- updateChart: types$6.function([types$6.UID(), types$6.object({})], types$6.DispatchResult()),
29557
- canUpdateChart: types$6.function([types$6.UID(), types$6.object({})], types$6.DispatchResult()),
29558
- "onErrorMessagesChanged?": types$6.function([types$6.array(types$6.string())]),
29559
- "dataSeriesTitle?": types$6.string(),
29560
- "labelRangeTitle?": types$6.string(),
29561
- "getLabelRangeOptions?": types$6.function([])
29564
+ chartId: types.UID(),
29565
+ definition: types.ChartDefinitionWithDataSource(),
29566
+ dataSource: types.ChartRangeDataSource(),
29567
+ updateChart: types.function(),
29568
+ canUpdateChart: types.function(),
29569
+ "onErrorMessagesChanged?": types.function(),
29570
+ "dataSeriesTitle?": types.string(),
29571
+ "labelRangeTitle?": types.string(),
29572
+ "getLabelRangeOptions?": types.function
29562
29573
  });
29563
29574
  state = (0, _odoo_owl.proxy)({
29564
29575
  datasetDispatchResult: void 0,
@@ -30410,8 +30421,8 @@ var ColorScalePicker = class extends Component {
30410
30421
  Popover
30411
30422
  };
30412
30423
  props = (0, _odoo_owl.props)({
30413
- definition: types$6.object({ "colorScale?": types$6.ChartColorScale() }),
30414
- onUpdateColorScale: types$6.function([types$6.ChartColorScale()])
30424
+ definition: types.object({ "colorScale?": types.ChartColorScale() }),
30425
+ onUpdateColorScale: types.function()
30415
30426
  });
30416
30427
  colorScales = COLORSCALES.map((colorScale) => ({
30417
30428
  value: colorScale,
@@ -30613,7 +30624,7 @@ var FunnelChartDesignPanel = class extends Component {
30613
30624
  };
30614
30625
  props = (0, _odoo_owl.props)({
30615
30626
  ...chartSidePanelPropsDefinition,
30616
- definition: types$6.FunnelChartDefinition()
30627
+ definition: types.FunnelChartDefinition()
30617
30628
  });
30618
30629
  getFunnelColorItems() {
30619
30630
  const labels = this.env.model.getters.getChartRuntime(this.props.chartId).chartJsConfig.data.labels || [];
@@ -30663,10 +30674,10 @@ var GaugeChartConfigPanel = class extends Component {
30663
30674
  var TextValueProvider = class extends Component {
30664
30675
  static template = "o-spreadsheet-TextValueProvider";
30665
30676
  props = (0, _odoo_owl.props)({
30666
- proposals: types$6.array(types$6.AutoCompleteProposal()),
30667
- "selectedIndex?": types$6.number(),
30668
- onValueSelected: types$6.function([types$6.AutoCompleteProposal()]),
30669
- onValueHovered: types$6.function([types$6.string()])
30677
+ proposals: types.array(types.AutoCompleteProposal()),
30678
+ "selectedIndex?": types.number(),
30679
+ onValueSelected: types.function(),
30680
+ onValueHovered: types.function()
30670
30681
  });
30671
30682
  autoCompleteListRef = (0, _odoo_owl.signal)(null);
30672
30683
  setup() {
@@ -30886,9 +30897,9 @@ var FunctionDescriptionProvider = class extends Component {
30886
30897
  static template = "o-spreadsheet-FunctionDescriptionProvider";
30887
30898
  static components = { Collapse };
30888
30899
  props = (0, _odoo_owl.props)({
30889
- functionDescription: types$6.FunctionDescription(),
30890
- argsToFocus: types$6.array(types$6.number()),
30891
- "repeatingArgGroupIndex?": types$6.number()
30900
+ functionDescription: types.FunctionDescription(),
30901
+ argsToFocus: types.array(types.number()),
30902
+ "repeatingArgGroupIndex?": types.number()
30892
30903
  });
30893
30904
  state = (0, _odoo_owl.proxy)({ isCollapsed: true });
30894
30905
  toggle() {
@@ -30955,8 +30966,8 @@ var SpeechBubble = class extends Component {
30955
30966
  static template = "o-spreadsheet-SpeechBubble";
30956
30967
  static components = {};
30957
30968
  props = (0, _odoo_owl.props)({
30958
- content: types$6.string(),
30959
- anchorRect: types$6.Rect()
30969
+ content: types.string(),
30970
+ anchorRect: types.Rect()
30960
30971
  });
30961
30972
  spreadsheetRect = useSpreadsheetRect();
30962
30973
  bubbleRef = (0, _odoo_owl.signal)(null);
@@ -30990,18 +31001,18 @@ var Composer = class extends Component {
30990
31001
  SpeechBubble
30991
31002
  };
30992
31003
  props = (0, _odoo_owl.props)({
30993
- focus: types$6.ComposerFocusType(),
30994
- "inputStyle?": types$6.string(),
30995
- "rect?": types$6.Rect(),
30996
- "delimitation?": types$6.DOMDimension(),
30997
- "onComposerCellFocused?": types$6.function([types$6.string()]),
30998
- onComposerContentFocused: types$6.function([types$6.ComposerSelection()]),
30999
- "isDefaultFocus?": types$6.boolean(),
31000
- "onInputContextMenu?": types$6.function([types$6.instanceOf(MouseEvent)]),
31001
- composerStore: types$6.Store(),
31002
- "placeholder?": types$6.string(),
31003
- "inputMode?": types$6.string(),
31004
- "showAssistant?": types$6.boolean()
31004
+ focus: types.ComposerFocusType(),
31005
+ "inputStyle?": types.string(),
31006
+ "rect?": types.Rect(),
31007
+ "delimitation?": types.DOMDimension(),
31008
+ "onComposerCellFocused?": types.function(),
31009
+ onComposerContentFocused: types.function(),
31010
+ "isDefaultFocus?": types.boolean(),
31011
+ "onInputContextMenu?": types.function(),
31012
+ composerStore: types.Store(),
31013
+ "placeholder?": types.string(),
31014
+ "inputMode?": types.string(),
31015
+ "showAssistant?": types.boolean()
31005
31016
  }, {
31006
31017
  inputStyle: "",
31007
31018
  isDefaultFocus: false,
@@ -32574,17 +32585,17 @@ var StandaloneComposer = class extends Component {
32574
32585
  static template = "o-spreadsheet-StandaloneComposer";
32575
32586
  static components = { Composer };
32576
32587
  props = (0, _odoo_owl.props)({
32577
- onConfirm: types$6.function([types$6.string()]),
32578
- "composerContent?": types$6.string(),
32579
- defaultRangeSheetId: types$6.UID(),
32580
- "defaultStatic?": types$6.boolean(),
32581
- "contextualAutocomplete?": types$6.AutoCompleteProviderDefinition(),
32582
- "placeholder?": types$6.string(),
32583
- "title?": types$6.string(),
32584
- "class?": types$6.string(),
32585
- "invalid?": types$6.boolean(),
32586
- "autofocus?": types$6.boolean(),
32587
- "getContextualColoredSymbolToken?": types$6.function([types$6.Token()], types$6.Color())
32588
+ onConfirm: types.function(),
32589
+ "composerContent?": types.string(),
32590
+ defaultRangeSheetId: types.UID(),
32591
+ "defaultStatic?": types.boolean(),
32592
+ "contextualAutocomplete?": types.AutoCompleteProviderDefinition(),
32593
+ "placeholder?": types.string(),
32594
+ "title?": types.string(),
32595
+ "class?": types.string(),
32596
+ "invalid?": types.boolean(),
32597
+ "autofocus?": types.boolean(),
32598
+ "getContextualColoredSymbolToken?": types.function()
32588
32599
  }, {
32589
32600
  composerContent: "",
32590
32601
  defaultStatic: false
@@ -32784,9 +32795,9 @@ var GeoChartRegionSelectSection = class extends Component {
32784
32795
  Select
32785
32796
  };
32786
32797
  props = (0, _odoo_owl.props)({
32787
- chartId: types$6.UID(),
32788
- definition: types$6.GeoChartDefinition(),
32789
- updateChart: types$6.function([types$6.UID(), types$6.object({})], types$6.DispatchResult())
32798
+ chartId: types.UID(),
32799
+ definition: types.GeoChartDefinition(),
32800
+ updateChart: types.function()
32790
32801
  });
32791
32802
  updateSelectedRegion(value) {
32792
32803
  this.props.updateChart(this.props.chartId, { region: value });
@@ -32938,8 +32949,8 @@ var PieHoleSize = class extends Component {
32938
32949
  NumberInput
32939
32950
  };
32940
32951
  props = (0, _odoo_owl.props)({
32941
- onValueChange: types$6.function([types$6.number()]),
32942
- value: types$6.number()
32952
+ onValueChange: types.function(),
32953
+ value: types.number()
32943
32954
  });
32944
32955
  onChange(value) {
32945
32956
  if (!isNaN(Number(value))) this.props.onValueChange(clip(Number(value), 0, 95));
@@ -33261,9 +33272,9 @@ var TreeMapCategoryColors = class extends Component {
33261
33272
  RoundColorPicker
33262
33273
  };
33263
33274
  props = (0, _odoo_owl.props)({
33264
- chartId: types$6.UID(),
33265
- definition: types$6.TreeMapChartDefinition(),
33266
- onColorChanged: types$6.function([types$6.TreeMapCategoryColorOptions()], types$6.DispatchResult())
33275
+ chartId: types.UID(),
33276
+ definition: types.TreeMapChartDefinition(),
33277
+ onColorChanged: types.function()
33267
33278
  });
33268
33279
  get coloringOptions() {
33269
33280
  const coloringOptions = this.props.definition.coloringOptions ?? TreeMapChartDefaults.coloringOptions;
@@ -33293,9 +33304,9 @@ var TreeMapColorScale = class extends Component {
33293
33304
  static template = "o-spreadsheet-TreeMapColorScale";
33294
33305
  static components = { RoundColorPicker };
33295
33306
  props = (0, _odoo_owl.props)({
33296
- chartId: types$6.UID(),
33297
- definition: types$6.TreeMapChartDefinition(),
33298
- onColorChanged: types$6.function([types$6.TreeMapColorScaleOptions()], types$6.DispatchResult())
33307
+ chartId: types.UID(),
33308
+ definition: types.TreeMapChartDefinition(),
33309
+ onColorChanged: types.function()
33299
33310
  });
33300
33311
  get coloringOptions() {
33301
33312
  const coloringOptions = this.props.definition.coloringOptions ?? TreeMapChartDefaults.coloringOptions;
@@ -33510,8 +33521,8 @@ var ChartTypePicker = class extends Component {
33510
33521
  Popover
33511
33522
  };
33512
33523
  props = (0, _odoo_owl.props)({
33513
- chartId: types$6.UID(),
33514
- chartPanelStore: types$6.Store()
33524
+ chartId: types.UID(),
33525
+ chartPanelStore: types.Store()
33515
33526
  });
33516
33527
  categories = chartCategories;
33517
33528
  chartTypeByCategories = {};
@@ -33688,8 +33699,8 @@ var ChartPanel = class extends Component {
33688
33699
  ChartTypePicker
33689
33700
  };
33690
33701
  props = (0, _odoo_owl.props)({
33691
- onCloseSidePanel: types$6.function([]),
33692
- chartId: types$6.UID()
33702
+ onCloseSidePanel: types.function(),
33703
+ chartId: types.UID()
33693
33704
  });
33694
33705
  store;
33695
33706
  get chartId() {
@@ -34087,7 +34098,7 @@ var ColumnStatsPanel = class extends Component {
34087
34098
  BadgeSelection,
34088
34099
  Section
34089
34100
  };
34090
- props = (0, _odoo_owl.props)({ onCloseSidePanel: types$6.function([]) });
34101
+ props = (0, _odoo_owl.props)({ onCloseSidePanel: types.function() });
34091
34102
  state = (0, _odoo_owl.proxy)({
34092
34103
  currentChart: "count",
34093
34104
  currentFrequencyOrder: "descending",
@@ -34330,7 +34341,7 @@ var CellIsRuleEditor = class extends Component {
34330
34341
  ColorPickerWidget,
34331
34342
  Select
34332
34343
  };
34333
- props = (0, _odoo_owl.props)({ store: types$6.Store() });
34344
+ props = (0, _odoo_owl.props)({ store: types.Store() });
34334
34345
  getTextDecoration = getTextDecoration;
34335
34346
  get rule() {
34336
34347
  return this.props.store.state.rules.cellIs;
@@ -34341,10 +34352,10 @@ var CellIsRuleEditor = class extends Component {
34341
34352
  //#region src/components/side_panel/criterion_form/criterion_form.ts
34342
34353
  var CriterionForm = class extends Component {
34343
34354
  props = (0, _odoo_owl.props)({
34344
- criterion: types$6.object({}),
34345
- onCriterionChanged: types$6.function([types$6.object({})]),
34346
- "disableFormulas?": types$6.boolean(),
34347
- "autofocus?": types$6.boolean()
34355
+ criterion: types.object({}),
34356
+ onCriterionChanged: types.function(),
34357
+ "disableFormulas?": types.boolean(),
34358
+ "autofocus?": types.boolean()
34348
34359
  });
34349
34360
  setup() {
34350
34361
  const composerFocusStore = useStore(ComposerFocusStore);
@@ -34928,14 +34939,14 @@ var CriterionInput = class extends Component {
34928
34939
  static template = "o-spreadsheet-CriterionInput";
34929
34940
  static components = { StandaloneComposer };
34930
34941
  props = (0, _odoo_owl.props)({
34931
- "value?": types$6.string(),
34932
- criterionType: types$6.DataValidationCriterionType(),
34933
- onValueChanged: types$6.function([types$6.string()]),
34934
- "onKeyDown?": types$6.function([types$6.instanceOf(KeyboardEvent)]),
34935
- "focused?": types$6.boolean(),
34936
- "onBlur?": types$6.function([]),
34937
- "onFocus?": types$6.function([]),
34938
- "disableFormulas?": types$6.boolean()
34942
+ "value?": types.string(),
34943
+ criterionType: types.DataValidationCriterionType(),
34944
+ onValueChanged: types.function(),
34945
+ "onKeyDown?": types.function(),
34946
+ "focused?": types.boolean(),
34947
+ "onBlur?": types.function(),
34948
+ "onFocus?": types.function(),
34949
+ "disableFormulas?": types.boolean()
34939
34950
  }, {
34940
34951
  value: "",
34941
34952
  onKeyDown: () => {},
@@ -35769,11 +35780,11 @@ var ColorScaleRuleEditorThreshold = class extends Component {
35769
35780
  Select
35770
35781
  };
35771
35782
  props = (0, _odoo_owl.props)({
35772
- store: types$6.Store(),
35773
- thresholdType: types$6.or([
35774
- types$6.literal("minimum"),
35775
- types$6.literal("midpoint"),
35776
- types$6.literal("maximum")
35783
+ store: types.Store(),
35784
+ thresholdType: types.or([
35785
+ types.literal("minimum"),
35786
+ types.literal("midpoint"),
35787
+ types.literal("maximum")
35777
35788
  ])
35778
35789
  });
35779
35790
  get rule() {
@@ -35846,7 +35857,7 @@ var ColorScaleRuleEditorThreshold = class extends Component {
35846
35857
  var ColorScaleRuleEditor = class extends Component {
35847
35858
  static template = "o-spreadsheet-ColorScaleRuleEditor";
35848
35859
  static components = { ColorScaleRuleEditorThreshold };
35849
- props = (0, _odoo_owl.props)({ store: types$6.Store() });
35860
+ props = (0, _odoo_owl.props)({ store: types.Store() });
35850
35861
  };
35851
35862
 
35852
35863
  //#endregion
@@ -35857,7 +35868,7 @@ var DataBarRuleEditor = class extends Component {
35857
35868
  SelectionInput,
35858
35869
  RoundColorPicker
35859
35870
  };
35860
- props = (0, _odoo_owl.props)({ store: types$6.Store() });
35871
+ props = (0, _odoo_owl.props)({ store: types.Store() });
35861
35872
  get rule() {
35862
35873
  return this.props.store.state.rules.dataBar;
35863
35874
  }
@@ -35868,7 +35879,7 @@ var DataBarRuleEditor = class extends Component {
35868
35879
  //#region src/components/icon_picker/icon_picker.ts
35869
35880
  var IconPicker = class extends Component {
35870
35881
  static template = "o-spreadsheet-IconPicker";
35871
- props = (0, _odoo_owl.props)({ onIconPicked: types$6.function([types$6.string()]) });
35882
+ props = (0, _odoo_owl.props)({ onIconPicked: types.function() });
35872
35883
  onIconClick(icon) {
35873
35884
  if (icon) this.props.onIconPicked(icon);
35874
35885
  }
@@ -35889,7 +35900,7 @@ var IconSetRuleEditor = class extends Component {
35889
35900
  StandaloneComposer,
35890
35901
  Select
35891
35902
  };
35892
- props = (0, _odoo_owl.props)({ store: types$6.Store() });
35903
+ props = (0, _odoo_owl.props)({ store: types.Store() });
35893
35904
  get rule() {
35894
35905
  return this.props.store.state.rules.iconSet;
35895
35906
  }
@@ -35969,9 +35980,9 @@ var ConditionalFormattingEditor = class extends Component {
35969
35980
  DataBarRuleEditor
35970
35981
  };
35971
35982
  props = (0, _odoo_owl.props)({
35972
- cf: types$6.ConditionalFormat(),
35973
- isNewCf: types$6.boolean(),
35974
- onCloseSidePanel: types$6.function([])
35983
+ cf: types.ConditionalFormat(),
35984
+ isNewCf: types.boolean(),
35985
+ onCloseSidePanel: types.function()
35975
35986
  });
35976
35987
  activeSheetId;
35977
35988
  store;
@@ -36029,9 +36040,9 @@ var ConditionalFormattingEditor = class extends Component {
36029
36040
  var ConditionalFormatPreview = class extends Component {
36030
36041
  static template = "o-spreadsheet-ConditionalFormatPreview";
36031
36042
  props = (0, _odoo_owl.props)({
36032
- conditionalFormat: types$6.ConditionalFormat(),
36033
- onMouseDown: types$6.function([types$6.instanceOf(MouseEvent)]),
36034
- class: types$6.string()
36043
+ conditionalFormat: types.ConditionalFormat(),
36044
+ onMouseDown: types.function(),
36045
+ class: types.string()
36035
36046
  });
36036
36047
  icons = ICONS;
36037
36048
  cfPreviewRef = (0, _odoo_owl.signal)(null);
@@ -36089,7 +36100,7 @@ var ConditionalFormatPreview = class extends Component {
36089
36100
  var ConditionalFormatPreviewList = class extends Component {
36090
36101
  static template = "o-spreadsheet-ConditionalFormatPreviewList";
36091
36102
  static components = { ConditionalFormatPreview };
36092
- props = (0, _odoo_owl.props)({ onCloseSidePanel: types$6.function([]) });
36103
+ props = (0, _odoo_owl.props)({ onCloseSidePanel: types.function() });
36093
36104
  dragAndDrop = useDragAndDropListItems();
36094
36105
  cfListRef = (0, _odoo_owl.signal)(null);
36095
36106
  get conditionalFormats() {
@@ -36158,7 +36169,7 @@ var ConditionalFormatPreviewList = class extends Component {
36158
36169
  //#region src/components/side_panel/data_validation/dv_preview/dv_preview.ts
36159
36170
  var DataValidationPreview = class extends Component {
36160
36171
  static template = "o-spreadsheet-DataValidationPreview";
36161
- props = (0, _odoo_owl.props)({ rule: types$6.DataValidationRule() });
36172
+ props = (0, _odoo_owl.props)({ rule: types.DataValidationRule() });
36162
36173
  dvPreviewRef = (0, _odoo_owl.signal)(null);
36163
36174
  setup() {
36164
36175
  useHighlightsOnHover(this.dvPreviewRef, this);
@@ -36194,7 +36205,7 @@ var DataValidationPreview = class extends Component {
36194
36205
  var DataValidationPanel = class extends Component {
36195
36206
  static template = "o-spreadsheet-DataValidationPanel";
36196
36207
  static components = { DataValidationPreview };
36197
- props = (0, _odoo_owl.props)({ onCloseSidePanel: types$6.function([]) });
36208
+ props = (0, _odoo_owl.props)({ onCloseSidePanel: types.function() });
36198
36209
  addDataValidationRule() {
36199
36210
  this.env.replaceSidePanel("DataValidationEditor", "DataValidation", { ruleId: UuidGenerator.smallUuid() });
36200
36211
  }
@@ -36249,9 +36260,9 @@ var DataValidationEditor = class extends Component {
36249
36260
  ValidationMessages
36250
36261
  };
36251
36262
  props = (0, _odoo_owl.props)({
36252
- ruleId: types$6.UID(),
36253
- "onCancel?": types$6.function([]),
36254
- onCloseSidePanel: types$6.function([])
36263
+ ruleId: types.UID(),
36264
+ "onCancel?": types.function(),
36265
+ onCloseSidePanel: types.function()
36255
36266
  });
36256
36267
  state = (0, _odoo_owl.proxy)({
36257
36268
  rule: this.defaultDataValidationRule,
@@ -36699,7 +36710,7 @@ var FindAndReplacePanel = class extends Component {
36699
36710
  ValidationMessages,
36700
36711
  Select
36701
36712
  };
36702
- props = (0, _odoo_owl.props)({ onCloseSidePanel: types$6.function([]) });
36713
+ props = (0, _odoo_owl.props)({ onCloseSidePanel: types.function() });
36703
36714
  searchInputRef = (0, _odoo_owl.signal)(null);
36704
36715
  store;
36705
36716
  state;
@@ -37533,11 +37544,11 @@ var MoreFormatsPanel = class extends Component {
37533
37544
  Select
37534
37545
  };
37535
37546
  props = (0, _odoo_owl.props)({
37536
- onCloseSidePanel: types$6.function([]),
37537
- "category?": types$6.or([
37538
- types$6.literal("number"),
37539
- types$6.literal("date"),
37540
- types$6.literal("currency")
37547
+ onCloseSidePanel: types.function(),
37548
+ "category?": types.or([
37549
+ types.literal("number"),
37550
+ types.literal("date"),
37551
+ types.literal("currency")
37541
37552
  ])
37542
37553
  });
37543
37554
  store;
@@ -37599,7 +37610,7 @@ var NamedRangePreview = class extends Component {
37599
37610
  SelectionInput,
37600
37611
  TextInput
37601
37612
  };
37602
- props = (0, _odoo_owl.props)({ namedRange: types$6.NamedRange() });
37613
+ props = (0, _odoo_owl.props)({ namedRange: types.NamedRange() });
37603
37614
  state = (0, _odoo_owl.proxy)({});
37604
37615
  namedRangePreviewRef = (0, _odoo_owl.signal)(null);
37605
37616
  setup() {
@@ -37656,7 +37667,7 @@ var NamedRangesPanel = class extends Component {
37656
37667
  SelectionInput,
37657
37668
  TextInput
37658
37669
  };
37659
- props = (0, _odoo_owl.props)({ onCloseSidePanel: types$6.function([]) });
37670
+ props = (0, _odoo_owl.props)({ onCloseSidePanel: types.function() });
37660
37671
  get namedRanges() {
37661
37672
  return this.env.model.getters.getNamedRanges();
37662
37673
  }
@@ -37677,7 +37688,7 @@ const HIGHLIGHT_COLOR = "#e28f08";
37677
37688
  var PerfProfilePanel = class extends Component {
37678
37689
  static template = "o-spreadsheet-PerfProfilePanel";
37679
37690
  static components = { Section };
37680
- props = (0, _odoo_owl.props)({ onCloseSidePanel: types$6.function([]) });
37691
+ props = (0, _odoo_owl.props)({ onCloseSidePanel: types.function() });
37681
37692
  state = (0, _odoo_owl.proxy)({
37682
37693
  selectedIndex: void 0,
37683
37694
  lastProfiledTime: 0
@@ -37894,9 +37905,9 @@ var PivotMeasureDisplayPanelStore = class extends SpreadsheetStore {
37894
37905
  var PivotMeasureDisplayPanel = class extends Component {
37895
37906
  static template = "o-spreadsheet-PivotMeasureDisplayPanel";
37896
37907
  props = (0, _odoo_owl.props)({
37897
- onCloseSidePanel: types$6.function([]),
37898
- pivotId: types$6.UID(),
37899
- measure: types$6.PivotCoreMeasure()
37908
+ onCloseSidePanel: types.function(),
37909
+ pivotId: types.UID(),
37910
+ measure: types.PivotCoreMeasure()
37900
37911
  });
37901
37912
  static components = {
37902
37913
  Section,
@@ -37960,11 +37971,11 @@ function getVisiblePivotCellPositions(getters, pivotId) {
37960
37971
  var PivotDeferUpdate = class extends Component {
37961
37972
  static template = "o-spreadsheet-PivotDeferUpdate";
37962
37973
  props = (0, _odoo_owl.props)({
37963
- deferUpdate: types$6.boolean(),
37964
- isDirty: types$6.boolean(),
37965
- toggleDeferUpdate: types$6.function([types$6.boolean()]),
37966
- discard: types$6.function([]),
37967
- apply: types$6.function([])
37974
+ deferUpdate: types.boolean(),
37975
+ isDirty: types.boolean(),
37976
+ toggleDeferUpdate: types.function(),
37977
+ discard: types.function(),
37978
+ apply: types.function()
37968
37979
  });
37969
37980
  static components = {
37970
37981
  Section,
@@ -38189,9 +38200,9 @@ var FilterMenuCriterion = class extends Component {
38189
38200
  static template = "o-spreadsheet-FilterMenuCriterion";
38190
38201
  static components = { Select };
38191
38202
  props = (0, _odoo_owl.props)({
38192
- criterion: types$6.CriterionFilter(),
38193
- criterionOperators: types$6.array(types$6.GenericCriterionType()),
38194
- onCriterionChanged: types$6.function([types$6.CriterionFilter()])
38203
+ criterion: types.CriterionFilter(),
38204
+ criterionOperators: types.array(types.GenericCriterionType()),
38205
+ onCriterionChanged: types.function()
38195
38206
  });
38196
38207
  state;
38197
38208
  setup() {
@@ -38226,12 +38237,12 @@ var FilterMenuValueItem = class extends Component {
38226
38237
  static template = "o-spreadsheet-FilterMenuValueItem";
38227
38238
  static components = { Checkbox };
38228
38239
  props = (0, _odoo_owl.props)({
38229
- value: _odoo_owl.types.string(),
38230
- isChecked: _odoo_owl.types.boolean(),
38231
- isSelected: _odoo_owl.types.boolean(),
38232
- onMouseMove: _odoo_owl.types.function([]),
38233
- onClick: _odoo_owl.types.function([]),
38234
- "scrolledTo?": _odoo_owl.types.or([_odoo_owl.types.literal("top"), _odoo_owl.types.literal("bottom")])
38240
+ value: types.string(),
38241
+ isChecked: types.boolean(),
38242
+ isSelected: types.boolean(),
38243
+ onMouseMove: types.function(),
38244
+ onClick: types.function(),
38245
+ "scrolledTo?": types.or([types.literal("top"), types.literal("bottom")])
38235
38246
  });
38236
38247
  itemRef = (0, _odoo_owl.signal)(null);
38237
38248
  setup() {
@@ -38252,12 +38263,12 @@ var FilterMenuValueList = class extends Component {
38252
38263
  static template = "o-spreadsheet-FilterMenuValueList";
38253
38264
  static components = { FilterMenuValueItem };
38254
38265
  props = (0, _odoo_owl.props)({
38255
- values: types$6.array(types$6.object({
38256
- checked: types$6.boolean(),
38257
- string: types$6.string(),
38258
- "scrolledTo?": types$6.or([types$6.literal("top"), types$6.literal("bottom")])
38266
+ values: types.array(types.object({
38267
+ checked: types.boolean(),
38268
+ string: types.string(),
38269
+ "scrolledTo?": types.or([types.literal("top"), types.literal("bottom")])
38259
38270
  })),
38260
- onUpdateHiddenValues: types$6.function([types$6.array(types$6.string())])
38271
+ onUpdateHiddenValues: types.function()
38261
38272
  });
38262
38273
  state = (0, _odoo_owl.proxy)({
38263
38274
  displayedValues: [],
@@ -38367,16 +38378,16 @@ var PivotFilterMenu = class extends Component {
38367
38378
  criterionCategory = "char";
38368
38379
  updatedCriterionValue;
38369
38380
  props = (0, _odoo_owl.props)({
38370
- pivotId: types$6.UID(),
38371
- definition: types$6.instanceOf(SpreadsheetPivotRuntimeDefinition),
38372
- filter: types$6.PivotFilter(),
38373
- values: types$6.array(types$6.object({
38374
- checked: types$6.boolean(),
38375
- string: types$6.string(),
38376
- "scrolledTo?": types$6.or([types$6.literal("top"), types$6.literal("bottom")])
38381
+ pivotId: types.UID(),
38382
+ definition: types.instanceOf(SpreadsheetPivotRuntimeDefinition),
38383
+ filter: types.PivotFilter(),
38384
+ values: types.array(types.object({
38385
+ checked: types.boolean(),
38386
+ string: types.string(),
38387
+ "scrolledTo?": types.or([types.literal("top"), types.literal("bottom")])
38377
38388
  })),
38378
- "onClosed?": types$6.function([]),
38379
- onConfirmed: types$6.function([types$6.DataFilterValue()])
38389
+ "onClosed?": types.function(),
38390
+ onConfirmed: types.function()
38380
38391
  });
38381
38392
  setup() {
38382
38393
  (0, _odoo_owl.onWillUpdateProps)((nextProps) => {
@@ -38430,26 +38441,18 @@ var PivotFilterMenu = class extends Component {
38430
38441
  var PivotDimension = class extends Component {
38431
38442
  static template = "o-spreadsheet-PivotDimension";
38432
38443
  props = (0, _odoo_owl.props)({
38433
- dimension: types$6.or([
38434
- types$6.PivotDimension(),
38435
- types$6.PivotMeasure(),
38436
- types$6.PivotFilter()
38444
+ dimension: types.or([
38445
+ types.PivotDimension(),
38446
+ types.PivotMeasure(),
38447
+ types.PivotFilter()
38437
38448
  ]),
38438
- "onRemoved?": types$6.function([types$6.or([
38439
- types$6.PivotDimension(),
38440
- types$6.PivotMeasure(),
38441
- types$6.PivotFilter()
38442
- ])]),
38443
- "onNameUpdated?": types$6.function([types$6.or([
38444
- types$6.PivotDimension(),
38445
- types$6.PivotMeasure(),
38446
- types$6.PivotFilter()
38447
- ]), types$6.string()]),
38448
- "type?": types$6.or([
38449
- types$6.literal("row"),
38450
- types$6.literal("col"),
38451
- types$6.literal("measure"),
38452
- types$6.literal("filter")
38449
+ "onRemoved?": types.function(),
38450
+ "onNameUpdated?": types.function(),
38451
+ "type?": types.or([
38452
+ types.literal("row"),
38453
+ types.literal("col"),
38454
+ types.literal("measure"),
38455
+ types.literal("filter")
38453
38456
  ])
38454
38457
  });
38455
38458
  static components = {
@@ -38475,10 +38478,10 @@ var PivotFilterEditor = class extends Component {
38475
38478
  PivotFilterMenu
38476
38479
  };
38477
38480
  props = (0, _odoo_owl.props)({
38478
- pivotId: types$6.UID(),
38479
- definition: types$6.instanceOf(SpreadsheetPivotRuntimeDefinition),
38480
- filter: types$6.PivotFilter(),
38481
- onFiltersUpdated: types$6.function([types$6.SpreadsheetPivotCoreDefinition()])
38481
+ pivotId: types.UID(),
38482
+ definition: types.instanceOf(SpreadsheetPivotRuntimeDefinition),
38483
+ filter: types.PivotFilter(),
38484
+ onFiltersUpdated: types.function()
38482
38485
  });
38483
38486
  state;
38484
38487
  buttonFilter = (0, _odoo_owl.signal)(null);
@@ -38607,8 +38610,8 @@ var AddDimensionButton = class extends Component {
38607
38610
  TextValueProvider
38608
38611
  };
38609
38612
  props = (0, _odoo_owl.props)({
38610
- onFieldPicked: types$6.function([types$6.string()]),
38611
- fields: types$6.array()
38613
+ onFieldPicked: types.function(),
38614
+ fields: types.array()
38612
38615
  });
38613
38616
  buttonRef = (0, _odoo_owl.signal)(null);
38614
38617
  popover = (0, _odoo_owl.proxy)({ isOpen: false });
@@ -38702,9 +38705,9 @@ var AddDimensionButton = class extends Component {
38702
38705
  var PivotCustomGroupsCollapsible = class extends Component {
38703
38706
  static template = "o-spreadsheet-PivotCustomGroupsCollapsible";
38704
38707
  props = (0, _odoo_owl.props)({
38705
- pivotId: types$6.UID(),
38706
- customField: types$6.PivotCustomGroupedField(),
38707
- onCustomFieldUpdated: types$6.function([types$6.object({})])
38708
+ pivotId: types.UID(),
38709
+ customField: types.PivotCustomGroupedField(),
38710
+ onCustomFieldUpdated: types.function()
38708
38711
  });
38709
38712
  static components = {
38710
38713
  SidePanelCollapsible,
@@ -38766,10 +38769,10 @@ var PivotCustomGroupsCollapsible = class extends Component {
38766
38769
  var PivotDimensionGranularity = class extends Component {
38767
38770
  static template = "o-spreadsheet-PivotDimensionGranularity";
38768
38771
  props = (0, _odoo_owl.props)({
38769
- dimension: types$6.PivotDimension(),
38770
- onUpdated: types$6.function([types$6.PivotDimension(), types$6.instanceOf(InputEvent)]),
38771
- availableGranularities: types$6.SetOf(),
38772
- allGranularities: types$6.array()
38772
+ dimension: types.PivotDimension(),
38773
+ onUpdated: types.function(),
38774
+ availableGranularities: types.SetOf(),
38775
+ allGranularities: types.array()
38773
38776
  });
38774
38777
  static components = { Select };
38775
38778
  periods = ALL_PERIODS;
@@ -38787,9 +38790,9 @@ var PivotDimensionGranularity = class extends Component {
38787
38790
  var PivotDimensionOrder = class extends Component {
38788
38791
  static template = "o-spreadsheet-PivotDimensionOrder";
38789
38792
  props = (0, _odoo_owl.props)({
38790
- dimension: types$6.PivotDimension(),
38791
- onUpdated: types$6.function([types$6.PivotDimension(), types$6.instanceOf(InputEvent)]),
38792
- "isMeasureSorted?": types$6.boolean()
38793
+ dimension: types.PivotDimension(),
38794
+ onUpdated: types.function(),
38795
+ "isMeasureSorted?": types.boolean()
38793
38796
  });
38794
38797
  static components = { Select };
38795
38798
  get orderSelectOptions() {
@@ -38869,13 +38872,13 @@ var PivotMeasureEditor = class extends Component {
38869
38872
  Select
38870
38873
  };
38871
38874
  props = (0, _odoo_owl.props)({
38872
- pivotId: types$6.string(),
38873
- definition: types$6.PivotRuntimeDefinition(),
38874
- measure: types$6.PivotMeasure(),
38875
- onMeasureUpdated: types$6.function([types$6.PivotMeasure()]),
38876
- onRemoved: types$6.function([]),
38877
- generateMeasureId: types$6.function([types$6.string(), types$6.string()], types$6.string()),
38878
- aggregators: types$6.object({})
38875
+ pivotId: types.string(),
38876
+ definition: types.PivotRuntimeDefinition(),
38877
+ measure: types.PivotMeasure(),
38878
+ onMeasureUpdated: types.function(),
38879
+ onRemoved: types.function(),
38880
+ generateMeasureId: types.function(),
38881
+ aggregators: types.object({})
38879
38882
  });
38880
38883
  getMeasureAutocomplete() {
38881
38884
  return createMeasureAutoComplete(this.props.definition, this.props.measure);
@@ -38957,8 +38960,8 @@ var PivotSortSection = class extends Component {
38957
38960
  static template = "o-spreadsheet-PivotSortSection";
38958
38961
  static components = { Section };
38959
38962
  props = (0, _odoo_owl.props)({
38960
- definition: types$6.PivotRuntimeDefinition(),
38961
- pivotId: types$6.UID()
38963
+ definition: types.PivotRuntimeDefinition(),
38964
+ pivotId: types.UID()
38962
38965
  });
38963
38966
  get hasValidSort() {
38964
38967
  const pivot = this.env.model.getters.getPivot(this.props.pivotId);
@@ -39012,16 +39015,16 @@ var PivotLayoutConfigurator = class extends Component {
39012
39015
  SidePanelCollapsible
39013
39016
  };
39014
39017
  props = (0, _odoo_owl.props)({
39015
- definition: types$6.instanceOf(PivotRuntimeDefinition),
39016
- onDimensionsUpdated: types$6.function([types$6.PivotCoreDefinition()]),
39017
- onFiltersUpdated: types$6.function([types$6.PivotCoreDefinition()]),
39018
- unusedGroupableFields: types$6.array(types$6.PivotField()),
39019
- measureFields: types$6.array(types$6.PivotField()),
39020
- unusedGranularities: types$6.RecordOf(),
39021
- dateGranularities: types$6.array(types$6.string()),
39022
- datetimeGranularities: types$6.array(types$6.string()),
39023
- "getScrollableContainerEl?": types$6.function([], types$6.instanceOf(HTMLElement)),
39024
- pivotId: types$6.UID()
39018
+ definition: types.instanceOf(PivotRuntimeDefinition),
39019
+ onDimensionsUpdated: types.function(),
39020
+ onFiltersUpdated: types.function(),
39021
+ unusedGroupableFields: types.array(types.PivotField()),
39022
+ measureFields: types.array(types.PivotField()),
39023
+ unusedGranularities: types.RecordOf(),
39024
+ dateGranularities: types.array(types.string()),
39025
+ datetimeGranularities: types.array(types.string()),
39026
+ "getScrollableContainerEl?": types.function(),
39027
+ pivotId: types.UID()
39025
39028
  });
39026
39029
  dimensionsRef = (0, _odoo_owl.signal)(null);
39027
39030
  dragAndDrop = useDragAndDropListItems();
@@ -39242,8 +39245,8 @@ var PivotTitleSection = class extends Component {
39242
39245
  TextInput
39243
39246
  };
39244
39247
  props = (0, _odoo_owl.props)({
39245
- pivotId: types$6.UID(),
39246
- flipAxis: types$6.function([])
39248
+ pivotId: types.UID(),
39249
+ flipAxis: types.function()
39247
39250
  });
39248
39251
  get cogWheelMenuItems() {
39249
39252
  return [
@@ -40872,8 +40875,8 @@ var PivotSpreadsheetSidePanel = class extends Component {
40872
40875
  PivotFilterEditor
40873
40876
  };
40874
40877
  props = (0, _odoo_owl.props)({
40875
- pivotId: types$6.UID(),
40876
- onCloseSidePanel: types$6.function([])
40878
+ pivotId: types.UID(),
40879
+ onCloseSidePanel: types.function()
40877
40880
  });
40878
40881
  store;
40879
40882
  state;
@@ -42110,12 +42113,12 @@ var TableStylePreview = class extends Component {
42110
42113
  static template = "o-spreadsheet-TableStylePreview";
42111
42114
  static components = { MenuPopover };
42112
42115
  props = (0, _odoo_owl.props)({
42113
- tableConfig: types$6.TableConfig(),
42114
- tableStyle: types$6.TableStyle(),
42115
- type: types$6.or([types$6.literal("table"), types$6.literal("pivot")]),
42116
- "styleId?": types$6.string(),
42117
- "selected?": types$6.boolean(),
42118
- "onClick?": types$6.function([])
42116
+ tableConfig: types.TableConfig(),
42117
+ tableStyle: types.TableStyle(),
42118
+ type: types.or([types.literal("table"), types.literal("pivot")]),
42119
+ "styleId?": types.string(),
42120
+ "selected?": types.boolean(),
42121
+ "onClick?": types.function()
42119
42122
  });
42120
42123
  canvasRef = (0, _odoo_owl.signal)(null);
42121
42124
  menu = (0, _odoo_owl.proxy)({
@@ -42203,13 +42206,13 @@ var TableStylesPopover = class extends Component {
42203
42206
  TableStylePreview
42204
42207
  };
42205
42208
  props = (0, _odoo_owl.props)({
42206
- tableConfig: types$6.object({}),
42207
- "popoverProps?": types$6.object({}),
42208
- closePopover: types$6.function([]),
42209
- onStylePicked: types$6.function([types$6.string()]),
42210
- "selectedStyleId?": types$6.string(),
42211
- tableStyles: types$6.RecordOf(),
42212
- type: types$6.or([types$6.literal("table"), types$6.literal("pivot")])
42209
+ tableConfig: types.object({}),
42210
+ "popoverProps?": types.object({}),
42211
+ closePopover: types.function(),
42212
+ onStylePicked: types.function(),
42213
+ "selectedStyleId?": types.string(),
42214
+ tableStyles: types.RecordOf(),
42215
+ type: types.or([types.literal("table"), types.literal("pivot")])
42213
42216
  });
42214
42217
  tableStyleListRef = (0, _odoo_owl.signal)(null);
42215
42218
  state = (0, _odoo_owl.proxy)({ selectedCategory: this.initialSelectedCategory });
@@ -42251,10 +42254,10 @@ var TableStylePicker = class extends Component {
42251
42254
  TableStylePreview
42252
42255
  };
42253
42256
  props = (0, _odoo_owl.props)({
42254
- tableConfig: types$6.TableConfig(),
42255
- onStylePicked: types$6.function([types$6.string()]),
42256
- tableStyles: types$6.RecordOf(),
42257
- type: types$6.or([types$6.literal("table"), types$6.literal("pivot")])
42257
+ tableConfig: types.TableConfig(),
42258
+ onStylePicked: types.function(),
42259
+ tableStyles: types.RecordOf(),
42260
+ type: types.or([types.literal("table"), types.literal("pivot")])
42258
42261
  });
42259
42262
  state = (0, _odoo_owl.proxy)({ popoverProps: void 0 });
42260
42263
  getDisplayedTableStyles() {
@@ -42302,7 +42305,7 @@ var PivotDesignPanel = class extends Component {
42302
42305
  NumberInput,
42303
42306
  TableStylePicker
42304
42307
  };
42305
- props = (0, _odoo_owl.props)({ pivotId: types$6.UID() });
42308
+ props = (0, _odoo_owl.props)({ pivotId: types.UID() });
42306
42309
  store;
42307
42310
  setup() {
42308
42311
  this.store = useLocalStore(PivotSidePanelStore, this.props.pivotId, "neverDefer");
@@ -42357,9 +42360,9 @@ var PivotSidePanel = class extends Component {
42357
42360
  PivotDesignPanel
42358
42361
  };
42359
42362
  props = (0, _odoo_owl.props)({
42360
- pivotId: types$6.UID(),
42361
- onCloseSidePanel: types$6.function([]),
42362
- "openTab?": types$6.or([types$6.literal("configuration"), types$6.literal("design")])
42363
+ pivotId: types.UID(),
42364
+ onCloseSidePanel: types.function(),
42365
+ "openTab?": types.or([types.literal("configuration"), types.literal("design")])
42363
42366
  }, { openTab: "configuration" });
42364
42367
  state = (0, _odoo_owl.proxy)({ panel: this.props.openTab || "configuration" });
42365
42368
  setup() {
@@ -42390,7 +42393,7 @@ var RemoveDuplicatesPanel = class extends Component {
42390
42393
  Section,
42391
42394
  Checkbox
42392
42395
  };
42393
- props = (0, _odoo_owl.props)({ onCloseSidePanel: types$6.function([]) });
42396
+ props = (0, _odoo_owl.props)({ onCloseSidePanel: types.function() });
42394
42397
  state = (0, _odoo_owl.proxy)({
42395
42398
  hasHeader: false,
42396
42399
  columns: {}
@@ -42474,7 +42477,7 @@ var SettingsPanel = class extends Component {
42474
42477
  BadgeSelection,
42475
42478
  Select
42476
42479
  };
42477
- props = (0, _odoo_owl.props)({ onCloseSidePanel: types$6.function([]) });
42480
+ props = (0, _odoo_owl.props)({ onCloseSidePanel: types.function() });
42478
42481
  loadedLocales = [];
42479
42482
  setup() {
42480
42483
  (0, _odoo_owl.onWillStart)(() => this.loadLocales());
@@ -42592,7 +42595,7 @@ var SplitIntoColumnsPanel = class extends Component {
42592
42595
  Checkbox,
42593
42596
  Select
42594
42597
  };
42595
- props = (0, _odoo_owl.props)({ onCloseSidePanel: types$6.function([]) });
42598
+ props = (0, _odoo_owl.props)({ onCloseSidePanel: types.function() });
42596
42599
  state = (0, _odoo_owl.proxy)({
42597
42600
  separatorValue: "auto",
42598
42601
  addNewColumns: false,
@@ -42669,8 +42672,8 @@ var TablePanel = class extends Component {
42669
42672
  NumberInput
42670
42673
  };
42671
42674
  props = (0, _odoo_owl.props)({
42672
- onCloseSidePanel: types$6.function([]),
42673
- table: types$6.CoreTable()
42675
+ onCloseSidePanel: types.function(),
42676
+ table: types.CoreTable()
42674
42677
  });
42675
42678
  state;
42676
42679
  setup() {
@@ -42829,9 +42832,9 @@ var TableStyleEditorPanel = class extends Component {
42829
42832
  TableStylePreview
42830
42833
  };
42831
42834
  props = (0, _odoo_owl.props)({
42832
- onCloseSidePanel: types$6.function([]),
42833
- "onStylePicked?": types$6.function([types$6.string()]),
42834
- "styleId?": types$6.string()
42835
+ onCloseSidePanel: types.function(),
42836
+ "onStylePicked?": types.function(),
42837
+ "styleId?": types.string()
42835
42838
  });
42836
42839
  state = (0, _odoo_owl.proxy)(this.getInitialState());
42837
42840
  setup() {
@@ -45163,8 +45166,8 @@ function adjustIndexWithinBounds(index, position, max) {
45163
45166
  var Autofill = class extends Component {
45164
45167
  static template = "o-spreadsheet-Autofill";
45165
45168
  props = (0, _odoo_owl.props)({
45166
- position: types$6.DOMCoordinates(),
45167
- isVisible: types$6.boolean()
45169
+ position: types.DOMCoordinates(),
45170
+ isVisible: types.boolean()
45168
45171
  });
45169
45172
  state = (0, _odoo_owl.proxy)({
45170
45173
  position: {
@@ -45240,7 +45243,7 @@ var Autofill = class extends Component {
45240
45243
  }
45241
45244
  };
45242
45245
  var TooltipComponent = class extends Component {
45243
- props = (0, _odoo_owl.props)({ content: types$6.string() });
45246
+ props = (0, _odoo_owl.props)({ content: types.string() });
45244
45247
  static template = _odoo_owl.xml`
45245
45248
  <div t-out="this.props.content"/>
45246
45249
  `;
@@ -45251,11 +45254,11 @@ var TooltipComponent = class extends Component {
45251
45254
  var ClientTag = class extends Component {
45252
45255
  static template = "o-spreadsheet-ClientTag";
45253
45256
  props = (0, _odoo_owl.props)({
45254
- active: types$6.boolean(),
45255
- name: types$6.string(),
45256
- color: types$6.Color(),
45257
- col: types$6.HeaderIndex(),
45258
- row: types$6.HeaderIndex()
45257
+ active: types.boolean(),
45258
+ name: types.string(),
45259
+ color: types.Color(),
45260
+ col: types.HeaderIndex(),
45261
+ row: types.HeaderIndex()
45259
45262
  });
45260
45263
  get tagStyle() {
45261
45264
  const { col, row, color } = this.props;
@@ -45832,8 +45835,8 @@ var GridComposer = class extends Component {
45832
45835
  static template = "o-spreadsheet-GridComposer";
45833
45836
  static components = { Composer };
45834
45837
  props = (0, _odoo_owl.props)({
45835
- gridDims: types$6.DOMDimension(),
45836
- onInputContextMenu: types$6.function([types$6.instanceOf(MouseEvent)])
45838
+ gridDims: types.DOMDimension(),
45839
+ onInputContextMenu: types.function()
45837
45840
  });
45838
45841
  rect = this.defaultRect;
45839
45842
  isEditing = false;
@@ -46956,21 +46959,11 @@ var GridOverlay = class extends Component {
46956
46959
  GridAddRowsFooter
46957
46960
  };
46958
46961
  props = (0, _odoo_owl.props)({
46959
- "onCellDoubleClicked?": types$6.function([types$6.HeaderIndex(), types$6.HeaderIndex()]),
46960
- "onCellClicked?": types$6.function([
46961
- types$6.HeaderIndex(),
46962
- types$6.HeaderIndex(),
46963
- types$6.GridClickModifiers(),
46964
- types$6.ZoomedMouseEvent()
46965
- ]),
46966
- "onCellRightClicked?": types$6.function([
46967
- types$6.HeaderIndex(),
46968
- types$6.HeaderIndex(),
46969
- types$6.DOMCoordinates()
46970
- ]),
46971
- "onGridResized?": types$6.function([]),
46972
- onGridMoved: types$6.function([types$6.Pixel(), types$6.Pixel()]),
46973
- gridOverlayDimensions: types$6.string()
46962
+ "onCellDoubleClicked?": types.function(),
46963
+ "onCellClicked?": types.function(),
46964
+ "onCellRightClicked?": types.function(),
46965
+ "onGridResized?": types.function(),
46966
+ gridOverlayDimensions: types.string()
46974
46967
  }, {
46975
46968
  onCellDoubleClicked: () => {},
46976
46969
  onCellClicked: () => {},
@@ -47088,9 +47081,9 @@ var GridPopover = class extends Component {
47088
47081
  static template = "o-spreadsheet-GridPopover";
47089
47082
  static components = { Popover };
47090
47083
  props = (0, _odoo_owl.props)({
47091
- onClosePopover: types$6.function([]),
47092
- onMouseWheel: types$6.function([types$6.instanceOf(WheelEvent)]),
47093
- gridRect: types$6.Rect()
47084
+ onClosePopover: types.function(),
47085
+ onMouseWheel: types.function(),
47086
+ gridRect: types.Rect()
47094
47087
  });
47095
47088
  cellPopovers;
47096
47089
  setup() {
@@ -47116,12 +47109,12 @@ var GridPopover = class extends Component {
47116
47109
  var UnhideRowHeaders = class extends Component {
47117
47110
  static template = "o-spreadsheet-UnhideRowHeaders";
47118
47111
  props = (0, _odoo_owl.props)({
47119
- headersGroups: types$6.array(),
47120
- headerRange: types$6.object({
47121
- start: types$6.HeaderIndex(),
47122
- end: types$6.HeaderIndex()
47112
+ headersGroups: types.array(),
47113
+ headerRange: types.object({
47114
+ start: types.HeaderIndex(),
47115
+ end: types.HeaderIndex()
47123
47116
  }),
47124
- "offset?": types$6.number()
47117
+ "offset?": types.number()
47125
47118
  }, { offset: 0 });
47126
47119
  get sheetId() {
47127
47120
  return this.env.model.getters.getActiveSheetId();
@@ -47159,12 +47152,12 @@ var UnhideRowHeaders = class extends Component {
47159
47152
  var UnhideColumnHeaders = class extends Component {
47160
47153
  static template = "o-spreadsheet-UnhideColumnHeaders";
47161
47154
  props = (0, _odoo_owl.props)({
47162
- headersGroups: types$6.array(),
47163
- headerRange: types$6.object({
47164
- start: types$6.HeaderIndex(),
47165
- end: types$6.HeaderIndex()
47155
+ headersGroups: types.array(),
47156
+ headerRange: types.object({
47157
+ start: types.HeaderIndex(),
47158
+ end: types.HeaderIndex()
47166
47159
  }),
47167
- "offset?": types$6.number()
47160
+ "offset?": types.number()
47168
47161
  }, { offset: 0 });
47169
47162
  get sheetId() {
47170
47163
  return this.env.model.getters.getActiveSheetId();
@@ -47196,11 +47189,7 @@ var UnhideColumnHeaders = class extends Component {
47196
47189
 
47197
47190
  //#endregion
47198
47191
  //#region src/components/headers_overlay/headers_overlay.ts
47199
- const resizerPropsDefinition = { onOpenContextMenu: types$6.function([
47200
- types$6.ContextMenuType(),
47201
- types$6.Pixel(),
47202
- types$6.Pixel()
47203
- ]) };
47192
+ const resizerPropsDefinition = { onOpenContextMenu: types.function() };
47204
47193
  var AbstractResizer = class extends Component {
47205
47194
  props = (0, _odoo_owl.props)(resizerPropsDefinition);
47206
47195
  composerFocusStore;
@@ -48654,15 +48643,15 @@ function useWheelHandler(handler) {
48654
48643
  var Border = class extends Component {
48655
48644
  static template = "o-spreadsheet-Border";
48656
48645
  props = (0, _odoo_owl.props)({
48657
- zone: types$6.Zone(),
48658
- orientation: types$6.or([
48659
- types$6.literal("n"),
48660
- types$6.literal("s"),
48661
- types$6.literal("w"),
48662
- types$6.literal("e")
48646
+ zone: types.Zone(),
48647
+ orientation: types.or([
48648
+ types.literal("n"),
48649
+ types.literal("s"),
48650
+ types.literal("w"),
48651
+ types.literal("e")
48663
48652
  ]),
48664
- isMoving: types$6.boolean(),
48665
- onMoveHighlight: types$6.function([types$6.instanceOf(PointerEvent)])
48653
+ isMoving: types.boolean(),
48654
+ onMoveHighlight: types.function()
48666
48655
  });
48667
48656
  get style() {
48668
48657
  const isTop = [
@@ -48707,24 +48696,20 @@ const MOBILE_HANDLER_WIDTH = 40;
48707
48696
  var Corner = class extends Component {
48708
48697
  static template = "o-spreadsheet-Corner";
48709
48698
  props = (0, _odoo_owl.props)({
48710
- zone: types$6.Zone(),
48711
- color: types$6.Color(),
48712
- orientation: types$6.or([
48713
- types$6.literal("nw"),
48714
- types$6.literal("ne"),
48715
- types$6.literal("sw"),
48716
- types$6.literal("se"),
48717
- types$6.literal("n"),
48718
- types$6.literal("s"),
48719
- types$6.literal("e"),
48720
- types$6.literal("w")
48699
+ zone: types.Zone(),
48700
+ color: types.Color(),
48701
+ orientation: types.or([
48702
+ types.literal("nw"),
48703
+ types.literal("ne"),
48704
+ types.literal("sw"),
48705
+ types.literal("se"),
48706
+ types.literal("n"),
48707
+ types.literal("s"),
48708
+ types.literal("e"),
48709
+ types.literal("w")
48721
48710
  ]),
48722
- isResizing: types$6.boolean(),
48723
- onResizeHighlight: types$6.function([
48724
- types$6.instanceOf(PointerEvent),
48725
- types$6.ResizeDirection(),
48726
- types$6.ResizeDirection()
48727
- ])
48711
+ isResizing: types.boolean(),
48712
+ onResizeHighlight: types.function()
48728
48713
  });
48729
48714
  dirX;
48730
48715
  dirY;
@@ -48785,8 +48770,8 @@ var Highlight = class extends Component {
48785
48770
  Border
48786
48771
  };
48787
48772
  props = (0, _odoo_owl.props)({
48788
- range: types$6.Range(),
48789
- color: types$6.Color()
48773
+ range: types.Range(),
48774
+ color: types.Color()
48790
48775
  });
48791
48776
  highlightState = (0, _odoo_owl.proxy)({ shiftingMode: "none" });
48792
48777
  dragNDropGrid = useDragAndDropBeyondTheViewport(this.env);
@@ -48929,12 +48914,12 @@ var ScrollBar = class extends Component {
48929
48914
  </div>
48930
48915
  `;
48931
48916
  props = (0, _odoo_owl.props)({
48932
- "width?": types$6.Pixel(),
48933
- "height?": types$6.Pixel(),
48934
- direction: types$6.customValidator(types$6.string(), (direction) => ["horizontal", "vertical"].includes(direction)),
48935
- position: types$6.CSSProperties(),
48936
- offset: types$6.Pixel(),
48937
- onScroll: types$6.function([types$6.Pixel()])
48917
+ "width?": types.Pixel(),
48918
+ "height?": types.Pixel(),
48919
+ direction: types.customValidator(types.string(), (direction) => ["horizontal", "vertical"].includes(direction)),
48920
+ position: types.CSSProperties(),
48921
+ offset: types.Pixel(),
48922
+ onScroll: types.function()
48938
48923
  }, {
48939
48924
  width: 1,
48940
48925
  height: 1
@@ -48977,7 +48962,7 @@ var HorizontalScrollBar = class extends Component {
48977
48962
  direction="'horizontal'"
48978
48963
  onScroll.bind="this.onScroll"
48979
48964
  />`;
48980
- props = (0, _odoo_owl.props)({ "leftOffset?": types$6.number() }, { leftOffset: 0 });
48965
+ props = (0, _odoo_owl.props)({ "leftOffset?": types.number() }, { leftOffset: 0 });
48981
48966
  get offset() {
48982
48967
  return this.env.model.getters.getActiveSheetScrollInfo().scrollX;
48983
48968
  }
@@ -48995,7 +48980,7 @@ var HorizontalScrollBar = class extends Component {
48995
48980
  left: `${this.props.leftOffset + x}px`,
48996
48981
  bottom: "0px",
48997
48982
  height: `${scrollbarWidth}px`,
48998
- right: isBrowserFirefox() ? `${scrollbarWidth}px` : "0"
48983
+ right: `${scrollbarWidth}px`
48999
48984
  };
49000
48985
  }
49001
48986
  onScroll(offset) {
@@ -49020,7 +49005,7 @@ var VerticalScrollBar = class extends Component {
49020
49005
  direction="'vertical'"
49021
49006
  onScroll.bind="(offset) => this.onScroll(offset)"
49022
49007
  />`;
49023
- props = (0, _odoo_owl.props)({ "topOffset?": types$6.number() }, { topOffset: 0 });
49008
+ props = (0, _odoo_owl.props)({ "topOffset?": types.number() }, { topOffset: 0 });
49024
49009
  get offset() {
49025
49010
  return this.env.model.getters.getActiveSheetScrollInfo().scrollY;
49026
49011
  }
@@ -49038,7 +49023,7 @@ var VerticalScrollBar = class extends Component {
49038
49023
  top: `${this.props.topOffset + y}px`,
49039
49024
  right: "0px",
49040
49025
  width: `${scrollbarWidth}px`,
49041
- bottom: isBrowserFirefox() ? `${scrollbarWidth}px` : "0"
49026
+ bottom: `${scrollbarWidth}px`
49042
49027
  };
49043
49028
  }
49044
49029
  onScroll(offset) {
@@ -49071,7 +49056,7 @@ const SIZE = 3;
49071
49056
  const COLOR = "#777";
49072
49057
  var TableResizer = class extends Component {
49073
49058
  static template = "o-spreadsheet-TableResizer";
49074
- props = (0, _odoo_owl.props)({ table: types$6.Table() });
49059
+ props = (0, _odoo_owl.props)({ table: types.Table() });
49075
49060
  state = (0, _odoo_owl.proxy)({ highlightZone: void 0 });
49076
49061
  dragNDropGrid = useDragAndDropBeyondTheViewport(this.env);
49077
49062
  setup() {
@@ -49160,8 +49145,8 @@ var Grid = class extends Component {
49160
49145
  Selection
49161
49146
  };
49162
49147
  props = (0, _odoo_owl.props)({
49163
- exposeFocus: types$6.function([types$6.function([])]),
49164
- getGridSize: types$6.function([], types$6.DOMDimension())
49148
+ exposeFocus: types.function(),
49149
+ getGridSize: types.function()
49165
49150
  });
49166
49151
  HEADER_HEIGHT = 26;
49167
49152
  HEADER_WIDTH = 48;
@@ -49803,8 +49788,8 @@ supportedPivotPositionalFormulaRegistry.add("SPREADSHEET", false);
49803
49788
  var ClickableCellSortIcon = class extends Component {
49804
49789
  static template = "o-spreadsheet-ClickableCellSortIcon";
49805
49790
  props = (0, _odoo_owl.props)({
49806
- position: types$6.CellPosition(),
49807
- sortDirection: types$6.or([types$6.SortDirection, types$6.literal("none")])
49791
+ position: types.CellPosition(),
49792
+ sortDirection: types.or([types.SortDirection, types.literal("none")])
49808
49793
  });
49809
49794
  hoveredTableStore;
49810
49795
  setup() {
@@ -49878,8 +49863,8 @@ var PivotHTMLRenderer = class extends Component {
49878
49863
  static template = "o_spreadsheet.PivotHTMLRenderer";
49879
49864
  static components = { Checkbox };
49880
49865
  props = (0, _odoo_owl.props)({
49881
- pivotId: types$6.UID(),
49882
- onCellClicked: types$6.function([types$6.string()])
49866
+ pivotId: types.UID(),
49867
+ onCellClicked: types.function()
49883
49868
  });
49884
49869
  pivot = this.env.model.getters.getPivot(this.props.pivotId);
49885
49870
  data = {
@@ -62567,6 +62552,7 @@ var GeoFeaturePlugin = class extends UIPlugin {
62567
62552
  convertToGeoJson(json) {
62568
62553
  if (!json) return null;
62569
62554
  if (json.type === "Topology") {
62555
+ if (!globalThis.ChartGeo) return null;
62570
62556
  const features = globalThis.ChartGeo.topojson.feature(json, Object.values(json.objects)[0]);
62571
62557
  return features.type === "FeatureCollection" ? features.features : [features];
62572
62558
  } else if (json.type === "FeatureCollection") return json.features;
@@ -67763,20 +67749,20 @@ const RIPPLE_KEY_FRAMES = [
67763
67749
  var RippleEffect = class extends Component {
67764
67750
  static template = "o-spreadsheet-RippleEffect";
67765
67751
  props = (0, _odoo_owl.props)({
67766
- x: _odoo_owl.types.string(),
67767
- y: _odoo_owl.types.string(),
67768
- color: _odoo_owl.types.string(),
67769
- opacity: _odoo_owl.types.number(),
67770
- duration: _odoo_owl.types.number(),
67752
+ x: types.string(),
67753
+ y: types.string(),
67754
+ color: types.string(),
67755
+ opacity: types.number(),
67756
+ duration: types.number(),
67771
67757
  /** Width of the ripple. Defaults to the width of the element the ripple is on (without margins). */
67772
- width: _odoo_owl.types.number(),
67758
+ width: types.number(),
67773
67759
  /** Height of the ripple. Defaults to the height of the element the ripple is on (without margins). */
67774
- height: _odoo_owl.types.number(),
67775
- offsetY: _odoo_owl.types.number(),
67776
- offsetX: _odoo_owl.types.number(),
67777
- allowOverflow: _odoo_owl.types.boolean(),
67778
- onAnimationEnd: _odoo_owl.types.function(),
67779
- style: _odoo_owl.types.string()
67760
+ height: types.number(),
67761
+ offsetY: types.number(),
67762
+ offsetX: types.number(),
67763
+ allowOverflow: types.boolean(),
67764
+ onAnimationEnd: types.function(),
67765
+ style: types.string()
67780
67766
  });
67781
67767
  rippleRef = (0, _odoo_owl.signal)(null);
67782
67768
  setup() {
@@ -67816,21 +67802,21 @@ var Ripple = class extends Component {
67816
67802
  static template = "o-spreadsheet-Ripple";
67817
67803
  static components = { RippleEffect };
67818
67804
  props = (0, _odoo_owl.props)({
67819
- "color?": _odoo_owl.types.string(),
67820
- "opacity?": _odoo_owl.types.number(),
67821
- "duration?": _odoo_owl.types.number(),
67805
+ "color?": types.string(),
67806
+ "opacity?": types.number(),
67807
+ "duration?": types.number(),
67822
67808
  /** If true, the ripple will play from the element center instead of the position of the click */
67823
- "ignoreClickPosition?": _odoo_owl.types.boolean(),
67809
+ "ignoreClickPosition?": types.boolean(),
67824
67810
  /** Width of the ripple. Defaults to the width of the element the ripple is on (without margins). */
67825
- "width?": _odoo_owl.types.number(),
67811
+ "width?": types.number(),
67826
67812
  /** Height of the ripple. Defaults to the height of the element the ripple is on (without margins). */
67827
- "height?": _odoo_owl.types.number(),
67828
- "offsetY?": _odoo_owl.types.number(),
67829
- "offsetX?": _odoo_owl.types.number(),
67830
- "allowOverflow?": _odoo_owl.types.boolean(),
67831
- "enabled?": _odoo_owl.types.boolean(),
67832
- "onAnimationEnd?": _odoo_owl.types.function(),
67833
- "class?": _odoo_owl.types.string()
67813
+ "height?": types.number(),
67814
+ "offsetY?": types.number(),
67815
+ "offsetX?": types.number(),
67816
+ "allowOverflow?": types.boolean(),
67817
+ "enabled?": types.boolean(),
67818
+ "onAnimationEnd?": types.function(),
67819
+ "class?": types.string()
67834
67820
  }, {
67835
67821
  color: "#aaaaaa",
67836
67822
  opacity: .4,
@@ -68091,10 +68077,10 @@ var BottomBarSheet = class extends Component {
68091
68077
  ColorPicker
68092
68078
  };
68093
68079
  props = (0, _odoo_owl.props)({
68094
- sheetId: _odoo_owl.types.string(),
68095
- openContextMenu: _odoo_owl.types.function([_odoo_owl.types.instanceOf(MenuItemRegistry), _odoo_owl.types.instanceOf(MouseEvent)]),
68096
- "style?": _odoo_owl.types.string(),
68097
- "onMouseDown?": _odoo_owl.types.function([_odoo_owl.types.instanceOf(PointerEvent)])
68080
+ sheetId: types.string(),
68081
+ openContextMenu: types.function(),
68082
+ "style?": types.string(),
68083
+ "onMouseDown?": types.function()
68098
68084
  }, {
68099
68085
  onMouseDown: () => {},
68100
68086
  style: ""
@@ -68361,12 +68347,8 @@ var BottomBarStatistic = class extends Component {
68361
68347
  static template = "o-spreadsheet-BottomBarStatistic";
68362
68348
  static components = { Ripple };
68363
68349
  props = (0, _odoo_owl.props)({
68364
- openContextMenu: _odoo_owl.types.function([
68365
- _odoo_owl.types.number(),
68366
- _odoo_owl.types.number(),
68367
- _odoo_owl.types.instanceOf(MenuItemRegistry)
68368
- ]),
68369
- closeContextMenu: _odoo_owl.types.function([])
68350
+ openContextMenu: types.function(),
68351
+ closeContextMenu: types.function()
68370
68352
  });
68371
68353
  state = (0, _odoo_owl.proxy)({ selectedStatisticFn: "" });
68372
68354
  store;
@@ -68410,7 +68392,7 @@ var BottomBarStatistic = class extends Component {
68410
68392
  const MENU_MAX_HEIGHT = 250;
68411
68393
  var BottomBar = class extends Component {
68412
68394
  static template = "o-spreadsheet-BottomBar";
68413
- props = (0, _odoo_owl.props)({ onClick: _odoo_owl.types.function([]) });
68395
+ props = (0, _odoo_owl.props)({ onClick: types.function() });
68414
68396
  static components = {
68415
68397
  MenuPopover,
68416
68398
  Ripple,
@@ -68693,7 +68675,7 @@ var SpreadsheetDashboard = class extends Component {
68693
68675
  VerticalScrollBar,
68694
68676
  HorizontalScrollBar
68695
68677
  };
68696
- props = (0, _odoo_owl.props)({ getGridSize: types$6.function([], types$6.DOMDimension()) });
68678
+ props = (0, _odoo_owl.props)({ getGridSize: types.function() });
68697
68679
  cellPopovers;
68698
68680
  onMouseWheel;
68699
68681
  canvasPosition;
@@ -68807,9 +68789,9 @@ var SpreadsheetDashboard = class extends Component {
68807
68789
  var AbstractHeaderGroup = class extends Component {
68808
68790
  static template = "o-spreadsheet-HeaderGroup";
68809
68791
  props = (0, _odoo_owl.props)({
68810
- group: types$6.HeaderGroup(),
68811
- layerOffset: types$6.number(),
68812
- openContextMenu: types$6.function([types$6.DOMCoordinates(), types$6.ArrayOf()])
68792
+ group: types.HeaderGroup(),
68793
+ layerOffset: types.number(),
68794
+ openContextMenu: types.function()
68813
68795
  });
68814
68796
  toggleGroup() {
68815
68797
  const sheetId = this.env.model.getters.getActiveSheetId();
@@ -68961,8 +68943,8 @@ var HeaderGroupContainer = class extends Component {
68961
68943
  MenuPopover
68962
68944
  };
68963
68945
  props = (0, _odoo_owl.props)({
68964
- dimension: types$6.Dimension(),
68965
- layers: types$6.array()
68946
+ dimension: types.Dimension(),
68947
+ layers: types.array()
68966
68948
  });
68967
68949
  menu = (0, _odoo_owl.proxy)({
68968
68950
  isOpen: false,
@@ -69037,15 +69019,15 @@ function useScreenWidth() {
69037
69019
  var SidePanel = class extends Component {
69038
69020
  static template = "o-spreadsheet-SidePanel";
69039
69021
  props = (0, _odoo_owl.props)({
69040
- panelContent: types$6.SidePanelContent(),
69041
- panelProps: types$6.SidePanelComponentProps(),
69042
- onCloseSidePanel: types$6.function([]),
69043
- onStartHandleDrag: types$6.function([types$6.instanceOf(MouseEvent)]),
69044
- onResetPanelSize: types$6.function([]),
69045
- "isPinned?": types$6.boolean(),
69046
- "onTogglePinPanel?": types$6.function([]),
69047
- "onToggleCollapsePanel?": types$6.function([]),
69048
- "isCollapsed?": types$6.boolean()
69022
+ panelContent: types.SidePanelContent(),
69023
+ panelProps: types.SidePanelComponentProps(),
69024
+ onCloseSidePanel: types.function(),
69025
+ onStartHandleDrag: types.function(),
69026
+ onResetPanelSize: types.function(),
69027
+ "isPinned?": types.boolean(),
69028
+ "onTogglePinPanel?": types.function(),
69029
+ "onToggleCollapsePanel?": types.function(),
69030
+ "isCollapsed?": types.boolean()
69049
69031
  });
69050
69032
  spreadsheetRect = useSpreadsheetRect();
69051
69033
  getTitle() {
@@ -69130,7 +69112,7 @@ var SidePanels = class extends Component {
69130
69112
  var RibbonMenu = class extends Component {
69131
69113
  static template = "o-spreadsheet-RibbonMenu";
69132
69114
  static components = { Menu };
69133
- props = (0, _odoo_owl.props)({ onClose: types$6.function([]) });
69115
+ props = (0, _odoo_owl.props)({ onClose: types.function() });
69134
69116
  rootItems = topbarMenuRegistry.getMenuItems();
69135
69117
  menuRef = (0, _odoo_owl.signal)(null);
69136
69118
  containerRef = (0, _odoo_owl.signal)(null);
@@ -69201,7 +69183,7 @@ var SmallBottomBar = class extends Component {
69201
69183
  RibbonMenu
69202
69184
  };
69203
69185
  static template = "o-spreadsheet-SmallBottomBar";
69204
- props = (0, _odoo_owl.props)({ onClick: types$6.function([]) });
69186
+ props = (0, _odoo_owl.props)({ onClick: types.function() });
69205
69187
  composerFocusStore;
69206
69188
  composerStore;
69207
69189
  composerInterface;
@@ -69403,9 +69385,9 @@ var FigureRendererStore = class extends DisposableStore {
69403
69385
  var StandaloneGridCanvas = class extends Component {
69404
69386
  static template = "o-spreadsheet-StandaloneGridCanvas";
69405
69387
  props = (0, _odoo_owl.props)({
69406
- sheetId: types$6.UID(),
69407
- zone: types$6.Zone(),
69408
- renderingCtx: types$6.object({})
69388
+ sheetId: types.UID(),
69389
+ zone: types.Zone(),
69390
+ renderingCtx: types.object({})
69409
69391
  });
69410
69392
  canvasRef = (0, _odoo_owl.signal)(null);
69411
69393
  rendererStore;
@@ -69727,7 +69709,7 @@ var SpreadsheetPrintStore = class extends SpreadsheetStore {
69727
69709
  //#region src/components/spreadsheet_print/spreadsheet_print.ts
69728
69710
  var SpreadsheetPrint = class extends Component {
69729
69711
  static template = "o-spreadsheet-SpreadsheetPrint";
69730
- props = (0, _odoo_owl.props)({ onExitPrintMode: types$6.function([]) });
69712
+ props = (0, _odoo_owl.props)({ onExitPrintMode: types.function() });
69731
69713
  static components = {
69732
69714
  StandaloneGridCanvas,
69733
69715
  Section,
@@ -70060,15 +70042,15 @@ var BorderEditor = class extends Component {
70060
70042
  Popover
70061
70043
  };
70062
70044
  props = (0, _odoo_owl.props)({
70063
- "class?": types$6.string(),
70064
- currentBorderColor: types$6.Color(),
70065
- currentBorderStyle: types$6.BorderStyle(),
70066
- "currentBorderPosition?": types$6.BorderPosition(),
70067
- onBorderColorPicked: types$6.function([types$6.Color()]),
70068
- onBorderStylePicked: types$6.function([types$6.BorderStyle()]),
70069
- onBorderPositionPicked: types$6.function([types$6.BorderPosition()]),
70070
- "maxHeight?": types$6.Pixel(),
70071
- anchorRect: types$6.Rect()
70045
+ "class?": types.string(),
70046
+ currentBorderColor: types.Color(),
70047
+ currentBorderStyle: types.BorderStyle(),
70048
+ "currentBorderPosition?": types.BorderPosition(),
70049
+ onBorderColorPicked: types.function(),
70050
+ onBorderStylePicked: types.function(),
70051
+ onBorderPositionPicked: types.function(),
70052
+ "maxHeight?": types.Pixel(),
70053
+ anchorRect: types.Rect()
70072
70054
  });
70073
70055
  BORDER_POSITIONS = BORDER_POSITIONS;
70074
70056
  lineStyleButtonRef = (0, _odoo_owl.signal)(null);
@@ -70132,9 +70114,9 @@ var BorderEditorWidget = class extends Component {
70132
70114
  static template = "o-spreadsheet-BorderEditorWidget";
70133
70115
  static components = { BorderEditor };
70134
70116
  props = (0, _odoo_owl.props)({
70135
- "disabled?": types$6.boolean(),
70136
- "dropdownMaxHeight?": types$6.Pixel(),
70137
- "class?": types$6.string()
70117
+ "disabled?": types.boolean(),
70118
+ "dropdownMaxHeight?": types.Pixel(),
70119
+ "class?": types.string()
70138
70120
  });
70139
70121
  topBarToolStore;
70140
70122
  borderEditorButtonRef = (0, _odoo_owl.signal)(null);
@@ -70192,7 +70174,7 @@ var BorderEditorWidget = class extends Component {
70192
70174
  //#region src/components/paint_format_button/paint_format_button.ts
70193
70175
  var PaintFormatButton = class extends Component {
70194
70176
  static template = "o-spreadsheet-PaintFormatButton";
70195
- props = (0, _odoo_owl.props)({ "class?": types$6.string() });
70177
+ props = (0, _odoo_owl.props)({ "class?": types.string() });
70196
70178
  paintFormatStore;
70197
70179
  setup() {
70198
70180
  this.paintFormatStore = useStore(PaintFormatStore);
@@ -70217,7 +70199,7 @@ var TableDropdownButton = class extends Component {
70217
70199
  TableStylesPopover,
70218
70200
  ActionButton
70219
70201
  };
70220
- props = (0, _odoo_owl.props)({ "class?": types$6.string() });
70202
+ props = (0, _odoo_owl.props)({ "class?": types.string() });
70221
70203
  topBarToolStore;
70222
70204
  state = (0, _odoo_owl.proxy)({ popoverProps: void 0 });
70223
70205
  setup() {
@@ -70308,10 +70290,10 @@ var TopBarColorEditor = class extends Component {
70308
70290
  static components = { ColorPickerWidget };
70309
70291
  static template = "o-spreadsheet-ColorEditor";
70310
70292
  props = (0, _odoo_owl.props)({
70311
- class: types$6.string(),
70312
- style: types$6.or([types$6.literal("textColor"), types$6.literal("fillColor")]),
70313
- icon: types$6.string(),
70314
- title: types$6.string()
70293
+ class: types.string(),
70294
+ style: types.or([types.literal("textColor"), types.literal("fillColor")]),
70295
+ icon: types.string(),
70296
+ title: types.string()
70315
70297
  });
70316
70298
  topBarToolStore;
70317
70299
  state = (0, _odoo_owl.proxy)({ isOpen: false });
@@ -70343,10 +70325,10 @@ var DropdownAction = class extends Component {
70343
70325
  Popover
70344
70326
  };
70345
70327
  props = (0, _odoo_owl.props)({
70346
- parentAction: types$6.ActionSpec(),
70347
- childActions: types$6.array(types$6.ActionSpec()),
70348
- class: types$6.string(),
70349
- childClass: types$6.string()
70328
+ parentAction: types.ActionSpec(),
70329
+ childActions: types.array(types.ActionSpec()),
70330
+ class: types.string(),
70331
+ childClass: types.string()
70350
70332
  });
70351
70333
  topBarToolStore;
70352
70334
  actionRef = (0, _odoo_owl.signal)(null);
@@ -70375,7 +70357,7 @@ var DropdownAction = class extends Component {
70375
70357
  var TopBarFontSizeEditor = class extends Component {
70376
70358
  static components = { FontSizeEditor };
70377
70359
  static template = "o-spreadsheet-TopBarFontSizeEditor";
70378
- props = (0, _odoo_owl.props)({ class: _odoo_owl.types.string() });
70360
+ props = (0, _odoo_owl.props)({ class: types.string() });
70379
70361
  topBarToolStore;
70380
70362
  setup() {
70381
70363
  this.topBarToolStore = useToolBarDropdownStore();
@@ -70409,7 +70391,7 @@ var NumberFormatsTool = class extends Component {
70409
70391
  MenuPopover,
70410
70392
  ActionButton
70411
70393
  };
70412
- props = (0, _odoo_owl.props)({ class: types$6.string() });
70394
+ props = (0, _odoo_owl.props)({ class: types.string() });
70413
70395
  formatNumberMenuItemSpec = formatNumberMenuItemSpec;
70414
70396
  topBarToolStore;
70415
70397
  buttonRef = (0, _odoo_owl.signal)(null);
@@ -70444,7 +70426,7 @@ var NumberFormatsTool = class extends Component {
70444
70426
  var ToolBarZoom = class extends Component {
70445
70427
  static template = "o-spreadsheet-TopBarZoom";
70446
70428
  static components = { NumberEditor };
70447
- props = (0, _odoo_owl.props)({ class: types$6.string() });
70429
+ props = (0, _odoo_owl.props)({ class: types.string() });
70448
70430
  topBarToolStore;
70449
70431
  valueList = ZOOM_VALUES;
70450
70432
  setup() {
@@ -70671,8 +70653,8 @@ topBarToolBarRegistry.add("edit").addChild("edit", {
70671
70653
  var TopBar = class extends Component {
70672
70654
  static template = "o-spreadsheet-TopBar";
70673
70655
  props = (0, _odoo_owl.props)({
70674
- onClick: types$6.function([]),
70675
- dropdownMaxHeight: types$6.Pixel()
70656
+ onClick: types.function(),
70657
+ dropdownMaxHeight: types.Pixel()
70676
70658
  });
70677
70659
  static components = {
70678
70660
  MenuPopover,
@@ -70949,14 +70931,10 @@ var WebClipboardWrapper = class {
70949
70931
  var Spreadsheet = class extends Component {
70950
70932
  static template = "o-spreadsheet-Spreadsheet";
70951
70933
  props = (0, _odoo_owl.props)({
70952
- model: types$6.Model(),
70953
- "notifyUser?": types$6.function([types$6.InformationNotification()]),
70954
- "raiseError?": types$6.function([types$6.string(), types$6.function([])]),
70955
- "askConfirmation?": types$6.function([
70956
- types$6.string(),
70957
- types$6.function([]),
70958
- types$6.function([])
70959
- ])
70934
+ model: types.Model(),
70935
+ "notifyUser?": types.function(),
70936
+ "raiseError?": types.function(),
70937
+ "askConfirmation?": types.function()
70960
70938
  });
70961
70939
  static components = {
70962
70940
  TopBar,
@@ -76535,8 +76513,8 @@ var ErrorToolTip = class extends Component {
76535
76513
  static maxSize = { maxHeight: ERROR_TOOLTIP_MAX_HEIGHT };
76536
76514
  static template = "o-spreadsheet-ErrorToolTip";
76537
76515
  props = (0, _odoo_owl.props)({
76538
- cellPosition: types$6.CellPosition(),
76539
- "onClosed?": types$6.function([])
76516
+ cellPosition: types.CellPosition(),
76517
+ "onClosed?": types.function()
76540
76518
  });
76541
76519
  get dataValidationErrorMessage() {
76542
76520
  return this.env.model.getters.getInvalidDataValidationMessage(this.props.cellPosition);
@@ -76619,8 +76597,8 @@ var FilterMenu = class extends Component {
76619
76597
  FilterMenuCriterion
76620
76598
  };
76621
76599
  props = (0, _odoo_owl.props)({
76622
- filterPosition: types$6.Position(),
76623
- "onClosed?": types$6.function([])
76600
+ filterPosition: types.Position(),
76601
+ "onClosed?": types.function()
76624
76602
  });
76625
76603
  state;
76626
76604
  criterionCategory = "text";
@@ -76799,8 +76777,8 @@ const FilterMenuPopoverBuilder = { onOpen: (position, getters) => {
76799
76777
  var LinkDisplay = class extends Component {
76800
76778
  static template = "o-spreadsheet-LinkDisplay";
76801
76779
  props = (0, _odoo_owl.props)({
76802
- cellPosition: types$6.CellPosition(),
76803
- "onClosed?": types$6.function([])
76780
+ cellPosition: types.CellPosition(),
76781
+ "onClosed?": types.function()
76804
76782
  });
76805
76783
  cellPopovers;
76806
76784
  setup() {
@@ -76873,8 +76851,8 @@ var LinkEditor = class extends Component {
76873
76851
  static template = "o-spreadsheet-LinkEditor";
76874
76852
  static components = { MenuPopover };
76875
76853
  props = (0, _odoo_owl.props)({
76876
- cellPosition: types$6.CellPosition(),
76877
- "onClosed?": types$6.function([])
76854
+ cellPosition: types.CellPosition(),
76855
+ "onClosed?": types.function()
76878
76856
  });
76879
76857
  static size = { maxHeight: 500 };
76880
76858
  urlInput = (0, _odoo_owl.signal)(null);
@@ -86564,6 +86542,6 @@ exports.stores = stores;
86564
86542
  exports.tokenColors = tokenColors;
86565
86543
  exports.tokenize = tokenize;
86566
86544
 
86567
- __info__.version = "19.4.0-alpha.12";
86568
- __info__.date = "2026-06-06T06:24:48.209Z";
86569
- __info__.hash = "a71f829";
86545
+ __info__.version = "19.4.0-alpha.14";
86546
+ __info__.date = "2026-06-12T09:49:11.281Z";
86547
+ __info__.hash = "f92f5e0";