@odoo/o-spreadsheet 17.0.73 → 17.0.75

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.
@@ -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 17.0.73
6
- * @date 2025-09-11T08:40:46.367Z
7
- * @hash a11c622
5
+ * @version 17.0.75
6
+ * @date 2025-10-07T10:00:00.345Z
7
+ * @hash c8f1120
8
8
  */
9
9
 
10
10
  'use strict';
@@ -778,13 +778,22 @@ function memoize(func) {
778
778
  },
779
779
  }[funcName];
780
780
  }
781
+ /**
782
+ * Removes the specified indexes from the array.
783
+ * Sparse (empty) elements are transformed to undefined (unless their index is explicitly removed).
784
+ */
781
785
  function removeIndexesFromArray(array, indexes) {
782
- return array.filter((_, index) => !indexes.includes(index));
786
+ const toRemove = new Set(indexes);
787
+ const newArray = [];
788
+ for (let i = 0; i < array.length; i++) {
789
+ if (!toRemove.has(i)) {
790
+ newArray.push(array[i]);
791
+ }
792
+ }
793
+ return newArray;
783
794
  }
784
795
  function insertItemsAtIndex(array, items, index) {
785
- const newArray = [...array];
786
- newArray.splice(index, 0, ...items);
787
- return newArray;
796
+ return array.slice(0, index).concat(items).concat(array.slice(index));
788
797
  }
