@odoo/o-spreadsheet 16.1.19 → 16.1.20
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 +64 -19
- package/dist/o-spreadsheet.d.ts +11 -3
- package/dist/o-spreadsheet.esm.js +64 -19
- package/dist/o-spreadsheet.iife.js +64 -19
- package/dist/o-spreadsheet.iife.min.js +230 -230
- package/package.json +1 -1
|
@@ -4827,6 +4827,7 @@
|
|
|
4827
4827
|
this.labelsAsText = definition.labelsAsText;
|
|
4828
4828
|
this.stacked = definition.stacked;
|
|
4829
4829
|
this.aggregated = definition.aggregated;
|
|
4830
|
+
this.cumulative = definition.cumulative;
|
|
4830
4831
|
}
|
|
4831
4832
|
static validateChartDefinition(validator, definition) {
|
|
4832
4833
|
return validator.checkValidations(definition, checkDataset, checkLabelRange);
|
|
@@ -4847,6 +4848,7 @@
|
|
|
4847
4848
|
labelRange: context.auxiliaryRange || undefined,
|
|
4848
4849
|
stacked: false,
|
|
4849
4850
|
aggregated: false,
|
|
4851
|
+
cumulative: false,
|
|
4850
4852
|
};
|
|
4851
4853
|
}
|
|
4852
4854
|
getDefinition() {
|
|
@@ -4867,6 +4869,7 @@
|
|
|
4867
4869
|
labelsAsText: this.labelsAsText,
|
|
4868
4870
|
stacked: this.stacked,
|
|
4869
4871
|
aggregated: this.aggregated,
|
|
4872
|
+
cumulative: this.cumulative,
|
|
4870
4873
|
};
|
|
4871
4874
|
}
|
|
4872
4875
|
getContextCreation() {
|
|
@@ -5060,6 +5063,16 @@
|
|
|
5060
5063
|
if (chart.stacked) {
|
|
5061
5064
|
backgroundRGBA.a = LINE_FILL_TRANSPARENCY;
|
|
5062
5065
|
}
|
|
5066
|
+
if (chart.cumulative) {
|
|
5067
|
+
let accumulator = 0;
|
|
5068
|
+
data = data.map((value) => {
|
|
5069
|
+
if (!isNaN(value)) {
|
|
5070
|
+
accumulator += parseFloat(value);
|
|
5071
|
+
return accumulator;
|
|
5072
|
+
}
|
|
5073
|
+
return value;
|
|
5074
|
+
});
|
|
5075
|
+
}
|
|
5063
5076
|
const backgroundColor = rgbaToHex(backgroundRGBA);
|
|
5064
5077
|
const dataset = {
|
|
5065
5078
|
label,
|
|
@@ -6401,6 +6414,7 @@
|
|
|
6401
6414
|
labelsAsText: false,
|
|
6402
6415
|
stacked: false,
|
|
6403
6416
|
aggregated: false,
|
|
6417
|
+
cumulative: false,
|
|
6404
6418
|
labelRange: labelRangeXc,
|
|
6405
6419
|
type: "line",
|
|
6406
6420
|
dataSetsHaveTitle,
|
|
@@ -6754,6 +6768,13 @@
|
|
|
6754
6768
|
elements: rows,
|
|
6755
6769
|
});
|
|
6756
6770
|
};
|
|
6771
|
+
const CAN_REMOVE_COLUMNS_ROWS = (dimension, env) => {
|
|
6772
|
+
const sheetId = env.model.getters.getActiveSheetId();
|
|
6773
|
+
const selectedElements = env.model.getters.getElementsFromSelection(dimension);
|
|
6774
|
+
const includesAllVisibleHeaders = env.model.getters.checkElementsIncludeAllVisibleHeaders(sheetId, dimension, selectedElements);
|
|
6775
|
+
const includesAllNonFrozenHeaders = env.model.getters.checkElementsIncludeAllNonFrozenHeaders(sheetId, dimension, selectedElements);
|
|
6776
|
+
return !includesAllVisibleHeaders && !includesAllNonFrozenHeaders;
|
|
6777
|
+
};
|
|
6757
6778
|
const REMOVE_COLUMNS_NAME = (env) => {
|
|
6758
6779
|
if (env.model.getters.getSelectedZones().length > 1) {
|
|
6759
6780
|
return _lt("Delete columns");
|
|
@@ -7344,11 +7365,7 @@
|
|
|
7344
7365
|
name: REMOVE_COLUMNS_NAME,
|
|
7345
7366
|
sequence: 90,
|
|
7346
7367
|
action: REMOVE_COLUMNS_ACTION,
|
|
7347
|
-
isVisible: (env) =>
|
|
7348
|
-
const sheetId = env.model.getters.getActiveSheetId();
|
|
7349
|
-
const selectedCols = env.model.getters.getElementsFromSelection("COL");
|
|
7350
|
-
return env.model.getters.canRemoveHeaders(sheetId, "COL", selectedCols);
|
|
7351
|
-
},
|
|
7368
|
+
isVisible: (env) => CAN_REMOVE_COLUMNS_ROWS("COL", env),
|
|
7352
7369
|
})
|
|
7353
7370
|
.add("clear_column", {
|
|
7354
7371
|
name: DELETE_CONTENT_COLUMNS_NAME,
|
|
@@ -7362,7 +7379,7 @@
|
|
|
7362
7379
|
isVisible: (env) => {
|
|
7363
7380
|
const sheetId = env.model.getters.getActiveSheetId();
|
|
7364
7381
|
const selectedCols = env.model.getters.getElementsFromSelection("COL");
|
|
7365
|
-
return env.model.getters.
|
|
7382
|
+
return !env.model.getters.checkElementsIncludeAllVisibleHeaders(sheetId, "COL", selectedCols);
|
|
7366
7383
|
},
|
|
7367
7384
|
separator: true,
|
|
7368
7385
|
})
|
|
@@ -7436,11 +7453,7 @@
|
|
|
7436
7453
|
name: REMOVE_ROWS_NAME,
|
|
7437
7454
|
sequence: 70,
|
|
7438
7455
|
action: REMOVE_ROWS_ACTION,
|
|
7439
|
-
isVisible: (env) =>
|
|
7440
|
-
const sheetId = env.model.getters.getActiveSheetId();
|
|
7441
|
-
const selectedRows = env.model.getters.getElementsFromSelection("ROW");
|
|
7442
|
-
return env.model.getters.canRemoveHeaders(sheetId, "ROW", selectedRows);
|
|
7443
|
-
},
|
|
7456
|
+
isVisible: (env) => CAN_REMOVE_COLUMNS_ROWS("ROW", env),
|
|
7444
7457
|
})
|
|
7445
7458
|
.add("clear_row", {
|
|
7446
7459
|
name: DELETE_CONTENT_ROWS_NAME,
|
|
@@ -7454,7 +7467,7 @@
|
|
|
7454
7467
|
isVisible: (env) => {
|
|
7455
7468
|
const sheetId = env.model.getters.getActiveSheetId();
|
|
7456
7469
|
const selectedRows = env.model.getters.getElementsFromSelection("ROW");
|
|
7457
|
-
return env.model.getters.
|
|
7470
|
+
return !env.model.getters.checkElementsIncludeAllVisibleHeaders(sheetId, "ROW", selectedRows);
|
|
7458
7471
|
},
|
|
7459
7472
|
separator: true,
|
|
7460
7473
|
})
|
|
@@ -19331,11 +19344,13 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
19331
19344
|
name: REMOVE_ROWS_NAME,
|
|
19332
19345
|
sequence: 80,
|
|
19333
19346
|
action: REMOVE_ROWS_ACTION,
|
|
19347
|
+
isVisible: (env) => CAN_REMOVE_COLUMNS_ROWS("ROW", env),
|
|
19334
19348
|
})
|
|
19335
19349
|
.addChild("edit_delete_column", ["edit"], {
|
|
19336
19350
|
name: REMOVE_COLUMNS_NAME,
|
|
19337
19351
|
sequence: 90,
|
|
19338
19352
|
action: REMOVE_COLUMNS_ACTION,
|
|
19353
|
+
isVisible: (env) => CAN_REMOVE_COLUMNS_ROWS("COL", env),
|
|
19339
19354
|
})
|
|
19340
19355
|
.addChild("edit_delete_cell_shift_up", ["edit"], {
|
|
19341
19356
|
name: _lt("Delete cell and shift up"),
|
|
@@ -20515,6 +20530,11 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
20515
20530
|
aggregated: ev.target.checked,
|
|
20516
20531
|
});
|
|
20517
20532
|
}
|
|
20533
|
+
onUpdateCumulative(ev) {
|
|
20534
|
+
this.props.updateChart(this.props.figureId, {
|
|
20535
|
+
cumulative: ev.target.checked,
|
|
20536
|
+
});
|
|
20537
|
+
}
|
|
20518
20538
|
}
|
|
20519
20539
|
LineConfigPanel.template = "o-spreadsheet-LineConfigPanel";
|
|
20520
20540
|
|
|
@@ -25485,6 +25505,7 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
25485
25505
|
legendPosition: chartData.legendPosition,
|
|
25486
25506
|
stacked: chartData.stacked || false,
|
|
25487
25507
|
aggregated: false,
|
|
25508
|
+
cumulative: chartData.cumulative || false,
|
|
25488
25509
|
labelsAsText: false,
|
|
25489
25510
|
};
|
|
25490
25511
|
}
|
|
@@ -30049,7 +30070,7 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
30049
30070
|
if (!this.getters.tryGetSheet(cmd.sheetId)) {
|
|
30050
30071
|
return 27 /* CommandResult.InvalidSheetId */;
|
|
30051
30072
|
}
|
|
30052
|
-
if (
|
|
30073
|
+
if (this.checkElementsIncludeAllVisibleHeaders(cmd.sheetId, cmd.dimension, cmd.elements)) {
|
|
30053
30074
|
return 8 /* CommandResult.NotEnoughElements */;
|
|
30054
30075
|
}
|
|
30055
30076
|
return 0 /* CommandResult.Success */;
|
|
@@ -30099,9 +30120,9 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
30099
30120
|
}
|
|
30100
30121
|
return;
|
|
30101
30122
|
}
|
|
30102
|
-
|
|
30123
|
+
checkElementsIncludeAllVisibleHeaders(sheetId, dimension, elements) {
|
|
30103
30124
|
const visibleHeaders = this.getAllVisibleHeaders(sheetId, dimension);
|
|
30104
|
-
return
|
|
30125
|
+
return includesAll(elements, visibleHeaders);
|
|
30105
30126
|
}
|
|
30106
30127
|
isRowHiddenByUser(sheetId, index) {
|
|
30107
30128
|
return this.hiddenHeaders[sheetId].ROW[index];
|
|
@@ -30197,7 +30218,7 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
30197
30218
|
}
|
|
30198
30219
|
}
|
|
30199
30220
|
HeaderVisibilityPlugin.getters = [
|
|
30200
|
-
"
|
|
30221
|
+
"checkElementsIncludeAllVisibleHeaders",
|
|
30201
30222
|
"getHiddenColsGroups",
|
|
30202
30223
|
"getHiddenRowsGroups",
|
|
30203
30224
|
"isRowHiddenByUser",
|
|
@@ -31225,6 +31246,9 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
31225
31246
|
if (Math.min(...cmd.elements) < 0 || Math.max(...cmd.elements) > elements) {
|
|
31226
31247
|
return 86 /* CommandResult.InvalidHeaderIndex */;
|
|
31227
31248
|
}
|
|
31249
|
+
else if (this.checkElementsIncludeAllNonFrozenHeaders(cmd.sheetId, cmd.dimension, cmd.elements)) {
|
|
31250
|
+
return 8 /* CommandResult.NotEnoughElements */;
|
|
31251
|
+
}
|
|
31228
31252
|
else {
|
|
31229
31253
|
return 0 /* CommandResult.Success */;
|
|
31230
31254
|
}
|
|
@@ -31511,6 +31535,20 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
31511
31535
|
}
|
|
31512
31536
|
this.history.update("sheets", sheetId, "panes", panes);
|
|
31513
31537
|
}
|
|
31538
|
+
/**
|
|
31539
|
+
* Checks if all non-frozen header indices are present in the provided elements of selected rows/columns.
|
|
31540
|
+
* This validation ensures that all rows or columns cannot be deleted when frozen panes exist.
|
|
31541
|
+
*/
|
|
31542
|
+
checkElementsIncludeAllNonFrozenHeaders(sheetId, dimension, elements) {
|
|
31543
|
+
const paneDivisions = this.getters.getPaneDivisions(sheetId);
|
|
31544
|
+
const startIndex = dimension === "ROW" ? paneDivisions.ySplit : paneDivisions.xSplit;
|
|
31545
|
+
const endIndex = this.getters.getNumberHeaders(sheetId, dimension);
|
|
31546
|
+
if (!startIndex) {
|
|
31547
|
+
return false;
|
|
31548
|
+
}
|
|
31549
|
+
const indicesToCheck = range(startIndex, endIndex);
|
|
31550
|
+
return includesAll(elements, indicesToCheck);
|
|
31551
|
+
}
|
|
31514
31552
|
// ---------------------------------------------------------------------------
|
|
31515
31553
|
// Row/Col manipulation
|
|
31516
31554
|
// ---------------------------------------------------------------------------
|
|
@@ -32043,6 +32081,7 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
32043
32081
|
"getSheetSize",
|
|
32044
32082
|
"getSheetZone",
|
|
32045
32083
|
"getPaneDivisions",
|
|
32084
|
+
"checkElementsIncludeAllNonFrozenHeaders",
|
|
32046
32085
|
];
|
|
32047
32086
|
|
|
32048
32087
|
/**
|
|
@@ -33461,6 +33500,9 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
33461
33500
|
const sheetId = this.sheetId;
|
|
33462
33501
|
this.left = this.searchHeaderIndex("COL", this.offsetScrollbarX, this.boundaries.left);
|
|
33463
33502
|
this.right = Math.min(this.boundaries.right, this.searchHeaderIndex("COL", this.viewportWidth, this.left));
|
|
33503
|
+
if (this.left === -1) {
|
|
33504
|
+
this.left = this.boundaries.left;
|
|
33505
|
+
}
|
|
33464
33506
|
if (this.right === -1) {
|
|
33465
33507
|
this.right = this.getters.getNumberCols(sheetId) - 1;
|
|
33466
33508
|
}
|
|
@@ -33474,6 +33516,9 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
33474
33516
|
const sheetId = this.sheetId;
|
|
33475
33517
|
this.top = this.searchHeaderIndex("ROW", this.offsetScrollbarY, this.boundaries.top);
|
|
33476
33518
|
this.bottom = Math.min(this.boundaries.bottom, this.searchHeaderIndex("ROW", this.viewportHeight, this.top));
|
|
33519
|
+
if (this.top === -1) {
|
|
33520
|
+
this.top = this.boundaries.top;
|
|
33521
|
+
}
|
|
33477
33522
|
if (this.bottom === -1) {
|
|
33478
33523
|
this.bottom = this.getters.getNumberRows(sheetId) - 1;
|
|
33479
33524
|
}
|
|
@@ -44304,9 +44349,9 @@ day_count_convention (number, default=${DEFAULT_DAY_COUNT_CONVENTION} ) ${_lt("A
|
|
|
44304
44349
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
44305
44350
|
|
|
44306
44351
|
|
|
44307
|
-
__info__.version = '16.1.
|
|
44308
|
-
__info__.date = '2023-
|
|
44309
|
-
__info__.hash = '
|
|
44352
|
+
__info__.version = '16.1.20';
|
|
44353
|
+
__info__.date = '2023-09-12T11:43:40.624Z';
|
|
44354
|
+
__info__.hash = '7d7b841';
|
|
44310
44355
|
|
|
44311
44356
|
|
|
44312
44357
|
})(this.o_spreadsheet = this.o_spreadsheet || {}, owl);
|