@odoo/o-spreadsheet 18.4.16 → 18.4.18
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 +70 -42
- package/dist/o-spreadsheet.d.ts +11 -7
- package/dist/o-spreadsheet.esm.js +70 -42
- package/dist/o-spreadsheet.iife.js +70 -42
- package/dist/o-spreadsheet.iife.min.js +13 -13
- package/dist/o_spreadsheet.xml +8 -6
- package/package.json +2 -2
|
@@ -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 18.4.
|
|
6
|
-
* @date 2025-11-
|
|
7
|
-
* @hash
|
|
5
|
+
* @version 18.4.18
|
|
6
|
+
* @date 2025-11-24T07:42:07.821Z
|
|
7
|
+
* @hash 4f83667
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
(function (exports, owl) {
|
|
@@ -5927,7 +5927,10 @@
|
|
|
5927
5927
|
* Check if a zone is inside another
|
|
5928
5928
|
*/
|
|
5929
5929
|
function isZoneInside(smallZone, biggerZone) {
|
|
5930
|
-
return
|
|
5930
|
+
return (smallZone.left >= biggerZone.left &&
|
|
5931
|
+
smallZone.right <= biggerZone.right &&
|
|
5932
|
+
smallZone.top >= biggerZone.top &&
|
|
5933
|
+
smallZone.bottom <= biggerZone.bottom);
|
|
5931
5934
|
}
|
|
5932
5935
|
function zoneToDimension(zone) {
|
|
5933
5936
|
return {
|
|
@@ -6488,7 +6491,7 @@
|
|
|
6488
6491
|
let sheetName = "";
|
|
6489
6492
|
if (prefixSheet) {
|
|
6490
6493
|
if (range.invalidSheetName) {
|
|
6491
|
-
sheetName = range.invalidSheetName;
|
|
6494
|
+
sheetName = getCanonicalSymbolName(range.invalidSheetName);
|
|
6492
6495
|
}
|
|
6493
6496
|
else {
|
|
6494
6497
|
sheetName = getCanonicalSymbolName(getSheetName(range.sheetId));
|
|
@@ -18539,7 +18542,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
18539
18542
|
function setXcToFixedReferenceType(xc, referenceType) {
|
|
18540
18543
|
let sheetName;
|
|
18541
18544
|
({ sheetName, xc } = splitReference(xc));
|
|
18542
|
-
sheetName = sheetName ? sheetName + "!" : "";
|
|
18545
|
+
sheetName = sheetName ? getCanonicalSymbolName(sheetName) + "!" : "";
|
|
18543
18546
|
xc = xc.replace(/\$/g, "");
|
|
18544
18547
|
const splitIndex = xc.indexOf(":");
|
|
18545
18548
|
if (splitIndex >= 0) {
|
|
@@ -23106,7 +23109,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
23106
23109
|
return {
|
|
23107
23110
|
background: context.background,
|
|
23108
23111
|
type: "scorecard",
|
|
23109
|
-
keyValue: context.range
|
|
23112
|
+
keyValue: context.range?.[0]?.dataRange,
|
|
23110
23113
|
title: context.title || { text: "" },
|
|
23111
23114
|
baselineMode: DEFAULT_SCORECARD_BASELINE_MODE,
|
|
23112
23115
|
baselineColorUp: DEFAULT_SCORECARD_BASELINE_COLOR_UP,
|
|
@@ -27427,7 +27430,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
27427
27430
|
background: context.background,
|
|
27428
27431
|
title: context.title || { text: "" },
|
|
27429
27432
|
type: "gauge",
|
|
27430
|
-
dataRange: context.range
|
|
27433
|
+
dataRange: context.range?.[0]?.dataRange,
|
|
27431
27434
|
sectionRule: {
|
|
27432
27435
|
colors: {
|
|
27433
27436
|
lowerColor: DEFAULT_GAUGE_LOWER_COLOR,
|
|
@@ -32605,6 +32608,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
32605
32608
|
this.highlightStore.register(this);
|
|
32606
32609
|
this.onDispose(() => {
|
|
32607
32610
|
this.highlightStore.unRegister(this);
|
|
32611
|
+
this._cancelEdition();
|
|
32608
32612
|
});
|
|
32609
32613
|
}
|
|
32610
32614
|
handleEvent(event) {
|
|
@@ -32639,6 +32643,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
32639
32643
|
}
|
|
32640
32644
|
this.selectionStart = start;
|
|
32641
32645
|
this.selectionEnd = end;
|
|
32646
|
+
this.editionMode = "editing";
|
|
32642
32647
|
this.computeFormulaCursorContext();
|
|
32643
32648
|
this.computeParenthesisRelatedToCursor();
|
|
32644
32649
|
this.updateAutoCompleteProvider();
|
|
@@ -33314,10 +33319,13 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
33314
33319
|
hideHelp() {
|
|
33315
33320
|
this.autoComplete.hide();
|
|
33316
33321
|
}
|
|
33317
|
-
autoCompleteOrStop(direction) {
|
|
33322
|
+
autoCompleteOrStop(direction, assistantForcedClosed = false) {
|
|
33318
33323
|
if (this.editionMode !== "inactive") {
|
|
33319
33324
|
const autoComplete = this.autoComplete;
|
|
33320
|
-
|
|
33325
|
+
const suppressAutocomplete = assistantForcedClosed && this.canBeToggled;
|
|
33326
|
+
if (!suppressAutocomplete &&
|
|
33327
|
+
autoComplete.provider &&
|
|
33328
|
+
autoComplete.selectedIndex !== undefined) {
|
|
33321
33329
|
const autoCompleteValue = autoComplete.provider.proposals[autoComplete.selectedIndex]?.text;
|
|
33322
33330
|
if (autoCompleteValue) {
|
|
33323
33331
|
this.autoComplete.provider?.selectProposal(autoCompleteValue);
|
|
@@ -33660,16 +33668,12 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
33660
33668
|
processTabKey(ev, direction) {
|
|
33661
33669
|
ev.preventDefault();
|
|
33662
33670
|
ev.stopPropagation();
|
|
33663
|
-
|
|
33664
|
-
this.props.composerStore.autoCompleteOrStop(direction);
|
|
33665
|
-
}
|
|
33671
|
+
this.props.composerStore.autoCompleteOrStop(direction, this.assistant.forcedClosed);
|
|
33666
33672
|
}
|
|
33667
33673
|
processEnterKey(ev, direction) {
|
|
33668
33674
|
ev.preventDefault();
|
|
33669
33675
|
ev.stopPropagation();
|
|
33670
|
-
|
|
33671
|
-
this.props.composerStore.autoCompleteOrStop(direction);
|
|
33672
|
-
}
|
|
33676
|
+
this.props.composerStore.autoCompleteOrStop(direction, this.assistant.forcedClosed);
|
|
33673
33677
|
}
|
|
33674
33678
|
processNewLineEvent(ev) {
|
|
33675
33679
|
ev.preventDefault();
|
|
@@ -33845,7 +33849,6 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
33845
33849
|
return;
|
|
33846
33850
|
}
|
|
33847
33851
|
const newSelection = this.contentHelper.getCurrentSelection();
|
|
33848
|
-
this.props.composerStore.stopComposerRangeSelection();
|
|
33849
33852
|
this.props.onComposerContentFocused();
|
|
33850
33853
|
this.props.composerStore.changeComposerCursorSelection(newSelection.start, newSelection.end);
|
|
33851
33854
|
this.processTokenAtCursor();
|
|
@@ -47366,10 +47369,11 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
47366
47369
|
this.state.waitingForMove = false;
|
|
47367
47370
|
}
|
|
47368
47371
|
onMouseMove(ev) {
|
|
47369
|
-
if (this.env.isMobile()
|
|
47370
|
-
|
|
47371
|
-
|
|
47372
|
-
|
|
47372
|
+
if (this.env.isMobile() ||
|
|
47373
|
+
this.env.model.getters.isReadonly() ||
|
|
47374
|
+
this.state.isResizing ||
|
|
47375
|
+
this.state.isMoving ||
|
|
47376
|
+
this.state.isSelecting) {
|
|
47373
47377
|
return;
|
|
47374
47378
|
}
|
|
47375
47379
|
this._computeHandleDisplay(ev);
|
|
@@ -47436,6 +47440,10 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
47436
47440
|
if (index < 0) {
|
|
47437
47441
|
return;
|
|
47438
47442
|
}
|
|
47443
|
+
if (this.env.model.getters.isReadonly()) {
|
|
47444
|
+
this._selectElement(index, false);
|
|
47445
|
+
return;
|
|
47446
|
+
}
|
|
47439
47447
|
if (this.state.waitingForMove) {
|
|
47440
47448
|
if (!this.env.model.getters.isGridSelectionActive()) {
|
|
47441
47449
|
this._selectElement(index, false);
|
|
@@ -47995,6 +48003,9 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
47995
48003
|
break;
|
|
47996
48004
|
}
|
|
47997
48005
|
}
|
|
48006
|
+
finalize() {
|
|
48007
|
+
this.zonesWithPreventedAnimationsInNextFrame = recomputeZones(this.zonesWithPreventedAnimationsInNextFrame);
|
|
48008
|
+
}
|
|
47998
48009
|
get renderingLayers() {
|
|
47999
48010
|
return ["Background", "Headers"];
|
|
48000
48011
|
}
|
|
@@ -48793,7 +48804,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
48793
48804
|
const verticalScrollFactor = 1;
|
|
48794
48805
|
const horizontalScrollFactor = 1;
|
|
48795
48806
|
const resetTimeoutDuration = 100;
|
|
48796
|
-
function useTouchScroll(ref, updateScroll, canMoveUp) {
|
|
48807
|
+
function useTouchScroll(ref, updateScroll, canMoveUp, canMoveDown) {
|
|
48797
48808
|
let lastX = 0;
|
|
48798
48809
|
let lastY = 0;
|
|
48799
48810
|
let velocityX = 0;
|
|
@@ -48830,7 +48841,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
48830
48841
|
lastX = clientX;
|
|
48831
48842
|
lastY = clientY;
|
|
48832
48843
|
lastTime = currentTime;
|
|
48833
|
-
if (canMoveUp()) {
|
|
48844
|
+
if ((deltaY < 0 && canMoveUp()) || (deltaY > 0 && canMoveDown())) {
|
|
48834
48845
|
if (event.cancelable) {
|
|
48835
48846
|
event.preventDefault();
|
|
48836
48847
|
}
|
|
@@ -54730,7 +54741,6 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
54730
54741
|
// replace the whole token
|
|
54731
54742
|
start = tokenAtCursor.start;
|
|
54732
54743
|
}
|
|
54733
|
-
this.composer.stopComposerRangeSelection();
|
|
54734
54744
|
this.composer.changeComposerCursorSelection(start, end);
|
|
54735
54745
|
this.composer.replaceComposerCursorSelection(value);
|
|
54736
54746
|
}
|
|
@@ -54748,7 +54758,6 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
54748
54758
|
// replace the whole token
|
|
54749
54759
|
start = tokenAtCursor.start;
|
|
54750
54760
|
}
|
|
54751
|
-
this.composer.stopComposerRangeSelection();
|
|
54752
54761
|
this.composer.changeComposerCursorSelection(start, end);
|
|
54753
54762
|
this.composer.replaceComposerCursorSelection(value);
|
|
54754
54763
|
}
|
|
@@ -57447,6 +57456,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
57447
57456
|
getPanelProps(panelInfo) {
|
|
57448
57457
|
const state = this.computeState(panelInfo);
|
|
57449
57458
|
if (state.isOpen) {
|
|
57459
|
+
panelInfo.currentPanelProps = state.props ?? panelInfo.currentPanelProps;
|
|
57450
57460
|
return state.props ?? {};
|
|
57451
57461
|
}
|
|
57452
57462
|
return {};
|
|
@@ -57458,11 +57468,11 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
57458
57468
|
}
|
|
57459
57469
|
return undefined;
|
|
57460
57470
|
}
|
|
57461
|
-
open(componentTag,
|
|
57471
|
+
open(componentTag, currentPanelProps = {}) {
|
|
57462
57472
|
if (this.screenWidthStore.isSmall) {
|
|
57463
57473
|
return;
|
|
57464
57474
|
}
|
|
57465
|
-
const newPanelInfo = {
|
|
57475
|
+
const newPanelInfo = { currentPanelProps, componentTag, size: DEFAULT_SIDE_PANEL_SIZE };
|
|
57466
57476
|
const state = this.computeState(newPanelInfo);
|
|
57467
57477
|
if (!state.isOpen) {
|
|
57468
57478
|
return;
|
|
@@ -57486,8 +57496,8 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
57486
57496
|
}
|
|
57487
57497
|
this._openPanel("secondaryPanel", newPanelInfo, state);
|
|
57488
57498
|
}
|
|
57489
|
-
replace(componentTag, currentPanelKey,
|
|
57490
|
-
const newPanelInfo = {
|
|
57499
|
+
replace(componentTag, currentPanelKey, currentPanelProps = {}) {
|
|
57500
|
+
const newPanelInfo = { currentPanelProps, componentTag, size: DEFAULT_SIDE_PANEL_SIZE };
|
|
57491
57501
|
const state = this.computeState(newPanelInfo);
|
|
57492
57502
|
if (!state.isOpen) {
|
|
57493
57503
|
return;
|
|
@@ -57517,10 +57527,10 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
57517
57527
|
_openPanel(panel, newPanel, state) {
|
|
57518
57528
|
const currentPanel = this[panel];
|
|
57519
57529
|
if (currentPanel && newPanel.componentTag !== currentPanel.componentTag) {
|
|
57520
|
-
currentPanel.
|
|
57530
|
+
currentPanel.currentPanelProps?.onCloseSidePanel?.();
|
|
57521
57531
|
}
|
|
57522
57532
|
this[panel] = {
|
|
57523
|
-
|
|
57533
|
+
currentPanelProps: state.props ?? {},
|
|
57524
57534
|
componentTag: newPanel.componentTag,
|
|
57525
57535
|
size: currentPanel?.size || DEFAULT_SIDE_PANEL_SIZE,
|
|
57526
57536
|
isCollapsed: currentPanel?.isCollapsed || false,
|
|
@@ -57542,16 +57552,16 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
57542
57552
|
close() {
|
|
57543
57553
|
if (this.mainPanel?.isPinned) {
|
|
57544
57554
|
if (this.secondaryPanel) {
|
|
57545
|
-
this.secondaryPanel.
|
|
57555
|
+
this.secondaryPanel.currentPanelProps.onCloseSidePanel?.();
|
|
57546
57556
|
this.secondaryPanel = undefined;
|
|
57547
57557
|
}
|
|
57548
57558
|
return;
|
|
57549
57559
|
}
|
|
57550
|
-
this.mainPanel?.
|
|
57560
|
+
this.mainPanel?.currentPanelProps.onCloseSidePanel?.();
|
|
57551
57561
|
this.mainPanel = undefined;
|
|
57552
57562
|
}
|
|
57553
57563
|
closeMainPanel() {
|
|
57554
|
-
this.mainPanel?.
|
|
57564
|
+
this.mainPanel?.currentPanelProps.onCloseSidePanel?.();
|
|
57555
57565
|
this.mainPanel = this.secondaryPanel || undefined;
|
|
57556
57566
|
this.secondaryPanel = undefined;
|
|
57557
57567
|
}
|
|
@@ -57583,7 +57593,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
57583
57593
|
}
|
|
57584
57594
|
this.mainPanel.isPinned = !this.mainPanel.isPinned;
|
|
57585
57595
|
if (!this.mainPanel.isPinned && this.secondaryPanel) {
|
|
57586
|
-
this.secondaryPanel?.
|
|
57596
|
+
this.secondaryPanel?.currentPanelProps.onCloseSidePanel?.();
|
|
57587
57597
|
this.mainPanel = this.secondaryPanel;
|
|
57588
57598
|
this.secondaryPanel = undefined;
|
|
57589
57599
|
}
|
|
@@ -57602,7 +57612,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
57602
57612
|
panelInfo.size = COLLAPSED_SIDE_PANEL_SIZE;
|
|
57603
57613
|
}
|
|
57604
57614
|
}
|
|
57605
|
-
computeState({ componentTag, initialPanelProps }) {
|
|
57615
|
+
computeState({ componentTag, currentPanelProps: initialPanelProps, }) {
|
|
57606
57616
|
const customComputeState = sidePanelRegistry.get(componentTag).computeState;
|
|
57607
57617
|
const state = customComputeState
|
|
57608
57618
|
? customComputeState(this.getters, initialPanelProps)
|
|
@@ -57612,7 +57622,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
57612
57622
|
changeSpreadsheetWidth(width) {
|
|
57613
57623
|
this.availableWidth = width - MIN_SHEET_VIEW_WIDTH;
|
|
57614
57624
|
if (this.secondaryPanel && width - this.totalPanelSize < MIN_SHEET_VIEW_WIDTH) {
|
|
57615
|
-
this.secondaryPanel?.
|
|
57625
|
+
this.secondaryPanel?.currentPanelProps.onCloseSidePanel?.();
|
|
57616
57626
|
this.secondaryPanel = undefined;
|
|
57617
57627
|
}
|
|
57618
57628
|
if (this.mainPanel && width - this.totalPanelSize < MIN_SHEET_VIEW_WIDTH) {
|
|
@@ -57772,6 +57782,10 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
57772
57782
|
useTouchScroll(this.gridRef, this.moveCanvas.bind(this), () => {
|
|
57773
57783
|
const { scrollY } = this.env.model.getters.getActiveSheetScrollInfo();
|
|
57774
57784
|
return scrollY > 0;
|
|
57785
|
+
}, () => {
|
|
57786
|
+
const { maxOffsetY } = this.env.model.getters.getMaximumSheetOffset();
|
|
57787
|
+
const { scrollY } = this.env.model.getters.getActiveSheetScrollInfo();
|
|
57788
|
+
return scrollY < maxOffsetY;
|
|
57775
57789
|
});
|
|
57776
57790
|
}
|
|
57777
57791
|
get highlights() {
|
|
@@ -74993,6 +75007,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
74993
75007
|
"getFigureUI",
|
|
74994
75008
|
"getPositionAnchorOffset",
|
|
74995
75009
|
"getGridOffset",
|
|
75010
|
+
"getMaximumSheetOffset",
|
|
74996
75011
|
];
|
|
74997
75012
|
viewports = {};
|
|
74998
75013
|
/**
|
|
@@ -76596,6 +76611,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
76596
76611
|
.add("file", {
|
|
76597
76612
|
name: _t("File"),
|
|
76598
76613
|
sequence: 10,
|
|
76614
|
+
isReadonlyAllowed: true,
|
|
76599
76615
|
})
|
|
76600
76616
|
.addChild("settings", ["file"], {
|
|
76601
76617
|
name: _t("Settings"),
|
|
@@ -76610,6 +76626,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
76610
76626
|
.add("edit", {
|
|
76611
76627
|
name: _t("Edit"),
|
|
76612
76628
|
sequence: 20,
|
|
76629
|
+
isReadonlyAllowed: true,
|
|
76613
76630
|
})
|
|
76614
76631
|
.addChild("undo", ["edit"], {
|
|
76615
76632
|
...undo,
|
|
@@ -76694,6 +76711,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
76694
76711
|
.add("view", {
|
|
76695
76712
|
name: _t("View"),
|
|
76696
76713
|
sequence: 30,
|
|
76714
|
+
isReadonlyAllowed: true,
|
|
76697
76715
|
})
|
|
76698
76716
|
.addChild("unfreeze_panes", ["view"], {
|
|
76699
76717
|
...unFreezePane,
|
|
@@ -76785,6 +76803,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
76785
76803
|
.add("insert", {
|
|
76786
76804
|
name: _t("Insert"),
|
|
76787
76805
|
sequence: 40,
|
|
76806
|
+
isReadonlyAllowed: true,
|
|
76788
76807
|
})
|
|
76789
76808
|
.addChild("insert_row", ["insert"], {
|
|
76790
76809
|
...insertRow,
|
|
@@ -76892,7 +76911,11 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
76892
76911
|
// ---------------------------------------------------------------------
|
|
76893
76912
|
// FORMAT MENU ITEMS
|
|
76894
76913
|
// ---------------------------------------------------------------------
|
|
76895
|
-
.add("format", {
|
|
76914
|
+
.add("format", {
|
|
76915
|
+
name: _t("Format"),
|
|
76916
|
+
sequence: 50,
|
|
76917
|
+
isReadonlyAllowed: true,
|
|
76918
|
+
})
|
|
76896
76919
|
.addChild("format_number", ["format"], {
|
|
76897
76920
|
...formatNumberMenuItemSpec,
|
|
76898
76921
|
name: _t("Number"),
|
|
@@ -76984,6 +77007,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
76984
77007
|
.add("data", {
|
|
76985
77008
|
name: _t("Data"),
|
|
76986
77009
|
sequence: 60,
|
|
77010
|
+
isReadonlyAllowed: true,
|
|
76987
77011
|
})
|
|
76988
77012
|
.addChild("sort_range", ["data"], {
|
|
76989
77013
|
...sortRange,
|
|
@@ -78074,6 +78098,10 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
78074
78098
|
useTouchScroll(this.gridRef, this.moveCanvas.bind(this), () => {
|
|
78075
78099
|
const { scrollY } = this.env.model.getters.getActiveSheetScrollInfo();
|
|
78076
78100
|
return scrollY > 0;
|
|
78101
|
+
}, () => {
|
|
78102
|
+
const { maxOffsetY } = this.env.model.getters.getMaximumSheetOffset();
|
|
78103
|
+
const { scrollY } = this.env.model.getters.getActiveSheetScrollInfo();
|
|
78104
|
+
return scrollY < maxOffsetY;
|
|
78077
78105
|
});
|
|
78078
78106
|
}
|
|
78079
78107
|
get gridContainer() {
|
|
@@ -80117,7 +80145,7 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
80117
80145
|
border-radius: 4px;
|
|
80118
80146
|
font-weight: 500;
|
|
80119
80147
|
font-size: 14px;
|
|
80120
|
-
height: 32px;
|
|
80148
|
+
min-height: 32px;
|
|
80121
80149
|
line-height: 16px;
|
|
80122
80150
|
flex-grow: 1;
|
|
80123
80151
|
background-color: ${BUTTON_BG};
|
|
@@ -84921,9 +84949,9 @@ stores.inject(MyMetaStore, storeInstance);
|
|
|
84921
84949
|
exports.tokenize = tokenize;
|
|
84922
84950
|
|
|
84923
84951
|
|
|
84924
|
-
__info__.version = "18.4.
|
|
84925
|
-
__info__.date = "2025-11-
|
|
84926
|
-
__info__.hash = "
|
|
84952
|
+
__info__.version = "18.4.18";
|
|
84953
|
+
__info__.date = "2025-11-24T07:42:07.821Z";
|
|
84954
|
+
__info__.hash = "4f83667";
|
|
84927
84955
|
|
|
84928
84956
|
|
|
84929
84957
|
})(this.o_spreadsheet = this.o_spreadsheet || {}, owl);
|