@odoo/o-spreadsheet 16.0.71 → 16.0.73
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 +50 -28
- package/dist/o-spreadsheet.esm.js +50 -28
- package/dist/o-spreadsheet.iife.js +50 -28
- package/dist/o-spreadsheet.iife.min.js +4 -4
- package/dist/o_spreadsheet.xml +3 -3
- package/package.json +1 -1
|
@@ -3938,19 +3938,26 @@ class FilterMenu extends owl.Component {
|
|
|
3938
3938
|
.filter(({ row }) => !this.env.model.getters.isRowHidden(sheetId, row))
|
|
3939
3939
|
.map(({ col, row }) => { var _a; return (_a = this.env.model.getters.getCell(sheetId, col, row)) === null || _a === void 0 ? void 0 : _a.formattedValue; });
|
|
3940
3940
|
const filterValues = this.env.model.getters.getFilterValues(sheetId, position.col, position.row);
|
|
3941
|
-
const
|
|
3942
|
-
const
|
|
3943
|
-
|
|
3944
|
-
const
|
|
3945
|
-
|
|
3946
|
-
|
|
3947
|
-
|
|
3948
|
-
|
|
3949
|
-
|
|
3950
|
-
|
|
3951
|
-
|
|
3952
|
-
|
|
3953
|
-
|
|
3941
|
+
const normalizedFilteredValues = new Set(filterValues.map(toLowerCase));
|
|
3942
|
+
const set = new Set();
|
|
3943
|
+
const values = [];
|
|
3944
|
+
const addValue = (value) => {
|
|
3945
|
+
const normalizedValue = toLowerCase(value);
|
|
3946
|
+
if (!set.has(normalizedValue)) {
|
|
3947
|
+
values.push({
|
|
3948
|
+
string: value || "",
|
|
3949
|
+
checked: !normalizedFilteredValues.has(normalizedValue),
|
|
3950
|
+
normalizedValue,
|
|
3951
|
+
});
|
|
3952
|
+
set.add(normalizedValue);
|
|
3953
|
+
}
|
|
3954
|
+
};
|
|
3955
|
+
cellValues.forEach(addValue);
|
|
3956
|
+
filterValues.forEach(addValue);
|
|
3957
|
+
return values.sort((val1, val2) => val1.normalizedValue.localeCompare(val2.normalizedValue, undefined, {
|
|
3958
|
+
numeric: true,
|
|
3959
|
+
sensitivity: "base",
|
|
3960
|
+
}));
|
|
3954
3961
|
}
|
|
3955
3962
|
checkValue(value) {
|
|
3956
3963
|
var _a;
|
|
@@ -5320,6 +5327,10 @@ const REMOVE_ROWS_ACTION = (env) => {
|
|
|
5320
5327
|
});
|
|
5321
5328
|
};
|
|
5322
5329
|
const CAN_REMOVE_COLUMNS_ROWS = (dimension, env) => {
|
|
5330
|
+
if ((dimension === "COL" && env.model.getters.getActiveRows().size > 0) ||
|
|
5331
|
+
(dimension === "ROW" && env.model.getters.getActiveCols().size > 0)) {
|
|
5332
|
+
return false;
|
|
5333
|
+
}
|
|
5323
5334
|
const sheetId = env.model.getters.getActiveSheetId();
|
|
5324
5335
|
const selectedElements = env.model.getters.getElementsFromSelection(dimension);
|
|
5325
5336
|
const includesAllVisibleHeaders = env.model.getters.checkElementsIncludeAllVisibleHeaders(sheetId, dimension, selectedElements);
|
|
@@ -6668,11 +6679,11 @@ class OTRegistry extends Registry {
|
|
|
6668
6679
|
* transformation function given
|
|
6669
6680
|
*/
|
|
6670
6681
|
addTransformation(executed, toTransforms, fn) {
|
|
6671
|
-
|
|
6672
|
-
|
|
6673
|
-
|
|
6674
|
-
|
|
6675
|
-
this.content[
|
|
6682
|
+
if (!this.content[executed]) {
|
|
6683
|
+
this.content[executed] = new Map();
|
|
6684
|
+
}
|
|
6685
|
+
for (const toTransform of toTransforms) {
|
|
6686
|
+
this.content[executed].set(toTransform, fn);
|
|
6676
6687
|
}
|
|
6677
6688
|
return this;
|
|
6678
6689
|
}
|
|
@@ -6681,7 +6692,7 @@ class OTRegistry extends Registry {
|
|
|
6681
6692
|
* that the executed command happened.
|
|
6682
6693
|
*/
|
|
6683
6694
|
getTransformation(toTransform, executed) {
|
|
6684
|
-
return this.content[
|
|
6695
|
+
return this.content[executed] && this.content[executed].get(toTransform);
|
|
6685
6696
|
}
|
|
6686
6697
|
}
|
|
6687
6698
|
const otRegistry = new OTRegistry();
|
|
@@ -26069,7 +26080,7 @@ class XlsxBaseExtractor {
|
|
|
26069
26080
|
*/
|
|
26070
26081
|
handleMissingValue(parentElement, missingElementName, optionalArgs) {
|
|
26071
26082
|
if (optionalArgs === null || optionalArgs === void 0 ? void 0 : optionalArgs.required) {
|
|
26072
|
-
if (optionalArgs === null || optionalArgs === void 0 ? void 0 : optionalArgs.default) {
|
|
26083
|
+
if ((optionalArgs === null || optionalArgs === void 0 ? void 0 : optionalArgs.default) !== undefined) {
|
|
26073
26084
|
this.warningManager.addParsingWarning(`Missing required ${missingElementName} in element <${parentElement.tagName}> of ${this.currentFile}, replacing it by the default value ${optionalArgs.default}`);
|
|
26074
26085
|
}
|
|
26075
26086
|
else {
|
|
@@ -34034,9 +34045,10 @@ class FilterEvaluationPlugin extends UIPlugin {
|
|
|
34034
34045
|
const filteredValues = (_b = (_a = this.filterValues[sheetId]) === null || _a === void 0 ? void 0 : _a[filter.id]) === null || _b === void 0 ? void 0 : _b.map(toLowerCase);
|
|
34035
34046
|
if (!filteredValues || !filter.filteredZone)
|
|
34036
34047
|
continue;
|
|
34048
|
+
const filteredValuesSet = new Set(filteredValues);
|
|
34037
34049
|
for (let row = filter.filteredZone.top; row <= filter.filteredZone.bottom; row++) {
|
|
34038
34050
|
const value = this.getCellValueAsString(sheetId, filter.col, row);
|
|
34039
|
-
if (
|
|
34051
|
+
if (filteredValuesSet.has(value)) {
|
|
34040
34052
|
hiddenRows.add(row);
|
|
34041
34053
|
}
|
|
34042
34054
|
}
|
|
@@ -36380,10 +36392,20 @@ function transform(toTransform, executed) {
|
|
|
36380
36392
|
*/
|
|
36381
36393
|
function transformAll(toTransform, executed) {
|
|
36382
36394
|
let transformedCommands = [...toTransform];
|
|
36395
|
+
const possibleTransformations = new Set(otRegistry.getKeys());
|
|
36383
36396
|
for (const executedCommand of executed) {
|
|
36384
|
-
|
|
36385
|
-
|
|
36386
|
-
|
|
36397
|
+
// If the executed command is not in the registry, we skip it
|
|
36398
|
+
// because we know there won't be any transformation impacting the
|
|
36399
|
+
// commands to transform.
|
|
36400
|
+
if (possibleTransformations.has(executedCommand.type)) {
|
|
36401
|
+
transformedCommands = transformedCommands.reduce((acc, cmd) => {
|
|
36402
|
+
const transformed = transform(cmd, executedCommand);
|
|
36403
|
+
if (transformed) {
|
|
36404
|
+
acc.push(transformed);
|
|
36405
|
+
}
|
|
36406
|
+
return acc;
|
|
36407
|
+
}, []);
|
|
36408
|
+
}
|
|
36387
36409
|
}
|
|
36388
36410
|
return transformedCommands;
|
|
36389
36411
|
}
|
|
@@ -36843,7 +36865,6 @@ class Session extends EventBus {
|
|
|
36843
36865
|
if (this.waitingAck) {
|
|
36844
36866
|
return;
|
|
36845
36867
|
}
|
|
36846
|
-
this.waitingAck = true;
|
|
36847
36868
|
this.sendPendingMessage();
|
|
36848
36869
|
}
|
|
36849
36870
|
/**
|
|
@@ -36873,6 +36894,7 @@ class Session extends EventBus {
|
|
|
36873
36894
|
throw new Error(`Trying to send a new revision while replaying initial revision. This can lead to endless dispatches every time the spreadsheet is open.
|
|
36874
36895
|
${JSON.stringify(message)}`);
|
|
36875
36896
|
}
|
|
36897
|
+
this.waitingAck = true;
|
|
36876
36898
|
this.transportService.sendMessage({
|
|
36877
36899
|
...message,
|
|
36878
36900
|
serverRevisionId: this.serverRevisionId,
|
|
@@ -43858,6 +43880,6 @@ exports.setTranslationMethod = setTranslationMethod;
|
|
|
43858
43880
|
exports.tokenize = tokenize;
|
|
43859
43881
|
|
|
43860
43882
|
|
|
43861
|
-
__info__.version = '16.0.
|
|
43862
|
-
__info__.date = '2025-
|
|
43863
|
-
__info__.hash = '
|
|
43883
|
+
__info__.version = '16.0.73';
|
|
43884
|
+
__info__.date = '2025-06-19T18:25:17.838Z';
|
|
43885
|
+
__info__.hash = '8bc0a8a';
|
|
@@ -3934,19 +3934,26 @@ class FilterMenu extends Component {
|
|
|
3934
3934
|
.filter(({ row }) => !this.env.model.getters.isRowHidden(sheetId, row))
|
|
3935
3935
|
.map(({ col, row }) => { var _a; return (_a = this.env.model.getters.getCell(sheetId, col, row)) === null || _a === void 0 ? void 0 : _a.formattedValue; });
|
|
3936
3936
|
const filterValues = this.env.model.getters.getFilterValues(sheetId, position.col, position.row);
|
|
3937
|
-
const
|
|
3938
|
-
const
|
|
3939
|
-
|
|
3940
|
-
const
|
|
3941
|
-
|
|
3942
|
-
|
|
3943
|
-
|
|
3944
|
-
|
|
3945
|
-
|
|
3946
|
-
|
|
3947
|
-
|
|
3948
|
-
|
|
3949
|
-
|
|
3937
|
+
const normalizedFilteredValues = new Set(filterValues.map(toLowerCase));
|
|
3938
|
+
const set = new Set();
|
|
3939
|
+
const values = [];
|
|
3940
|
+
const addValue = (value) => {
|
|
3941
|
+
const normalizedValue = toLowerCase(value);
|
|
3942
|
+
if (!set.has(normalizedValue)) {
|
|
3943
|
+
values.push({
|
|
3944
|
+
string: value || "",
|
|
3945
|
+
checked: !normalizedFilteredValues.has(normalizedValue),
|
|
3946
|
+
normalizedValue,
|
|
3947
|
+
});
|
|
3948
|
+
set.add(normalizedValue);
|
|
3949
|
+
}
|
|
3950
|
+
};
|
|
3951
|
+
cellValues.forEach(addValue);
|
|
3952
|
+
filterValues.forEach(addValue);
|
|
3953
|
+
return values.sort((val1, val2) => val1.normalizedValue.localeCompare(val2.normalizedValue, undefined, {
|
|
3954
|
+
numeric: true,
|
|
3955
|
+
sensitivity: "base",
|
|
3956
|
+
}));
|
|
3950
3957
|
}
|
|
3951
3958
|
checkValue(value) {
|
|
3952
3959
|
var _a;
|
|
@@ -5316,6 +5323,10 @@ const REMOVE_ROWS_ACTION = (env) => {
|
|
|
5316
5323
|
});
|
|
5317
5324
|
};
|
|
5318
5325
|
const CAN_REMOVE_COLUMNS_ROWS = (dimension, env) => {
|
|
5326
|
+
if ((dimension === "COL" && env.model.getters.getActiveRows().size > 0) ||
|
|
5327
|
+
(dimension === "ROW" && env.model.getters.getActiveCols().size > 0)) {
|
|
5328
|
+
return false;
|
|
5329
|
+
}
|
|
5319
5330
|
const sheetId = env.model.getters.getActiveSheetId();
|
|
5320
5331
|
const selectedElements = env.model.getters.getElementsFromSelection(dimension);
|
|
5321
5332
|
const includesAllVisibleHeaders = env.model.getters.checkElementsIncludeAllVisibleHeaders(sheetId, dimension, selectedElements);
|
|
@@ -6664,11 +6675,11 @@ class OTRegistry extends Registry {
|
|
|
6664
6675
|
* transformation function given
|
|
6665
6676
|
*/
|
|
6666
6677
|
addTransformation(executed, toTransforms, fn) {
|
|
6667
|
-
|
|
6668
|
-
|
|
6669
|
-
|
|
6670
|
-
|
|
6671
|
-
this.content[
|
|
6678
|
+
if (!this.content[executed]) {
|
|
6679
|
+
this.content[executed] = new Map();
|
|
6680
|
+
}
|
|
6681
|
+
for (const toTransform of toTransforms) {
|
|
6682
|
+
this.content[executed].set(toTransform, fn);
|
|
6672
6683
|
}
|
|
6673
6684
|
return this;
|
|
6674
6685
|
}
|
|
@@ -6677,7 +6688,7 @@ class OTRegistry extends Registry {
|
|
|
6677
6688
|
* that the executed command happened.
|
|
6678
6689
|
*/
|
|
6679
6690
|
getTransformation(toTransform, executed) {
|
|
6680
|
-
return this.content[
|
|
6691
|
+
return this.content[executed] && this.content[executed].get(toTransform);
|
|
6681
6692
|
}
|
|
6682
6693
|
}
|
|
6683
6694
|
const otRegistry = new OTRegistry();
|
|
@@ -26065,7 +26076,7 @@ class XlsxBaseExtractor {
|
|
|
26065
26076
|
*/
|
|
26066
26077
|
handleMissingValue(parentElement, missingElementName, optionalArgs) {
|
|
26067
26078
|
if (optionalArgs === null || optionalArgs === void 0 ? void 0 : optionalArgs.required) {
|
|
26068
|
-
if (optionalArgs === null || optionalArgs === void 0 ? void 0 : optionalArgs.default) {
|
|
26079
|
+
if ((optionalArgs === null || optionalArgs === void 0 ? void 0 : optionalArgs.default) !== undefined) {
|
|
26069
26080
|
this.warningManager.addParsingWarning(`Missing required ${missingElementName} in element <${parentElement.tagName}> of ${this.currentFile}, replacing it by the default value ${optionalArgs.default}`);
|
|
26070
26081
|
}
|
|
26071
26082
|
else {
|
|
@@ -34030,9 +34041,10 @@ class FilterEvaluationPlugin extends UIPlugin {
|
|
|
34030
34041
|
const filteredValues = (_b = (_a = this.filterValues[sheetId]) === null || _a === void 0 ? void 0 : _a[filter.id]) === null || _b === void 0 ? void 0 : _b.map(toLowerCase);
|
|
34031
34042
|
if (!filteredValues || !filter.filteredZone)
|
|
34032
34043
|
continue;
|
|
34044
|
+
const filteredValuesSet = new Set(filteredValues);
|
|
34033
34045
|
for (let row = filter.filteredZone.top; row <= filter.filteredZone.bottom; row++) {
|
|
34034
34046
|
const value = this.getCellValueAsString(sheetId, filter.col, row);
|
|
34035
|
-
if (
|
|
34047
|
+
if (filteredValuesSet.has(value)) {
|
|
34036
34048
|
hiddenRows.add(row);
|
|
34037
34049
|
}
|
|
34038
34050
|
}
|
|
@@ -36376,10 +36388,20 @@ function transform(toTransform, executed) {
|
|
|
36376
36388
|
*/
|
|
36377
36389
|
function transformAll(toTransform, executed) {
|
|
36378
36390
|
let transformedCommands = [...toTransform];
|
|
36391
|
+
const possibleTransformations = new Set(otRegistry.getKeys());
|
|
36379
36392
|
for (const executedCommand of executed) {
|
|
36380
|
-
|
|
36381
|
-
|
|
36382
|
-
|
|
36393
|
+
// If the executed command is not in the registry, we skip it
|
|
36394
|
+
// because we know there won't be any transformation impacting the
|
|
36395
|
+
// commands to transform.
|
|
36396
|
+
if (possibleTransformations.has(executedCommand.type)) {
|
|
36397
|
+
transformedCommands = transformedCommands.reduce((acc, cmd) => {
|
|
36398
|
+
const transformed = transform(cmd, executedCommand);
|
|
36399
|
+
if (transformed) {
|
|
36400
|
+
acc.push(transformed);
|
|
36401
|
+
}
|
|
36402
|
+
return acc;
|
|
36403
|
+
}, []);
|
|
36404
|
+
}
|
|
36383
36405
|
}
|
|
36384
36406
|
return transformedCommands;
|
|
36385
36407
|
}
|
|
@@ -36839,7 +36861,6 @@ class Session extends EventBus {
|
|
|
36839
36861
|
if (this.waitingAck) {
|
|
36840
36862
|
return;
|
|
36841
36863
|
}
|
|
36842
|
-
this.waitingAck = true;
|
|
36843
36864
|
this.sendPendingMessage();
|
|
36844
36865
|
}
|
|
36845
36866
|
/**
|
|
@@ -36869,6 +36890,7 @@ class Session extends EventBus {
|
|
|
36869
36890
|
throw new Error(`Trying to send a new revision while replaying initial revision. This can lead to endless dispatches every time the spreadsheet is open.
|
|
36870
36891
|
${JSON.stringify(message)}`);
|
|
36871
36892
|
}
|
|
36893
|
+
this.waitingAck = true;
|
|
36872
36894
|
this.transportService.sendMessage({
|
|
36873
36895
|
...message,
|
|
36874
36896
|
serverRevisionId: this.serverRevisionId,
|
|
@@ -43826,6 +43848,6 @@ function addFunction(functionName, functionDescription) {
|
|
|
43826
43848
|
export { AbstractChart, CommandResult, CorePlugin, DATETIME_FORMAT, DispatchResult, EvaluationError, Model, Registry, Revision, SPREADSHEET_DIMENSIONS, Spreadsheet, UIPlugin, __info__, addFunction, astToFormula, cellTypes, compile, components, convertAstNodes, coreTypes, findCellInNewZone, functionCache, helpers, invalidateEvaluationCommands, load, parse, readonlyAllowedCommands, registries, setTranslationMethod, tokenize };
|
|
43827
43849
|
|
|
43828
43850
|
|
|
43829
|
-
__info__.version = '16.0.
|
|
43830
|
-
__info__.date = '2025-
|
|
43831
|
-
__info__.hash = '
|
|
43851
|
+
__info__.version = '16.0.73';
|
|
43852
|
+
__info__.date = '2025-06-19T18:25:17.838Z';
|
|
43853
|
+
__info__.hash = '8bc0a8a';
|
|
@@ -3935,19 +3935,26 @@
|
|
|
3935
3935
|
.filter(({ row }) => !this.env.model.getters.isRowHidden(sheetId, row))
|
|
3936
3936
|
.map(({ col, row }) => { var _a; return (_a = this.env.model.getters.getCell(sheetId, col, row)) === null || _a === void 0 ? void 0 : _a.formattedValue; });
|
|
3937
3937
|
const filterValues = this.env.model.getters.getFilterValues(sheetId, position.col, position.row);
|
|
3938
|
-
const
|
|
3939
|
-
const
|
|
3940
|
-
|
|
3941
|
-
const
|
|
3942
|
-
|
|
3943
|
-
|
|
3944
|
-
|
|
3945
|
-
|
|
3946
|
-
|
|
3947
|
-
|
|
3948
|
-
|
|
3949
|
-
|
|
3950
|
-
|
|
3938
|
+
const normalizedFilteredValues = new Set(filterValues.map(toLowerCase));
|
|
3939
|
+
const set = new Set();
|
|
3940
|
+
const values = [];
|
|
3941
|
+
const addValue = (value) => {
|
|
3942
|
+
const normalizedValue = toLowerCase(value);
|
|
3943
|
+
if (!set.has(normalizedValue)) {
|
|
3944
|
+
values.push({
|
|
3945
|
+
string: value || "",
|
|
3946
|
+
checked: !normalizedFilteredValues.has(normalizedValue),
|
|
3947
|
+
normalizedValue,
|
|
3948
|
+
});
|
|
3949
|
+
set.add(normalizedValue);
|
|
3950
|
+
}
|
|
3951
|
+
};
|
|
3952
|
+
cellValues.forEach(addValue);
|
|
3953
|
+
filterValues.forEach(addValue);
|
|
3954
|
+
return values.sort((val1, val2) => val1.normalizedValue.localeCompare(val2.normalizedValue, undefined, {
|
|
3955
|
+
numeric: true,
|
|
3956
|
+
sensitivity: "base",
|
|
3957
|
+
}));
|
|
3951
3958
|
}
|
|
3952
3959
|
checkValue(value) {
|
|
3953
3960
|
var _a;
|
|
@@ -5317,6 +5324,10 @@
|
|
|
5317
5324
|
});
|
|
5318
5325
|
};
|
|
5319
5326
|
const CAN_REMOVE_COLUMNS_ROWS = (dimension, env) => {
|
|
5327
|
+
if ((dimension === "COL" && env.model.getters.getActiveRows().size > 0) ||
|
|
5328
|
+
(dimension === "ROW" && env.model.getters.getActiveCols().size > 0)) {
|
|
5329
|
+
return false;
|
|
5330
|
+
}
|
|
5320
5331
|
const sheetId = env.model.getters.getActiveSheetId();
|
|
5321
5332
|
const selectedElements = env.model.getters.getElementsFromSelection(dimension);
|
|
5322
5333
|
const includesAllVisibleHeaders = env.model.getters.checkElementsIncludeAllVisibleHeaders(sheetId, dimension, selectedElements);
|
|
@@ -6665,11 +6676,11 @@
|
|
|
6665
6676
|
* transformation function given
|
|
6666
6677
|
*/
|
|
6667
6678
|
addTransformation(executed, toTransforms, fn) {
|
|
6668
|
-
|
|
6669
|
-
|
|
6670
|
-
|
|
6671
|
-
|
|
6672
|
-
this.content[
|
|
6679
|
+
if (!this.content[executed]) {
|
|
6680
|
+
this.content[executed] = new Map();
|
|
6681
|
+
}
|
|
6682
|
+
for (const toTransform of toTransforms) {
|
|
6683
|
+
this.content[executed].set(toTransform, fn);
|
|
6673
6684
|
}
|
|
6674
6685
|
return this;
|
|
6675
6686
|
}
|
|
@@ -6678,7 +6689,7 @@
|
|
|
6678
6689
|
* that the executed command happened.
|
|
6679
6690
|
*/
|
|
6680
6691
|
getTransformation(toTransform, executed) {
|
|
6681
|
-
return this.content[
|
|
6692
|
+
return this.content[executed] && this.content[executed].get(toTransform);
|
|
6682
6693
|
}
|
|
6683
6694
|
}
|
|
6684
6695
|
const otRegistry = new OTRegistry();
|
|
@@ -26066,7 +26077,7 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
26066
26077
|
*/
|
|
26067
26078
|
handleMissingValue(parentElement, missingElementName, optionalArgs) {
|
|
26068
26079
|
if (optionalArgs === null || optionalArgs === void 0 ? void 0 : optionalArgs.required) {
|
|
26069
|
-
if (optionalArgs === null || optionalArgs === void 0 ? void 0 : optionalArgs.default) {
|
|
26080
|
+
if ((optionalArgs === null || optionalArgs === void 0 ? void 0 : optionalArgs.default) !== undefined) {
|
|
26070
26081
|
this.warningManager.addParsingWarning(`Missing required ${missingElementName} in element <${parentElement.tagName}> of ${this.currentFile}, replacing it by the default value ${optionalArgs.default}`);
|
|
26071
26082
|
}
|
|
26072
26083
|
else {
|
|
@@ -34031,9 +34042,10 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
34031
34042
|
const filteredValues = (_b = (_a = this.filterValues[sheetId]) === null || _a === void 0 ? void 0 : _a[filter.id]) === null || _b === void 0 ? void 0 : _b.map(toLowerCase);
|
|
34032
34043
|
if (!filteredValues || !filter.filteredZone)
|
|
34033
34044
|
continue;
|
|
34045
|
+
const filteredValuesSet = new Set(filteredValues);
|
|
34034
34046
|
for (let row = filter.filteredZone.top; row <= filter.filteredZone.bottom; row++) {
|
|
34035
34047
|
const value = this.getCellValueAsString(sheetId, filter.col, row);
|
|
34036
|
-
if (
|
|
34048
|
+
if (filteredValuesSet.has(value)) {
|
|
34037
34049
|
hiddenRows.add(row);
|
|
34038
34050
|
}
|
|
34039
34051
|
}
|
|
@@ -36377,10 +36389,20 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
36377
36389
|
*/
|
|
36378
36390
|
function transformAll(toTransform, executed) {
|
|
36379
36391
|
let transformedCommands = [...toTransform];
|
|
36392
|
+
const possibleTransformations = new Set(otRegistry.getKeys());
|
|
36380
36393
|
for (const executedCommand of executed) {
|
|
36381
|
-
|
|
36382
|
-
|
|
36383
|
-
|
|
36394
|
+
// If the executed command is not in the registry, we skip it
|
|
36395
|
+
// because we know there won't be any transformation impacting the
|
|
36396
|
+
// commands to transform.
|
|
36397
|
+
if (possibleTransformations.has(executedCommand.type)) {
|
|
36398
|
+
transformedCommands = transformedCommands.reduce((acc, cmd) => {
|
|
36399
|
+
const transformed = transform(cmd, executedCommand);
|
|
36400
|
+
if (transformed) {
|
|
36401
|
+
acc.push(transformed);
|
|
36402
|
+
}
|
|
36403
|
+
return acc;
|
|
36404
|
+
}, []);
|
|
36405
|
+
}
|
|
36384
36406
|
}
|
|
36385
36407
|
return transformedCommands;
|
|
36386
36408
|
}
|
|
@@ -36840,7 +36862,6 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
36840
36862
|
if (this.waitingAck) {
|
|
36841
36863
|
return;
|
|
36842
36864
|
}
|
|
36843
|
-
this.waitingAck = true;
|
|
36844
36865
|
this.sendPendingMessage();
|
|
36845
36866
|
}
|
|
36846
36867
|
/**
|
|
@@ -36870,6 +36891,7 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
36870
36891
|
throw new Error(`Trying to send a new revision while replaying initial revision. This can lead to endless dispatches every time the spreadsheet is open.
|
|
36871
36892
|
${JSON.stringify(message)}`);
|
|
36872
36893
|
}
|
|
36894
|
+
this.waitingAck = true;
|
|
36873
36895
|
this.transportService.sendMessage({
|
|
36874
36896
|
...message,
|
|
36875
36897
|
serverRevisionId: this.serverRevisionId,
|
|
@@ -43857,9 +43879,9 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
43857
43879
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
43858
43880
|
|
|
43859
43881
|
|
|
43860
|
-
__info__.version = '16.0.
|
|
43861
|
-
__info__.date = '2025-
|
|
43862
|
-
__info__.hash = '
|
|
43882
|
+
__info__.version = '16.0.73';
|
|
43883
|
+
__info__.date = '2025-06-19T18:25:17.838Z';
|
|
43884
|
+
__info__.hash = '8bc0a8a';
|
|
43863
43885
|
|
|
43864
43886
|
|
|
43865
43887
|
})(this.o_spreadsheet = this.o_spreadsheet || {}, owl);
|