@odoo/o-spreadsheet 19.2.22 → 19.2.23
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.css +3 -3
- package/dist/o_spreadsheet.esm.js +23 -13
- package/dist/o_spreadsheet.iife.js +23 -13
- package/dist/o_spreadsheet.iife.min.js +234 -234
- package/dist/o_spreadsheet.xml +6 -8
- package/package.json +1 -1
package/dist/o_spreadsheet.css
CHANGED
|
@@ -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.2.
|
|
6
|
-
* @date 2026-07-
|
|
7
|
-
* @hash
|
|
5
|
+
* @version 19.2.23
|
|
6
|
+
* @date 2026-07-30T06:54:22.421Z
|
|
7
|
+
* @hash 7914fd5
|
|
8
8
|
*/
|
|
9
9
|
:root {
|
|
10
10
|
--os-gray-100: light-dark(#f9fafb, #1b1d26);
|
|
@@ -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.2.
|
|
6
|
-
* @date 2026-07-
|
|
7
|
-
* @hash
|
|
5
|
+
* @version 19.2.23
|
|
6
|
+
* @date 2026-07-30T06:54:20.810Z
|
|
7
|
+
* @hash 7914fd5
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
import { App, Component, blockDom, markRaw, onMounted, onPatched, onWillPatch, onWillStart, onWillUnmount, onWillUpdateProps, status, toRaw, useChildSubEnv, useComponent, useEffect, useEnv, useExternalListener, useRef, useState, useSubEnv, whenReady, xml } from "@odoo/owl";
|
|
@@ -10552,6 +10552,19 @@ function isOtherMobileOS() {
|
|
|
10552
10552
|
function isMobileOS() {
|
|
10553
10553
|
return isAndroid() || isIOS() || isOtherMobileOS();
|
|
10554
10554
|
}
|
|
10555
|
+
const INTERACTIVE_ELEMENT_SELECTOR = "select, input, textarea, button, .o-select, .os-input, .o-input, .o-button, .o-button-icon, .o-button-link, .o-composer";
|
|
10556
|
+
/** Check if there is an interactive element (input, select, button, ...) between the event.target and event.currentTarget (inclusive)*/
|
|
10557
|
+
function hasInteractiveElementInEventTree(event) {
|
|
10558
|
+
const target = event.target;
|
|
10559
|
+
const root = event.currentTarget;
|
|
10560
|
+
if (!root || !target || !root.contains(target)) return false;
|
|
10561
|
+
let node = target;
|
|
10562
|
+
while (node && node !== root) {
|
|
10563
|
+
if (node.matches(INTERACTIVE_ELEMENT_SELECTOR)) return true;
|
|
10564
|
+
node = node.parentElement;
|
|
10565
|
+
}
|
|
10566
|
+
return root.matches(INTERACTIVE_ELEMENT_SELECTOR);
|
|
10567
|
+
}
|
|
10555
10568
|
|
|
10556
10569
|
//#endregion
|
|
10557
10570
|
//#region src/components/helpers/zoom.ts
|
|
@@ -44251,13 +44264,9 @@ var PivotLayoutConfigurator = class extends Component {
|
|
|
44251
44264
|
dimensionsRef = useRef("pivot-dimensions");
|
|
44252
44265
|
dragAndDrop = useDragAndDropListItems();
|
|
44253
44266
|
AGGREGATORS = AGGREGATORS;
|
|
44254
|
-
composerFocus;
|
|
44255
44267
|
isDateOrDatetimeField = isDateOrDatetimeField;
|
|
44256
|
-
setup() {
|
|
44257
|
-
this.composerFocus = useStore(ComposerFocusStore);
|
|
44258
|
-
}
|
|
44259
44268
|
startDragAndDrop(dimension, event) {
|
|
44260
|
-
if (event.button !== 0 || event
|
|
44269
|
+
if (event.button !== 0 || hasInteractiveElementInEventTree(event)) return;
|
|
44261
44270
|
const rects = this.getDimensionElementsRects();
|
|
44262
44271
|
const { columns, rows } = this.props.definition;
|
|
44263
44272
|
const draggableIds = [
|
|
@@ -44297,7 +44306,7 @@ var PivotLayoutConfigurator = class extends Component {
|
|
|
44297
44306
|
return field.type === "date" ? this.props.dateGranularities : this.props.datetimeGranularities;
|
|
44298
44307
|
}
|
|
44299
44308
|
startDragAndDropMeasures(measure, event) {
|
|
44300
|
-
if (event.button !== 0 || event
|
|
44309
|
+
if (event.button !== 0 || hasInteractiveElementInEventTree(event)) return;
|
|
44301
44310
|
const rects = this.getDimensionElementsRects();
|
|
44302
44311
|
const { measures, columns, rows } = this.props.definition;
|
|
44303
44312
|
const draggableIds = measures.map((m) => m.id);
|
|
@@ -67830,7 +67839,7 @@ var SheetUIPlugin = class extends UIPlugin {
|
|
|
67830
67839
|
if (contentWidth === 0) return 0;
|
|
67831
67840
|
contentWidth += 2 * 4;
|
|
67832
67841
|
if (style.wrapping === "wrap") {
|
|
67833
|
-
const colWidth = this.getters.getColSize(
|
|
67842
|
+
const colWidth = this.getters.getColSize(position.sheetId, position.col);
|
|
67834
67843
|
return Math.min(colWidth, contentWidth);
|
|
67835
67844
|
}
|
|
67836
67845
|
return contentWidth;
|
|
@@ -73149,6 +73158,7 @@ var SpreadsheetDashboard = class extends Component {
|
|
|
73149
73158
|
return toRaw(this.clickableCellsStore.clickableCells);
|
|
73150
73159
|
}
|
|
73151
73160
|
selectClickableCell(ev, clickableCell) {
|
|
73161
|
+
if (![0, 1].includes(ev.button)) return;
|
|
73152
73162
|
const { position, action } = clickableCell;
|
|
73153
73163
|
action(position, this.env, isMiddleClickOrCtrlClick(ev));
|
|
73154
73164
|
}
|
|
@@ -81723,6 +81733,6 @@ const chartHelpers = {
|
|
|
81723
81733
|
//#endregion
|
|
81724
81734
|
export { AbstractCellClipboardHandler, AbstractChart, AbstractFigureClipboardHandler, CellErrorType, ClientDisconnectedError, CommandResult, CompiledFormula, CorePlugin, CoreViewPlugin, DEFAULT_LOCALE, DEFAULT_LOCALES, DispatchResult, EvaluationError, LocalTransportService, Model, PivotRuntimeDefinition, Registry, Revision, SPREADSHEET_DIMENSIONS, Spreadsheet, SpreadsheetPivotTable, UIPlugin, __info__, addFunction, addRenderingLayer, astToFormula, canExecuteInReadonly, categories, chartHelpers, components, constants, convertAstNodes, coreTypes, createAutocompleteArgumentsProvider, findCellInNewZone, functionCache, getCaretDownSvg, getCaretUpSvg, helpers, hooks, invalidateCFEvaluationCommands, invalidateChartEvaluationCommands, invalidateDependenciesCommands, invalidateEvaluationCommands, isCoreCommand, isSheetDependent, iterateAstNodes, links, load, lockedSheetAllowedCommands, parse, parseTokens, readonlyAllowedCommands, registries, setDefaultSheetViewSize, setTranslationMethod, stores, tokenColors, tokenize };
|
|
81725
81735
|
|
|
81726
|
-
__info__.version = "19.2.
|
|
81727
|
-
__info__.date = "2026-07-
|
|
81728
|
-
__info__.hash = "
|
|
81736
|
+
__info__.version = "19.2.23";
|
|
81737
|
+
__info__.date = "2026-07-30T06:54:20.810Z";
|
|
81738
|
+
__info__.hash = "7914fd5";
|
|
@@ -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.2.
|
|
6
|
-
* @date 2026-07-
|
|
7
|
-
* @hash
|
|
5
|
+
* @version 19.2.23
|
|
6
|
+
* @date 2026-07-30T06:54:20.810Z
|
|
7
|
+
* @hash 7914fd5
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
(function(exports, _odoo_owl) {
|
|
@@ -10554,6 +10554,19 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
10554
10554
|
function isMobileOS() {
|
|
10555
10555
|
return isAndroid() || isIOS() || isOtherMobileOS();
|
|
10556
10556
|
}
|
|
10557
|
+
const INTERACTIVE_ELEMENT_SELECTOR = "select, input, textarea, button, .o-select, .os-input, .o-input, .o-button, .o-button-icon, .o-button-link, .o-composer";
|
|
10558
|
+
/** Check if there is an interactive element (input, select, button, ...) between the event.target and event.currentTarget (inclusive)*/
|
|
10559
|
+
function hasInteractiveElementInEventTree(event) {
|
|
10560
|
+
const target = event.target;
|
|
10561
|
+
const root = event.currentTarget;
|
|
10562
|
+
if (!root || !target || !root.contains(target)) return false;
|
|
10563
|
+
let node = target;
|
|
10564
|
+
while (node && node !== root) {
|
|
10565
|
+
if (node.matches(INTERACTIVE_ELEMENT_SELECTOR)) return true;
|
|
10566
|
+
node = node.parentElement;
|
|
10567
|
+
}
|
|
10568
|
+
return root.matches(INTERACTIVE_ELEMENT_SELECTOR);
|
|
10569
|
+
}
|
|
10557
10570
|
|
|
10558
10571
|
//#endregion
|
|
10559
10572
|
//#region src/components/helpers/zoom.ts
|
|
@@ -44253,13 +44266,9 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
44253
44266
|
dimensionsRef = (0, _odoo_owl.useRef)("pivot-dimensions");
|
|
44254
44267
|
dragAndDrop = useDragAndDropListItems();
|
|
44255
44268
|
AGGREGATORS = AGGREGATORS;
|
|
44256
|
-
composerFocus;
|
|
44257
44269
|
isDateOrDatetimeField = isDateOrDatetimeField;
|
|
44258
|
-
setup() {
|
|
44259
|
-
this.composerFocus = useStore(ComposerFocusStore);
|
|
44260
|
-
}
|
|
44261
44270
|
startDragAndDrop(dimension, event) {
|
|
44262
|
-
if (event.button !== 0 || event
|
|
44271
|
+
if (event.button !== 0 || hasInteractiveElementInEventTree(event)) return;
|
|
44263
44272
|
const rects = this.getDimensionElementsRects();
|
|
44264
44273
|
const { columns, rows } = this.props.definition;
|
|
44265
44274
|
const draggableIds = [
|
|
@@ -44299,7 +44308,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
44299
44308
|
return field.type === "date" ? this.props.dateGranularities : this.props.datetimeGranularities;
|
|
44300
44309
|
}
|
|
44301
44310
|
startDragAndDropMeasures(measure, event) {
|
|
44302
|
-
if (event.button !== 0 || event
|
|
44311
|
+
if (event.button !== 0 || hasInteractiveElementInEventTree(event)) return;
|
|
44303
44312
|
const rects = this.getDimensionElementsRects();
|
|
44304
44313
|
const { measures, columns, rows } = this.props.definition;
|
|
44305
44314
|
const draggableIds = measures.map((m) => m.id);
|
|
@@ -67832,7 +67841,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
67832
67841
|
if (contentWidth === 0) return 0;
|
|
67833
67842
|
contentWidth += 2 * 4;
|
|
67834
67843
|
if (style.wrapping === "wrap") {
|
|
67835
|
-
const colWidth = this.getters.getColSize(
|
|
67844
|
+
const colWidth = this.getters.getColSize(position.sheetId, position.col);
|
|
67836
67845
|
return Math.min(colWidth, contentWidth);
|
|
67837
67846
|
}
|
|
67838
67847
|
return contentWidth;
|
|
@@ -73151,6 +73160,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
73151
73160
|
return (0, _odoo_owl.toRaw)(this.clickableCellsStore.clickableCells);
|
|
73152
73161
|
}
|
|
73153
73162
|
selectClickableCell(ev, clickableCell) {
|
|
73163
|
+
if (![0, 1].includes(ev.button)) return;
|
|
73154
73164
|
const { position, action } = clickableCell;
|
|
73155
73165
|
action(position, this.env, isMiddleClickOrCtrlClick(ev));
|
|
73156
73166
|
}
|
|
@@ -81783,8 +81793,8 @@ exports.stores = stores;
|
|
|
81783
81793
|
exports.tokenColors = tokenColors;
|
|
81784
81794
|
exports.tokenize = tokenize;
|
|
81785
81795
|
|
|
81786
|
-
__info__.version = "19.2.
|
|
81787
|
-
__info__.date = "2026-07-
|
|
81788
|
-
__info__.hash = "
|
|
81796
|
+
__info__.version = "19.2.23";
|
|
81797
|
+
__info__.date = "2026-07-30T06:54:20.810Z";
|
|
81798
|
+
__info__.hash = "7914fd5";
|
|
81789
81799
|
|
|
81790
81800
|
})(this.o_spreadsheet = this.o_spreadsheet || {}, owl);
|