@finos/legend-query-builder 0.0.1 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/components/QueryBuilder.d.ts.map +1 -1
- package/lib/components/QueryBuilder.js +14 -4
- package/lib/components/QueryBuilder.js.map +1 -1
- package/lib/components/QueryBuilderDiffPanel.d.ts +22 -0
- package/lib/components/QueryBuilderDiffPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderDiffPanel.js +103 -0
- package/lib/components/QueryBuilderDiffPanel.js.map +1 -0
- package/lib/components/QueryBuilderParametersPanel.js +3 -3
- package/lib/components/QueryBuilderParametersPanel.js.map +1 -1
- package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -1
- package/lib/components/QueryBuilderResultPanel.js +8 -9
- package/lib/components/QueryBuilderResultPanel.js.map +1 -1
- package/lib/components/QueryBuilderSideBar.js +1 -1
- package/lib/components/QueryBuilderSideBar.js.map +1 -1
- package/lib/components/ServiceQuerySetupUtils.d.ts +23 -0
- package/lib/components/ServiceQuerySetupUtils.d.ts.map +1 -0
- package/lib/components/ServiceQuerySetupUtils.js +25 -0
- package/lib/components/ServiceQuerySetupUtils.js.map +1 -0
- package/lib/components/explorer/QueryBuilderExplorerPanel.d.ts.map +1 -1
- package/lib/components/explorer/QueryBuilderExplorerPanel.js +4 -10
- package/lib/components/explorer/QueryBuilderExplorerPanel.js.map +1 -1
- package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.d.ts.map +1 -1
- package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.js +8 -6
- package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.js.map +1 -1
- package/lib/components/explorer/{QueryBuilderMilestoneEditor.d.ts → QueryBuilderMilestoningEditor.d.ts} +1 -1
- package/lib/components/explorer/QueryBuilderMilestoningEditor.d.ts.map +1 -0
- package/lib/components/explorer/{QueryBuilderMilestoneEditor.js → QueryBuilderMilestoningEditor.js} +9 -9
- package/lib/components/explorer/QueryBuilderMilestoningEditor.js.map +1 -0
- package/lib/components/explorer/QueryBuilderPropertySearchPanel.d.ts.map +1 -1
- package/lib/components/explorer/QueryBuilderPropertySearchPanel.js +69 -61
- package/lib/components/explorer/QueryBuilderPropertySearchPanel.js.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderProjectionPanel.d.ts.map +1 -1
- package/lib/components/fetch-structure/QueryBuilderProjectionPanel.js +1 -3
- package/lib/components/fetch-structure/QueryBuilderProjectionPanel.js.map +1 -1
- package/lib/components/filter/QueryBuilderFilterPanel.d.ts.map +1 -1
- package/lib/components/filter/QueryBuilderFilterPanel.js +3 -7
- package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -1
- package/lib/components/shared/QueryBuilderPropertyInfoTooltip.d.ts.map +1 -1
- package/lib/components/shared/QueryBuilderPropertyInfoTooltip.js +7 -2
- package/lib/components/shared/QueryBuilderPropertyInfoTooltip.js.map +1 -1
- package/lib/graphManager/QueryBuilderHashUtils.d.ts +84 -0
- package/lib/graphManager/QueryBuilderHashUtils.d.ts.map +1 -0
- package/lib/graphManager/QueryBuilderHashUtils.js +91 -0
- package/lib/graphManager/QueryBuilderHashUtils.js.map +1 -0
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/index.d.ts +3 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -0
- package/lib/index.js.map +1 -1
- package/lib/package.json +6 -4
- package/lib/stores/QueryBuilderChangeDetectionState.d.ts +26 -5
- package/lib/stores/QueryBuilderChangeDetectionState.d.ts.map +1 -1
- package/lib/stores/QueryBuilderChangeDetectionState.js +82 -10
- package/lib/stores/QueryBuilderChangeDetectionState.js.map +1 -1
- package/lib/stores/QueryBuilderConfig.d.ts +1 -0
- package/lib/stores/QueryBuilderConfig.d.ts.map +1 -1
- package/lib/stores/QueryBuilderConfig.js +1 -0
- package/lib/stores/QueryBuilderConfig.js.map +1 -1
- package/lib/stores/QueryBuilderMilestoningState.d.ts +3 -1
- package/lib/stores/QueryBuilderMilestoningState.d.ts.map +1 -1
- package/lib/stores/QueryBuilderMilestoningState.js +10 -0
- package/lib/stores/QueryBuilderMilestoningState.js.map +1 -1
- package/lib/stores/QueryBuilderParametersState.d.ts +3 -1
- package/lib/stores/QueryBuilderParametersState.d.ts.map +1 -1
- package/lib/stores/QueryBuilderParametersState.js +10 -1
- package/lib/stores/QueryBuilderParametersState.js.map +1 -1
- package/lib/stores/QueryBuilderPropertyEditorState.d.ts +5 -3
- package/lib/stores/QueryBuilderPropertyEditorState.d.ts.map +1 -1
- package/lib/stores/QueryBuilderPropertyEditorState.js +15 -5
- package/lib/stores/QueryBuilderPropertyEditorState.js.map +1 -1
- package/lib/stores/QueryBuilderResultState.d.ts +5 -3
- package/lib/stores/QueryBuilderResultState.d.ts.map +1 -1
- package/lib/stores/QueryBuilderResultState.js +26 -6
- package/lib/stores/QueryBuilderResultState.js.map +1 -1
- package/lib/stores/QueryBuilderState.d.ts +3 -5
- package/lib/stores/QueryBuilderState.d.ts.map +1 -1
- package/lib/stores/QueryBuilderState.js +32 -22
- package/lib/stores/QueryBuilderState.js.map +1 -1
- package/lib/stores/QueryBuilderStateTestUtils.js +1 -1
- package/lib/stores/QueryBuilderStateTestUtils.js.map +1 -1
- package/lib/stores/QueryBuilderTextEditorState.js +1 -1
- package/lib/stores/QueryBuilderTextEditorState.js.map +1 -1
- package/lib/stores/QueryBuilderUnsupportedQueryState.d.ts +4 -2
- package/lib/stores/QueryBuilderUnsupportedQueryState.d.ts.map +1 -1
- package/lib/stores/QueryBuilderUnsupportedQueryState.js +10 -1
- package/lib/stores/QueryBuilderUnsupportedQueryState.js.map +1 -1
- package/lib/stores/ServiceInfo.d.ts +28 -0
- package/lib/stores/ServiceInfo.d.ts.map +1 -0
- package/lib/stores/ServiceInfo.js +34 -0
- package/lib/stores/ServiceInfo.js.map +1 -0
- package/lib/stores/explorer/QueryBuilderExplorerState.d.ts +6 -6
- package/lib/stores/explorer/QueryBuilderExplorerState.d.ts.map +1 -1
- package/lib/stores/explorer/QueryBuilderExplorerState.js +19 -14
- package/lib/stores/explorer/QueryBuilderExplorerState.js.map +1 -1
- package/lib/stores/explorer/QueryBuilderPropertySearchState.d.ts +36 -17
- package/lib/stores/explorer/QueryBuilderPropertySearchState.d.ts.map +1 -1
- package/lib/stores/explorer/QueryBuilderPropertySearchState.js +203 -161
- package/lib/stores/explorer/QueryBuilderPropertySearchState.js.map +1 -1
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts +5 -3
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js +1 -0
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js.map +1 -1
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.d.ts +1 -1
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.js +3 -3
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.js.map +1 -1
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts +3 -1
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js +9 -1
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js.map +1 -1
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.d.ts +7 -5
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.d.ts.map +1 -1
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js +20 -5
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js.map +1 -1
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.d.ts +7 -4
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js +20 -5
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js.map +1 -1
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.d.ts +6 -5
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.js +14 -9
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.js.map +1 -1
- package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.d.ts +6 -3
- package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.js +28 -5
- package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.js.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.d.ts +4 -1
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.js +7 -1
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.js.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.d.ts +8 -5
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.js +24 -7
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.js.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.js +5 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.js.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.js +5 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.js.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.js +7 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.js.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.js +7 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.js.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.js +7 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.js.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.js +5 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.js.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.js +5 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.js.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.js +7 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.js.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.js +7 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.js.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.js +5 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.js.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.js.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.d.ts +14 -8
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js +54 -4
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.d.ts +4 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.js +12 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.js.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.d.ts +4 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.js +12 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.js.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.d.ts +4 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.js +10 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.js.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.js +7 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.js.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.js +7 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.js.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.d.ts +4 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.js +10 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.js.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.d.ts +4 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.js +12 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.js.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.js +7 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.js.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts +3 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.js +7 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.js.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.d.ts +5 -2
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.d.ts.map +1 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.js +12 -1
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.js.map +1 -1
- package/lib/stores/filter/QueryBuilderFilterOperator.d.ts +3 -1
- package/lib/stores/filter/QueryBuilderFilterOperator.d.ts.map +1 -1
- package/lib/stores/filter/QueryBuilderFilterOperator.js.map +1 -1
- package/lib/stores/filter/QueryBuilderFilterState.d.ts +14 -8
- package/lib/stores/filter/QueryBuilderFilterState.d.ts.map +1 -1
- package/lib/stores/filter/QueryBuilderFilterState.js +54 -9
- package/lib/stores/filter/QueryBuilderFilterState.js.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.d.ts +4 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.d.ts.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.js +10 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.js.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.d.ts +4 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.d.ts.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.js +10 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.js.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.d.ts +4 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.d.ts.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.js +8 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.js.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.d.ts +3 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.d.ts.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.js +7 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.js.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts +3 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.js +7 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.js.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.d.ts +4 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.d.ts.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.js +8 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.js.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.d.ts +4 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.d.ts.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.js +10 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.js.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.d.ts +3 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.d.ts.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.js +5 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.js.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.d.ts +3 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.d.ts.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.js +7 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.js.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.d.ts +4 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.d.ts.map +1 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.js +10 -1
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.js.map +1 -1
- package/lib/stores/workflows/ServiceQueryBuilderState.d.ts.map +1 -1
- package/lib/stores/workflows/ServiceQueryBuilderState.js +15 -7
- package/lib/stores/workflows/ServiceQueryBuilderState.js.map +1 -1
- package/package.json +12 -10
- package/src/components/QueryBuilder.tsx +41 -1
- package/src/components/QueryBuilderDiffPanel.tsx +222 -0
- package/src/components/QueryBuilderParametersPanel.tsx +3 -3
- package/src/components/QueryBuilderResultPanel.tsx +31 -18
- package/src/components/QueryBuilderSideBar.tsx +1 -1
- package/src/components/ServiceQuerySetupUtils.tsx +54 -0
- package/src/components/explorer/QueryBuilderExplorerPanel.tsx +5 -12
- package/src/components/explorer/QueryBuilderFunctionsExplorerPanel.tsx +24 -14
- package/src/components/explorer/{QueryBuilderMilestoneEditor.tsx → QueryBuilderMilestoningEditor.tsx} +12 -8
- package/src/components/explorer/QueryBuilderPropertySearchPanel.tsx +156 -145
- package/src/components/fetch-structure/QueryBuilderProjectionPanel.tsx +1 -5
- package/src/components/filter/QueryBuilderFilterPanel.tsx +3 -13
- package/src/components/shared/QueryBuilderPropertyInfoTooltip.tsx +22 -0
- package/src/graphManager/QueryBuilderHashUtils.ts +95 -0
- package/src/index.ts +3 -0
- package/src/stores/QueryBuilderChangeDetectionState.ts +112 -10
- package/src/stores/QueryBuilderConfig.ts +2 -0
- package/src/stores/QueryBuilderMilestoningState.ts +12 -1
- package/src/stores/QueryBuilderParametersState.ts +15 -2
- package/src/stores/QueryBuilderPropertyEditorState.ts +19 -7
- package/src/stores/QueryBuilderResultState.ts +30 -8
- package/src/stores/QueryBuilderState.ts +50 -37
- package/src/stores/QueryBuilderStateTestUtils.ts +1 -1
- package/src/stores/QueryBuilderTextEditorState.ts +1 -1
- package/src/stores/QueryBuilderUnsupportedQueryState.ts +13 -3
- package/src/stores/ServiceInfo.ts +52 -0
- package/src/stores/explorer/QueryBuilderExplorerState.ts +26 -30
- package/src/stores/explorer/QueryBuilderPropertySearchState.ts +259 -193
- package/src/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.ts +8 -3
- package/src/stores/fetch-structure/QueryBuilderFetchStructureState.ts +4 -4
- package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.ts +18 -2
- package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.ts +31 -6
- package/src/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.ts +34 -9
- package/src/stores/fetch-structure/projection/QueryBuilderProjectionState.ts +23 -16
- package/src/stores/fetch-structure/projection/QueryResultSetModifierState.ts +38 -8
- package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.ts +15 -2
- package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.ts +37 -12
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.ts +10 -1
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.ts +10 -1
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.ts +12 -1
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.ts +17 -2
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.ts +17 -2
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.ts +10 -1
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.ts +10 -1
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.ts +12 -1
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.ts +12 -1
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.ts +10 -1
- package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.ts +4 -2
- package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.ts +78 -10
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.ts +19 -1
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.ts +22 -2
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.ts +17 -1
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.ts +13 -1
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.ts +8 -0
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.ts +20 -2
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.ts +18 -1
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.ts +13 -1
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.ts +12 -1
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.ts +26 -3
- package/src/stores/filter/QueryBuilderFilterOperator.ts +4 -2
- package/src/stores/filter/QueryBuilderFilterState.ts +80 -22
- package/src/stores/filter/operators/QueryBuilderFilterOperator_Contain.ts +20 -2
- package/src/stores/filter/operators/QueryBuilderFilterOperator_EndWith.ts +20 -2
- package/src/stores/filter/operators/QueryBuilderFilterOperator_Equal.ts +18 -2
- package/src/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.ts +16 -2
- package/src/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.ts +16 -2
- package/src/stores/filter/operators/QueryBuilderFilterOperator_In.ts +14 -1
- package/src/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.ts +16 -1
- package/src/stores/filter/operators/QueryBuilderFilterOperator_LessThan.ts +14 -2
- package/src/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.ts +16 -2
- package/src/stores/filter/operators/QueryBuilderFilterOperator_StartWith.ts +20 -2
- package/src/stores/workflows/ServiceQueryBuilderState.ts +24 -9
- package/tsconfig.json +7 -2
- package/lib/components/explorer/QueryBuilderMilestoneEditor.d.ts.map +0 -1
- package/lib/components/explorer/QueryBuilderMilestoneEditor.js.map +0 -1
@@ -14,7 +14,13 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
|
17
|
-
import {
|
17
|
+
import {
|
18
|
+
assertType,
|
19
|
+
addUniqueEntry,
|
20
|
+
deleteEntry,
|
21
|
+
hashArray,
|
22
|
+
type Hashable,
|
23
|
+
} from '@finos/legend-shared';
|
18
24
|
import type { TreeNodeData, TreeData } from '@finos/legend-art';
|
19
25
|
import {
|
20
26
|
type AbstractProperty,
|
@@ -37,15 +43,19 @@ import {
|
|
37
43
|
graphFetchTree_addSubTree,
|
38
44
|
graphFetchTree_removeSubTree,
|
39
45
|
} from '@finos/legend-application';
|
46
|
+
import { QUERY_BUILDER_HASH_STRUCTURE } from '../../../graphManager/QueryBuilderHashUtils.js';
|
47
|
+
import { computed, makeObservable } from 'mobx';
|
40
48
|
|
41
|
-
export class QueryBuilderGraphFetchTreeNodeData
|
49
|
+
export class QueryBuilderGraphFetchTreeNodeData
|
50
|
+
implements TreeNodeData, Hashable
|
51
|
+
{
|
52
|
+
readonly id: string;
|
53
|
+
readonly label: string;
|
54
|
+
readonly tree: PropertyGraphFetchTree;
|
55
|
+
readonly parentId?: string | undefined;
|
42
56
|
isSelected?: boolean | undefined;
|
43
57
|
isOpen?: boolean | undefined;
|
44
|
-
id: string;
|
45
|
-
label: string;
|
46
58
|
childrenIds: string[] = [];
|
47
|
-
parentId?: string | undefined;
|
48
|
-
tree: PropertyGraphFetchTree;
|
49
59
|
|
50
60
|
constructor(
|
51
61
|
id: string,
|
@@ -53,6 +63,10 @@ export class QueryBuilderGraphFetchTreeNodeData implements TreeNodeData {
|
|
53
63
|
parentId: string | undefined,
|
54
64
|
graphFetchTreeNode: PropertyGraphFetchTree,
|
55
65
|
) {
|
66
|
+
makeObservable(this, {
|
67
|
+
hashCode: computed,
|
68
|
+
});
|
69
|
+
|
56
70
|
this.id = id;
|
57
71
|
this.label = label;
|
58
72
|
this.parentId = parentId;
|
@@ -64,6 +78,17 @@ export class QueryBuilderGraphFetchTreeNodeData implements TreeNodeData {
|
|
64
78
|
get type(): Type {
|
65
79
|
return this.tree.property.value.genericType.value.rawType;
|
66
80
|
}
|
81
|
+
|
82
|
+
get hashCode(): string {
|
83
|
+
return hashArray([
|
84
|
+
QUERY_BUILDER_HASH_STRUCTURE.GRAPH_FETCH_TREE_NODE_DATA,
|
85
|
+
this.id,
|
86
|
+
this.label,
|
87
|
+
this.tree,
|
88
|
+
this.parentId ?? '',
|
89
|
+
hashArray(this.childrenIds),
|
90
|
+
]);
|
91
|
+
}
|
67
92
|
}
|
68
93
|
|
69
94
|
export interface QueryBuilderGraphFetchTreeData
|
@@ -14,7 +14,7 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
|
17
|
-
import { action, makeObservable, observable, flow } from 'mobx';
|
17
|
+
import { action, makeObservable, observable, flow, computed } from 'mobx';
|
18
18
|
import {
|
19
19
|
type GeneratorFn,
|
20
20
|
LogEvent,
|
@@ -23,6 +23,8 @@ import {
|
|
23
23
|
guaranteeNonNullable,
|
24
24
|
assertTrue,
|
25
25
|
assertNonEmptyString,
|
26
|
+
type Hashable,
|
27
|
+
hashArray,
|
26
28
|
} from '@finos/legend-shared';
|
27
29
|
import {
|
28
30
|
type QueryBuilderExplorerTreePropertyNodeData,
|
@@ -54,6 +56,7 @@ import {
|
|
54
56
|
} from '../../QueryBuilderConfig.js';
|
55
57
|
import { LambdaEditorState } from '@finos/legend-application';
|
56
58
|
import type { QueryBuilderProjectionState } from './QueryBuilderProjectionState.js';
|
59
|
+
import { QUERY_BUILDER_HASH_STRUCTURE } from '../../../graphManager/QueryBuilderHashUtils.js';
|
57
60
|
|
58
61
|
export const QUERY_BUILDER_PROJECTION_COLUMN_DND_TYPE = 'PROJECTION_COLUMN';
|
59
62
|
|
@@ -61,7 +64,7 @@ export interface QueryBuilderProjectionColumnDragSource {
|
|
61
64
|
columnState: QueryBuilderProjectionColumnState;
|
62
65
|
}
|
63
66
|
|
64
|
-
export abstract class QueryBuilderProjectionColumnState {
|
67
|
+
export abstract class QueryBuilderProjectionColumnState implements Hashable {
|
65
68
|
readonly uuid = uuid();
|
66
69
|
projectionState: QueryBuilderProjectionState;
|
67
70
|
columnName: string;
|
@@ -75,6 +78,7 @@ export abstract class QueryBuilderProjectionColumnState {
|
|
75
78
|
projectionState: false,
|
76
79
|
columnName: observable,
|
77
80
|
setColumnName: action,
|
81
|
+
hashCode: computed,
|
78
82
|
});
|
79
83
|
|
80
84
|
this.projectionState = projectionState;
|
@@ -86,9 +90,14 @@ export abstract class QueryBuilderProjectionColumnState {
|
|
86
90
|
}
|
87
91
|
|
88
92
|
abstract getReturnType(): Type | undefined;
|
93
|
+
|
94
|
+
abstract get hashCode(): string;
|
89
95
|
}
|
90
96
|
|
91
|
-
export class QueryBuilderSimpleProjectionColumnState
|
97
|
+
export class QueryBuilderSimpleProjectionColumnState
|
98
|
+
extends QueryBuilderProjectionColumnState
|
99
|
+
implements Hashable
|
100
|
+
{
|
92
101
|
lambdaParameterName: string = DEFAULT_LAMBDA_VARIABLE_NAME;
|
93
102
|
propertyExpressionState: QueryBuilderPropertyExpressionState;
|
94
103
|
|
@@ -127,12 +136,8 @@ export class QueryBuilderSimpleProjectionColumnState extends QueryBuilderProject
|
|
127
136
|
this.propertyExpressionState = new QueryBuilderPropertyExpressionState(
|
128
137
|
this.projectionState.queryBuilderState,
|
129
138
|
buildPropertyExpressionFromExplorerTreeNodeData(
|
130
|
-
this.projectionState.queryBuilderState.explorerState
|
131
|
-
.nonNullableTreeData,
|
132
139
|
node,
|
133
|
-
this.projectionState.queryBuilderState.
|
134
|
-
this.projectionState.queryBuilderState.explorerState.propertySearchState
|
135
|
-
.allMappedPropertyNodes,
|
140
|
+
this.projectionState.queryBuilderState.explorerState,
|
136
141
|
),
|
137
142
|
);
|
138
143
|
this.columnName = getPropertyChainName(
|
@@ -145,6 +150,14 @@ export class QueryBuilderSimpleProjectionColumnState extends QueryBuilderProject
|
|
145
150
|
return this.propertyExpressionState.propertyExpression.func.genericType
|
146
151
|
.value.rawType;
|
147
152
|
}
|
153
|
+
|
154
|
+
get hashCode(): string {
|
155
|
+
return hashArray([
|
156
|
+
QUERY_BUILDER_HASH_STRUCTURE.SIMPLE_PROJECTION_COLUMN_STATE,
|
157
|
+
this.propertyExpressionState,
|
158
|
+
this.columnName,
|
159
|
+
]);
|
160
|
+
}
|
148
161
|
}
|
149
162
|
|
150
163
|
class QueryBuilderDerivationProjectionLambdaState extends LambdaEditorState {
|
@@ -243,7 +256,10 @@ class QueryBuilderDerivationProjectionLambdaState extends LambdaEditorState {
|
|
243
256
|
}
|
244
257
|
}
|
245
258
|
|
246
|
-
export class QueryBuilderDerivationProjectionColumnState
|
259
|
+
export class QueryBuilderDerivationProjectionColumnState
|
260
|
+
extends QueryBuilderProjectionColumnState
|
261
|
+
implements Hashable
|
262
|
+
{
|
247
263
|
derivationLambdaEditorState: QueryBuilderDerivationProjectionLambdaState;
|
248
264
|
lambda: RawLambda;
|
249
265
|
returnType: Type | undefined;
|
@@ -324,4 +340,13 @@ export class QueryBuilderDerivationProjectionColumnState extends QueryBuilderPro
|
|
324
340
|
override getReturnType(): Type | undefined {
|
325
341
|
return this.returnType;
|
326
342
|
}
|
343
|
+
|
344
|
+
get hashCode(): string {
|
345
|
+
return hashArray([
|
346
|
+
QUERY_BUILDER_HASH_STRUCTURE.DERIVATION_PROJECTION_COLUMN_STATE,
|
347
|
+
this.returnType ?? '',
|
348
|
+
this.lambda,
|
349
|
+
this.columnName,
|
350
|
+
]);
|
351
|
+
}
|
327
352
|
}
|
@@ -33,6 +33,8 @@ import {
|
|
33
33
|
guaranteeNonNullable,
|
34
34
|
findLast,
|
35
35
|
filterByType,
|
36
|
+
type Hashable,
|
37
|
+
hashArray,
|
36
38
|
} from '@finos/legend-shared';
|
37
39
|
import type { QueryBuilderState } from '../../QueryBuilderState.js';
|
38
40
|
import {
|
@@ -85,12 +87,16 @@ import {
|
|
85
87
|
import type { LambdaFunctionBuilderOption } from '../../QueryBuilderValueSpecificationBuilderHelper.js';
|
86
88
|
import { appendProjection } from './QueryBuilderProjectionValueSpecificationBuilder.js';
|
87
89
|
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../graphManager/QueryBuilderSupportedFunctions.js';
|
88
|
-
|
89
|
-
|
90
|
+
import { QUERY_BUILDER_HASH_STRUCTURE } from '../../../graphManager/QueryBuilderHashUtils.js';
|
91
|
+
|
92
|
+
export class QueryBuilderProjectionState
|
93
|
+
extends QueryBuilderFetchStructureImplementationState
|
94
|
+
implements Hashable
|
95
|
+
{
|
96
|
+
readonly aggregationState: QueryBuilderAggregationState;
|
97
|
+
readonly postFilterState: QueryBuilderPostFilterState;
|
98
|
+
readonly resultSetModifierState: QueryResultSetModifierState;
|
90
99
|
columns: QueryBuilderProjectionColumnState[] = [];
|
91
|
-
aggregationState: QueryBuilderAggregationState;
|
92
|
-
postFilterState: QueryBuilderPostFilterState;
|
93
|
-
resultSetModifierState: QueryResultSetModifierState;
|
94
100
|
isConvertDerivationProjectionObjects = false;
|
95
101
|
showPostFilterPanel = false;
|
96
102
|
|
@@ -107,9 +113,6 @@ export class QueryBuilderProjectionState extends QueryBuilderFetchStructureImple
|
|
107
113
|
|
108
114
|
makeObservable(this, {
|
109
115
|
columns: observable,
|
110
|
-
aggregationState: observable,
|
111
|
-
postFilterState: observable,
|
112
|
-
resultSetModifierState: observable,
|
113
116
|
isConvertDerivationProjectionObjects: observable,
|
114
117
|
showPostFilterPanel: observable,
|
115
118
|
derivations: computed,
|
@@ -504,11 +507,8 @@ export class QueryBuilderProjectionState extends QueryBuilderFetchStructureImple
|
|
504
507
|
new QueryBuilderSimpleProjectionColumnState(
|
505
508
|
this,
|
506
509
|
buildPropertyExpressionFromExplorerTreeNodeData(
|
507
|
-
this.queryBuilderState.explorerState.nonNullableTreeData,
|
508
510
|
node,
|
509
|
-
this.queryBuilderState.
|
510
|
-
this.queryBuilderState.explorerState.propertySearchState
|
511
|
-
.allMappedPropertyNodes,
|
511
|
+
this.queryBuilderState.explorerState,
|
512
512
|
),
|
513
513
|
this.queryBuilderState.explorerState.humanizePropertyName,
|
514
514
|
),
|
@@ -521,11 +521,8 @@ export class QueryBuilderProjectionState extends QueryBuilderFetchStructureImple
|
|
521
521
|
new QueryBuilderSimpleProjectionColumnState(
|
522
522
|
this,
|
523
523
|
buildPropertyExpressionFromExplorerTreeNodeData(
|
524
|
-
this.queryBuilderState.explorerState.nonNullableTreeData,
|
525
524
|
nodeToAdd,
|
526
|
-
this.queryBuilderState.
|
527
|
-
this.queryBuilderState.explorerState.propertySearchState
|
528
|
-
.allMappedPropertyNodes,
|
525
|
+
this.queryBuilderState.explorerState,
|
529
526
|
),
|
530
527
|
this.queryBuilderState.explorerState.humanizePropertyName,
|
531
528
|
),
|
@@ -566,4 +563,14 @@ export class QueryBuilderProjectionState extends QueryBuilderFetchStructureImple
|
|
566
563
|
onChange();
|
567
564
|
}
|
568
565
|
}
|
566
|
+
|
567
|
+
get hashCode(): string {
|
568
|
+
return hashArray([
|
569
|
+
QUERY_BUILDER_HASH_STRUCTURE.PROJECTION_STATE,
|
570
|
+
hashArray(this.columns),
|
571
|
+
this.aggregationState,
|
572
|
+
this.postFilterState,
|
573
|
+
this.resultSetModifierState,
|
574
|
+
]);
|
575
|
+
}
|
569
576
|
}
|
@@ -14,24 +14,33 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
|
17
|
-
import { action,
|
17
|
+
import { action, computed, makeObservable, observable } from 'mobx';
|
18
18
|
import type { QueryBuilderProjectionState } from './QueryBuilderProjectionState.js';
|
19
19
|
import type { QueryBuilderProjectionColumnState } from './QueryBuilderProjectionColumnState.js';
|
20
|
-
import {
|
20
|
+
import {
|
21
|
+
addUniqueEntry,
|
22
|
+
deleteEntry,
|
23
|
+
type Hashable,
|
24
|
+
hashArray,
|
25
|
+
} from '@finos/legend-shared';
|
26
|
+
import { QUERY_BUILDER_HASH_STRUCTURE } from '../../../graphManager/QueryBuilderHashUtils.js';
|
21
27
|
|
22
28
|
export enum COLUMN_SORT_TYPE {
|
23
29
|
ASC,
|
24
30
|
DESC,
|
25
31
|
}
|
26
32
|
|
27
|
-
export class SortColumnState {
|
33
|
+
export class SortColumnState implements Hashable {
|
28
34
|
columnState: QueryBuilderProjectionColumnState;
|
29
35
|
sortType = COLUMN_SORT_TYPE.ASC;
|
30
36
|
|
31
37
|
constructor(columnState: QueryBuilderProjectionColumnState) {
|
32
|
-
|
38
|
+
makeObservable(this, {
|
39
|
+
columnState: observable,
|
40
|
+
sortType: observable,
|
33
41
|
setColumnState: action,
|
34
42
|
setSortType: action,
|
43
|
+
hashCode: computed,
|
35
44
|
});
|
36
45
|
|
37
46
|
this.columnState = columnState;
|
@@ -44,24 +53,36 @@ export class SortColumnState {
|
|
44
53
|
setSortType(val: COLUMN_SORT_TYPE): void {
|
45
54
|
this.sortType = val;
|
46
55
|
}
|
56
|
+
|
57
|
+
get hashCode(): string {
|
58
|
+
return hashArray([
|
59
|
+
QUERY_BUILDER_HASH_STRUCTURE.SORT_COLUMN_STATE,
|
60
|
+
this.sortType.toString(),
|
61
|
+
this.columnState,
|
62
|
+
]);
|
63
|
+
}
|
47
64
|
}
|
48
65
|
|
49
|
-
export class QueryResultSetModifierState {
|
50
|
-
projectionState: QueryBuilderProjectionState;
|
66
|
+
export class QueryResultSetModifierState implements Hashable {
|
67
|
+
readonly projectionState: QueryBuilderProjectionState;
|
51
68
|
showModal = false;
|
52
69
|
limit?: number | undefined;
|
53
70
|
distinct = false;
|
54
71
|
sortColumns: SortColumnState[] = [];
|
55
72
|
|
56
73
|
constructor(projectionState: QueryBuilderProjectionState) {
|
57
|
-
|
58
|
-
|
74
|
+
makeObservable(this, {
|
75
|
+
showModal: observable,
|
76
|
+
limit: observable,
|
77
|
+
distinct: observable,
|
78
|
+
sortColumns: observable,
|
59
79
|
setShowModal: action,
|
60
80
|
setLimit: action,
|
61
81
|
toggleDistinct: action,
|
62
82
|
deleteSortColumn: action,
|
63
83
|
addSortColumn: action,
|
64
84
|
updateSortColumns: action,
|
85
|
+
hashCode: computed,
|
65
86
|
});
|
66
87
|
|
67
88
|
this.projectionState = projectionState;
|
@@ -92,4 +113,13 @@ export class QueryResultSetModifierState {
|
|
92
113
|
this.projectionState.columns.includes(e.columnState),
|
93
114
|
);
|
94
115
|
}
|
116
|
+
|
117
|
+
get hashCode(): string {
|
118
|
+
return hashArray([
|
119
|
+
QUERY_BUILDER_HASH_STRUCTURE.RESULT_SET_MODIFIER_STATE,
|
120
|
+
hashArray(this.sortColumns),
|
121
|
+
this.limit?.toString() ?? '',
|
122
|
+
this.distinct.toString(),
|
123
|
+
]);
|
124
|
+
}
|
95
125
|
}
|
@@ -14,7 +14,11 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
|
17
|
-
import {
|
17
|
+
import {
|
18
|
+
uuid,
|
19
|
+
guaranteeNonNullable,
|
20
|
+
type Hashable,
|
21
|
+
} from '@finos/legend-shared';
|
18
22
|
import type {
|
19
23
|
AbstractPropertyExpression,
|
20
24
|
PureModel,
|
@@ -28,10 +32,17 @@ import {
|
|
28
32
|
QueryBuilderSimpleProjectionColumnState,
|
29
33
|
} from '../QueryBuilderProjectionColumnState.js';
|
30
34
|
import type { QueryBuilderAggregateColumnState } from './QueryBuilderAggregationState.js';
|
35
|
+
import { computed, makeObservable } from 'mobx';
|
31
36
|
|
32
|
-
export abstract class QueryBuilderAggregateOperator {
|
37
|
+
export abstract class QueryBuilderAggregateOperator implements Hashable {
|
33
38
|
readonly uuid = uuid();
|
34
39
|
|
40
|
+
constructor() {
|
41
|
+
makeObservable(this, {
|
42
|
+
hashCode: computed,
|
43
|
+
});
|
44
|
+
}
|
45
|
+
|
35
46
|
abstract getLabel(
|
36
47
|
projectionColumnState: QueryBuilderProjectionColumnState,
|
37
48
|
): string;
|
@@ -76,4 +87,6 @@ export abstract class QueryBuilderAggregateOperator {
|
|
76
87
|
aggregateColumnState.projectionColumnState.getReturnType(),
|
77
88
|
);
|
78
89
|
}
|
90
|
+
|
91
|
+
abstract get hashCode(): string;
|
79
92
|
}
|
@@ -14,17 +14,24 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
|
17
|
-
import { action,
|
18
|
-
import {
|
17
|
+
import { action, computed, makeObservable, observable } from 'mobx';
|
18
|
+
import {
|
19
|
+
uuid,
|
20
|
+
deleteEntry,
|
21
|
+
addUniqueEntry,
|
22
|
+
type Hashable,
|
23
|
+
hashArray,
|
24
|
+
} from '@finos/legend-shared';
|
19
25
|
import type { Type } from '@finos/legend-graph';
|
20
26
|
import { DEFAULT_LAMBDA_VARIABLE_NAME } from '../../../QueryBuilderConfig.js';
|
21
27
|
import type { QueryBuilderProjectionState } from '../QueryBuilderProjectionState.js';
|
22
28
|
import type { QueryBuilderAggregateOperator } from './QueryBuilderAggregateOperator.js';
|
23
29
|
import type { QueryBuilderProjectionColumnState } from '../QueryBuilderProjectionColumnState.js';
|
30
|
+
import { QUERY_BUILDER_HASH_STRUCTURE } from '../../../../graphManager/QueryBuilderHashUtils.js';
|
24
31
|
|
25
|
-
export class QueryBuilderAggregateColumnState {
|
32
|
+
export class QueryBuilderAggregateColumnState implements Hashable {
|
26
33
|
readonly uuid = uuid();
|
27
|
-
aggregationState: QueryBuilderAggregationState;
|
34
|
+
readonly aggregationState: QueryBuilderAggregationState;
|
28
35
|
projectionColumnState: QueryBuilderProjectionColumnState;
|
29
36
|
lambdaParameterName: string = DEFAULT_LAMBDA_VARIABLE_NAME;
|
30
37
|
operator: QueryBuilderAggregateOperator;
|
@@ -34,12 +41,14 @@ export class QueryBuilderAggregateColumnState {
|
|
34
41
|
projectionColumnState: QueryBuilderProjectionColumnState,
|
35
42
|
operator: QueryBuilderAggregateOperator,
|
36
43
|
) {
|
37
|
-
|
38
|
-
|
39
|
-
|
44
|
+
makeObservable(this, {
|
45
|
+
projectionColumnState: observable,
|
46
|
+
lambdaParameterName: observable,
|
47
|
+
operator: observable,
|
40
48
|
setColumnState: action,
|
41
49
|
setLambdaParameterName: action,
|
42
50
|
setOperator: action,
|
51
|
+
hashCode: computed,
|
43
52
|
});
|
44
53
|
|
45
54
|
this.aggregationState = aggregationState;
|
@@ -66,21 +75,30 @@ export class QueryBuilderAggregateColumnState {
|
|
66
75
|
getReturnType(): Type {
|
67
76
|
return this.operator.getReturnType(this);
|
68
77
|
}
|
78
|
+
|
79
|
+
get hashCode(): string {
|
80
|
+
return hashArray([
|
81
|
+
QUERY_BUILDER_HASH_STRUCTURE.AGGREGATE_COLUMN_STATE,
|
82
|
+
this.operator,
|
83
|
+
]);
|
84
|
+
}
|
69
85
|
}
|
70
86
|
|
71
|
-
export class QueryBuilderAggregationState {
|
72
|
-
projectionState: QueryBuilderProjectionState;
|
73
|
-
operators: QueryBuilderAggregateOperator[] = [];
|
87
|
+
export class QueryBuilderAggregationState implements Hashable {
|
88
|
+
readonly projectionState: QueryBuilderProjectionState;
|
89
|
+
readonly operators: QueryBuilderAggregateOperator[] = [];
|
74
90
|
columns: QueryBuilderAggregateColumnState[] = [];
|
75
91
|
|
76
92
|
constructor(
|
77
93
|
projectionState: QueryBuilderProjectionState,
|
78
94
|
operators: QueryBuilderAggregateOperator[],
|
79
95
|
) {
|
80
|
-
|
81
|
-
|
96
|
+
makeObservable(this, {
|
97
|
+
columns: observable,
|
82
98
|
removeColumn: action,
|
83
99
|
addColumn: action,
|
100
|
+
changeColumnAggregateOperator: action,
|
101
|
+
hashCode: computed,
|
84
102
|
});
|
85
103
|
|
86
104
|
this.projectionState = projectionState;
|
@@ -142,4 +160,11 @@ export class QueryBuilderAggregationState {
|
|
142
160
|
}
|
143
161
|
}
|
144
162
|
}
|
163
|
+
|
164
|
+
get hashCode(): string {
|
165
|
+
return hashArray([
|
166
|
+
QUERY_BUILDER_HASH_STRUCTURE.AGGREGATION_STATE,
|
167
|
+
hashArray(this.columns),
|
168
|
+
]);
|
169
|
+
}
|
145
170
|
}
|
@@ -34,8 +34,13 @@ import {
|
|
34
34
|
buildAggregateExpression,
|
35
35
|
} from './QueryBuilderAggregateOperatorHelper.js';
|
36
36
|
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../../graphManager/QueryBuilderSupportedFunctions.js';
|
37
|
+
import { type Hashable, hashArray } from '@finos/legend-shared';
|
38
|
+
import { QUERY_BUILDER_HASH_STRUCTURE } from '../../../../../graphManager/QueryBuilderHashUtils.js';
|
37
39
|
|
38
|
-
export class QueryBuilderAggregateOperator_Average
|
40
|
+
export class QueryBuilderAggregateOperator_Average
|
41
|
+
extends QueryBuilderAggregateOperator
|
42
|
+
implements Hashable
|
43
|
+
{
|
39
44
|
getLabel(projectionColumnState: QueryBuilderProjectionColumnState): string {
|
40
45
|
return 'average';
|
41
46
|
}
|
@@ -95,4 +100,8 @@ export class QueryBuilderAggregateOperator_Average extends QueryBuilderAggregate
|
|
95
100
|
.graphManagerState.graph;
|
96
101
|
return graph.getType(PRIMITIVE_TYPE.FLOAT);
|
97
102
|
}
|
103
|
+
|
104
|
+
get hashCode(): string {
|
105
|
+
return hashArray([QUERY_BUILDER_HASH_STRUCTURE.AGGREGATE_OPERATOR_AVERAGE]);
|
106
|
+
}
|
98
107
|
}
|
@@ -35,8 +35,13 @@ import {
|
|
35
35
|
buildAggregateExpression,
|
36
36
|
} from './QueryBuilderAggregateOperatorHelper.js';
|
37
37
|
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../../graphManager/QueryBuilderSupportedFunctions.js';
|
38
|
+
import { type Hashable, hashArray } from '@finos/legend-shared';
|
39
|
+
import { QUERY_BUILDER_HASH_STRUCTURE } from '../../../../../graphManager/QueryBuilderHashUtils.js';
|
38
40
|
|
39
|
-
export class QueryBuilderAggregateOperator_Count
|
41
|
+
export class QueryBuilderAggregateOperator_Count
|
42
|
+
extends QueryBuilderAggregateOperator
|
43
|
+
implements Hashable
|
44
|
+
{
|
40
45
|
getLabel(projectionColumnState: QueryBuilderProjectionColumnState): string {
|
41
46
|
return 'count';
|
42
47
|
}
|
@@ -103,4 +108,8 @@ export class QueryBuilderAggregateOperator_Count extends QueryBuilderAggregateOp
|
|
103
108
|
.graphManagerState.graph;
|
104
109
|
return graph.getType(PRIMITIVE_TYPE.INTEGER);
|
105
110
|
}
|
111
|
+
|
112
|
+
get hashCode(): string {
|
113
|
+
return hashArray([QUERY_BUILDER_HASH_STRUCTURE.AGGREGATE_OPERATOR_COUNT]);
|
114
|
+
}
|
106
115
|
}
|
@@ -34,8 +34,13 @@ import {
|
|
34
34
|
buildAggregateExpression,
|
35
35
|
} from './QueryBuilderAggregateOperatorHelper.js';
|
36
36
|
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../../graphManager/QueryBuilderSupportedFunctions.js';
|
37
|
+
import { type Hashable, hashArray } from '@finos/legend-shared';
|
38
|
+
import { QUERY_BUILDER_HASH_STRUCTURE } from '../../../../../graphManager/QueryBuilderHashUtils.js';
|
37
39
|
|
38
|
-
export class QueryBuilderAggregateOperator_Distinct
|
40
|
+
export class QueryBuilderAggregateOperator_Distinct
|
41
|
+
extends QueryBuilderAggregateOperator
|
42
|
+
implements Hashable
|
43
|
+
{
|
39
44
|
getLabel(projectionColumnState: QueryBuilderProjectionColumnState): string {
|
40
45
|
return 'distinct';
|
41
46
|
}
|
@@ -93,4 +98,10 @@ export class QueryBuilderAggregateOperator_Distinct extends QueryBuilderAggregat
|
|
93
98
|
this,
|
94
99
|
);
|
95
100
|
}
|
101
|
+
|
102
|
+
get hashCode(): string {
|
103
|
+
return hashArray([
|
104
|
+
QUERY_BUILDER_HASH_STRUCTURE.AGGREGATE_OPERATOR_DISTINCT,
|
105
|
+
]);
|
106
|
+
}
|
96
107
|
}
|
@@ -27,7 +27,12 @@ import {
|
|
27
27
|
type Type,
|
28
28
|
Enumeration,
|
29
29
|
} from '@finos/legend-graph';
|
30
|
-
import {
|
30
|
+
import {
|
31
|
+
assertTrue,
|
32
|
+
guaranteeType,
|
33
|
+
type Hashable,
|
34
|
+
hashArray,
|
35
|
+
} from '@finos/legend-shared';
|
31
36
|
import { QueryBuilderAggregateColumnState } from '../QueryBuilderAggregationState.js';
|
32
37
|
import { QueryBuilderAggregateOperator } from '../QueryBuilderAggregateOperator.js';
|
33
38
|
import {
|
@@ -35,8 +40,12 @@ import {
|
|
35
40
|
QueryBuilderSimpleProjectionColumnState,
|
36
41
|
} from '../../QueryBuilderProjectionColumnState.js';
|
37
42
|
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../../graphManager/QueryBuilderSupportedFunctions.js';
|
43
|
+
import { QUERY_BUILDER_HASH_STRUCTURE } from '../../../../../graphManager/QueryBuilderHashUtils.js';
|
38
44
|
|
39
|
-
export class QueryBuilderAggregateOperator_DistinctCount
|
45
|
+
export class QueryBuilderAggregateOperator_DistinctCount
|
46
|
+
extends QueryBuilderAggregateOperator
|
47
|
+
implements Hashable
|
48
|
+
{
|
40
49
|
getLabel(projectionColumnState: QueryBuilderProjectionColumnState): string {
|
41
50
|
return 'distinct count';
|
42
51
|
}
|
@@ -170,4 +179,10 @@ export class QueryBuilderAggregateOperator_DistinctCount extends QueryBuilderAgg
|
|
170
179
|
.graphManagerState.graph;
|
171
180
|
return graph.getType(PRIMITIVE_TYPE.INTEGER);
|
172
181
|
}
|
182
|
+
|
183
|
+
get hashCode(): string {
|
184
|
+
return hashArray([
|
185
|
+
QUERY_BUILDER_HASH_STRUCTURE.AGGREGATE_OPERATOR_DISTINCT_COUNT,
|
186
|
+
]);
|
187
|
+
}
|
173
188
|
}
|
@@ -29,7 +29,12 @@ import {
|
|
29
29
|
GenericType,
|
30
30
|
PRIMITIVE_TYPE,
|
31
31
|
} from '@finos/legend-graph';
|
32
|
-
import {
|
32
|
+
import {
|
33
|
+
assertTrue,
|
34
|
+
guaranteeType,
|
35
|
+
type Hashable,
|
36
|
+
hashArray,
|
37
|
+
} from '@finos/legend-shared';
|
33
38
|
import { QueryBuilderAggregateColumnState } from '../QueryBuilderAggregationState.js';
|
34
39
|
import { QueryBuilderAggregateOperator } from '../QueryBuilderAggregateOperator.js';
|
35
40
|
import {
|
@@ -37,8 +42,12 @@ import {
|
|
37
42
|
QueryBuilderSimpleProjectionColumnState,
|
38
43
|
} from '../../QueryBuilderProjectionColumnState.js';
|
39
44
|
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../../graphManager/QueryBuilderSupportedFunctions.js';
|
45
|
+
import { QUERY_BUILDER_HASH_STRUCTURE } from '../../../../../graphManager/QueryBuilderHashUtils.js';
|
40
46
|
|
41
|
-
export class QueryBuilderAggregateOperator_JoinString
|
47
|
+
export class QueryBuilderAggregateOperator_JoinString
|
48
|
+
extends QueryBuilderAggregateOperator
|
49
|
+
implements Hashable
|
50
|
+
{
|
42
51
|
getLabel(projectionColumnState: QueryBuilderProjectionColumnState): string {
|
43
52
|
return 'join';
|
44
53
|
}
|
@@ -152,4 +161,10 @@ export class QueryBuilderAggregateOperator_JoinString extends QueryBuilderAggreg
|
|
152
161
|
.graphManagerState.graph;
|
153
162
|
return graph.getType(PRIMITIVE_TYPE.STRING);
|
154
163
|
}
|
164
|
+
|
165
|
+
get hashCode(): string {
|
166
|
+
return hashArray([
|
167
|
+
QUERY_BUILDER_HASH_STRUCTURE.AGGREGATE_OPERATOR_JOIN_STRING,
|
168
|
+
]);
|
169
|
+
}
|
155
170
|
}
|
@@ -34,8 +34,13 @@ import {
|
|
34
34
|
buildAggregateExpression,
|
35
35
|
} from './QueryBuilderAggregateOperatorHelper.js';
|
36
36
|
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../../graphManager/QueryBuilderSupportedFunctions.js';
|
37
|
+
import { type Hashable, hashArray } from '@finos/legend-shared';
|
38
|
+
import { QUERY_BUILDER_HASH_STRUCTURE } from '../../../../../graphManager/QueryBuilderHashUtils.js';
|
37
39
|
|
38
|
-
export class QueryBuilderAggregateOperator_Max
|
40
|
+
export class QueryBuilderAggregateOperator_Max
|
41
|
+
extends QueryBuilderAggregateOperator
|
42
|
+
implements Hashable
|
43
|
+
{
|
39
44
|
getLabel(projectionColumnState: QueryBuilderProjectionColumnState): string {
|
40
45
|
return 'max';
|
41
46
|
}
|
@@ -171,4 +176,8 @@ export class QueryBuilderAggregateOperator_Max extends QueryBuilderAggregateOper
|
|
171
176
|
}
|
172
177
|
return undefined;
|
173
178
|
}
|
179
|
+
|
180
|
+
get hashCode(): string {
|
181
|
+
return hashArray([QUERY_BUILDER_HASH_STRUCTURE.AGGREGATE_OPERATOR_MAX]);
|
182
|
+
}
|
174
183
|
}
|