@finos/legend-query-builder 4.16.6 → 4.16.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. package/lib/graph/QueryBuilderMetaModelConst.d.ts +1 -0
  2. package/lib/graph/QueryBuilderMetaModelConst.d.ts.map +1 -1
  3. package/lib/graph/QueryBuilderMetaModelConst.js +1 -0
  4. package/lib/graph/QueryBuilderMetaModelConst.js.map +1 -1
  5. package/lib/graph-manager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.js +5 -2
  6. package/lib/graph-manager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.js.map +1 -1
  7. package/lib/graph-manager/protocol/pure/v1/V1_QueryValueSpecificationBuilderHelper.d.ts +3 -1
  8. package/lib/graph-manager/protocol/pure/v1/V1_QueryValueSpecificationBuilderHelper.d.ts.map +1 -1
  9. package/lib/graph-manager/protocol/pure/v1/V1_QueryValueSpecificationBuilderHelper.js +99 -2
  10. package/lib/graph-manager/protocol/pure/v1/V1_QueryValueSpecificationBuilderHelper.js.map +1 -1
  11. package/lib/index.css +1 -1
  12. package/lib/package.json +5 -5
  13. package/lib/stores/QueryBuilderStateBuilder.d.ts.map +1 -1
  14. package/lib/stores/QueryBuilderStateBuilder.js +21 -2
  15. package/lib/stores/QueryBuilderStateBuilder.js.map +1 -1
  16. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderRelationAggregationValueSpecBuilder.d.ts +19 -0
  17. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderRelationAggregationValueSpecBuilder.d.ts.map +1 -0
  18. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderRelationAggregationValueSpecBuilder.js +98 -0
  19. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderRelationAggregationValueSpecBuilder.js.map +1 -0
  20. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderTypedAggregationStateBuilder.d.ts +21 -0
  21. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderTypedAggregationStateBuilder.d.ts.map +1 -0
  22. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderTypedAggregationStateBuilder.js +102 -0
  23. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderTypedAggregationStateBuilder.js.map +1 -0
  24. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.d.ts.map +1 -1
  25. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.js +9 -3
  26. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.js.map +1 -1
  27. package/lib/stores/fetch-structure/tds/projection/{QueryBuilderRelationProjectValueSpecBuidler.d.ts → QueryBuilderRelationProjectValueSpecBuilder.d.ts} +1 -1
  28. package/lib/stores/fetch-structure/tds/projection/{QueryBuilderRelationProjectValueSpecBuidler.d.ts.map → QueryBuilderRelationProjectValueSpecBuilder.d.ts.map} +1 -1
  29. package/lib/stores/fetch-structure/tds/projection/{QueryBuilderRelationProjectValueSpecBuidler.js → QueryBuilderRelationProjectValueSpecBuilder.js} +1 -1
  30. package/lib/stores/fetch-structure/tds/projection/{QueryBuilderRelationProjectValueSpecBuidler.js.map → QueryBuilderRelationProjectValueSpecBuilder.js.map} +1 -1
  31. package/lib/stores/fetch-structure/tds/projection/QueryBuilderTypedProjectionStateBuilder.d.ts.map +1 -1
  32. package/lib/stores/fetch-structure/tds/projection/QueryBuilderTypedProjectionStateBuilder.js +8 -9
  33. package/lib/stores/fetch-structure/tds/projection/QueryBuilderTypedProjectionStateBuilder.js.map +1 -1
  34. package/package.json +15 -15
  35. package/src/graph/QueryBuilderMetaModelConst.ts +1 -0
  36. package/src/graph-manager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.ts +4 -4
  37. package/src/graph-manager/protocol/pure/v1/V1_QueryValueSpecificationBuilderHelper.ts +223 -2
  38. package/src/stores/QueryBuilderStateBuilder.ts +40 -8
  39. package/src/stores/fetch-structure/tds/aggregation/QueryBuilderRelationAggregationValueSpecBuilder.ts +196 -0
  40. package/src/stores/fetch-structure/tds/aggregation/QueryBuilderTypedAggregationStateBuilder.ts +253 -0
  41. package/src/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.ts +11 -3
  42. package/src/stores/fetch-structure/tds/projection/QueryBuilderTypedProjectionStateBuilder.ts +8 -9
  43. package/tsconfig.json +3 -1
  44. /package/src/stores/fetch-structure/tds/projection/{QueryBuilderRelationProjectValueSpecBuidler.ts → QueryBuilderRelationProjectValueSpecBuilder.ts} +0 -0
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { ColSpecArray, extractElementNameFromPath, SimpleFunctionExpression, ColSpecArrayInstance, Multiplicity, ColSpec, GenericType, GenericTypeExplicitReference, Relation, RelationColumn, RelationType, LambdaFunctionInstanceValue, AbstractPropertyExpression, PropertyExplicitReference, Property, VariableExpression, } from '@finos/legend-graph';
17
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../graph/QueryBuilderMetaModelConst.js';
18
+ import { buildGenericLambdaFunctionInstanceValue } from '../../../QueryBuilderValueSpecificationHelper.js';
19
+ import { guaranteeNonNullable, guaranteeType, UnsupportedOperationError, } from '@finos/legend-shared';
20
+ import { DEFAULT_LAMBDA_VARIABLE_NAME } from '@finos/legend-data-cube';
21
+ export const buildRelationAggregation = (precedingExpression, tdsState) => {
22
+ // Verify that preceding expression is a relation project
23
+ const projectFunction = guaranteeType(precedingExpression, SimpleFunctionExpression);
24
+ if (projectFunction.functionName !==
25
+ extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_PROJECT)) {
26
+ throw new UnsupportedOperationError(`Can't build relation groupBy() expression: previous expression must be project() column expression`);
27
+ }
28
+ // Build groupBy() expression
29
+ const groupByFunction = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_GROUP_BY));
30
+ const queryBuilderState = tdsState.queryBuilderState;
31
+ // Build normal (grouped) columns
32
+ const groupByCols = new ColSpecArrayInstance(Multiplicity.ONE, undefined);
33
+ const groupByColSpecArray = new ColSpecArray();
34
+ groupByCols.values = [groupByColSpecArray];
35
+ // Build aggregation columns
36
+ const aggregationCols = new ColSpecArrayInstance(Multiplicity.ONE, undefined);
37
+ const aggregationColSpecArray = new ColSpecArray();
38
+ aggregationCols.values = [aggregationColSpecArray];
39
+ // Build relation return type
40
+ const relationType = new RelationType(RelationType.ID);
41
+ // Add normal (non-aggregated) columns to groupByCols
42
+ tdsState.projectionColumns
43
+ .filter((projectionColumnState) => !tdsState.aggregationState.columns.some((aggregationColumnState) => aggregationColumnState.projectionColumnState ===
44
+ projectionColumnState))
45
+ .forEach((projectionColumnState) => {
46
+ // Create and add column to groupByColSpecArray
47
+ const colSpec = new ColSpec();
48
+ colSpec.name = projectionColumnState.columnName;
49
+ groupByColSpecArray.colSpecs.push(colSpec);
50
+ // Add column return type to relationType
51
+ const returnType = guaranteeNonNullable(projectionColumnState.getColumnType(), `Can't create value spec for projection column ${projectionColumnState.columnName}. Missing type.`);
52
+ relationType.columns.push(new RelationColumn(projectionColumnState.columnName, returnType));
53
+ });
54
+ // Add aggregation columns to aggregationCols
55
+ tdsState.aggregationState.columns.forEach((aggregationColumnState) => {
56
+ // Create and add column to aggregationColSpecArray
57
+ const colSpec = new ColSpec();
58
+ colSpec.name = aggregationColumnState.columnName;
59
+ aggregationColSpecArray.colSpecs.push(colSpec);
60
+ // Build map function (function1)
61
+ // First, get the ColSpec from the preceding projection so we can get the name of the projected column.
62
+ const projectionColSpec = guaranteeNonNullable(guaranteeNonNullable(projectFunction.parametersValues[1].values[0], 'Could not find ColSpec array in project() function first parameter').colSpecs.find((_colSpec) => _colSpec.name === aggregationColumnState.columnName), `Could not find projected column matching aggregation column '${aggregationColumnState.columnName}'`);
63
+ const projectedPropertyExpression = guaranteeType(guaranteeType(projectionColSpec.function1, LambdaFunctionInstanceValue)
64
+ .values[0]?.expressionSequence[0], AbstractPropertyExpression);
65
+ const projectedProperty = guaranteeType(projectedPropertyExpression.func.value, Property);
66
+ // Second, build a new AbstractPropertyExpression for our map function
67
+ const newPropertyExpression = new AbstractPropertyExpression('');
68
+ newPropertyExpression.func = PropertyExplicitReference.create(new Property(projectionColSpec.name, projectedProperty.multiplicity, projectedProperty.genericType, projectedProperty._OWNER));
69
+ newPropertyExpression.parametersValues = [
70
+ new VariableExpression(DEFAULT_LAMBDA_VARIABLE_NAME, Multiplicity.ONE),
71
+ ];
72
+ const mapLambda = buildGenericLambdaFunctionInstanceValue(DEFAULT_LAMBDA_VARIABLE_NAME, [newPropertyExpression], queryBuilderState.graphManagerState.graph);
73
+ colSpec.function1 = mapLambda;
74
+ // Reduce function (function2)
75
+ const reduceLambda = buildGenericLambdaFunctionInstanceValue(aggregationColumnState.lambdaParameterName, [
76
+ aggregationColumnState.operator.buildAggregateExpressionFromState(aggregationColumnState),
77
+ ], aggregationColumnState.aggregationState.tdsState.queryBuilderState
78
+ .graphManagerState.graph);
79
+ colSpec.function2 = reduceLambda;
80
+ // Add column return type to relationType
81
+ const returnType = guaranteeNonNullable(aggregationColumnState.getColumnType(), `Can't create value spec for aggregation column ${aggregationColumnState.columnName}. Missing type.`);
82
+ relationType.columns.push(new RelationColumn(aggregationColumnState.columnName, returnType));
83
+ });
84
+ groupByFunction.parametersValues = [
85
+ precedingExpression,
86
+ groupByCols,
87
+ aggregationCols,
88
+ ];
89
+ const relationGenericType = new GenericType(Relation.INSTANCE);
90
+ const relationTypeGenericType = new GenericType(relationType);
91
+ relationGenericType.typeArguments = [
92
+ GenericTypeExplicitReference.create(relationTypeGenericType),
93
+ ];
94
+ groupByFunction.genericType =
95
+ GenericTypeExplicitReference.create(relationGenericType);
96
+ return groupByFunction;
97
+ };
98
+ //# sourceMappingURL=QueryBuilderRelationAggregationValueSpecBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderRelationAggregationValueSpecBuilder.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/aggregation/QueryBuilderRelationAggregationValueSpecBuilder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { type ColSpec, type LambdaFunction, SimpleFunctionExpression } from '@finos/legend-graph';
17
+ import { type QueryBuilderState } from '../../../QueryBuilderState.js';
18
+ export declare const processTypedAggregationColSpec: (colSpec: ColSpec, parentExpression: SimpleFunctionExpression | undefined, queryBuilderState: QueryBuilderState) => void;
19
+ export declare const processTypedGroupByExpression: (expression: SimpleFunctionExpression, queryBuilderState: QueryBuilderState, parentLambda: LambdaFunction) => void;
20
+ export declare const isTypedGroupByExpression: (expression: SimpleFunctionExpression) => boolean;
21
+ //# sourceMappingURL=QueryBuilderTypedAggregationStateBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderTypedAggregationStateBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/aggregation/QueryBuilderTypedAggregationStateBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,cAAc,EAKnB,wBAAwB,EAEzB,MAAM,qBAAqB,CAAC;AAS7B,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,+BAA+B,CAAC;AAMvC,eAAO,MAAM,8BAA8B,YAChC,OAAO,oBACE,wBAAwB,GAAG,SAAS,qBACnC,iBAAiB,KACnC,IAuHF,CAAC;AAEF,eAAO,MAAM,6BAA6B,eAC5B,wBAAwB,qBACjB,iBAAiB,gBACtB,cAAc,KAC3B,IAiEF,CAAC;AAEF,eAAO,MAAM,wBAAwB,eACvB,wBAAwB,KACnC,OAWF,CAAC"}
@@ -0,0 +1,102 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { ColSpecArrayInstance, LambdaFunctionInstanceValue, matchFunctionName, RelationType, SimpleFunctionExpression, VariableExpression, } from '@finos/legend-graph';
17
+ import { assertTrue, assertType, guaranteeNonNullable, guaranteeType, returnUndefOnError, UnsupportedOperationError, } from '@finos/legend-shared';
18
+ import { QUERY_BUILDER_LAMBDA_WRITER_MODE, } from '../../../QueryBuilderState.js';
19
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../graph/QueryBuilderMetaModelConst.js';
20
+ import { QueryBuilderValueSpecificationProcessor } from '../../../QueryBuilderStateBuilder.js';
21
+ import { QueryBuilderTDSState } from '../QueryBuilderTDSState.js';
22
+ import { QueryBuilderAggregateOperator_Wavg } from './operators/QueryBuilderAggregateOperator_Wavg.js';
23
+ export const processTypedAggregationColSpec = (colSpec, parentExpression, queryBuilderState) => {
24
+ // check parent expression
25
+ assertTrue(Boolean(parentExpression &&
26
+ matchFunctionName(parentExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_GROUP_BY)), `Can't process typed aggregation ColSpec: only supported when used within a groupBy() expression`);
27
+ // Check that there are 2 lambdas, one for map and one for reduce
28
+ const mapLambdaFunctionInstance = guaranteeType(colSpec.function1, LambdaFunctionInstanceValue, `Can't process colSpec: function1 is not a lambda function instance value`);
29
+ assertTrue(mapLambdaFunctionInstance.values.length === 1, `Can't process typed aggregation ColSpec. function1 should only have 1 lambda value.`);
30
+ assertTrue(guaranteeNonNullable(mapLambdaFunctionInstance.values[0]).expressionSequence
31
+ .length === 1, `Can't process typed aggregation ColSpec. function1 lambda should only have 1 expression.`);
32
+ const reduceLambdaFunctionInstance = guaranteeType(colSpec.function2, LambdaFunctionInstanceValue, `Can't process colSpec: function2 is not a lambda function instance value`);
33
+ // build state
34
+ if (queryBuilderState.fetchStructureState.implementation instanceof
35
+ QueryBuilderTDSState) {
36
+ const tdsState = queryBuilderState.fetchStructureState.implementation;
37
+ const aggregationState = tdsState.aggregationState;
38
+ const projectionColumnState = guaranteeNonNullable(tdsState.projectionColumns.find((projectionColumn) => projectionColumn.columnName === colSpec.name), `Projection column with name ${colSpec.name} not found`);
39
+ const reduceLambdaFunction = guaranteeNonNullable(reduceLambdaFunctionInstance.values[0], `Can't process colSpec: function2 lambda function is missing`);
40
+ assertTrue(reduceLambdaFunction.expressionSequence.length === 1, `Can't process colSpec: only support colSpec function2 lambda body with 1 expression`);
41
+ assertTrue(reduceLambdaFunction.functionType.parameters.length === 1, `Can't process colSpec function2 lambda: only support lambda with 1 parameter`);
42
+ const reduceFunctionExpression = guaranteeType(reduceLambdaFunction.expressionSequence[0], SimpleFunctionExpression, `Can't process colSpec: only support colSpec function2 lambda body with 1 expression`);
43
+ const lambdaParam = guaranteeType(reduceLambdaFunction.functionType.parameters[0], VariableExpression, `Can't process colSpec function2 lambda: parameter is missing`);
44
+ for (const operator of aggregationState.operators) {
45
+ // NOTE: this allow plugin author to either return `undefined` or throw error
46
+ // if there is a problem with building the lambda. Either case, the plugin is
47
+ // considered as not supporting the lambda.
48
+ const aggregateColumnState = returnUndefOnError(() => operator.buildAggregateColumnState(reduceFunctionExpression, lambdaParam, projectionColumnState));
49
+ if (projectionColumnState.wavgWeight &&
50
+ aggregateColumnState &&
51
+ aggregateColumnState.operator instanceof
52
+ QueryBuilderAggregateOperator_Wavg) {
53
+ aggregateColumnState.operator.setWeight(projectionColumnState.wavgWeight);
54
+ }
55
+ if (aggregateColumnState) {
56
+ aggregationState.addColumn(aggregateColumnState);
57
+ // Update parent groupBy() expression's return type with this column's return type
58
+ // (a temporary return type was set when we processed the groupBy() protocol)
59
+ const parentGroupByRelationType = guaranteeType(parentExpression?.genericType?.value.typeArguments?.[0]?.value
60
+ .rawType, RelationType, `Can't process colSpec: parent groupBy() expression's return type is not a relation`);
61
+ const relationTypeColumn = guaranteeNonNullable(parentGroupByRelationType.columns.find((_column) => _column.name === colSpec.name), `Can't process colSpec: Can't find column '${colSpec.name}' in parent groupBy() expression's relation return type`);
62
+ relationTypeColumn.type =
63
+ aggregateColumnState.getColumnType() ?? relationTypeColumn.type;
64
+ return;
65
+ }
66
+ }
67
+ }
68
+ throw new UnsupportedOperationError(`Can't process aggregate expression function: no compatible aggregate operator processer available from plugins`);
69
+ };
70
+ export const processTypedGroupByExpression = (expression, queryBuilderState, parentLambda) => {
71
+ // check parameters
72
+ assertTrue(expression.parametersValues.length === 3, `Can't process groupBy() expression: groupBy() expects 2 arguments`);
73
+ // check preceding expression is relation project, then process the project
74
+ const precedingExpression = guaranteeType(expression.parametersValues[0], SimpleFunctionExpression, `Can't process groupBy() expression: only support groupBy() immediately following an expression`);
75
+ assertTrue(matchFunctionName(precedingExpression.functionName, [
76
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_PROJECT,
77
+ ]), `Can't process groupBy() expression: only support groupBy() immediately following relation project()`);
78
+ QueryBuilderValueSpecificationProcessor.process(precedingExpression, parentLambda, queryBuilderState);
79
+ const tdsState = guaranteeType(queryBuilderState.fetchStructureState.implementation, QueryBuilderTDSState);
80
+ // process normal (non-aggregation) columns (ensure columns exist in project expression)
81
+ const columnExpressions = guaranteeType(expression.parametersValues[1], ColSpecArrayInstance, `Can't process groupBy() expression: groupBy() expects argument #1 to be a ColSpecArrayInstance`);
82
+ assertTrue(columnExpressions.values.length === 1, `Can't process groupBy() expression: groupBy() expects argument #1 to be a ColSpecArrayInstance with 1 element`);
83
+ queryBuilderState.setLambdaWriteMode(QUERY_BUILDER_LAMBDA_WRITER_MODE.TYPED_FETCH_STRUCTURE);
84
+ columnExpressions.values[0]?.colSpecs.forEach((colSpec) => {
85
+ assertTrue(tdsState.projectionColumns.filter((projectedColumn) => projectedColumn.columnName === colSpec.name).length === 1, `Can't process groupBy() expression: column '${colSpec.name}' not found in project() expression`);
86
+ });
87
+ // process aggregation columns
88
+ const aggregationLambdas = expression.parametersValues[2];
89
+ assertType(aggregationLambdas, ColSpecArrayInstance, `Can't process groupBy() expression: groupBy() expects argument #2 to be a ColSpecArrayInstance`);
90
+ QueryBuilderValueSpecificationProcessor.processChild(aggregationLambdas, expression, parentLambda, queryBuilderState);
91
+ };
92
+ export const isTypedGroupByExpression = (expression) => {
93
+ return (expression.functionName ===
94
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_GROUP_BY ||
95
+ (matchFunctionName(expression.functionName, [
96
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY,
97
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_GROUP_BY,
98
+ ]) &&
99
+ expression.parametersValues.length === 3 &&
100
+ expression.parametersValues[1] instanceof ColSpecArrayInstance));
101
+ };
102
+ //# sourceMappingURL=QueryBuilderTypedAggregationStateBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderTypedAggregationStateBuilder.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/aggregation/QueryBuilderTypedAggregationStateBuilder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderProjectionValueSpecificationBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,cAAc,EAcpB,MAAM,qBAAqB,CAAC;AAW7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGvE,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,yDAAyD,CAAC;AA+DjE,eAAO,MAAM,gBAAgB,aACjB,oBAAoB,kBACd,cAAc,YACpB,2BAA2B,KACpC,IAqTF,CAAC"}
1
+ {"version":3,"file":"QueryBuilderProjectionValueSpecificationBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,cAAc,EAcpB,MAAM,qBAAqB,CAAC;AAW7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGvE,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,yDAAyD,CAAC;AAgEjE,eAAO,MAAM,gBAAgB,aACjB,oBAAoB,kBACd,cAAc,YACpB,2BAA2B,KACpC,IA4TF,CAAC"}
@@ -21,9 +21,10 @@ import { buildGenericLambdaFunctionInstanceValue } from '../../../QueryBuilderVa
21
21
  import { buildPropertyExpressionChain, } from '../../../QueryBuilderValueSpecificationBuilderHelper.js';
