@finos/legend-query-builder 4.5.0 → 4.6.0
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/__lib__/QueryBuilderTesting.d.ts +1 -0
- package/lib/__lib__/QueryBuilderTesting.d.ts.map +1 -1
- package/lib/__lib__/QueryBuilderTesting.js +1 -0
- package/lib/__lib__/QueryBuilderTesting.js.map +1 -1
- package/lib/components/QueryBuilderConstantExpressionPanel.d.ts.map +1 -1
- package/lib/components/QueryBuilderConstantExpressionPanel.js +11 -4
- package/lib/components/QueryBuilderConstantExpressionPanel.js.map +1 -1
- package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -1
- package/lib/components/QueryBuilderResultPanel.js +1 -1
- package/lib/components/QueryBuilderResultPanel.js.map +1 -1
- package/lib/components/filter/QueryBuilderFilterPanel.d.ts.map +1 -1
- package/lib/components/filter/QueryBuilderFilterPanel.js +21 -8
- package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -1
- package/lib/components/shared/BasicValueSpecificationEditor.js +1 -1
- package/lib/components/shared/BasicValueSpecificationEditor.js.map +1 -1
- package/lib/components/shared/CustomDatePicker.d.ts.map +1 -1
- package/lib/components/shared/CustomDatePicker.js +6 -2
- package/lib/components/shared/CustomDatePicker.js.map +1 -1
- package/lib/components/shared/QueryBuilderVariableSelector.d.ts.map +1 -1
- package/lib/components/shared/QueryBuilderVariableSelector.js +11 -3
- package/lib/components/shared/QueryBuilderVariableSelector.js.map +1 -1
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/package.json +1 -1
- package/lib/stores/QueryBuilderConstantsState.d.ts +10 -3
- package/lib/stores/QueryBuilderConstantsState.d.ts.map +1 -1
- package/lib/stores/QueryBuilderConstantsState.js +23 -8
- package/lib/stores/QueryBuilderConstantsState.js.map +1 -1
- package/lib/stores/QueryBuilderStateBuilder.d.ts +1 -1
- package/lib/stores/QueryBuilderStateBuilder.d.ts.map +1 -1
- package/lib/stores/QueryBuilderStateBuilder.js +9 -4
- package/lib/stores/QueryBuilderStateBuilder.js.map +1 -1
- package/lib/stores/QueryBuilderValueSpecificationBuilder.js +1 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilder.js.map +1 -1
- package/lib/stores/filter/QueryBuilderFilterState.d.ts +3 -2
- package/lib/stores/filter/QueryBuilderFilterState.d.ts.map +1 -1
- package/lib/stores/filter/QueryBuilderFilterState.js +7 -5
- package/lib/stores/filter/QueryBuilderFilterState.js.map +1 -1
- package/lib/stores/filter/QueryBuilderFilterStateBuilder.d.ts.map +1 -1
- package/lib/stores/filter/QueryBuilderFilterStateBuilder.js +1 -1
- package/lib/stores/filter/QueryBuilderFilterStateBuilder.js.map +1 -1
- package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.d.ts.map +1 -1
- package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.js +5 -1
- package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.js.map +1 -1
- package/package.json +3 -3
- package/src/__lib__/QueryBuilderTesting.ts +1 -0
- package/src/components/QueryBuilderConstantExpressionPanel.tsx +18 -9
- package/src/components/QueryBuilderResultPanel.tsx +4 -1
- package/src/components/filter/QueryBuilderFilterPanel.tsx +43 -7
- package/src/components/shared/BasicValueSpecificationEditor.tsx +1 -1
- package/src/components/shared/CustomDatePicker.tsx +6 -7
- package/src/components/shared/QueryBuilderVariableSelector.tsx +19 -8
- package/src/stores/QueryBuilderConstantsState.ts +43 -9
- package/src/stores/QueryBuilderStateBuilder.ts +20 -8
- package/src/stores/QueryBuilderValueSpecificationBuilder.ts +1 -1
- package/src/stores/filter/QueryBuilderFilterState.ts +13 -5
- package/src/stores/filter/QueryBuilderFilterStateBuilder.ts +1 -0
- package/src/stores/filter/QueryBuilderFilterValueSpecificationBuilder.ts +14 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilderFilterStateBuilder.js","sourceRoot":"","sources":["../../../src/stores/filter/QueryBuilderFilterStateBuilder.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"QueryBuilderFilterStateBuilder.js","sourceRoot":"","sources":["../../../src/stores/filter/QueryBuilderFilterStateBuilder.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilderFilterValueSpecificationBuilder.d.ts","sourceRoot":"","sources":["../../../src/stores/filter/QueryBuilderFilterValueSpecificationBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAOH,OAAO,EAEL,KAAK,cAAc,EAGpB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,KAAK,uBAAuB,EAM7B,MAAM,8BAA8B,CAAC;
|
1
|
+
{"version":3,"file":"QueryBuilderFilterValueSpecificationBuilder.d.ts","sourceRoot":"","sources":["../../../src/stores/filter/QueryBuilderFilterValueSpecificationBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAOH,OAAO,EAEL,KAAK,cAAc,EAGpB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,KAAK,uBAAuB,EAM7B,MAAM,8BAA8B,CAAC;AAuJtC,eAAO,MAAM,qBAAqB,gBACnB,uBAAuB,kBACpB,cAAc,KAC7B,IA4BF,CAAC"}
|
@@ -20,6 +20,7 @@ import { fromGroupOperation } from '../QueryBuilderGroupOperationHelper.js';
|
|
20
20
|
import { QueryBuilderFilterTreeConditionNodeData, QueryBuilderFilterTreeGroupNodeData, QueryBuilderFilterTreeExistsNodeData, QueryBuilderFilterTreeOperationNodeData, } from './QueryBuilderFilterState.js';
|
21
21
|
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../graph/QueryBuilderMetaModelConst.js';
|
22
22
|
import { DEFAULT_LAMBDA_VARIABLE_NAME } from '../QueryBuilderConfig.js';
|
23
|
+
import { buildPropertyExpressionChain } from '../QueryBuilderValueSpecificationBuilderHelper.js';
|
23
24
|
const buildFilterConditionExpression = (filterState, node) => {
|
24
25
|
if (node instanceof QueryBuilderFilterTreeConditionNodeData) {
|
25
26
|
const parentNode = node.parentId
|
@@ -70,7 +71,10 @@ const buildFilterConditionExpression = (filterState, node) => {
|
|
70
71
|
? guaranteeType(filterState.nodes.get(guaranteeNonNullable(parentNode.parentId)), QueryBuilderFilterTreeOperationNodeData)
|
71
72
|
: undefined;
|
72
73
|
}
|
73
|
-
const
|
74
|
+
const lambdaParameterName = node.parentId
|
75
|
+
? guaranteeType(filterState.nodes.get(guaranteeNonNullable(node.parentId)), QueryBuilderFilterTreeOperationNodeData).lambdaParameterName
|
76
|
+
: undefined;
|
77
|
+
const propertyExpression = guaranteeNonNullable(buildPropertyExpressionChain(node.propertyExpressionState.propertyExpression, node.propertyExpressionState.queryBuilderState, lambdaParameterName ?? filterState.lambdaParameterName));
|
74
78
|
const clauses = node.childrenIds
|
75
79
|
.map((e) => filterState.nodes.get(e))
|
76
80
|
.filter(isNonNullable)
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilderFilterValueSpecificationBuilder.js","sourceRoot":"","sources":["../../../src/stores/filter/QueryBuilderFilterValueSpecificationBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAGL,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,uCAAuC,EAAE,MAAM,4CAA4C,CAAC;AACrG,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAEL,uCAAuC,EACvC,mCAAmC,EAEnC,oCAAoC,EACpC,uCAAuC,GACxC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,iCAAiC,EAAE,MAAM,2CAA2C,CAAC;AAC9F,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;
|
1
|
+
{"version":3,"file":"QueryBuilderFilterValueSpecificationBuilder.js","sourceRoot":"","sources":["../../../src/stores/filter/QueryBuilderFilterValueSpecificationBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAGL,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,uCAAuC,EAAE,MAAM,4CAA4C,CAAC;AACrG,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAEL,uCAAuC,EACvC,mCAAmC,EAEnC,oCAAoC,EACpC,uCAAuC,GACxC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,iCAAiC,EAAE,MAAM,2CAA2C,CAAC;AAC9F,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AAEjG,MAAM,8BAA8B,GAAG,CACrC,WAAoC,EACpC,IAAoC,EACJ,EAAE;IAClC,IAAI,IAAI,YAAY,uCAAuC,EAAE;QAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ;YAC9B,CAAC,CAAC,aAAa,CACX,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EACpC,uCAAuC,CACxC;YACH,CAAC,CAAC,SAAS,CAAC;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,8BAA8B,CAC3D,IAAI,CAAC,SAAS,EACd,UAAU,EAAE,mBAAmB,CAChC,CAAC;KACH;SAAM,IAAI,IAAI,YAAY,mCAAmC,EAAE;QAC9D,MAAM,IAAI,GAAG,IAAI,wBAAwB,CACvC,0BAA0B,CAAC,kBAAkB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CACpE,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW;aAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aACpC,MAAM,CAAC,aAAa,CAAC;aACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,8BAA8B,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;aAC1D,MAAM,CAAC,aAAa,CAAC,CAAC;QACzB;;;;;;;WAOG;QACH,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACtB,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAuB,CAAC;YACrD,IAAI,aAAa,GAAuB,OAAO,CAC7C,OAAO,CAAC,MAAM,GAAG,CAAC,CACG,CAAC;YACxB,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAuB,CAAC;gBACjD,MAAM,OAAO,GAAG,aAAa,CAAC;gBAC9B,MAAM,WAAW,GAAG,IAAI,wBAAwB,CAC9C,0BAA0B,CAAC,kBAAkB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CACpE,CAAC;gBACF,WAAW,CAAC,gBAAgB,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAClD,aAAa,GAAG,WAAW,CAAC;aAC7B;YACD,IAAI,CAAC,gBAAgB,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;SACtD;aAAM;YACL,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;SACjC;QACD,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;KACxD;SAAM,IAAI,IAAI,YAAY,oCAAoC,EAAE;QAC/D,MAAM,IAAI,GAAG,IAAI,wBAAwB,CACvC,0BAA0B,CAAC,iCAAiC,CAAC,MAAM,CAAC,CACrE,CAAC;QACF,IAAI,UAAU,GAAG,IAAI,CAAC,QAAQ;YAC5B,CAAC,CAAC,aAAa,CACX,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAC1D,uCAAuC,CACxC;YACH,CAAC,CAAC,SAAS,CAAC;QACd,OACE,UAAU;YACV,CAAC,CAAC,UAAU,YAAY,mCAAmC,CAAC,EAC5D;YACA,UAAU,GAAG,UAAU,CAAC,QAAQ;gBAC9B,CAAC,CAAC,aAAa,CACX,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAChE,uCAAuC,CACxC;gBACH,CAAC,CAAC,SAAS,CAAC;SACf;QACD,MAAM,mBAAmB,GAAG,IAAI,CAAC,QAAQ;YACvC,CAAC,CAAC,aAAa,CACX,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAC1D,uCAAuC,CACxC,CAAC,mBAAmB;YACvB,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,kBAAkB,GAAG,oBAAoB,CAC7C,4BAA4B,CAC1B,IAAI,CAAC,uBAAuB,CAAC,kBAAkB,EAC/C,IAAI,CAAC,uBAAuB,CAAC,iBAAiB,EAC9C,mBAAmB,IAAI,WAAW,CAAC,mBAAmB,CACvD,CACF,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW;aAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aACpC,MAAM,CAAC,aAAa,CAAC;aACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,8BAA8B,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;aAC1D,MAAM,CAAC,aAAa,CAAC,CAAC;QACzB;;;;;;;WAOG;QACH,IAAI,gBAAgB,CAAC;QACrB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACtB,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAuB,CAAC;YACrD,IAAI,aAAa,GAAuB,OAAO,CAC7C,OAAO,CAAC,MAAM,GAAG,CAAC,CACG,CAAC;YACxB,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAuB,CAAC;gBACjD,MAAM,OAAO,GAAG,aAAa,CAAC;gBAC9B,MAAM,WAAW,GAAG,IAAI,wBAAwB,CAC9C,oBAAoB,CAAC,UAAU,CAAC,CAAC,cAAc,CAChD,CAAC;gBACF,WAAW,CAAC,gBAAgB,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAClD,aAAa,GAAG,WAAW,CAAC;aAC7B;YACD,gBAAgB,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;SACjD;aAAM,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/B,MAAM,2BAA2B,GAC/B,uCAAuC,CACrC,IAAI,CAAC,mBAAmB,IAAI,4BAA4B,EACxD,OAAO,EACP,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CACtD,CAAC;YACJ,IAAI,CAAC,gBAAgB,GAAG,CAAC,kBAAkB,EAAE,2BAA2B,CAAC,CAAC;YAC1E,OAAO,IAAI,CAAC;SACb;aAAM;YACL,gBAAgB,GAAG,OAAO,CAAC;SAC5B;QACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE;YAC5B,OAAO,SAAS,CAAC;SAClB;QACD,MAAM,IAAI,GAAG,IAAI,wBAAwB,CACvC,0BAA0B,CACxB,kBAAkB,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,CACpE,CACF,CAAC;QACF,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,MAAM,2BAA2B,GAAG,uCAAuC,CACzE,IAAI,CAAC,mBAAmB,IAAI,4BAA4B,EACxD,CAAC,IAAI,CAAC,EACN,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CACtD,CAAC;QACF,IAAI,CAAC,gBAAgB,GAAG,CAAC,kBAAkB,EAAE,2BAA2B,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC;KACb;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,WAAoC,EACpC,cAA8B,EACxB,EAAE;IACR,MAAM,0BAA0B,GAAG,WAAW,CAAC,OAAO;SACnD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SAC1D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,8BAA8B,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;SAC1D,MAAM,CAAC,aAAa,CAAC,CAAC;IAEzB,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE;QACtC,OAAO;KACR;IACD,yBAAyB;IACzB,MAAM,gBAAgB,GAAG,IAAI,wBAAwB,CACnD,0BAA0B,CAAC,iCAAiC,CAAC,MAAM,CAAC,CACrE,CAAC;IACF,MAAM,iBAAiB,GAAG,oBAAoB,CAC5C,cAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,CACrC,CAAC;IACF,YAAY;IACZ,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC1D,YAAY;IACZ,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CACpC,uCAAuC,CACrC,WAAW,CAAC,mBAAmB,EAC/B,0BAA0B,EAC1B,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CACtD,CACF,CAAC;IACF,sCAAsC;IACtC,cAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC;AAC1D,CAAC,CAAC"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@finos/legend-query-builder",
|
3
|
-
"version": "4.
|
3
|
+
"version": "4.6.0",
|
4
4
|
"description": "Legend query builder core",
|
5
5
|
"keywords": [
|
6
6
|
"legend",
|
@@ -44,8 +44,8 @@
|
|
44
44
|
"dependencies": {
|
45
45
|
"@finos/legend-application": "15.0.40",
|
46
46
|
"@finos/legend-art": "7.0.40",
|
47
|
-
"@finos/legend-graph": "31.2.
|
48
|
-
"@finos/legend-lego": "1.1.
|
47
|
+
"@finos/legend-graph": "31.2.1",
|
48
|
+
"@finos/legend-lego": "1.1.29",
|
49
49
|
"@finos/legend-server-depot": "6.0.29",
|
50
50
|
"@finos/legend-shared": "10.0.25",
|
51
51
|
"@finos/legend-storage": "3.0.75",
|
@@ -27,6 +27,7 @@ export enum QUERY_BUILDER_TEST_ID {
|
|
27
27
|
QUERY_BUILDER_EXPLORER = 'query__builder__explorer',
|
28
28
|
QUERY_BUILDER_PROPERTY_SEARCH_PANEL = 'query__builder__property__search__panel',
|
29
29
|
QUERY_BUILDER_RESULT_PANEL = 'query__builder__result__panel',
|
30
|
+
QUERY_BUILDER_RESULT_ANALYTICS = 'query__builder__result__analytics',
|
30
31
|
QUERY_BUILDER_PARAMETERS = 'query-builder__parameters',
|
31
32
|
QUERY_BUILDER_CONSTANTS = 'query-builder__constants',
|
32
33
|
}
|
@@ -45,19 +45,22 @@ import { generateEnumerableNameFromToken } from '@finos/legend-shared';
|
|
45
45
|
import { observer } from 'mobx-react-lite';
|
46
46
|
import { DEFAULT_CONSTANT_VARIABLE_NAME } from '../stores/QueryBuilderConfig.js';
|
47
47
|
import type { QueryBuilderState } from '../stores/QueryBuilderState.js';
|
48
|
-
import {
|
48
|
+
import {
|
49
|
+
type QueryBuilderConstantExpressionState,
|
50
|
+
QueryBuilderSimpleConstantExpressionState,
|
51
|
+
} from '../stores/QueryBuilderConstantsState.js';
|
49
52
|
import { buildDefaultInstanceValue } from '../stores/shared/ValueSpecificationEditorHelper.js';
|
50
53
|
import { BasicValueSpecificationEditor } from './shared/BasicValueSpecificationEditor.js';
|
51
54
|
import { VariableViewer } from './shared/QueryBuilderVariableSelector.js';
|
52
55
|
import { QUERY_BUILDER_TEST_ID } from '../__lib__/QueryBuilderTesting.js';
|
53
56
|
import { QUERY_BUILDER_DOCUMENTATION_KEY } from '../__lib__/QueryBuilderDocumentation.js';
|
54
|
-
import { useState } from 'react';
|
57
|
+
import React, { useState } from 'react';
|
55
58
|
import { variableExpression_setName } from '../stores/shared/ValueSpecificationModifierHelper.js';
|
56
59
|
|
57
60
|
// NOTE: We currently only allow constant variables for primitive types of multiplicity ONE.
|
58
61
|
// This is why we don't show multiplicity in the editor.
|
59
62
|
const QueryBuilderConstantExpressionEditor = observer(
|
60
|
-
(props: { constantState:
|
63
|
+
(props: { constantState: QueryBuilderSimpleConstantExpressionState }) => {
|
61
64
|
const { constantState } = props;
|
62
65
|
const queryBuilderState = constantState.queryBuilderState;
|
63
66
|
const applicationStore = queryBuilderState.applicationStore;
|
@@ -232,7 +235,7 @@ export const QueryBuilderConstantExpressionPanel = observer(
|
|
232
235
|
Multiplicity.ONE,
|
233
236
|
);
|
234
237
|
variableEx.genericType = defaultVal.genericType;
|
235
|
-
const constState = new
|
238
|
+
const constState = new QueryBuilderSimpleConstantExpressionState(
|
236
239
|
queryBuilderState,
|
237
240
|
variableEx,
|
238
241
|
defaultVal,
|
@@ -241,6 +244,15 @@ export const QueryBuilderConstantExpressionPanel = observer(
|
|
241
244
|
}
|
242
245
|
};
|
243
246
|
|
247
|
+
const renderConstantModal = (
|
248
|
+
val: QueryBuilderConstantExpressionState,
|
249
|
+
): React.ReactNode => {
|
250
|
+
if (val instanceof QueryBuilderSimpleConstantExpressionState) {
|
251
|
+
return <QueryBuilderConstantExpressionEditor constantState={val} />;
|
252
|
+
}
|
253
|
+
return null;
|
254
|
+
};
|
255
|
+
|
244
256
|
return (
|
245
257
|
<div
|
246
258
|
data-testid={QUERY_BUILDER_TEST_ID.QUERY_BUILDER_CONSTANTS}
|
@@ -300,11 +312,8 @@ export const QueryBuilderConstantExpressionPanel = observer(
|
|
300
312
|
)}
|
301
313
|
</>
|
302
314
|
</div>
|
303
|
-
{constantState.selectedConstant &&
|
304
|
-
|
305
|
-
constantState={constantState.selectedConstant}
|
306
|
-
/>
|
307
|
-
)}
|
315
|
+
{constantState.selectedConstant &&
|
316
|
+
renderConstantModal(constantState.selectedConstant)}
|
308
317
|
</div>
|
309
318
|
);
|
310
319
|
},
|
@@ -1069,7 +1069,10 @@ export const QueryBuilderResultPanel = observer(
|
|
1069
1069
|
</div>
|
1070
1070
|
)}
|
1071
1071
|
|
1072
|
-
<div
|
1072
|
+
<div
|
1073
|
+
data-testid={QUERY_BUILDER_TEST_ID.QUERY_BUILDER_RESULT_ANALYTICS}
|
1074
|
+
className="query-builder__result__analytics"
|
1075
|
+
>
|
1073
1076
|
{resultDescription ?? ''}
|
1074
1077
|
</div>
|
1075
1078
|
{executionResult && resultState.checkForStaleResults && (
|
@@ -45,6 +45,7 @@ import {
|
|
45
45
|
MoreVerticalIcon,
|
46
46
|
MenuContentItemIcon,
|
47
47
|
MenuContentItemLabel,
|
48
|
+
InfoCircleIcon,
|
48
49
|
} from '@finos/legend-art';
|
49
50
|
import {
|
50
51
|
type QueryBuilderFilterConditionDragSource,
|
@@ -66,7 +67,10 @@ import {
|
|
66
67
|
buildPropertyExpressionFromExplorerTreeNodeData,
|
67
68
|
QUERY_BUILDER_EXPLORER_TREE_DND_TYPE,
|
68
69
|
} from '../../stores/explorer/QueryBuilderExplorerState.js';
|
69
|
-
import {
|
70
|
+
import {
|
71
|
+
QueryBuilderPropertyExpressionBadge,
|
72
|
+
QueryBuilderPropertyExpressionEditor,
|
73
|
+
} from '../QueryBuilderPropertyExpressionEditor.js';
|
70
74
|
import type { QueryBuilderState } from '../../stores/QueryBuilderState.js';
|
71
75
|
import {
|
72
76
|
assertErrorThrown,
|
@@ -242,9 +246,12 @@ export const buildFilterTreeWithExists = (
|
|
242
246
|
const parentPropertyChainIndex = existsLambdaPropertyChains.findIndex(
|
243
247
|
(p) =>
|
244
248
|
p instanceof AbstractPropertyExpression &&
|
245
|
-
p.func.value ===
|
249
|
+
p.func.value ===
|
250
|
+
targetDropNode.propertyExpressionState.propertyExpression.func
|
251
|
+
.value &&
|
246
252
|
p.func.ownerReference.value.path ===
|
247
|
-
targetDropNode.propertyExpression.func
|
253
|
+
targetDropNode.propertyExpressionState.propertyExpression.func
|
254
|
+
.ownerReference.value.path,
|
248
255
|
);
|
249
256
|
if (parentPropertyChainIndex >= 0) {
|
250
257
|
parentNode = targetDropNode;
|
@@ -281,9 +288,10 @@ export const buildFilterTreeWithExists = (
|
|
281
288
|
cn instanceof QueryBuilderFilterTreeExistsNodeData &&
|
282
289
|
p.func.value ===
|
283
290
|
guaranteeType(cn, QueryBuilderFilterTreeExistsNodeData)
|
284
|
-
.propertyExpression.func.value &&
|
291
|
+
.propertyExpressionState.propertyExpression.func.value &&
|
285
292
|
p.func.ownerReference.value.path ===
|
286
|
-
cn.propertyExpression.func.ownerReference
|
293
|
+
cn.propertyExpressionState.propertyExpression.func.ownerReference
|
294
|
+
.value.path,
|
287
295
|
);
|
288
296
|
if (parentPropertyChainIndex >= 0) {
|
289
297
|
parentNode = targetDropNode;
|
@@ -302,7 +310,7 @@ export const buildFilterTreeWithExists = (
|
|
302
310
|
// 3. Create exists tree node for all the property chains and add them to the filter tree
|
303
311
|
for (let i = 0; i < existsLambdaPropertyChains.length - 1; ++i) {
|
304
312
|
const existsNode: QueryBuilderFilterTreeExistsNodeData =
|
305
|
-
new QueryBuilderFilterTreeExistsNodeData(parentNode?.id);
|
313
|
+
new QueryBuilderFilterTreeExistsNodeData(filterState, parentNode?.id);
|
306
314
|
existsNode.setPropertyExpression(
|
307
315
|
existsLambdaPropertyChains[i] as AbstractPropertyExpression,
|
308
316
|
);
|
@@ -456,6 +464,15 @@ const QueryBuilderFilterExistsConditionEditor = observer(
|
|
456
464
|
isDroppable: boolean;
|
457
465
|
}) => {
|
458
466
|
const { node, humanizePropertyName, isDragOver, isDroppable } = props;
|
467
|
+
const hasDerivedPropertyInExpression = Boolean(
|
468
|
+
node.propertyExpressionState.derivedPropertyExpressionStates.length,
|
469
|
+
);
|
470
|
+
const isValid = node.propertyExpressionState.isValid;
|
471
|
+
const setDerivedPropertyArguments = (): void => {
|
472
|
+
if (hasDerivedPropertyInExpression) {
|
473
|
+
node.propertyExpressionState.setIsEditingDerivedProperty(true);
|
474
|
+
}
|
475
|
+
};
|
459
476
|
|
460
477
|
return (
|
461
478
|
<div className="query-builder-filter-tree__node__label__content dnd__entry__container">
|
@@ -470,13 +487,32 @@ const QueryBuilderFilterExistsConditionEditor = observer(
|
|
470
487
|
>
|
471
488
|
<div className="query-builder-filter-tree__exists-node__label">
|
472
489
|
{getPropertyChainName(
|
473
|
-
node.propertyExpression,
|
490
|
+
node.propertyExpressionState.propertyExpression,
|
474
491
|
humanizePropertyName,
|
475
492
|
)}
|
476
493
|
</div>
|
477
494
|
<div className="query-builder-filter-tree__exists-node__exists--label">
|
478
495
|
exists
|
479
496
|
</div>
|
497
|
+
{hasDerivedPropertyInExpression && (
|
498
|
+
<button
|
499
|
+
className={clsx(
|
500
|
+
'query-builder-filter-tree__exists-node__exists--label__action',
|
501
|
+
{
|
502
|
+
'query-builder-filter-tree__exists-node__exists--label__action--error':
|
503
|
+
!isValid,
|
504
|
+
},
|
505
|
+
)}
|
506
|
+
tabIndex={-1}
|
507
|
+
onClick={setDerivedPropertyArguments}
|
508
|
+
title="Set Derived Property Argument(s)..."
|
509
|
+
>
|
510
|
+
{!isValid && <InfoCircleIcon />} (...)
|
511
|
+
</button>
|
512
|
+
)}
|
513
|
+
<QueryBuilderPropertyExpressionEditor
|
514
|
+
propertyExpressionState={node.propertyExpressionState}
|
515
|
+
/>
|
480
516
|
</div>
|
481
517
|
</PanelEntryDropZonePlaceholder>
|
482
518
|
</div>
|
@@ -121,7 +121,7 @@ export const VariableInfoTooltip: React.FC<{
|
|
121
121
|
Type
|
122
122
|
</div>
|
123
123
|
<div className="value-spec-paramater__tooltip__item__value">
|
124
|
-
{type?.name ?? ''}
|
124
|
+
{type?.name ?? '(unknown)'}
|
125
125
|
</div>
|
126
126
|
</div>
|
127
127
|
<div className="value-spec-paramater__tooltip__item">
|
@@ -840,22 +840,21 @@ const AbsoluteTimeValueSpecificationEditor: React.FC<{
|
|
840
840
|
const updateAbsoluteTimeValue: React.ChangeEventHandler<HTMLInputElement> = (
|
841
841
|
event,
|
842
842
|
) => {
|
843
|
+
//
|
844
|
+
const value = new Date(event.target.value).getUTCSeconds()
|
845
|
+
? event.target.value
|
846
|
+
: `${event.target.value}:00`;
|
843
847
|
if (valueSpecification instanceof SimpleFunctionExpression) {
|
844
848
|
setValueSpecification(
|
845
849
|
buildPrimitiveInstanceValue(
|
846
850
|
graph,
|
847
851
|
PRIMITIVE_TYPE.DATETIME,
|
848
|
-
|
852
|
+
value,
|
849
853
|
observerContext,
|
850
854
|
),
|
851
855
|
);
|
852
856
|
} else {
|
853
|
-
instanceValue_setValue(
|
854
|
-
valueSpecification,
|
855
|
-
event.target.value,
|
856
|
-
0,
|
857
|
-
observerContext,
|
858
|
-
);
|
857
|
+
instanceValue_setValue(valueSpecification, value, 0, observerContext);
|
859
858
|
if (
|
860
859
|
valueSpecification.genericType.value.rawType.path !==
|
861
860
|
PRIMITIVE_TYPE.DATETIME
|
@@ -24,9 +24,10 @@ import {
|
|
24
24
|
useDragPreviewLayer,
|
25
25
|
} from '@finos/legend-art';
|
26
26
|
import {
|
27
|
-
SimpleFunctionExpression,
|
28
27
|
type ValueSpecification,
|
28
|
+
SimpleFunctionExpression,
|
29
29
|
type VariableExpression,
|
30
|
+
INTERNAL__UnknownValueSpecification,
|
30
31
|
} from '@finos/legend-graph';
|
31
32
|
import { observer } from 'mobx-react-lite';
|
32
33
|
import { useDrag } from 'react-dnd';
|
@@ -62,11 +63,12 @@ export const VariableViewer = observer(
|
|
62
63
|
if (possibleDateLabel) {
|
63
64
|
return possibleDateLabel;
|
64
65
|
}
|
66
|
+
} else if (value instanceof INTERNAL__UnknownValueSpecification) {
|
67
|
+
return '(calculated)';
|
65
68
|
}
|
66
69
|
return getValueSpecificationStringValue(value);
|
67
70
|
};
|
68
|
-
|
69
|
-
const valueString = constantValue
|
71
|
+
const constantValueString = constantValue
|
70
72
|
? getNameOfValue(constantValue)
|
71
73
|
: undefined;
|
72
74
|
const name = variable.name;
|
@@ -75,6 +77,15 @@ export const VariableViewer = observer(
|
|
75
77
|
const isVariableUsed = queryBuilderState.isVariableUsed(variable);
|
76
78
|
const deleteDisabled = isReadOnly || isVariableUsed;
|
77
79
|
const deleteTitle = isVariableUsed ? 'Used in query' : 'Remove';
|
80
|
+
|
81
|
+
const isEditDisabled =
|
82
|
+
isReadOnly ||
|
83
|
+
constantValue instanceof INTERNAL__UnknownValueSpecification;
|
84
|
+
|
85
|
+
const editMessage =
|
86
|
+
constantValue instanceof INTERNAL__UnknownValueSpecification
|
87
|
+
? 'Calculated constants can only be edited via text mode'
|
88
|
+
: 'Edit';
|
78
89
|
const editVariable = (): void => {
|
79
90
|
actions?.editVariable();
|
80
91
|
};
|
@@ -115,14 +126,14 @@ export const VariableViewer = observer(
|
|
115
126
|
</div>
|
116
127
|
<div className="query-builder__variables__variable__label">
|
117
128
|
{name}
|
118
|
-
{
|
129
|
+
{constantValueString ? (
|
119
130
|
<div className="query-builder__constants__value">
|
120
|
-
{
|
131
|
+
{constantValueString}
|
121
132
|
</div>
|
122
133
|
) : (
|
123
134
|
<div className="query-builder__variables__variable__type">
|
124
135
|
<div className="query-builder__variables__variable__type__label">
|
125
|
-
{typeName}
|
136
|
+
{typeName ?? 'unknown'}
|
126
137
|
</div>
|
127
138
|
</div>
|
128
139
|
)}
|
@@ -133,9 +144,9 @@ export const VariableViewer = observer(
|
|
133
144
|
<button
|
134
145
|
className="query-builder__variables__variable__action"
|
135
146
|
tabIndex={-1}
|
136
|
-
disabled={
|
147
|
+
disabled={isEditDisabled}
|
137
148
|
onClick={editVariable}
|
138
|
-
title=
|
149
|
+
title={editMessage}
|
139
150
|
>
|
140
151
|
<PencilIcon />
|
141
152
|
</button>
|
@@ -17,6 +17,7 @@
|
|
17
17
|
import {
|
18
18
|
type Type,
|
19
19
|
type ValueSpecification,
|
20
|
+
type INTERNAL__UnknownValueSpecification,
|
20
21
|
GenericType,
|
21
22
|
GenericTypeExplicitReference,
|
22
23
|
observe_ValueSpecification,
|
@@ -37,7 +38,7 @@ import type { QueryBuilderState } from './QueryBuilderState.js';
|
|
37
38
|
import { buildDefaultInstanceValue } from './shared/ValueSpecificationEditorHelper.js';
|
38
39
|
import { valueSpecification_setGenericType } from './shared/ValueSpecificationModifierHelper.js';
|
39
40
|
|
40
|
-
export class QueryBuilderConstantExpressionState implements Hashable {
|
41
|
+
export abstract class QueryBuilderConstantExpressionState implements Hashable {
|
41
42
|
readonly queryBuilderState: QueryBuilderState;
|
42
43
|
readonly uuid = uuid();
|
43
44
|
variable: VariableExpression;
|
@@ -48,13 +49,36 @@ export class QueryBuilderConstantExpressionState implements Hashable {
|
|
48
49
|
variable: VariableExpression,
|
49
50
|
value: ValueSpecification,
|
50
51
|
) {
|
52
|
+
this.queryBuilderState = queryBuilderState;
|
53
|
+
this.variable = variable;
|
54
|
+
this.value = value;
|
55
|
+
}
|
56
|
+
|
57
|
+
get hashCode(): string {
|
58
|
+
return hashArray([
|
59
|
+
QUERY_BUILDER_STATE_HASH_STRUCTURE.CONSTANT_EXPRESSION_STATE,
|
60
|
+
this.variable.name,
|
61
|
+
this.value,
|
62
|
+
]);
|
63
|
+
}
|
64
|
+
}
|
65
|
+
|
66
|
+
export class QueryBuilderSimpleConstantExpressionState
|
67
|
+
extends QueryBuilderConstantExpressionState
|
68
|
+
implements Hashable
|
69
|
+
{
|
70
|
+
constructor(
|
71
|
+
queryBuilderState: QueryBuilderState,
|
72
|
+
variable: VariableExpression,
|
73
|
+
value: ValueSpecification,
|
74
|
+
) {
|
75
|
+
super(queryBuilderState, variable, value);
|
51
76
|
makeObservable(this, {
|
52
77
|
variable: observable,
|
53
78
|
value: observable,
|
54
79
|
setValueSpec: action,
|
55
80
|
changeValSpecType: action,
|
56
81
|
});
|
57
|
-
this.queryBuilderState = queryBuilderState;
|
58
82
|
this.value = observe_ValueSpecification(
|
59
83
|
value,
|
60
84
|
this.queryBuilderState.observerContext,
|
@@ -63,7 +87,6 @@ export class QueryBuilderConstantExpressionState implements Hashable {
|
|
63
87
|
variable,
|
64
88
|
this.queryBuilderState.observerContext,
|
65
89
|
);
|
66
|
-
this.variable = variable;
|
67
90
|
}
|
68
91
|
|
69
92
|
changeValSpecType(type: Type): void {
|
@@ -106,13 +129,24 @@ export class QueryBuilderConstantExpressionState implements Hashable {
|
|
106
129
|
);
|
107
130
|
}
|
108
131
|
}
|
132
|
+
}
|
109
133
|
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
134
|
+
export class QueryBuilderCalculatedConstantExpressionState
|
135
|
+
extends QueryBuilderConstantExpressionState
|
136
|
+
implements Hashable
|
137
|
+
{
|
138
|
+
declare value: INTERNAL__UnknownValueSpecification;
|
139
|
+
|
140
|
+
constructor(
|
141
|
+
queryBuilderState: QueryBuilderState,
|
142
|
+
variable: VariableExpression,
|
143
|
+
value: INTERNAL__UnknownValueSpecification,
|
144
|
+
) {
|
145
|
+
super(queryBuilderState, variable, value);
|
146
|
+
makeObservable(this, {
|
147
|
+
variable: observable,
|
148
|
+
value: observable,
|
149
|
+
});
|
116
150
|
}
|
117
151
|
}
|
118
152
|
|
@@ -31,7 +31,7 @@ import {
|
|
31
31
|
type GraphFetchTreeInstanceValue,
|
32
32
|
type ValueSpecificationVisitor,
|
33
33
|
InstanceValue,
|
34
|
-
|
34
|
+
INTERNAL__UnknownValueSpecification,
|
35
35
|
type LambdaFunction,
|
36
36
|
type KeyExpressionInstanceValue,
|
37
37
|
matchFunctionName,
|
@@ -81,7 +81,11 @@ import {
|
|
81
81
|
import { LambdaParameterState } from './shared/LambdaParameterState.js';
|
82
82
|
import { processTDS_OLAPGroupByExpression } from './fetch-structure/tds/window/QueryBuilderWindowStateBuilder.js';
|
83
83
|
import { processWatermarkExpression } from './watermark/QueryBuilderWatermarkStateBuilder.js';
|
84
|
-
import {
|
84
|
+
import {
|
85
|
+
type QueryBuilderConstantExpressionState,
|
86
|
+
QueryBuilderCalculatedConstantExpressionState,
|
87
|
+
QueryBuilderSimpleConstantExpressionState,
|
88
|
+
} from './QueryBuilderConstantsState.js';
|
85
89
|
import { checkIfEquivalent } from './milestoning/QueryBuilderMilestoningHelper.js';
|
86
90
|
import type { QueryBuilderParameterValue } from './QueryBuilderParametersState.js';
|
87
91
|
import { QueryBuilderEmbeddedFromExecutionContextState } from './QueryBuilderExecutionContextState.js';
|
@@ -143,12 +147,20 @@ const processLetExpression = (
|
|
143
147
|
);
|
144
148
|
// process right side (value)
|
145
149
|
const rightSide = guaranteeNonNullable(parameters[1]);
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
150
|
+
let constantExpression: QueryBuilderConstantExpressionState;
|
151
|
+
if (rightSide instanceof INTERNAL__UnknownValueSpecification) {
|
152
|
+
constantExpression = new QueryBuilderCalculatedConstantExpressionState(
|
153
|
+
queryBuilderState,
|
154
|
+
varExp,
|
155
|
+
rightSide,
|
156
|
+
);
|
157
|
+
} else {
|
158
|
+
constantExpression = new QueryBuilderSimpleConstantExpressionState(
|
159
|
+
queryBuilderState,
|
160
|
+
varExp,
|
161
|
+
rightSide,
|
162
|
+
);
|
163
|
+
}
|
152
164
|
queryBuilderState.constantState.setShowConstantPanel(true);
|
153
165
|
queryBuilderState.constantState.addConstant(constantExpression);
|
154
166
|
};
|
@@ -40,7 +40,7 @@ import type { QueryBuilderFetchStructureState } from './fetch-structure/QueryBui
|
|
40
40
|
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../graph/QueryBuilderMetaModelConst.js';
|
41
41
|
import { buildWatermarkExpression } from './watermark/QueryBuilderWatermarkValueSpecificationBuilder.js';
|
42
42
|
import { buildExecutionQueryFromLambdaFunction } from './shared/LambdaParameterState.js';
|
43
|
-
import type
|
43
|
+
import { type QueryBuilderConstantExpressionState } from './QueryBuilderConstantsState.js';
|
44
44
|
import {
|
45
45
|
QueryBuilderEmbeddedFromExecutionContextState,
|
46
46
|
type QueryBuilderExecutionContextState,
|
@@ -343,16 +343,21 @@ export class QueryBuilderFilterTreeExistsNodeData
|
|
343
343
|
extends QueryBuilderFilterTreeOperationNodeData
|
344
344
|
implements Hashable
|
345
345
|
{
|
346
|
-
|
346
|
+
readonly filterState: QueryBuilderFilterState;
|
347
|
+
propertyExpressionState!: QueryBuilderPropertyExpressionState;
|
347
348
|
|
348
|
-
constructor(
|
349
|
+
constructor(
|
350
|
+
filterState: QueryBuilderFilterState,
|
351
|
+
parentId: string | undefined,
|
352
|
+
) {
|
349
353
|
super(parentId);
|
350
354
|
|
351
355
|
makeObservable(this, {
|
352
|
-
|
356
|
+
propertyExpressionState: observable,
|
353
357
|
setPropertyExpression: action,
|
354
358
|
});
|
355
359
|
|
360
|
+
this.filterState = filterState;
|
356
361
|
this.isOpen = true;
|
357
362
|
}
|
358
363
|
|
@@ -361,7 +366,10 @@ export class QueryBuilderFilterTreeExistsNodeData
|
|
361
366
|
}
|
362
367
|
|
363
368
|
setPropertyExpression(val: AbstractPropertyExpression): void {
|
364
|
-
this.
|
369
|
+
this.propertyExpressionState = new QueryBuilderPropertyExpressionState(
|
370
|
+
this.filterState.queryBuilderState,
|
371
|
+
val,
|
372
|
+
);
|
365
373
|
}
|
366
374
|
|
367
375
|
get hashCode(): string {
|
@@ -369,7 +377,7 @@ export class QueryBuilderFilterTreeExistsNodeData
|
|
369
377
|
QUERY_BUILDER_STATE_HASH_STRUCTURE.FILTER_TREE_EXISTS_NODE_DATA,
|
370
378
|
this.parentId ?? '',
|
371
379
|
hashArray(this.childrenIds),
|
372
|
-
this.propertyExpression,
|
380
|
+
this.propertyExpressionState.propertyExpression,
|
373
381
|
this.lambdaParameterName ?? '',
|
374
382
|
]);
|
375
383
|
}
|
@@ -120,6 +120,7 @@ const processFilterTree = (
|
|
120
120
|
propertyExpression.func.value.multiplicity.upperBound > 1
|
121
121
|
) {
|
122
122
|
const existsNode = new QueryBuilderFilterTreeExistsNodeData(
|
123
|
+
filterState,
|
123
124
|
parentFilterNodeId,
|
124
125
|
);
|
125
126
|
const lambdaFunctionInstance = guaranteeType(
|
@@ -37,6 +37,7 @@ import {
|
|
37
37
|
} from './QueryBuilderFilterState.js';
|
38
38
|
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../graph/QueryBuilderMetaModelConst.js';
|
39
39
|
import { DEFAULT_LAMBDA_VARIABLE_NAME } from '../QueryBuilderConfig.js';
|
40
|
+
import { buildPropertyExpressionChain } from '../QueryBuilderValueSpecificationBuilderHelper.js';
|
40
41
|
|
41
42
|
const buildFilterConditionExpression = (
|
42
43
|
filterState: QueryBuilderFilterState,
|
@@ -110,7 +111,19 @@ const buildFilterConditionExpression = (
|
|
110
111
|
)
|
111
112
|
: undefined;
|
112
113
|
}
|
113
|
-
const
|
114
|
+
const lambdaParameterName = node.parentId
|
115
|
+
? guaranteeType(
|
116
|
+
filterState.nodes.get(guaranteeNonNullable(node.parentId)),
|
117
|
+
QueryBuilderFilterTreeOperationNodeData,
|
118
|
+
).lambdaParameterName
|
119
|
+
: undefined;
|
120
|
+
const propertyExpression = guaranteeNonNullable(
|
121
|
+
buildPropertyExpressionChain(
|
122
|
+
node.propertyExpressionState.propertyExpression,
|
123
|
+
node.propertyExpressionState.queryBuilderState,
|
124
|
+
lambdaParameterName ?? filterState.lambdaParameterName,
|
125
|
+
),
|
126
|
+
);
|
114
127
|
const clauses = node.childrenIds
|
115
128
|
.map((e) => filterState.nodes.get(e))
|
116
129
|
.filter(isNonNullable)
|