@odoo/o-spreadsheet 19.2.0-alpha.2 → 19.2.0-alpha.3

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.
@@ -1,9 +1,9 @@
1
1
  <!--
2
2
  This file is generated by o-spreadsheet build tools. Do not edit it.
3
3
  @see https://github.com/odoo/o-spreadsheet
4
- @version 19.2.0-alpha.2
5
- @date 2026-01-07T16:22:28.451Z
6
- @hash ac2fa3e
4
+ @version 19.2.0-alpha.3
5
+ @date 2026-01-14T10:03:04.642Z
6
+ @hash e5cbf18
7
7
  -->
8
8
  <odoo>
9
9
  <t t-name="o-spreadsheet-ValidationMessages">
@@ -271,15 +271,17 @@
271
271
  t-esc="categories[category_value]"
272
272
  />
273
273
  </div>
274
- <div class="d-flex flex-wrap px-4">
274
+ <div
275
+ class="d-flex flex-wrap px-4"
276
+ t-att-class="props.type === 'pivot' ? 'o-pivot-previews' : 'o-table-previews'">
275
277
  <t t-foreach="displayedStyles" t-as="styleId" t-key="styleId">
276
278
  <TableStylePreview
277
- class="'o-table-style-popover-preview'"
278
279
  styleId="styleId"
279
280
  selected="styleId === props.selectedStyleId"
280
281
  tableConfig="props.tableConfig"
281
- tableStyle="env.model.getters.getTableStyle(styleId)"
282
+ tableStyle="props.tableStyles[styleId]"
282
283
  onClick="() => this.props.onStylePicked(styleId)"
284
+ type="props.type"
283
285
  />
284
286
  </t>
285
287
  <div
@@ -301,7 +303,7 @@
301
303
  t-att-title="styleName"
302
304
  t-on-click="props.onClick"
303
305
  t-on-contextmenu.prevent="(ev) => this.onContextMenu(ev)">
304
- <div t-att-class="props.class">
306
+ <div class="o-table-preview">
305
307
  <canvas t-ref="canvas" class="w-100 h-100"/>
306
308
  </div>
307
309
  <div
@@ -322,15 +324,17 @@
322
324
 
323
325
  <t t-name="o-spreadsheet-TableStylePicker">
324
326
  <div class="o-table-style-picker d-flex flew-row justify-content-between ps-1 border rounded">
325
- <div class="d-flex flex-row overflow-hidden ps-2">
327
+ <div
328
+ class="d-flex flex-row overflow-hidden"
329
+ t-att-class="props.type === 'pivot' ? 'o-pivot-previews' : 'o-table-previews ps-2'">
326
330
  <t t-foreach="getDisplayedTableStyles()" t-as="styleId" t-key="styleId">
327
331
  <TableStylePreview
328
- class="'o-table-style-picker-preview'"
329
- selected="styleId === props.table.config.styleId"
330
- tableConfig="props.table.config"
331
- tableStyle="env.model.getters.getTableStyle(styleId)"
332
+ selected="styleId === props.tableConfig.styleId"
333
+ tableConfig="props.tableConfig"
334
+ tableStyle="props.tableStyles[styleId]"
332
335
  styleId="styleId"
333
336
  onClick="() => this.onStylePicked(styleId)"
337
+ type="props.type"
334
338
  />
335
339
  </t>
336
340
  </div>
@@ -341,11 +345,13 @@
341
345
  </div>
342
346
  </div>
343
347
  <TableStylesPopover
344
- tableConfig="props.table.config"
345
- selectedStyleId="props.table.config.styleId"
348
+ tableConfig="props.tableConfig"
349
+ selectedStyleId="props.tableConfig.styleId"
346
350
  onStylePicked.bind="onStylePicked"
347
351
  popoverProps="state.popoverProps"
348
352
  closePopover.bind="closePopover"
353
+ tableStyles="props.tableStyles"
354
+ type="props.type"
349
355
  />
350
356
  </t>
351
357
 
@@ -371,6 +377,8 @@
371
377
  onStylePicked.bind="onStylePicked"
372
378
  popoverProps="state.popoverProps"
373
379
  closePopover.bind="closePopover"
380
+ tableStyles="tableStyles"
381
+ type="'table'"
374
382
  />
375
383
  </t>
376
384
 
@@ -499,11 +507,11 @@
499
507
  <div class="d-flex flex-wrap">
500
508
  <t t-foreach="tableTemplates" t-as="templateName" t-key="templateName">
501
509
  <TableStylePreview
502
- class="'o-table-style-edit-template-preview'"
503
510
  selected="templateName === state.selectedTemplateName"
504
511
  tableConfig="previewTableConfig"
505
512
  tableStyle="computeTableStyle(templateName)"
506
513
  onClick="() => this.onTemplatePicked(templateName)"
514
+ type="'table'"
507
515
  />
508
516
  </t>
509
517
  </div>
@@ -587,7 +595,12 @@
587
595
  </div>
588
596
  </Section>
589
597
  <Section>
590
- <TableStylePicker table="props.table"/>
598
+ <TableStylePicker
599
+ tableConfig="props.table.config"
600
+ onStylePicked.bind="onStylePicked"
601
+ tableStyles="env.model.getters.getTableStyles()"
602
+ type="'table'"
603
+ />
591
604
  </Section>
