@odoo/o-spreadsheet 19.5.0-alpha.11 → 19.5.0-alpha.12

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 (50) hide show
  1. package/dist/material_symbols_outlined.css +9 -0
  2. package/dist/o_spreadsheet.cjs +2313 -656
  3. package/dist/o_spreadsheet.css +169 -33
  4. package/dist/o_spreadsheet.esm.js +2305 -648
  5. package/dist/o_spreadsheet.iife.js +2313 -656
  6. package/dist/o_spreadsheet.min.iife.js +344 -344
  7. package/dist/o_spreadsheet.xml +209 -128
  8. package/dist/types/actions/data_actions.d.ts +1 -0
  9. package/dist/types/components/bottom_bar/bottom_bar_statistic/bottom_bar_statistic.d.ts +3 -0
  10. package/dist/types/components/dashboard/clickable_cell_sort_icon/clickable_cell_sort_icon.d.ts +1 -1
  11. package/dist/types/components/figures/figure/figure.d.ts +1 -0
  12. package/dist/types/components/figures/figure_carousel/figure_carousel.d.ts +10 -0
  13. package/dist/types/components/figures/figure_container/figure_container.d.ts +1 -2
  14. package/dist/types/components/grid/grid.d.ts +1 -0
  15. package/dist/types/components/helpers/chart_drag_and_drop.d.ts +15 -0
  16. package/dist/types/components/helpers/dom_helpers.d.ts +3 -2
  17. package/dist/types/components/link/link_editor/link_editor.d.ts +1 -1
  18. package/dist/types/components/side_panel/carousel_panel/carousel_panel.d.ts +1 -1
  19. package/dist/types/components/side_panel/chart/building_blocks/color_scale/color_scale_picker.d.ts +1 -1
  20. package/dist/types/components/side_panel/data_analysis/chart_suggestion_preview.d.ts +19 -0
  21. package/dist/types/components/side_panel/data_analysis/data_analysis_panel.d.ts +17 -0
  22. package/dist/types/components/side_panel/data_analysis/data_analysis_store.d.ts +15 -0
  23. package/dist/types/components/side_panel/pivot/pivot_layout_configurator/pivot_layout_configurator.d.ts +1 -6
  24. package/dist/types/components/side_panel/side_panel/side_panel_store.d.ts +2 -1
  25. package/dist/types/components/standalone_grid_canvas/carousel_data_view_print.d.ts +32 -0
  26. package/dist/types/components/standalone_grid_canvas/standalone_grid_canvas.d.ts +6 -0
  27. package/dist/types/components/standalone_viewport/standalone_viewport.d.ts +6 -3
  28. package/dist/types/components/standalone_viewport/standalone_viewport_store.d.ts +2 -1
  29. package/dist/types/components/tables/hovered_table_store.d.ts +6 -7
  30. package/dist/types/constants.d.ts +13 -1
  31. package/dist/types/functions/helpers.d.ts +4 -0
  32. package/dist/types/functions/module_operators.d.ts +1 -1
  33. package/dist/types/functions/module_text.d.ts +11 -11
  34. package/dist/types/functions/module_web.d.ts +1 -1
  35. package/dist/types/helpers/carousel_helpers.d.ts +8 -1
  36. package/dist/types/helpers/data_analysis.d.ts +16 -0
  37. package/dist/types/helpers/figures/charts/chart_data_source_helpers.d.ts +10 -0
  38. package/dist/types/helpers/figures/charts/chart_suggestion_engine.d.ts +8 -0
  39. package/dist/types/helpers/figures/charts/chart_ui_common.d.ts +8 -1
  40. package/dist/types/helpers/figures/charts/charts_suggestions_constants.d.ts +37 -0
  41. package/dist/types/helpers/figures/charts/gauge_chart_rendering.d.ts +6 -2
  42. package/dist/types/helpers/text_helper.d.ts +1 -1
  43. package/dist/types/index.d.ts +3 -1
  44. package/dist/types/registries/figures_registry.d.ts +1 -0
  45. package/dist/types/stores/cell_hover_overlay_store.d.ts +15 -0
  46. package/dist/types/stores/chart_drag_store.d.ts +10 -0
  47. package/dist/types/stores/grid_renderer_store.d.ts +3 -2
  48. package/dist/types/types/chart/chart_suggestion.d.ts +136 -0
  49. package/dist/types/types/commands.d.ts +16 -9
  50. package/package.json +4 -4
