@odoo/o-spreadsheet 18.5.0-alpha.9 → 19.0.1
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 +10543 -9397
- package/dist/o-spreadsheet.d.ts +5338 -5365
- package/dist/o-spreadsheet.esm.js +10542 -9398
- package/dist/o-spreadsheet.iife.js +10543 -9397
- package/dist/o-spreadsheet.iife.min.js +580 -578
- package/dist/o_spreadsheet.xml +145 -112
- package/package.json +2 -2
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
|
|
5
|
-
@date 2025-
|
|
6
|
-
@hash
|
|
4
|
+
@version 19.0.1
|
|
5
|
+
@date 2025-09-11T08:46:39.072Z
|
|
6
|
+
@hash bd79eea
|
|
7
7
|
-->
|
|
8
8
|
<odoo>
|
|
9
9
|
<t t-name="o-spreadsheet-ValidationMessages">
|
|
@@ -53,8 +53,13 @@
|
|
|
53
53
|
</div>
|
|
54
54
|
</div>
|
|
55
55
|
<!-- Toolbar and Cell Content -->
|
|
56
|
-
<div
|
|
57
|
-
|
|
56
|
+
<div
|
|
57
|
+
class="d-flex o-topbar-responsive"
|
|
58
|
+
t-att-class="{'o-topbar-responsive': !env.model.getters.isReadonly()}"
|
|
59
|
+
t-ref="toolBarContainer">
|
|
60
|
+
<div
|
|
61
|
+
class="o-topbar-toolbar d-flex"
|
|
62
|
+
t-att-class="{'flex-shrink-0': env.model.getters.isReadonly()}">
|
|
58
63
|
<!-- Toolbar -->
|
|
59
64
|
<div
|
|
60
65
|
t-if="env.model.getters.isReadonly()"
|
|
@@ -2341,30 +2346,6 @@
|
|
|
2341
2346
|
</label>
|
|
2342
2347
|
</t>
|
|
2343
2348
|
|
|
2344
|
-
<t t-name="o-spreadsheet-CarouselItemTitleCollapsible">
|
|
2345
|
-
<SidePanelCollapsible
|
|
2346
|
-
class="'o-carousel-item-title'"
|
|
2347
|
-
isInitiallyCollapsed="true"
|
|
2348
|
-
title.translate="Carousel Title">
|
|
2349
|
-
<t t-set-slot="content">
|
|
2350
|
-
<div class="ps-4">
|
|
2351
|
-
<TextInput
|
|
2352
|
-
value="title"
|
|
2353
|
-
onChange.bind="updateTitle"
|
|
2354
|
-
placeholder.translate="Title"
|
|
2355
|
-
alwaysShowBorder="true"
|
|
2356
|
-
/>
|
|
2357
|
-
<TextStyler
|
|
2358
|
-
style="style"
|
|
2359
|
-
updateStyle.bind="updateStyle"
|
|
2360
|
-
defaultStyle="defaultStyle"
|
|
2361
|
-
hasHorizontalAlign="false"
|
|
2362
|
-
/>
|
|
2363
|
-
</div>
|
|
2364
|
-
</t>
|
|
2365
|
-
</SidePanelCollapsible>
|
|
2366
|
-
</t>
|
|
2367
|
-
|
|
2368
2349
|
<t t-name="o-spreadsheet.BadgeSelection">
|
|
2369
2350
|
<div class="d-flex w-100 o-badge-selection">
|
|
2370
2351
|
<t t-foreach="props.choices" t-as="choice" t-key="choice.value">
|
|
@@ -4125,66 +4106,65 @@
|
|
|
4125
4106
|
|
|
4126
4107
|
<t t-name="o-spreadsheet-CarouselPanel">
|
|
4127
4108
|
<div class="o-carousel-panel h-100 overflow-auto">
|
|
4109
|
+
<Section title.translate="Carousel Title" class="'o-carousel-title'">
|
|
4110
|
+
<TextInput
|
|
4111
|
+
value="title?.text ?? ''"
|
|
4112
|
+
onChange.bind="updateTitleText"
|
|
4113
|
+
placeholder.translate="Add a Title"
|
|
4114
|
+
alwaysShowBorder="true"
|
|
4115
|
+
/>
|
|
4116
|
+
<TextStyler
|
|
4117
|
+
style="title ?? {}"
|
|
4118
|
+
updateStyle.bind="updateTitleStyle"
|
|
4119
|
+
defaultStyle="DEFAULT_CAROUSEL_TITLE_STYLE"
|
|
4120
|
+
hasHorizontalAlign="false"
|
|
4121
|
+
/>
|
|
4122
|
+
</Section>
|
|
4123
|
+
<div class="o-section pb-1 pt-0">
|
|
4124
|
+
<div class="o-section-title">Carousel Sections</div>
|
|
4125
|
+
</div>
|
|
4128
4126
|
<div class="o-carousel-preview-list overflow-auto" t-ref="previewList">
|
|
4129
|
-
<
|
|
4130
|
-
t-foreach="carouselItems"
|
|
4131
|
-
t-as="item"
|
|
4132
|
-
t-key="getItemId(item)"
|
|
4133
|
-
class="o-carousel-preview position-relative d-flex align-items-center border-bottom ps-1 pe-2 pt-3 pb-2 w-100"
|
|
4134
|
-
t-att-class="{ 'o-dragging': dragAndDrop.draggedItemId === getItemId(item) }"
|
|
4135
|
-
t-att-style="getPreviewDivStyle(item)">
|
|
4127
|
+
<t t-foreach="carouselItems" t-as="item" t-key="getItemId(item)">
|
|
4136
4128
|
<div
|
|
4137
|
-
class="o-
|
|
4138
|
-
t-
|
|
4139
|
-
|
|
4140
|
-
|
|
4141
|
-
|
|
4142
|
-
|
|
4143
|
-
|
|
4144
|
-
|
|
4145
|
-
|
|
4146
|
-
|
|
4147
|
-
<div class="o-carousel-preview-title text-truncate ms-2">
|
|
4148
|
-
<TextInput
|
|
4149
|
-
value="getItemTitle(item)"
|
|
4150
|
-
onChange="(newName) => this.renameCarouselItem(item, newName)"
|
|
4151
|
-
/>
|
|
4152
|
-
</div>
|
|
4153
|
-
<div class="ms-auto"/>
|
|
4154
|
-
<div
|
|
4155
|
-
t-if="item.type === 'chart'"
|
|
4156
|
-
class="o-edit-button o-button-icon pe-2 ps-1 flex-shrink-0 fa fa-pencil"
|
|
4157
|
-
t-on-click.stop="(ev) => this.editCarouselItem(item, ev)"
|
|
4158
|
-
title="Edit chart"
|
|
4159
|
-
/>
|
|
4160
|
-
<div
|
|
4161
|
-
class="o-delete-button o-button-icon pe-2 ps-1 flex-shrink-0"
|
|
4162
|
-
t-on-click.stop="(ev) => this.deleteCarouselItem(item, ev)"
|
|
4163
|
-
title="Remove chart">
|
|
4164
|
-
<t t-call="o-spreadsheet-Icon.TRASH_FILLED"/>
|
|
4165
|
-
</div>
|
|
4129
|
+
class="o-carousel-preview border-bottom pe-2 position-relative w-100 d-flex align-items-center"
|
|
4130
|
+
t-att-class="{
|
|
4131
|
+
'o-dragging': dragAndDrop.draggedItemId === getItemId(item),
|
|
4132
|
+
'o-selected': isCarouselItemActive(item)
|
|
4133
|
+
}"
|
|
4134
|
+
t-att-style="getPreviewDivStyle(item)">
|
|
4135
|
+
<div
|
|
4136
|
+
class="o-drag-handle h-100 position-absolute d-flex align-items-center o-button-icon ps-1 flex-shrink-0"
|
|
4137
|
+
t-on-pointerdown.stop.prevent="(ev) => this.onDragHandleMouseDown(item, ev)">
|
|
4138
|
+
<t t-call="o-spreadsheet-Icon.THIN_DRAG_HANDLE"/>
|
|
4166
4139
|
</div>
|
|
4167
|
-
<div
|
|
4168
|
-
|
|
4169
|
-
|
|
4170
|
-
|
|
4140
|
+
<div
|
|
4141
|
+
class="o-carousel-preview-icon ms-3 flex-shrink-0 d-flex align-items-center justify-content-center">
|
|
4142
|
+
<t t-call="{{getItemPreview(item)}}"/>
|
|
4143
|
+
</div>
|
|
4144
|
+
<div class="o-carousel-preview-title text-truncate ms-2">
|
|
4145
|
+
<TextInput
|
|
4146
|
+
value="getItemTitle(item)"
|
|
4147
|
+
onChange="(newName) => this.renameCarouselItem(item, newName)"
|
|
4171
4148
|
/>
|
|
4172
4149
|
</div>
|
|
4150
|
+
<div class="ms-auto"/>
|
|
4151
|
+
<div class="flex-shrink-0 d-flex align-self-start me-1">
|
|
4152
|
+
<CogWheelMenu items="getCogWheelMenuItems(item)"/>
|
|
4153
|
+
</div>
|
|
4173
4154
|
</div>
|
|
4174
|
-
</
|
|
4155
|
+
</t>
|
|
4175
4156
|
</div>
|
|
4176
4157
|
<div
|
|
4177
|
-
class="o-button-link o-carousel-add-chart float-end d-flex align-items-center
|
|
4178
|
-
t-on-click="addNewChartToCarousel"
|
|
4158
|
+
class="o-button-link o-carousel-add-chart float-end d-flex align-items-center py-4 pe-4 gap-2"
|
|
4159
|
+
t-on-click="addNewChartToCarousel"
|
|
4160
|
+
t-att-title="carouselAddChartInfoMessage">
|
|
4179
4161
|
+ Add chart
|
|
4180
|
-
<span t-att-title="carouselAddChartInfoMessage">
|
|
4181
|
-
<t t-call="o-spreadsheet-Icon.CIRCLE_INFO"/>
|
|
4182
|
-
</span>
|
|
4183
4162
|
</div>
|
|
4184
4163
|
<div
|
|
4185
4164
|
t-if="!hasDataView"
|
|
4186
|
-
class="o-button-link o-carousel-add-data-view float-end
|
|
4187
|
-
t-on-click="addDataViewToCarousel"
|
|
4165
|
+
class="o-button-link o-carousel-add-data-view float-end py-4 pe-4"
|
|
4166
|
+
t-on-click="addDataViewToCarousel"
|
|
4167
|
+
t-att-title="carouselDataViewMessage">
|
|
4188
4168
|
+ Add data view
|
|
4189
4169
|
</div>
|
|
4190
4170
|
</div>
|
|
@@ -4418,12 +4398,12 @@
|
|
|
4418
4398
|
<t t-set="secondaryIcon" t-value="menuItem.secondaryIcon(env)"/>
|
|
4419
4399
|
<div
|
|
4420
4400
|
t-if="isMenuRoot"
|
|
4421
|
-
class="o-menu-item-root align-
|
|
4401
|
+
class="o-menu-item-root ms-auto align-items-center d-flex"
|
|
4422
4402
|
t-call="o-spreadsheet-Icon.CARET_RIGHT"
|
|
4423
4403
|
/>
|
|
4424
4404
|
<div
|
|
4425
4405
|
t-elif="secondaryIcon"
|
|
4426
|
-
class="o-menu-item-root align-
|
|
4406
|
+
class="o-menu-item-root ms-auto align-items-center d-flex"
|
|
4427
4407
|
t-call="{{secondaryIcon}}"
|
|
4428
4408
|
/>
|
|
4429
4409
|
</div>
|
|
@@ -5114,6 +5094,11 @@
|
|
|
5114
5094
|
<i class="fa fa-pencil-square-o"/>
|
|
5115
5095
|
</div>
|
|
5116
5096
|
</t>
|
|
5097
|
+
<t t-name="o-spreadsheet-Icon.EXTERNAL">
|
|
5098
|
+
<div class="o-icon">
|
|
5099
|
+
<i class="fa fa-external-link"/>
|
|
5100
|
+
</div>
|
|
5101
|
+
</t>
|
|
5117
5102
|
<t t-name="o-spreadsheet-Icon.UNLINK">
|
|
5118
5103
|
<div class="o-icon">
|
|
5119
5104
|
<i class="fa fa-chain-broken"/>
|
|
@@ -5554,6 +5539,14 @@
|
|
|
5554
5539
|
/>
|
|
5555
5540
|
</svg>
|
|
5556
5541
|
</t>
|
|
5542
|
+
<t t-name="o-spreadsheet-Icon.DATA">
|
|
5543
|
+
<svg class="o-icon" viewBox="0 0 18 18">
|
|
5544
|
+
<path
|
|
5545
|
+
fill="currentColor"
|
|
5546
|
+
d="M.5 1.5a1 1 0 0 1 1-1h15a1 1 0 0 1 1 1v15a1 1 0 0 1-1 1h-15a1 1 0 0 1-1-1zM6 6V1.5H1.5V6m10 0V1.5h-5V6m10 0V1.5H12V6m-6 5.5v-5H1.5v5m10 0v-5h-5v5m10 0v-5H12v5m-6 5V12H1.5v4.5m10 0V12h-5v4.5m10 0V12H12v4.5"
|
|
5547
|
+
/>
|
|
5548
|
+
</svg>
|
|
5549
|
+
</t>
|
|
5557
5550
|
|
|
5558
5551
|
<t t-name="o-spreadsheet-IconPicker">
|
|
5559
5552
|
<div class="o-icon-picker">
|
|
@@ -6032,18 +6025,20 @@
|
|
|
6032
6025
|
</t>
|
|
6033
6026
|
|
|
6034
6027
|
<t t-name="o-spreadsheet-FullScreenChart">
|
|
6035
|
-
<div
|
|
6036
|
-
|
|
6037
|
-
|
|
6038
|
-
|
|
6028
|
+
<div class="position-absolute o-fullscreen-chart-overlay w-100 h-100 d-flex" t-if="chartId">
|
|
6029
|
+
<div
|
|
6030
|
+
class="position-absolute top-0 start-0 end-0 bottom-0"
|
|
6031
|
+
t-on-click="exitFullScreen"
|
|
6032
|
+
aria-hidden="true"
|
|
6033
|
+
/>
|
|
6039
6034
|
<button
|
|
6040
|
-
class="o-exit top-0 end-0 position-absolute o-button primary m-1"
|
|
6035
|
+
class="o-exit top-0 end-0 position-absolute o-button primary m-1 shadow"
|
|
6041
6036
|
t-on-click="exitFullScreen">
|
|
6042
6037
|
Exit fullscreen
|
|
6043
6038
|
</button>
|
|
6044
6039
|
<div class="flex-fill">
|
|
6045
6040
|
<div
|
|
6046
|
-
class="o-fullscreen-chart o-figure position-relative"
|
|
6041
|
+
class="o-fullscreen-chart o-figure position-relative border rounded shadow"
|
|
6047
6042
|
tabindex="1"
|
|
6048
6043
|
t-ref="fullScreenChart"
|
|
6049
6044
|
t-on-click.stop=""
|
|
@@ -6289,20 +6284,17 @@
|
|
|
6289
6284
|
<div class="o-carousel w-100 h-100 d-flex flex-column" t-on-dblclick="onCarouselDoubleClick">
|
|
6290
6285
|
<t t-set="selectedItem" t-value="selectedCarouselItem"/>
|
|
6291
6286
|
<div
|
|
6292
|
-
class="o-carousel-header d-flex flex-shrink-0 pe-1
|
|
6287
|
+
class="o-carousel-header d-flex align-items-baseline flex-shrink-0 pe-1 pe-auto"
|
|
6293
6288
|
t-att-class="{
|
|
6289
|
+
'border-bottom': env.isDashboard(),
|
|
6294
6290
|
'o-carousel-header-floating': !env.isDashboard() and selectedItem?.type === 'carouselDataView',
|
|
6295
6291
|
}"
|
|
6296
6292
|
t-att-style="headerStyle">
|
|
6297
|
-
<div
|
|
6298
|
-
class="o-carousel-title d-flex align-items-center"
|
|
6299
|
-
t-esc="title"
|
|
6300
|
-
t-att-style="titleStyle"
|
|
6301
|
-
/>
|
|
6293
|
+
<div class="o-carousel-title text-truncate" t-esc="title" t-att-style="titleStyle"/>
|
|
6302
6294
|
<div class="ms-auto d-flex">
|
|
6303
6295
|
<t t-foreach="carousel.items" t-as="item" t-key="item_index">
|
|
6304
6296
|
<div
|
|
6305
|
-
class="o-carousel-tab text-truncate px-2 mt-1
|
|
6297
|
+
class="o-carousel-tab text-truncate px-2 mt-1 flex-shrink-0"
|
|
6306
6298
|
t-att-class="{ 'selected': isItemSelected(item) }"
|
|
6307
6299
|
t-esc="getItemTitle(item)"
|
|
6308
6300
|
t-on-click.stop="() => this.onCarouselTabClick(item)"
|
|
@@ -6315,7 +6307,9 @@
|
|
|
6315
6307
|
class="o-carousel-empty w-100 flex-fill d-flex align-items-center justify-content-center">
|
|
6316
6308
|
<t t-call="o-spreadsheet-Icon.CAROUSEL"/>
|
|
6317
6309
|
</div>
|
|
6318
|
-
<div
|
|
6310
|
+
<div
|
|
6311
|
+
t-elif="selectedItem.type === 'chart'"
|
|
6312
|
+
class="o-carousel-content w-100 flex-fill position-relative">
|
|
6319
6313
|
<div class="o-chart-container w-100 h-100">
|
|
6320
6314
|
<t
|
|
6321
6315
|
t-component="chartComponent"
|
|
@@ -6323,6 +6317,11 @@
|
|
|
6323
6317
|
t-key="selectedItem.chartId"
|
|
6324
6318
|
/>
|
|
6325
6319
|
</div>
|
|
6320
|
+
<ChartDashboardMenu
|
|
6321
|
+
t-if="env.isDashboard()"
|
|
6322
|
+
chartId="selectedItem.chartId"
|
|
6323
|
+
t-key="selectedItem.chartId"
|
|
6324
|
+
/>
|
|
6326
6325
|
</div>
|
|
6327
6326
|
</div>
|
|
6328
6327
|
</t>
|
|
@@ -6350,7 +6349,7 @@
|
|
|
6350
6349
|
/>
|
|
6351
6350
|
<div class="o-figure-menu position-absolute m-2" t-if="!env.isDashboard()">
|
|
6352
6351
|
<div
|
|
6353
|
-
class="o-figure-menu-item"
|
|
6352
|
+
class="o-figure-menu-item d-flex-align-items-center"
|
|
6354
6353
|
t-if="!env.model.getters.isReadonly() and props.figureUI.tag !== 'carousel'"
|
|
6355
6354
|
t-on-click="showMenu"
|
|
6356
6355
|
t-ref="menuButton"
|
|
@@ -6364,46 +6363,63 @@
|
|
|
6364
6363
|
onClose="() => this.menuState.isOpen=false"
|
|
6365
6364
|
/>
|
|
6366
6365
|
</div>
|
|
6366
|
+
<div t-if="!env.isDashboard()" class="position-absolute top-0 start-0 pe-none w-100 h-100">
|
|
6367
|
+
<div
|
|
6368
|
+
class="o-figure-border pe-auto w-100 h-0 position-absolute pb-2"
|
|
6369
|
+
t-att-style="getBorderStyle('top')"
|
|
6370
|
+
/>
|
|
6371
|
+
<div
|
|
6372
|
+
class="o-figure-border pe-auto h-100 position-absolute start-0 ps-2"
|
|
6373
|
+
t-att-style="getBorderStyle('left')"
|
|
6374
|
+
/>
|
|
6375
|
+
<div
|
|
6376
|
+
class="o-figure-border pe-auto w-100 position-absolute bottom-0 pt-2"
|
|
6377
|
+
t-att-style="getBorderStyle('bottom')"
|
|
6378
|
+
/>
|
|
6379
|
+
<div
|
|
6380
|
+
class="o-figure-border pe-auto h-100 position-absolute end-0 pe-2"
|
|
6381
|
+
t-att-style="getBorderStyle('right')"
|
|
6382
|
+
/>
|
|
6383
|
+
</div>
|
|
6367
6384
|
</div>
|
|
6368
|
-
<div class="o-figure-border w-100 h-100 position-absolute pe-none" t-att-style="borderStyle"/>
|
|
6369
6385
|
<t t-if="isSelected and !env.isMobile()">
|
|
6370
6386
|
<div
|
|
6371
|
-
class="o-fig-anchor o-top"
|
|
6387
|
+
class="o-fig-anchor o-top pe-auto"
|
|
6372
6388
|
t-att-style="this.getResizerPosition('top')"
|
|
6373
6389
|
t-on-pointerdown="(ev) => this.clickAnchor(0,-1, ev)"
|
|
6374
6390
|
/>
|
|
6375
6391
|
<div
|
|
6376
|
-
class="o-fig-anchor o-topRight"
|
|
6392
|
+
class="o-fig-anchor o-topRight pe-auto"
|
|
6377
6393
|
t-att-style="this.getResizerPosition('top right')"
|
|
6378
6394
|
t-on-pointerdown="(ev) => this.clickAnchor(1,-1, ev)"
|
|
6379
6395
|
/>
|
|
6380
6396
|
<div
|
|
6381
|
-
class="o-fig-anchor o-right"
|
|
6397
|
+
class="o-fig-anchor o-right pe-auto"
|
|
6382
6398
|
t-att-style="this.getResizerPosition('right')"
|
|
6383
6399
|
t-on-pointerdown="(ev) => this.clickAnchor(1,0, ev)"
|
|
6384
6400
|
/>
|
|
6385
6401
|
<div
|
|
6386
|
-
class="o-fig-anchor o-bottomRight"
|
|
6402
|
+
class="o-fig-anchor o-bottomRight pe-auto"
|
|
6387
6403
|
t-att-style="this.getResizerPosition('bottom right')"
|
|
6388
6404
|
t-on-pointerdown="(ev) => this.clickAnchor(1,1, ev)"
|
|
6389
6405
|
/>
|
|
6390
6406
|
<div
|
|
6391
|
-
class="o-fig-anchor o-bottom"
|
|
6407
|
+
class="o-fig-anchor o-bottom pe-auto"
|
|
6392
6408
|
t-att-style="this.getResizerPosition('bottom')"
|
|
6393
6409
|
t-on-pointerdown="(ev) => this.clickAnchor(0,1, ev)"
|
|
6394
6410
|
/>
|
|
6395
6411
|
<div
|
|
6396
|
-
class="o-fig-anchor o-bottomLeft"
|
|
6412
|
+
class="o-fig-anchor o-bottomLeft pe-auto"
|
|
6397
6413
|
t-att-style="this.getResizerPosition('bottom left')"
|
|
6398
6414
|
t-on-pointerdown="(ev) => this.clickAnchor(-1,1, ev)"
|
|
6399
6415
|
/>
|
|
6400
6416
|
<div
|
|
6401
|
-
class="o-fig-anchor o-left"
|
|
6417
|
+
class="o-fig-anchor o-left pe-auto"
|
|
6402
6418
|
t-att-style="this.getResizerPosition('left')"
|
|
6403
6419
|
t-on-pointerdown="(ev) => this.clickAnchor(-1,0, ev)"
|
|
6404
6420
|
/>
|
|
6405
6421
|
<div
|
|
6406
|
-
class="o-fig-anchor o-topLeft"
|
|
6422
|
+
class="o-fig-anchor o-topLeft pe-auto"
|
|
6407
6423
|
t-att-style="this.getResizerPosition('top left')"
|
|
6408
6424
|
t-on-pointerdown="(ev) => this.clickAnchor(-1,-1, ev)"
|
|
6409
6425
|
/>
|
|
@@ -6425,18 +6441,19 @@
|
|
|
6425
6441
|
|
|
6426
6442
|
<t t-name="o-spreadsheet-ChartDashboardMenu">
|
|
6427
6443
|
<div class="o-dashboard-chart-select position-absolute top-0 end-0" t-on-click.stop="">
|
|
6428
|
-
<div class="d-flex
|
|
6444
|
+
<div class="d-flex align-items-center gap-1 p-1 rounded" t-att-style="backgroundColor">
|
|
6429
6445
|
<t t-foreach="getMenuItems()" t-as="item" t-key="item.id">
|
|
6430
|
-
<
|
|
6431
|
-
t-attf-class=" {{item.
|
|
6432
|
-
class="o-chart-dashboard-item btn
|
|
6446
|
+
<div
|
|
6447
|
+
t-attf-class=" {{item.class}}"
|
|
6448
|
+
class="o-chart-dashboard-item btn border-0 lh-1 p-1 d-flex align-items-center justify-content-center"
|
|
6433
6449
|
t-att-title="item.label"
|
|
6434
6450
|
t-on-click="item.onClick"
|
|
6435
|
-
t-att-data-id="item.id"
|
|
6436
|
-
|
|
6451
|
+
t-att-data-id="item.id">
|
|
6452
|
+
<t t-if="item.preview" t-call="{{item.preview}}"/>
|
|
6453
|
+
</div>
|
|
6437
6454
|
</t>
|
|
6438
6455
|
<button
|
|
6439
|
-
class="o-chart-dashboard-item btn
|
|
6456
|
+
class="o-chart-dashboard-item btn text-muted lh-1 p-1 fa fa-ellipsis-v"
|
|
6440
6457
|
t-on-click="openContextMenu"
|
|
6441
6458
|
/>
|
|
6442
6459
|
</div>
|
|
@@ -6514,8 +6531,13 @@
|
|
|
6514
6531
|
t-on-click="(ev) => this.selectClickableCell(ev, clickableCell)"
|
|
6515
6532
|
t-on-auxclick="(ev) => this.selectClickableCell(ev, clickableCell)"
|
|
6516
6533
|
t-on-contextmenu.prevent=""
|
|
6517
|
-
t-att-style="getCellClickableStyle(clickableCell.coordinates)"
|
|
6518
|
-
|
|
6534
|
+
t-att-style="getCellClickableStyle(clickableCell.coordinates)">
|
|
6535
|
+
<t
|
|
6536
|
+
t-if="clickableCell.component"
|
|
6537
|
+
t-component="clickableCell.component"
|
|
6538
|
+
t-props="clickableCell.componentProps"
|
|
6539
|
+
/>
|
|
6540
|
+
</div>
|
|
6519
6541
|
</GridOverlay>
|
|
6520
6542
|
<canvas t-ref="canvas"/>
|
|
6521
6543
|
<GridPopover
|
|
@@ -6530,6 +6552,17 @@
|
|
|
6530
6552
|
</div>
|
|
6531
6553
|
</t>
|
|
6532
6554
|
|
|
6555
|
+
<t t-name="o-spreadsheet-ClickableCellSortIcon">
|
|
6556
|
+
<div class="w-100 h-100 d-flex flex-column align-items-end" t-att-class="verticalJustifyClass">
|
|
6557
|
+
<span
|
|
6558
|
+
t-if="props.sortDirection === 'none'"
|
|
6559
|
+
class="o-icon sorting-icon pb-1"
|
|
6560
|
+
t-att-style="style">
|
|
6561
|
+
<i class="fa fa-small fa-sort"/>
|
|
6562
|
+
</span>
|
|
6563
|
+
</div>
|
|
6564
|
+
</t>
|
|
6565
|
+
|
|
6533
6566
|
<t t-name="o-spreadsheet-TopBarComposer">
|
|
6534
6567
|
<div class="o-topbar-composer-container w-100">
|
|
6535
6568
|
<div
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@odoo/o-spreadsheet",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "19.0.1",
|
|
4
4
|
"description": "A spreadsheet component",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/o-spreadsheet.cjs.js",
|
|
@@ -147,6 +147,6 @@
|
|
|
147
147
|
]
|
|
148
148
|
},
|
|
149
149
|
"publishConfig": {
|
|
150
|
-
"tag": "
|
|
150
|
+
"tag": "latest"
|
|
151
151
|
}
|
|
152
152
|
}
|