@finos/legend-query-builder 4.15.41 → 4.15.43

Sign up to get free protection for your applications and to get access to all the features.
Files changed (33) hide show
  1. package/lib/graph/QueryBuilderMetaModelConst.d.ts +5 -0
  2. package/lib/graph/QueryBuilderMetaModelConst.d.ts.map +1 -1
  3. package/lib/graph/QueryBuilderMetaModelConst.js +5 -0
  4. package/lib/graph/QueryBuilderMetaModelConst.js.map +1 -1
  5. package/lib/index.css +1 -1
  6. package/lib/package.json +3 -3
  7. package/lib/stores/QueryBuilderStateBuilder.d.ts +2 -1
  8. package/lib/stores/QueryBuilderStateBuilder.d.ts.map +1 -1
  9. package/lib/stores/QueryBuilderStateBuilder.js +15 -2
  10. package/lib/stores/QueryBuilderStateBuilder.js.map +1 -1
  11. package/lib/stores/data-cube/QueryBuilderDataCubeEngine.d.ts +7 -8
  12. package/lib/stores/data-cube/QueryBuilderDataCubeEngine.d.ts.map +1 -1
  13. package/lib/stores/data-cube/QueryBuilderDataCubeEngine.js +46 -48
  14. package/lib/stores/data-cube/QueryBuilderDataCubeEngine.js.map +1 -1
  15. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.d.ts +1 -0
  16. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.d.ts.map +1 -1
  17. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.js +26 -2
  18. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.js.map +1 -1
  19. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.d.ts.map +1 -1
  20. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.js +3 -75
  21. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.js.map +1 -1
  22. package/lib/stores/fetch-structure/tds/result-modifier/ResultModifierValueSpecificationBuilder.d.ts +74 -0
  23. package/lib/stores/fetch-structure/tds/result-modifier/ResultModifierValueSpecificationBuilder.d.ts.map +1 -0
  24. package/lib/stores/fetch-structure/tds/result-modifier/ResultModifierValueSpecificationBuilder.js +213 -0
  25. package/lib/stores/fetch-structure/tds/result-modifier/ResultModifierValueSpecificationBuilder.js.map +1 -0
  26. package/package.json +9 -9
  27. package/src/graph/QueryBuilderMetaModelConst.ts +5 -1
  28. package/src/stores/QueryBuilderStateBuilder.ts +21 -3
  29. package/src/stores/data-cube/QueryBuilderDataCubeEngine.ts +86 -86
  30. package/src/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.ts +64 -1
  31. package/src/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.ts +16 -146
  32. package/src/stores/fetch-structure/tds/result-modifier/ResultModifierValueSpecificationBuilder.ts +337 -0
  33. package/tsconfig.json +1 -0
@@ -13,89 +13,17 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { CollectionInstanceValue, extractElementNameFromPath, GenericType, GenericTypeExplicitReference, PrimitiveInstanceValue, SimpleFunctionExpression, INTERNAL__UnknownValueSpecification, V1_serializeRawValueSpecification, V1_transformRawLambda, V1_GraphTransformerContextBuilder, matchFunctionName, PrimitiveType, LambdaFunctionInstanceValue, } from '@finos/legend-graph';
16
+ import { CollectionInstanceValue, extractElementNameFromPath, GenericType, GenericTypeExplicitReference, PrimitiveInstanceValue, SimpleFunctionExpression, INTERNAL__UnknownValueSpecification, V1_serializeRawValueSpecification, V1_transformRawLambda, V1_GraphTransformerContextBuilder, PrimitiveType, LambdaFunctionInstanceValue, } from '@finos/legend-graph';
17
17
  import { at, guaranteeNonNullable, UnsupportedOperationError, } from '@finos/legend-shared';
18
18
  import { QueryBuilderDerivationProjectionColumnState, QueryBuilderSimpleProjectionColumnState, } from './QueryBuilderProjectionColumnState.js';
19
- import {} from '../QueryResultSetModifierState.js';
20
19
  import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../graph/QueryBuilderMetaModelConst.js';