@@ -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.5.0-alpha.11
6
- * @date 2026-08-12T09:17:26.024Z
7
- * @hash bc056d7
5
+ * @version 19.5.0-alpha.12
6
+ * @date 2026-08-19T09:47:05.537Z
7
+ * @hash 68ca68e
8
8
  */
9
9
  :root {
10
10
  --os-gray-100: light-dark(#f9fafb, #1b1d26);
@@ -138,6 +138,8 @@
138
138
  --os-components-importance-figure-anchor: 1000;
139
139
  --os-components-importance-figure-snap-line: 1001;
140
140
  --os-components-importance-figure-tooltip: 1002;
141
+
142
+ --os-icon-font-size: 17px;
141
143
  }
142
144
 
143
145
  /* Originates from src/components/validation_messages/validation_messages.css */
@@ -182,13 +184,6 @@
182
184
  }
183
185
  }
184
186
 
185
- @media (max-width: 768px) {
186
- .topbar-banner span {
187
- overflow: auto;
188
- align-items: normal !important;
189
- }
190
- }
191
-
192
187
  .tool-container {
193
188
  display: flex;
194
189
  justify-content: center;
@@ -230,7 +225,11 @@
230
225
  }
231
226
 
232
227
  .topbar-banner {
233
- height: var(--os-desktop-topbar-toolbar-height);
228
+ min-height: var(--os-desktop-topbar-toolbar-height);
229
+
230
+ .alert {
231
+ border: none; /* Remove default bootstrap border */
232
+ }
234
233
 
235
234
  .alert-info {
236
235
  border-left: 3px solid var(--os-alert-info-border);
@@ -853,6 +852,8 @@
853
852
  filter: var(--os-dark-mode-filter);
854
853
  }
855
854
  }
855
+
856
+ --oi-font-size: var(--os-icon-font-size);
856
857
  }
857
858
 
858
859
  /* Originates from src/components/small_bottom_bar/small_bottom_bar.css */
@@ -1347,6 +1348,52 @@
1347
1348
  }
1348
1349
  }
1349
1350
 
