@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 +1 -1
- package/lib/package.json +18 -18
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.js +9 -2
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.js.map +1 -1
- package/package.json +23 -23
- package/src/stores/view/grid/DataCubeGridQueryBuilder.ts +18 -0
package/lib/index.css
CHANGED
package/lib/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@finos/legend-data-cube",
|
|
3
|
-
"version": "0.0.
|
|
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.
|
|
46
|
-
"@ag-grid-community/core": "32.
|
|
47
|
-
"@ag-grid-community/csv-export": "32.
|
|
48
|
-
"@ag-grid-community/react": "32.
|
|
49
|
-
"@ag-grid-community/styles": "32.
|
|
50
|
-
"@ag-grid-enterprise/clipboard": "32.
|
|
51
|
-
"@ag-grid-enterprise/column-tool-panel": "32.
|
|
52
|
-
"@ag-grid-enterprise/core": "32.
|
|
53
|
-
"@ag-grid-enterprise/excel-export": "32.
|
|
54
|
-
"@ag-grid-enterprise/menu": "32.
|
|
55
|
-
"@ag-grid-enterprise/range-selection": "32.
|
|
56
|
-
"@ag-grid-enterprise/row-grouping": "32.
|
|
57
|
-
"@ag-grid-enterprise/server-side-row-model": "32.
|
|
58
|
-
"@ag-grid-enterprise/side-bar": "32.
|
|
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.
|
|
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.
|
|
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.
|
|
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
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,
|
|
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":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,sBAAsB,GAGvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAA8B,MAAM,qCAAqC,CAAC;AACjF,OAAO,EACL,gCAAgC,EAChC,2BAA2B,EAC3B,gBAAgB,EAEhB,uBAAuB,EACvB,iCAAiC,
|
|
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.
|
|
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.
|
|
46
|
-
"@ag-grid-community/core": "32.
|
|
47
|
-
"@ag-grid-community/csv-export": "32.
|
|
48
|
-
"@ag-grid-community/react": "32.
|
|
49
|
-
"@ag-grid-community/styles": "32.
|
|
50
|
-
"@ag-grid-enterprise/clipboard": "32.
|
|
51
|
-
"@ag-grid-enterprise/column-tool-panel": "32.
|
|
52
|
-
"@ag-grid-enterprise/core": "32.
|
|
53
|
-
"@ag-grid-enterprise/excel-export": "32.
|
|
54
|
-
"@ag-grid-enterprise/menu": "32.
|
|
55
|
-
"@ag-grid-enterprise/range-selection": "32.
|
|
56
|
-
"@ag-grid-enterprise/row-grouping": "32.
|
|
57
|
-
"@ag-grid-enterprise/server-side-row-model": "32.
|
|
58
|
-
"@ag-grid-enterprise/side-bar": "32.
|
|
59
|
-
"@finos/legend-art": "7.1.
|
|
60
|
-
"@finos/legend-code-editor": "2.0.
|
|
61
|
-
"@finos/legend-graph": "31.10.
|
|
62
|
-
"@finos/legend-shared": "10.0.
|
|
63
|
-
"@types/react": "18.3.
|
|
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.
|
|
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.
|
|
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.
|
|
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
|
};
|