@odoo/o-spreadsheet 19.4.0-alpha.13 → 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 (33) hide show
  1. package/dist/o_spreadsheet.cjs +804 -839
  2. package/dist/o_spreadsheet.css +12 -4
  3. package/dist/o_spreadsheet.esm.js +412 -447
  4. package/dist/o_spreadsheet.iife.js +804 -839
  5. package/dist/o_spreadsheet.min.iife.js +78 -78
  6. package/dist/o_spreadsheet.xml +8 -7
  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/figures/figure_carousel/figure_carousel.d.ts +2 -1
  12. package/dist/types/components/figures/figure_chart/figure_chart.d.ts +1 -1
  13. package/dist/types/components/figures/figure_image/figure_image.d.ts +1 -1
  14. package/dist/types/components/filters/filter_menu_item/filter_menu_value_item.d.ts +2 -2
  15. package/dist/types/components/grid_overlay/grid_overlay.d.ts +2 -3
  16. package/dist/types/components/helpers/dom_helpers.d.ts +0 -4
  17. package/dist/types/components/menu/menu.d.ts +1 -1
  18. package/dist/types/components/menu_popover/menu_popover.d.ts +1 -1
  19. package/dist/types/components/props_validation.d.ts +2 -6
  20. package/dist/types/components/side_panel/chart/building_blocks/axis_design/axis_design_editor.d.ts +5 -6
  21. package/dist/types/components/side_panel/chart/building_blocks/data_source/data_source.d.ts +5 -4
  22. package/dist/types/components/side_panel/chart/building_blocks/general_design/general_design_editor.d.ts +7 -7
  23. package/dist/types/components/side_panel/chart/building_blocks/legend/legend.d.ts +3 -2
  24. package/dist/types/components/side_panel/chart/building_blocks/range_data_source/range_data_source.d.ts +3 -2
  25. package/dist/types/components/side_panel/chart/building_blocks/series_design/series_design_editor.d.ts +5 -5
  26. package/dist/types/components/side_panel/chart/building_blocks/series_design/series_with_axis_design_editor.d.ts +3 -3
  27. package/dist/types/components/side_panel/chart/building_blocks/show_values/show_values.d.ts +7 -4
  28. package/dist/types/components/side_panel/chart/common.d.ts +3 -2
  29. package/dist/types/components/side_panel/chart/geo_chart_panel/geo_chart_region_select_section.d.ts +4 -4
  30. package/dist/types/components/side_panel/pivot/pivot_layout_configurator/pivot_dimension/pivot_dimension.d.ts +2 -2
  31. package/dist/types/components/side_panel/pivot/pivot_layout_configurator/pivot_measure/pivot_measure.d.ts +1 -1
  32. package/dist/types/components/top_bar/font_size_editor/font_size_editor.d.ts +1 -1
  33. 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.13
6
- * @date 2026-06-06T09:34:53.140Z
7
- * @hash af3c199
5
+ * @version 19.4.0-alpha.14
6
+ * @date 2026-06-12T09:49:11.281Z
7
+ * @hash f92f5e0
8
8
  */
9
9
 
10
10
  import { App, Component, EnvPlugin, Plugin, __ODOO_COMPATIBILITY_LAYER_ADDED__, blockDom, config, markRaw, onMounted, onPatched, onWillPatch, onWillStart, onWillUnmount, onWillUpdateProps, plugin, props, providePlugins, proxy, signal, status, toRaw, types, useChildEnv, useChildSubEnv, useComponent, useEffect, useEnv, useExternalListener, useLayoutEffect, useListener, useScope, useSubEnv, whenReady, xml } from "@odoo/owl";
@@ -331,12 +331,6 @@ function downloadFile(dataUrl, fileName) {
331
331
  a.click();
332
332
  document.body.removeChild(a);
333
333
  }
334
- /**
335
- * Detects if the current browser is Firefox
336
- */
337
- function isBrowserFirefox() {
338
- return /Firefox/i.test(navigator.userAgent);
339
- }
340
334
  function maxTouchPoints() {
341
335
  return navigator.maxTouchPoints || 1;
342
336
  }
@@ -3008,6 +3002,187 @@ function getDependencyContainer(env) {
3008
3002
  return container;
3009
3003
  }
3010
3004
 
3005
+ //#endregion
3006
+ //#region src/components/props_validation.ts
3007
+ /**
3008
+ * Validate that a prop is a number, but with a more specific type than just `number` (e.g. `Pixel`).
3009
+ */
3010
+ function validateNumber() {
3011
+ return types.number();
3012
+ }
3013
+ /**
3014
+ * Validate that a prop is a string, but with a more specific type than just `string` (e.g. `Color`).
3015
+ */
3016
+ function validateString() {
3017
+ return types.string();
3018
+ }
3019
+ /**
3020
+ * Validate that a prop is an object, but with a more specific type than just `object` (e.g. `ActionSpec`).
3021
+ */
3022
+ function validateObject() {
3023
+ return types.object();
3024
+ }
3025
+ /**
3026
+ * Validate that a prop is an array, but with a more specific element type than `any[]`.
3027
+ */
3028
+ function validateArrayOf() {
3029
+ return types.array();
3030
+ }
3031
+ /**
3032
+ * Validate that a prop is a record (string-keyed dictionary), but with a more
3033
+ * specific value type than `any`.
3034
+ */
3035
+ function validateRecordOf() {
3036
+ return types.record();
3037
+ }
3038
+ /**
3039
+ * Validate that a prop is a `Set`, typed with a specific element type.
3040
+ */
3041
+ function validateSetOf() {
3042
+ return types.instanceOf(Set);
3043
+ }
3044
+ function validateRect() {
3045
+ return types.object({
3046
+ x: types.number(),
3047
+ y: types.number(),
3048
+ width: types.number(),
3049
+ height: types.number()
3050
+ });
3051
+ }
3052
+ function validateBorderPosition() {
3053
+ return types.customValidator(validateString(), (position) => borderPositions.includes(position));
3054
+ }
3055
+ function validateBorderStyle() {
3056
+ return types.customValidator(validateString(), (style) => borderStyles.includes(style));
3057
+ }
3058
+ function validateDOMCoordinates() {
3059
+ return types.object({
3060
+ x: types.number(),
3061
+ y: types.number()
3062
+ });
3063
+ }
3064
+ function validateDOMDimension() {
3065
+ return types.object({
3066
+ width: types.number(),
3067
+ height: types.number()
3068
+ });
3069
+ }
3070
+ function validateSortDirection() {
3071
+ return types.customValidator(validateString(), (direction) => ["asc", "desc"].includes(direction));
3072
+ }
3073
+ function validateResizeDirection() {
3074
+ return types.customValidator(validateNumber(), (direction) => [
3075
+ -1,
3076
+ 0,
3077
+ 1
3078
+ ].includes(direction));
3079
+ }
3080
+ function validateComposerFocusType() {
3081
+ return types.customValidator(validateString(), (value) => composerFocusTypes.includes(value));
3082
+ }
3083
+ function validateDimension() {
3084
+ return types.customValidator(validateString(), (value) => ["COL", "ROW"].includes(value));
3085
+ }
3086
+ function validateContextMenuType() {
3087
+ return types.customValidator(validateString(), (value) => [
3088
+ "ROW",
3089
+ "COL",
3090
+ "CELL",
3091
+ "FILTER",
3092
+ "GROUP_HEADERS",
3093
+ "UNGROUP_HEADERS"
3094
+ ].includes(value));
3095
+ }
3096
+ /**
3097
+ * Validate that a prop is a store. Typed as the CQS-wrapped `Store<T>` to
3098
+ * match what `useStore(...)` returns at the call site.
3099
+ */
3100
+ function validateStore() {
3101
+ return types.object();
3102
+ }
3103
+ function validateFunction() {
3104
+ return types.function();
3105
+ }
3106
+ const types$1 = {
3107
+ ...types,
3108
+ function: validateFunction,
3109
+ ArrayOf: validateArrayOf,
3110
+ RecordOf: validateRecordOf,
3111
+ SetOf: validateSetOf,
3112
+ GenericCriterionType: validateString,
3113
+ UID: validateString,
3114
+ CriterionFilter: validateObject,
3115
+ CSSProperties: validateObject,
3116
+ ResizeDirection: validateResizeDirection,
3117
+ FigureUI: validateObject,
3118
+ Token: validateObject,
3119
+ CellPosition: validateObject,
3120
+ AutoCompleteProviderDefinition: validateObject,
3121
+ AutoCompleteProposal: validateObject,
3122
+ FunctionDescription: validateObject,
3123
+ Rect: validateRect,
3124
+ Pixel: validateNumber,
3125
+ HeaderIndex: validateNumber,
3126
+ BorderPosition: validateBorderPosition,
3127
+ BorderStyle: validateBorderStyle,
3128
+ Color: validateString,
3129
+ ActionSpec: validateObject,
3130
+ DOMCoordinates: validateDOMCoordinates,
3131
+ DOMDimension: validateDOMDimension,
3132
+ ComposerFocusType: validateComposerFocusType,
3133
+ SortDirection: validateSortDirection,
3134
+ Store: validateStore,
3135
+ Position: validateObject,
3136
+ PivotCoreDefinition: validateObject,
3137
+ PivotField: validateObject,
3138
+ PivotDimension: validateObject,
3139
+ PivotMeasure: validateObject,
3140
+ PivotCoreMeasure: validateObject,
3141
+ PivotCustomGroupedField: validateObject,
3142
+ PivotRuntimeDefinition: validateObject,
3143
+ PivotFilter: validateObject,
3144
+ DataFilterValue: validateObject,
3145
+ SpreadsheetPivotCoreDefinition: validateObject,
3146
+ ComposerSelection: validateObject,
3147
+ Action: validateObject,
3148
+ MenuItemOrSeparator: validateObject,
3149
+ Model: validateObject,
3150
+ DispatchResult: validateObject,
3151
+ Zone: validateObject,
3152
+ Range: validateObject,
3153
+ HeaderGroup: validateObject,
3154
+ GridClickModifiers: validateObject,
3155
+ ZoomedMouseEvent: validateObject,
3156
+ ConditionalFormat: validateObject,
3157
+ ColorScaleThreshold: validateObject,
3158
+ Table: validateObject,
3159
+ CoreTable: validateObject,
3160
+ TableConfig: validateObject,
3161
+ TableStyle: validateObject,
3162
+ TitleDesign: validateObject,
3163
+ ChartDefinition: validateObject,
3164
+ ChartDefinitionWithDataSource: validateObject,
3165
+ ChartWithAxisDefinition: validateObject,
3166
+ ChartStyle: validateObject,
3167
+ ChartColorScale: validateObject,
3168
+ ChartRangeDataSource: validateObject,
3169
+ DataSetStyle: validateObject,
3170
+ GeoChartDefinition: validateObject,
3171
+ FunnelChartDefinition: validateObject,
3172
+ TreeMapChartDefinition: validateObject,
3173
+ TreeMapCategoryColorOptions: validateObject,
3174
+ TreeMapColorScaleOptions: validateObject,
3175
+ NamedRange: validateObject,
3176
+ DataValidationRule: validateObject,
3177
+ InformationNotification: validateObject,
3178
+ NotificationStoreMethods: validateObject,
3179
+ SidePanelContent: validateObject,
3180
+ SidePanelComponentProps: validateObject,
3181
+ DataValidationCriterionType: validateString,
3182
+ Dimension: validateDimension,
3183
+ ContextMenuType: validateContextMenuType
3184
+ };
3185
+
3011
3186
  //#endregion
3012
3187
  //#region src/components/figures/chart/chartJs/chartjs_animation_store.ts