789
798
  function trimContent(content) {
790
799
  const contentLines = content.split("\n");
@@ -15922,8 +15931,9 @@ function interactiveSortSelection(env, sheetId, anchor, zone, sortDirection) {
15922
15931
  }
15923
15932
 
15924
15933
  function sortMatrix(matrix, locale, ...criteria) {
15925
- for (const [i, value] of criteria.entries()) {
15926
- assert(() => value !== undefined, _t("Value for parameter %d is missing, while the function [[FUNCTION_NAME]] expect a number or a range.", i + 1));
15934
+ for (let i = 0; i < criteria.length; i++) {
15935
+ const param = i % 2 === 0 ? "sort_column" : "is_ascending";
15936
+ assert(() => criteria[i] !== undefined, _t("Value for parameter %s is missing in [[FUNCTION_NAME]].", param));
15927
15937
  }
15928
15938
  const sortingOrders = [];
15929
15939
  const sortColumns = [];
@@ -38412,7 +38422,7 @@ class HeaderSizePlugin extends CorePlugin {
38412
38422
  let sizes = [...this.sizes[cmd.sheetId][cmd.dimension]];
38413
38423
  const addIndex = getAddHeaderStartIndex(cmd.position, cmd.base);
38414
38424
  const baseSize = sizes[cmd.base];
38415
- sizes.splice(addIndex, 0, ...Array(cmd.quantity).fill(baseSize));
38425
+ sizes = insertItemsAtIndex(sizes, Array(cmd.quantity).fill(baseSize), addIndex);
38416
38426
  this.history.update("sizes", cmd.sheetId, cmd.dimension, sizes);
38417
38427
  break;
38418
38428
  }
@@ -38564,9 +38574,8 @@ class HeaderVisibilityPlugin extends CorePlugin {
38564
38574
  break;
38565
38575
  }
38566
38576
  case "ADD_COLUMNS_ROWS": {
38567
- const hiddenHeaders = [...this.hiddenHeaders[cmd.sheetId][cmd.dimension]];
38568
38577
  const addIndex = getAddHeaderStartIndex(cmd.position, cmd.base);
38569
- hiddenHeaders.splice(addIndex, 0, ...Array(cmd.quantity).fill(false));
38578
+ const hiddenHeaders = insertItemsAtIndex([...this.hiddenHeaders[cmd.sheetId][cmd.dimension]], Array(cmd.quantity).fill(false), addIndex);
38570
38579
  this.history.update("hiddenHeaders", cmd.sheetId, cmd.dimension, hiddenHeaders);
38571
38580
  break;
38572
38581
  }
@@ -58491,6 +58500,6 @@ exports.setTranslationMethod = setTranslationMethod;
58491
58500
  exports.tokenize = tokenize;
58492
58501
 
58493
58502
 
58494
- __info__.version = "17.0.73";
58495
- __info__.date = "2025-09-11T08:40:46.367Z";
58496
- __info__.hash = "a11c622";
58503
+ __info__.version = "17.0.75";
58504
+ __info__.date = "2025-10-07T10:00:00.345Z";
58505
+ __info__.hash = "c8f1120";
@@ -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 17.0.73
6
- * @date 2025-09-11T08:40:46.367Z
7
- * @hash a11c622
5
+ * @version 17.0.75
6
+ * @date 2025-10-07T10:00:00.345Z
7
+ * @hash c8f1120
8
8
  */
9
9
 
10
10
  import { Component, useRef, onMounted, useEffect, onWillPatch, useState, onWillUpdateProps, onPatched, useComponent, useExternalListener, onWillUnmount, onWillStart, xml, useChildSubEnv, useSubEnv, markRaw } from '@odoo/owl';
@@ -776,13 +776,22 @@ function memoize(func) {
776
776
  },
777
777
  }[funcName];
778
778
  }
779
+ /**
780
+ * Removes the specified indexes from the array.
781
+ * Sparse (empty) elements are transformed to undefined (unless their index is explicitly removed).
782
+ */
779
783
  function removeIndexesFromArray(array, indexes) {
780
- return array.filter((_, index) => !indexes.includes(index));
784
+ const toRemove = new Set(indexes);
785
+ const newArray = [];
786
+ for (let i = 0; i < array.length; i++) {
787
+ if (!toRemove.has(i)) {
788
+ newArray.push(array[i]);
789
+ }
790
+ }
791
+ return newArray;
781
792
  }
782
793
  function insertItemsAtIndex(array, items, index) {
783
- const newArray = [...array];
784
- newArray.splice(index, 0, ...items);
785
- return newArray;
794
+ return array.slice(0, index).concat(items).concat(array.slice(index));
786
795
  }
787
796
  function trimContent(content) {
788
797
  const contentLines = content.split("\n");
@@ -15920,8 +15929,9 @@ function interactiveSortSelection(env, sheetId, anchor, zone, sortDirection) {
15920
15929
  }
15921
15930
 
15922
15931
  function sortMatrix(matrix, locale, ...criteria) {
15923
- for (const [i, value] of criteria.entries()) {
15924
- assert(() => value !== undefined, _t("Value for parameter %d is missing, while the function [[FUNCTION_NAME]] expect a number or a range.", i + 1));
15932
+ for (let i = 0; i < criteria.length; i++) {
15933
+ const param = i % 2 === 0 ? "sort_column" : "is_ascending";
15934
+ assert(() => criteria[i] !== undefined, _t("Value for parameter %s is missing in [[FUNCTION_NAME]].", param));
15925
15935
  }
15926
15936
  const sortingOrders = [];
15927
15937
  const sortColumns = [];
@@ -38410,7 +38420,7 @@ class HeaderSizePlugin extends CorePlugin {
38410
38420
  let sizes = [...this.sizes[cmd.sheetId][cmd.dimension]];
38411
38421
  const addIndex = getAddHeaderStartIndex(cmd.position, cmd.base);
38412
38422
  const baseSize = sizes[cmd.base];
38413
- sizes.splice(addIndex, 0, ...Array(cmd.quantity).fill(baseSize));
38423
+ sizes = insertItemsAtIndex(sizes, Array(cmd.quantity).fill(baseSize), addIndex);
38414
38424
  this.history.update("sizes", cmd.sheetId, cmd.dimension, sizes);
38415
38425
  break;
38416
38426
  }
@@ -38562,9 +38572,8 @@ class HeaderVisibilityPlugin extends CorePlugin {
38562
38572
  break;
38563
38573
  }
38564
38574
  case "ADD_COLUMNS_ROWS": {
38565
- const hiddenHeaders = [...this.hiddenHeaders[cmd.sheetId][cmd.dimension]];
38566
38575
  const addIndex = getAddHeaderStartIndex(cmd.position, cmd.base);
38567
- hiddenHeaders.splice(addIndex, 0, ...Array(cmd.quantity).fill(false));
38576
+ const hiddenHeaders = insertItemsAtIndex([...this.hiddenHeaders[cmd.sheetId][cmd.dimension]], Array(cmd.quantity).fill(false), addIndex);
38568
38577
  this.history.update("hiddenHeaders", cmd.sheetId, cmd.dimension, hiddenHeaders);
38569
38578
  break;
38570
38579
  }
@@ -58454,6 +58463,6 @@ const constants = {
58454
58463
  export { AbstractChart, CommandResult, CorePlugin, DispatchResult, EvaluationError, Model, Registry, Revision, SPREADSHEET_DIMENSIONS, Spreadsheet, UIPlugin, __info__, addFunction, astToFormula, compile, compileTokens, components, constants, convertAstNodes, coreTypes, findCellInNewZone, functionCache, helpers, hooks, invalidateCFEvaluationCommands, invalidateDependenciesCommands, invalidateEvaluationCommands, iterateAstNodes, links, load, parse, parseTokens, readonlyAllowedCommands, registries, setDefaultSheetViewSize, setTranslationMethod, tokenize };
58455
58464
 
58456
58465
 
58457
- __info__.version = "17.0.73";
58458
- __info__.date = "2025-09-11T08:40:46.367Z";
58459
- __info__.hash = "a11c622";
58466
+ __info__.version = "17.0.75";
58467
+ __info__.date = "2025-10-07T10:00:00.345Z";
58468
+ __info__.hash = "c8f1120";
@@ -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 17.0.73
6
- * @date 2025-09-11T08:40:46.367Z
7
- * @hash a11c622
5
+ * @version 17.0.75
6
+ * @date 2025-10-07T10:00:00.345Z
7
+ * @hash c8f1120
8
8
  */
9
9
 
10
10
  (function (exports, owl) {
@@ -777,13 +777,22 @@
777
777
  },
778
778
  }[funcName];
779
779
  }
780
+ /**
781
+ * Removes the specified indexes from the array.
782
+ * Sparse (empty) elements are transformed to undefined (unless their index is explicitly removed).
783
+ */
780
784
  function removeIndexesFromArray(array, indexes) {
781
- return array.filter((_, index) => !indexes.includes(index));
785
+ const toRemove = new Set(indexes);
786
+ const newArray = [];
787
+ for (let i = 0; i < array.length; i++) {
788
+ if (!toRemove.has(i)) {
789
+ newArray.push(array[i]);
790
+ }
791
+ }
792
+ return newArray;
782
793
  }
783
794
  function insertItemsAtIndex(array, items, index) {
784
- const newArray = [...array];
785
- newArray.splice(index, 0, ...items);
786
- return newArray;
795
+ return array.slice(0, index).concat(items).concat(array.slice(index));
787
796
  }
788
797
  function trimContent(content) {
789
798
  const contentLines = content.split("\n");
@@ -15921,8 +15930,9 @@
15921
15930
  }
15922
15931
 
15923
15932
  function sortMatrix(matrix, locale, ...criteria) {
15924
- for (const [i, value] of criteria.entries()) {
15925
- assert(() => value !== undefined, _t("Value for parameter %d is missing, while the function [[FUNCTION_NAME]] expect a number or a range.", i + 1));
15933
+ for (let i = 0; i < criteria.length; i++) {
15934
+ const param = i % 2 === 0 ? "sort_column" : "is_ascending";
15935
+ assert(() => criteria[i] !== undefined, _t("Value for parameter %s is missing in [[FUNCTION_NAME]].", param));
15926
15936
  }
15927
15937
  const sortingOrders = [];
15928
15938
  const sortColumns = [];
@@ -38411,7 +38421,7 @@
38411
38421
  let sizes = [...this.sizes[cmd.sheetId][cmd.dimension]];
38412
38422
  const addIndex = getAddHeaderStartIndex(cmd.position, cmd.base);
38413
38423
  const baseSize = sizes[cmd.base];
38414
- sizes.splice(addIndex, 0, ...Array(cmd.quantity).fill(baseSize));
38424
+ sizes = insertItemsAtIndex(sizes, Array(cmd.quantity).fill(baseSize), addIndex);
38415
38425
  this.history.update("sizes", cmd.sheetId, cmd.dimension, sizes);
38416
38426
  break;
38417
38427
  }
@@ -38563,9 +38573,8 @@
38563
38573
  break;
38564
38574
  }
38565
38575
  case "ADD_COLUMNS_ROWS": {
38566
- const hiddenHeaders = [...this.hiddenHeaders[cmd.sheetId][cmd.dimension]];
38567
38576
  const addIndex = getAddHeaderStartIndex(cmd.position, cmd.base);
38568
- hiddenHeaders.splice(addIndex, 0, ...Array(cmd.quantity).fill(false));
38577
+ const hiddenHeaders = insertItemsAtIndex([...this.hiddenHeaders[cmd.sheetId][cmd.dimension]], Array(cmd.quantity).fill(false), addIndex);
38569
38578
  this.history.update("hiddenHeaders", cmd.sheetId, cmd.dimension, hiddenHeaders);
38570
38579
  break;
38571
38580
  }
@@ -58490,9 +58499,9 @@
58490
58499
  exports.tokenize = tokenize;
58491
58500
 
58492
58501
 
58493
- __info__.version = "17.0.73";
58494
- __info__.date = "2025-09-11T08:40:46.367Z";
58495
- __info__.hash = "a11c622";
58502
+ __info__.version = "17.0.75";
58503
+ __info__.date = "2025-10-07T10:00:00.345Z";
58504
+ __info__.hash = "c8f1120";
58496
58505
 
58497
58506
 
58498
58507
  })(this.o_spreadsheet = this.o_spreadsheet || {}, owl);