@finos/legend-query-builder 4.1.15 → 4.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (94) hide show
  1. package/lib/components/filter/QueryBuilderFilterPanel.d.ts +6 -1
  2. package/lib/components/filter/QueryBuilderFilterPanel.d.ts.map +1 -1
  3. package/lib/components/filter/QueryBuilderFilterPanel.js +189 -13
  4. package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -1
  5. package/lib/index.css +1 -17
  6. package/lib/index.css.map +1 -1
  7. package/lib/package.json +1 -1
  8. package/lib/stores/QueryBuilderStateHashUtils.d.ts +1 -0
  9. package/lib/stores/QueryBuilderStateHashUtils.d.ts.map +1 -1
  10. package/lib/stores/QueryBuilderStateHashUtils.js +1 -0
  11. package/lib/stores/QueryBuilderStateHashUtils.js.map +1 -1
  12. package/lib/stores/QueryBuilderValueSpecificationHelper.d.ts.map +1 -1
  13. package/lib/stores/QueryBuilderValueSpecificationHelper.js +2 -3
  14. package/lib/stores/QueryBuilderValueSpecificationHelper.js.map +1 -1
  15. package/lib/stores/filter/QueryBuilderFilterOperator.d.ts +1 -1
  16. package/lib/stores/filter/QueryBuilderFilterOperator.d.ts.map +1 -1
  17. package/lib/stores/filter/QueryBuilderFilterOperator.js.map +1 -1
  18. package/lib/stores/filter/QueryBuilderFilterState.d.ts +16 -5
  19. package/lib/stores/filter/QueryBuilderFilterState.d.ts.map +1 -1
  20. package/lib/stores/filter/QueryBuilderFilterState.js +78 -18
  21. package/lib/stores/filter/QueryBuilderFilterState.js.map +1 -1
  22. package/lib/stores/filter/QueryBuilderFilterStateBuilder.d.ts.map +1 -1
  23. package/lib/stores/filter/QueryBuilderFilterStateBuilder.js +125 -2
  24. package/lib/stores/filter/QueryBuilderFilterStateBuilder.js.map +1 -1
  25. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.d.ts.map +1 -1
  26. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.js +62 -3
  27. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.js.map +1 -1
  28. package/lib/stores/filter/operators/QueryBuilderFilterOperatorValueSpecificationBuilder.d.ts +1 -1
  29. package/lib/stores/filter/operators/QueryBuilderFilterOperatorValueSpecificationBuilder.d.ts.map +1 -1
  30. package/lib/stores/filter/operators/QueryBuilderFilterOperatorValueSpecificationBuilder.js +12 -192
  31. package/lib/stores/filter/operators/QueryBuilderFilterOperatorValueSpecificationBuilder.js.map +1 -1
  32. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.d.ts +2 -2
  33. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.d.ts.map +1 -1
  34. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.js +4 -4
  35. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.js.map +1 -1
  36. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.d.ts +2 -2
  37. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.d.ts.map +1 -1
  38. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.js +4 -4
  39. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.js.map +1 -1
  40. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.d.ts +2 -2
  41. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.d.ts.map +1 -1
  42. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.js +4 -4
  43. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.js.map +1 -1
  44. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.d.ts +1 -1
  45. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.d.ts.map +1 -1
  46. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.js +2 -2
  47. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.js.map +1 -1
  48. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts +1 -1
  49. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts.map +1 -1
  50. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.js +2 -2
  51. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.js.map +1 -1
  52. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.d.ts +2 -2
  53. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.d.ts.map +1 -1
  54. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.js +4 -4
  55. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.js.map +1 -1
  56. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.d.ts +2 -2
  57. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.d.ts.map +1 -1
  58. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.js +4 -4
  59. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.js.map +1 -1
  60. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.d.ts +1 -1
  61. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.d.ts.map +1 -1
  62. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.js +2 -2
  63. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.js.map +1 -1
  64. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.d.ts +1 -1
  65. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.d.ts.map +1 -1
  66. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.js +2 -2
  67. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.js.map +1 -1
  68. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.d.ts +2 -2
  69. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.d.ts.map +1 -1
  70. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.js +4 -4
  71. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.js.map +1 -1
  72. package/lib/stores/shared/ValueSpecificationEditorHelper.d.ts.map +1 -1
  73. package/lib/stores/shared/ValueSpecificationEditorHelper.js +9 -1
  74. package/lib/stores/shared/ValueSpecificationEditorHelper.js.map +1 -1
  75. package/package.json +3 -3
  76. package/src/components/filter/QueryBuilderFilterPanel.tsx +355 -24
  77. package/src/stores/QueryBuilderStateHashUtils.ts +1 -0
  78. package/src/stores/QueryBuilderValueSpecificationHelper.ts +2 -3
  79. package/src/stores/filter/QueryBuilderFilterOperator.ts +1 -0
  80. package/src/stores/filter/QueryBuilderFilterState.ts +115 -27
  81. package/src/stores/filter/QueryBuilderFilterStateBuilder.ts +244 -0
  82. package/src/stores/filter/QueryBuilderFilterValueSpecificationBuilder.ts +94 -1
  83. package/src/stores/filter/operators/QueryBuilderFilterOperatorValueSpecificationBuilder.ts +37 -377
  84. package/src/stores/filter/operators/QueryBuilderFilterOperator_Contain.ts +7 -1
  85. package/src/stores/filter/operators/QueryBuilderFilterOperator_EndWith.ts +7 -1
  86. package/src/stores/filter/operators/QueryBuilderFilterOperator_Equal.ts +7 -1
  87. package/src/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.ts +2 -0
  88. package/src/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.ts +2 -0
  89. package/src/stores/filter/operators/QueryBuilderFilterOperator_In.ts +7 -1
  90. package/src/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.ts +7 -1
  91. package/src/stores/filter/operators/QueryBuilderFilterOperator_LessThan.ts +2 -0
  92. package/src/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.ts +2 -0
  93. package/src/stores/filter/operators/QueryBuilderFilterOperator_StartWith.ts +7 -1
  94. package/src/stores/shared/ValueSpecificationEditorHelper.ts +11 -1
