@odoo/o-spreadsheet 17.4.6 → 17.4.8
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 +143 -54
- package/dist/o-spreadsheet.d.ts +14 -7
- package/dist/o-spreadsheet.esm.js +143 -54
- package/dist/o-spreadsheet.iife.js +143 -54
- package/dist/o-spreadsheet.iife.min.js +332 -321
- package/dist/o_spreadsheet.xml +4 -4
- package/package.json +1 -1
|
@@ -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.4.
|
|
6
|
-
* @date 2024-
|
|
7
|
-
* @hash
|
|
5
|
+
* @version 17.4.8
|
|
6
|
+
* @date 2024-09-17T08:10:18.777Z
|
|
7
|
+
* @hash caad8bd
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
'use strict';
|
|
@@ -4561,6 +4561,17 @@ function reorderZone(zone) {
|
|
|
4561
4561
|
}
|
|
4562
4562
|
return zone;
|
|
4563
4563
|
}
|
|
4564
|
+
function aggregatePositionsToZones(positions) {
|
|
4565
|
+
const result = {};
|
|
4566
|
+
for (const position of positions) {
|
|
4567
|
+
result[position.sheetId] ??= [];
|
|
4568
|
+
result[position.sheetId].push(positionToZone(position));
|
|
4569
|
+
}
|
|
4570
|
+
for (const sheetId in result) {
|
|
4571
|
+
result[sheetId] = recomputeZones(result[sheetId]);
|
|
4572
|
+
}
|
|
4573
|
+
return result;
|
|
4574
|
+
}
|
|
4564
4575
|
/**
|
|
4565
4576
|
* This function returns a zone with coordinates modified according to the change
|
|
4566
4577
|
* applied to the zone. It may be possible to change the zone by resizing or moving
|
|
@@ -6776,9 +6787,11 @@ class CellClipboardHandler extends AbstractCellClipboardHandler {
|
|
|
6776
6787
|
const targetCell = this.getters.getEvaluatedCell(target);
|
|
6777
6788
|
const originFormat = origin.cell?.format ?? origin.evaluatedCell.format;
|
|
6778
6789
|
if (clipboardOption?.pasteOption === "asValue") {
|
|
6779
|
-
|
|
6780
|
-
|
|
6781
|
-
|
|
6790
|
+
this.dispatch("UPDATE_CELL", {
|
|
6791
|
+
...target,
|
|
6792
|
+
content: origin.evaluatedCell.value?.toString() || "",
|
|
6793
|
+
format: originFormat,
|
|
6794
|
+
});
|
|
6782
6795
|
return;
|
|
6783
6796
|
}
|
|
6784
6797
|
if (clipboardOption?.pasteOption === "onlyFormat") {
|
|
@@ -28380,8 +28393,8 @@ const CREATE_PIVOT = (env) => {
|
|
|
28380
28393
|
env.openSidePanel("PivotSidePanel", { pivotId });
|
|
28381
28394
|
}
|
|
28382
28395
|
};
|
|
28383
|
-
const
|
|
28384
|
-
id: `
|
|
28396
|
+
const REINSERT_DYNAMIC_PIVOT_CHILDREN = (env) => env.model.getters.getPivotIds().map((pivotId, index) => ({
|
|
28397
|
+
id: `reinsert_dynamic_pivot_${env.model.getters.getPivotFormulaId(pivotId)}`,
|
|
28385
28398
|
name: env.model.getters.getPivotDisplayName(pivotId),
|
|
28386
28399
|
sequence: index,
|
|
28387
28400
|
execute: (env) => {
|
|
@@ -28393,9 +28406,30 @@ const REINSERT_PIVOT_CHILDREN = (env) => env.model.getters.getPivotIds().map((pi
|
|
|
28393
28406
|
col: zone.left,
|
|
28394
28407
|
row: zone.top,
|
|
28395
28408
|
sheetId: env.model.getters.getActiveSheetId(),
|
|
28409
|
+
pivotMode: "dynamic",
|
|
28396
28410
|
});
|
|
28397
28411
|
env.model.dispatch("REFRESH_PIVOT", { id: pivotId });
|
|
28398
28412
|
},
|
|
28413
|
+
isVisible: (env) => env.model.getters.getPivot(pivotId).isValid(),
|
|
28414
|
+
}));
|
|
28415
|
+
const REINSERT_STATIC_PIVOT_CHILDREN = (env) => env.model.getters.getPivotIds().map((pivotId, index) => ({
|
|
28416
|
+
id: `reinsert_static_pivot_${env.model.getters.getPivotFormulaId(pivotId)}`,
|
|
28417
|
+
name: env.model.getters.getPivotDisplayName(pivotId),
|
|
28418
|
+
sequence: index,
|
|
28419
|
+
execute: (env) => {
|
|
28420
|
+
const zone = env.model.getters.getSelectedZone();
|
|
28421
|
+
const table = env.model.getters.getPivot(pivotId).getTableStructure().export();
|
|
28422
|
+
env.model.dispatch("INSERT_PIVOT_WITH_TABLE", {
|
|
28423
|
+
pivotId,
|
|
28424
|
+
table,
|
|
28425
|
+
col: zone.left,
|
|
28426
|
+
row: zone.top,
|
|
28427
|
+
sheetId: env.model.getters.getActiveSheetId(),
|
|
28428
|
+
pivotMode: "static",
|
|
28429
|
+
});
|
|
28430
|
+
env.model.dispatch("REFRESH_PIVOT", { id: pivotId });
|
|
28431
|
+
},
|
|
28432
|
+
isVisible: (env) => env.model.getters.getPivot(pivotId).isValid(),
|
|
28399
28433
|
}));
|
|
28400
28434
|
//------------------------------------------------------------------------------
|
|
28401
28435
|
// Image
|
|
@@ -29261,13 +29295,21 @@ const splitToColumns = {
|
|
|
29261
29295
|
isEnabled: (env) => env.model.getters.isSingleColSelected(),
|
|
29262
29296
|
icon: "o-spreadsheet-Icon.SPLIT_TEXT",
|
|
29263
29297
|
};
|
|
29264
|
-
const
|
|
29265
|
-
id: "
|
|
29266
|
-
name: _t("Re-insert pivot"),
|
|
29298
|
+
const reinsertDynamicPivotMenu = {
|
|
29299
|
+
id: "reinsert_dynamic_pivot",
|
|
29300
|
+
name: _t("Re-insert dynamic pivot"),
|
|
29301
|
+
sequence: 1020,
|
|
29302
|
+
icon: "o-spreadsheet-Icon.INSERT_PIVOT",
|
|
29303
|
+
children: [REINSERT_DYNAMIC_PIVOT_CHILDREN],
|
|
29304
|
+
isVisible: (env) => env.model.getters.getPivotIds().some((id) => env.model.getters.getPivot(id).isValid()),
|
|
29305
|
+
};
|
|
29306
|
+
const reinsertStaticPivotMenu = {
|
|
29307
|
+
id: "reinsert_static_pivot",
|
|
29308
|
+
name: _t("Re-insert static pivot"),
|
|
29267
29309
|
sequence: 1020,
|
|
29268
29310
|
icon: "o-spreadsheet-Icon.INSERT_PIVOT",
|
|
29269
|
-
children: [
|
|
29270
|
-
isVisible: (env) => env.model.getters.getPivotIds().
|
|
29311
|
+
children: [REINSERT_STATIC_PIVOT_CHILDREN],
|
|
29312
|
+
isVisible: (env) => env.model.getters.getPivotIds().some((id) => env.model.getters.getPivot(id).isValid()),
|
|
29271
29313
|
};
|
|
29272
29314
|
|
|
29273
29315
|
var ACTION_DATA = /*#__PURE__*/Object.freeze({
|
|
@@ -29275,7 +29317,8 @@ var ACTION_DATA = /*#__PURE__*/Object.freeze({
|
|
|
29275
29317
|
createRemoveFilter: createRemoveFilter,
|
|
29276
29318
|
createRemoveFilterTool: createRemoveFilterTool,
|
|
29277
29319
|
dataCleanup: dataCleanup,
|
|
29278
|
-
|
|
29320
|
+
reinsertDynamicPivotMenu: reinsertDynamicPivotMenu,
|
|
29321
|
+
reinsertStaticPivotMenu: reinsertStaticPivotMenu,
|
|
29279
29322
|
removeDuplicates: removeDuplicates,
|
|
29280
29323
|
sortAscending: sortAscending,
|
|
29281
29324
|
sortDescending: sortDescending,
|
|
@@ -30757,7 +30800,8 @@ topbarMenuRegistry
|
|
|
30757
30800
|
};
|
|
30758
30801
|
});
|
|
30759
30802
|
})
|
|
30760
|
-
.addChild("
|
|
30803
|
+
.addChild("reinsert_dynamic_pivot", ["data"], reinsertDynamicPivotMenu)
|
|
30804
|
+
.addChild("reinsert_static_pivot", ["data"], reinsertStaticPivotMenu);
|
|
30761
30805
|
|
|
30762
30806
|
class OTRegistry extends Registry {
|
|
30763
30807
|
/**
|
|
@@ -44067,6 +44111,18 @@ function convertOperator(operator) {
|
|
|
44067
44111
|
// -------------------------------------
|
|
44068
44112
|
// WORKSHEET HELPERS
|
|
44069
44113
|
// -------------------------------------
|
|
44114
|
+
function getCellType(value) {
|
|
44115
|
+
switch (typeof value) {
|
|
44116
|
+
case "boolean":
|
|
44117
|
+
return "b";
|
|
44118
|
+
case "string":
|
|
44119
|
+
return "str";
|
|
44120
|
+
case "number":
|
|
44121
|
+
return "n";
|
|
44122
|
+
default:
|
|
44123
|
+
return undefined;
|
|
44124
|
+
}
|
|
44125
|
+
}
|
|
44070
44126
|
function convertHeightToExcel(height) {
|
|
44071
44127
|
return Math.round(HEIGHT_FACTOR * height * 100) / 100;
|
|
44072
44128
|
}
|
|
@@ -54317,8 +54373,9 @@ class Evaluator {
|
|
|
54317
54373
|
}
|
|
54318
54374
|
getCellsDependingOn(positions) {
|
|
54319
54375
|
const ranges = [];
|
|
54320
|
-
|
|
54321
|
-
|
|
54376
|
+
const zonesBySheetIds = aggregatePositionsToZones(positions);
|
|
54377
|
+
for (const sheetId in zonesBySheetIds) {
|
|
54378
|
+
ranges.push(...zonesBySheetIds[sheetId].map((zone) => ({ sheetId, zone })));
|
|
54322
54379
|
}
|
|
54323
54380
|
return this.formulaDependencies().getCellsDependingOn(ranges);
|
|
54324
54381
|
}
|
|
@@ -57228,9 +57285,9 @@ class Session extends EventBus {
|
|
|
57228
57285
|
/**
|
|
57229
57286
|
* Notify the server that the user client left the collaborative session
|
|
57230
57287
|
*/
|
|
57231
|
-
leave(data) {
|
|
57288
|
+
async leave(data) {
|
|
57232
57289
|
if (Object.keys(this.clients).length === 1 && this.processedRevisions.size) {
|
|
57233
|
-
this.snapshot(data());
|
|
57290
|
+
await this.snapshot(data());
|
|
57234
57291
|
}
|
|
57235
57292
|
delete this.clients[this.clientId];
|
|
57236
57293
|
this.transportService.leave(this.clientId);
|
|
@@ -57243,12 +57300,12 @@ class Session extends EventBus {
|
|
|
57243
57300
|
/**
|
|
57244
57301
|
* Send a snapshot of the spreadsheet to the collaboration server
|
|
57245
57302
|
*/
|
|
57246
|
-
snapshot(data) {
|
|
57303
|
+
async snapshot(data) {
|
|
57247
57304
|
if (this.pendingMessages.length !== 0) {
|
|
57248
57305
|
return;
|
|
57249
57306
|
}
|
|
57250
57307
|
const snapshotId = this.uuidGenerator.uuidv4();
|
|
57251
|
-
this.transportService.sendMessage({
|
|
57308
|
+
await this.transportService.sendMessage({
|
|
57252
57309
|
type: "SNAPSHOT",
|
|
57253
57310
|
nextRevisionId: snapshotId,
|
|
57254
57311
|
serverRevisionId: this.serverRevisionId,
|
|
@@ -57932,7 +57989,7 @@ class InsertPivotPlugin extends UIPlugin {
|
|
|
57932
57989
|
this.duplicatePivotInNewSheet(cmd.pivotId, cmd.newPivotId, cmd.newSheetId);
|
|
57933
57990
|
break;
|
|
57934
57991
|
case "INSERT_PIVOT_WITH_TABLE":
|
|
57935
|
-
this.insertPivotWithTable(cmd.sheetId, cmd.col, cmd.row, cmd.pivotId, cmd.table);
|
|
57992
|
+
this.insertPivotWithTable(cmd.sheetId, cmd.col, cmd.row, cmd.pivotId, cmd.table, cmd.pivotMode);
|
|
57936
57993
|
break;
|
|
57937
57994
|
}
|
|
57938
57995
|
}
|
|
@@ -58008,26 +58065,44 @@ class InsertPivotPlugin extends UIPlugin {
|
|
|
58008
58065
|
}
|
|
58009
58066
|
return name;
|
|
58010
58067
|
}
|
|
58011
|
-
insertPivotWithTable(sheetId, col, row, pivotId, table) {
|
|
58068
|
+
insertPivotWithTable(sheetId, col, row, pivotId, table, mode) {
|
|
58012
58069
|
const { cols, rows, measures, fieldsType } = table;
|
|
58013
58070
|
const pivotTable = new SpreadsheetPivotTable(cols, rows, measures, fieldsType || {});
|
|
58071
|
+
const numberOfHeaders = pivotTable.columns.length - 1;
|
|
58014
58072
|
this.resizeSheet(sheetId, col, row, pivotTable);
|
|
58015
58073
|
const pivotFormulaId = this.getters.getPivotFormulaId(pivotId);
|
|
58016
|
-
|
|
58017
|
-
|
|
58018
|
-
|
|
58019
|
-
|
|
58020
|
-
|
|
58021
|
-
|
|
58022
|
-
|
|
58023
|
-
|
|
58024
|
-
|
|
58025
|
-
|
|
58026
|
-
|
|
58027
|
-
|
|
58028
|
-
|
|
58074
|
+
let zone;
|
|
58075
|
+
if (mode === "dynamic") {
|
|
58076
|
+
this.dispatch("UPDATE_CELL", {
|
|
58077
|
+
sheetId,
|
|
58078
|
+
col,
|
|
58079
|
+
row,
|
|
58080
|
+
content: `=PIVOT(${pivotFormulaId})`,
|
|
58081
|
+
});
|
|
58082
|
+
zone = {
|
|
58083
|
+
left: col,
|
|
58084
|
+
right: col,
|
|
58085
|
+
top: row,
|
|
58086
|
+
bottom: row,
|
|
58087
|
+
};
|
|
58088
|
+
}
|
|
58089
|
+
else {
|
|
58090
|
+
this.dispatch("INSERT_PIVOT", {
|
|
58091
|
+
sheetId,
|
|
58092
|
+
col,
|
|
58093
|
+
row,
|
|
58094
|
+
pivotId,
|
|
58095
|
+
table: pivotTable.export(),
|
|
58096
|
+
});
|
|
58097
|
+
zone = {
|
|
58098
|
+
left: col,
|
|
58099
|
+
right: col + pivotTable.getNumberOfDataColumns(),
|
|
58100
|
+
top: row,
|
|
58101
|
+
bottom: row + numberOfHeaders + pivotTable.rows.length,
|
|
58102
|
+
};
|
|
58103
|
+
}
|
|
58029
58104
|
this.dispatch("CREATE_TABLE", {
|
|
58030
|
-
tableType:
|
|
58105
|
+
tableType: mode,
|
|
58031
58106
|
sheetId,
|
|
58032
58107
|
ranges: [this.getters.getRangeDataFromZone(sheetId, zone)],
|
|
58033
58108
|
config: { ...PIVOT_TABLE_CONFIG, numberOfHeaders },
|
|
@@ -58589,6 +58664,7 @@ class CellComputedStylePlugin extends UIPlugin {
|
|
|
58589
58664
|
handle(cmd) {
|
|
58590
58665
|
if (invalidateEvaluationCommands.has(cmd.type) ||
|
|
58591
58666
|
cmd.type === "UPDATE_CELL" ||
|
|
58667
|
+
cmd.type === "SET_FORMATTING" ||
|
|
58592
58668
|
cmd.type === "EVALUATE_CELLS") {
|
|
58593
58669
|
this.styles = {};
|
|
58594
58670
|
this.borders = {};
|
|
@@ -60229,6 +60305,8 @@ class GridSelectionPlugin extends UIPlugin {
|
|
|
60229
60305
|
this.selectedFigureId = null;
|
|
60230
60306
|
break;
|
|
60231
60307
|
}
|
|
60308
|
+
}
|
|
60309
|
+
finalize() {
|
|
60232
60310
|
/** Any change to the selection has to be reflected in the selection processor. */
|
|
60233
60311
|
this.selection.resetDefaultAnchor(this, deepCopy(this.gridSelection.anchor));
|
|
60234
60312
|
}
|
|
@@ -61010,7 +61088,6 @@ class SheetViewPlugin extends UIPlugin {
|
|
|
61010
61088
|
}
|
|
61011
61089
|
}
|
|
61012
61090
|
handle(cmd) {
|
|
61013
|
-
this.cleanViewports();
|
|
61014
61091
|
// changing the evaluation can hide/show rows because of data filters
|
|
61015
61092
|
if (invalidateEvaluationCommands.has(cmd.type)) {
|
|
61016
61093
|
for (const sheetId of this.getters.getSheetIds()) {
|
|
@@ -61026,6 +61103,7 @@ class SheetViewPlugin extends UIPlugin {
|
|
|
61026
61103
|
break;
|
|
61027
61104
|
case "UNDO":
|
|
61028
61105
|
case "REDO":
|
|
61106
|
+
this.cleanViewports();
|
|
61029
61107
|
for (const sheetId of this.getters.getSheetIds()) {
|
|
61030
61108
|
this.sheetsWithDirtyViewports.add(sheetId);
|
|
61031
61109
|
}
|
|
@@ -61080,6 +61158,9 @@ class SheetViewPlugin extends UIPlugin {
|
|
|
61080
61158
|
}
|
|
61081
61159
|
}
|
|
61082
61160
|
break;
|
|
61161
|
+
case "DELETE_SHEET":
|
|
61162
|
+
this.cleanViewports();
|
|
61163
|
+
break;
|
|
61083
61164
|
case "ACTIVATE_SHEET":
|
|
61084
61165
|
this.sheetsWithDirtyViewports.add(cmd.sheetIdTo);
|
|
61085
61166
|
break;
|
|
@@ -62367,6 +62448,17 @@ css /* scss */ `
|
|
|
62367
62448
|
.o-bottom-bar-fade-in {
|
|
62368
62449
|
background-image: linear-gradient(90deg, #cfcfcf, transparent 1%);
|
|
62369
62450
|
}
|
|
62451
|
+
|
|
62452
|
+
.o-sheet-list {
|
|
62453
|
+
overflow-y: hidden;
|
|
62454
|
+
overflow-x: auto;
|
|
62455
|
+
|
|
62456
|
+
&::-webkit-scrollbar {
|
|
62457
|
+
display: none; /* Chrome */
|
|
62458
|
+
}
|
|
62459
|
+
-ms-overflow-style: none; /* IE and Edge */
|
|
62460
|
+
scrollbar-width: none; /* Firefox */
|
|
62461
|
+
}
|
|
62370
62462
|
}
|
|
62371
62463
|
|
|
62372
62464
|
.o-bottom-bar-arrows {
|
|
@@ -64340,7 +64432,7 @@ class Spreadsheet extends owl.Component {
|
|
|
64340
64432
|
|
|
64341
64433
|
class LocalTransportService {
|
|
64342
64434
|
listeners = [];
|
|
64343
|
-
sendMessage(message) {
|
|
64435
|
+
async sendMessage(message) {
|
|
64344
64436
|
for (const { callback } of this.listeners) {
|
|
64345
64437
|
callback(message);
|
|
64346
64438
|
}
|
|
@@ -66433,17 +66525,13 @@ function addFormula(cell) {
|
|
|
66433
66525
|
if (!formula) {
|
|
66434
66526
|
return { attrs: [], node: escapeXml `` };
|
|
66435
66527
|
}
|
|
66436
|
-
const
|
|
66437
|
-
|
|
66438
|
-
|
|
66439
|
-
const XlsxFormula = adaptFormulaToExcel(formula);
|
|
66440
|
-
// hack for cycles : if we don't set a value (be it 0 or #VALUE!), it will appear as invisible on excel,
|
|
66441
|
-
// Making it very hard for the client to find where the recursion is.
|
|
66442
|
-
if (cell.value === CellErrorType.CircularDependency) {
|
|
66443
|
-
attrs.push(["t", "str"]);
|
|
66444
|
-
cycle = escapeXml /*xml*/ `<v>${cell.value}</v>`;
|
|
66528
|
+
const type = getCellType(cell.value);
|
|
66529
|
+
if (type === undefined) {
|
|
66530
|
+
return { attrs: [], node: escapeXml `` };
|
|
66445
66531
|
}
|
|
66446
|
-
|
|
66532
|
+
const attrs = [["t", type]];
|
|
66533
|
+
const XlsxFormula = adaptFormulaToExcel(formula);
|
|
66534
|
+
const node = escapeXml /*xml*/ `<f>${XlsxFormula}</f><v>${cell.value}</v>`;
|
|
66447
66535
|
return { attrs, node };
|
|
66448
66536
|
}
|
|
66449
66537
|
function addContent(content, sharedStrings, forceString = false) {
|
|
@@ -67857,8 +67945,8 @@ class Model extends EventBus {
|
|
|
67857
67945
|
joinSession() {
|
|
67858
67946
|
this.session.join(this.config.client);
|
|
67859
67947
|
}
|
|
67860
|
-
leaveSession() {
|
|
67861
|
-
this.session.leave(lazy(() => this.exportData()));
|
|
67948
|
+
async leaveSession() {
|
|
67949
|
+
await this.session.leave(lazy(() => this.exportData()));
|
|
67862
67950
|
}
|
|
67863
67951
|
setupUiPlugin(Plugin) {
|
|
67864
67952
|
const plugin = new Plugin(this.uiPluginConfig);
|
|
@@ -68330,6 +68418,7 @@ const helpers = {
|
|
|
68330
68418
|
UNDO_REDO_PIVOT_COMMANDS,
|
|
68331
68419
|
createPivotFormula,
|
|
68332
68420
|
areDomainArgsFieldsValid,
|
|
68421
|
+
formatTickValue,
|
|
68333
68422
|
};
|
|
68334
68423
|
const links = {
|
|
68335
68424
|
isMarkdownLink,
|
|
@@ -68460,6 +68549,6 @@ exports.tokenColors = tokenColors;
|
|
|
68460
68549
|
exports.tokenize = tokenize;
|
|
68461
68550
|
|
|
68462
68551
|
|
|
68463
|
-
__info__.version = "17.4.
|
|
68464
|
-
__info__.date = "2024-
|
|
68465
|
-
__info__.hash = "
|
|
68552
|
+
__info__.version = "17.4.8";
|
|
68553
|
+
__info__.date = "2024-09-17T08:10:18.777Z";
|
|
68554
|
+
__info__.hash = "caad8bd";
|
package/dist/o-spreadsheet.d.ts
CHANGED
|
@@ -1283,6 +1283,7 @@ interface InsertPivotWithTableCommand {
|
|
|
1283
1283
|
row: HeaderIndex;
|
|
1284
1284
|
pivotId: UID;
|
|
1285
1285
|
table: PivotTableData;
|
|
1286
|
+
pivotMode: "static" | "dynamic";
|
|
1286
1287
|
}
|
|
1287
1288
|
type CoreCommand =
|
|
1288
1289
|
/** CELLS */
|
|
@@ -3769,7 +3770,7 @@ interface TransportService<T = any> {
|
|
|
3769
3770
|
/**
|
|
3770
3771
|
* Send a message to all clients
|
|
3771
3772
|
*/
|
|
3772
|
-
sendMessage: (message: T) => void
|
|
3773
|
+
sendMessage: (message: T) => Promise<void>;
|
|
3773
3774
|
/**
|
|
3774
3775
|
* Register a callback function which will be called each time
|
|
3775
3776
|
* a new message is received.
|
|
@@ -3866,11 +3867,11 @@ declare class Session extends EventBus<CollaborativeEvent> {
|
|
|
3866
3867
|
/**
|
|
3867
3868
|
* Notify the server that the user client left the collaborative session
|
|
3868
3869
|
*/
|
|
3869
|
-
leave(data: Lazy<WorkbookData>): void
|
|
3870
|
+
leave(data: Lazy<WorkbookData>): Promise<void>;
|
|
3870
3871
|
/**
|
|
3871
3872
|
* Send a snapshot of the spreadsheet to the collaboration server
|
|
3872
3873
|
*/
|
|
3873
|
-
snapshot(data: WorkbookData): void
|
|
3874
|
+
snapshot(data: WorkbookData): Promise<void>;
|
|
3874
3875
|
getClient(): Client;
|
|
3875
3876
|
getConnectedClients(): Set<Client>;
|
|
3876
3877
|
getRevisionId(): UID;
|
|
@@ -4829,6 +4830,7 @@ declare class GridSelectionPlugin extends UIPlugin {
|
|
|
4829
4830
|
allowDispatch(cmd: LocalCommand): CommandResult;
|
|
4830
4831
|
private handleEvent;
|
|
4831
4832
|
handle(cmd: Command): void;
|
|
4833
|
+
finalize(): void;
|
|
4832
4834
|
isGridSelectionActive(): boolean;
|
|
4833
4835
|
getActiveSheet(): Readonly<Sheet>;
|
|
4834
4836
|
getActiveSheetId(): UID;
|
|
@@ -5780,7 +5782,7 @@ declare class Model extends EventBus<any> implements CommandDispatcher {
|
|
|
5780
5782
|
private readonly coreHandlers;
|
|
5781
5783
|
constructor(data?: any, config?: Partial<ModelConfig>, stateUpdateMessages?: StateUpdateMessage[], uuidGenerator?: UuidGenerator, verboseImport?: boolean);
|
|
5782
5784
|
joinSession(): void;
|
|
5783
|
-
leaveSession(): void
|
|
5785
|
+
leaveSession(): Promise<void>;
|
|
5784
5786
|
private setupUiPlugin;
|
|
5785
5787
|
/**
|
|
5786
5788
|
* Initialize and properly configure a plugin.
|
|
@@ -9454,6 +9456,7 @@ declare function getChartAxisTitleRuntime(design?: AxisDesign): {
|
|
|
9454
9456
|
};
|
|
9455
9457
|
align: "start" | "center" | "end";
|
|
9456
9458
|
} | undefined;
|
|
9459
|
+
declare function formatTickValue(localeFormat: LocaleFormat): (value: any) => any;
|
|
9457
9460
|
|
|
9458
9461
|
/**
|
|
9459
9462
|
* Get a default chart js configuration
|
|
@@ -9929,12 +9932,14 @@ declare const sortDescending: ActionSpec;
|
|
|
9929
9932
|
declare const createRemoveFilter: ActionSpec;
|
|
9930
9933
|
declare const createRemoveFilterTool: ActionSpec;
|
|
9931
9934
|
declare const splitToColumns: ActionSpec;
|
|
9932
|
-
declare const
|
|
9935
|
+
declare const reinsertDynamicPivotMenu: ActionSpec;
|
|
9936
|
+
declare const reinsertStaticPivotMenu: ActionSpec;
|
|
9933
9937
|
|
|
9934
9938
|
declare const ACTION_DATA_createRemoveFilter: typeof createRemoveFilter;
|
|
9935
9939
|
declare const ACTION_DATA_createRemoveFilterTool: typeof createRemoveFilterTool;
|
|
9936
9940
|
declare const ACTION_DATA_dataCleanup: typeof dataCleanup;
|
|
9937
|
-
declare const
|
|
9941
|
+
declare const ACTION_DATA_reinsertDynamicPivotMenu: typeof reinsertDynamicPivotMenu;
|
|
9942
|
+
declare const ACTION_DATA_reinsertStaticPivotMenu: typeof reinsertStaticPivotMenu;
|
|
9938
9943
|
declare const ACTION_DATA_removeDuplicates: typeof removeDuplicates;
|
|
9939
9944
|
declare const ACTION_DATA_sortAscending: typeof sortAscending;
|
|
9940
9945
|
declare const ACTION_DATA_sortDescending: typeof sortDescending;
|
|
@@ -9946,7 +9951,8 @@ declare namespace ACTION_DATA {
|
|
|
9946
9951
|
ACTION_DATA_createRemoveFilter as createRemoveFilter,
|
|
9947
9952
|
ACTION_DATA_createRemoveFilterTool as createRemoveFilterTool,
|
|
9948
9953
|
ACTION_DATA_dataCleanup as dataCleanup,
|
|
9949
|
-
|
|
9954
|
+
ACTION_DATA_reinsertDynamicPivotMenu as reinsertDynamicPivotMenu,
|
|
9955
|
+
ACTION_DATA_reinsertStaticPivotMenu as reinsertStaticPivotMenu,
|
|
9950
9956
|
ACTION_DATA_removeDuplicates as removeDuplicates,
|
|
9951
9957
|
ACTION_DATA_sortAscending as sortAscending,
|
|
9952
9958
|
ACTION_DATA_sortDescending as sortDescending,
|
|
@@ -11509,6 +11515,7 @@ declare const helpers: {
|
|
|
11509
11515
|
UNDO_REDO_PIVOT_COMMANDS: string[];
|
|
11510
11516
|
createPivotFormula: typeof createPivotFormula;
|
|
11511
11517
|
areDomainArgsFieldsValid: typeof areDomainArgsFieldsValid;
|
|
11518
|
+
formatTickValue: typeof formatTickValue;
|
|
11512
11519
|
};
|
|
11513
11520
|
declare const links: {
|
|
11514
11521
|
isMarkdownLink: typeof isMarkdownLink;
|