1351
+ /* Originates from src/components/side_panel/data_analysis/data_analysis_panel.css */
1352
+ .o-spreadsheet {
1353
+ .o-chart-suggestions-grid {
1354
+ display: grid;
1355
+ grid-template-columns: 1fr 1fr;
1356
+ gap: 6px;
1357
+ }
1358
+
1359
+ .o-chart-drag-preview {
1360
+ box-sizing: content-box;
1361
+ z-index: 9999;
1362
+ }
1363
+ }
1364
+
1365
+ /* Originates from src/components/side_panel/data_analysis/chart_suggestion_preview.css */
1366
+ .o-spreadsheet {
1367
+ .o-suggestion-canvas-wrap {
1368
+ cursor: grab;
1369
+ height: 120px;
1370
+ }
1371
+ .o-suggestion-canvas-wrap:hover {
1372
+ border-color: var(--o-action-color, #3d9be9);
1373
+ }
1374
+ .o-suggestion-canvas-wrap:active {
1375
+ cursor: grabbing;
1376
+ }
1377
+
1378
+ .o-suggestion-insert-icon {
1379
+ position: absolute;
1380
+ inset: 0;
1381
+ background: rgba(0, 0, 0, 0.35);
1382
+ opacity: 0;
1383
+ pointer-events: none;
1384
+ transition: opacity 0.1s;
1385
+
1386
+ .o-icon {
1387
+ width: 32px;
1388
+ height: 32px;
1389
+ color: white;
1390
+ }
1391
+ }
1392
+ .o-suggestion-canvas-wrap:hover .o-suggestion-insert-icon {
1393
+ opacity: 1;
1394
+ }
1395
+ }
1396
+
1350
1397
  /* Originates from src/components/side_panel/criterion_form/top_10_criterion/top_10_criterion.css */
1351
1398
  .o-spreadsheet {
1352
1399
  .o-top-10-criterion {
@@ -1576,7 +1623,7 @@
1576
1623
  .o_side_panel_collapsible_title {
1577
1624
  font-size: 16px;
1578
1625
  cursor: pointer;
1579
- padding: 6px 0px 6px 6px !important;
1626
+ padding: 6px 6px 6px 6px !important;
1580
1627
  .collapsor-arrow {
1581
1628
  transform: rotate(-90deg);
1582
1629
  display: inline-block;
@@ -2253,13 +2300,66 @@
2253
2300
  font: bold 16px sans-serif;
2254
2301
  }
2255
2302
  }
2256
- .fa-small {
2257
- font-size: 14px;
2258
- }
2259
2303
 
2260
2304
  .o-icon.fx-icon {
2261
2305
  color: var(--os-composer-placeholder-color);
2262
2306
  }
2307
+
2308
+ /*
2309
+ * Odoo UI Icon (oi): render Material Symbols through the data-icon attribute.
2310
+ * Mirrors web/static/src/webclient/icons.scss `material-icon-base`, adapted to
2311
+ * the `material-symbols` package whose variable font exposes a FILL axis.
2312
+ */
2313
+ .oi {
2314
+ display: flex;
2315
+ justify-content: center;
2316
+ align-items: center;
2317
+ font-family: var(--icon-font-family, "Material Symbols Outlined");
2318
+ font-style: normal;
2319
+ font-size: var(--oi-font-size, 1em);
2320
+ font-weight: 400 !important;
2321
+ line-height: 1;
2322
+ letter-spacing: normal;
2323
+ text-transform: none;
2324
+ white-space: nowrap;
2325
+ word-wrap: normal;
2326
+ direction: ltr;
2327
+ speak: never;
2328
+ -webkit-font-smoothing: antialiased;
2329
+ -moz-osx-font-smoothing: grayscale;
2330
+ }
2331
+
2332
+ .oi:before {
2333
+ display: inline-block;
2334
+ content: attr(data-icon);
2335
+ text-rendering: geometricPrecision;
2336
+ }
2337
+
2338
+ .oi-filled {
2339
+ -webkit-font-variation-settings: "FILL" 1;
2340
+ font-variation-settings: "FILL" 1;
2341
+ }
2342
+
2343
+ /* Overlap several icons (e.g. a glyph over a background disc).
2344
+ FIXME: this is kept as a compatibility layer, we should try to remove it in the future. */
2345
+ .oi-stack {
2346
+ position: relative;
2347
+ display: inline-block;
2348
+ width: 2em;
2349
+ height: 2em;
2350
+ line-height: 2em;
2351
+ vertical-align: middle;
2352
+ }
2353
+ .oi-stack-1x,
2354
+ .oi-stack-2x {
2355
+ position: absolute;
2356
+ left: 0;
2357
+ width: 100%;
2358
+ text-align: center;
2359
+ }
2360
+ .oi-stack-2x {
2361
+ font-size: 2em;
2362
+ }
2263
2363
  }
2264
2364
 
2265
2365
  /* Originates from src/components/icon_picker/icon_picker.css */
@@ -2622,6 +2722,22 @@
2622
2722
  }
2623
2723
  }
2624
2724
 
2725
+ /* Originates from src/components/figures/figure_image/figure_image.css */
2726
+ .o-spreadsheet {
2727
+ .o-figure-menu-item {
2728
+ cursor: pointer;
2729
+ color: var(--os-gray-900) !important;
2730
+ height: 20px;
2731
+ width: 20px;
2732
+ &.active,
2733
+ &:hover,
2734
+ &:target {
2735
+ cursor: pointer;
2736
+ background-color: var(--os-background-gray-color-hover);
2737
+ }
2738
+ }
2739
+ }
2740
+
2625
2741
  /* Originates from src/components/figures/figure_container/figure_container.css */