@@ -13,9 +13,14 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { QUERY_BUILDER_FILTER_DND_TYPE } from '../../stores/filter/QueryBuilderFilterState.js';
16
+ import { QUERY_BUILDER_FILTER_DND_TYPE, QueryBuilderFilterTreeOperationNodeData, type QueryBuilderFilterState } from '../../stores/filter/QueryBuilderFilterState.js';
17
17
  import { QUERY_BUILDER_EXPLORER_TREE_DND_TYPE } from '../../stores/explorer/QueryBuilderExplorerState.js';
18
18
  import type { QueryBuilderState } from '../../stores/QueryBuilderState.js';
19
+ import { AbstractPropertyExpression } from '@finos/legend-graph';
20
+ /**
21
+ * This function updates the filter state when we DnD a property that can accept multiple values.
22
+ */
23
+ export declare const buildFilterTreeWithExists: (propertyExpression: AbstractPropertyExpression, filterState: QueryBuilderFilterState, targetDropNode?: QueryBuilderFilterTreeOperationNodeData) => void;
19
24
  export declare const IS_DRAGGABLE_FILTER_DND_TYPES_FETCH_SUPPORTED: string[];
20
25
  export declare const IS_DRAGGABLE_FILTER_DND_TYPES: (QUERY_BUILDER_EXPLORER_TREE_DND_TYPE | QUERY_BUILDER_FILTER_DND_TYPE)[];
