@odoo/o-spreadsheet 18.3.28 → 18.3.32

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.
@@ -0,0 +1,44 @@
1
+
2
+ /*
3
+ * This file is generated by o-spreadsheet build tools. Do not edit it.
4
+ * @see https://github.com/odoo/o-spreadsheet
5
+ * @version 18.3.32
6
+ * @date 2026-01-14T10:01:14.736Z
7
+ * @hash 8d1d321
8
+ */
9
+ /* Originates from src/components/top_bar/top_bar.scss */
10
+ @media (max-width: 900px) {
11
+ .o-spreadsheet .o-topbar-responsive {
12
+ flex-direction: column !important;
13
+ }
14
+ }
15
+ @media (max-width: 768px) {
16
+ .o-spreadsheet .irregularity-map span {
17
+ overflow: auto;
18
+ align-items: normal !important;
19
+ }
20
+ }
21
+
22
+ /* Originates from src/components/top_bar/dropdown_action/dropdown_action.scss */
23
+ .o-spreadsheet .o-dropdown {
24
+ position: relative;
25
+ display: flex;
26
+ align-items: center;
27
+ }
28
+ .o-spreadsheet .o-dropdown-content {
29
+ background-color: white;
30
+ }
31
+ .o-spreadsheet .o-dropdown-content .o-dropdown-line {
32
+ display: flex;
33
+ }
34
+ .o-spreadsheet .o-dropdown-content .o-dropdown-line > span {
35
+ padding: 4px;
36
+ }
37
+
38
+ /* Originates from src/components/spreadsheet/spreadsheet.scss */
39
+ .o-spreadsheet {
40
+ color: #374151;
41
+ }
42
+ .o-spreadsheet input {
43
+ background-color: white;
44
+ }
@@ -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 18.3.28
5
- @date 2025-12-02T05:34:53.167Z
6
- @hash a205f91
4
+ @version 18.3.32
5
+ @date 2026-01-14T10:01:13.948Z
6
+ @hash 8d1d321
7
7
  -->
8
8
  <odoo>
9
9
  <t t-name="o-spreadsheet-ValidationMessages">
@@ -1189,7 +1189,8 @@
1189
1189
  </select>
1190
1190
  <div t-if="searchOptions.searchScope === 'specificRange'">
1191
1191
  <SelectionInput
1192
- ranges="[this.state.dataRange]"
1192
+ t-key="selectionInputKey"
1193
+ ranges="[specificRange]"
1193
1194
  onSelectionChanged="(ranges) => this.onSearchRangeChanged(ranges)"
1194
1195
  onSelectionConfirmed.bind="updateDataRange"
1195
1196
  hasSingleRange="true"
@@ -1584,46 +1585,43 @@
1584
1585
  <t t-name="o-spreadsheet-ConditionalFormatPreview">
1585
1586
  <t t-set="cf" t-value="props.conditionalFormat"/>
1586
1587
  <div
1587
- class="o-cf-preview w-100"
1588
+ class="o-cf-preview w-100 d-flex align-items-center"
1588
1589
  t-ref="cfPreview"
1589
1590
  t-att-class="props.class"
1590
1591
  t-att-data-id="cf.id"
1591
1592
  t-on-click="props.onPreviewClick"
1592
1593
  t-on-pointerdown="(ev) => this.onMouseDown(ev)">
1593
- <div class="position-relative h-100 w-100 d-flex align-items-center">
1594
+ <div class="o-cf-drag-handle h-100 position-absolute d-flex align-items-center o-button-icon">
1595
+ <t t-call="o-spreadsheet-Icon.THIN_DRAG_HANDLE"/>
1596
+ </div>
1597
+ <t t-if="cf.rule.type==='IconSetRule'">
1598
+ <div class="o-cf-preview-icon d-flex justify-content-around align-items-center me-3">
1599
+ <t t-call="o-spreadsheet-Icon.{{icons[cf.rule.icons.upper].template}}"/>
1600
+ <t t-call="o-spreadsheet-Icon.{{icons[cf.rule.icons.middle].template}}"/>
1601
+ <t t-call="o-spreadsheet-Icon.{{icons[cf.rule.icons.lower].template}}"/>
1602
+ </div>
1603
+ </t>
1604
+ <t t-else="">
1594
1605
  <div
1595
- class="o-cf-drag-handle h-100 position-absolute d-flex align-items-center o-button-icon">
1596
- <t t-call="o-spreadsheet-Icon.THIN_DRAG_HANDLE"/>
1606
+ t-att-style="getPreviewImageStyle(cf.rule)"
1607
+ class="o-cf-preview-icon d-flex justify-content-around align-items-center me-3 flex-shrink-0">
1608
+ 123
1597
1609
  </div>
