@odoo/o-spreadsheet 16.3.14 → 16.3.16

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.
@@ -7348,7 +7348,7 @@ function createGaugeChartRuntime(chart, getters) {
7348
7348
  });
7349
7349
  return {
7350
7350
  chartJsConfig: config,
7351
- background: getters.getBackgroundOfSingleCellChart(chart.background, dataRange),
7351
+ background: getters.getStyleOfSingleCellChart(chart.background, dataRange).background,
7352
7352
  };
7353
7353
  }
7354
7354
 
@@ -8069,7 +8069,7 @@ function createScorecardChartRuntime(chart, getters) {
8069
8069
  };
8070
8070
  baselineCell = getters.getEvaluatedCell(baselinePosition);
8071
8071
  }
8072
- const background = getters.getBackgroundOfSingleCellChart(chart.background, chart.keyValue);
8072
+ const { background, fontColor } = getters.getStyleOfSingleCellChart(chart.background, chart.keyValue);
8073
8073
  return {
8074
8074
  title: _t(chart.title),
8075
8075
  keyValue: formattedKeyValue || keyValue,
@@ -8077,7 +8077,7 @@ function createScorecardChartRuntime(chart, getters) {
8077
8077
  baselineArrow: getBaselineArrowDirection(baselineCell, keyValueCell, chart.baselineMode),
8078
8078
  baselineColor: getBaselineColor(baselineCell, chart.baselineMode, keyValueCell, chart.baselineColorUp, chart.baselineColorDown),
8079
8079
  baselineDescr: chart.baselineDescr ? _t(chart.baselineDescr) : "",
8080
- fontColor: chartFontColor(background),
8080
+ fontColor,
8081
8081
  background,
8082
8082
  baselineStyle: chart.baselineMode !== "percentage" && baseline
8083
8083
  ? getters.getCellStyle({
@@ -20480,7 +20480,7 @@ class ClientTag extends owl.Component {
20480
20480
  left: `${x - 1}px`,
20481
20481
  border: `1px solid ${color}`,
20482
20482
  "background-color": color,
20483
- opacity: this.props.active ? "opacity:1 !important" : undefined,
20483
+ opacity: this.props.active ? "1 !important" : undefined,
20484
20484
  });
20485
20485
  }
20486
20486
  }
@@ -33728,7 +33728,7 @@ class EvaluationPlugin extends UIPlugin {
33728
33728
  }
33729
33729
 
33730
33730
  class EvaluationChartPlugin extends UIPlugin {
33731
- static getters = ["getChartRuntime", "getBackgroundOfSingleCellChart"];
33731
+ static getters = ["getChartRuntime", "getStyleOfSingleCellChart"];
33732
33732
  charts = {};
33733
33733
  createRuntimeChart = chartRuntimeFactory(this.getters);
33734
33734
  handle(cmd) {
@@ -33766,25 +33766,26 @@ class EvaluationChartPlugin extends UIPlugin {
33766
33766
  return this.charts[figureId];
33767
33767
  }
33768
33768
  /**
33769
- * Get the background color of a chart based on the color of the first cell of the main range
33770
- * of the chart. In order of priority, it will return :
33771
- *
33772
- * - the chart background color if one is defined
33773
- * - the fill color of the cell if one is defined
33774
- * - the fill color of the cell from conditional formats if one is defined
33775
- * - the default chart color if no other color is defined
33769
+ * Get the background and textColor of a chart based on the color of the first cell of the main range of the chart.
33776
33770
  */
33777
- getBackgroundOfSingleCellChart(chartBackground, mainRange) {
33771
+ getStyleOfSingleCellChart(chartBackground, mainRange) {
33778
33772
  if (chartBackground)
33779
- return chartBackground;
33773
+ return { background: chartBackground, fontColor: chartFontColor(chartBackground) };
33780
33774
  if (!mainRange) {
33781
- return BACKGROUND_CHART_COLOR;
33775
+ return {
33776
+ background: BACKGROUND_CHART_COLOR,
33777
+ fontColor: chartFontColor(BACKGROUND_CHART_COLOR),
33778
+ };
33782
33779
  }
33783
33780
  const col = mainRange.zone.left;
33784
33781
  const row = mainRange.zone.top;
33785
33782
  const sheetId = mainRange.sheetId;
33786
33783
  const style = this.getters.getCellComputedStyle({ sheetId, col, row });
33787
- return style.fillColor || BACKGROUND_CHART_COLOR;
33784
+ const background = style.fillColor || BACKGROUND_CHART_COLOR;
33785
+ return {
33786
+ background,
33787
+ fontColor: style.textColor || chartFontColor(background),
33788
+ };
33788
33789
  }
33789
33790
  }
33790
33791
 
@@ -41552,11 +41553,19 @@ class GridSelectionPlugin extends UIPlugin {
41552
41553
  }
41553
41554
  }
41554
41555
  getStatisticFnResults() {
41555
- // get deduplicated cells in zones
41556
- const cells = new Set(this.gridSelection.zones
41557
- .map((zone) => this.getters.getEvaluatedCellsInZone(this.getters.getActiveSheetId(), zone))
41558
- .flat()
41559
- .filter((cell) => cell.type !== CellValueType.empty));
41556
+ const sheetId = this.getters.getActiveSheetId();
41557
+ const cells = new Set();
41558
+ for (const zone of this.gridSelection.zones) {
41559
+ for (const { col, row } of positions(zone)) {
41560
+ if (this.getters.isRowHidden(sheetId, row) || this.getters.isColHidden(sheetId, col)) {
41561
+ continue; // Skip hidden cells
41562
+ }
41563
+ const evaluatedCell = this.getters.getEvaluatedCell({ sheetId, col, row });
41564
+ if (evaluatedCell.type !== CellValueType.empty) {
41565
+ cells.add(evaluatedCell);
41566
+ }
41567
+ }
41568
+ }
41560
41569
  let cellsTypes = new Set();
41561
41570
  let cellsValues = [];
41562
41571
  for (let cell of cells) {
@@ -43221,6 +43230,7 @@ const BORDER_POSITIONS = [
43221
43230
  css /* scss */ `
43222
43231
  .o-border-selector {
43223
43232
  padding: 4px;
43233
+ background-color: white;
43224
43234
  }
43225
43235
  .o-divider {
43226
43236
  border-right: 1px solid #e0e2e4;
@@ -43556,6 +43566,7 @@ css /* scss */ `
43556
43566
  line-height: 1.2;
43557
43567
  font-size: 13px;
43558
43568
  font-weight: 500;
43569
+ background-color: #fff;
43559
43570
 
43560
43571
  .o-topbar-top {
43561
43572
  border-bottom: 1px solid ${SEPARATOR_COLOR};
@@ -46402,14 +46413,14 @@ function convertFigureData(figure, sheet) {
46402
46413
  */
46403
46414
  function figureCoordinates(headers, position) {
46404
46415
  let currentPosition = 0;
46405
- for (const [headerIndex, header] of Object.entries(headers)) {
46416
+ for (const [headerIndex, header] of headers.entries()) {
46406
46417
  if (currentPosition <= position && position < currentPosition + header.size) {
46407
46418
  return {
46408
- index: parseInt(headerIndex),
46419
+ index: headerIndex,
46409
46420
  offset: convertDotValueToEMU(position - currentPosition + FIGURE_BORDER_WIDTH),
46410
46421
  };
46411
46422
  }
46412
- else {
46423
+ else if (headerIndex < headers.length - 1) {
46413
46424
  currentPosition += header.size;
46414
46425
  }
46415
46426
  }
@@ -47786,6 +47797,6 @@ exports.setTranslationMethod = setTranslationMethod;
47786
47797
  exports.tokenize = tokenize;
47787
47798
 
47788
47799
 
47789
- __info__.version = '16.3.14';
47790
- __info__.date = '2023-10-19T14:21:33.996Z';
47791
- __info__.hash = '7b90b3d';
47800
+ __info__.version = '16.3.16';
47801
+ __info__.date = '2023-11-02T09:32:13.671Z';
47802
+ __info__.hash = '09607eb';
@@ -3762,22 +3762,20 @@ declare class EvaluationPlugin extends UIPlugin {
3762
3762
  private isBadExpression;
3763
3763
  }
3764
3764
 
3765
+ interface EvaluationChartStyle {
3766
+ background: Color;
3767
+ fontColor: Color;
3768
+ }
3765
3769
  declare class EvaluationChartPlugin extends UIPlugin {
3766
- static getters: readonly ["getChartRuntime", "getBackgroundOfSingleCellChart"];
3770
+ static getters: readonly ["getChartRuntime", "getStyleOfSingleCellChart"];
3767
3771
  readonly charts: Record<UID, ChartRuntime | undefined>;
3768
3772
  private createRuntimeChart;
3769
3773
  handle(cmd: Command): void;
3770
3774
  getChartRuntime(figureId: UID): ChartRuntime;
3771
3775
  /**
3772
- * Get the background color of a chart based on the color of the first cell of the main range
3773
- * of the chart. In order of priority, it will return :
3774
- *
3775
- * - the chart background color if one is defined
3776
- * - the fill color of the cell if one is defined
3777
- * - the fill color of the cell from conditional formats if one is defined
3778
- * - the default chart color if no other color is defined
3776
+ * Get the background and textColor of a chart based on the color of the first cell of the main range of the chart.
3779
3777
  */
3780
- getBackgroundOfSingleCellChart(chartBackground: Color | undefined, mainRange: Range | undefined): Color;
3778
+ getStyleOfSingleCellChart(chartBackground: Color | undefined, mainRange: Range | undefined): EvaluationChartStyle;
3781
3779
  }
3782
3780
 
3783
3781
  declare class EvaluationConditionalFormatPlugin extends UIPlugin {
@@ -7344,7 +7344,7 @@ function createGaugeChartRuntime(chart, getters) {
7344
7344
  });
7345
7345
  return {
7346
7346
  chartJsConfig: config,
7347
- background: getters.getBackgroundOfSingleCellChart(chart.background, dataRange),
7347
+ background: getters.getStyleOfSingleCellChart(chart.background, dataRange).background,
7348
7348
  };
7349
7349
  }
7350
7350
 
@@ -8065,7 +8065,7 @@ function createScorecardChartRuntime(chart, getters) {
8065
8065
  };
8066
8066
  baselineCell = getters.getEvaluatedCell(baselinePosition);
8067
8067
  }
8068
- const background = getters.getBackgroundOfSingleCellChart(chart.background, chart.keyValue);
8068
+ const { background, fontColor } = getters.getStyleOfSingleCellChart(chart.background, chart.keyValue);
8069
8069
  return {
8070
8070
  title: _t(chart.title),
8071
8071
  keyValue: formattedKeyValue || keyValue,
@@ -8073,7 +8073,7 @@ function createScorecardChartRuntime(chart, getters) {
8073
8073
  baselineArrow: getBaselineArrowDirection(baselineCell, keyValueCell, chart.baselineMode),
8074
8074
  baselineColor: getBaselineColor(baselineCell, chart.baselineMode, keyValueCell, chart.baselineColorUp, chart.baselineColorDown),
8075
8075
  baselineDescr: chart.baselineDescr ? _t(chart.baselineDescr) : "",
8076
- fontColor: chartFontColor(background),
8076
+ fontColor,
8077
8077
  background,
8078
8078
  baselineStyle: chart.baselineMode !== "percentage" && baseline
8079
8079
  ? getters.getCellStyle({
@@ -20476,7 +20476,7 @@ class ClientTag extends Component {
20476
20476
  left: `${x - 1}px`,
20477
20477
  border: `1px solid ${color}`,
20478
20478
  "background-color": color,
20479
- opacity: this.props.active ? "opacity:1 !important" : undefined,
20479
+ opacity: this.props.active ? "1 !important" : undefined,
20480
20480
  });
20481
20481
  }
20482
20482
  }
@@ -33724,7 +33724,7 @@ class EvaluationPlugin extends UIPlugin {
33724
33724
  }
33725
33725
 
33726
33726
  class EvaluationChartPlugin extends UIPlugin {
33727
- static getters = ["getChartRuntime", "getBackgroundOfSingleCellChart"];
33727
+ static getters = ["getChartRuntime", "getStyleOfSingleCellChart"];
33728
33728
  charts = {};
33729
33729
  createRuntimeChart = chartRuntimeFactory(this.getters);
33730
33730
  handle(cmd) {
@@ -33762,25 +33762,26 @@ class EvaluationChartPlugin extends UIPlugin {
33762
33762
  return this.charts[figureId];
33763
33763
  }
33764
33764
  /**
33765
- * Get the background color of a chart based on the color of the first cell of the main range
33766
- * of the chart. In order of priority, it will return :
33767
- *
33768
- * - the chart background color if one is defined
33769
- * - the fill color of the cell if one is defined
33770
- * - the fill color of the cell from conditional formats if one is defined
33771
- * - the default chart color if no other color is defined
33765
+ * Get the background and textColor of a chart based on the color of the first cell of the main range of the chart.
33772
33766
  */
33773
- getBackgroundOfSingleCellChart(chartBackground, mainRange) {
33767
+ getStyleOfSingleCellChart(chartBackground, mainRange) {
33774
33768
  if (chartBackground)
33775
- return chartBackground;
33769
+ return { background: chartBackground, fontColor: chartFontColor(chartBackground) };
33776
33770
  if (!mainRange) {
33777
- return BACKGROUND_CHART_COLOR;
33771
+ return {
33772
+ background: BACKGROUND_CHART_COLOR,
33773
+ fontColor: chartFontColor(BACKGROUND_CHART_COLOR),
33774
+ };
33778
33775
  }
33779
33776
  const col = mainRange.zone.left;
33780
33777
  const row = mainRange.zone.top;
33781
33778
  const sheetId = mainRange.sheetId;
33782
33779
  const style = this.getters.getCellComputedStyle({ sheetId, col, row });
33783
- return style.fillColor || BACKGROUND_CHART_COLOR;
33780
+ const background = style.fillColor || BACKGROUND_CHART_COLOR;
33781
+ return {
33782
+ background,
33783
+ fontColor: style.textColor || chartFontColor(background),
33784
+ };
33784
33785
  }
33785
33786
  }
33786
33787
 
@@ -41548,11 +41549,19 @@ class GridSelectionPlugin extends UIPlugin {
41548
41549
  }
41549
41550
  }
41550
41551
  getStatisticFnResults() {
41551
- // get deduplicated cells in zones
41552
- const cells = new Set(this.gridSelection.zones
41553
- .map((zone) => this.getters.getEvaluatedCellsInZone(this.getters.getActiveSheetId(), zone))
41554
- .flat()
41555
- .filter((cell) => cell.type !== CellValueType.empty));
41552
+ const sheetId = this.getters.getActiveSheetId();
41553
+ const cells = new Set();
41554
+ for (const zone of this.gridSelection.zones) {
41555
+ for (const { col, row } of positions(zone)) {
41556
+ if (this.getters.isRowHidden(sheetId, row) || this.getters.isColHidden(sheetId, col)) {
41557
+ continue; // Skip hidden cells
41558
+ }
41559
+ const evaluatedCell = this.getters.getEvaluatedCell({ sheetId, col, row });
41560
+ if (evaluatedCell.type !== CellValueType.empty) {
41561
+ cells.add(evaluatedCell);
41562
+ }
41563
+ }
41564
+ }
41556
41565
  let cellsTypes = new Set();
41557
41566
  let cellsValues = [];
41558
41567
  for (let cell of cells) {
@@ -43217,6 +43226,7 @@ const BORDER_POSITIONS = [
43217
43226
  css /* scss */ `
43218
43227
  .o-border-selector {
43219
43228
  padding: 4px;
43229
+ background-color: white;
43220
43230
  }
43221
43231
  .o-divider {
43222
43232
  border-right: 1px solid #e0e2e4;
@@ -43552,6 +43562,7 @@ css /* scss */ `
43552
43562
  line-height: 1.2;
43553
43563
  font-size: 13px;
43554
43564
  font-weight: 500;
43565
+ background-color: #fff;
43555
43566
 
43556
43567
  .o-topbar-top {
43557
43568
  border-bottom: 1px solid ${SEPARATOR_COLOR};
@@ -46398,14 +46409,14 @@ function convertFigureData(figure, sheet) {
46398
46409
  */
46399
46410
  function figureCoordinates(headers, position) {
46400
46411
  let currentPosition = 0;
46401
- for (const [headerIndex, header] of Object.entries(headers)) {
46412
+ for (const [headerIndex, header] of headers.entries()) {
46402
46413
  if (currentPosition <= position && position < currentPosition + header.size) {
46403
46414
  return {
46404
- index: parseInt(headerIndex),
46415
+ index: headerIndex,
46405
46416
  offset: convertDotValueToEMU(position - currentPosition + FIGURE_BORDER_WIDTH),
46406
46417
  };
46407
46418
  }
46408
- else {
46419
+ else if (headerIndex < headers.length - 1) {
46409
46420
  currentPosition += header.size;
46410
46421
  }
46411
46422
  }
@@ -47754,6 +47765,6 @@ function addFunction(functionName, functionDescription) {
47754
47765
  export { AbstractChart, CommandResult, CorePlugin, DispatchResult, EvaluationError, Model, Registry, Revision, SPREADSHEET_DIMENSIONS, Spreadsheet, UIPlugin, __info__, addFunction, astToFormula, compile, components, convertAstNodes, coreTypes, findCellInNewZone, functionCache, helpers, invalidateEvaluationCommands, links, load, parse, readonlyAllowedCommands, registries, setDefaultSheetViewSize, setTranslationMethod, tokenize };
47755
47766
 
47756
47767
 
47757
- __info__.version = '16.3.14';
47758
- __info__.date = '2023-10-19T14:21:33.996Z';
47759
- __info__.hash = '7b90b3d';
47768
+ __info__.version = '16.3.16';
47769
+ __info__.date = '2023-11-02T09:32:13.671Z';
47770
+ __info__.hash = '09607eb';
@@ -7345,7 +7345,7 @@
7345
7345
  });
7346
7346
  return {
7347
7347
  chartJsConfig: config,
7348
- background: getters.getBackgroundOfSingleCellChart(chart.background, dataRange),
7348
+ background: getters.getStyleOfSingleCellChart(chart.background, dataRange).background,
7349
7349
  };
7350
7350
  }
7351
7351
 
@@ -8066,7 +8066,7 @@
8066
8066
  };
8067
8067
  baselineCell = getters.getEvaluatedCell(baselinePosition);
8068
8068
  }
8069
- const background = getters.getBackgroundOfSingleCellChart(chart.background, chart.keyValue);
8069
+ const { background, fontColor } = getters.getStyleOfSingleCellChart(chart.background, chart.keyValue);
8070
8070
  return {
8071
8071
  title: _t(chart.title),
8072
8072
  keyValue: formattedKeyValue || keyValue,
@@ -8074,7 +8074,7 @@
8074
8074
  baselineArrow: getBaselineArrowDirection(baselineCell, keyValueCell, chart.baselineMode),
8075
8075
  baselineColor: getBaselineColor(baselineCell, chart.baselineMode, keyValueCell, chart.baselineColorUp, chart.baselineColorDown),
8076
8076
  baselineDescr: chart.baselineDescr ? _t(chart.baselineDescr) : "",
8077
- fontColor: chartFontColor(background),
8077
+ fontColor,
8078
8078
  background,
8079
8079
  baselineStyle: chart.baselineMode !== "percentage" && baseline
8080
8080
  ? getters.getCellStyle({
@@ -20477,7 +20477,7 @@
20477
20477
  left: `${x - 1}px`,
20478
20478
  border: `1px solid ${color}`,
20479
20479
  "background-color": color,
20480
- opacity: this.props.active ? "opacity:1 !important" : undefined,
20480
+ opacity: this.props.active ? "1 !important" : undefined,
20481
20481
  });
20482
20482
  }
20483
20483
  }
@@ -33725,7 +33725,7 @@
33725
33725
  }
33726
33726
 
33727
33727
  class EvaluationChartPlugin extends UIPlugin {
33728
- static getters = ["getChartRuntime", "getBackgroundOfSingleCellChart"];
33728
+ static getters = ["getChartRuntime", "getStyleOfSingleCellChart"];
33729
33729
  charts = {};
33730
33730
  createRuntimeChart = chartRuntimeFactory(this.getters);
33731
33731
  handle(cmd) {
@@ -33763,25 +33763,26 @@
33763
33763
  return this.charts[figureId];
33764
33764
  }
33765
33765
  /**
33766
- * Get the background color of a chart based on the color of the first cell of the main range
33767
- * of the chart. In order of priority, it will return :
33768
- *
33769
- * - the chart background color if one is defined
33770
- * - the fill color of the cell if one is defined
33771
- * - the fill color of the cell from conditional formats if one is defined
33772
- * - the default chart color if no other color is defined
33766
+ * Get the background and textColor of a chart based on the color of the first cell of the main range of the chart.
33773
33767
  */
33774
- getBackgroundOfSingleCellChart(chartBackground, mainRange) {
33768
+ getStyleOfSingleCellChart(chartBackground, mainRange) {
33775
33769
  if (chartBackground)
33776
- return chartBackground;
33770
+ return { background: chartBackground, fontColor: chartFontColor(chartBackground) };
33777
33771
  if (!mainRange) {
33778
- return BACKGROUND_CHART_COLOR;
33772
+ return {
33773
+ background: BACKGROUND_CHART_COLOR,
33774
+ fontColor: chartFontColor(BACKGROUND_CHART_COLOR),
33775
+ };
33779
33776
  }
33780
33777
  const col = mainRange.zone.left;
33781
33778
  const row = mainRange.zone.top;
33782
33779
  const sheetId = mainRange.sheetId;
33783
33780
  const style = this.getters.getCellComputedStyle({ sheetId, col, row });
33784
- return style.fillColor || BACKGROUND_CHART_COLOR;
33781
+ const background = style.fillColor || BACKGROUND_CHART_COLOR;
33782
+ return {
33783
+ background,
33784
+ fontColor: style.textColor || chartFontColor(background),
33785
+ };
33785
33786
  }
33786
33787
  }
33787
33788
 
@@ -41549,11 +41550,19 @@
41549
41550
  }
41550
41551
  }
41551
41552
  getStatisticFnResults() {
41552
- // get deduplicated cells in zones
41553
- const cells = new Set(this.gridSelection.zones
41554
- .map((zone) => this.getters.getEvaluatedCellsInZone(this.getters.getActiveSheetId(), zone))
41555
- .flat()
41556
- .filter((cell) => cell.type !== CellValueType.empty));
41553
+ const sheetId = this.getters.getActiveSheetId();
41554
+ const cells = new Set();
41555
+ for (const zone of this.gridSelection.zones) {
41556
+ for (const { col, row } of positions(zone)) {
41557
+ if (this.getters.isRowHidden(sheetId, row) || this.getters.isColHidden(sheetId, col)) {
41558
+ continue; // Skip hidden cells
41559
+ }
41560
+ const evaluatedCell = this.getters.getEvaluatedCell({ sheetId, col, row });
41561
+ if (evaluatedCell.type !== CellValueType.empty) {
41562
+ cells.add(evaluatedCell);
41563
+ }
41564
+ }
41565
+ }
41557
41566
  let cellsTypes = new Set();
41558
41567
  let cellsValues = [];
41559
41568
  for (let cell of cells) {
@@ -43218,6 +43227,7 @@
43218
43227
  css /* scss */ `
43219
43228
  .o-border-selector {
43220
43229
  padding: 4px;
43230
+ background-color: white;
43221
43231
  }
43222
43232
  .o-divider {
43223
43233
  border-right: 1px solid #e0e2e4;
@@ -43553,6 +43563,7 @@
43553
43563
  line-height: 1.2;
43554
43564
  font-size: 13px;
43555
43565
  font-weight: 500;
43566
+ background-color: #fff;
43556
43567
 
43557
43568
  .o-topbar-top {
43558
43569
  border-bottom: 1px solid ${SEPARATOR_COLOR};
@@ -46399,14 +46410,14 @@
46399
46410
  */
46400
46411
  function figureCoordinates(headers, position) {
46401
46412
  let currentPosition = 0;
46402
- for (const [headerIndex, header] of Object.entries(headers)) {
46413
+ for (const [headerIndex, header] of headers.entries()) {
46403
46414
  if (currentPosition <= position && position < currentPosition + header.size) {
46404
46415
  return {
46405
- index: parseInt(headerIndex),
46416
+ index: headerIndex,
46406
46417
  offset: convertDotValueToEMU(position - currentPosition + FIGURE_BORDER_WIDTH),
46407
46418
  };
46408
46419
  }
46409
- else {
46420
+ else if (headerIndex < headers.length - 1) {
46410
46421
  currentPosition += header.size;
46411
46422
  }
46412
46423
  }
@@ -47785,9 +47796,9 @@
47785
47796
  Object.defineProperty(exports, '__esModule', { value: true });
47786
47797
 
47787
47798
 
47788
- __info__.version = '16.3.14';
47789
- __info__.date = '2023-10-19T14:21:33.996Z';
47790
- __info__.hash = '7b90b3d';
47799
+ __info__.version = '16.3.16';
47800
+ __info__.date = '2023-11-02T09:32:13.671Z';
47801
+ __info__.hash = '09607eb';
47791
47802
 
47792
47803
 
47793
47804
  })(this.o_spreadsheet = this.o_spreadsheet || {}, owl);