21
26
  export declare const QueryBuilderFilterPanel: ((props: {
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderFilterPanel.d.ts","sourceRoot":"","sources":["../../../src/components/filter/QueryBuilderFilterPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkCH,OAAO,EAIL,6BAA6B,EAK9B,MAAM,gDAAgD,CAAC;AAExD,OAAO,EAIL,oCAAoC,EACrC,MAAM,oDAAoD,CAAC;AAE5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAwB3E,eAAO,MAAM,6CAA6C,UAKzD,CAAC;AAEF,eAAO,MAAM,6BAA6B,0EAIzC,CAAC;AA4mBF,eAAO,MAAM,uBAAuB,WAC1B;IAAE,iBAAiB,EAAE,iBAAiB,CAAA;CAAE;;CAiSjD,CAAC"}
1
+ {"version":3,"file":"QueryBuilderFilterPanel.d.ts","sourceRoot":"","sources":["../../../src/components/filter/QueryBuilderFilterPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkCH,OAAO,EAIL,6BAA6B,EAM7B,uCAAuC,EACvC,KAAK,uBAAuB,EAC7B,MAAM,gDAAgD,CAAC;AAExD,OAAO,EAIL,oCAAoC,EACrC,MAAM,oDAAoD,CAAC;AAE5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAiB3E,OAAO,EACL,0BAA0B,EAO3B,MAAM,qBAAqB,CAAC;AAiD7B;;GAEG;AACH,eAAO,MAAM,yBAAyB,uBAChB,0BAA0B,eACjC,uBAAuB,mBACnB,uCAAuC,KACvD,IAgLF,CAAC;AA4DF,eAAO,MAAM,6CAA6C,UAKzD,CAAC;AAEF,eAAO,MAAM,6BAA6B,0EAIzC,CAAC;AA0pBF,eAAO,MAAM,uBAAuB,WAC1B;IAAE,iBAAiB,EAAE,iBAAiB,CAAA;CAAE;;CAsRjD,CAAC"}
@@ -17,18 +17,191 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
17
17
  import { useRef, useState, useCallback, forwardRef, useMemo } from 'react';
18
18
  import { observer } from 'mobx-react-lite';
19
19
  import { clsx, ContextMenu, DropdownMenu, MenuContent, MenuContentItem, BlankPanelPlaceholder, FilledTriangleIcon, CompressIcon, ExpandIcon, TrashIcon, NewFolderIcon, CircleIcon, CaretDownIcon, PlusIcon, ChevronDownIcon, ChevronRightIcon, PlusCircleIcon, TimesIcon, PanelDropZone, DragPreviewLayer, PanelEntryDropZonePlaceholder, useDragPreviewLayer, PanelContent, MoreVerticalIcon, MenuContentItemIcon, MenuContentItemLabel, } from '@finos/legend-art';
20
- import { QUERY_BUILDER_FILTER_DND_TYPE, FilterConditionState, QueryBuilderFilterTreeConditionNodeData, QueryBuilderFilterTreeBlankConditionNodeData, QueryBuilderFilterTreeGroupNodeData, } from '../../stores/filter/QueryBuilderFilterState.js';
20
+ import { QUERY_BUILDER_FILTER_DND_TYPE, FilterConditionState, QueryBuilderFilterTreeConditionNodeData, QueryBuilderFilterTreeBlankConditionNodeData, QueryBuilderFilterTreeGroupNodeData, QueryBuilderFilterTreeExistsNodeData, QueryBuilderFilterTreeOperationNodeData, } from '../../stores/filter/QueryBuilderFilterState.js';
21
21
  import { useDrag, useDragLayer, useDrop } from 'react-dnd';
22
22
  import { buildPropertyExpressionFromExplorerTreeNodeData, QUERY_BUILDER_EXPLORER_TREE_DND_TYPE, } from '../../stores/explorer/QueryBuilderExplorerState.js';
23
23
  import { QueryBuilderPropertyExpressionBadge } from '../QueryBuilderPropertyExpressionEditor.js';
24
- import { assertErrorThrown, debounce, UnsupportedOperationError, } from '@finos/legend-shared';
24
+ import { assertErrorThrown, assertTrue, debounce, generateEnumerableNameFromToken, getNullableFirstEntry, guaranteeNonNullable, guaranteeType, UnsupportedOperationError, } from '@finos/legend-shared';
25
25
  import { QUERY_BUILDER_TEST_ID } from '../../__lib__/QueryBuilderTesting.js';
26
- import { useApplicationStore } from '@finos/legend-application';
26
+ import { ActionAlertActionType, ActionAlertType, useApplicationStore, } from '@finos/legend-application';
27
+ import { AbstractPropertyExpression, extractElementNameFromPath, matchFunctionName, Multiplicity, SimpleFunctionExpression, VariableExpression, } from '@finos/legend-graph';
27
28
  import { QueryBuilderSimpleProjectionColumnState, QUERY_BUILDER_PROJECTION_COLUMN_DND_TYPE, } from '../../stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.js';
28
29
  import { isTypeCompatibleForAssignment } from '../../stores/QueryBuilderValueSpecificationHelper.js';
29
30
  import { QUERY_BUILDER_GROUP_OPERATION } from '../../stores/QueryBuilderGroupOperationHelper.js';
30
31
  import { BasicValueSpecificationEditor, QUERY_BUILDER_VARIABLE_DND_TYPE, } from '../shared/BasicValueSpecificationEditor.js';
31
32
  import { QueryBuilderTelemetryHelper } from '../../__lib__/QueryBuilderTelemetryHelper.js';
33
+ import { getPropertyChainName } from '../../stores/QueryBuilderPropertyEditorState.js';
34
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../graph/QueryBuilderMetaModelConst.js';
35
+ const isCollectionProperty = (propertyExpression) => {
36
+ let currentExpression = propertyExpression;
37
+ while (currentExpression instanceof AbstractPropertyExpression) {
38
+ // Check if the property chain can results in column that have multiple values
39
+ if (currentExpression.func.value.multiplicity.upperBound === undefined ||
40
+ currentExpression.func.value.multiplicity.upperBound > 1) {
41
+ return true;
42
+ }
43
+ currentExpression = getNullableFirstEntry(currentExpression.parametersValues);
44
+ // Take care of chains of subtype
45
+ while (currentExpression instanceof SimpleFunctionExpression &&
46
+ matchFunctionName(currentExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE)) {
47
+ currentExpression = getNullableFirstEntry(currentExpression.parametersValues);
48
+ }
49
+ }
50
+ return false;
51
+ };
52
+ /**
53
+ * This function updates the filter state when we DnD a property that can accept multiple values.
54
+ */
55
+ export const buildFilterTreeWithExists = (propertyExpression, filterState, targetDropNode) => {
56
+ // 1. Decompose property expression
57
+ const expressions = [];
58
+ let currentPropertyExpression = propertyExpression;
59
+ while (currentPropertyExpression instanceof AbstractPropertyExpression ||
60
+ (currentPropertyExpression instanceof SimpleFunctionExpression &&
61
+ matchFunctionName(currentPropertyExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE))) {
62
+ let exp;
63
+ if (currentPropertyExpression instanceof SimpleFunctionExpression) {
64
+ exp = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE));
65
+ }
66
+ else {
67
+ exp = new AbstractPropertyExpression('');
68
+ exp.func = currentPropertyExpression.func;
69
+ }
70
+ // NOTE: we must retain the rest of the parameters as those are derived property parameters
71
+ exp.parametersValues =
72
+ currentPropertyExpression.parametersValues.length > 1
73
+ ? currentPropertyExpression.parametersValues.slice(1)
74
+ : [];
75
+ expressions.push(exp);
76
+ currentPropertyExpression = guaranteeNonNullable(currentPropertyExpression.parametersValues[0]);
77
+ }
78
+ const rootVariable = guaranteeType(currentPropertyExpression, VariableExpression);
79
+ // 2. Traverse the list of decomposed property expression backward, every time we encounter a property of
80
+ // multiplicity many, create a new property expression and keep track of it to later form the lambda chain
81
+ let existsLambdaParamNames = [];
82
+ let existsLambdaPropertyChains = [rootVariable];
83
+ let currentParamNameIndex = 0;
84
+ for (let i = expressions.length - 1; i >= 0; --i) {
85
+ const exp = expressions[i];
86
+ // just keep adding to the property chain
87
+ exp.parametersValues.unshift(existsLambdaPropertyChains[existsLambdaPropertyChains.length - 1]);
88
+ existsLambdaPropertyChains[existsLambdaPropertyChains.length - 1] = exp;
89
+ // ... but if the property is of multiplicity multiple, start a new property chain
90
+ if (exp instanceof AbstractPropertyExpression &&
91
+ (exp.func.value.multiplicity.upperBound === undefined ||
92
+ exp.func.value.multiplicity.upperBound > 1)) {
93
+ // NOTE: we need to find/generate the property chain variable name
94
+ if (currentParamNameIndex > existsLambdaParamNames.length - 1) {
95
+ existsLambdaParamNames.push(generateEnumerableNameFromToken(existsLambdaParamNames, filterState.lambdaParameterName));
96
+ assertTrue(currentParamNameIndex === existsLambdaParamNames.length - 1);
97
+ }
98
+ existsLambdaPropertyChains.push(new VariableExpression(existsLambdaParamNames[currentParamNameIndex], Multiplicity.ONE));
99
+ currentParamNameIndex++;
100
+ }
101
+ }
102
+ let parentNode = undefined;
103
+ if (targetDropNode) {
104
+ if (targetDropNode instanceof QueryBuilderFilterTreeExistsNodeData) {
105
+ // Here we check if the target drop node is an exists tree node, if it is
106
+ // then we try to check in the lambda property chains that it contains the
107
+ // property expression of the target drop node. If we find any lambda property
108
+ // chain we just create exists filter for the rest of the property and add it to the
109
+ // target drop exists node, otherwise we just create exists for all the property chains.
110
+ // For example if we find property chain we create
111
+ // employees->exists($x.name == 'Bob' && $x.id == '1') instead of creating
112
+ // employess->exists($x.name == 'Bob) && employess->exists($x.id == '1')
113
+ const parentPropertyChainIndex = existsLambdaPropertyChains.findIndex((p) => p instanceof AbstractPropertyExpression &&
114
+ p.func.value === targetDropNode.propertyExpression.func.value &&
115
+ p.func.ownerReference.value.path ===
116
+ targetDropNode.propertyExpression.func.ownerReference.value.path);
117
+ if (parentPropertyChainIndex >= 0) {
118
+ parentNode = targetDropNode;
119
+ existsLambdaPropertyChains = existsLambdaPropertyChains.slice(parentPropertyChainIndex + 1);
120
+ existsLambdaParamNames = existsLambdaParamNames.slice(parentPropertyChainIndex + 1);
121
+ }
122
+ }
123
+ else {
124
+ // Here the target drop node is a group operation tree node. So we try to find if there is
125
+ // any exists tree parent node of the target drop node. If there is any exists parent node,
126
+ // we try to check in the lambda property chains that it contains the
127
+ // property expression of the target drop node. If we find any lambda property
128
+ // chain we just create exists filter for the rest of the property and add it to the
129
+ // target drop exists node, otherwise we just create exists for all the property chains.
130
+ // For example if we find property chain we create
131
+ // employees->exists($x.name == 'Bob' && $x.id == '1' && $x.age == '30) instead of creating
132
+ // employess->exists($x.name == 'Bob) && employess->exists($x.id == '1') && employess->exists($x.age == '30')
133
+ let cn = targetDropNode;
134
+ let parentId = targetDropNode.parentId;
135
+ while (parentId &&
136
+ !(cn instanceof QueryBuilderFilterTreeExistsNodeData)) {
137
+ cn = filterState.nodes.get(parentId);
138
+ parentId = cn?.parentId;
139
+ }
140
+ if (cn instanceof QueryBuilderFilterTreeExistsNodeData) {
141
+ const parentPropertyChainIndex = existsLambdaPropertyChains.findIndex((p) => p instanceof AbstractPropertyExpression &&
142
+ cn instanceof QueryBuilderFilterTreeExistsNodeData &&
143
+ p.func.value ===
144
+ guaranteeType(cn, QueryBuilderFilterTreeExistsNodeData)
145
+ .propertyExpression.func.value &&
146
+ p.func.ownerReference.value.path ===
147
+ cn.propertyExpression.func.ownerReference.value.path);
148
+ if (parentPropertyChainIndex >= 0) {
149
+ parentNode = targetDropNode;
150
+ existsLambdaPropertyChains = existsLambdaPropertyChains.slice(parentPropertyChainIndex + 1);
151
+ existsLambdaParamNames = existsLambdaParamNames.slice(parentPropertyChainIndex + 1);
152
+ }
153
+ }
154
+ else if (!parentId) {
155
+ parentNode = targetDropNode;
156
+ }
157
+ }
158
+ }
159
+ // 3. Create exists tree node for all the property chains and add them to the filter tree
160
+ for (let i = 0; i < existsLambdaPropertyChains.length - 1; ++i) {
161
+ const existsNode = new QueryBuilderFilterTreeExistsNodeData(parentNode?.id);
162
+ existsNode.setPropertyExpression(existsLambdaPropertyChains[i]);
163
+ existsNode.lambdaParameterName = existsLambdaParamNames[i];
164
+ filterState.nodes.set(existsNode.id, existsNode);
165
+ filterState.addNodeFromNode(existsNode, parentNode);
166
+ parentNode = existsNode;
167
+ }
168
+ // create the filter condition tree node data
169
+ const filterConditionState = new FilterConditionState(filterState, existsLambdaPropertyChains[existsLambdaPropertyChains.length - 1]);
170
+ const treeNode = new QueryBuilderFilterTreeConditionNodeData(undefined, filterConditionState);
171
+ filterState.addNodeFromNode(treeNode, parentNode);
172
+ };
173
+ /**
174
+ * This function builds the filter tree when we DnD a node to the filter panel.
175
+ */
176
+ const buildFilterTree = (propertyExpression, filterState, targetDropNode) => {
177
+ if (isCollectionProperty(propertyExpression)) {
178
+ const propertyChainName = getPropertyChainName(propertyExpression, filterState.queryBuilderState.explorerState.humanizePropertyName);
179
+ filterState.queryBuilderState.applicationStore.alertService.setActionAlertInfo({
180
+ message: `The property '${propertyChainName}' is a collection. As you are trying to filter on a collection, the filter created will be an exist filter. e.g. There exists at least one '${propertyChainName}' where 'Type' is the value specified.
181
+ If you are looking to create the filter where all values in this collection equal the value specified, rather than at least one value, consider creating post filter instead.`,
182
+ type: ActionAlertType.CAUTION,
183
+ actions: [
184
+ {
185
+ label: 'Cancel',
186
+ type: ActionAlertActionType.PROCEED_WITH_CAUTION,
187
+ default: true,
188
+ },
189
+ {
190
+ label: 'Proceed',
191
+ type: ActionAlertActionType.PROCEED,
192
+ handler: filterState.queryBuilderState.applicationStore.guardUnhandledError(async () => buildFilterTreeWithExists(propertyExpression, filterState, targetDropNode)),
193
+ },
194
+ ],
195
+ });
196
+ }
197
+ else {
198
+ const filterConditionState = new FilterConditionState(filterState, propertyExpression);
199
+ const treeNode = new QueryBuilderFilterTreeConditionNodeData(undefined, filterConditionState);
200
+ filterState.addNodeFromNode(treeNode, targetDropNode instanceof QueryBuilderFilterTreeGroupNodeData
201
+ ? targetDropNode
202
+ : undefined);
203
+ }
204
+ };
32
205
  export const IS_DRAGGABLE_FILTER_DND_TYPES_FETCH_SUPPORTED = [
33
206
  QUERY_BUILDER_FILTER_DND_TYPE.CONDITION,
34
207
  QUERY_BUILDER_EXPLORER_TREE_DND_TYPE.ENUM_PROPERTY,
@@ -54,6 +227,10 @@ const QueryBuilderFilterGroupConditionEditor = observer((props) => {
54
227
  'query-builder-filter-tree__group-node--or': node.groupOperation === QUERY_BUILDER_GROUP_OPERATION.OR,
55
228
  }), title: "Switch Operation", onClick: switchOperation, children: [_jsx("div", { className: "query-builder-filter-tree__group-node__label", children: node.groupOperation }), _jsx("button", { className: "query-builder-filter-tree__group-node__action", children: _jsx(FilledTriangleIcon, {}) })] }) }) }));
