@datorama/core 22.7.2 → 22.8.0

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.
@@ -11387,7 +11387,7 @@ var GridQuery = /** @class */ (function (_super) {
11387
11387
  var storeSettings = this.getValue().settings;
11388
11388
  var settings = {
11389
11389
  gridAlignment: storeSettings.gridAlignment,
11390
- sort: this.getSort(),
11390
+ sort: this.getGridOptions().sortByStore ? this.getSavedSort() : this.getSortModel(),
11391
11391
  hiddenColumns: hiddenColumns,
11392
11392
  groupedColumns: groupedColumns.map(toColId),
11393
11393
  filter: this.getFilter(),
@@ -11401,30 +11401,32 @@ var GridQuery = /** @class */ (function (_super) {
11401
11401
  }
11402
11402
  return settings;
11403
11403
  };
11404
- GridQuery.prototype.getSort = function () {
11404
+ GridQuery.prototype.getSortModel = function () {
11405
11405
  return this.api.grid.getSortModel().pop();
11406
11406
  };
11407
- GridQuery.prototype.getExternalSort = function () {
11408
- var _a = this.getSort() || {}, sort = _a.sort, colId = _a.colId;
11409
- var column = this.api.columns.getColumn(colId);
11410
- var allColumns = this.api.columns.getAllGridColumns();
11411
- if (column) {
11412
- return { colId: colId, sort: sort, field: getColField(column.getColDef()), sortIndex: allColumns.indexOf(column) };
11413
- }
11414
- else {
11415
- var secondaryColumn = this.getSecondaryColumn(colId);
11416
- if (secondaryColumn) {
11417
- return {
11418
- colId: colId,
11419
- sort: sort,
11420
- field: getColField(secondaryColumn.getColDef()),
11421
- sortIndex: allColumns.indexOf(secondaryColumn)
11422
- };
11407
+ GridQuery.prototype.getSavedSort = function () {
11408
+ return this.getValue().settings.sort || this.getSortModel();
11409
+ };
11410
+ GridQuery.prototype.getSort = function (savedSort) {
11411
+ if (savedSort === void 0) { savedSort = this.getSavedSort(); }
11412
+ if (savedSort) {
11413
+ var colId = savedSort.colId, sort = savedSort.sort, sortIndex = savedSort.sortIndex;
11414
+ var column = this.api.columns.getColumn(colId);
11415
+ var allColumns = this.api.columns.getAllGridColumns();
11416
+ if (column) {
11417
+ var field = getColField(column.getColDef());
11418
+ return { colId: colId, sort: sort, field: field };
11419
+ }
11420
+ else {
11421
+ var secondaryColumn = this.getSecondaryColumn(colId);
11422
+ if (secondaryColumn) {
11423
+ var columnIndex = sortIndex || allColumns.indexOf(secondaryColumn);
11424
+ var field = getColField(secondaryColumn.getColDef());
11425
+ return { colId: colId, sort: sort, field: field, sortIndex: columnIndex };
11426
+ }
11423
11427
  }
11424
11428
  }
11425
- };
11426
- GridQuery.prototype.selectSort = function () {
11427
- return this.select(function (state) { return state.settings.sort; });
11429
+ return { colId: null, sort: null };
11428
11430
  };
11429
11431
  /* @internal */
11430
11432
  GridQuery.prototype._setApi = function (api, gridRef) {
@@ -13299,6 +13301,7 @@ var DatoGridColumnHeaderComponent = /** @class */ (function () {
13299
13301
  var sortingOrder = _this.column.getColDef() ? _this.column.getColDef().sortingOrder : null;
13300
13302
  var sort;
13301
13303
  var currentSort = _this.column.getSort();
13304
+ var colId = _this.column.getColId();
13302
13305
  if (sortingOrder && sortingOrder.length > 0) {
13303
13306
  var currentSortIndex = sortingOrder.indexOf(currentSort);
13304
13307
  var newSortIndex = void 0;
@@ -13315,10 +13318,15 @@ var DatoGridColumnHeaderComponent = /** @class */ (function () {
13315
13318
  }
13316
13319
  gridService._logEvent("Grids - Column Action" /* GRID_COLUMN_ACTION */, {
13317
13320
  action: 'Sort',
13318
- column: _this.column.getColId()
13321
+ column: colId
13319
13322
  });
13320
13323
  gridQuery.isServerSide && gridService.setLoading(true);
13321
- _this.params.setSort(sort);
13324
+ if (gridQuery.getGridOptions().sortByStore) {
13325
+ gridService.setSortByColumn(colId, sort);
13326
+ }
13327
+ else {
13328
+ _this.params.setSort(sort);
13329
+ }
13322
13330
  });
13323
13331
  this.sortingInfo$ = gridQuery
13324
13332
  .waitForGrid(function () { return gridQuery.gridRef.sortChanged; })
@@ -14265,6 +14273,10 @@ var GridService = /** @class */ (function () {
14265
14273
  this.notifyFilterUpdate();
14266
14274
  }
14267
14275
  };
14276
+ GridService.prototype.setSortByColumn = function (colId, sort) {
14277
+ var sortToSet = this.gridQuery.getSort({ colId: colId, sort: sort });
14278
+ this.setGridSort(sortToSet);
14279
+ };
14268
14280
  GridService.prototype.setGridSort = function (gridSort) {
14269
14281
  if (gridSort && this.api && this.api.grid.getDisplayedRowCount() > 0) {
14270
14282
  var colId_1 = gridSort.colId, sort = gridSort.sort, sortIndex = gridSort.sortIndex;
@@ -14278,11 +14290,7 @@ var GridService = /** @class */ (function () {
14278
14290
  if (isPivotColId || valueColumn) {
14279
14291
  /** Column is pivot value column, sort by index */
14280
14292
  var columnByIndex = gridColumns[sortIndex];
14281
- var pivotValueColumn = columnByIndex && columnByIndex.getColDef().pivotValueColumn;
14282
- var pivotValueColumnId = pivotValueColumn && pivotValueColumn.getColId();
14283
- if (pivotValueColumnId === colId_1) {
14284
- sortToApply = { colId: columnByIndex.getColId(), sort: sort };
14285
- }
14293
+ sortToApply = { colId: columnByIndex.getColId(), sort: sort, sortIndex: sortIndex };
14286
14294
  }
14287
14295
  else {
14288
14296
  /** Sort by column id */
@@ -15473,7 +15481,7 @@ var DatoGridControllerComponent = /** @class */ (function () {
15473
15481
  var data = _this.getGridData();
15474
15482
  _this.onGridChange.emit({
15475
15483
  filter: _this.gridQuery.getExternalFilter(),
15476
- sort: _this.gridQuery.getExternalSort(),
15484
+ sort: _this.gridQuery.getSort(),
15477
15485
  type: type,
15478
15486
  data: data
15479
15487
  });
@@ -25239,7 +25247,7 @@ function fixNgLeaks() {
25239
25247
  };
25240
25248
  }
25241
25249
 
25242
- window.coreVersion = '22.7.2';
25250
+ window.coreVersion = '22.8.0';
25243
25251
 
25244
25252
  /**
25245
25253
  * @license