@finos/legend-query-builder 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/QueryBuilder.js +1 -1
- package/lib/components/QueryBuilder.js.map +1 -1
- package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -1
- package/lib/components/QueryBuilderResultPanel.js +15 -5
- package/lib/components/QueryBuilderResultPanel.js.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderTDSPanel.d.ts.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderTDSPanel.js +19 -17
- package/lib/components/fetch-structure/QueryBuilderTDSPanel.js.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderTDSWindowPanel.d.ts.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderTDSWindowPanel.js +34 -31
- package/lib/components/fetch-structure/QueryBuilderTDSWindowPanel.js.map +1 -1
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/package.json +3 -3
- package/lib/stores/QueryBuilderResultState.d.ts +7 -3
- package/lib/stores/QueryBuilderResultState.d.ts.map +1 -1
- package/lib/stores/QueryBuilderResultState.js +14 -20
- package/lib/stores/QueryBuilderResultState.js.map +1 -1
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts +3 -0
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js.map +1 -1
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts +10 -1
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js +36 -1
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js.map +1 -1
- package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.d.ts +6 -0
- package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.js +21 -2
- package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.js.map +1 -1
- package/lib/stores/fetch-structure/tds/window/QueryBuilderWindowState.d.ts +1 -0
- package/lib/stores/fetch-structure/tds/window/QueryBuilderWindowState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/tds/window/QueryBuilderWindowState.js +10 -1
- package/lib/stores/fetch-structure/tds/window/QueryBuilderWindowState.js.map +1 -1
- package/package.json +10 -10
- package/src/components/QueryBuilder.tsx +1 -1
- package/src/components/QueryBuilderResultPanel.tsx +30 -17
- package/src/components/fetch-structure/QueryBuilderTDSPanel.tsx +128 -126
- package/src/components/fetch-structure/QueryBuilderTDSWindowPanel.tsx +262 -256
- package/src/stores/QueryBuilderResultState.ts +28 -33
- package/src/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.ts +5 -0
- package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.ts +44 -0
- package/src/stores/fetch-structure/tds/QueryBuilderTDSState.ts +28 -0
- package/src/stores/fetch-structure/tds/window/QueryBuilderWindowState.ts +14 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilderWindowState.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/window/QueryBuilderWindowState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,iBAAiB,EAAa,MAAM,qBAAqB,CAAC;AACnE,OAAO,EACL,cAAc,EACd,WAAW,EACX,oBAAoB,EACpB,SAAS,EACT,IAAI,GAEL,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;
|
1
|
+
{"version":3,"file":"QueryBuilderWindowState.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/tds/window/QueryBuilderWindowState.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@finos/legend-query-builder",
|
3
|
-
"version": "2.
|
3
|
+
"version": "2.1.0",
|
4
4
|
"description": "Legend query builder core",
|
5
5
|
"keywords": [
|
6
6
|
"legend",
|
@@ -45,20 +45,20 @@
|
|
45
45
|
"@ag-grid-community/core": "29.2.0",
|
46
46
|
"@ag-grid-community/react": "29.2.0",
|
47
47
|
"@ag-grid-community/styles": "29.2.0",
|
48
|
-
"@finos/legend-application": "13.0.
|
49
|
-
"@finos/legend-art": "5.0.
|
50
|
-
"@finos/legend-graph": "26.0.
|
51
|
-
"@finos/legend-server-depot": "4.4.
|
52
|
-
"@finos/legend-shared": "8.0.
|
53
|
-
"@finos/legend-storage": "3.0.
|
48
|
+
"@finos/legend-application": "13.0.9",
|
49
|
+
"@finos/legend-art": "5.0.42",
|
50
|
+
"@finos/legend-graph": "26.0.2",
|
51
|
+
"@finos/legend-server-depot": "4.4.12",
|
52
|
+
"@finos/legend-shared": "8.0.5",
|
53
|
+
"@finos/legend-storage": "3.0.46",
|
54
54
|
"@testing-library/react": "14.0.0",
|
55
55
|
"@types/papaparse": "5.3.7",
|
56
|
-
"@types/react": "18.0.
|
56
|
+
"@types/react": "18.0.33",
|
57
57
|
"@types/react-dom": "18.0.11",
|
58
58
|
"mathjs": "11.8.0",
|
59
59
|
"mobx": "6.9.0",
|
60
60
|
"mobx-react-lite": "3.4.3",
|
61
|
-
"monaco-editor": "0.
|
61
|
+
"monaco-editor": "0.37.1",
|
62
62
|
"papaparse": "5.4.1",
|
63
63
|
"react": "18.2.0",
|
64
64
|
"react-dnd": "16.0.1",
|
@@ -66,7 +66,7 @@
|
|
66
66
|
"serializr": "3.0.2"
|
67
67
|
},
|
68
68
|
"devDependencies": {
|
69
|
-
"@finos/legend-dev-utils": "2.0.
|
69
|
+
"@finos/legend-dev-utils": "2.0.51",
|
70
70
|
"@jest/globals": "29.5.0",
|
71
71
|
"cross-env": "7.0.3",
|
72
72
|
"eslint": "8.37.0",
|
@@ -478,7 +478,7 @@ export const QueryBuilder = observer(
|
|
478
478
|
) : null}
|
479
479
|
</MenuContentItemIcon>
|
480
480
|
<MenuContentItemLabel className="query-builder__sub-header__menu-content">
|
481
|
-
Show Window
|
481
|
+
Show Window Func(s)
|
482
482
|
</MenuContentItemLabel>
|
483
483
|
</MenuContentItem>
|
484
484
|
<MenuContentItem
|
@@ -41,7 +41,6 @@ import {
|
|
41
41
|
extractExecutionResultValues,
|
42
42
|
TDSExecutionResult,
|
43
43
|
RawExecutionResult,
|
44
|
-
EXECUTION_SERIALIZATION_FORMAT,
|
45
44
|
EnumValueInstanceValue,
|
46
45
|
EnumValueExplicitReference,
|
47
46
|
} from '@finos/legend-graph';
|
@@ -60,6 +59,7 @@ import {
|
|
60
59
|
isBoolean,
|
61
60
|
type PlainObject,
|
62
61
|
prettyDuration,
|
62
|
+
prettyCONSTName,
|
63
63
|
} from '@finos/legend-shared';
|
64
64
|
import { forwardRef, useState } from 'react';
|
65
65
|
import type { CellMouseOverEvent } from '@ag-grid-community/core';
|
@@ -440,11 +440,11 @@ export const QueryBuilderResultPanel = observer(
|
|
440
440
|
const resultState = queryBuilderState.resultState;
|
441
441
|
const queryParametersState = queryBuilderState.parametersState;
|
442
442
|
const executionResult = resultState.executionResult;
|
443
|
+
const fetchStructureImplementation =
|
444
|
+
queryBuilderState.fetchStructureState.implementation;
|
443
445
|
const USER_ATTESTATION_MESSAGE =
|
444
446
|
'I attest that I am aware of the sensitive data leakage risk when exporting queried data. The data I export will only be used by me.';
|
445
|
-
const exportQueryResults = async (
|
446
|
-
format: EXECUTION_SERIALIZATION_FORMAT,
|
447
|
-
): Promise<void> => {
|
447
|
+
const exportQueryResults = async (format: string): Promise<void> => {
|
448
448
|
if (queryBuilderState.parametersState.parameterStates.length) {
|
449
449
|
queryParametersState.parameterValuesEditorState.open(
|
450
450
|
(): Promise<void> =>
|
@@ -460,7 +460,7 @@ export const QueryBuilderResultPanel = observer(
|
|
460
460
|
}
|
461
461
|
};
|
462
462
|
|
463
|
-
const confirmExport = (format:
|
463
|
+
const confirmExport = (format: string): void => {
|
464
464
|
applicationStore.alertService.setActionAlertInfo({
|
465
465
|
message: USER_ATTESTATION_MESSAGE,
|
466
466
|
type: ActionAlertType.CAUTION,
|
@@ -481,8 +481,17 @@ export const QueryBuilderResultPanel = observer(
|
|
481
481
|
});
|
482
482
|
};
|
483
483
|
const queryValidationIssues = queryBuilderState.validationIssues;
|
484
|
+
const queryWindowValidationIssues =
|
485
|
+
fetchStructureImplementation instanceof QueryBuilderTDSState
|
486
|
+
? fetchStructureImplementation.windowState.validationIssues
|
487
|
+
: undefined;
|
488
|
+
const queryWindowStateIsValid = !queryWindowValidationIssues;
|
489
|
+
|
490
|
+
const isSupportedQueryValid =
|
491
|
+
queryBuilderState.validationIssues && queryWindowStateIsValid;
|
484
492
|
const isQueryValid =
|
485
|
-
!queryBuilderState.isQuerySupported || !
|
493
|
+
!queryBuilderState.isQuerySupported || !isSupportedQueryValid;
|
494
|
+
|
486
495
|
const runQuery = (): void => {
|
487
496
|
resultState.pressedRunQuery.inProgress();
|
488
497
|
if (queryParametersState.parameterStates.length) {
|
@@ -614,6 +623,10 @@ export const QueryBuilderResultPanel = observer(
|
|
614
623
|
? `Query is not valid:\n${queryValidationIssues
|
615
624
|
.map((issue) => `\u2022 ${issue}`)
|
616
625
|
.join('\n')}`
|
626
|
+
: queryWindowValidationIssues
|
627
|
+
? `Query is not valid:\n${queryWindowValidationIssues
|
628
|
+
.map((issue) => `\u2022 ${issue}`)
|
629
|
+
.join('\n')}`
|
617
630
|
: undefined
|
618
631
|
}
|
619
632
|
disabled={isRunQueryDisabled}
|
@@ -659,17 +672,17 @@ export const QueryBuilderResultPanel = observer(
|
|
659
672
|
disabled={!isQueryValid}
|
660
673
|
content={
|
661
674
|
<MenuContent>
|
662
|
-
{Object.values(
|
663
|
-
|
664
|
-
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
|
669
|
-
|
670
|
-
|
671
|
-
|
672
|
-
)}
|
675
|
+
{Object.values(
|
676
|
+
fetchStructureImplementation.exportDataFormatOptions,
|
677
|
+
).map((format) => (
|
678
|
+
<MenuContentItem
|
679
|
+
key={format}
|
680
|
+
className="query-builder__result__export__dropdown__menu__item"
|
681
|
+
onClick={(): void => confirmExport(format)}
|
682
|
+
>
|
683
|
+
{prettyCONSTName(format)}
|
684
|
+
</MenuContentItem>
|
685
|
+
))}
|
673
686
|
</MenuContent>
|
674
687
|
}
|
675
688
|
menuProps={{
|
@@ -24,18 +24,18 @@ import {
|
|
24
24
|
MenuContent,
|
25
25
|
MenuContentItem,
|
26
26
|
CaretDownIcon,
|
27
|
-
VerticalDragHandleIcon,
|
28
27
|
ContextMenu,
|
29
28
|
InputWithInlineValidation,
|
30
29
|
SigmaIcon,
|
31
30
|
PanelDropZone,
|
32
31
|
DragPreviewLayer,
|
33
|
-
PanelEntryDropZonePlaceholder,
|
34
32
|
useDragPreviewLayer,
|
35
33
|
OptionsIcon,
|
36
34
|
PlusIcon,
|
37
35
|
PanelContent,
|
38
36
|
TrashIcon,
|
37
|
+
PanelDnDEntry,
|
38
|
+
PanelDnDEntryDragHandle,
|
39
39
|
} from '@finos/legend-art';
|
40
40
|
import {
|
41
41
|
type QueryBuilderExplorerTreeDragSource,
|
@@ -223,8 +223,8 @@ const QueryBuilderDerivationProjectionColumnEditor = observer(
|
|
223
223
|
|
224
224
|
const QueryBuilderProjectionColumnEditor = observer(
|
225
225
|
(props: { projectionColumnState: QueryBuilderProjectionColumnState }) => {
|
226
|
+
const handleRef = useRef<HTMLDivElement>(null);
|
226
227
|
const ref = useRef<HTMLDivElement>(null);
|
227
|
-
|
228
228
|
const [isSelectedFromContextMenu, setIsSelectedFromContextMenu] =
|
229
229
|
useState(false);
|
230
230
|
const onContextMenuOpen = (): void => setIsSelectedFromContextMenu(true);
|
@@ -275,6 +275,7 @@ const QueryBuilderProjectionColumnEditor = observer(
|
|
275
275
|
}
|
276
276
|
// move the item being hovered on when the dragged item position is beyond the its middle point
|
277
277
|
const hoverBoundingReact = ref.current?.getBoundingClientRect();
|
278
|
+
|
278
279
|
const distanceThreshold =
|
279
280
|
((hoverBoundingReact?.bottom ?? 0) - (hoverBoundingReact?.top ?? 0)) /
|
280
281
|
2;
|
@@ -329,141 +330,142 @@ const QueryBuilderProjectionColumnEditor = observer(
|
|
329
330
|
);
|
330
331
|
const isBeingDragged =
|
331
332
|
projectionColumnState === projectionColumnBeingDragged;
|
332
|
-
dragConnector(
|
333
|
+
dragConnector(handleRef);
|
334
|
+
dropConnector(ref);
|
335
|
+
|
333
336
|
useDragPreviewLayer(dragPreviewConnector);
|
334
337
|
|
335
338
|
return (
|
336
|
-
<
|
337
|
-
|
338
|
-
|
339
|
-
|
339
|
+
<PanelDnDEntry
|
340
|
+
ref={ref}
|
341
|
+
showPlaceholder={isBeingDragged}
|
342
|
+
className="query-builder__projection__column"
|
343
|
+
>
|
344
|
+
<ContextMenu
|
345
|
+
content={
|
346
|
+
<QueryBuilderProjectionColumnContextMenu
|
347
|
+
projectionColumnState={projectionColumnState}
|
348
|
+
/>
|
349
|
+
}
|
350
|
+
disabled={
|
351
|
+
!(
|
352
|
+
projectionColumnState instanceof
|
353
|
+
QueryBuilderSimpleProjectionColumnState
|
354
|
+
)
|
355
|
+
}
|
356
|
+
className={clsx('query-builder__projection__column__context-menu', {
|
357
|
+
'query-builder__projection__column--selected-from-context-menu':
|
358
|
+
isSelectedFromContextMenu,
|
359
|
+
})}
|
360
|
+
menuProps={{ elevation: 7 }}
|
361
|
+
onOpen={onContextMenuOpen}
|
362
|
+
onClose={onContextMenuClose}
|
340
363
|
>
|
341
|
-
<
|
342
|
-
|
343
|
-
|
364
|
+
<PanelDnDEntryDragHandle
|
365
|
+
isBeingDragged={isBeingDragged}
|
366
|
+
dropTargetConnector={handleRef}
|
367
|
+
className="query-builder__projection__column__drag-handle__container"
|
368
|
+
/>
|
369
|
+
<div className="query-builder__projection__column__name">
|
370
|
+
<InputWithInlineValidation
|
371
|
+
className="query-builder__projection__column__name__input input-group__input"
|
372
|
+
spellCheck={false}
|
373
|
+
value={projectionColumnState.columnName}
|
374
|
+
onChange={changeColumnName}
|
375
|
+
validationErrorMessage={
|
376
|
+
isDuplicatedColumnName ? 'Duplicated column' : undefined
|
377
|
+
}
|
378
|
+
/>
|
379
|
+
</div>
|
380
|
+
<div className="query-builder__projection__column__value">
|
381
|
+
{projectionColumnState instanceof
|
382
|
+
QueryBuilderSimpleProjectionColumnState && (
|
383
|
+
<QueryBuilderSimpleProjectionColumnEditor
|
344
384
|
projectionColumnState={projectionColumnState}
|
345
385
|
/>
|
346
|
-
}
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
)
|
352
|
-
}
|
353
|
-
className={clsx('query-builder__projection__column__context-menu', {
|
354
|
-
'query-builder__projection__column--selected-from-context-menu':
|
355
|
-
isSelectedFromContextMenu,
|
356
|
-
})}
|
357
|
-
menuProps={{ elevation: 7 }}
|
358
|
-
onOpen={onContextMenuOpen}
|
359
|
-
onClose={onContextMenuClose}
|
360
|
-
>
|
361
|
-
<div className="query-builder__projection__column__drag-handle__container">
|
362
|
-
<div className="query-builder__projection__column__drag-handle">
|
363
|
-
<VerticalDragHandleIcon />
|
364
|
-
</div>
|
365
|
-
</div>
|
366
|
-
<div className="query-builder__projection__column__name">
|
367
|
-
<InputWithInlineValidation
|
368
|
-
className="query-builder__projection__column__name__input input-group__input"
|
369
|
-
spellCheck={false}
|
370
|
-
value={projectionColumnState.columnName}
|
371
|
-
onChange={changeColumnName}
|
372
|
-
validationErrorMessage={
|
373
|
-
isDuplicatedColumnName ? 'Duplicated column' : undefined
|
374
|
-
}
|
386
|
+
)}
|
387
|
+
{projectionColumnState instanceof
|
388
|
+
QueryBuilderDerivationProjectionColumnState && (
|
389
|
+
<QueryBuilderDerivationProjectionColumnEditor
|
390
|
+
projectionColumnState={projectionColumnState}
|
375
391
|
/>
|
376
|
-
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
|
381
|
-
|
382
|
-
|
383
|
-
|
384
|
-
|
385
|
-
|
386
|
-
<QueryBuilderDerivationProjectionColumnEditor
|
387
|
-
projectionColumnState={projectionColumnState}
|
388
|
-
/>
|
392
|
+
)}
|
393
|
+
</div>
|
394
|
+
<div className="query-builder__projection__column__aggregate">
|
395
|
+
<div className="query-builder__projection__column__aggregate__operator">
|
396
|
+
{aggregateColumnState && (
|
397
|
+
<div className="query-builder__projection__column__aggregate__operator__label">
|
398
|
+
{aggregateColumnState.operator.getLabel(
|
399
|
+
projectionColumnState,
|
400
|
+
)}
|
401
|
+
</div>
|
389
402
|
)}
|
390
|
-
|
391
|
-
|
392
|
-
|
393
|
-
{
|
394
|
-
|
395
|
-
|
396
|
-
|
403
|
+
<DropdownMenu
|
404
|
+
className="query-builder__projection__column__aggregate__operator__dropdown"
|
405
|
+
title="Choose Aggregate Operator..."
|
406
|
+
disabled={!aggreateOperators.length}
|
407
|
+
content={
|
408
|
+
<MenuContent>
|
409
|
+
{aggregateColumnState && (
|
410
|
+
<MenuContentItem
|
411
|
+
className="query-builder__projection__column__aggregate__operator__dropdown__option"
|
412
|
+
onClick={changeOperator(undefined)}
|
413
|
+
>
|
414
|
+
(none)
|
415
|
+
</MenuContentItem>
|
397
416
|
)}
|
398
|
-
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
className="query-builder__projection__column__aggregate__operator__dropdown__option"
|
409
|
-
onClick={changeOperator(undefined)}
|
410
|
-
>
|
411
|
-
(none)
|
412
|
-
</MenuContentItem>
|
413
|
-
)}
|
414
|
-
{aggreateOperators.map((op) => (
|
415
|
-
<MenuContentItem
|
416
|
-
key={op.uuid}
|
417
|
-
className="query-builder__projection__column__aggregate__operator__dropdown__option"
|
418
|
-
onClick={changeOperator(op)}
|
419
|
-
>
|
420
|
-
{op.getLabel(projectionColumnState)}
|
421
|
-
</MenuContentItem>
|
422
|
-
))}
|
423
|
-
</MenuContent>
|
424
|
-
}
|
425
|
-
menuProps={{
|
426
|
-
anchorOrigin: { vertical: 'bottom', horizontal: 'left' },
|
427
|
-
transformOrigin: { vertical: 'top', horizontal: 'left' },
|
428
|
-
elevation: 7,
|
429
|
-
}}
|
430
|
-
>
|
431
|
-
<div
|
432
|
-
className={clsx(
|
433
|
-
'query-builder__projection__column__aggregate__operator__badge',
|
434
|
-
{
|
435
|
-
'query-builder__projection__column__aggregate__operator__badge--activated':
|
436
|
-
Boolean(aggregateColumnState),
|
437
|
-
},
|
438
|
-
)}
|
439
|
-
>
|
440
|
-
<SigmaIcon />
|
441
|
-
</div>
|
442
|
-
<div className="query-builder__projection__column__aggregate__operator__dropdown__trigger">
|
443
|
-
<CaretDownIcon />
|
444
|
-
</div>
|
445
|
-
</DropdownMenu>
|
446
|
-
</div>
|
447
|
-
</div>
|
448
|
-
<div className="query-builder__projection__column__actions">
|
449
|
-
<button
|
450
|
-
className="query-builder__projection__column__action"
|
451
|
-
tabIndex={-1}
|
452
|
-
onClick={removeColumn}
|
453
|
-
disabled={isRemovalDisabled}
|
454
|
-
title={
|
455
|
-
isRemovalDisabled
|
456
|
-
? // TODO: We may want to provide a list of all places where column is in use
|
457
|
-
"This column is used and can't be removed"
|
458
|
-
: 'Remove'
|
417
|
+
{aggreateOperators.map((op) => (
|
418
|
+
<MenuContentItem
|
419
|
+
key={op.uuid}
|
420
|
+
className="query-builder__projection__column__aggregate__operator__dropdown__option"
|
421
|
+
onClick={changeOperator(op)}
|
422
|
+
>
|
423
|
+
{op.getLabel(projectionColumnState)}
|
424
|
+
</MenuContentItem>
|
425
|
+
))}
|
426
|
+
</MenuContent>
|
459
427
|
}
|
428
|
+
menuProps={{
|
429
|
+
anchorOrigin: { vertical: 'bottom', horizontal: 'left' },
|
430
|
+
transformOrigin: { vertical: 'top', horizontal: 'left' },
|
431
|
+
elevation: 7,
|
432
|
+
}}
|
460
433
|
>
|
461
|
-
<
|
462
|
-
|
434
|
+
<div
|
435
|
+
className={clsx(
|
436
|
+
'query-builder__projection__column__aggregate__operator__badge',
|
437
|
+
{
|
438
|
+
'query-builder__projection__column__aggregate__operator__badge--activated':
|
439
|
+
Boolean(aggregateColumnState),
|
440
|
+
},
|
441
|
+
)}
|
442
|
+
>
|
443
|
+
<SigmaIcon />
|
444
|
+
</div>
|
445
|
+
<div className="query-builder__projection__column__aggregate__operator__dropdown__trigger">
|
446
|
+
<CaretDownIcon />
|
447
|
+
</div>
|
448
|
+
</DropdownMenu>
|
463
449
|
</div>
|
464
|
-
</
|
465
|
-
|
466
|
-
|
450
|
+
</div>
|
451
|
+
<div className="query-builder__projection__column__actions">
|
452
|
+
<button
|
453
|
+
className="query-builder__projection__column__action"
|
454
|
+
tabIndex={-1}
|
455
|
+
onClick={removeColumn}
|
456
|
+
disabled={isRemovalDisabled}
|
457
|
+
title={
|
458
|
+
isRemovalDisabled
|
459
|
+
? // TODO: We may want to provide a list of all places where column is in use
|
460
|
+
"This column is used and can't be removed"
|
461
|
+
: 'Remove'
|
462
|
+
}
|
463
|
+
>
|
464
|
+
<TimesIcon />
|
465
|
+
</button>
|
466
|
+
</div>
|
467
|
+
</ContextMenu>
|
468
|
+
</PanelDnDEntry>
|
467
469
|
);
|
468
470
|
},
|
469
471
|
);
|