56
229
  });
230
+ const QueryBuilderFilterExistsConditionEditor = observer((props) => {
231
+ const { node, humanizePropertyName, isDragOver, isDroppable } = props;
232
+ return (_jsx("div", { className: "query-builder-filter-tree__node__label__content dnd__entry__container", children: _jsx(PanelEntryDropZonePlaceholder, { isDragOver: isDragOver, isDroppable: isDroppable, label: `Add to Exists Group`, children: _jsxs("div", { className: "query-builder-filter-tree__exists-node", title: "This is an exists filter on the collection property", children: [_jsx("div", { className: "query-builder-filter-tree__exists-node__label", children: getPropertyChainName(node.propertyExpression, humanizePropertyName) }), _jsx("div", { className: "query-builder-filter-tree__exists-node__exists--label", children: "exists" })] }) }) }));
233
+ });
57
234
  const QueryBuilderFilterConditionEditor = observer((props) => {
58
235
  const { node, isDragOver } = props;
59
236
  const graph = node.condition.filterState.queryBuilderState.graphManagerState.graph;
@@ -137,7 +314,7 @@ const QueryBuilderFilterTreeNodeContainer = observer((props) => {
137
314
  const [isSelectedFromContextMenu, setIsSelectedFromContextMenu] = useState(false);
138
315
  const applicationStore = useApplicationStore();
139
316
  const filterState = queryBuilderState.filterState;
140
- const isExpandable = node instanceof QueryBuilderFilterTreeGroupNodeData;
317
+ const isExpandable = node instanceof QueryBuilderFilterTreeOperationNodeData;
141
318
  const selectNode = () => onNodeSelect?.(node);
142
319
  const toggleExpandNode = () => node.setIsOpen(!node.isOpen);
143
320
  const removeNode = () => filterState.removeNodeAndPruneBranch(node);
@@ -185,8 +362,8 @@ const QueryBuilderFilterTreeNodeContainer = observer((props) => {
185
362
  applicationStore.notificationService.notifyWarning(error.message);
186
363
  return;
187
364
  }
188
- if (node instanceof QueryBuilderFilterTreeGroupNodeData) {
189
- filterState.addNodeFromNode(new QueryBuilderFilterTreeConditionNodeData(undefined, filterConditionState), node);
365
+ if (node instanceof QueryBuilderFilterTreeOperationNodeData) {
366
+ buildFilterTree(filterConditionState.propertyExpressionState.propertyExpression, filterState, node);
190
367
  }
191
368
  else if (node instanceof QueryBuilderFilterTreeConditionNodeData) {
192
369
  filterState.newGroupWithConditionFromNode(new QueryBuilderFilterTreeConditionNodeData(undefined, filterConditionState), node);
@@ -238,7 +415,8 @@ const QueryBuilderFilterTreeNodeContainer = observer((props) => {
238
415
  display: 'flex',
239
416
  }, onClick: selectNode, children: [isExpandable && (_jsx("div", { className: "query-builder-filter-tree__expand-icon", onClick: toggleExpandNode, children: node.isOpen ? _jsx(ChevronDownIcon, {}) : _jsx(ChevronRightIcon, {}) })), _jsxs("div", { className: clsx('tree-view__node__label query-builder-filter-tree__node__label', {
240
417
  'query-builder-filter-tree__node__label--expandable': isExpandable,
241
- }), children: [node instanceof QueryBuilderFilterTreeGroupNodeData && (_jsx(QueryBuilderFilterGroupConditionEditor, { node: node, isDroppable: isDroppable, isDragOver: isDragOver })), node instanceof QueryBuilderFilterTreeConditionNodeData && (_jsx(QueryBuilderFilterConditionEditor, { node: node, isDragOver: isDragOver })), node instanceof QueryBuilderFilterTreeBlankConditionNodeData && (_jsx(QueryBuilderFilterBlankConditionEditor, { node: node, isDragOver: isDragOver, isDroppable: isDroppable }))] })] }), _jsx("div", { className: "query-builder-filter-tree__node__actions", children: _jsx("button", { className: "query-builder-filter-tree__node__action", tabIndex: -1, title: "Remove", onClick: removeNode, children: _jsx(TimesIcon, {}) }) })] }) }));
418
+ }), children: [node instanceof QueryBuilderFilterTreeGroupNodeData && (_jsx(QueryBuilderFilterGroupConditionEditor, { node: node, isDroppable: isDroppable, isDragOver: isDragOver })), node instanceof QueryBuilderFilterTreeExistsNodeData && (_jsx(QueryBuilderFilterExistsConditionEditor, { node: node, humanizePropertyName: filterState.queryBuilderState.explorerState
419
+ .humanizePropertyName, isDroppable: isDroppable, isDragOver: isDragOver })), node instanceof QueryBuilderFilterTreeConditionNodeData && (_jsx(QueryBuilderFilterConditionEditor, { node: node, isDragOver: isDragOver })), node instanceof QueryBuilderFilterTreeBlankConditionNodeData && (_jsx(QueryBuilderFilterBlankConditionEditor, { node: node, isDragOver: isDragOver, isDroppable: isDroppable }))] })] }), _jsx("div", { className: "query-builder-filter-tree__node__actions", children: _jsx("button", { className: "query-builder-filter-tree__node__action", tabIndex: -1, title: "Remove", onClick: removeNode, children: _jsx(TimesIcon, {}) }) })] }) }));
242
420
  });
