@finos/legend-query-builder 4.10.0 → 4.10.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (27) hide show
  1. package/lib/__lib__/QueryBuilderTesting.d.ts +1 -0
  2. package/lib/__lib__/QueryBuilderTesting.d.ts.map +1 -1
  3. package/lib/__lib__/QueryBuilderTesting.js +1 -0
  4. package/lib/__lib__/QueryBuilderTesting.js.map +1 -1
  5. package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -1
  6. package/lib/components/QueryBuilderResultPanel.js +44 -57
  7. package/lib/components/QueryBuilderResultPanel.js.map +1 -1
  8. package/lib/components/filter/QueryBuilderFilterPanel.d.ts +3 -2
  9. package/lib/components/filter/QueryBuilderFilterPanel.d.ts.map +1 -1
  10. package/lib/components/filter/QueryBuilderFilterPanel.js +145 -8
  11. package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -1
  12. package/lib/index.css +1 -1
  13. package/lib/package.json +1 -1
  14. package/lib/stores/QueryBuilderResultState.d.ts +3 -0
  15. package/lib/stores/QueryBuilderResultState.d.ts.map +1 -1
  16. package/lib/stores/QueryBuilderResultState.js +31 -2
  17. package/lib/stores/QueryBuilderResultState.js.map +1 -1
  18. package/lib/stores/filter/QueryBuilderFilterState.d.ts +7 -1
  19. package/lib/stores/filter/QueryBuilderFilterState.d.ts.map +1 -1
  20. package/lib/stores/filter/QueryBuilderFilterState.js +27 -0
  21. package/lib/stores/filter/QueryBuilderFilterState.js.map +1 -1
  22. package/package.json +5 -5
  23. package/src/__lib__/QueryBuilderTesting.ts +1 -0
  24. package/src/components/QueryBuilderResultPanel.tsx +63 -76
  25. package/src/components/filter/QueryBuilderFilterPanel.tsx +239 -21
  26. package/src/stores/QueryBuilderResultState.ts +36 -1
  27. package/src/stores/filter/QueryBuilderFilterState.ts +40 -1
