@odoo/o-spreadsheet 18.5.0-alpha.5 → 18.5.0-alpha.7
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.
- package/dist/o-spreadsheet.cjs.js +11827 -10578
- package/dist/o-spreadsheet.d.ts +419 -264
- package/dist/o-spreadsheet.esm.js +11827 -10578
- package/dist/o-spreadsheet.iife.js +11933 -10684
- package/dist/o-spreadsheet.iife.min.js +485 -484
- package/dist/o_spreadsheet.xml +207 -50
- package/package.json +1 -1
package/dist/o_spreadsheet.xml
CHANGED
|
@@ -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.5.0-alpha.
|
|
5
|
-
@date 2025-08-
|
|
6
|
-
@hash
|
|
4
|
+
@version 18.5.0-alpha.7
|
|
5
|
+
@date 2025-08-08T11:01:32.306Z
|
|
6
|
+
@hash 1019d55
|
|
7
7
|
-->
|
|
8
8
|
<odoo>
|
|
9
9
|
<t t-name="o-spreadsheet-ValidationMessages">
|
|
@@ -989,6 +989,12 @@
|
|
|
989
989
|
allGranularities="getGranularitiesFor(col)"
|
|
990
990
|
/>
|
|
991
991
|
<PivotDimensionOrder dimension="col" onUpdated.bind="this.updateOrder"/>
|
|
992
|
+
<PivotCustomGroupsCollapsible
|
|
993
|
+
t-if="col.isCustomField"
|
|
994
|
+
pivotId="props.pivotId"
|
|
995
|
+
customField="getCustomField(col)"
|
|
996
|
+
onCustomFieldUpdated="props.onDimensionsUpdated"
|
|
997
|
+
/>
|
|
992
998
|
</PivotDimension>
|
|
993
999
|
</div>
|
|
994
1000
|
</t>
|
|
@@ -1015,6 +1021,12 @@
|
|
|
1015
1021
|
allGranularities="getGranularitiesFor(row)"
|
|
1016
1022
|
/>
|
|
1017
1023
|
<PivotDimensionOrder dimension="row" onUpdated.bind="this.updateOrder"/>
|
|
1024
|
+
<PivotCustomGroupsCollapsible
|
|
1025
|
+
t-if="row.isCustomField"
|
|
1026
|
+
pivotId="props.pivotId"
|
|
1027
|
+
customField="getCustomField(row)"
|
|
1028
|
+
onCustomFieldUpdated="props.onDimensionsUpdated"
|
|
1029
|
+
/>
|
|
1018
1030
|
</PivotDimension>
|
|
1019
1031
|
</div>
|
|
1020
1032
|
</t>
|
|
@@ -1243,6 +1255,42 @@
|
|
|
1243
1255
|
</Section>
|
|
1244
1256
|
</t>
|
|
1245
1257
|
|
|
1258
|
+
<t t-name="o-spreadsheet-PivotCustomGroupsCollapsible">
|
|
1259
|
+
<SidePanelCollapsible
|
|
1260
|
+
class="'o-pivot-custom-groups'"
|
|
1261
|
+
isInitiallyCollapsed="true"
|
|
1262
|
+
title.translate="Groups">
|
|
1263
|
+
<t t-set-slot="content">
|
|
1264
|
+
<div class="ps-4">
|
|
1265
|
+
<div
|
|
1266
|
+
t-foreach="groups"
|
|
1267
|
+
t-as="group"
|
|
1268
|
+
t-key="group_index"
|
|
1269
|
+
class="o-pivot-custom-group pb-1">
|
|
1270
|
+
<div
|
|
1271
|
+
class="d-flex align-items-center justify-content-between small"
|
|
1272
|
+
t-on-pointerdown.stop="">
|
|
1273
|
+
<TextInput
|
|
1274
|
+
value="group.name"
|
|
1275
|
+
onChange="(newName) => this.onRenameGroup(group_index, newName)"
|
|
1276
|
+
/>
|
|
1277
|
+
<i
|
|
1278
|
+
class="o-button-icon ps-3 fa fa-trash"
|
|
1279
|
+
t-on-click="() => this.onDeleteGroup(group_index)"
|
|
1280
|
+
/>
|
|
1281
|
+
</div>
|
|
1282
|
+
</div>
|
|
1283
|
+
<div
|
|
1284
|
+
t-if="!hasOthersGroup"
|
|
1285
|
+
class="o-button-link o-add-others-group small pb-1"
|
|
1286
|
+
t-on-click="() => this.addOthersGroup()">
|
|
1287
|
+
<span>+ "Others" group</span>
|
|
1288
|
+
</div>
|
|
1289
|
+
</div>
|
|
1290
|
+
</t>
|
|
1291
|
+
</SidePanelCollapsible>
|
|
1292
|
+
</t>
|
|
1293
|
+
|
|
1246
1294
|
<t t-name="o-spreadsheet-MoreFormatsPanel">
|
|
1247
1295
|
<div class="o-more-formats-panel">
|
|
1248
1296
|
<div
|
|
@@ -2213,11 +2261,12 @@
|
|
|
2213
2261
|
|
|
2214
2262
|
<t t-name="o-spreadsheet-SidePanelCollapsible">
|
|
2215
2263
|
<div class="" t-att-class="props.class">
|
|
2216
|
-
<div
|
|
2264
|
+
<div
|
|
2265
|
+
class="o_side_panel_collapsible_title o-fw-bold d-flex align-items-center"
|
|
2266
|
+
t-on-click="() => this.toggle()">
|
|
2217
2267
|
<div
|
|
2218
2268
|
class="collapsor w-100 d-flex align-items-center ps-1"
|
|
2219
|
-
t-att-class="state.isCollapsed ? 'collapsed' : ''"
|
|
2220
|
-
t-on-click="() => this.toggle()">
|
|
2269
|
+
t-att-class="state.isCollapsed ? 'collapsed' : ''">
|
|
2221
2270
|
<span class="collapsor-arrow">
|
|
2222
2271
|
<t t-call="o-spreadsheet-Icon.ANGLE_DOWN"/>
|
|
2223
2272
|
</span>
|
|
@@ -2361,7 +2410,7 @@
|
|
|
2361
2410
|
<t t-set-slot="content">
|
|
2362
2411
|
<AxisDesignEditor
|
|
2363
2412
|
axesList="axesList"
|
|
2364
|
-
|
|
2413
|
+
chartId="props.chartId"
|
|
2365
2414
|
definition="props.definition"
|
|
2366
2415
|
updateChart="props.updateChart"
|
|
2367
2416
|
/>
|
|
@@ -2383,14 +2432,14 @@
|
|
|
2383
2432
|
|
|
2384
2433
|
<t t-if="coloringOptions.type === 'categoryColor'">
|
|
2385
2434
|
<TreeMapCategoryColors
|
|
2386
|
-
|
|
2435
|
+
chartId="props.chartId"
|
|
2387
2436
|
definition="props.definition"
|
|
2388
2437
|
onColorChanged.bind="onCategoryColorChange"
|
|
2389
2438
|
/>
|
|
2390
2439
|
</t>
|
|
2391
2440
|
<t t-else="">
|
|
2392
2441
|
<TreeMapColorScale
|
|
2393
|
-
|
|
2442
|
+
chartId="props.chartId"
|
|
2394
2443
|
definition="props.definition"
|
|
2395
2444
|
onColorChanged.bind="onColorScaleChange"
|
|
2396
2445
|
/>
|
|
@@ -2406,13 +2455,13 @@
|
|
|
2406
2455
|
name="'showHeaders'"
|
|
2407
2456
|
label.translate="Show headers"
|
|
2408
2457
|
value="showHeaders"
|
|
2409
|
-
onChange="(showHeaders) => props.updateChart(this.props.
|
|
2458
|
+
onChange="(showHeaders) => props.updateChart(this.props.chartId, { showHeaders })"
|
|
2410
2459
|
/>
|
|
2411
2460
|
</Section>
|
|
2412
2461
|
<Section class="'pt-0'" t-if="showHeaders">
|
|
2413
2462
|
<TextStyler
|
|
2414
2463
|
class="'pt-0 o-header-style'"
|
|
2415
|
-
updateStyle="(headerDesign) => props.updateChart(this.props.
|
|
2464
|
+
updateStyle="(headerDesign) => props.updateChart(this.props.chartId, { headerDesign })"
|
|
2416
2465
|
style="props.definition.headerDesign || {}"
|
|
2417
2466
|
defaultStyle="defaults.headerDesign"
|
|
2418
2467
|
hasBackgroundColor="true"
|
|
@@ -2425,7 +2474,7 @@
|
|
|
2425
2474
|
name="'showLabels'"
|
|
2426
2475
|
label.translate="Show labels"
|
|
2427
2476
|
value="showLabels"
|
|
2428
|
-
onChange="(showLabels) => props.updateChart(this.props.
|
|
2477
|
+
onChange="(showLabels) => props.updateChart(this.props.chartId, { showLabels })"
|
|
2429
2478
|
/>
|
|
2430
2479
|
<ChartShowValues t-props="props" defaultValue="defaults.showValues"/>
|
|
2431
2480
|
</div>
|
|
@@ -2433,7 +2482,7 @@
|
|
|
2433
2482
|
<Section class="'pt-0'" t-if="showValues || showLabels">
|
|
2434
2483
|
<TextStyler
|
|
2435
2484
|
class="'pt-0 o-values-style'"
|
|
2436
|
-
updateStyle="(valuesDesign) => props.updateChart(this.props.
|
|
2485
|
+
updateStyle="(valuesDesign) => props.updateChart(this.props.chartId, { valuesDesign })"
|
|
2437
2486
|
style="props.definition.valuesDesign || {}"
|
|
2438
2487
|
defaultStyle="defaults.valuesDesign"
|
|
2439
2488
|
hasVerticalAlign="true"
|
|
@@ -2524,7 +2573,7 @@
|
|
|
2524
2573
|
name="'showLabels'"
|
|
2525
2574
|
label.translate="Show labels"
|
|
2526
2575
|
value="showLabels"
|
|
2527
|
-
onChange="(showLabels) => props.updateChart(this.props.
|
|
2576
|
+
onChange="(showLabels) => props.updateChart(this.props.chartId, { showLabels })"
|
|
2528
2577
|
/>
|
|
2529
2578
|
<ChartShowValues t-props="props" defaultValue="defaults.showValues"/>
|
|
2530
2579
|
</div>
|
|
@@ -2532,7 +2581,7 @@
|
|
|
2532
2581
|
<Section class="'pt-0'" t-if="showValues || showLabels">
|
|
2533
2582
|
<TextStyler
|
|
2534
2583
|
class="'o-values-style'"
|
|
2535
|
-
updateStyle="(valuesDesign) => props.updateChart(this.props.
|
|
2584
|
+
updateStyle="(valuesDesign) => props.updateChart(this.props.chartId, { valuesDesign })"
|
|
2536
2585
|
style="props.definition.valuesDesign || {}"
|
|
2537
2586
|
defaultStyle="defaults.valuesDesign"
|
|
2538
2587
|
/>
|
|
@@ -2691,7 +2740,7 @@
|
|
|
2691
2740
|
</t>
|
|
2692
2741
|
|
|
2693
2742
|
<t t-name="o-spreadsheet-ChartPanel">
|
|
2694
|
-
<div class="o-chart d-flex flex-column h-100" t-if="
|
|
2743
|
+
<div class="o-chart d-flex flex-column h-100" t-if="chartId">
|
|
2695
2744
|
<div class="o-panel">
|
|
2696
2745
|
<div
|
|
2697
2746
|
class="o-panel-element o-panel-configuration"
|
|
@@ -2709,27 +2758,27 @@
|
|
|
2709
2758
|
</div>
|
|
2710
2759
|
</div>
|
|
2711
2760
|
|
|
2712
|
-
<t t-set="definition" t-value="getChartDefinition(this.
|
|
2761
|
+
<t t-set="definition" t-value="getChartDefinition(this.chartId)"/>
|
|
2713
2762
|
<div class="o-panel-content overflow-y-auto" t-ref="panelContent">
|
|
2714
2763
|
<div t-att-class="store.panel !== 'configuration' ? 'd-none' : ''">
|
|
2715
|
-
<ChartTypePicker
|
|
2764
|
+
<ChartTypePicker chartId="chartId" chartPanelStore="store"/>
|
|
2716
2765
|
<t
|
|
2717
2766
|
t-component="chartPanel.configuration"
|
|
2718
2767
|
definition="definition"
|
|
2719
|
-
|
|
2768
|
+
chartId="chartId"
|
|
2720
2769
|
updateChart.bind="updateChart"
|
|
2721
2770
|
canUpdateChart.bind="canUpdateChart"
|
|
2722
|
-
t-key="
|
|
2771
|
+
t-key="chartId + definition.type"
|
|
2723
2772
|
/>
|
|
2724
2773
|
</div>
|
|
2725
2774
|
<div t-att-class="store.panel !== 'design' ? 'd-none' : ''">
|
|
2726
2775
|
<t
|
|
2727
2776
|
t-component="chartPanel.design"
|
|
2728
2777
|
definition="definition"
|
|
2729
|
-
|
|
2778
|
+
chartId="chartId"
|
|
2730
2779
|
updateChart.bind="updateChart"
|
|
2731
2780
|
canUpdateChart.bind="canUpdateChart"
|
|
2732
|
-
t-key="
|
|
2781
|
+
t-key="chartId + definition.type"
|
|
2733
2782
|
/>
|
|
2734
2783
|
</div>
|
|
2735
2784
|
</div>
|
|
@@ -2751,7 +2800,7 @@
|
|
|
2751
2800
|
<t t-set-slot="content">
|
|
2752
2801
|
<AxisDesignEditor
|
|
2753
2802
|
axesList="axesList"
|
|
2754
|
-
|
|
2803
|
+
chartId="props.chartId"
|
|
2755
2804
|
definition="props.definition"
|
|
2756
2805
|
updateChart="props.updateChart"
|
|
2757
2806
|
/>
|
|
@@ -2908,7 +2957,7 @@
|
|
|
2908
2957
|
<t t-name="o-spreadsheet-GeoChartConfigPanel">
|
|
2909
2958
|
<div>
|
|
2910
2959
|
<GeoChartRegionSelectSection
|
|
2911
|
-
|
|
2960
|
+
chartId="props.chartId"
|
|
2912
2961
|
definition="props.definition"
|
|
2913
2962
|
updateChart="props.updateChart"
|
|
2914
2963
|
/>
|
|
@@ -3127,7 +3176,7 @@
|
|
|
3127
3176
|
<t t-set-slot="content">
|
|
3128
3177
|
<AxisDesignEditor
|
|
3129
3178
|
axesList="axesList"
|
|
3130
|
-
|
|
3179
|
+
chartId="props.chartId"
|
|
3131
3180
|
definition="props.definition"
|
|
3132
3181
|
updateChart="props.updateChart"
|
|
3133
3182
|
/>
|
|
@@ -3149,7 +3198,7 @@
|
|
|
3149
3198
|
<t t-set-slot="content">
|
|
3150
3199
|
<AxisDesignEditor
|
|
3151
3200
|
axesList="axesList"
|
|
3152
|
-
|
|
3201
|
+
chartId="props.chartId"
|
|
3153
3202
|
definition="props.definition"
|
|
3154
3203
|
updateChart="props.updateChart"
|
|
3155
3204
|
/>
|
|
@@ -3583,7 +3632,7 @@
|
|
|
3583
3632
|
name="'showValues'"
|
|
3584
3633
|
label.translate="Show values"
|
|
3585
3634
|
value="props.definition.showValues ?? props.defaultValue"
|
|
3586
|
-
onChange="(showValues) => props.updateChart(this.props.
|
|
3635
|
+
onChange="(showValues) => props.updateChart(this.props.chartId, { showValues })"
|
|
3587
3636
|
/>
|
|
3588
3637
|
</t>
|
|
3589
3638
|
|
|
@@ -3592,7 +3641,7 @@
|
|
|
3592
3641
|
name="'showDataMarkers'"
|
|
3593
3642
|
label.translate="Show data markers"
|
|
3594
3643
|
value="!props.definition.hideDataMarkers"
|
|
3595
|
-
onChange="(showDataMarkers) => props.updateChart(this.props.
|
|
3644
|
+
onChange="(showDataMarkers) => props.updateChart(this.props.chartId, { hideDataMarkers: !showDataMarkers })"
|
|
3596
3645
|
/>
|
|
3597
3646
|
</t>
|
|
3598
3647
|
|
|
@@ -3940,6 +3989,62 @@
|
|
|
3940
3989
|
</div>
|
|
3941
3990
|
</t>
|
|
3942
3991
|
|
|
3992
|
+
<t t-name="o-spreadsheet-CarouselPanel">
|
|
3993
|
+
<div class="o-carousel-panel h-100 overflow-auto">
|
|
3994
|
+
<div class="o-carousel-preview-list overflow-auto" t-ref="previewList">
|
|
3995
|
+
<t t-foreach="carouselItems" t-as="item" t-key="getItemId(item)">
|
|
3996
|
+
<div
|
|
3997
|
+
class="o-carousel-preview border-bottom pe-2 position-relative w-100 d-flex align-items-center"
|
|
3998
|
+
t-att-class="{ 'o-dragging': dragAndDrop.draggedItemId === getItemId(item) }"
|
|
3999
|
+
t-att-style="getPreviewDivStyle(item)">
|
|
4000
|
+
<div
|
|
4001
|
+
class="o-drag-handle h-100 position-absolute d-flex align-items-center o-button-icon ps-1 flex-shrink-0"
|
|
4002
|
+
t-on-pointerdown.stop.prevent="(ev) => this.onDragHandleMouseDown(item, ev)">
|
|
4003
|
+
<t t-call="o-spreadsheet-Icon.THIN_DRAG_HANDLE"/>
|
|
4004
|
+
</div>
|
|
4005
|
+
<div
|
|
4006
|
+
class="o-carousel-preview-icon ms-3 flex-shrink-0 d-flex align-items-center justify-content-center">
|
|
4007
|
+
<t t-call="{{getItemPreview(item)}}"/>
|
|
4008
|
+
</div>
|
|
4009
|
+
<div class="o-carousel-preview-title text-truncate ms-2">
|
|
4010
|
+
<TextInput
|
|
4011
|
+
value="getItemTitle(item)"
|
|
4012
|
+
onChange="(newName) => this.renameCarouselItem(item, newName)"
|
|
4013
|
+
/>
|
|
4014
|
+
</div>
|
|
4015
|
+
<div class="ms-auto"/>
|
|
4016
|
+
<div
|
|
4017
|
+
t-if="item.type === 'chart'"
|
|
4018
|
+
class="o-edit-button o-button-icon pe-2 ps-1 flex-shrink-0 fa fa-pencil"
|
|
4019
|
+
t-on-click.stop="(ev) => this.editCarouselItem(item, ev)"
|
|
4020
|
+
title="Edit chart"
|
|
4021
|
+
/>
|
|
4022
|
+
<div
|
|
4023
|
+
class="o-delete-button o-button-icon pe-2 ps-1 flex-shrink-0"
|
|
4024
|
+
t-on-click.stop="(ev) => this.deleteCarouselItem(item, ev)"
|
|
4025
|
+
title="Remove chart">
|
|
4026
|
+
<t t-call="o-spreadsheet-Icon.TRASH_FILLED"/>
|
|
4027
|
+
</div>
|
|
4028
|
+
</div>
|
|
4029
|
+
</t>
|
|
4030
|
+
</div>
|
|
4031
|
+
<div
|
|
4032
|
+
class="o-button-link o-carousel-add-chart float-end d-flex align-items-center pt-4 pe-4 gap-2"
|
|
4033
|
+
t-on-click="addNewChartToCarousel">
|
|
4034
|
+
+ Add chart
|
|
4035
|
+
<span t-att-title="carouselAddChartInfoMessage">
|
|
4036
|
+
<t t-call="o-spreadsheet-Icon.CIRCLE_INFO"/>
|
|
4037
|
+
</span>
|
|
4038
|
+
</div>
|
|
4039
|
+
<div
|
|
4040
|
+
t-if="!hasDataView"
|
|
4041
|
+
class="o-button-link o-carousel-add-data-view float-end pt-4 pe-4"
|
|
4042
|
+
t-on-click="addDataViewToCarousel">
|
|
4043
|
+
+ Add data view
|
|
4044
|
+
</div>
|
|
4045
|
+
</div>
|
|
4046
|
+
</t>
|
|
4047
|
+
|
|
3943
4048
|
<t t-name="o-spreadsheet-SelectionInput">
|
|
3944
4049
|
<div class="o-selection" t-ref="o-selection">
|
|
3945
4050
|
<div
|
|
@@ -5102,12 +5207,26 @@
|
|
|
5102
5207
|
</svg>
|
|
5103
5208
|
</t>
|
|
5104
5209
|
<t t-name="o-spreadsheet-Icon.PLUS_IN_BOX">
|
|
5105
|
-
<svg
|
|
5106
|
-
|
|
5107
|
-
|
|
5108
|
-
|
|
5109
|
-
|
|
5110
|
-
|
|
5210
|
+
<svg class="o-icon" width="18" height="18" style="">
|
|
5211
|
+
<path
|
|
5212
|
+
fill="currentColor"
|
|
5213
|
+
d="
|
|
5214
|
+
M.5 2A1.5 1.5 0 0 1 2 .5h14A1.5 1.5 0 0 1 17.5 2v14a1.5 1.5 0 0 1-1.5 1.5H2A1.5 1.5 0 0 1 .5 16V2H2v14h14V2H2
|
|
5215
|
+
M4,9.5 h10 v-1.5 h-10
|
|
5216
|
+
M8.25,3.75 v10 h1.5 v-10
|
|
5217
|
+
"
|
|
5218
|
+
/>
|
|
5219
|
+
</svg>
|
|
5220
|
+
</t>
|
|
5221
|
+
<t t-name="o-spreadsheet-Icon.MINUS_IN_BOX">
|
|
5222
|
+
<svg class="o-icon" width="18" height="18" style="">
|
|
5223
|
+
<path
|
|
5224
|
+
fill="currentColor"
|
|
5225
|
+
d="
|
|
5226
|
+
M.5 2A1.5 1.5 0 0 1 2 .5h14A1.5 1.5 0 0 1 17.5 2v14a1.5 1.5 0 0 1-1.5 1.5H2A1.5 1.5 0 0 1 .5 16V2H2v14h14V2H2
|
|
5227
|
+
M4,9.5 h10 v-1.5 h-10
|
|
5228
|
+
"
|
|
5229
|
+
/>
|
|
5111
5230
|
</svg>
|
|
5112
5231
|
</t>
|
|
5113
5232
|
<t t-name="o-spreadsheet-Icon.GROUP_ROWS">
|
|
@@ -5282,6 +5401,14 @@
|
|
|
5282
5401
|
<i class="fa fa-download"/>
|
|
5283
5402
|
</div>
|
|
5284
5403
|
</t>
|
|
5404
|
+
<t t-name="o-spreadsheet-Icon.CAROUSEL">
|
|
5405
|
+
<svg class="o-icon" viewBox="0 0 122.88 99.75">
|
|
5406
|
+
<path
|
|
5407
|
+
fill="currentColor"
|
|
5408
|
+
d="M29.09,0h64.7A5.21,5.21,0,0,1,99,5.18v89.4a5.19,5.19,0,0,1-5.18,5.17H29.09a5.19,5.19,0,0,1-5.17-5.18V5.18A5.21,5.21,0,0,1,29.09,0Zm78.52,12.46,10.59-1.52a4.71,4.71,0,0,1,4.68,4.69v68.5a4.71,4.71,0,0,1-4.68,4.68L107.77,88a1.35,1.35,0,0,1-1.31-1.34V83.14a1.34,1.34,0,0,1,1.44-1.23l8.91.73V17.22l-9,1.34a1.34,1.34,0,0,1-1.34-1.34V13.78a1.34,1.34,0,0,1,1.15-1.32ZM5,11l10.31,1.49a1.33,1.33,0,0,1,1.14,1.32v3.44a1.34,1.34,0,0,1-1.34,1.34l-9-1.34V82.64L15,81.91a1.33,1.33,0,0,1,1.43,1.23v3.49A1.35,1.35,0,0,1,15.11,88l-10.43.84A4.71,4.71,0,0,1,0,84.13V15.63a4.73,4.73,0,0,1,4.68-4.69L5,11Zm87.93-4.9H30v87.6h62.9V6.07Z"
|
|
5409
|
+
/>
|
|
5410
|
+
</svg>
|
|
5411
|
+
</t>
|
|
5285
5412
|
|
|
5286
5413
|
<t t-name="o-spreadsheet-IconPicker">
|
|
5287
5414
|
<div class="o-icon-picker">
|
|
@@ -5762,7 +5889,7 @@
|
|
|
5762
5889
|
<t t-name="o-spreadsheet-FullScreenChart">
|
|
5763
5890
|
<div
|
|
5764
5891
|
class="position-absolute o-fullscreen-chart-overlay w-100 h-100 d-flex"
|
|
5765
|
-
t-if="
|
|
5892
|
+
t-if="chartId"
|
|
5766
5893
|
t-on-click="exitFullScreen">
|
|
5767
5894
|
<button
|
|
5768
5895
|
class="o-exit top-0 end-0 position-absolute o-button primary m-1"
|
|
@@ -5776,14 +5903,9 @@
|
|
|
5776
5903
|
t-ref="fullScreenChart"
|
|
5777
5904
|
t-on-click.stop=""
|
|
5778
5905
|
t-on-keydown="(ev) => this.onKeyDown(ev)">
|
|
5779
|
-
<t
|
|
5780
|
-
t-component="chartComponent"
|
|
5781
|
-
figureUI="this.figureUI"
|
|
5782
|
-
isFullScreen="true"
|
|
5783
|
-
t-key="this.figureUI.id"
|
|
5784
|
-
/>
|
|
5906
|
+
<t t-component="chartComponent" chartId="chartId" isFullScreen="true" t-key="chartId"/>
|
|
5785
5907
|
<div class="position-absolute top-0 end-0">
|
|
5786
|
-
<ChartDashboardMenu
|
|
5908
|
+
<ChartDashboardMenu chartId="chartId"/>
|
|
5787
5909
|
</div>
|
|
5788
5910
|
</div>
|
|
5789
5911
|
</div>
|
|
@@ -5984,6 +6106,7 @@
|
|
|
5984
6106
|
onFigureDeleted="this.props.onFigureDeleted"
|
|
5985
6107
|
figureUI="figureUI"
|
|
5986
6108
|
style="getFigureStyle(figureUI)"
|
|
6109
|
+
class="getFigureClass(figureUI)"
|
|
5987
6110
|
onMouseDown="(ev) => this.startDraggingFigure(figureUI, ev)"
|
|
5988
6111
|
onClickAnchor="(dirX, dirY, ev) => this.startResize(figureUI, dirX, dirY, ev)"
|
|
5989
6112
|
/>
|
|
@@ -6010,21 +6133,54 @@
|
|
|
6010
6133
|
|
|
6011
6134
|
<t t-name="o-spreadsheet-ChartFigure">
|
|
6012
6135
|
<div class="o-chart-container w-100 h-100" t-on-dblclick="onDoubleClick">
|
|
6013
|
-
<t
|
|
6014
|
-
t-component="chartComponent"
|
|
6015
|
-
figureUI="this.props.figureUI"
|
|
6016
|
-
t-key="this.props.figureUI.id"
|
|
6017
|
-
/>
|
|
6136
|
+
<t t-component="chartComponent" chartId="chartId" t-key="chartId"/>
|
|
6018
6137
|
</div>
|
|
6019
6138
|
<div t-if="env.isDashboard()" class="position-absolute top-0 end-0">
|
|
6020
|
-
<ChartDashboardMenu
|
|
6139
|
+
<ChartDashboardMenu chartId="chartId"/>
|
|
6140
|
+
</div>
|
|
6141
|
+
</t>
|
|
6142
|
+
|
|
6143
|
+
<t t-name="o-spreadsheet-CarouselFigure">
|
|
6144
|
+
<div class="o-carousel w-100 h-100" t-on-dblclick="onCarouselDoubleClick">
|
|
6145
|
+
<t t-set="selectedItem" t-value="selectedCarouselItem"/>
|
|
6146
|
+
<div
|
|
6147
|
+
class="o-carousel-header position-absolute end-0 top-0 d-flex pe-1 rounded pe-auto"
|
|
6148
|
+
t-att-class="{
|
|
6149
|
+
'o-carousel-header-floating': !env.isDashboard() and selectedItem?.type === 'carouselDataView',
|
|
6150
|
+
}"
|
|
6151
|
+
t-att-style="headerStyle"
|
|
6152
|
+
t-on-pointerdown.stop="">
|
|
6153
|
+
<t t-foreach="carousel.items" t-as="item" t-key="item_index">
|
|
6154
|
+
<div
|
|
6155
|
+
class="o-carousel-tab text-truncate px-2 mt-1 mb-1 flex-shrink-0"
|
|
6156
|
+
t-att-class="{ 'selected': isItemSelected(item) }"
|
|
6157
|
+
t-esc="getItemTitle(item)"
|
|
6158
|
+
t-on-click.stop="() => this.onCarouselTabClick(item)"
|
|
6159
|
+
/>
|
|
6160
|
+
</t>
|
|
6161
|
+
</div>
|
|
6162
|
+
<div
|
|
6163
|
+
t-if="!selectedItem"
|
|
6164
|
+
class="o-carousel-empty w-100 h-100 d-flex align-items-center justify-content-center">
|
|
6165
|
+
<t t-call="o-spreadsheet-Icon.CAROUSEL"/>
|
|
6166
|
+
</div>
|
|
6167
|
+
<div t-elif="selectedItem.type === 'chart'" class="o-carousel-content w-100 h-100">
|
|
6168
|
+
<div class="o-chart-container w-100 h-100">
|
|
6169
|
+
<t
|
|
6170
|
+
t-component="chartComponent"
|
|
6171
|
+
chartId="selectedItem.chartId"
|
|
6172
|
+
t-key="selectedItem.chartId"
|
|
6173
|
+
/>
|
|
6174
|
+
</div>
|
|
6175
|
+
</div>
|
|
6021
6176
|
</div>
|
|
6022
6177
|
</t>
|
|
6023
6178
|
|
|
6024
6179
|
<t t-name="o-spreadsheet-FigureComponent">
|
|
6025
|
-
<div class="o-figure-wrapper
|
|
6180
|
+
<div class="o-figure-wrapper" t-att-style="wrapperStyle" t-ref="figureWrapper">
|
|
6026
6181
|
<div
|
|
6027
6182
|
class="o-figure w-100 h-100"
|
|
6183
|
+
t-att-class="props.class"
|
|
6028
6184
|
t-on-pointerdown.stop="(ev) => this.onMouseDown(ev)"
|
|
6029
6185
|
t-on-click="onClick"
|
|
6030
6186
|
t-on-contextmenu.prevent.stop="(ev) => !env.model.getters.isReadonly() and this.onContextMenu(ev)"
|
|
@@ -6039,11 +6195,12 @@
|
|
|
6039
6195
|
t-key="props.figureUI.id"
|
|
6040
6196
|
onFigureDeleted="props.onFigureDeleted"
|
|
6041
6197
|
figureUI="props.figureUI"
|
|
6198
|
+
editFigureStyle.bind="editWrapperStyle"
|
|
6042
6199
|
/>
|
|
6043
6200
|
<div class="o-figure-menu position-absolute m-2" t-if="!env.isDashboard()">
|
|
6044
6201
|
<div
|
|
6045
6202
|
class="o-figure-menu-item"
|
|
6046
|
-
t-if="!env.model.getters.isReadonly()"
|
|
6203
|
+
t-if="!env.model.getters.isReadonly() and props.figureUI.tag !== 'carousel'"
|
|
6047
6204
|
t-on-click="showMenu"
|
|
6048
6205
|
t-ref="menuButton"
|
|
6049
6206
|
t-on-contextmenu.prevent.stop="showMenu">
|