592
605
  <Section title.translate="Data range">
593
606
  <SelectionInput
@@ -898,7 +911,7 @@
898
911
  </t>
899
912
 
900
913
  <t t-name="o-spreadsheet-PivotSidePanel">
901
- <div class="d-flex flex-column h-100">
914
+ <div class="o-pivot-panel d-flex flex-column h-100">
902
915
  <div class="o-panel d-flex">
903
916
  <div
904
917
  class="o-sidePanel-tab o-panel-configuration d-flew flex-grow-1 text-center"
@@ -918,7 +931,11 @@
918
931
 
919
932
  <div class="o-panel-content overflow-y-auto h-100" t-ref="panelContent">
920
933
  <div class="h-100" t-att-class="{ 'd-none': state.panel !== 'configuration' }">
921
- <t t-component="sidePanelEditor" t-props="props"/>
934
+ <t
935
+ t-component="sidePanelEditor"
936
+ pivotId="props.pivotId"
937
+ onCloseSidePanel="props.onCloseSidePanel"
938
+ />
922
939
  </div>
923
940
  <div t-att-class="state.panel !== 'design' ? 'd-none' : ''">
924
941
  <PivotDesignPanel pivotId="props.pivotId"/>
@@ -1035,6 +1052,47 @@
1035
1052
  </div>
1036
1053
  </div>
1037
1054
  </Section>
1055
+
1056
+ <Section class="'o-pivot-table-style'" title.translate="Pivot table style">
1057
+ <div class="row mb-2 align-items-center pt-2">
1058
+ <div class="col-6">Banded rows:</div>
1059
+ <div class="col-6 d-flex align-items-center">
1060
+ <Checkbox
1061
+ name="'bandedRows'"
1062
+ value="pivotStyle.bandedRows ?? defaultStyle.bandedRows"
1063
+ onChange="(val) => this.updatePivotStyleProperty('bandedRows', val)"
1064
+ />
1065
+ </div>
1066
+ </div>
1067
+ <div class="row mb-2 align-items-center">
1068
+ <div class="col-6">Banded columns</div>
1069
+ <div class="col-6 d-flex align-items-center">
1070
+ <Checkbox
1071
+ name="'bandedColumns'"
1072
+ value="pivotStyle.bandedColumns ?? defaultStyle.bandedColumns"
1073
+ onChange="(val) => this.updatePivotStyleProperty('bandedColumns', val)"
1074
+ />
1075
+ </div>
1076
+ </div>
1077
+ <div class="row mb-2 align-items-center">
1078
+ <div class="col-6">Filter button</div>
1079
+ <div class="col-6 d-flex align-items-center">
1080
+ <Checkbox
1081
+ name="'hasFilters'"
1082
+ value="pivotStyle.hasFilters ?? defaultStyle.hasFilters"
1083
+ onChange="(val) => this.updatePivotStyleProperty('hasFilters', val)"
1084
+ />
1085
+ </div>
1086
+ </div>
1087
+ <div class="mt-4">
1088
+ <TableStylePicker
1089
+ tableConfig="tableConfig"
1090
+ onStylePicked.bind="onStylePicked"
1091
+ tableStyles="tableStyles"
1092
+ type="'pivot'"
1093
+ />
1094
+ </div>
1095
+ </Section>
1038
1096
  </t>
1039
1097
 
1040
1098
  <t t-name="o-spreadsheet-PivotMeasureDisplayPanel">
@@ -1583,7 +1641,8 @@
1583
1641
  </select>
1584
1642
  <div t-if="searchOptions.searchScope === 'specificRange'">
1585
1643
  <SelectionInput
1586
- ranges="[this.state.dataRange]"
1644
+ t-key="selectionInputKey"
1645
+ ranges="[specificRange]"
1587
1646
  onSelectionChanged="(ranges) => this.onSearchRangeChanged(ranges)"
1588
1647
  onSelectionConfirmed.bind="updateDataRange"
1589
1648
  hasSingleRange="true"
@@ -6833,6 +6892,7 @@
6833
6892
  <div
6834
6893
  class="o-carousel-tab text-truncate px-2 mt-1 flex-shrink-0"
6835
6894
  t-att-class="{ 'selected': isItemSelected(item) }"
6895
+ t-att-data-type="item.type"
6836
6896
  t-esc="getItemTitle(item)"
6837
6897
  t-on-click.stop="() => this.onCarouselTabClick(item)"
6838
6898
  />
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@odoo/o-spreadsheet",
3
- "version": "19.2.0-alpha.2",
3
+ "version": "19.2.0-alpha.3",
4
4
  "description": "A spreadsheet component",
5
5
  "type": "module",
6
6
  "main": "dist/o-spreadsheet.cjs.js",
@@ -171,8 +171,8 @@
171
171
  },
172
172
  "lint-staged": {
173
173
  "*": [
174
- "prettier --write",
175
- "eslint --fix"
174
+ "eslint --fix",
175
+ "prettier --write"
176
176
  ]
177
177
  },
178
178
  "publishConfig": {