1598
- <t t-if="cf.rule.type==='IconSetRule'">
1599
- <div class="o-cf-preview-icon d-flex justify-content-around align-items-center me-2">
1600
- <t t-call="o-spreadsheet-Icon.{{icons[cf.rule.icons.upper].template}}"/>
1601
- <t t-call="o-spreadsheet-Icon.{{icons[cf.rule.icons.middle].template}}"/>
1602
- <t t-call="o-spreadsheet-Icon.{{icons[cf.rule.icons.lower].template}}"/>
1603
- </div>
1604
- </t>
1605
- <t t-else="">
1606
- <div
1607
- t-att-style="getPreviewImageStyle(cf.rule)"
1608
- class="o-cf-preview-icon d-flex justify-content-around align-items-center me-2">
1609
- 123
1610
- </div>
1611
- </t>
1612
- <div class="o-cf-preview-description">
1613
- <div class="o-cf-preview-ruletype">
1614
- <div class="o-cf-preview-description-rule o-fw-bold text-truncate">
1615
- <t t-esc="getDescription(cf)"/>
1616
- </div>
1610
+ </t>
1611
+ <div class="o-cf-preview-description me-3 overflow-auto">
1612
+ <div class="o-cf-preview-ruletype">
1613
+ <div class="o-cf-preview-description-rule o-fw-bold text-truncate">
1614
+ <t t-esc="getDescription(cf)"/>
1617
1615
  </div>
1618
- <div class="o-cf-preview-range text-truncate" t-esc="cf.ranges"/>
1619
1616
  </div>
1620
- <div class="o-cf-delete">
1621
- <div
1622
- class="o-cf-delete-button o-button-icon"
1623
- t-on-click.stop="(ev) => this.deleteConditionalFormat(cf, ev)"
1624
- title="Remove rule">
1625
- <t t-call="o-spreadsheet-Icon.TRASH_FILLED"/>
1626
- </div>
1617
+ <div class="o-cf-preview-range text-truncate" t-esc="cf.ranges"/>
1618
+ </div>
1619
+ <div class="o-cf-delete ms-auto">
1620
+ <div
1621
+ class="o-cf-delete-button o-button-icon"
1622
+ t-on-click.stop="(ev) => this.deleteConditionalFormat(cf, ev)"
1623
+ title="Remove rule">
1624
+ <t t-call="o-spreadsheet-Icon.TRASH_FILLED"/>
1627
1625
  </div>
1628
1626
  </div>
1629
1627
  </div>
@@ -5470,7 +5468,7 @@
5470
5468
 
5471
5469
  <t t-name="o-spreadsheet-GridOverlay">
5472
5470
  <div class="position-absolute" t-att-style="style">
5473
- <FiguresContainer onFigureDeleted="props.onFigureDeleted"/>
5471
+ <FiguresContainer/>
5474
5472
  </div>
5475
5473
  <div
5476
5474
  t-ref="gridOverlay"
@@ -5485,7 +5483,6 @@
5485
5483
  <GridAddRowsFooter
5486
5484
  t-if="!env.model.getters.isReadonly()"
5487
5485
  t-key="env.model.getters.getActiveSheetId()"
5488
- focusGrid="props.onFigureDeleted"
5489
5486
  />
5490
5487
  <t t-slot="default"/>
5491
5488
  </div>
@@ -5542,7 +5539,6 @@
5542
5539
  onGridResized.bind="onGridResized"
5543
5540
  onGridMoved.bind="moveCanvas"
5544
5541
  gridOverlayDimensions="gridOverlayDimensions"
5545
- onFigureDeleted.bind="focusDefaultElement"
5546
5542
  />
5547
5543
  <HeadersOverlay onOpenContextMenu="(type, x, y) => this.toggleContextMenu(type, x, y)"/>
5548
5544
  <GridComposer
@@ -5744,7 +5740,6 @@
5744
5740
  t-att-style="container.inverseViewportStyle">
5745
5741
  <t t-foreach="container.figures" t-as="figureUI" t-key="figureUI.id">
5746
5742
  <FigureComponent
5747
- onFigureDeleted="this.props.onFigureDeleted"
5748
5743
  figureUI="figureUI"
5749
5744
  style="getFigureStyle(figureUI)"
5750
5745
  onMouseDown="(ev) => this.startDraggingFigure(figureUI, ev)"
@@ -5796,7 +5791,6 @@
5796
5791
  <t
5797
5792
  t-component="figureRegistry.get(props.figureUI.tag).Component"
5798
5793
  t-key="props.figureUI.id"
5799
- onFigureDeleted="props.onFigureDeleted"
5800
5794
  figureUI="props.figureUI"
5801
5795
  />
5802
5796
  <div class="o-figure-menu position-absolute m-2" t-if="!env.isDashboard()">
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@odoo/o-spreadsheet",
3
- "version": "18.3.28",
3
+ "version": "18.3.32",
4
4
  "description": "A spreadsheet component",
5
5
  "type": "module",
6
6
  "main": "dist/o-spreadsheet.cjs.js",
@@ -10,7 +10,8 @@
10
10
  "files": [
11
11
  "dist/*.js",
12
12
  "dist/*.d.ts",
13
- "dist/*.xml"
13
+ "dist/*.xml",
14
+ "dist/*.css"
14
15
  ],
15
16
  "scripts": {
16
17
  "serve-static": "live-server --open=demo --watch=build/o_spreadsheet.iife.js,build/o_spreadsheet.xml,build/o_spreadsheet.css,main.css,demo",