@@ -25,6 +25,7 @@ export declare enum QUERY_BUILDER_TEST_ID {
25
25
  QUERY_BUILDER_FILTER_TREE = "query__builder__filter__tree",
26
26
  QUERY_BUILDER_FILTER_TREE_NODE = "query__builder__filter__tree__node",
27
27
  QUERY_BUILDER_FILTER_TREE_NODE_CONTENT = "query__builder__filter__tree__node-content",
28
+ QUERY_BUILDER_FILTER_TREE_CONDITION_NODE_CONTENT = "query__builder__filter__tree__condition__node-content",
28
29
  QUERY_BUILDER_POST_FILTER_PANEL = "query__builder__post__filter-panel",
29
30
  QUERY_BUILDER_POST_FILTER_TREE_NODE_CONTENT = "query__builder__post__filter-tree-node__content",
30
31
  QUERY_BUILDER_WINDOW_GROUPBY = "query__builder__window",
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderTesting.d.ts","sourceRoot":"","sources":["../../src/__lib__/QueryBuilderTesting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,oBAAY,qBAAqB;IAC/B,2BAA2B,iCAAiC;IAE5D,aAAa,mBAAmB;IAChC,mBAAmB,0BAA0B;IAC7C,iBAAiB,wBAAwB;IACzC,mCAAmC,wCAAwC;IAC3E,wCAAwC,+CAA+C;IACvF,yBAAyB,iCAAiC;IAE1D,0BAA0B,kCAAkC;IAC5D,yBAAyB,iCAAiC;IAC1D,8BAA8B,uCAAuC;IACrE,sCAAsC,+CAA+C;IAErF,+BAA+B,uCAAuC;IACtE,2CAA2C,oDAAoD;IAC/F,4BAA4B,2BAA2B;IACvD,sBAAsB,6BAA6B;IACnD,mCAAmC,4CAA4C;IAC/E,0BAA0B,kCAAkC;IAC5D,8BAA8B,sCAAsC;IACpE,wBAAwB,8BAA8B;IACtD,uBAAuB,6BAA6B;CACrD"}
1
+ {"version":3,"file":"QueryBuilderTesting.d.ts","sourceRoot":"","sources":["../../src/__lib__/QueryBuilderTesting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,oBAAY,qBAAqB;IAC/B,2BAA2B,iCAAiC;IAE5D,aAAa,mBAAmB;IAChC,mBAAmB,0BAA0B;IAC7C,iBAAiB,wBAAwB;IACzC,mCAAmC,wCAAwC;IAC3E,wCAAwC,+CAA+C;IACvF,yBAAyB,iCAAiC;IAE1D,0BAA0B,kCAAkC;IAC5D,yBAAyB,iCAAiC;IAC1D,8BAA8B,uCAAuC;IACrE,sCAAsC,+CAA+C;IACrF,gDAAgD,0DAA0D;IAE1G,+BAA+B,uCAAuC;IACtE,2CAA2C,oDAAoD;IAC/F,4BAA4B,2BAA2B;IACvD,sBAAsB,6BAA6B;IACnD,mCAAmC,4CAA4C;IAC/E,0BAA0B,kCAAkC;IAC5D,8BAA8B,sCAAsC;IACpE,wBAAwB,8BAA8B;IACtD,uBAAuB,6BAA6B;CACrD"}
@@ -27,6 +27,7 @@ export var QUERY_BUILDER_TEST_ID;
27
27
  QUERY_BUILDER_TEST_ID["QUERY_BUILDER_FILTER_TREE"] = "query__builder__filter__tree";
28
28
  QUERY_BUILDER_TEST_ID["QUERY_BUILDER_FILTER_TREE_NODE"] = "query__builder__filter__tree__node";
29
29
  QUERY_BUILDER_TEST_ID["QUERY_BUILDER_FILTER_TREE_NODE_CONTENT"] = "query__builder__filter__tree__node-content";
30
+ QUERY_BUILDER_TEST_ID["QUERY_BUILDER_FILTER_TREE_CONDITION_NODE_CONTENT"] = "query__builder__filter__tree__condition__node-content";
30
31
  // post filter
31
32
  QUERY_BUILDER_TEST_ID["QUERY_BUILDER_POST_FILTER_PANEL"] = "query__builder__post__filter-panel";
32
33
  QUERY_BUILDER_TEST_ID["QUERY_BUILDER_POST_FILTER_TREE_NODE_CONTENT"] = "query__builder__post__filter-tree-node__content";
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderTesting.js","sourceRoot":"","sources":["../../src/__lib__/QueryBuilderTesting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,CAAN,IAAY,qBAwBX;AAxBD,WAAY,qBAAqB;IAC/B,qFAA4D,CAAA;IAE5D,yDAAgC,CAAA;IAChC,sEAA6C,CAAA;IAC7C,kEAAyC,CAAA;IACzC,oGAA2E,CAAA;IAC3E,gHAAuF,CAAA;IACvF,mFAA0D,CAAA;IAC1D,eAAe;IACf,qFAA4D,CAAA;IAC5D,mFAA0D,CAAA;IAC1D,8FAAqE,CAAA;IACrE,8GAAqF,CAAA;IACrF,cAAc;IACd,+FAAsE,CAAA;IACtE,wHAA+F,CAAA;IAC/F,gFAAuD,CAAA;IACvD,4EAAmD,CAAA;IACnD,wGAA+E,CAAA;IAC/E,qFAA4D,CAAA;IAC5D,6FAAoE,CAAA;IACpE,+EAAsD,CAAA;IACtD,6EAAoD,CAAA;AACtD,CAAC,EAxBW,qBAAqB,KAArB,qBAAqB,QAwBhC"}
1
+ {"version":3,"file":"QueryBuilderTesting.js","sourceRoot":"","sources":["../../src/__lib__/QueryBuilderTesting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,CAAN,IAAY,qBAyBX;AAzBD,WAAY,qBAAqB;IAC/B,qFAA4D,CAAA;IAE5D,yDAAgC,CAAA;IAChC,sEAA6C,CAAA;IAC7C,kEAAyC,CAAA;IACzC,oGAA2E,CAAA;IAC3E,gHAAuF,CAAA;IACvF,mFAA0D,CAAA;IAC1D,eAAe;IACf,qFAA4D,CAAA;IAC5D,mFAA0D,CAAA;IAC1D,8FAAqE,CAAA;IACrE,8GAAqF,CAAA;IACrF,mIAA0G,CAAA;IAC1G,cAAc;IACd,+FAAsE,CAAA;IACtE,wHAA+F,CAAA;IAC/F,gFAAuD,CAAA;IACvD,4EAAmD,CAAA;IACnD,wGAA+E,CAAA;IAC/E,qFAA4D,CAAA;IAC5D,6FAAoE,CAAA;IACpE,+EAAsD,CAAA;IACtD,6EAAoD,CAAA;AACtD,CAAC,EAzBW,qBAAqB,KAArB,qBAAqB,QAyBhC"}
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderResultPanel.d.ts","sourceRoot":"","sources":["../../src/components/QueryBuilderResultPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA6BH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AA+ExE,eAAO,MAAM,cAAc,QAAS,MAAM,KAAG,MAY5C,CAAC;AAgsBF,eAAO,MAAM,uBAAuB,WAC1B;IAAE,iBAAiB,EAAE,iBAAiB,CAAA;CAAE;;CAsZjD,CAAC"}
1
+ {"version":3,"file":"QueryBuilderResultPanel.d.ts","sourceRoot":"","sources":["../../src/components/QueryBuilderResultPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA6BH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AA4ExE,eAAO,MAAM,cAAc,QAAS,MAAM,KAAG,MAY5C,CAAC;AAsrBF,eAAO,MAAM,uBAAuB,WAC1B;IAAE,iBAAiB,EAAE,iBAAiB,CAAA;CAAE;;CAsZjD,CAAC"}
@@ -18,9 +18,9 @@ import { BlankPanelContent, PanelLoadingIndicator, PlayIcon, DropdownMenu, MenuC
18
18
  import { format as formatSQL } from 'sql-formatter';
19
19
  import { observer } from 'mobx-react-lite';
20
20
  import { flowResult } from 'mobx';
21
- import { InstanceValue, extractExecutionResultValues, TDSExecutionResult, RawExecutionResult, EnumValueInstanceValue, EnumValueExplicitReference, RelationalExecutionActivities, getTDSRowRankByColumnInAsc, } from '@finos/legend-graph';
21
+ import { InstanceValue, extractExecutionResultValues, TDSExecutionResult, RawExecutionResult, EnumValueInstanceValue, EnumValueExplicitReference, RelationalExecutionActivities, } from '@finos/legend-graph';
22
22
  import { ActionAlertActionType, ActionAlertType, DEFAULT_TAB_SIZE, useApplicationStore, } from '@finos/legend-application';
23
- import { assertErrorThrown, guaranteeNonNullable, isBoolean, prettyDuration, filterByType, isValidURL, isString, isNumber, } from '@finos/legend-shared';
23
+ import { assertErrorThrown, guaranteeNonNullable, prettyDuration, filterByType, isValidURL, isString, isNumber, } from '@finos/legend-shared';
24
24
  import { forwardRef, useRef, useState } from 'react';
25
25
  import { QueryBuilderDerivationProjectionColumnState, QueryBuilderProjectionColumnState, } from '../stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.js';
26
26
  import { PostFilterConditionState, QueryBuilderPostFilterTreeConditionNodeData, PostFilterValueSpecConditionValueState, } from '../stores/fetch-structure/tds/post-filter/QueryBuilderPostFilterState.js';
@@ -193,16 +193,29 @@ const QueryBuilderGridResultContextMenu = observer(forwardRef(function QueryBuil
193
193
  });
194
194
  };
195
195
  const handleCopyCellValue = applicationStore.guardUnhandledError(() => applicationStore.clipboardService.copyTextToClipboard(data?.value?.toString() ?? ''));
196
- const findRowFromRowIndex = (rowIndex) => {
196
+ const findSelectedCellRowData = () => {
197
197
  if (!tdsState.queryBuilderState.resultState.executionResult ||
198
198
  !(tdsState.queryBuilderState.resultState.executionResult instanceof
199
199
  TDSExecutionResult)) {
200
- return [''];
200
+ return '';
201
201
  }
202
- return (tdsState.queryBuilderState.resultState.executionResult.result.rows[rowIndex]?.values ?? ['']);
202
+ const rowData = tdsState.queryBuilderState.resultState.rowData.find((rData) => rData.rowNumber ===
203
+ tdsState.queryBuilderState.resultState.selectedCells[0]?.coordinates
204
+ .rowIndex);
205
+ // try to get the entire row value separated by comma
206
+ // rowData is in format of {columnName: value, columnName1: value, ...., rowNumber:value}
207
+ const valueArr = [];
208
+ if (rowData) {
209
+ Object.entries(rowData).forEach((entry) => {
210
+ if (entry[0] !== 'rowNumber') {
211
+ valueArr.push(entry[1]);
212
+ }
213
+ });
214
+ return valueArr.join(',');
215
+ }
216
+ return '';
203
217
  };
204
- const handleCopyRowValue = applicationStore.guardUnhandledError(() => applicationStore.clipboardService.copyTextToClipboard(findRowFromRowIndex(tdsState.queryBuilderState.resultState.selectedCells[0]?.coordinates
205
- .rowIndex ?? 0).toString()));
218
+ const handleCopyRowValue = applicationStore.guardUnhandledError(() => applicationStore.clipboardService.copyTextToClipboard(findSelectedCellRowData()));
206
219
  return (_jsxs(MenuContent, { ref: ref, children: [_jsx(MenuContentItem, { disabled: !projectionColumnState, onClick: () => {
207
220
  filterByOrOutValues(true);
208
221
  }, children: "Filter By" }), _jsx(MenuContentItem, { disabled: !projectionColumnState, onClick: () => {
@@ -224,45 +237,28 @@ const QueryResultCellRenderer = observer((params) => {
224
237
  };
225
238
  const cellValueUrlLink = isString(cellValue) && isValidURL(cellValue) ? cellValue : undefined;
226
239
  const columnName = params.column?.getColId() ?? '';
227
- const findCoordinatesFromResultValue = (colId, rowNumber) => {
228
- const colIndex = tdsExecutionResult.result.columns.findIndex((col) => col === colId);
240
+ const findCoordinatesFromResultValue = (colName, rowNumber) => {
241
+ const colIndex = tdsExecutionResult.result.columns.findIndex((col) => col === colName);
229
242
  return { rowIndex: rowNumber, colIndex: colIndex };
230
243
  };
231
- const currentCellCoordinates = findCoordinatesFromResultValue(columnName, params.rowIndex);
244
+ const currentCellCoordinates = findCoordinatesFromResultValue(columnName, params.data.rowNumber);
232
245
  const cellInFilteredResults = resultState.selectedCells.some((result) => result.coordinates.colIndex === currentCellCoordinates.colIndex &&
233
246
  result.coordinates.rowIndex === currentCellCoordinates.rowIndex);
234
- const findColumnFromCoordinates = (colIndex) => {
247
+ const findColumnNameFromColumnIndex = (colIndex) => {
235
248
  if (!resultState.executionResult ||
236
249
  !(resultState.executionResult instanceof TDSExecutionResult)) {
237
250
  return undefined;
238
251
  }
239
252
  return resultState.executionResult.result.columns[colIndex];
240
253
  };
241
- const findResultValueFromCoordinates = (resultCoordinate) => {
242
- const rowIndex = resultCoordinate[0];
243
- const colIndex = resultCoordinate[1];
244
- if (!resultState.executionResult ||
245
- !(resultState.executionResult instanceof TDSExecutionResult)) {
246
- return undefined;
247
- }
248
- if (params.columnApi.getColumnState()[colIndex]?.sort === 'asc') {
249
- resultState.executionResult.result.rows.sort((a, b) => getTDSRowRankByColumnInAsc(a, b, colIndex));
250
- }
251
- else if (params.columnApi.getColumnState()[colIndex]?.sort === 'desc') {
252
- resultState.executionResult.result.rows.sort((a, b) => getTDSRowRankByColumnInAsc(b, a, colIndex));
253
- }
254
- return resultState.executionResult.result.rows[rowIndex]?.values[colIndex];
255
- };
254
+ const findResultValueFromCoordinates = (rowIndex, colName) => resultState.rowData.find((data) => data.rowNumber === rowIndex)[colName];
256
255
  const isCoordinatesSelected = (resultCoordinate) => resultState.selectedCells.some((cell) => cell.coordinates.rowIndex === resultCoordinate.rowIndex &&
257
256
  cell.coordinates.colIndex === resultCoordinate.colIndex);
258
257
  const mouseDown = (event) => {
259
258
  event.preventDefault();
260
259
  if (event.shiftKey) {
261
- const coordinates = findCoordinatesFromResultValue(columnName, params.rowIndex);
262
- const actualValue = findResultValueFromCoordinates([
263
- coordinates.rowIndex,
264
- coordinates.colIndex,
265
- ]);
260
+ const coordinates = findCoordinatesFromResultValue(columnName, params.data.rowNumber);
261
+ const actualValue = findResultValueFromCoordinates(coordinates.rowIndex, columnName);
266
262
  resultState.addSelectedCell({
267
263
  value: actualValue,
268
264
  columnName: columnName,
@@ -273,11 +269,8 @@ const QueryResultCellRenderer = observer((params) => {
273
269
  if (event.button === 0) {
274
270
  resultState.setIsSelectingCells(true);
275
271
  resultState.setSelectedCells([]);
276
- const coordinates = findCoordinatesFromResultValue(columnName, params.rowIndex);
277
- const actualValue = findResultValueFromCoordinates([
278
- coordinates.rowIndex,
279
- coordinates.colIndex,
280
- ]);
272
+ const coordinates = findCoordinatesFromResultValue(columnName, params.data.rowNumber);
273
+ const actualValue = findResultValueFromCoordinates(coordinates.rowIndex, columnName);
281
274
  resultState.setSelectedCells([
282
275
  {
283
276
  value: actualValue,
@@ -288,13 +281,10 @@ const QueryResultCellRenderer = observer((params) => {
288
281
  resultState.setMouseOverCell(resultState.selectedCells[0] ?? null);
289
282
  }
290
283
  if (event.button === 2) {
291
- const coordinates = findCoordinatesFromResultValue(columnName, params.rowIndex);
284
+ const coordinates = findCoordinatesFromResultValue(columnName, params.data.rowNumber);
292
285
  const isInSelected = isCoordinatesSelected(coordinates);
293
286
  if (!isInSelected) {
294
- const actualValue = findResultValueFromCoordinates([
295
- coordinates.rowIndex,
296
- coordinates.colIndex,
297
- ]);
287
+ const actualValue = findResultValueFromCoordinates(coordinates.rowIndex, columnName);
298
288
  resultState.setSelectedCells([
299
289
  {
300
290
  value: actualValue,
@@ -319,7 +309,7 @@ const QueryResultCellRenderer = observer((params) => {
319
309
  return;
320
310
  }
321
311
  const firstCorner = results.coordinates;
322
- const secondCorner = findCoordinatesFromResultValue(columnName, params.rowIndex);
312
+ const secondCorner = findCoordinatesFromResultValue(columnName, params.data.rowNumber);
323
313
  resultState.setSelectedCells([results]);
324
314
  const minRow = Math.min(firstCorner.rowIndex, secondCorner.rowIndex);
325
315
  const minCol = Math.min(firstCorner.colIndex, secondCorner.colIndex);
@@ -327,10 +317,10 @@ const QueryResultCellRenderer = observer((params) => {
327
317
  const maxCol = Math.max(firstCorner.colIndex, secondCorner.colIndex);
328
318
  for (let x = minRow; x <= maxRow; x++) {
329
319
  for (let y = minCol; y <= maxCol; y++) {
330
- const actualValue = findResultValueFromCoordinates([x, y]);
320
+ const actualValue = findResultValueFromCoordinates(x, findColumnNameFromColumnIndex(y));
331
321
  const valueAndColumnId = {
332
322
  value: actualValue,
333
- columnName: findColumnFromCoordinates(y),
323
+ columnName: findColumnNameFromColumnIndex(y),
334
324
  coordinates: {
335
325
  rowIndex: x,
336
326
  colIndex: y,
@@ -357,19 +347,16 @@ const QueryResultCellRenderer = observer((params) => {
357
347
  const QueryBuilderGridResult = observer((props) => {
358
348
  const { executionResult, queryBuilderState } = props;
359
349
  const resultState = queryBuilderState.resultState;
360
- const rowData = executionResult.result.rows.map((_row, rowIdx) => {
361
- const row = {};
362
- const cols = executionResult.result.columns;
363
- _row.values.forEach((value, colIdx) => {
364
- // `ag-grid` shows `false` value as empty string so we have
365
- // call `.toString()` to avoid this behavior.
366
- // See https://github.com/finos/legend-studio/issues/1008
367
- row[cols[colIdx]] = isBoolean(value) ? String(value) : value;
368
- });
369
- row.rowNumber = rowIdx;
370
- return row;
371
- });
372
- return (_jsx("div", { className: "query-builder__result__values__table", children: _jsx("div", { className: clsx('ag-theme-balham-dark query-builder__result__tds-grid'), children: _jsx(DataGrid, { rowData: rowData, gridOptions: {
350
+ return (_jsx("div", { className: "query-builder__result__values__table", children: _jsx("div", { className: clsx('ag-theme-balham-dark query-builder__result__tds-grid'), children: _jsx(DataGrid, { rowData: queryBuilderState.resultState.getRowData(), onSortChanged: (params) => {
351
+ const sortedData = [];
352
+ params.api.forEachNodeAfterFilterAndSort((node, index) => {
353
+ node.rowIndex = index;
354
+ // rowNumber has to be manually updated after sorting the column
355
+ node.data.rowNumber = index;
356
+ sortedData.push(node.data);
357
+ });
358
+ queryBuilderState.resultState.setRowData(sortedData);
359
+ }, gridOptions: {
373
360
  suppressScrollOnNewData: true,
374
361
  getRowId: (data) => data.data.rowNumber,
375
362
  },
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderResultPanel.js","sourceRoot":"","sources":["../../src/components/QueryBuilderResultPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryBuilderResultPanel.js","sourceRoot":"","sources":["../../src/components/QueryBuilderResultPanel.tsx"],"names":[],"mappings":"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"}
@@ -13,14 +13,15 @@
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, QueryBuilderFilterTreeOperationNodeData, type QueryBuilderFilterState } from '../../stores/filter/QueryBuilderFilterState.js';
16
+ import { type QueryBuilderFilterTreeNodeData, QUERY_BUILDER_FILTER_DND_TYPE, QueryBuilderFilterTreeConditionNodeData, QueryBuilderFilterTreeExistsNodeData, 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
19
  import { AbstractPropertyExpression } from '@finos/legend-graph';
20
20
  /**
21
21
  * This function updates the filter state when we DnD a property that can accept multiple values.
22
22
  */
23
- export declare const buildFilterTreeWithExists: (propertyExpression: AbstractPropertyExpression, filterState: QueryBuilderFilterState, targetDropNode?: QueryBuilderFilterTreeOperationNodeData) => void;
23
+ export declare const buildFilterTreeWithExists: (propertyExpression: AbstractPropertyExpression, filterState: QueryBuilderFilterState, targetDropNode?: QueryBuilderFilterTreeNodeData) => void;
24
+ export declare const buildPropertyExpressionFromExistsNode: (filterState: QueryBuilderFilterState, existsNode: QueryBuilderFilterTreeExistsNodeData, node: QueryBuilderFilterTreeConditionNodeData) => AbstractPropertyExpression;
24
25
  export declare const IS_DRAGGABLE_FILTER_DND_TYPES_FETCH_SUPPORTED: string[];
25
26
  export declare const IS_DRAGGABLE_FILTER_DND_TYPES: (QUERY_BUILDER_EXPLORER_TREE_DND_TYPE | QUERY_BUILDER_FILTER_DND_TYPE)[];
26
27
  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;AAmCH,OAAO,EAIL,6BAA6B,EAM7B,uCAAuC,EACvC,KAAK,uBAAuB,EAC7B,MAAM,gDAAgD,CAAC;AAExD,OAAO,EAIL,oCAAoC,EACrC,MAAM,oDAAoD,CAAC;AAK5D,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,IAoLF,CAAC;AA4DF,eAAO,MAAM,6CAA6C,UAKzD,CAAC;AAEF,eAAO,MAAM,6BAA6B,0EAIzC,CAAC;AA+rBF,eAAO,MAAM,uBAAuB,WAC1B;IAAE,iBAAiB,EAAE,iBAAiB,CAAA;CAAE;;CAsRjD,CAAC"}
1
+ {"version":3,"file":"QueryBuilderFilterPanel.d.ts","sourceRoot":"","sources":["../../../src/components/filter/QueryBuilderFilterPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAmCH,OAAO,EAGL,KAAK,8BAA8B,EACnC,6BAA6B,EAE7B,uCAAuC,EAGvC,oCAAoC,EAEpC,KAAK,uBAAuB,EAC7B,MAAM,gDAAgD,CAAC;AAExD,OAAO,EAIL,oCAAoC,EACrC,MAAM,oDAAoD,CAAC;AAK5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAiB3E,OAAO,EACL,0BAA0B,EAO3B,MAAM,qBAAqB,CAAC;AAkD7B;;GAEG;AACH,eAAO,MAAM,yBAAyB,uBAChB,0BAA0B,eACjC,uBAAuB,mBACnB,8BAA8B,KAC9C,IA0MF,CAAC;AAEF,eAAO,MAAM,qCAAqC,gBACnC,uBAAuB,cACxB,oCAAoC,QAC1C,uCAAuC,KAC5C,0BAgHF,CAAC;AAwIF,eAAO,MAAM,6CAA6C,UAKzD,CAAC;AAEF,eAAO,MAAM,6BAA6B,0EAIzC,CAAC;AAgsBF,eAAO,MAAM,uBAAuB,WAC1B;IAAE,iBAAiB,EAAE,iBAAiB,CAAA;CAAE;;CAsRjD,CAAC"}
@@ -32,6 +32,7 @@ import { BasicValueSpecificationEditor, QUERY_BUILDER_VARIABLE_DND_TYPE, } from
32
32
  import { QueryBuilderTelemetryHelper } from '../../__lib__/QueryBuilderTelemetryHelper.js';
33
33
  import { getPropertyChainName } from '../../stores/QueryBuilderPropertyEditorState.js';
34
34
  import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../graph/QueryBuilderMetaModelConst.js';
35
+ import { buildPropertyExpressionChain } from '../../stores/QueryBuilderValueSpecificationBuilderHelper.js';
35
36
  const isCollectionProperty = (propertyExpression) => {
36
37
  let currentExpression = propertyExpression;
37
38
  while (currentExpression instanceof AbstractPropertyExpression) {
@@ -150,13 +151,32 @@ export const buildFilterTreeWithExists = (propertyExpression, filterState, targe
150
151
  cn.propertyExpressionState.propertyExpression.func.ownerReference
151
152
  .value.path);
152
153
  if (parentPropertyChainIndex >= 0) {
153
- parentNode = targetDropNode;
154
+ // Here we choose parentNode based on what the type of targetDropNode
155
+ // 1. QueryBuilderFilterTreeConditionNodeData: In this case we would want to
156
+ // add a new group condition from the targetDropNode and add new exists node
157
+ // getting created as it's child so the parent would be the new group node
158
+ // 2. QueryBuilderFilterTreeGroupNodeData: Parent node would be same as
159
+ // targetDropNode
160
+ // 3. QueryBuilderFilterTreeBlankConditionNodeData: parentNode would be the
161
+ // parent of the targetDropNode. At the end we would deelete this blank node
162
+ // that got created.
163
+ parentNode =
164
+ targetDropNode instanceof QueryBuilderFilterTreeConditionNodeData
165
+ ? filterState.newGroupConditionFromNode(targetDropNode)
166
+ : targetDropNode instanceof QueryBuilderFilterTreeGroupNodeData
167
+ ? targetDropNode
168
+ : filterState.getParentNode(targetDropNode);
154
169
  existsLambdaPropertyChains = existsLambdaPropertyChains.slice(parentPropertyChainIndex + 1);
155
170
  existsLambdaParamNames = existsLambdaParamNames.slice(parentPropertyChainIndex + 1);
156
171
  }
157
172
  }
158
173
  else if (!parentId) {
159
- parentNode = targetDropNode;
174
+ parentNode =
175
+ targetDropNode instanceof QueryBuilderFilterTreeConditionNodeData
176
+ ? filterState.newGroupConditionFromNode(targetDropNode)
177
+ : targetDropNode instanceof QueryBuilderFilterTreeGroupNodeData
178
+ ? targetDropNode
179
+ : filterState.getParentNode(targetDropNode);
160
180
  }
161
181
  }
162
182
  }
@@ -173,6 +193,69 @@ export const buildFilterTreeWithExists = (propertyExpression, filterState, targe
173
193
  const filterConditionState = new FilterConditionState(filterState, existsLambdaPropertyChains[existsLambdaPropertyChains.length - 1]);
174
194
  const treeNode = new QueryBuilderFilterTreeConditionNodeData(undefined, filterConditionState);
175
195
  filterState.addNodeFromNode(treeNode, parentNode);
196
+ if (targetDropNode instanceof QueryBuilderFilterTreeBlankConditionNodeData) {
197
+ filterState.removeNodeAndPruneBranch(targetDropNode);
198
+ }
199
+ };
200
+ export const buildPropertyExpressionFromExistsNode = (filterState, existsNode, node) => {
201
+ let nodeParent = filterState.getParentNode(node);
202
+ let existsLambdaParameterNames = [];
203
+ let existsLambdaExpressions = [];
204
+ existsLambdaExpressions.push(node.condition.propertyExpressionState.propertyExpression);
205
+ existsLambdaParameterNames.push(nodeParent?.lambdaParameterName ?? filterState.lambdaParameterName);
206
+ while (nodeParent && nodeParent.id !== existsNode.id) {
207
+ if (nodeParent instanceof QueryBuilderFilterTreeExistsNodeData) {
208
+ existsLambdaExpressions.push(nodeParent.propertyExpressionState.propertyExpression);
209
+ existsLambdaParameterNames.push(nodeParent.lambdaParameterName ?? filterState.lambdaParameterName);
210
+ }
211
+ nodeParent = filterState.getParentNode(nodeParent);
212
+ }
213
+ if (nodeParent?.id === existsNode.id) {
214
+ existsLambdaExpressions.push(existsNode.propertyExpressionState.propertyExpression);
215
+ existsLambdaParameterNames.push(existsNode.lambdaParameterName ?? filterState.lambdaParameterName);
216
+ }
217
+ existsLambdaParameterNames = existsLambdaParameterNames.reverse();
218
+ existsLambdaExpressions = existsLambdaExpressions.reverse();
219
+ const initialPropertyExpression = guaranteeNonNullable(existsLambdaExpressions[0]);
220
+ existsLambdaParameterNames = existsLambdaParameterNames.slice(1);
221
+ existsLambdaExpressions = existsLambdaExpressions.slice(1);
222
+ let flattenedPropertyExpressionChain = new AbstractPropertyExpression('');
223
+ flattenedPropertyExpressionChain.func = initialPropertyExpression.func;
224
+ flattenedPropertyExpressionChain.parametersValues = [
225
+ ...initialPropertyExpression.parametersValues,
226
+ ];
227
+ for (const exp of existsLambdaExpressions) {
228
+ // when rebuilding the property expression chain, disregard the initial variable that starts the chain
229
+ const expressions = [];
230
+ let currentExpression = exp;
231
+ while (currentExpression instanceof AbstractPropertyExpression ||
232
+ (currentExpression instanceof SimpleFunctionExpression &&
233
+ matchFunctionName(currentExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE))) {
234
+ if (currentExpression instanceof SimpleFunctionExpression) {
235
+ const functionExpression = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE));
236
+ functionExpression.parametersValues.unshift(guaranteeNonNullable(currentExpression.parametersValues[1]));
237
+ expressions.push(functionExpression);
238
+ }
239
+ else if (currentExpression instanceof AbstractPropertyExpression) {
240
+ const propertyExp = new AbstractPropertyExpression('');
241
+ propertyExp.func = currentExpression.func;
242
+ // NOTE: we must retain the rest of the parameters as those are derived property parameters
243
+ propertyExp.parametersValues =
244
+ currentExpression.parametersValues.length > 1
245
+ ? currentExpression.parametersValues.slice(1)
246
+ : [];
247
+ expressions.push(propertyExp);
248
+ }
249
+ currentExpression = guaranteeNonNullable(currentExpression.parametersValues[0]);
250
+ }
251
+ assertTrue(expressions.length > 0, `Can't process exists() expression: exists() usage with non-chain property expression is not supported`);
252
+ for (let i = 0; i < expressions.length - 1; ++i) {
253
+ expressions[i].parametersValues.unshift(expressions[i + 1]);
254
+ }
255
+ expressions[expressions.length - 1].parametersValues.unshift(flattenedPropertyExpressionChain);
256
+ flattenedPropertyExpressionChain = guaranteeType(expressions[0], AbstractPropertyExpression, `Can't process exists() expression: can't flatten to a property expression`);
257
+ }
258
+ return guaranteeType(buildPropertyExpressionChain(flattenedPropertyExpressionChain, filterState.queryBuilderState, existsNode.lambdaParameterName ?? filterState.lambdaParameterName), AbstractPropertyExpression);
176
259
  };
177
260
  /**
178
261
  * This function builds the filter tree when we DnD a node to the filter panel.
@@ -201,9 +284,63 @@ const buildFilterTree = (propertyExpression, filterState, targetDropNode) => {
201
284
  else {
202
285
  const filterConditionState = new FilterConditionState(filterState, propertyExpression);
203
286
  const treeNode = new QueryBuilderFilterTreeConditionNodeData(undefined, filterConditionState);
204
- filterState.addNodeFromNode(treeNode, targetDropNode instanceof QueryBuilderFilterTreeGroupNodeData
205
- ? targetDropNode
206
- : undefined);
287
+ // Check if there are any exists node present in the parent nodes of the target.
288
+ // This would change the way we build the filter tree
289
+ let cn = targetDropNode;
290
+ let existsNode = undefined;
291
+ let parentId = targetDropNode?.parentId;
292
+ while (parentId) {
293
+ cn = filterState.nodes.get(parentId);
294
+ parentId = cn?.parentId;
295
+ if (cn instanceof QueryBuilderFilterTreeExistsNodeData) {
296
+ existsNode = cn;
297
+ }
298
+ }
299
+ if (cn instanceof QueryBuilderFilterTreeExistsNodeData) {
300
+ existsNode = cn;
301
+ }
302
+ if (targetDropNode instanceof QueryBuilderFilterTreeGroupNodeData) {
303
+ if (existsNode) {
304
+ filterState.newGroupConditionFromNode(existsNode, treeNode, targetDropNode.groupOperation);
305
+ }
306
+ else {
307
+ filterState.addNodeFromNode(treeNode, targetDropNode);
308
+ }
309
+ }
310
+ else if (targetDropNode instanceof QueryBuilderFilterTreeBlankConditionNodeData) {
311
+ if (existsNode) {
312
+ filterState.queryBuilderState.applicationStore.notificationService.notifyError(`Can't drag and drop here: property expression of target and source doesn't match`);
313
+ }
314
+ else {
315
+ filterState.replaceBlankNodeWithNode(treeNode, targetDropNode);
316
+ }
317
+ }
318
+ else if (existsNode &&
319
+ targetDropNode instanceof QueryBuilderFilterTreeExistsNodeData) {
320
+ filterState.newGroupConditionFromNode(existsNode, treeNode);
321
+ }
322
+ else if (targetDropNode instanceof QueryBuilderFilterTreeConditionNodeData) {
323
+ const parentNode = filterState.getParentNode(targetDropNode);
324
+ if (existsNode &&
325
+ parentNode instanceof QueryBuilderFilterTreeExistsNodeData &&
326
+ parentNode.childrenIds.length === 1) {
327
+ filterState.newGroupConditionFromNode(existsNode, treeNode, QUERY_BUILDER_GROUP_OPERATION.AND);
328
+ }
329
+ else if (existsNode &&
330
+ parentNode instanceof QueryBuilderFilterTreeGroupNodeData) {
331
+ const propertyExpression1 = buildPropertyExpressionFromExistsNode(filterState, existsNode, targetDropNode);
332
+ filterState.removeNodeAndPruneBranch(targetDropNode);
333
+ filterState.newGroupConditionFromNode(existsNode, treeNode, parentNode.groupOperation);
334
+ const newParentNode = filterState.getParentNode(treeNode);
335
+ buildFilterTreeWithExists(propertyExpression1, filterState, newParentNode);
336
+ }
337
+ else {
338
+ filterState.newGroupWithConditionFromNode(treeNode, targetDropNode);
339
+ }
340
+ }
341
+ else {
342
+ filterState.addNodeFromNode(treeNode, undefined);
343
+ }
207
344
  }
208
345
  };
209
346
  export const IS_DRAGGABLE_FILTER_DND_TYPES_FETCH_SUPPORTED = [
@@ -290,7 +427,7 @@ const QueryBuilderFilterConditionEditor = observer((props) => {
290
427
  reloadValues: debouncedTypeaheadSearch,
291
428
  cleanUpReloadValues,
292
429
  };
293
- return (_jsx("div", { className: "query-builder-filter-tree__node__label__content dnd__entry__container", children: _jsx(PanelEntryDropZonePlaceholder, { isDragOver: isDragOver, label: "Add New Logical Group", children: _jsxs("div", { className: "query-builder-filter-tree__condition-node", children: [_jsx("div", { className: "query-builder-filter-tree__condition-node__property", children: _jsx(QueryBuilderPropertyExpressionBadge, { propertyExpressionState: node.condition.propertyExpressionState, onPropertyExpressionChange: changeProperty }) }), _jsxs(DropdownMenu, { className: "query-builder-filter-tree__condition-node__operator", title: "Choose Operator...", content: _jsx(MenuContent, { children: node.condition.operators.map((op) => (_jsx(MenuContentItem, { className: "query-builder-filter-tree__condition-node__operator__dropdown__option", onClick: changeOperator(op), children: op.getLabel(node.condition) }, op.uuid))) }), menuProps: {
430
+ return (_jsx("div", { className: "query-builder-filter-tree__node__label__content dnd__entry__container", "data-testid": QUERY_BUILDER_TEST_ID.QUERY_BUILDER_FILTER_TREE_CONDITION_NODE_CONTENT, children: _jsx(PanelEntryDropZonePlaceholder, { isDragOver: isDragOver, label: "Add New Logical Group", children: _jsxs("div", { className: "query-builder-filter-tree__condition-node", children: [_jsx("div", { className: "query-builder-filter-tree__condition-node__property", children: _jsx(QueryBuilderPropertyExpressionBadge, { propertyExpressionState: node.condition.propertyExpressionState, onPropertyExpressionChange: changeProperty }) }), _jsxs(DropdownMenu, { className: "query-builder-filter-tree__condition-node__operator", title: "Choose Operator...", content: _jsx(MenuContent, { children: node.condition.operators.map((op) => (_jsx(MenuContentItem, { className: "query-builder-filter-tree__condition-node__operator__dropdown__option", onClick: changeOperator(op), children: op.getLabel(node.condition) }, op.uuid))) }), menuProps: {
294
431
  anchorOrigin: { vertical: 'bottom', horizontal: 'left' },
295
432
  transformOrigin: { vertical: 'top', horizontal: 'left' },
296
433
  elevation: 7,
@@ -379,10 +516,10 @@ const QueryBuilderFilterTreeNodeContainer = observer((props) => {
379
516
  buildFilterTree(filterConditionState.propertyExpressionState.propertyExpression, filterState, node);
380
517
  }
381
518
  else if (node instanceof QueryBuilderFilterTreeConditionNodeData) {
382
- filterState.newGroupWithConditionFromNode(new QueryBuilderFilterTreeConditionNodeData(undefined, filterConditionState), node);
519
+ buildFilterTree(filterConditionState.propertyExpressionState.propertyExpression, filterState, node);
383
520
  }
384
521
  else if (node instanceof QueryBuilderFilterTreeBlankConditionNodeData) {
385
- filterState.replaceBlankNodeWithNode(new QueryBuilderFilterTreeConditionNodeData(undefined, filterConditionState), node);
522
+ buildFilterTree(filterConditionState.propertyExpressionState.propertyExpression, filterState, node);
386
523
  }
387
524
  }
388
525
  }, [applicationStore, filterState, node]);