21
20
  import { buildGenericLambdaFunctionInstanceValue } from '../../../QueryBuilderValueSpecificationHelper.js';
22
21
  import { buildPropertyExpressionChain, } from '../../../QueryBuilderValueSpecificationBuilderHelper.js';
23
22
  import { appendOLAPGroupByState } from '../window/QueryBuilderWindowValueSpecificationBuilder.js';
24
23
  import { appendPostFilter } from '../post-filter/QueryBuilderPostFilterValueSpecificationBuilder.js';
25
- import { buildTDSSortTypeExpression } from '../QueryBuilderTDSHelper.js';
26
24
  import { buildRelationProjection } from './QueryBuilderRelationProjectValueSpecBuidler.js';
27
25
  import { QueryBuilderAggregateOperator_Wavg } from '../aggregation/operators/QueryBuilderAggregateOperator_Wavg.js';
28
- const buildSortExpression = (sortColumnState) => buildTDSSortTypeExpression(sortColumnState.sortType, sortColumnState.columnState.columnName);
29
- const appendResultSetModifier = (resultModifierState, lambdaFunction, options) => {
30
- if (lambdaFunction.expressionSequence.length === 1) {
31
- const func = lambdaFunction.expressionSequence[0];
32
- if (func instanceof SimpleFunctionExpression) {
33
- if (matchFunctionName(func.functionName, [
34
- QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT,
35
- QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY,
36
- QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_FILTER,
37
- QUERY_BUILDER_SUPPORTED_FUNCTIONS.OLAP_GROUPBY,
38
- ])) {
39
- let currentExpression = func;
40
- // build distinct()
41
- if (resultModifierState.distinct) {
42
- const distinctFunction = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_DISTINCT));
43
- distinctFunction.parametersValues[0] = currentExpression;
44
- currentExpression = distinctFunction;
45
- }
46
- // build sort()
47
- if (resultModifierState.sortColumns.length) {
48
- const sortFunction = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_SORT));
49
- const multiplicity = resultModifierState.tdsState.queryBuilderState.graphManagerState.graph.getMultiplicity(resultModifierState.sortColumns.length, resultModifierState.sortColumns.length);
50
- const collection = new CollectionInstanceValue(multiplicity, undefined);
51
- collection.values =
52
- resultModifierState.sortColumns.map(buildSortExpression);
53
- sortFunction.parametersValues[0] = currentExpression;
54
- sortFunction.parametersValues[1] = collection;
55
- currentExpression = sortFunction;
56
- }
57
- // build take()
58
- if (resultModifierState.limit || options?.overridingLimit) {
59
- const limit = new PrimitiveInstanceValue(GenericTypeExplicitReference.create(new GenericType(PrimitiveType.INTEGER)));
60
- limit.values = [
61
- Math.min(resultModifierState.limit
62
- ? options?.withDataOverflowCheck
63
- ? resultModifierState.limit + 1
64
- : resultModifierState.limit
65
- : Number.MAX_SAFE_INTEGER, options?.overridingLimit
66
- ? options.withDataOverflowCheck
67
- ? options.overridingLimit + 1
68
- : options.overridingLimit
69
- : Number.MAX_SAFE_INTEGER),
70
- ];
71
- const takeFunction = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_TAKE));
72
- takeFunction.parametersValues[0] = currentExpression;
73
- takeFunction.parametersValues[1] = limit;
74
- currentExpression = takeFunction;
75
- }
76
- // build slice()
77
- if (resultModifierState.slice) {
78
- const sliceStart = resultModifierState.slice[0];
79
- const sliceEnd = resultModifierState.slice[1];
80
- const startVal = new PrimitiveInstanceValue(GenericTypeExplicitReference.create(new GenericType(PrimitiveType.INTEGER)));
81
- const endVal = new PrimitiveInstanceValue(GenericTypeExplicitReference.create(new GenericType(PrimitiveType.INTEGER)));
82
- startVal.values = [sliceStart];
83
- endVal.values = [sliceEnd];
84
- const sliceFunction = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.SLICE));
85
- sliceFunction.parametersValues = [
86
- currentExpression,
87
- startVal,
88
- endVal,
89
- ];
90
- currentExpression = sliceFunction;
91
- }
92
- lambdaFunction.expressionSequence[0] = currentExpression;
93
- return lambdaFunction;
94
- }
95
- }
96
- }
97
- return lambdaFunction;
98
- };
26
+ import { appendResultSetModifier } from '../result-modifier/ResultModifierValueSpecificationBuilder.js';
99
27
  const buildProjectColFunc = (tdsState, projectionColumnState, options) => {
100
28
  const colFunc = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_COL));