3013
3188
  var ChartAnimationStore = class extends SpreadsheetStore {
@@ -11523,8 +11698,8 @@ chartJsExtensionRegistry.add("chartBackgroundPlugin", {
11523
11698
  var ChartJsComponent = class extends Component$1 {
11524
11699
  static template = "o-spreadsheet-ChartJsComponent";
11525
11700
  props = props({
11526
- chartId: types.string(),
11527
- "isFullScreen?": types.boolean()
11701
+ chartId: types$1.string(),
11702
+ "isFullScreen?": types$1.boolean()
11528
11703
  });
11529
11704
  canvas = signal(null);
11530
11705
  chart;
@@ -12222,8 +12397,8 @@ function getZoomTargetPosition(ev, zoom) {
12222
12397
  var ScorecardChart = class extends Component$1 {
12223
12398
  static template = "o-spreadsheet-ScorecardChart";
12224
12399
  props = props({
12225
- chartId: types.string(),
12226
- "isFullScreen?": types.boolean()
12400
+ chartId: types$1.string(),
12401
+ "isFullScreen?": types$1.boolean()
12227
12402
  });
12228
12403
  canvas = signal(null);
12229
12404
  get runtime() {
@@ -13911,8 +14086,8 @@ const ANIMATION_DURATION = 1e3;
13911
14086
  var GaugeChartComponent = class extends Component$1 {
13912
14087
  static template = "o-spreadsheet-GaugeChartComponent";
13913
14088
  props = props({
13914
- chartId: types.string(),
13915
- "isFullScreen?": types.boolean()
14089
+ chartId: types$1.string(),
14090
+ "isFullScreen?": types$1.boolean()
13916
14091
  });
13917
14092
  canvas = signal(null);
13918
14093
  animationStore;
@@ -14184,183 +14359,6 @@ function useTimeOut() {
14184
14359
  };
14185
14360
  }
14186
14361
 
14187
- //#endregion
14188
- //#region src/components/props_validation.ts
14189
- /**
14190
- * Validate that a prop is a number, but with a more specific type than just `number` (e.g. `Pixel`).
14191
- */
14192
- function validateNumber() {
14193
- return types.number();
14194
- }
14195
- /**
14196
- * Validate that a prop is a string, but with a more specific type than just `string` (e.g. `Color`).
14197
- */
14198
- function validateString() {
14199
- return types.string();
14200
- }
14201
- /**
14202
- * Validate that a prop is an object, but with a more specific type than just `object` (e.g. `ActionSpec`).
14203
- */
14204
- function validateObject() {
14205
- return types.object();
14206
- }
14207
- /**
14208
- * Validate that a prop is an array, but with a more specific element type than `any[]`.
14209
- */
14210
- function validateArrayOf() {
14211
- return types.array();
14212
- }
14213
- /**
14214
- * Validate that a prop is a record (string-keyed dictionary), but with a more
14215
- * specific value type than `any`.
14216
- */
14217
- function validateRecordOf() {
14218
- return types.record();
14219
- }
14220
- /**
14221
- * Validate that a prop is a `Set`, typed with a specific element type.
14222
- */
14223
- function validateSetOf() {
14224
- return types.instanceOf(Set);
14225
- }
14226
- function validateRect() {
14227
- return types.object({
14228
- x: types.number(),
14229
- y: types.number(),
14230
- width: types.number(),
14231
- height: types.number()
14232
- });
14233
- }
14234
- function validateBorderPosition() {
14235
- return types.customValidator(validateString(), (position) => borderPositions.includes(position));
14236
- }
14237
- function validateBorderStyle() {
14238
- return types.customValidator(validateString(), (style) => borderStyles.includes(style));
14239
- }
14240
- function validateDOMCoordinates() {
14241
- return types.object({
14242
- x: types.number(),
14243
- y: types.number()
14244
- });
14245
- }
14246
- function validateDOMDimension() {
14247
- return types.object({
14248
- width: types.number(),
14249
- height: types.number()
14250
- });
14251
- }
14252
- function validateSortDirection() {
14253
- return types.customValidator(validateString(), (direction) => ["asc", "desc"].includes(direction));
14254
- }
14255
- function validateResizeDirection() {
14256
- return types.customValidator(validateNumber(), (direction) => [
14257
- -1,
14258
- 0,
14259
- 1
14260
- ].includes(direction));
14261
- }
14262
- function validateComposerFocusType() {
14263
- return types.customValidator(validateString(), (value) => composerFocusTypes.includes(value));
14264
- }
14265
- function validateDimension() {
14266
- return types.customValidator(validateString(), (value) => ["COL", "ROW"].includes(value));
14267
- }
14268
- function validateContextMenuType() {
14269
- return types.customValidator(validateString(), (value) => [
14270
- "ROW",
14271
- "COL",
14272
- "CELL",
14273
- "FILTER",
14274
- "GROUP_HEADERS",
14275
- "UNGROUP_HEADERS"
14276
- ].includes(value));
14277
- }
14278
- /**
14279
- * Validate that a prop is a store. Typed as the CQS-wrapped `Store<T>` to
14280
- * match what `useStore(...)` returns at the call site.
14281
- */
14282
- function validateStore() {
14283
- return types.object();
14284
- }
14285
- const types$1 = {
14286
- ...types,
14287
- ArrayOf: validateArrayOf,
14288
- RecordOf: validateRecordOf,
14289
- SetOf: validateSetOf,
14290
- GenericCriterionType: validateString,
14291
- UID: validateString,
14292
- CriterionFilter: validateObject,
14293
- CSSProperties: validateObject,
14294
- ResizeDirection: validateResizeDirection,
14295
- FigureUI: validateObject,
14296
- Token: validateObject,
14297
- CellPosition: validateObject,
14298
- AutoCompleteProviderDefinition: validateObject,
14299
- AutoCompleteProposal: validateObject,
14300
- FunctionDescription: validateObject,
14301
- Rect: validateRect,
14302
- Pixel: validateNumber,
14303
- HeaderIndex: validateNumber,
14304
- BorderPosition: validateBorderPosition,
14305
- BorderStyle: validateBorderStyle,
14306
- Color: validateString,
14307
- ActionSpec: validateObject,
14308
- DOMCoordinates: validateDOMCoordinates,
14309
- DOMDimension: validateDOMDimension,
14310
- ComposerFocusType: validateComposerFocusType,
14311
- SortDirection: validateSortDirection,
14312
- Store: validateStore,
14313
- Position: validateObject,
14314
- PivotCoreDefinition: validateObject,
14315
- PivotField: validateObject,
14316
- PivotDimension: validateObject,
14317
- PivotMeasure: validateObject,
14318
- PivotCoreMeasure: validateObject,
14319
- PivotCustomGroupedField: validateObject,
14320
- PivotRuntimeDefinition: validateObject,
14321
- PivotFilter: validateObject,
14322
- DataFilterValue: validateObject,
14323
- SpreadsheetPivotCoreDefinition: validateObject,
14324
- ComposerSelection: validateObject,
14325
- Action: validateObject,
14326
- MenuItemOrSeparator: validateObject,
14327
- Model: validateObject,
14328
- DispatchResult: validateObject,
14329
- Zone: validateObject,
14330
- Range: validateObject,
14331
- HeaderGroup: validateObject,
14332
- GridClickModifiers: validateObject,
14333
- ZoomedMouseEvent: validateObject,
14334
- ConditionalFormat: validateObject,
14335
- ColorScaleThreshold: validateObject,
14336
- Table: validateObject,
14337
- CoreTable: validateObject,
14338
- TableConfig: validateObject,
14339
- TableStyle: validateObject,
14340
- TitleDesign: validateObject,
14341
- ChartDefinition: validateObject,
14342
- ChartDefinitionWithDataSource: validateObject,
14343
- ChartWithAxisDefinition: validateObject,
14344
- ChartStyle: validateObject,
14345
- ChartColorScale: validateObject,
14346
- ChartRangeDataSource: validateObject,
14347
- DataSetStyle: validateObject,
14348
- GeoChartDefinition: validateObject,
14349
- FunnelChartDefinition: validateObject,
14350
- TreeMapChartDefinition: validateObject,
14351
- TreeMapCategoryColorOptions: validateObject,
14352
- TreeMapColorScaleOptions: validateObject,
14353
- NamedRange: validateObject,
14354
- DataValidationRule: validateObject,
14355
- InformationNotification: validateObject,
14356
- NotificationStoreMethods: validateObject,
14357
- SidePanelContent: validateObject,
14358
- SidePanelComponentProps: validateObject,
14359
- DataValidationCriterionType: validateString,
14360
- Dimension: validateDimension,
14361
- ContextMenuType: validateContextMenuType
14362
- };
14363
-
14364
14362
  //#endregion
14365
14363
  //#region src/components/menu/menu.ts
14366
14364
  var Menu = class extends Component$1 {
@@ -14368,15 +14366,15 @@ var Menu = class extends Component$1 {
14368
14366
  static components = {};
14369
14367
  props = props({
14370
14368
  menuItems: types$1.ArrayOf(),
14371
- onClose: types$1.function([]),
14372
- "onClickMenu?": types$1.function([types$1.Action(), types$1.instanceOf(PointerEvent)]),
14373
- "onMouseEnter?": types$1.function([types$1.Action(), types$1.instanceOf(PointerEvent)]),
14374
- "onMouseLeave?": types$1.function([types$1.Action(), types$1.instanceOf(PointerEvent)]),
14369
+ onClose: types$1.function(),
14370
+ "onClickMenu?": types$1.function(),
14371
+ "onMouseEnter?": types$1.function(),
14372
+ "onMouseLeave?": types$1.function(),
14375
14373
  "width?": types$1.number(),
14376
14374
  "hoveredMenuId?": types$1.string(),
14377
14375
  "isHoveredMenuFocused?": types$1.boolean(),
14378
- "onScroll?": types$1.function([types$1.instanceOf(CustomEvent)]),
14379
- "onKeyDown?": types$1.function([types$1.instanceOf(KeyboardEvent)]),
14376
+ "onScroll?": types$1.function(),
14377
+ "onKeyDown?": types$1.function(),
14380
14378
  "disableKeyboardNavigation?": types$1.boolean()
14381
14379
  });
14382
14380
  menuRef = signal(null);
@@ -14523,9 +14521,9 @@ var Popover = class extends Component$1 {
14523
14521
  "maxWidth?": types$1.Pixel(),
14524
14522
  "maxHeight?": types$1.Pixel(),
14525
14523
  "verticalOffset?": types$1.number(),
14526
- "onMouseWheel?": types$1.function([]),
14527
- "onPopoverHidden?": types$1.function([]),
14528
- "onPopoverMoved?": types$1.function([]),
14524
+ "onMouseWheel?": types$1.function(),
14525
+ "onPopoverHidden?": types$1.function(),
14526
+ "onPopoverMoved?": types$1.function(),
14529
14527
  "zIndex?": types$1.number(),
14530
14528
  "class?": types$1.string()
14531
14529
  }, {
@@ -14707,14 +14705,14 @@ var MenuPopover = class MenuPopover extends Component$1 {
14707
14705
  menuItems: types$1.ArrayOf(),
14708
14706
  "depth?": types$1.number(),
14709
14707
  "maxHeight?": types$1.Pixel(),
14710
- onClose: types$1.function([]),
14711
- "onMenuClicked?": types$1.function([types$1.instanceOf(CustomEvent)]),
14708
+ onClose: types$1.function(),
14709
+ "onMenuClicked?": types$1.function(),
14712
14710
  "menuId?": types$1.UID(),
14713
- "onMouseOver?": types$1.function([]),
14711
+ "onMouseOver?": types$1.function(),
14714
14712
  "width?": types$1.number(),
14715
14713
  "autoSelectFirstItem?": types$1.boolean(),
14716
14714
  "disableKeyboardNavigation?": types$1.boolean(),
14717
- "onKeyboardNavigation?": types$1.function([types$1.instanceOf(KeyboardEvent)])
14715
+ "onKeyboardNavigation?": types$1.function()
14718
14716
  }, {
14719
14717
  depth: 0,
14720
14718
  popoverPositioning: "top-right"
@@ -14960,7 +14958,7 @@ var Select = class extends Component$1 {
14960
14958
  static template = "o-spreadsheet-Select";
14961
14959
  static components = { Popover };
14962
14960
  props = props({
14963
- onChange: types$1.function([types$1.string()]),
14961
+ onChange: types$1.function(),
14964
14962
  values: types$1.array(),
14965
14963
  "selectedValue?": types$1.string(),
14966
14964
  "class?": types$1.string(),
@@ -15145,9 +15143,9 @@ var CarouselFigure = class extends Component$1 {
15145
15143
  };
15146
15144
  props = props({
15147
15145
  figureUI: types$1.FigureUI(),
15148
- "editFigureStyle?": types$1.function([types$1.CSSProperties()]),
15146
+ "editFigureStyle?": types$1.function(),
15149
15147
  "isFullScreen?": types$1.boolean(),
15150
- "openContextMenu?": types$1.function([types$1.Rect(), types$1.function([])])
15148
+ "openContextMenu?": types$1.function()
15151
15149
  });
15152
15150
  carouselTabsRef = signal(null);
15153
15151
  carouselTabsDropdownRef = signal(null);
@@ -15186,6 +15184,12 @@ var CarouselFigure = class extends Component$1 {
15186
15184
  this.env.model.dispatch("SELECT_FIGURE", { figureId: this.props.figureUI.id });
15187
15185
  this.env.openSidePanel("CarouselPanel", { figureId: this.props.figureUI.id });
15188
15186
  }
15187
+ onCarouselChartDoubleClick() {
15188
+ if (this.selectedCarouselItem?.type !== "chart") return;
15189
+ const chartId = this.selectedCarouselItem.chartId;
15190
+ this.env.model.dispatch("SELECT_FIGURE", { figureId: this.props.figureUI.id });
15191
+ this.env.openSidePanel("ChartPanel", { chartId });
15192
+ }
15189
15193
  isItemSelected(item) {
15190
15194
  const selectedItem = this.selectedCarouselItem;
15191
15195
  return deepEquals(selectedItem, item);
@@ -15286,9 +15290,9 @@ var ChartFigure = class extends Component$1 {
15286
15290
  static components = { ChartDashboardMenu };
15287
15291
  props = props({
15288
15292
  figureUI: types$1.FigureUI(),
15289
- "editFigureStyle?": types$1.function([types$1.CSSProperties()]),
15293
+ "editFigureStyle?": types$1.function(),
15290
15294
  "isFullScreen?": types$1.boolean(),
15291
- "openContextMenu?": types$1.function([types$1.Rect(), types$1.function([])])
15295
+ "openContextMenu?": types$1.function()
15292
15296
  });
15293
15297
  onDoubleClick() {
15294
15298
  this.env.model.dispatch("SELECT_FIGURE", { figureId: this.props.figureUI.id });
@@ -15317,8 +15321,8 @@ var ImageFigure = class extends Component$1 {
15317
15321
  static components = {};
15318
15322
  props = props({
15319
15323
  figureUI: types$1.FigureUI(),
15320
- "editFigureStyle?": types$1.function([types$1.CSSProperties()]),
15321
- "openContextMenu?": types$1.function([types$1.Rect(), types$1.function([])])
15324
+ "editFigureStyle?": types$1.function(),
15325
+ "openContextMenu?": types$1.function()
15322
15326
  });
15323
15327
  get figureId() {
15324
15328
  return this.props.figureUI.id;
@@ -15360,12 +15364,8 @@ var FigureComponent = class extends Component$1 {
15360
15364
  figureUI: types$1.FigureUI(),
15361
15365
  style: types$1.string(),
15362
15366
  class: types$1.string(),
15363
- "onMouseDown?": types$1.function([types$1.instanceOf(MouseEvent)]),
15364
- "onClickAnchor?": types$1.function([
15365
- types$1.ResizeDirection(),
15366
- types$1.ResizeDirection(),
15367
- types$1.instanceOf(MouseEvent)
15368
- ])
15367
+ "onMouseDown?": types$1.function(),
15368
+ "onClickAnchor?": types$1.function()
15369
15369
  }, {
15370
15370
  onMouseDown: () => {},
15371
15371
  onClickAnchor: () => {}
@@ -15429,7 +15429,7 @@ var FigureComponent = class extends Component$1 {
15429
15429
  * correctly (and render?) before focusing the element.
15430
15430
  */
15431
15431
  el?.focus({ preventScroll: true });
15432
- });
15432
+ }, () => [this.env.model.getters.getSelectedFigureIds(), this.props.figureUI.id]);
15433
15433
  }
15434
15434
  clickAnchor(dirX, dirY, ev) {
15435
15435
  this.props.onClickAnchor(dirX, dirY, ev);
@@ -24486,10 +24486,10 @@ function useAutofocus(ref) {
24486
24486
  //#region src/components/generic_input/generic_input.ts
24487
24487
  const genericInputPropsDefinition = {
24488
24488
  value: types$1.or([types$1.number(), types$1.string()]),
24489
- onChange: types$1.function([types$1.string()]),
24490
- "onFocused?": types$1.function([]),
24491
- "onBlur?": types$1.function([]),
24492
- "onInput?": types$1.function([types$1.string()]),
24489
+ onChange: types$1.function(),
24490
+ "onFocused?": types$1.function(),
24491
+ "onBlur?": types$1.function(),
24492
+ "onInput?": types$1.function(),
24493
24493
  "class?": types$1.string(),
24494
24494
  "id?": types$1.string(),
24495
24495
  "placeholder?": types$1.string(),
@@ -24661,7 +24661,7 @@ var ColorPicker = class extends Component$1 {
24661
24661
  static template = "o-spreadsheet-ColorPicker";
24662
24662
  static components = { Popover };
24663
24663
  props = props({
24664
- onColorPicked: types$1.function([types$1.string()]),
24664
+ onColorPicked: types$1.function(),
24665
24665
  "currentColor?": types$1.string(),
24666
24666
  "maxHeight?": types$1.Pixel(),
24667
24667
  anchorRect: types$1.Rect(),
@@ -24825,9 +24825,9 @@ var ColorPickerWidget = class extends Component$1 {
24825
24825
  static components = { ColorPicker };
24826
24826
  props = props({
24827
24827
  "currentColor?": types$1.string(),
24828
- toggleColorPicker: types$1.function([]),
24828
+ toggleColorPicker: types$1.function(),
24829
24829
  showColorPicker: types$1.boolean(),
24830
- onColorPicked: types$1.function([types$1.string()]),
24830
+ onColorPicked: types$1.function(),
24831
24831
  icon: types$1.string(),
24832
24832
  "title?": types$1.string(),
24833
24833
  "disabled?": types$1.boolean(),
@@ -24850,9 +24850,9 @@ var NumberEditor = class extends Component$1 {
24850
24850
  static components = { Popover };
24851
24851
  props = props({
24852
24852
  currentValue: types$1.number(),
24853
- onValueChange: types$1.function([types$1.number()]),
24854
- "onToggle?": types$1.function([]),
24855
- "onFocusInput?": types$1.function([]),
24853
+ onValueChange: types$1.function(),
24854
+ "onToggle?": types$1.function(),
24855
+ "onFocusInput?": types$1.function(),
24856
24856
  class: types$1.string(),
24857
24857
  "valueIcon?": types$1.string(),
24858
24858
  min: types$1.number(),
@@ -24940,9 +24940,9 @@ var FontSizeEditor = class extends Component$1 {
24940
24940
  static components = { NumberEditor };
24941
24941
  props = props({
24942
24942
  currentFontSize: types$1.number(),
24943
- onFontSizeChanged: types$1.function([types$1.number()]),
24944
- "onToggle?": types$1.function([]),
24945
- "onFocusInput?": types$1.function([]),
24943
+ onFontSizeChanged: types$1.function(),
24944
+ "onToggle?": types$1.function(),
24945
+ "onFocusInput?": types$1.function(),
24946
24946
  class: types$1.string()
24947
24947
  }, { onFocusInput: () => {} });
24948
24948
  fontSizes = FONT_SIZES;
@@ -24959,7 +24959,7 @@ var TextStyler = class extends Component$1 {
24959
24959
  };
24960
24960
  props = props({
24961
24961
  style: types$1.ChartStyle(),
24962
- updateStyle: types$1.function([types$1.ChartStyle()]),
24962
+ updateStyle: types$1.function(),
24963
24963
  "defaultStyle?": types$1.object({}),
24964
24964
  "hasVerticalAlign?": types$1.boolean(),
24965
24965
  "hasHorizontalAlign?": types$1.boolean(),
@@ -25185,7 +25185,7 @@ var CarouselPanel = class extends Component$1 {
25185
25185
  CogWheelMenu
25186
25186
  };
25187
25187
  props = props({
25188
- onCloseSidePanel: types$1.function([]),
25188
+ onCloseSidePanel: types$1.function(),
25189
25189
  figureId: types$1.UID()
25190
25190
  });
25191
25191
  DEFAULT_CAROUSEL_TITLE_STYLE = DEFAULT_CAROUSEL_TITLE_STYLE;
@@ -25401,7 +25401,7 @@ var Checkbox = class extends Component$1 {
25401
25401
  "name?": types$1.string(),
25402
25402
  "title?": types$1.string(),
25403
25403
  "disabled?": types$1.boolean(),
25404
- onChange: types$1.function([types$1.boolean()])
25404
+ onChange: types$1.function()
25405
25405
  }, { value: false });
25406
25406
  onChange(ev) {
25407
25407
  const value = ev.target.checked;
@@ -25414,8 +25414,8 @@ var Checkbox = class extends Component$1 {
25414
25414
  const chartSidePanelPropsDefinition = {
25415
25415
  chartId: types$1.UID(),
25416
25416
  definition: types$1.object({}),
25417
- canUpdateChart: types$1.function([types$1.UID(), types$1.object({})], types$1.DispatchResult()),
25418
- updateChart: types$1.function([types$1.UID(), types$1.object({})], types$1.DispatchResult())
25417
+ canUpdateChart: types$1.function(),
25418
+ updateChart: types$1.function()
25419
25419
  };
25420
25420
 
25421
25421
  //#endregion
@@ -25910,11 +25910,11 @@ var SelectionInput = class extends Component$1 {
25910
25910
  "autofocus?": types$1.boolean(),
25911
25911
  "isInvalid?": types$1.boolean(),
25912
25912
  "class?": types$1.string(),
25913
- "onSelectionChanged?": types$1.function([types$1.array(types$1.string())]),
25914
- "onSelectionConfirmed?": types$1.function([]),
25915
- "onSelectionReordered?": types$1.function([types$1.array(types$1.number())]),
25916
- "onSelectionRemoved?": types$1.function([types$1.number()]),
25917
- "onInputFocused?": types$1.function([]),
25913
+ "onSelectionChanged?": types$1.function(),
25914
+ "onSelectionConfirmed?": types$1.function(),
25915
+ "onSelectionReordered?": types$1.function(),
25916
+ "onSelectionRemoved?": types$1.function(),
25917
+ "onInputFocused?": types$1.function(),
25918
25918
  "colors?": types$1.ArrayOf(),
25919
25919
  "disabledRanges?": types$1.array(types$1.boolean()),
25920
25920
  "disabledRangeTitle?": types$1.string()
@@ -26089,15 +26089,15 @@ var ChartDataSeries = class extends Component$1 {
26089
26089
  ranges: types$1.ArrayOf(),
26090
26090
  "dataSetStyles?": types$1.DataSetStyle(),
26091
26091
  "hasSingleRange?": types$1.boolean(),
26092
- onSelectionChanged: types$1.function([types$1.array(types$1.string())]),
26093
- "onSelectionReordered?": types$1.function([types$1.array(types$1.number())]),
26094
- "onSelectionRemoved?": types$1.function([types$1.number()]),
26095
- onSelectionConfirmed: types$1.function([]),
26092
+ onSelectionChanged: types$1.function(),
26093
+ "onSelectionReordered?": types$1.function(),
26094
+ "onSelectionRemoved?": types$1.function(),
26095
+ onSelectionConfirmed: types$1.function(),
26096
26096
  "maxNumberOfUsedRanges?": types$1.number(),
26097
26097
  "title?": types$1.string(),
26098
26098
  "datasetOrientation?": types$1.or([types$1.literal("rows"), types$1.literal("columns")]),
26099
26099
  "canChangeDatasetOrientation?": types$1.boolean(),
26100
- "onFlipAxis?": types$1.function([types$1.string()])
26100
+ "onFlipAxis?": types$1.function()
26101
26101
  });
26102
26102
  get ranges() {
26103
26103
  return this.props.ranges.map((r) => r.dataRange);
@@ -26131,8 +26131,8 @@ var ChartLabelRange = class extends Component$1 {
26131
26131
  range: types$1.string(),
26132
26132
  "class?": types$1.string(),
26133
26133
  isInvalid: types$1.boolean(),
26134
- onSelectionChanged: types$1.function([types$1.string()]),
26135
- onSelectionConfirmed: types$1.function([]),
26134
+ onSelectionChanged: types$1.function(),
26135
+ onSelectionConfirmed: types$1.function(),
26136
26136
  "options?": types$1.ArrayOf()
26137
26137
  }, {
26138
26138
  title: _t("Categories / Labels"),
@@ -26154,12 +26154,11 @@ var ChartDataSourceComponent = class extends Component$1 {
26154
26154
  props = props({
26155
26155
  chartId: types$1.UID(),
26156
26156
  definition: types$1.ChartDefinitionWithDataSource(),
26157
- updateChart: types$1.function([]),
26158
- canUpdateChart: types$1.function([]),
26159
- "onErrorMessagesChanged?": types$1.function([types$1.array(types$1.string())]),
26157
+ updateChart: types$1.function(),
26158
+ canUpdateChart: types$1.function(),
26160
26159
  "dataSeriesTitle?": types$1.string(),
26161
26160
  "labelRangeTitle?": types$1.string(),
26162
- "getLabelRangeOptions?": types$1.function([])
26161
+ "getLabelRangeOptions?": types$1.function
26163
26162
  });
26164
26163
  get DataSourceComponent() {
26165
26164
  const dataSourceType = this.props.definition.dataSource.type;
@@ -26334,7 +26333,7 @@ var BadgeSelection = class extends Component$1 {
26334
26333
  static template = "o-spreadsheet.BadgeSelection";
26335
26334
  props = props({
26336
26335
  choices: types$1.ArrayOf(),
26337
- onChange: types$1.function([types$1.string()]),
26336
+ onChange: types$1.function(),
26338
26337
  selectedValue: types$1.string()
26339
26338
  });
26340
26339
  };
@@ -26351,11 +26350,11 @@ var ChartTitle = class extends Component$1 {
26351
26350
  props = props({
26352
26351
  "title?": types$1.string(),
26353
26352
  "placeholder?": types$1.string(),
26354
- updateTitle: types$1.function([types$1.string()]),
26353
+ updateTitle: types$1.function(),
26355
26354
  "name?": types$1.string(),
26356
26355
  style: types$1.TitleDesign(),
26357
26356
  "defaultStyle?": types$1.object({}),
26358
- updateStyle: types$1.function([types$1.object({})])
26357
+ updateStyle: types$1.function()
26359
26358
  }, {
26360
26359
  title: "",
26361
26360
  placeholder: ""
@@ -26380,7 +26379,7 @@ var AxisDesignEditor = class extends Component$1 {
26380
26379
  props = props({
26381
26380
  chartId: types$1.UID(),
26382
26381
  definition: types$1.ChartWithAxisDefinition(),
26383
- updateChart: types$1.function([types$1.UID(), types$1.object({})], types$1.DispatchResult()),
26382
+ updateChart: types$1.function(),
26384
26383
  axesList: types$1.ArrayOf()
26385
26384
  });
26386
26385
  state = proxy({ currentAxis: "x" });
@@ -26554,7 +26553,7 @@ var RadioSelection = class extends Component$1 {
26554
26553
  static template = "o-spreadsheet.RadioSelection";
26555
26554
  props = props({
26556
26555
  choices: types$1.ArrayOf(),
26557
- onChange: types$1.function([types$1.any()]),
26556
+ onChange: types$1.function(),
26558
26557
  selectedValue: types$1.string(),
26559
26558
  name: types$1.string(),
26560
26559
  "direction?": types$1.or([types$1.literal("horizontal"), types$1.literal("vertical")])
@@ -26572,7 +26571,7 @@ var RoundColorPicker = class extends Component$1 {
26572
26571
  props = props({
26573
26572
  "currentColor?": types$1.string(),
26574
26573
  "title?": types$1.string(),
26575
- onColorPicked: types$1.function([types$1.string()]),
26574
+ onColorPicked: types$1.function(),
26576
26575
  "disableNoColor?": types$1.boolean()
26577
26576
  });
26578
26577
  colorPickerButtonRef = signal(null);
@@ -26613,8 +26612,8 @@ var GeneralDesignEditor = class extends Component$1 {
26613
26612
  props = props({
26614
26613
  chartId: types$1.UID(),
26615
26614
  definition: types$1.ChartDefinition(),
26616
- canUpdateChart: types$1.function([types$1.UID(), types$1.object({})], types$1.DispatchResult()),
26617
- updateChart: types$1.function([types$1.UID(), types$1.object({})], types$1.DispatchResult()),
26615
+ canUpdateChart: types$1.function(),
26616
+ updateChart: types$1.function(),
26618
26617
  "defaultChartTitleFontSize?": types$1.number()
26619
26618
  }, { defaultChartTitleFontSize: 16 });
26620
26619
  state;
@@ -26720,8 +26719,8 @@ var SeriesDesignEditor = class extends Component$1 {
26720
26719
  props = props({
26721
26720
  chartId: types$1.UID(),
26722
26721
  definition: types$1.ChartDefinitionWithDataSource(),
26723
- canUpdateChart: types$1.function([types$1.UID(), types$1.object({})], types$1.DispatchResult()),
26724
- updateChart: types$1.function([types$1.UID(), types$1.object({})], types$1.DispatchResult())
26722
+ updateChart: types$1.function(),
26723
+ canUpdateChart: types$1.function()
26725
26724
  });
26726
26725
  state = proxy({ dataSetId: this.getDataSeries()[0]?.dataSetId || "" });
26727
26726
  getRuntime() {
@@ -26785,8 +26784,8 @@ var SeriesWithAxisDesignEditor = class extends Component$1 {
26785
26784
  props = props({
26786
26785
  chartId: types$1.UID(),
26787
26786
  definition: types$1.ChartDefinitionWithDataSource(),
26788
- canUpdateChart: types$1.function([types$1.UID(), types$1.object({})], types$1.DispatchResult()),
26789
- updateChart: types$1.function([types$1.UID(), types$1.object({})], types$1.DispatchResult())
26787
+ updateChart: types$1.function(),
26788
+ canUpdateChart: types$1.function()
26790
26789
  });
26791
26790
  axisChoices = CHART_AXIS_CHOICES;
26792
26791
  updateDataSeriesAxis(dataSetId, axis) {
@@ -26925,8 +26924,8 @@ var ChartShowValues = class extends Component$1 {
26925
26924
  props = props({
26926
26925
  chartId: types$1.UID(),
26927
26926
  definition: types$1.ChartDefinitionWithDataSource(),
26928
- canUpdateChart: types$1.function([]),
26929
- updateChart: types$1.function([]),
26927
+ canUpdateChart: types$1.function(),
26928
+ updateChart: types$1.function(),
26930
26929
  "defaultValue?": types$1.boolean()
26931
26930
  });
26932
26931
  };
@@ -29564,12 +29563,12 @@ var ChartRangeDataSourceComponent = class extends Component$1 {
29564
29563
  chartId: types$1.UID(),
29565
29564
  definition: types$1.ChartDefinitionWithDataSource(),
29566
29565
  dataSource: types$1.ChartRangeDataSource(),
29567
- updateChart: types$1.function([types$1.UID(), types$1.object({})], types$1.DispatchResult()),
29568
- canUpdateChart: types$1.function([types$1.UID(), types$1.object({})], types$1.DispatchResult()),
29569
- "onErrorMessagesChanged?": types$1.function([types$1.array(types$1.string())]),
29566
+ updateChart: types$1.function(),
29567
+ canUpdateChart: types$1.function(),
29568
+ "onErrorMessagesChanged?": types$1.function(),
29570
29569
  "dataSeriesTitle?": types$1.string(),
29571
29570
  "labelRangeTitle?": types$1.string(),
29572
- "getLabelRangeOptions?": types$1.function([])
29571
+ "getLabelRangeOptions?": types$1.function
29573
29572
  });
29574
29573
  state = proxy({
29575
29574
  datasetDispatchResult: void 0,
@@ -30422,7 +30421,7 @@ var ColorScalePicker = class extends Component$1 {
30422
30421
  };
30423
30422
  props = props({
30424
30423
  definition: types$1.object({ "colorScale?": types$1.ChartColorScale() }),
30425
- onUpdateColorScale: types$1.function([types$1.ChartColorScale()])
30424
+ onUpdateColorScale: types$1.function()
30426
30425
  });
30427
30426
  colorScales = COLORSCALES.map((colorScale) => ({
30428
30427
  value: colorScale,
@@ -30676,8 +30675,8 @@ var TextValueProvider = class extends Component$1 {
30676
30675
  props = props({
30677
30676
  proposals: types$1.array(types$1.AutoCompleteProposal()),
30678
30677
  "selectedIndex?": types$1.number(),
30679
- onValueSelected: types$1.function([types$1.AutoCompleteProposal()]),
30680
- onValueHovered: types$1.function([types$1.string()])
30678
+ onValueSelected: types$1.function(),
30679
+ onValueHovered: types$1.function()
30681
30680
  });
30682
30681
  autoCompleteListRef = signal(null);
30683
30682
  setup() {
@@ -31005,10 +31004,10 @@ var Composer = class extends Component$1 {
31005
31004
  "inputStyle?": types$1.string(),
31006
31005
  "rect?": types$1.Rect(),
31007
31006
  "delimitation?": types$1.DOMDimension(),
31008
- "onComposerCellFocused?": types$1.function([types$1.string()]),
31009
- onComposerContentFocused: types$1.function([types$1.ComposerSelection()]),
31007
+ "onComposerCellFocused?": types$1.function(),
31008
+ onComposerContentFocused: types$1.function(),
31010
31009
  "isDefaultFocus?": types$1.boolean(),
31011
- "onInputContextMenu?": types$1.function([types$1.instanceOf(MouseEvent)]),
31010
+ "onInputContextMenu?": types$1.function(),
31012
31011
  composerStore: types$1.Store(),
31013
31012
  "placeholder?": types$1.string(),
31014
31013
  "inputMode?": types$1.string(),
@@ -32585,7 +32584,7 @@ var StandaloneComposer = class extends Component$1 {
32585
32584
  static template = "o-spreadsheet-StandaloneComposer";
32586
32585
  static components = { Composer };
32587
32586
  props = props({
32588
- onConfirm: types$1.function([types$1.string()]),
32587
+ onConfirm: types$1.function(),
32589
32588
  "composerContent?": types$1.string(),
32590
32589
  defaultRangeSheetId: types$1.UID(),
32591
32590
  "defaultStatic?": types$1.boolean(),
@@ -32595,7 +32594,7 @@ var StandaloneComposer = class extends Component$1 {
32595
32594
  "class?": types$1.string(),
32596
32595
  "invalid?": types$1.boolean(),
32597
32596
  "autofocus?": types$1.boolean(),
32598
- "getContextualColoredSymbolToken?": types$1.function([types$1.Token()], types$1.Color())
32597
+ "getContextualColoredSymbolToken?": types$1.function()
32599
32598
  }, {
32600
32599
  composerContent: "",
32601
32600
  defaultStatic: false
@@ -32797,7 +32796,7 @@ var GeoChartRegionSelectSection = class extends Component$1 {
32797
32796
  props = props({
32798
32797
  chartId: types$1.UID(),
32799
32798
  definition: types$1.GeoChartDefinition(),
32800
- updateChart: types$1.function([types$1.UID(), types$1.object({})], types$1.DispatchResult())
32799
+ updateChart: types$1.function()
32801
32800
  });
32802
32801
  updateSelectedRegion(value) {
32803
32802
  this.props.updateChart(this.props.chartId, { region: value });
@@ -32949,7 +32948,7 @@ var PieHoleSize = class extends Component$1 {
32949
32948
  NumberInput
32950
32949
  };
32951
32950
  props = props({
32952
- onValueChange: types$1.function([types$1.number()]),
32951
+ onValueChange: types$1.function(),
32953
32952
  value: types$1.number()
32954
32953
  });
32955
32954
  onChange(value) {
@@ -33274,7 +33273,7 @@ var TreeMapCategoryColors = class extends Component$1 {
33274
33273
  props = props({
33275
33274
  chartId: types$1.UID(),
33276
33275
  definition: types$1.TreeMapChartDefinition(),
33277
- onColorChanged: types$1.function([types$1.TreeMapCategoryColorOptions()], types$1.DispatchResult())
33276
+ onColorChanged: types$1.function()
33278
33277
  });
33279
33278
  get coloringOptions() {
33280
33279
  const coloringOptions = this.props.definition.coloringOptions ?? TreeMapChartDefaults.coloringOptions;
@@ -33306,7 +33305,7 @@ var TreeMapColorScale = class extends Component$1 {
33306
33305
  props = props({
33307
33306
  chartId: types$1.UID(),
33308
33307
  definition: types$1.TreeMapChartDefinition(),
33309
- onColorChanged: types$1.function([types$1.TreeMapColorScaleOptions()], types$1.DispatchResult())
33308
+ onColorChanged: types$1.function()
33310
33309
  });
33311
33310
  get coloringOptions() {
33312
33311
  const coloringOptions = this.props.definition.coloringOptions ?? TreeMapChartDefaults.coloringOptions;
@@ -33699,7 +33698,7 @@ var ChartPanel = class extends Component$1 {
33699
33698
  ChartTypePicker
33700
33699
  };
33701
33700
  props = props({
33702
- onCloseSidePanel: types$1.function([]),
33701
+ onCloseSidePanel: types$1.function(),
33703
33702
  chartId: types$1.UID()
33704
33703
  });
33705
33704
  store;
@@ -34098,7 +34097,7 @@ var ColumnStatsPanel = class extends Component$1 {
34098
34097
  BadgeSelection,
34099
34098
  Section
34100
34099
  };
34101
- props = props({ onCloseSidePanel: types$1.function([]) });
34100
+ props = props({ onCloseSidePanel: types$1.function() });
34102
34101
  state = proxy({
34103
34102
  currentChart: "count",
34104
34103
  currentFrequencyOrder: "descending",
@@ -34353,7 +34352,7 @@ var CellIsRuleEditor = class extends Component$1 {
34353
34352
  var CriterionForm = class extends Component$1 {
34354
34353
  props = props({
34355
34354
  criterion: types$1.object({}),
34356
- onCriterionChanged: types$1.function([types$1.object({})]),
34355
+ onCriterionChanged: types$1.function(),
34357
34356
  "disableFormulas?": types$1.boolean(),
34358
34357
  "autofocus?": types$1.boolean()
34359
34358
  });
@@ -34941,11 +34940,11 @@ var CriterionInput = class extends Component$1 {
34941
34940
  props = props({
34942
34941
  "value?": types$1.string(),
34943
34942
  criterionType: types$1.DataValidationCriterionType(),
34944
- onValueChanged: types$1.function([types$1.string()]),
34945
- "onKeyDown?": types$1.function([types$1.instanceOf(KeyboardEvent)]),
34943
+ onValueChanged: types$1.function(),
34944
+ "onKeyDown?": types$1.function(),
34946
34945
  "focused?": types$1.boolean(),
34947
- "onBlur?": types$1.function([]),
34948
- "onFocus?": types$1.function([]),
34946
+ "onBlur?": types$1.function(),
34947
+ "onFocus?": types$1.function(),
34949
34948
  "disableFormulas?": types$1.boolean()
34950
34949
  }, {
34951
34950
  value: "",
@@ -35879,7 +35878,7 @@ var DataBarRuleEditor = class extends Component$1 {
35879
35878
  //#region src/components/icon_picker/icon_picker.ts
35880
35879
  var IconPicker = class extends Component$1 {
35881
35880
  static template = "o-spreadsheet-IconPicker";
35882
- props = props({ onIconPicked: types$1.function([types$1.string()]) });
35881
+ props = props({ onIconPicked: types$1.function() });
35883
35882
  onIconClick(icon) {
35884
35883
  if (icon) this.props.onIconPicked(icon);
35885
35884
  }
@@ -35982,7 +35981,7 @@ var ConditionalFormattingEditor = class extends Component$1 {
35982
35981
  props = props({
35983
35982
  cf: types$1.ConditionalFormat(),
35984
35983
  isNewCf: types$1.boolean(),
35985
- onCloseSidePanel: types$1.function([])
35984
+ onCloseSidePanel: types$1.function()
35986
35985
  });
35987
35986
  activeSheetId;
35988
35987
  store;
@@ -36041,7 +36040,7 @@ var ConditionalFormatPreview = class extends Component$1 {
36041
36040
  static template = "o-spreadsheet-ConditionalFormatPreview";
36042
36041
  props = props({
36043
36042
  conditionalFormat: types$1.ConditionalFormat(),
36044
- onMouseDown: types$1.function([types$1.instanceOf(MouseEvent)]),
36043
+ onMouseDown: types$1.function(),
36045
36044
  class: types$1.string()
36046
36045
  });
36047
36046
  icons = ICONS;
@@ -36100,7 +36099,7 @@ var ConditionalFormatPreview = class extends Component$1 {
36100
36099
  var ConditionalFormatPreviewList = class extends Component$1 {
36101
36100
  static template = "o-spreadsheet-ConditionalFormatPreviewList";
36102
36101
  static components = { ConditionalFormatPreview };
36103
- props = props({ onCloseSidePanel: types$1.function([]) });
36102
+ props = props({ onCloseSidePanel: types$1.function() });
36104
36103
  dragAndDrop = useDragAndDropListItems();
36105
36104
  cfListRef = signal(null);
36106
36105
  get conditionalFormats() {
@@ -36205,7 +36204,7 @@ var DataValidationPreview = class extends Component$1 {
36205
36204
  var DataValidationPanel = class extends Component$1 {
36206
36205
  static template = "o-spreadsheet-DataValidationPanel";
36207
36206
  static components = { DataValidationPreview };
36208
- props = props({ onCloseSidePanel: types$1.function([]) });
36207
+ props = props({ onCloseSidePanel: types$1.function() });
36209
36208
  addDataValidationRule() {
36210
36209
  this.env.replaceSidePanel("DataValidationEditor", "DataValidation", { ruleId: UuidGenerator.smallUuid() });
36211
36210
  }
@@ -36261,8 +36260,8 @@ var DataValidationEditor = class extends Component$1 {
36261
36260
  };
36262
36261
  props = props({
36263
36262
  ruleId: types$1.UID(),
36264
- "onCancel?": types$1.function([]),
36265
- onCloseSidePanel: types$1.function([])
36263
+ "onCancel?": types$1.function(),
36264
+ onCloseSidePanel: types$1.function()
36266
36265
  });
36267
36266
  state = proxy({
36268
36267
  rule: this.defaultDataValidationRule,
@@ -36710,7 +36709,7 @@ var FindAndReplacePanel = class extends Component$1 {
36710
36709
  ValidationMessages,
36711
36710
  Select
36712
36711
  };
36713
- props = props({ onCloseSidePanel: types$1.function([]) });
36712
+ props = props({ onCloseSidePanel: types$1.function() });
36714
36713
  searchInputRef = signal(null);
36715
36714
  store;
36716
36715
  state;
@@ -37544,7 +37543,7 @@ var MoreFormatsPanel = class extends Component$1 {
37544
37543
  Select
37545
37544
  };
37546
37545
  props = props({
37547
- onCloseSidePanel: types$1.function([]),
37546
+ onCloseSidePanel: types$1.function(),
37548
37547
  "category?": types$1.or([
37549
37548
  types$1.literal("number"),
37550
37549
  types$1.literal("date"),
@@ -37667,7 +37666,7 @@ var NamedRangesPanel = class extends Component$1 {
37667
37666
  SelectionInput,
37668
37667
  TextInput
37669
37668
  };
37670
- props = props({ onCloseSidePanel: types$1.function([]) });
37669
+ props = props({ onCloseSidePanel: types$1.function() });
37671
37670
  get namedRanges() {
37672
37671
  return this.env.model.getters.getNamedRanges();
37673
37672
  }
@@ -37688,7 +37687,7 @@ const HIGHLIGHT_COLOR = "#e28f08";
37688
37687
  var PerfProfilePanel = class extends Component$1 {
37689
37688
  static template = "o-spreadsheet-PerfProfilePanel";
37690
37689
  static components = { Section };
37691
- props = props({ onCloseSidePanel: types$1.function([]) });
37690
+ props = props({ onCloseSidePanel: types$1.function() });
37692
37691
  state = proxy({
37693
37692
  selectedIndex: void 0,
37694
37693
  lastProfiledTime: 0
@@ -37905,7 +37904,7 @@ var PivotMeasureDisplayPanelStore = class extends SpreadsheetStore {
37905
37904
  var PivotMeasureDisplayPanel = class extends Component$1 {
37906
37905
  static template = "o-spreadsheet-PivotMeasureDisplayPanel";
37907
37906
  props = props({
37908
- onCloseSidePanel: types$1.function([]),
37907
+ onCloseSidePanel: types$1.function(),
37909
37908
  pivotId: types$1.UID(),
37910
37909
  measure: types$1.PivotCoreMeasure()
37911
37910
  });
@@ -37973,9 +37972,9 @@ var PivotDeferUpdate = class extends Component$1 {
37973
37972
  props = props({
37974
37973
  deferUpdate: types$1.boolean(),
37975
37974
  isDirty: types$1.boolean(),
37976
- toggleDeferUpdate: types$1.function([types$1.boolean()]),
37977
- discard: types$1.function([]),
37978
- apply: types$1.function([])
37975
+ toggleDeferUpdate: types$1.function(),
37976
+ discard: types$1.function(),
37977
+ apply: types$1.function()
37979
37978
  });
37980
37979
  static components = {
37981
37980
  Section,
@@ -38202,7 +38201,7 @@ var FilterMenuCriterion = class extends Component$1 {
38202
38201
  props = props({
38203
38202
  criterion: types$1.CriterionFilter(),
38204
38203
  criterionOperators: types$1.array(types$1.GenericCriterionType()),
38205
- onCriterionChanged: types$1.function([types$1.CriterionFilter()])
38204
+ onCriterionChanged: types$1.function()
38206
38205
  });
38207
38206
  state;
38208
38207
  setup() {
@@ -38237,12 +38236,12 @@ var FilterMenuValueItem = class extends Component$1 {
38237
38236
  static template = "o-spreadsheet-FilterMenuValueItem";
38238
38237
  static components = { Checkbox };
38239
38238
  props = props({
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")])
38239
+ value: types$1.string(),
38240
+ isChecked: types$1.boolean(),
38241
+ isSelected: types$1.boolean(),
38242
+ onMouseMove: types$1.function(),
38243
+ onClick: types$1.function(),
38244
+ "scrolledTo?": types$1.or([types$1.literal("top"), types$1.literal("bottom")])
38246
38245
  });
38247
38246
  itemRef = signal(null);
38248
38247
  setup() {
@@ -38268,7 +38267,7 @@ var FilterMenuValueList = class extends Component$1 {
38268
38267
  string: types$1.string(),
38269
38268
  "scrolledTo?": types$1.or([types$1.literal("top"), types$1.literal("bottom")])
38270
38269
  })),
38271
- onUpdateHiddenValues: types$1.function([types$1.array(types$1.string())])
38270
+ onUpdateHiddenValues: types$1.function()
38272
38271
  });
38273
38272
  state = proxy({
38274
38273
  displayedValues: [],
@@ -38386,8 +38385,8 @@ var PivotFilterMenu = class extends Component$1 {
38386
38385
  string: types$1.string(),
38387
38386
  "scrolledTo?": types$1.or([types$1.literal("top"), types$1.literal("bottom")])
38388
38387
  })),
38389
- "onClosed?": types$1.function([]),
38390
- onConfirmed: types$1.function([types$1.DataFilterValue()])
38388
+ "onClosed?": types$1.function(),
38389
+ onConfirmed: types$1.function()
38391
38390
  });
38392
38391
  setup() {
38393
38392
  onWillUpdateProps((nextProps) => {
@@ -38446,16 +38445,8 @@ var PivotDimension = class extends Component$1 {
38446
38445
  types$1.PivotMeasure(),
38447
38446
  types$1.PivotFilter()
38448
38447
  ]),
38449
- "onRemoved?": types$1.function([types$1.or([
38450
- types$1.PivotDimension(),
38451
- types$1.PivotMeasure(),
38452
- types$1.PivotFilter()
38453
- ])]),
38454
- "onNameUpdated?": types$1.function([types$1.or([
38455
- types$1.PivotDimension(),
38456
- types$1.PivotMeasure(),
38457
- types$1.PivotFilter()
38458
- ]), types$1.string()]),
38448
+ "onRemoved?": types$1.function(),
38449
+ "onNameUpdated?": types$1.function(),
38459
38450
  "type?": types$1.or([
38460
38451
  types$1.literal("row"),
38461
38452
  types$1.literal("col"),
@@ -38489,7 +38480,7 @@ var PivotFilterEditor = class extends Component$1 {
38489
38480
  pivotId: types$1.UID(),
38490
38481
  definition: types$1.instanceOf(SpreadsheetPivotRuntimeDefinition),
38491
38482
  filter: types$1.PivotFilter(),
38492
- onFiltersUpdated: types$1.function([types$1.SpreadsheetPivotCoreDefinition()])
38483
+ onFiltersUpdated: types$1.function()
38493
38484
  });
38494
38485
  state;
38495
38486
  buttonFilter = signal(null);
@@ -38618,7 +38609,7 @@ var AddDimensionButton = class extends Component$1 {
38618
38609
  TextValueProvider
38619
38610
  };
38620
38611
  props = props({
38621
- onFieldPicked: types$1.function([types$1.string()]),
38612
+ onFieldPicked: types$1.function(),
38622
38613
  fields: types$1.array()
38623
38614
  });
38624
38615
  buttonRef = signal(null);
@@ -38715,7 +38706,7 @@ var PivotCustomGroupsCollapsible = class extends Component$1 {
38715
38706
  props = props({
38716
38707
  pivotId: types$1.UID(),
38717
38708
  customField: types$1.PivotCustomGroupedField(),
38718
- onCustomFieldUpdated: types$1.function([types$1.object({})])
38709
+ onCustomFieldUpdated: types$1.function()
38719
38710
  });
38720
38711
  static components = {
38721
38712
  SidePanelCollapsible,
@@ -38778,7 +38769,7 @@ var PivotDimensionGranularity = class extends Component$1 {
38778
38769
  static template = "o-spreadsheet-PivotDimensionGranularity";
38779
38770
  props = props({
38780
38771
  dimension: types$1.PivotDimension(),
38781
- onUpdated: types$1.function([types$1.PivotDimension(), types$1.instanceOf(InputEvent)]),
38772
+ onUpdated: types$1.function(),
38782
38773
  availableGranularities: types$1.SetOf(),
38783
38774
  allGranularities: types$1.array()
38784
38775
  });
@@ -38799,7 +38790,7 @@ var PivotDimensionOrder = class extends Component$1 {
38799
38790
  static template = "o-spreadsheet-PivotDimensionOrder";
38800
38791
  props = props({
38801
38792
  dimension: types$1.PivotDimension(),
38802
- onUpdated: types$1.function([types$1.PivotDimension(), types$1.instanceOf(InputEvent)]),
38793
+ onUpdated: types$1.function(),
38803
38794
  "isMeasureSorted?": types$1.boolean()
38804
38795
  });
38805
38796
  static components = { Select };
@@ -38883,9 +38874,9 @@ var PivotMeasureEditor = class extends Component$1 {
38883
38874
  pivotId: types$1.string(),
38884
38875
  definition: types$1.PivotRuntimeDefinition(),
38885
38876
  measure: types$1.PivotMeasure(),
38886
- onMeasureUpdated: types$1.function([types$1.PivotMeasure()]),
38887
- onRemoved: types$1.function([]),
38888
- generateMeasureId: types$1.function([types$1.string(), types$1.string()], types$1.string()),
38877
+ onMeasureUpdated: types$1.function(),
38878
+ onRemoved: types$1.function(),
38879
+ generateMeasureId: types$1.function(),
38889
38880
  aggregators: types$1.object({})
38890
38881
  });
38891
38882
  getMeasureAutocomplete() {
@@ -39024,14 +39015,14 @@ var PivotLayoutConfigurator = class extends Component$1 {
39024
39015
  };
39025
39016
  props = props({
39026
39017
  definition: types$1.instanceOf(PivotRuntimeDefinition),
39027
- onDimensionsUpdated: types$1.function([types$1.PivotCoreDefinition()]),
39028
- onFiltersUpdated: types$1.function([types$1.PivotCoreDefinition()]),
39018
+ onDimensionsUpdated: types$1.function(),
39019
+ onFiltersUpdated: types$1.function(),
39029
39020
  unusedGroupableFields: types$1.array(types$1.PivotField()),
39030
39021
  measureFields: types$1.array(types$1.PivotField()),
39031
39022
  unusedGranularities: types$1.RecordOf(),
39032
39023
  dateGranularities: types$1.array(types$1.string()),
39033
39024
  datetimeGranularities: types$1.array(types$1.string()),
39034
- "getScrollableContainerEl?": types$1.function([], types$1.instanceOf(HTMLElement)),
39025
+ "getScrollableContainerEl?": types$1.function(),
39035
39026
  pivotId: types$1.UID()
39036
39027
  });
39037
39028
  dimensionsRef = signal(null);
@@ -39254,7 +39245,7 @@ var PivotTitleSection = class extends Component$1 {
39254
39245
  };
39255
39246
  props = props({
39256
39247
  pivotId: types$1.UID(),
39257
- flipAxis: types$1.function([])
39248
+ flipAxis: types$1.function()
39258
39249
  });
39259
39250
  get cogWheelMenuItems() {
39260
39251
  return [
@@ -40884,7 +40875,7 @@ var PivotSpreadsheetSidePanel = class extends Component$1 {
40884
40875
  };
40885
40876
  props = props({
40886
40877
  pivotId: types$1.UID(),
40887
- onCloseSidePanel: types$1.function([])
40878
+ onCloseSidePanel: types$1.function()
40888
40879
  });
40889
40880
  store;
40890
40881
  state;
@@ -42126,7 +42117,7 @@ var TableStylePreview = class extends Component$1 {
42126
42117
  type: types$1.or([types$1.literal("table"), types$1.literal("pivot")]),
42127
42118
  "styleId?": types$1.string(),
42128
42119
  "selected?": types$1.boolean(),
42129
- "onClick?": types$1.function([])
42120
+ "onClick?": types$1.function()
42130
42121
  });
42131
42122
  canvasRef = signal(null);
42132
42123
  menu = proxy({
@@ -42216,8 +42207,8 @@ var TableStylesPopover = class extends Component$1 {
42216
42207
  props = props({
42217
42208
  tableConfig: types$1.object({}),
42218
42209
  "popoverProps?": types$1.object({}),
42219
- closePopover: types$1.function([]),
42220
- onStylePicked: types$1.function([types$1.string()]),
42210
+ closePopover: types$1.function(),
42211
+ onStylePicked: types$1.function(),
42221
42212
  "selectedStyleId?": types$1.string(),
42222
42213
  tableStyles: types$1.RecordOf(),
42223
42214
  type: types$1.or([types$1.literal("table"), types$1.literal("pivot")])
@@ -42263,7 +42254,7 @@ var TableStylePicker = class extends Component$1 {
42263
42254
  };
42264
42255
  props = props({
42265
42256
  tableConfig: types$1.TableConfig(),
42266
- onStylePicked: types$1.function([types$1.string()]),
42257
+ onStylePicked: types$1.function(),
42267
42258
  tableStyles: types$1.RecordOf(),
42268
42259
  type: types$1.or([types$1.literal("table"), types$1.literal("pivot")])
42269
42260
  });
@@ -42369,7 +42360,7 @@ var PivotSidePanel = class extends Component$1 {
42369
42360
  };
42370
42361
  props = props({
42371
42362
  pivotId: types$1.UID(),
42372
- onCloseSidePanel: types$1.function([]),
42363
+ onCloseSidePanel: types$1.function(),
42373
42364
  "openTab?": types$1.or([types$1.literal("configuration"), types$1.literal("design")])
42374
42365
  }, { openTab: "configuration" });
42375
42366
  state = proxy({ panel: this.props.openTab || "configuration" });
@@ -42401,7 +42392,7 @@ var RemoveDuplicatesPanel = class extends Component$1 {
42401
42392
  Section,
42402
42393
  Checkbox
42403
42394
  };
42404
- props = props({ onCloseSidePanel: types$1.function([]) });
42395
+ props = props({ onCloseSidePanel: types$1.function() });
42405
42396
  state = proxy({
42406
42397
  hasHeader: false,
42407
42398
  columns: {}
@@ -42485,7 +42476,7 @@ var SettingsPanel = class extends Component$1 {
42485
42476
  BadgeSelection,
42486
42477
  Select
42487
42478
  };
42488
- props = props({ onCloseSidePanel: types$1.function([]) });
42479
+ props = props({ onCloseSidePanel: types$1.function() });
42489
42480
  loadedLocales = [];
42490
42481
  setup() {
42491
42482
  onWillStart(() => this.loadLocales());
@@ -42603,7 +42594,7 @@ var SplitIntoColumnsPanel = class extends Component$1 {
42603
42594
  Checkbox,
42604
42595
  Select
42605
42596
  };
42606
- props = props({ onCloseSidePanel: types$1.function([]) });
42597
+ props = props({ onCloseSidePanel: types$1.function() });
42607
42598
  state = proxy({
42608
42599
  separatorValue: "auto",
42609
42600
  addNewColumns: false,
@@ -42680,7 +42671,7 @@ var TablePanel = class extends Component$1 {
42680
42671
  NumberInput
42681
42672
  };
42682
42673
  props = props({
42683
- onCloseSidePanel: types$1.function([]),
42674
+ onCloseSidePanel: types$1.function(),
42684
42675
  table: types$1.CoreTable()
42685
42676
  });
42686
42677
  state;
@@ -42840,8 +42831,8 @@ var TableStyleEditorPanel = class extends Component$1 {
42840
42831
  TableStylePreview
42841
42832
  };
42842
42833
  props = props({
42843
- onCloseSidePanel: types$1.function([]),
42844
- "onStylePicked?": types$1.function([types$1.string()]),
42834
+ onCloseSidePanel: types$1.function(),
42835
+ "onStylePicked?": types$1.function(),
42845
42836
  "styleId?": types$1.string()
42846
42837
  });
42847
42838
  state = proxy(this.getInitialState());
@@ -45844,7 +45835,7 @@ var GridComposer = class extends Component$1 {
45844
45835
  static components = { Composer };
45845
45836
  props = props({
45846
45837
  gridDims: types$1.DOMDimension(),
45847
- onInputContextMenu: types$1.function([types$1.instanceOf(MouseEvent)])
45838
+ onInputContextMenu: types$1.function()
45848
45839
  });
45849
45840
  rect = this.defaultRect;
45850
45841
  isEditing = false;
@@ -46967,20 +46958,10 @@ var GridOverlay = class extends Component$1 {
46967
46958
  GridAddRowsFooter
46968
46959
  };
46969
46960
  props = props({
46970
- "onCellDoubleClicked?": types$1.function([types$1.HeaderIndex(), types$1.HeaderIndex()]),
46971
- "onCellClicked?": types$1.function([
46972
- types$1.HeaderIndex(),
46973
- types$1.HeaderIndex(),
46974
- types$1.GridClickModifiers(),
46975
- types$1.ZoomedMouseEvent()
46976
- ]),
46977
- "onCellRightClicked?": types$1.function([
46978
- types$1.HeaderIndex(),
46979
- types$1.HeaderIndex(),
46980
- types$1.DOMCoordinates()
46981
- ]),
46982
- "onGridResized?": types$1.function([]),
46983
- onGridMoved: types$1.function([types$1.Pixel(), types$1.Pixel()]),
46961
+ "onCellDoubleClicked?": types$1.function(),
46962
+ "onCellClicked?": types$1.function(),
46963
+ "onCellRightClicked?": types$1.function(),
46964
+ "onGridResized?": types$1.function(),
46984
46965
  gridOverlayDimensions: types$1.string()
46985
46966
  }, {
46986
46967
  onCellDoubleClicked: () => {},
@@ -47099,8 +47080,8 @@ var GridPopover = class extends Component$1 {
47099
47080
  static template = "o-spreadsheet-GridPopover";
47100
47081
  static components = { Popover };
47101
47082
  props = props({
47102
- onClosePopover: types$1.function([]),
47103
- onMouseWheel: types$1.function([types$1.instanceOf(WheelEvent)]),
47083
+ onClosePopover: types$1.function(),
47084
+ onMouseWheel: types$1.function(),
47104
47085
  gridRect: types$1.Rect()
47105
47086
  });
47106
47087
  cellPopovers;
@@ -47207,11 +47188,7 @@ var UnhideColumnHeaders = class extends Component$1 {
47207
47188
 
47208
47189
  //#endregion
47209
47190
  //#region src/components/headers_overlay/headers_overlay.ts
47210
- const resizerPropsDefinition = { onOpenContextMenu: types$1.function([
47211
- types$1.ContextMenuType(),
47212
- types$1.Pixel(),
47213
- types$1.Pixel()
47214
- ]) };
47191
+ const resizerPropsDefinition = { onOpenContextMenu: types$1.function() };
47215
47192
  var AbstractResizer = class extends Component$1 {
47216
47193
  props = props(resizerPropsDefinition);
47217
47194
  composerFocusStore;
@@ -48673,7 +48650,7 @@ var Border = class extends Component$1 {
48673
48650
  types$1.literal("e")
48674
48651
  ]),
48675
48652
  isMoving: types$1.boolean(),
48676
- onMoveHighlight: types$1.function([types$1.instanceOf(PointerEvent)])
48653
+ onMoveHighlight: types$1.function()
48677
48654
  });
48678
48655
  get style() {
48679
48656
  const isTop = [
@@ -48731,11 +48708,7 @@ var Corner = class extends Component$1 {
48731
48708
  types$1.literal("w")
48732
48709
  ]),
48733
48710
  isResizing: types$1.boolean(),
48734
- onResizeHighlight: types$1.function([
48735
- types$1.instanceOf(PointerEvent),
48736
- types$1.ResizeDirection(),
48737
- types$1.ResizeDirection()
48738
- ])
48711
+ onResizeHighlight: types$1.function()
48739
48712
  });
48740
48713
  dirX;
48741
48714
  dirY;
@@ -48945,7 +48918,7 @@ var ScrollBar = class extends Component$1 {
48945
48918
  direction: types$1.customValidator(types$1.string(), (direction) => ["horizontal", "vertical"].includes(direction)),
48946
48919
  position: types$1.CSSProperties(),
48947
48920
  offset: types$1.Pixel(),
48948
- onScroll: types$1.function([types$1.Pixel()])
48921
+ onScroll: types$1.function()
48949
48922
  }, {
48950
48923
  width: 1,
48951
48924
  height: 1
@@ -49006,7 +48979,7 @@ var HorizontalScrollBar = class extends Component$1 {
49006
48979
  left: `${this.props.leftOffset + x}px`,
49007
48980
  bottom: "0px",
49008
48981
  height: `${scrollbarWidth}px`,
49009
- right: isBrowserFirefox() ? `${scrollbarWidth}px` : "0"
48982
+ right: `${scrollbarWidth}px`
49010
48983
  };
49011
48984
  }
49012
48985
  onScroll(offset) {
@@ -49049,7 +49022,7 @@ var VerticalScrollBar = class extends Component$1 {
49049
49022
  top: `${this.props.topOffset + y}px`,
49050
49023
  right: "0px",
49051
49024
  width: `${scrollbarWidth}px`,
49052
- bottom: isBrowserFirefox() ? `${scrollbarWidth}px` : "0"
49025
+ bottom: `${scrollbarWidth}px`
49053
49026
  };
49054
49027
  }
49055
49028
  onScroll(offset) {
@@ -49171,8 +49144,8 @@ var Grid = class extends Component$1 {
49171
49144
  Selection
49172
49145
  };
49173
49146
  props = props({
49174
- exposeFocus: types$1.function([types$1.function([])]),
49175
- getGridSize: types$1.function([], types$1.DOMDimension())
49147
+ exposeFocus: types$1.function(),
49148
+ getGridSize: types$1.function()
49176
49149
  });
49177
49150
  HEADER_HEIGHT = 26;
49178
49151
  HEADER_WIDTH = 48;
@@ -49890,7 +49863,7 @@ var PivotHTMLRenderer = class extends Component$1 {
49890
49863
  static components = { Checkbox };
49891
49864
  props = props({
49892
49865
  pivotId: types$1.UID(),
49893
- onCellClicked: types$1.function([types$1.string()])
49866
+ onCellClicked: types$1.function()
49894
49867
  });
49895
49868
  pivot = this.env.model.getters.getPivot(this.props.pivotId);
49896
49869
  data = {
@@ -67591,20 +67564,20 @@ const RIPPLE_KEY_FRAMES = [
67591
67564
  var RippleEffect = class extends Component$1 {
67592
67565
  static template = "o-spreadsheet-RippleEffect";
67593
67566
  props = props({
67594
- x: types.string(),
67595
- y: types.string(),
67596
- color: types.string(),
67597
- opacity: types.number(),
67598
- duration: types.number(),
67567
+ x: types$1.string(),
67568
+ y: types$1.string(),
67569
+ color: types$1.string(),
67570
+ opacity: types$1.number(),
67571
+ duration: types$1.number(),
67599
67572
  /** Width of the ripple. Defaults to the width of the element the ripple is on (without margins). */
67600
- width: types.number(),
67573
+ width: types$1.number(),
67601
67574
  /** Height of the ripple. Defaults to the height of the element the ripple is on (without margins). */
67602
- height: types.number(),
67603
- offsetY: types.number(),
67604
- offsetX: types.number(),
67605
- allowOverflow: types.boolean(),
67606
- onAnimationEnd: types.function(),
67607
- style: types.string()
67575
+ height: types$1.number(),
67576
+ offsetY: types$1.number(),
67577
+ offsetX: types$1.number(),
67578
+ allowOverflow: types$1.boolean(),
67579
+ onAnimationEnd: types$1.function(),
67580
+ style: types$1.string()
67608
67581
  });
67609
67582
  rippleRef = signal(null);
67610
67583
  setup() {
@@ -67644,21 +67617,21 @@ var Ripple = class extends Component$1 {
67644
67617
  static template = "o-spreadsheet-Ripple";
67645
67618
  static components = { RippleEffect };
67646
67619
  props = props({
67647
- "color?": types.string(),
67648
- "opacity?": types.number(),
67649
- "duration?": types.number(),
67620
+ "color?": types$1.string(),
67621
+ "opacity?": types$1.number(),
67622
+ "duration?": types$1.number(),
67650
67623
  /** If true, the ripple will play from the element center instead of the position of the click */
67651
- "ignoreClickPosition?": types.boolean(),
67624
+ "ignoreClickPosition?": types$1.boolean(),
67652
67625
  /** Width of the ripple. Defaults to the width of the element the ripple is on (without margins). */
67653
- "width?": types.number(),
67626
+ "width?": types$1.number(),
67654
67627
  /** Height of the ripple. Defaults to the height of the element the ripple is on (without margins). */
67655
- "height?": types.number(),
67656
- "offsetY?": types.number(),
67657
- "offsetX?": types.number(),
67658
- "allowOverflow?": types.boolean(),
67659
- "enabled?": types.boolean(),
67660
- "onAnimationEnd?": types.function(),
67661
- "class?": types.string()
67628
+ "height?": types$1.number(),
67629
+ "offsetY?": types$1.number(),
67630
+ "offsetX?": types$1.number(),
67631
+ "allowOverflow?": types$1.boolean(),
67632
+ "enabled?": types$1.boolean(),
67633
+ "onAnimationEnd?": types$1.function(),
67634
+ "class?": types$1.string()
67662
67635
  }, {
67663
67636
  color: "#aaaaaa",
67664
67637
  opacity: .4,
@@ -67919,10 +67892,10 @@ var BottomBarSheet = class extends Component$1 {
67919
67892
  ColorPicker
67920
67893
  };
67921
67894
  props = props({
67922
- sheetId: types.string(),
67923
- openContextMenu: types.function([types.instanceOf(MenuItemRegistry), types.instanceOf(MouseEvent)]),
67924
- "style?": types.string(),
67925
- "onMouseDown?": types.function([types.instanceOf(PointerEvent)])
67895
+ sheetId: types$1.string(),
67896
+ openContextMenu: types$1.function(),
67897
+ "style?": types$1.string(),
67898
+ "onMouseDown?": types$1.function()
67926
67899
  }, {
67927
67900
  onMouseDown: () => {},
67928
67901
  style: ""
@@ -68189,12 +68162,8 @@ var BottomBarStatistic = class extends Component$1 {
68189
68162
  static template = "o-spreadsheet-BottomBarStatistic";
68190
68163
  static components = { Ripple };
68191
68164
  props = props({
68192
- openContextMenu: types.function([
68193
- types.number(),
68194
- types.number(),
68195
- types.instanceOf(MenuItemRegistry)
68196
- ]),
68197
- closeContextMenu: types.function([])
68165
+ openContextMenu: types$1.function(),
68166
+ closeContextMenu: types$1.function()
68198
68167
  });
68199
68168
  state = proxy({ selectedStatisticFn: "" });
68200
68169
  store;
@@ -68238,7 +68207,7 @@ var BottomBarStatistic = class extends Component$1 {
68238
68207
  const MENU_MAX_HEIGHT = 250;
68239
68208
  var BottomBar = class extends Component$1 {
68240
68209
  static template = "o-spreadsheet-BottomBar";
68241
- props = props({ onClick: types.function([]) });
68210
+ props = props({ onClick: types$1.function() });
68242
68211
  static components = {
68243
68212
  MenuPopover,
68244
68213
  Ripple,
@@ -68521,7 +68490,7 @@ var SpreadsheetDashboard = class extends Component$1 {
68521
68490
  VerticalScrollBar,
68522
68491
  HorizontalScrollBar
68523
68492
  };
68524
- props = props({ getGridSize: types$1.function([], types$1.DOMDimension()) });
68493
+ props = props({ getGridSize: types$1.function() });
68525
68494
  cellPopovers;
68526
68495
  onMouseWheel;
68527
68496
  canvasPosition;
@@ -68637,7 +68606,7 @@ var AbstractHeaderGroup = class extends Component$1 {
68637
68606
  props = props({
68638
68607
  group: types$1.HeaderGroup(),
68639
68608
  layerOffset: types$1.number(),
68640
- openContextMenu: types$1.function([types$1.DOMCoordinates(), types$1.ArrayOf()])
68609
+ openContextMenu: types$1.function()
68641
68610
  });
68642
68611
  toggleGroup() {
68643
68612
  const sheetId = this.env.model.getters.getActiveSheetId();
@@ -68867,12 +68836,12 @@ var SidePanel = class extends Component$1 {
68867
68836
  props = props({
68868
68837
  panelContent: types$1.SidePanelContent(),
68869
68838
  panelProps: types$1.SidePanelComponentProps(),
68870
- onCloseSidePanel: types$1.function([]),
68871
- onStartHandleDrag: types$1.function([types$1.instanceOf(MouseEvent)]),
68872
- onResetPanelSize: types$1.function([]),
68839
+ onCloseSidePanel: types$1.function(),
68840
+ onStartHandleDrag: types$1.function(),
68841
+ onResetPanelSize: types$1.function(),
68873
68842
  "isPinned?": types$1.boolean(),
68874
- "onTogglePinPanel?": types$1.function([]),
68875
- "onToggleCollapsePanel?": types$1.function([]),
68843
+ "onTogglePinPanel?": types$1.function(),
68844
+ "onToggleCollapsePanel?": types$1.function(),
68876
68845
  "isCollapsed?": types$1.boolean()
68877
68846
  });
68878
68847
  spreadsheetRect = useSpreadsheetRect();
@@ -68958,7 +68927,7 @@ var SidePanels = class extends Component$1 {
68958
68927
  var RibbonMenu = class extends Component$1 {
68959
68928
  static template = "o-spreadsheet-RibbonMenu";
68960
68929
  static components = { Menu };
68961
- props = props({ onClose: types$1.function([]) });
68930
+ props = props({ onClose: types$1.function() });
68962
68931
  rootItems = topbarMenuRegistry.getMenuItems();
68963
68932
  menuRef = signal(null);
68964
68933
  containerRef = signal(null);
@@ -69029,7 +68998,7 @@ var SmallBottomBar = class extends Component$1 {
69029
68998
  RibbonMenu
69030
68999
  };
69031
69000
  static template = "o-spreadsheet-SmallBottomBar";
69032
- props = props({ onClick: types$1.function([]) });
69001
+ props = props({ onClick: types$1.function() });
69033
69002
  composerFocusStore;
69034
69003
  composerStore;
69035
69004
  composerInterface;
@@ -69555,7 +69524,7 @@ var SpreadsheetPrintStore = class extends SpreadsheetStore {
69555
69524
  //#region src/components/spreadsheet_print/spreadsheet_print.ts
69556
69525
  var SpreadsheetPrint = class extends Component$1 {
69557
69526
  static template = "o-spreadsheet-SpreadsheetPrint";
69558
- props = props({ onExitPrintMode: types$1.function([]) });
69527
+ props = props({ onExitPrintMode: types$1.function() });
69559
69528
  static components = {
69560
69529
  StandaloneGridCanvas,
69561
69530
  Section,
@@ -69892,9 +69861,9 @@ var BorderEditor = class extends Component$1 {
69892
69861
  currentBorderColor: types$1.Color(),
69893
69862
  currentBorderStyle: types$1.BorderStyle(),
69894
69863
  "currentBorderPosition?": types$1.BorderPosition(),
69895
- onBorderColorPicked: types$1.function([types$1.Color()]),
69896
- onBorderStylePicked: types$1.function([types$1.BorderStyle()]),
69897
- onBorderPositionPicked: types$1.function([types$1.BorderPosition()]),
69864
+ onBorderColorPicked: types$1.function(),
69865
+ onBorderStylePicked: types$1.function(),
69866
+ onBorderPositionPicked: types$1.function(),
69898
69867
  "maxHeight?": types$1.Pixel(),
69899
69868
  anchorRect: types$1.Rect()
69900
69869
  });
@@ -70203,7 +70172,7 @@ var DropdownAction = class extends Component$1 {
70203
70172
  var TopBarFontSizeEditor = class extends Component$1 {
70204
70173
  static components = { FontSizeEditor };
70205
70174
  static template = "o-spreadsheet-TopBarFontSizeEditor";
70206
- props = props({ class: types.string() });
70175
+ props = props({ class: types$1.string() });
70207
70176
  topBarToolStore;
70208
70177
  setup() {
70209
70178
  this.topBarToolStore = useToolBarDropdownStore();
@@ -70499,7 +70468,7 @@ topBarToolBarRegistry.add("edit").addChild("edit", {
70499
70468
  var TopBar = class extends Component$1 {
70500
70469
  static template = "o-spreadsheet-TopBar";
70501
70470
  props = props({
70502
- onClick: types$1.function([]),
70471
+ onClick: types$1.function(),
70503
70472
  dropdownMaxHeight: types$1.Pixel()
70504
70473
  });
70505
70474
  static components = {
@@ -70778,13 +70747,9 @@ var Spreadsheet = class extends Component$1 {
70778
70747
  static template = "o-spreadsheet-Spreadsheet";
70779
70748
  props = props({
70780
70749
  model: types$1.Model(),
70781
- "notifyUser?": types$1.function([types$1.InformationNotification()]),
70782
- "raiseError?": types$1.function([types$1.string(), types$1.function([])]),
70783
- "askConfirmation?": types$1.function([
70784
- types$1.string(),
70785
- types$1.function([]),
70786
- types$1.function([])
70787
- ])
70750
+ "notifyUser?": types$1.function(),
70751
+ "raiseError?": types$1.function(),
70752
+ "askConfirmation?": types$1.function()
70788
70753
  });
70789
70754
  static components = {
70790
70755
  TopBar,
@@ -76364,7 +76329,7 @@ var ErrorToolTip = class extends Component$1 {
76364
76329
  static template = "o-spreadsheet-ErrorToolTip";
76365
76330
  props = props({
76366
76331
  cellPosition: types$1.CellPosition(),
76367
- "onClosed?": types$1.function([])
76332
+ "onClosed?": types$1.function()
76368
76333
  });
76369
76334
  get dataValidationErrorMessage() {
76370
76335
  return this.env.model.getters.getInvalidDataValidationMessage(this.props.cellPosition);
@@ -76448,7 +76413,7 @@ var FilterMenu = class extends Component$1 {
76448
76413
  };
76449
76414
  props = props({
76450
76415
  filterPosition: types$1.Position(),
76451
- "onClosed?": types$1.function([])
76416
+ "onClosed?": types$1.function()
76452
76417
  });
76453
76418
  state;
76454
76419
  criterionCategory = "text";
@@ -76628,7 +76593,7 @@ var LinkDisplay = class extends Component$1 {
76628
76593
  static template = "o-spreadsheet-LinkDisplay";
76629
76594
  props = props({
76630
76595
  cellPosition: types$1.CellPosition(),
76631
- "onClosed?": types$1.function([])
76596
+ "onClosed?": types$1.function()
76632
76597
  });
76633
76598
  cellPopovers;
76634
76599
  setup() {
@@ -76702,7 +76667,7 @@ var LinkEditor = class extends Component$1 {
76702
76667
  static components = { MenuPopover };
76703
76668
  props = props({
76704
76669
  cellPosition: types$1.CellPosition(),
76705
- "onClosed?": types$1.function([])
76670
+ "onClosed?": types$1.function()
76706
76671
  });
76707
76672
  static size = { maxHeight: 500 };
76708
76673
  urlInput = signal(null);
@@ -86298,6 +86263,6 @@ const chartHelpers = {
86298
86263
  //#endregion
86299
86264
  export { AbstractCellClipboardHandler, AbstractChart, AbstractFigureClipboardHandler, BadExpressionError, CHART_TYPES, CellErrorType, CellValueType, CircularDependencyError, ClientDisconnectedError, ClipboardMIMEType, CommandResult, CompiledFormula, CorePlugin, CoreViewPlugin, DEFAULT_LOCALE, DEFAULT_LOCALES, DEFAULT_LOCALE_DIGIT_GROUPING, DIRECTION, DispatchResult, DivisionByZeroError, EvaluationError, InvalidReferenceError, LocalTransportService, Model, NEXT_VALUE, NotAvailableError, NumberTooLargeError, OrderedLayers, PREVIOUS_VALUE, PivotRuntimeDefinition, Registry, Revision, SPREADSHEET_DIMENSIONS, SplillBlockedError, Spreadsheet, SpreadsheetPivotTable, UIPlugin, UnknownFunctionError, __info__, addFunction, addRenderingLayer, astToFormula, availableConditionalFormatOperators, availableDataValidationOperators, availableFiltersOperators, borderPositions, borderStyles, canExecuteInReadonly, categories, chartHelpers, compatibility, components, composerFocusTypes, constants, convertAstNodes, coreTypes, createAutocompleteArgumentsProvider, errorTypes, filterDateCriterionOperators, filterNumberCriterionOperators, filterTextCriterionOperators, findCellInNewZone, functionCache, getCaretDownSvg, getCaretUpSvg, helpers, hooks, invalidSubtotalFormulasCommands, invalidateBordersCommands, invalidateCFEvaluationCommands, invalidateChartEvaluationCommands, invalidateDependenciesCommands, invalidateEvaluationCommands, isCoreCommand, isHeadersDependant, isMatrix, isPositionDependent, isRangeDependant, isSheetDependent, isTargetDependent, isZoneDependent, iterateAstNodes, links, load, lockedSheetAllowedCommands, parse, parseTokens, readonlyAllowedCommands, registries, schemeToColorScale, setDefaultSheetViewSize, setTranslationMethod, stores, tokenColors, tokenize };
86300
86265
 
86301
- __info__.version = "19.4.0-alpha.13";
86302
- __info__.date = "2026-06-06T09:34:53.140Z";
86303
- __info__.hash = "af3c199";
86266
+ __info__.version = "19.4.0-alpha.14";
86267
+ __info__.date = "2026-06-12T09:49:11.281Z";
86268
+ __info__.hash = "f92f5e0";