243
421
  const QueryBuilderFilterTreeNodeView = observer((props) => {
244
422
  const { node, level, onNodeSelect, getChildNodes, stepPaddingInRem, innerProps, } = props;
@@ -252,7 +430,7 @@ const QueryBuilderFilterTree = observer((props) => {
252
430
  const onNodeSelect = (node) => {
253
431
  filterState.setSelectedNode(filterState.selectedNode !== node ? node : undefined);
254
432
  };
255
- const getChildNodes = (node) => node instanceof QueryBuilderFilterTreeGroupNodeData
433
+ const getChildNodes = (node) => node instanceof QueryBuilderFilterTreeOperationNodeData
256
434
  ? node.childrenIds.map((id) => filterState.getNode(id))
257
435
  : [];
258
436
  return (_jsx("div", { className: "tree-view__node__root query-builder-filter-tree__root", children: rootNodes.map((node) => (_jsx(QueryBuilderFilterTreeNodeView, { level: 0, node: node, getChildNodes: getChildNodes, onNodeSelect: onNodeSelect, innerProps: {
@@ -311,7 +489,6 @@ export const QueryBuilderFilterPanel = observer((props) => {
311
489
  }));
312
490
  // Drag and Drop
313
491
  const handleDrop = useCallback((item, type) => {
314
- let filterConditionState;
315
492
  try {
316
493
  let propertyExpression;
317
494
  if (type === QUERY_BUILDER_PROJECTION_COLUMN_DND_TYPE) {
@@ -328,16 +505,15 @@ export const QueryBuilderFilterPanel = observer((props) => {
328
505
  propertyExpression =
329
506
  buildPropertyExpressionFromExplorerTreeNodeData(item.node, filterState.queryBuilderState.explorerState);
330
507
  }
331
- filterConditionState = new FilterConditionState(filterState, propertyExpression);
508
+ // NOTE: unfocus the current node when DnD a new node to the tree
509
+ filterState.setSelectedNode(undefined);
510
+ buildFilterTree(propertyExpression, filterState);
332
511
  }
333
512
  catch (error) {
334
513
  assertErrorThrown(error);
335
514
  applicationStore.notificationService.notifyWarning(error.message);
336
515
  return;
337
516
  }
338
- // NOTE: unfocus the current node when DnD a new node to the tree
339
- filterState.setSelectedNode(undefined);
340
- filterState.addNodeFromNode(new QueryBuilderFilterTreeConditionNodeData(undefined, filterConditionState), undefined);
341
517
  }, [applicationStore, filterState]);
342
518
  const [{ isDragOver }, dropTargetConnector] = useDrop(() => ({
343
519
  accept: queryBuilderState.TEMPORARY__isDnDFetchStructureToFilterSupported
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderFilterPanel.js","sourceRoot":"","sources":["../../../src/components/filter/QueryBuilderFilterPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryBuilderFilterPanel.js","sourceRoot":"","sources":["../../../src/components/filter/QueryBuilderFilterPanel.tsx"],"names":[],"mappings":"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"}