2626
2742
  .o-spreadsheet {
2627
2743
  .o-figure-snap-line {
@@ -2675,8 +2791,8 @@
2675
2791
 
2676
2792
  /* Originates from src/components/figures/figure_carousel/figure_carousel.css */
2677
2793
  .o-spreadsheet {
2678
- .o-carousel-content {
2679
- height: 0; /* To make flex-fill work */
2794
+ .o-carousel-separator {
2795
+ background-color: var(--os-gray-400);
2680
2796
  }
2681
2797
 
2682
2798
  .o-carousel-empty {
@@ -2706,17 +2822,13 @@
2706
2822
  .o-carousel-button {
2707
2823
  cursor: pointer;
2708
2824
 
2709
- &.o-carousel-tabs-dropdown {
2710
- font-size: 16px;
2711
- line-height: 16px;
2712
- }
2713
-
2714
2825
  &.o-carousel-full-screen-button {
2715
2826
  margin: 1px;
2716
2827
  }
2717
2828
 
2718
- &.o-carousel-menu-button {
2719
- padding: 3px 5px;
2829
+ &.o-carousel-menu-button,
2830
+ &.o-carousel-tabs-dropdown {
2831
+ padding: 1px 2px;
2720
2832
  }
2721
2833
 
2722
2834
  &.active,
@@ -2852,6 +2964,7 @@
2852
2964
  color: var(--os-gray-900) !important;
2853
2965
  height: 20px;
2854
2966
  width: 20px;
2967
+ border-color: transparent;
2855
2968
  &.active,
2856
2969
  &:hover,
2857
2970
  &:target {
@@ -3130,18 +3243,22 @@
3130
3243
  pointer-events: none;
3131
3244
  }
3132
3245
 
3133
- .fa-stack {
3246
+ .oi-stack {
3134
3247
  /* reset stack size which is doubled by default */
3135
3248
  width: 18px;
3136
3249
  height: 18px;
3137
3250
  line-height: 18px;
3138
3251
  }
3139
3252
 
3253
+ .o-composer-assistant-icon-bg {
3254
+ color: white;
3255
+ }
3256
+
3140
3257
  .force-open-assistant {
3141
3258
  left: -1px;
3142
3259
  top: -1px;
3143
3260
 
3144
- .fa-question-circle {
3261
+ [data-icon="help"] {
3145
3262
  color: var(--os-primary-button-bg);
3146
3263
  }
3147
3264
  }
@@ -3158,7 +3275,7 @@
3158
3275
  }
3159
3276
 
3160
3277
  .o-composer-assistant-container {
3161
- .fa-times-circle {
3278
+ [data-icon="cancel"] {
3162
3279
  color: var(--os-primary-button-bg);
3163
3280
  }
3164
3281
  }
@@ -3471,12 +3588,31 @@
3471
3588
 
3472
3589
  /* Originates from src/components/bottom_bar/bottom_bar_statistic/bottom_bar_statistic.css */
3473
3590
  .o-spreadsheet {
3474
- .o-selection-statistic {
3475
- margin-right: 20px;
3476
- padding: 4px 4px 4px 8px;
3477
- cursor: pointer;
3478
- &:hover {
3479
- background-color: var(--os-background-gray-color-hover) !important;
3591
+ .o-bottom-bar-statistic {
3592
+ .o-selection-statistic {
3593
+ margin-right: 10px;
3594
+ padding: 0px 4px 0px 8px;
3595
+ cursor: pointer;
3596
+ &:hover {
3597
+ background-color: var(--os-background-gray-color-hover) !important;
3598
+ }
3599
+ }
3600
+ .o-data-analysis-button {
3601
+ cursor: pointer;
3602
+ &:hover {
3603
+ background-color: var(--os-background-gray-color-hover);
3604
+ }
3605
+ &.active {
3606
+ background-color: var(--os-button-active-bg);
3607
+ .o-icon {
3608
+ color: var(--os-button-active-text-color);
3609
+ }
3610
+ }
3611
+ .o-icon {
3612
+ width: 30px;
3613
+ height: 30px;
3614
+ padding: 4px;
3615
+ }
3480
3616
  }
3481
3617
  }
3482
3618
  }