22
22
  import { appendOLAPGroupByState } from '../window/QueryBuilderWindowValueSpecificationBuilder.js';
23
23
  import { appendPostFilter } from '../post-filter/QueryBuilderPostFilterValueSpecificationBuilder.js';
24
- import { buildRelationProjection } from './QueryBuilderRelationProjectValueSpecBuidler.js';
24
+ import { buildRelationProjection } from './QueryBuilderRelationProjectValueSpecBuilder.js';
25
25
  import { QueryBuilderAggregateOperator_Wavg } from '../aggregation/operators/QueryBuilderAggregateOperator_Wavg.js';
26
26
  import { appendResultSetModifier } from '../result-modifier/ResultModifierValueSpecificationBuilder.js';
27
+ import { buildRelationAggregation } from '../aggregation/QueryBuilderRelationAggregationValueSpecBuilder.js';
27
28
  const buildProjectColFunc = (tdsState, projectionColumnState, options) => {
28
29
  const colFunc = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_COL));
29
30
  let columnLambda;
@@ -51,7 +52,8 @@ export const appendProjection = (tdsState, lambdaFunction, options) => {
51
52
  const queryBuilderState = tdsState.queryBuilderState;
52
53
  const precedingExpression = guaranteeNonNullable(lambdaFunction.expressionSequence[0], `Can't build projection expression: preceding expression is not defined`);
53
54
  // build projection
54
- if (tdsState.aggregationState.columns.length) {
55
+ if (tdsState.aggregationState.columns.length &&
56
+ !tdsState.queryBuilderState.isFetchStructureTyped) {
55
57
  // aggregation
56
58
  const groupByFunction = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY));
57
59
  const colLambdas = new CollectionInstanceValue(queryBuilderState.graphManagerState.graph.getMultiplicity(tdsState.projectionColumns.length -
@@ -198,7 +200,11 @@ export const appendProjection = (tdsState, lambdaFunction, options) => {
198
200
  }
199
201
  else {
200
202
  const projectFunction = buildRelationProjection(precedingExpression, tdsState, options);
201
- lambdaFunction.expressionSequence[0] = projectFunction;
203
+ const aggregationFunction = tdsState.aggregationState.columns.length
204
+ ? buildRelationAggregation(projectFunction, tdsState)
205
+ : null;
206
+ lambdaFunction.expressionSequence[0] =
207
+ aggregationFunction ?? projectFunction;
202
208
  }
203
209
  }
204
210
  // build olapGroupBy
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderProjectionValueSpecificationBuilder.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryBuilderProjectionValueSpecificationBuilder.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.ts"],"names":[],"mappings":"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"}
@@ -17,4 +17,4 @@ import { type ValueSpecification, SimpleFunctionExpression } from '@finos/legend
17
17
  import type { QueryBuilderTDSState } from '../QueryBuilderTDSState.js';
18
18
  import { type LambdaFunctionBuilderOption } from '../../../QueryBuilderValueSpecificationBuilderHelper.js';
19
19
  export declare const buildRelationProjection: (precedingExpression: ValueSpecification, tdsState: QueryBuilderTDSState, options?: LambdaFunctionBuilderOption) => SimpleFunctionExpression;
20
- //# sourceMappingURL=QueryBuilderRelationProjectValueSpecBuidler.d.ts.map
20
+ //# sourceMappingURL=QueryBuilderRelationProjectValueSpecBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderRelationProjectValueSpecBuidler.d.ts","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/projection/QueryBuilderRelationProjectValueSpecBuidler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAEL,KAAK,kBAAkB,EAEvB,wBAAwB,EAazB,MAAM,qBAAqB,CAAC;AAM7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAEvE,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,yDAAyD,CAAC;AAMjE,eAAO,MAAM,uBAAuB,wBACb,kBAAkB,YAC7B,oBAAoB,YACpB,2BAA2B,KACpC,wBA8EF,CAAC"}
1
+ {"version":3,"file":"QueryBuilderRelationProjectValueSpecBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/projection/QueryBuilderRelationProjectValueSpecBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAEL,KAAK,kBAAkB,EAEvB,wBAAwB,EAazB,MAAM,qBAAqB,CAAC;AAM7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAEvE,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,yDAAyD,CAAC;AAMjE,eAAO,MAAM,uBAAuB,wBACb,kBAAkB,YAC7B,oBAAoB,YACpB,2BAA2B,KACpC,wBA8EF,CAAC"}
@@ -62,4 +62,4 @@ export const buildRelationProjection = (precedingExpression, tdsState, options)
62
62
  GenericTypeExplicitReference.create(relationGenericType);
63
63
  return projectFunction;
64
64
  };
65
- //# sourceMappingURL=QueryBuilderRelationProjectValueSpecBuidler.js.map
65
+ //# sourceMappingURL=QueryBuilderRelationProjectValueSpecBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderRelationProjectValueSpecBuidler.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/projection/QueryBuilderRelationProjectValueSpecBuidler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryBuilderRelationProjectValueSpecBuilder.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/projection/QueryBuilderRelationProjectValueSpecBuilder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderTypedProjectionStateBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/projection/QueryBuilderTypedProjectionStateBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,cAAc,EACnB,wBAAwB,EAGzB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,+BAA+B,CAAC;AAOvC,eAAO,MAAM,gCAAgC,eAC/B,wBAAwB,qBACjB,iBAAiB,gBACtB,cAAc,KAC3B,IAgDF,CAAC;AAEF,eAAO,MAAM,2BAA2B,eAC1B,wBAAwB,KACnC,OAYF,CAAC"}
1
+ {"version":3,"file":"QueryBuilderTypedProjectionStateBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/projection/QueryBuilderTypedProjectionStateBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,cAAc,EACnB,wBAAwB,EAGzB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,+BAA+B,CAAC;AAOvC,eAAO,MAAM,gCAAgC,eAC/B,wBAAwB,qBACjB,iBAAiB,gBACtB,cAAc,KAC3B,IAgDF,CAAC;AAEF,eAAO,MAAM,2BAA2B,eAC1B,wBAAwB,KACnC,OAWF,CAAC"}
@@ -41,14 +41,13 @@ export const processTypedTDSProjectExpression = (expression, queryBuilderState,
41
41
  QueryBuilderValueSpecificationProcessor.processChild(classInstance, expression, parentLambda, queryBuilderState);
42
42
  };
43
43
  export const isTypedProjectionExpression = (expression) => {
44
- if (matchFunctionName(expression.functionName, [
45
- QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT,
46
- QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_PROJECT,
47
- ])) {
48
- if (expression.parametersValues.length === 2) {
49
- return expression.parametersValues[1] instanceof ColSpecArrayInstance;
50
- }
51
- }
52
- return false;
44
+ return (expression.functionName ===
45
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_PROJECT ||
46
+ (matchFunctionName(expression.functionName, [
47
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT,
48
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_PROJECT,
49
+ ]) &&
50
+ expression.parametersValues.length === 2 &&
51
+ expression.parametersValues[1] instanceof ColSpecArrayInstance));
53
52
  };
54
53
  //# sourceMappingURL=QueryBuilderTypedProjectionStateBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderTypedProjectionStateBuilder.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/projection/QueryBuilderTypedProjectionStateBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAEL,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,8BAA8B,EAAE,MAAM,wDAAwD,CAAC;AACxG,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EACL,gCAAgC,GAEjC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,iCAAiC,EACjC,yCAAyC,GAC1C,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAAE,uCAAuC,EAAE,MAAM,sCAAsC,CAAC;AAE/F,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAC9C,UAAoC,EACpC,iBAAoC,EACpC,YAA4B,EACtB,EAAE;IACR,mBAAmB;IACnB,UAAU,CACR,UAAU,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,EACxC,+EAA+E,CAChF,CAAC;IACF,yBAAyB;IACzB,iBAAiB,CAAC,mBAAmB,CAAC,oBAAoB,CACxD,8BAA8B,CAAC,sBAAsB,CACtD,CAAC;IAEF,6BAA6B;IAC7B,MAAM,mBAAmB,GAAG,aAAa,CACvC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAC9B,wBAAwB,EACxB,4GAA4G,CAC7G,CAAC;IACF,UAAU,CACR,iBAAiB,CAAC,mBAAmB,CAAC,YAAY,EAAE;QAClD,yCAAyC,CAAC,OAAO;QACjD,yCAAyC,CAAC,gBAAgB;QAC1D,yCAAyC,CAAC,yBAAyB;QACnE,iCAAiC,CAAC,MAAM;QACxC,iCAAiC,CAAC,SAAS;KAC5C,CAAC,EACF,2IAA2I,CAC5I,CAAC;IACF,uCAAuC,CAAC,OAAO,CAC7C,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,CAClB,CAAC;IACF,gBAAgB;IAChB,MAAM,aAAa,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACrD,UAAU,CACR,aAAa,EACb,oBAAoB,EACpB,8GAA8G,CAC/G,CAAC;IACF,iBAAiB,CAAC,kBAAkB,CAClC,gCAAgC,CAAC,qBAAqB,CACvD,CAAC;IACF,uCAAuC,CAAC,YAAY,CAClD,aAAa,EACb,UAAU,EACV,YAAY,EACZ,iBAAiB,CAClB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CACzC,UAAoC,EAC3B,EAAE;IACX,IACE,iBAAiB,CAAC,UAAU,CAAC,YAAY,EAAE;QACzC,iCAAiC,CAAC,WAAW;QAC7C,iCAAiC,CAAC,gBAAgB;KACnD,CAAC,EACF,CAAC;QACD,IAAI,UAAU,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7C,OAAO,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,oBAAoB,CAAC;QACxE,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
1
+ {"version":3,"file":"QueryBuilderTypedProjectionStateBuilder.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/projection/QueryBuilderTypedProjectionStateBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAEL,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,8BAA8B,EAAE,MAAM,wDAAwD,CAAC;AACxG,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EACL,gCAAgC,GAEjC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,iCAAiC,EACjC,yCAAyC,GAC1C,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAAE,uCAAuC,EAAE,MAAM,sCAAsC,CAAC;AAE/F,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAC9C,UAAoC,EACpC,iBAAoC,EACpC,YAA4B,EACtB,EAAE;IACR,mBAAmB;IACnB,UAAU,CACR,UAAU,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,EACxC,+EAA+E,CAChF,CAAC;IACF,yBAAyB;IACzB,iBAAiB,CAAC,mBAAmB,CAAC,oBAAoB,CACxD,8BAA8B,CAAC,sBAAsB,CACtD,CAAC;IAEF,6BAA6B;IAC7B,MAAM,mBAAmB,GAAG,aAAa,CACvC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAC9B,wBAAwB,EACxB,4GAA4G,CAC7G,CAAC;IACF,UAAU,CACR,iBAAiB,CAAC,mBAAmB,CAAC,YAAY,EAAE;QAClD,yCAAyC,CAAC,OAAO;QACjD,yCAAyC,CAAC,gBAAgB;QAC1D,yCAAyC,CAAC,yBAAyB;QACnE,iCAAiC,CAAC,MAAM;QACxC,iCAAiC,CAAC,SAAS;KAC5C,CAAC,EACF,2IAA2I,CAC5I,CAAC;IACF,uCAAuC,CAAC,OAAO,CAC7C,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,CAClB,CAAC;IACF,gBAAgB;IAChB,MAAM,aAAa,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACrD,UAAU,CACR,aAAa,EACb,oBAAoB,EACpB,8GAA8G,CAC/G,CAAC;IACF,iBAAiB,CAAC,kBAAkB,CAClC,gCAAgC,CAAC,qBAAqB,CACvD,CAAC;IACF,uCAAuC,CAAC,YAAY,CAClD,aAAa,EACb,UAAU,EACV,YAAY,EACZ,iBAAiB,CAClB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CACzC,UAAoC,EAC3B,EAAE;IACX,OAAO,CACL,UAAU,CAAC,YAAY;QACrB,iCAAiC,CAAC,gBAAgB;QACpD,CAAC,iBAAiB,CAAC,UAAU,CAAC,YAAY,EAAE;YAC1C,iCAAiC,CAAC,WAAW;YAC7C,iCAAiC,CAAC,gBAAgB;SACnD,CAAC;YACA,UAAU,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC;YACxC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,oBAAoB,CAAC,CAClE,CAAC;AACJ,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-query-builder",
3
- "version": "4.16.6",
3
+ "version": "4.16.8",
4
4
  "description": "Legend query builder core",
5
5
  "keywords": [
6
6
  "legend",
@@ -42,19 +42,19 @@
42
42
  "test:watch": "jest --watch"
43
43
  },
44
44
  "dependencies": {
45
- "@finos/legend-application": "16.0.25",
46
- "@finos/legend-art": "7.1.82",
47
- "@finos/legend-code-editor": "2.0.46",
48
- "@finos/legend-data-cube": "0.1.6",
49
- "@finos/legend-graph": "32.1.4",
50
- "@finos/legend-lego": "2.0.49",
51
- "@finos/legend-server-depot": "6.0.81",
52
- "@finos/legend-shared": "11.0.4",
53
- "@finos/legend-storage": "3.0.123",
45
+ "@finos/legend-application": "16.0.27",
46
+ "@finos/legend-art": "7.1.84",
47
+ "@finos/legend-code-editor": "2.0.48",
48
+ "@finos/legend-data-cube": "0.1.8",
49
+ "@finos/legend-graph": "32.1.6",
50
+ "@finos/legend-lego": "2.0.51",
51
+ "@finos/legend-server-depot": "6.0.83",
52
+ "@finos/legend-shared": "11.0.6",
53
+ "@finos/legend-storage": "3.0.125",
54
54
  "@testing-library/dom": "10.4.0",
55
55
  "@testing-library/react": "16.2.0",
56
- "@types/react": "19.0.8",
57
- "@types/react-dom": "19.0.3",
56
+ "@types/react": "19.0.10",
57
+ "@types/react-dom": "19.0.4",
58
58
  "chart.js": "4.4.7",
59
59
  "mathjs": "14.2.1",
60
60
  "mobx": "6.13.6",
@@ -67,14 +67,14 @@
67
67
  "sql-formatter": "15.4.10"
68
68
  },
69
69
  "devDependencies": {
70
- "@finos/legend-dev-utils": "2.2.1",
70
+ "@finos/legend-dev-utils": "2.2.2",
71
71
  "@jest/globals": "29.7.0",
72
72
  "cross-env": "7.0.3",
73
- "eslint": "9.20.0",
73
+ "eslint": "9.20.1",
74
74
  "jest": "29.7.0",
75
75
  "npm-run-all": "4.1.5",
76
76
  "rimraf": "6.0.1",
77
- "sass": "1.84.0",
77
+ "sass": "1.85.0",
78
78
  "typescript": "5.7.3"
79
79
  },
80
80
  "peerDependencies": {
@@ -126,6 +126,7 @@ export enum QUERY_BUILDER_SUPPORTED_FUNCTIONS {
126
126
  RELATION_DISTINCT = 'meta::pure::functions::relation::distinct',
127
127
  RELATION_SORT = 'meta::pure::functions::relation::sort',
128
128
  RELATION_SLICE = 'meta::pure::functions::relation::slice',
129
+ RELATION_GROUP_BY = 'meta::pure::functions::relation::groupBy',
129
130
  // filter
130
131
  CONTAINS = 'meta::pure::functions::string::contains',
131
132
  ENDS_WITH = 'meta::pure::functions::string::endsWith',
@@ -21,11 +21,11 @@ import {
21
21
  V1_buildGetAllFunctionExpression,
22
22
  V1_buildGetAllVersionsFunctionExpression,
23
23
  V1_buildGetAllVersionsInRangeFunctionExpression,
24
- V1_buildGroupByFunctionExpression,
25
24
  V1_buildOLAPGroupByFunctionExpression,
26
25
  V1_buildProjectFunctionExpression,
27
26
  V1_buildSubTypePropertyExpressionTypeInference,
28
27
  V1_buildWatermarkFunctionExpression,
28
+ V1_buildGroupByFunctionExpression,
29
29
  } from './v1/V1_QueryValueSpecificationBuilderHelper.js';
30
30
  import {
31
31
  type V1_GraphBuilderContext,
@@ -159,10 +159,10 @@ export class QueryBuilder_PureProtocolProcessorPlugin extends PureProtocolProces
159
159
  processingContext,
160
160
  );
161
161
  } else if (
162
- matchFunctionName(
163
- functionName,
162
+ matchFunctionName(functionName, [
164
163
  QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY,
165
- )
164
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_GROUP_BY,
165
+ ])
166
166
  ) {
167
167
  return V1_buildGroupByFunctionExpression(
168
168
  functionName,