@finos/legend-data-cube 0.0.15 → 0.0.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.
package/lib/index.css CHANGED
@@ -1,4 +1,4 @@
1
- /** @license @finos/legend-data-cube v0.0.15
1
+ /** @license @finos/legend-data-cube v0.0.16
2
2
  * Copyright (c) 2020-present, Goldman Sachs
3
3
  *
4
4
  * Licensed under the Apache License, Version 2.0 (the "License");
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-data-cube",
3
- "version": "0.0.15",
3
+ "version": "0.0.16",
4
4
  "description": "Legend Data Cube",
5
5
  "keywords": [
6
6
  "legend",
@@ -42,25 +42,25 @@
42
42
  "test:watch": "jest --watch"
43
43
  },
44
44
  "dependencies": {
45
- "@ag-grid-community/client-side-row-model": "32.2.2",
46
- "@ag-grid-community/core": "32.2.2",
47
- "@ag-grid-community/csv-export": "32.2.2",
48
- "@ag-grid-community/react": "32.2.2",
49
- "@ag-grid-community/styles": "32.2.2",
50
- "@ag-grid-enterprise/clipboard": "32.2.2",
51
- "@ag-grid-enterprise/column-tool-panel": "32.2.2",
52
- "@ag-grid-enterprise/core": "32.2.2",
53
- "@ag-grid-enterprise/excel-export": "32.2.2",
54
- "@ag-grid-enterprise/menu": "32.2.2",
55
- "@ag-grid-enterprise/range-selection": "32.2.2",
56
- "@ag-grid-enterprise/row-grouping": "32.2.2",
57
- "@ag-grid-enterprise/server-side-row-model": "32.2.2",
58
- "@ag-grid-enterprise/side-bar": "32.2.2",
45
+ "@ag-grid-community/client-side-row-model": "32.3.2",
46
+ "@ag-grid-community/core": "32.3.2",
47
+ "@ag-grid-community/csv-export": "32.3.2",
48
+ "@ag-grid-community/react": "32.3.2",
49
+ "@ag-grid-community/styles": "32.3.2",
50
+ "@ag-grid-enterprise/clipboard": "32.3.2",
51
+ "@ag-grid-enterprise/column-tool-panel": "32.3.2",
52
+ "@ag-grid-enterprise/core": "32.3.2",
53
+ "@ag-grid-enterprise/excel-export": "32.3.2",
54
+ "@ag-grid-enterprise/menu": "32.3.2",
55
+ "@ag-grid-enterprise/range-selection": "32.3.2",
56
+ "@ag-grid-enterprise/row-grouping": "32.3.2",
57
+ "@ag-grid-enterprise/server-side-row-model": "32.3.2",
58
+ "@ag-grid-enterprise/side-bar": "32.3.2",
59
59
  "@finos/legend-art": "workspace:*",
60
60
  "@finos/legend-code-editor": "workspace:*",
61
61
  "@finos/legend-graph": "workspace:*",
62
62
  "@finos/legend-shared": "workspace:*",
63
- "@types/react": "18.3.11",
63
+ "@types/react": "18.3.12",
64
64
  "mathjs": "13.2.0",
65
65
  "mobx": "6.13.5",
66
66
  "mobx-react-lite": "4.0.7",
@@ -73,11 +73,11 @@
73
73
  "@finos/legend-dev-utils": "workspace:*",
74
74
  "@jest/globals": "29.7.0",
75
75
  "cross-env": "7.0.3",
76
- "eslint": "9.12.0",
76
+ "eslint": "9.13.0",
77
77
  "jest": "29.7.0",
78
78
  "npm-run-all": "4.1.5",
79
79
  "rimraf": "6.0.1",
80
- "sass": "1.80.2",
80
+ "sass": "1.80.5",
81
81
  "typescript": "5.6.3"
82
82
  },
83
83
  "peerDependencies": {
@@ -1 +1 @@
1
- {"version":3,"file":"DataCubeGridConfigurationBuilder.d.ts","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridConfigurationBuilder.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;;yFAKyF;AAEzF,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAKjF,OAAO,KAAK,EAEV,WAAW,EACX,WAAW,EAEZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,uBAAuB,EAUvB,0BAA0B,EAW3B,MAAM,+BAA+B,CAAC;AAYvC,OAAO,KAAK,EAEV,qBAAqB,EACtB,MAAM,4CAA4C,CAAC;AAgBpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAmYjE,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,iBAAiB,GAAG,WAAW,CAwJ5E;AA4JD,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,qBAAqB,EAC/B,aAAa,EAAE,qBAAqB,EACpC,IAAI,EAAE,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAhdb,GAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAohBb;AAED,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,qBAAqB,EAC/B,aAAa,EAAE,qBAAqB,EACpC,IAAI,EAAE,iBAAiB,GACtB,WAAW,CA8Hb"}
1
+ {"version":3,"file":"DataCubeGridConfigurationBuilder.d.ts","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridConfigurationBuilder.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;;yFAKyF;AAEzF,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAKjF,OAAO,KAAK,EAEV,WAAW,EACX,WAAW,EAEZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,uBAAuB,EAUvB,0BAA0B,EAW3B,MAAM,+BAA+B,CAAC;AAYvC,OAAO,KAAK,EAEV,qBAAqB,EACtB,MAAM,4CAA4C,CAAC;AAgBpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAmYjE,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,iBAAiB,GAAG,WAAW,CAwJ5E;AA4JD,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,qBAAqB,EAC/B,aAAa,EAAE,qBAAqB,EACpC,IAAI,EAAE,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA7cmC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAihB9D;AAED,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,qBAAqB,EAC/B,aAAa,EAAE,qBAAqB,EACpC,IAAI,EAAE,iBAAiB,GACtB,WAAW,CA8Hb"}
@@ -1 +1 @@
1
- {"version":3,"file":"DataCubeGridQueryBuilder.d.ts","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridQueryBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAML,KAAK,kBAAkB,EACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAIL,KAAK,wBAAwB,EAG9B,MAAM,mCAAmC,CAAC;AAsB3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACtG,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,2DAA2D,CAAC;AA0EjH,wBAAgB,wDAAwD,CACtE,eAAe,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,cAGlC,qBAAqB,YACrB,kBAAkB,EAAE,WACrB,wBAAwB,iBAClB,qBAAqB,oBAClB,4BAA4B,EAAE,uBAC3B,+BAA+B,EAAE,UA8HzD"}
1
+ {"version":3,"file":"DataCubeGridQueryBuilder.d.ts","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridQueryBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAML,KAAK,kBAAkB,EACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAIL,KAAK,wBAAwB,EAI9B,MAAM,mCAAmC,CAAC;AAwB3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACtG,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,2DAA2D,CAAC;AA0EjH,wBAAgB,wDAAwD,CACtE,eAAe,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,cAGlC,qBAAqB,YACrB,kBAAkB,EAAE,WACrB,wBAAwB,iBAClB,qBAAqB,oBAClB,4BAA4B,EAAE,uBAC3B,+BAA+B,EAAE,UA6IzD"}
@@ -15,9 +15,9 @@
15
15
  */