101
29
  let columnLambda;
@@ -278,7 +206,7 @@ export const appendProjection = (tdsState, lambdaFunction, options) => {
278
206
  // build post-filter
279
207
  appendPostFilter(tdsState.postFilterState, lambdaFunction);
280
208
  // build result set modifiers
281
- appendResultSetModifier(tdsState.resultSetModifierState, lambdaFunction, {
209
+ appendResultSetModifier(tdsState.resultSetModifierState, lambdaFunction, tdsState.queryBuilderState.isFetchStructureTyped, {
282
210
  overridingLimit: options?.isBuildingExecutionQuery && !options.isExportingResult
283
211
  ? queryBuilderState.resultState.previewLimit
284
212
  : undefined,
@@ -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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"}
@@ -0,0 +1,74 @@
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 GraphManagerState, type LambdaFunction, type ValueSpecification, SimpleFunctionExpression } from '@finos/legend-graph';
17
+ import { COLUMN_SORT_TYPE } from '../../../../graph/QueryBuilderMetaModelConst.js';
18
+ import type { QueryResultSetModifierState, SortColumnState } from '../QueryResultSetModifierState.js';
19
+ export type ResultModifierValueSpecOptions = {
20
+ overridingLimit?: number | undefined;
21
+ withDataOverflowCheck?: boolean | undefined;
22
+ };
23
+ export declare abstract class ResultModifierValueSpecificationBuilder {
24
+ _currentResultModifierFunc: SimpleFunctionExpression | undefined;
25
+ readonly graphManagerState: GraphManagerState;
26
+ options: ResultModifierValueSpecOptions | undefined;
27
+ distinct: boolean;
28
+ sortColumns: SortColumnState[] | undefined;
29
+ limit?: number | undefined;
30
+ slice: [number, number] | undefined;
31
+ constructor(graphManagerState: GraphManagerState);
32
+ get currentExpression(): SimpleFunctionExpression;
33
+ abstract get distinctFunctionName(): string;
34
+ abstract get sortFunctionName(): string;
35
+ abstract get limitFunctionName(): string;
36
+ abstract get sliceFunctionName(): string;
37
+ abstract get ascFunctionname(): string;
38
+ abstract get descFunctionName(): string;
39
+ get supportedResultModifiersFunctions(): string[];
40
+ getSortTypeFunctionName(sortType: COLUMN_SORT_TYPE): string;
41
+ setCurrentResultModifierFunction(val: SimpleFunctionExpression): void;
42
+ withOptions(options: ResultModifierValueSpecOptions | undefined): ResultModifierValueSpecificationBuilder;
43
+ withDistinct(distinct: boolean): ResultModifierValueSpecificationBuilder;
44
+ withSortColumns(sortCols: SortColumnState[] | undefined): ResultModifierValueSpecificationBuilder;
45
+ withLimit(limit: number | undefined): ResultModifierValueSpecificationBuilder;
46
+ withSlice(slice: [number, number] | undefined): ResultModifierValueSpecificationBuilder;
47
+ buildDistinctFunction(): void;
48
+ buildSortFunction(sortColumns: SortColumnState[]): void;
49
+ buildSortExpression(sortColumnState: SortColumnState): SimpleFunctionExpression;
50
+ abstract buildColumnValueSpec(colName: string): ValueSpecification;
51
+ buildLimitFunction(limit?: number | undefined): void;
52
+ buildSliceFunction(slice: [number, number]): void;
53
+ build(lambdaFunction: LambdaFunction): LambdaFunction;
54
+ }
55
+ export declare class TDSResultModifierValueSpecificationBuilder extends ResultModifierValueSpecificationBuilder {
56
+ get limitFunctionName(): string;
57
+ get sliceFunctionName(): string;
58
+ get sortFunctionName(): string;
59
+ get distinctFunctionName(): string;
60
+ get ascFunctionname(): string;
61
+ get descFunctionName(): string;
62
+ buildColumnValueSpec(columnName: string): ValueSpecification;
63
+ }
64
+ export declare class TypedResultModifierValueSpecificationBuilder extends ResultModifierValueSpecificationBuilder {
65
+ get limitFunctionName(): string;
66
+ get sliceFunctionName(): string;
67
+ get ascFunctionname(): string;
68
+ get descFunctionName(): string;
69
+ get sortFunctionName(): string;
70
+ get distinctFunctionName(): string;
71
+ buildColumnValueSpec(columnName: string): ValueSpecification;
72
+ }
73
+ export declare const appendResultSetModifier: (resultModifierState: QueryResultSetModifierState, lambdaFunction: LambdaFunction, isTyped: boolean, options?: ResultModifierValueSpecOptions | undefined) => LambdaFunction;
74
+ //# sourceMappingURL=ResultModifierValueSpecificationBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResultModifierValueSpecificationBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/result-modifier/ResultModifierValueSpecificationBuilder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,213 @@
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 { ColSpec, ColSpecInstanceValue, CollectionInstanceValue, GenericType, GenericTypeExplicitReference, Multiplicity, PrimitiveInstanceValue, PrimitiveType, SimpleFunctionExpression, createPrimitiveInstance_String, extractElementNameFromPath, matchFunctionName, } from '@finos/legend-graph';
17
+ import { COLUMN_SORT_TYPE, QUERY_BUILDER_SUPPORTED_FUNCTIONS, } from '../../../../graph/QueryBuilderMetaModelConst.js';
18
+ import { guaranteeNonNullable } from '@finos/legend-shared';
19
+ export class ResultModifierValueSpecificationBuilder {
20
+ _currentResultModifierFunc;
21
+ graphManagerState;
22
+ options;
23
+ distinct = false;
24
+ sortColumns;
25
+ limit;
26
+ slice;
27
+ constructor(graphManagerState) {
28
+ this.graphManagerState = graphManagerState;
29
+ }
30
+ get currentExpression() {
31
+ return guaranteeNonNullable(this._currentResultModifierFunc, `Current expression needs to be defined to build result modifier`);
32
+ }
33
+ get supportedResultModifiersFunctions() {
34
+ return [
35
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT,
36
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY,
37
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_FILTER,
38
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.OLAP_GROUPBY,
39
+ ];
40
+ }
41
+ getSortTypeFunctionName(sortType) {
42
+ return sortType === COLUMN_SORT_TYPE.ASC
43
+ ? this.ascFunctionname
44
+ : this.descFunctionName;
45
+ }
46
+ // builders
47
+ setCurrentResultModifierFunction(val) {
48
+ this._currentResultModifierFunc = val;
49
+ }
50
+ withOptions(options) {
51
+ this.options = options;
52
+ return this;
53
+ }
54
+ withDistinct(distinct) {
55
+ this.distinct = distinct;
56
+ return this;
57
+ }
58
+ withSortColumns(sortCols) {
59
+ if (sortCols?.length) {
60
+ this.sortColumns = sortCols;
61
+ }
62
+ return this;
63
+ }
64
+ withLimit(limit) {
65
+ this.limit = limit;
66
+ return this;
67
+ }
68
+ withSlice(slice) {
69
+ this.slice = slice;
70
+ return this;
71
+ }
72
+ // builder
73
+ buildDistinctFunction() {
74
+ const distinctFunction = new SimpleFunctionExpression(extractElementNameFromPath(this.distinctFunctionName));
75
+ distinctFunction.parametersValues[0] = this.currentExpression;
76
+ this.setCurrentResultModifierFunction(distinctFunction);
77
+ }
78
+ buildSortFunction(sortColumns) {
79
+ const sortFunction = new SimpleFunctionExpression(extractElementNameFromPath(this.sortFunctionName));
80
+ const multiplicity = this.graphManagerState.graph.getMultiplicity(sortColumns.length, sortColumns.length);
81
+ const collection = new CollectionInstanceValue(multiplicity, undefined);
82
+ collection.values = sortColumns.map((e) => this.buildSortExpression(e));
83
+ sortFunction.parametersValues[0] = this.currentExpression;
84
+ sortFunction.parametersValues[1] = collection;
85
+ this.setCurrentResultModifierFunction(sortFunction);
86
+ }
87
+ buildSortExpression(sortColumnState) {
88
+ const sortColumnFunction = new SimpleFunctionExpression(extractElementNameFromPath(this.getSortTypeFunctionName(sortColumnState.sortType)));
89
+ sortColumnFunction.parametersValues[0] = this.buildColumnValueSpec(sortColumnState.columnState.columnName);
90
+ return sortColumnFunction;
91
+ }
92
+ buildLimitFunction(limit) {
93
+ const limitPrimitiveInstanceVal = new PrimitiveInstanceValue(GenericTypeExplicitReference.create(new GenericType(PrimitiveType.INTEGER)));
94
+ limitPrimitiveInstanceVal.values = [
95
+ Math.min(limit
96
+ ? this.options?.withDataOverflowCheck
97
+ ? limit + 1
98
+ : limit
99
+ : Number.MAX_SAFE_INTEGER, this.options?.overridingLimit
100
+ ? this.options.withDataOverflowCheck
101
+ ? this.options.overridingLimit + 1
102
+ : this.options.overridingLimit
103
+ : Number.MAX_SAFE_INTEGER),
104
+ ];
105
+ const takeFunction = new SimpleFunctionExpression(extractElementNameFromPath(this.limitFunctionName));
106
+ takeFunction.parametersValues[0] = this.currentExpression;
107
+ takeFunction.parametersValues[1] = limitPrimitiveInstanceVal;
108
+ this.setCurrentResultModifierFunction(takeFunction);
109
+ }
110
+ buildSliceFunction(slice) {
111
+ const sliceStart = slice[0];
112
+ const sliceEnd = slice[1];
113
+ const startVal = new PrimitiveInstanceValue(GenericTypeExplicitReference.create(new GenericType(PrimitiveType.INTEGER)));
114
+ const endVal = new PrimitiveInstanceValue(GenericTypeExplicitReference.create(new GenericType(PrimitiveType.INTEGER)));
115
+ startVal.values = [sliceStart];
116
+ endVal.values = [sliceEnd];
117
+ const sliceFunction = new SimpleFunctionExpression(extractElementNameFromPath(this.sliceFunctionName));
118
+ sliceFunction.parametersValues = [this.currentExpression, startVal, endVal];
119
+ this.setCurrentResultModifierFunction(sliceFunction);
120
+ }
121
+ build(lambdaFunction) {
122
+ if (lambdaFunction.expressionSequence.length === 1) {
123
+ const func = lambdaFunction.expressionSequence[0];
124
+ if (func instanceof SimpleFunctionExpression) {
125
+ if (matchFunctionName(func.functionName, this.supportedResultModifiersFunctions)) {
126
+ this._currentResultModifierFunc = func;
127
+ // build distinct()
128
+ if (this.distinct) {
129
+ this.buildDistinctFunction();
130
+ }
131
+ // build sort()
132
+ if (this.sortColumns) {
133
+ this.buildSortFunction(this.sortColumns);
134
+ }
135
+ // build take()
136
+ if (this.limit || this.options?.overridingLimit) {
137
+ this.buildLimitFunction(this.limit);
138
+ }
139
+ // build slice()
140
+ if (this.slice) {
141
+ this.buildSliceFunction(this.slice);
142
+ }
143
+ lambdaFunction.expressionSequence[0] = this.currentExpression;
144
+ return lambdaFunction;
145
+ }
146
+ }
147
+ }
148
+ return lambdaFunction;
149
+ }
150
+ }
151
+ export class TDSResultModifierValueSpecificationBuilder extends ResultModifierValueSpecificationBuilder {
152
+ get limitFunctionName() {
153
+ return QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_TAKE;
154
+ }
155
+ get sliceFunctionName() {
156
+ return QUERY_BUILDER_SUPPORTED_FUNCTIONS.SLICE;
157
+ }
158
+ get sortFunctionName() {
159
+ return QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_SORT;
160
+ }
161
+ get distinctFunctionName() {
162
+ return QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_DISTINCT;
163
+ }
164
+ get ascFunctionname() {
165
+ return QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_ASC;
166
+ }
167
+ get descFunctionName() {
168
+ return QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_DESC;
169
+ }
170
+ buildColumnValueSpec(columnName) {
171
+ return createPrimitiveInstance_String(columnName);
172
+ }
173
+ }
174
+ export class TypedResultModifierValueSpecificationBuilder extends ResultModifierValueSpecificationBuilder {
175
+ get limitFunctionName() {
176
+ return QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_LIMIT;
177
+ }
178
+ get sliceFunctionName() {
179
+ return QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_SLICE;
180
+ }
181
+ get ascFunctionname() {
182
+ return QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_ASC;
183
+ }
184
+ get descFunctionName() {
185
+ return QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_DESC;
186
+ }
187
+ get sortFunctionName() {
188
+ return QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_SORT;
189
+ }
190
+ get distinctFunctionName() {
191
+ return QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_DISTINCT;
192
+ }
193
+ buildColumnValueSpec(columnName) {
194
+ const colSpec = new ColSpecInstanceValue(Multiplicity.ONE, undefined);
195
+ const value = new ColSpec();
196
+ value.name = columnName;
197
+ colSpec.values = [value];
198
+ return colSpec;
199
+ }
200
+ }
201
+ export const appendResultSetModifier = (resultModifierState, lambdaFunction, isTyped, options) => {
202
+ const builder = isTyped
203
+ ? new TypedResultModifierValueSpecificationBuilder(resultModifierState.tdsState.queryBuilderState.graphManagerState)
204
+ : new TDSResultModifierValueSpecificationBuilder(resultModifierState.tdsState.queryBuilderState.graphManagerState);
205
+ return builder
206
+ .withOptions(options)
207
+ .withDistinct(resultModifierState.distinct)
208
+ .withSortColumns(resultModifierState.sortColumns)
209
+ .withLimit(resultModifierState.limit)
210
+ .withSlice(resultModifierState.slice)
211
+ .build(lambdaFunction);
212
+ };
213
+ //# sourceMappingURL=ResultModifierValueSpecificationBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResultModifierValueSpecificationBuilder.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/result-modifier/ResultModifierValueSpecificationBuilder.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-query-builder",
3
- "version": "4.15.41",
3
+ "version": "4.15.43",
4
4
  "description": "Legend query builder core",
5
5
  "keywords": [
6
6
  "legend",
@@ -42,18 +42,18 @@
42
42
  "test:watch": "jest --watch"
43
43
  },
44
44
  "dependencies": {
45
- "@finos/legend-application": "16.0.20",
46
- "@finos/legend-art": "7.1.77",
47
- "@finos/legend-code-editor": "2.0.36",
48
- "@finos/legend-data-cube": "0.0.43",
49
- "@finos/legend-graph": "32.0.4",
50
- "@finos/legend-lego": "2.0.39",
45
+ "@finos/legend-application": "16.0.21",
46
+ "@finos/legend-art": "7.1.78",
47
+ "@finos/legend-code-editor": "2.0.38",
48
+ "@finos/legend-data-cube": "0.0.45",
49
+ "@finos/legend-graph": "32.0.6",
50
+ "@finos/legend-lego": "2.0.41",
51
51
  "@finos/legend-server-depot": "6.0.77",
52
52
  "@finos/legend-shared": "11.0.0",
53
53
  "@finos/legend-storage": "3.0.119",
54
54
  "@testing-library/dom": "10.4.0",
55
- "@testing-library/react": "16.1.0",
56
- "@types/react": "19.0.7",
55
+ "@testing-library/react": "16.2.0",
56
+ "@types/react": "19.0.8",
57
57
  "@types/react-dom": "19.0.3",
58
58
  "chart.js": "4.4.7",
59
59
  "mathjs": "14.0.1",
@@ -121,7 +121,11 @@ export enum QUERY_BUILDER_SUPPORTED_FUNCTIONS {
121
121
  // Relation
122
122
  RELATION_PROJECT = 'meta::pure::functions::relation::project',
123
123
  RELATION_LIMIT = 'meta::pure::functions::relation::limit',
124
-
124
+ RELATION_ASC = 'meta::pure::functions::relation::ascending',
125
+ RELATION_DESC = 'meta::pure::functions::relation::descending',
126
+ RELATION_DISTINCT = 'meta::pure::functions::relation::distinct',
127
+ RELATION_SORT = 'meta::pure::functions::relation::sort',
128
+ RELATION_SLICE = 'meta::pure::functions::relation::slice',
125
129
  // filter
126
130
  CONTAINS = 'meta::pure::functions::string::contains',
127
131
  ENDS_WITH = 'meta::pure::functions::string::endsWith',
@@ -54,6 +54,7 @@ import {
54
54
  RuntimePointer,
55
55
  PackageableElementExplicitReference,
56
56
  MILESTONING_STEREOTYPE,
57
+ type ColSpecInstanceValue,
57
58
  } from '@finos/legend-graph';
58
59
  import { processTDSPostFilterExpression } from './fetch-structure/tds/post-filter/QueryBuilderPostFilterStateBuilder.js';
59
60
  import { processFilterExpression } from './filter/QueryBuilderFilterStateBuilder.js';
@@ -69,6 +70,7 @@ import {
69
70
  processInternalizeExpression,
70
71
  } from './fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.js';
71
72
  import {
73
+ processRelationSortDirectionExpression,
72
74
  processTDSColExpression,
73
75
  processTDSDistinctExpression,
74
76
  processTDSProjectExpression,
@@ -669,10 +671,10 @@ export class QueryBuilderValueSpecificationProcessor
669
671
  processTDSColExpression(valueSpecification, this.queryBuilderState);
670
672
  return;
671
673
  } else if (
672
- matchFunctionName(
673
- functionName,
674
+ matchFunctionName(functionName, [
674
675
  QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_TAKE,
675
- )
676
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_LIMIT,
677
+ ])
676
678
  ) {
677
679
  processTDSTakeExpression(
678
680
  valueSpecification,
@@ -725,6 +727,18 @@ export class QueryBuilderValueSpecificationProcessor
725
727
  this.queryBuilderState,
726
728
  );
727
729
  return;
730
+ } else if (
731
+ matchFunctionName(functionName, [
732
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_ASC,
733
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.RELATION_DESC,
734
+ ])
735
+ ) {
736
+ processRelationSortDirectionExpression(
737
+ valueSpecification,
738
+ this.parentExpression,
739
+ this.queryBuilderState,
740
+ );
741
+ return;
728
742
  } else if (
729
743
  matchFunctionName(
730
744
  functionName,
@@ -994,6 +1008,10 @@ export class QueryBuilderValueSpecificationProcessor
994
1008
  `Can't process col spec array expression with parent expression of function ${this.parentExpression.functionName}()`,
995
1009
  );
996
1010
  }
1011
+
1012
+ visit_ColSpecInstance(valueSpeciciation: ColSpecInstanceValue): void {
1013
+ throw new Error('Method not implemented.');
1014
+ }
997
1015
  }
998
1016
 
999
1017
  export const processParameters = (