16
16
  import { PRIMITIVE_TYPE, V1_ClassInstance, V1_ColSpecArray, V1_GenericTypeInstance, } from '@finos/legend-graph';
17
17
  import {} from '../../core/DataCubeQuerySnapshot.js';
18
- import { DataCubeQueryFilterGroupOperator, DataCubeQueryFilterOperator, DataCubeFunction, isPivotResultColumnName, PIVOT_COLUMN_NAME_VALUE_SEPARATOR, } from '../../core/DataCubeQueryEngine.js';
18
+ import { DataCubeQueryFilterGroupOperator, DataCubeQueryFilterOperator, DataCubeFunction, isPivotResultColumnName, PIVOT_COLUMN_NAME_VALUE_SEPARATOR, DataCubeQuerySortDirection, } from '../../core/DataCubeQueryEngine.js';
19
19
  import { guaranteeNonNullable, guaranteeType, isNullable, uniq, } from '@finos/legend-shared';
20
- import { _groupByAggCols, _colSpec, _cols, _filter, _function, _lambda, _var, _functionCompositionUnProcessor, _property, } from '../../core/DataCubeQueryBuilderUtils.js';
20
+ import { _groupByAggCols, _colSpec, _cols, _filter, _function, _lambda, _var, _functionCompositionUnProcessor, _property, _collection, _col, } from '../../core/DataCubeQueryBuilderUtils.js';
21
21
  import { INTERNAL__GRID_CLIENT_MISSING_VALUE, INTERNAL__GRID_CLIENT_ROW_GROUPING_COUNT_AGG_COLUMN_ID, } from './DataCubeGridClientEngine.js';
22
22
  import { _colSpecArrayParam } from '../../core/DataCubeQuerySnapshotBuilderUtils.js';
23
23
  /*****************************************************************************
@@ -150,11 +150,18 @@ export function generateRowGroupingDrilldownExecutableQueryPostProcessor(drilldo
150
150
  ]);
151
151
  sequence[groupByIdx] = groupByFunc;
152
152
  funcMap.groupBy = groupByFunc;
153
+ // update sort accordingly
154
+ const groupBySort = guaranteeNonNullable(funcMap.groupBySort);
155
+ groupBySort.parameters[0] = _collection(groupByColumns.map((col) => _function(configuration.treeColumnSortDirection ===
156
+ DataCubeQuerySortDirection.ASCENDING
157
+ ? DataCubeFunction.ASCENDING
158
+ : DataCubeFunction.DESCENDING, [_col(col.name)])));
153
159
  }
154
160
  else {
155
161
  // when maximum level of drilldown is reached, we simply just need to
156
162
  // filter the data to match drilldown values, no groupBy() is needed.
157
163
  _unprocess('groupBy');
164
+ _unprocess('groupBySort');
158
165
  }
159
166
  }
160
167
  };
@@ -1 +1 @@
1
- {"version":3,"file":"DataCubeGridQueryBuilder.js","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridQueryBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataCubeGridQueryBuilder.js","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridQueryBuilder.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-data-cube",
3
- "version": "0.0.15",
3
+ "version": "0.0.16",
4
4
  "description": "Legend Data Cube",
5
5
  "keywords": [
6
6
  "legend",
@@ -42,25 +42,25 @@
42
42
  "test:watch": "jest --watch"
43
43
  },
44
44
  "dependencies": {
45
- "@ag-grid-community/client-side-row-model": "32.2.2",
46
- "@ag-grid-community/core": "32.2.2",
47
- "@ag-grid-community/csv-export": "32.2.2",
48
- "@ag-grid-community/react": "32.2.2",
49
- "@ag-grid-community/styles": "32.2.2",
50
- "@ag-grid-enterprise/clipboard": "32.2.2",
51
- "@ag-grid-enterprise/column-tool-panel": "32.2.2",
52
- "@ag-grid-enterprise/core": "32.2.2",
53
- "@ag-grid-enterprise/excel-export": "32.2.2",
54
- "@ag-grid-enterprise/menu": "32.2.2",
55
- "@ag-grid-enterprise/range-selection": "32.2.2",
56
- "@ag-grid-enterprise/row-grouping": "32.2.2",
57
- "@ag-grid-enterprise/server-side-row-model": "32.2.2",
58
- "@ag-grid-enterprise/side-bar": "32.2.2",
59
- "@finos/legend-art": "7.1.64",
60
- "@finos/legend-code-editor": "2.0.10",
61
- "@finos/legend-graph": "31.10.44",
62
- "@finos/legend-shared": "10.0.58",
63
- "@types/react": "18.3.11",
45
+ "@ag-grid-community/client-side-row-model": "32.3.2",
46
+ "@ag-grid-community/core": "32.3.2",
47
+ "@ag-grid-community/csv-export": "32.3.2",
48
+ "@ag-grid-community/react": "32.3.2",
49
+ "@ag-grid-community/styles": "32.3.2",
50
+ "@ag-grid-enterprise/clipboard": "32.3.2",
51
+ "@ag-grid-enterprise/column-tool-panel": "32.3.2",
52
+ "@ag-grid-enterprise/core": "32.3.2",
53
+ "@ag-grid-enterprise/excel-export": "32.3.2",
54
+ "@ag-grid-enterprise/menu": "32.3.2",
55
+ "@ag-grid-enterprise/range-selection": "32.3.2",
56
+ "@ag-grid-enterprise/row-grouping": "32.3.2",
57
+ "@ag-grid-enterprise/server-side-row-model": "32.3.2",
58
+ "@ag-grid-enterprise/side-bar": "32.3.2",
59
+ "@finos/legend-art": "7.1.65",
60
+ "@finos/legend-code-editor": "2.0.11",
61
+ "@finos/legend-graph": "31.10.45",
62
+ "@finos/legend-shared": "10.0.59",
63
+ "@types/react": "18.3.12",
64
64
  "mathjs": "13.2.0",
65
65
  "mobx": "6.13.5",
66
66
  "mobx-react-lite": "4.0.7",
@@ -70,14 +70,14 @@
70
70
  "serializr": "3.0.3"
71
71
  },
72
72
  "devDependencies": {
73
- "@finos/legend-dev-utils": "2.1.26",
73
+ "@finos/legend-dev-utils": "2.1.27",
74
74
  "@jest/globals": "29.7.0",
75
75
  "cross-env": "7.0.3",
76
- "eslint": "9.12.0",
76
+ "eslint": "9.13.0",
77
77
  "jest": "29.7.0",
78
78
  "npm-run-all": "4.1.5",
79
79
  "rimraf": "6.0.1",
80
- "sass": "1.80.2",
80
+ "sass": "1.80.5",
81
81
  "typescript": "5.6.3"
82
82
  },
83
83
  "peerDependencies": {
@@ -30,6 +30,7 @@ import {
30
30
  type DataCubeQueryFunctionMap,
31
31
  isPivotResultColumnName,
32
32
  PIVOT_COLUMN_NAME_VALUE_SEPARATOR,
33
+ DataCubeQuerySortDirection,
33
34
  } from '../../core/DataCubeQueryEngine.js';
34
35
  import {
35
36
  guaranteeNonNullable,
@@ -47,6 +48,8 @@ import {
47
48
  _var,
48
49
  _functionCompositionUnProcessor,
49
50
  _property,
51
+ _collection,
52
+ _col,
50
53
  } from '../../core/DataCubeQueryBuilderUtils.js';
51
54
  import {
52
55
  INTERNAL__GRID_CLIENT_MISSING_VALUE,
@@ -256,10 +259,25 @@ export function generateRowGroupingDrilldownExecutableQueryPostProcessor(
256
259
  ]);
257
260
  sequence[groupByIdx] = groupByFunc;
258
261
  funcMap.groupBy = groupByFunc;
262
+
263
+ // update sort accordingly
264
+ const groupBySort = guaranteeNonNullable(funcMap.groupBySort);
265
+ groupBySort.parameters[0] = _collection(
266
+ groupByColumns.map((col) =>
267
+ _function(
268
+ configuration.treeColumnSortDirection ===
269
+ DataCubeQuerySortDirection.ASCENDING
270
+ ? DataCubeFunction.ASCENDING
271
+ : DataCubeFunction.DESCENDING,
272
+ [_col(col.name)],
273
+ ),
274
+ ),
275
+ );
259
276
  } else {
260
277
  // when maximum level of drilldown is reached, we simply just need to
261
278
  // filter the data to match drilldown values, no groupBy() is needed.
262
279
  _unprocess('groupBy');
280
+ _unprocess('groupBySort');
263
281
  }
264
282
  }
265
283
  };