@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
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilderFilterOperator_LessThanEqual.js","sourceRoot":"","sources":["../../../../src/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EACL,cAAc,EAId,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,
|
1
|
+
{"version":3,"file":"QueryBuilderFilterOperator_LessThanEqual.js","sourceRoot":"","sources":["../../../../src/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.ts"],"names":[],"mappings":"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"}
|
@@ -16,17 +16,20 @@
|
|
16
16
|
import type { QueryBuilderFilterState, FilterConditionState } from '../QueryBuilderFilterState.js';
|
17
17
|
import { QueryBuilderFilterOperator } from '../QueryBuilderFilterOperator.js';
|
18
18
|
import { type ValueSpecification, type SimpleFunctionExpression } from '@finos/legend-graph';
|
19
|
-
|
19
|
+
import { type Hashable } from '@finos/legend-shared';
|
20
|
+
export declare class QueryBuilderFilterOperator_StartWith extends QueryBuilderFilterOperator implements Hashable {
|
20
21
|
getLabel(filterConditionState: FilterConditionState): string;
|
21
22
|
isCompatibleWithFilterConditionProperty(filterConditionState: FilterConditionState): boolean;
|
22
23
|
isCompatibleWithFilterConditionValue(filterConditionState: FilterConditionState): boolean;
|
23
24
|
getDefaultFilterConditionValue(filterConditionState: FilterConditionState): ValueSpecification | undefined;
|
24
25
|
buildFilterConditionExpression(filterConditionState: FilterConditionState): ValueSpecification;
|
25
26
|
buildFilterConditionState(filterState: QueryBuilderFilterState, expression: SimpleFunctionExpression): FilterConditionState | undefined;
|
27
|
+
get hashCode(): string;
|
26
28
|
}
|
27
29
|
export declare class QueryBuilderFilterOperator_NotStartWith extends QueryBuilderFilterOperator_StartWith {
|
28
30
|
getLabel(filterConditionState: FilterConditionState): string;
|
29
31
|
buildFilterConditionExpression(filterConditionState: FilterConditionState): ValueSpecification;
|
30
32
|
buildFilterConditionState(filterState: QueryBuilderFilterState, expression: SimpleFunctionExpression): FilterConditionState | undefined;
|
33
|
+
get hashCode(): string;
|
31
34
|
}
|
32
35
|
//# sourceMappingURL=QueryBuilderFilterOperator_StartWith.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilderFilterOperator_StartWith.d.ts","sourceRoot":"","sources":["../../../../src/stores/filter/operators/QueryBuilderFilterOperator_StartWith.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAE9B,MAAM,qBAAqB,CAAC;
|
1
|
+
{"version":3,"file":"QueryBuilderFilterOperator_StartWith.d.ts","sourceRoot":"","sources":["../../../../src/stores/filter/operators/QueryBuilderFilterOperator_StartWith.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAE9B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,QAAQ,EAGd,MAAM,sBAAsB,CAAC;AAc9B,qBAAa,oCACX,SAAQ,0BACR,YAAW,QAAQ;IAEnB,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,GAAG,MAAM;IAI5D,uCAAuC,CACrC,oBAAoB,EAAE,oBAAoB,GACzC,OAAO;IAOV,oCAAoC,CAClC,oBAAoB,EAAE,oBAAoB,GACzC,OAAO;IAOV,8BAA8B,CAC5B,oBAAoB,EAAE,oBAAoB,GACzC,kBAAkB,GAAG,SAAS;IAsBjC,8BAA8B,CAC5B,oBAAoB,EAAE,oBAAoB,GACzC,kBAAkB;IAOrB,yBAAyB,CACvB,WAAW,EAAE,uBAAuB,EACpC,UAAU,EAAE,wBAAwB,GACnC,oBAAoB,GAAG,SAAS;IASnC,IAAI,QAAQ,IAAI,MAAM,CAErB;CACF;AAED,qBAAa,uCAAwC,SAAQ,oCAAoC;IACtF,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,GAAG,MAAM;IAI5D,8BAA8B,CACrC,oBAAoB,EAAE,oBAAoB,GACzC,kBAAkB;IAQZ,yBAAyB,CAChC,WAAW,EAAE,uBAAuB,EACpC,UAAU,EAAE,wBAAwB,GACnC,oBAAoB,GAAG,SAAS;IAOnC,IAAa,QAAQ,IAAI,MAAM,CAI9B;CACF"}
|
@@ -15,10 +15,11 @@
|
|
15
15
|
*/
|
16
16
|
import { QueryBuilderFilterOperator } from '../QueryBuilderFilterOperator.js';
|
17
17
|
import { PRIMITIVE_TYPE, buildPrimitiveInstanceValue, } from '@finos/legend-graph';
|
18
|
-
import { UnsupportedOperationError } from '@finos/legend-shared';
|
18
|
+
import { UnsupportedOperationError, hashArray, } from '@finos/legend-shared';
|
19
19
|
import { buildFilterConditionState, buildFilterConditionExpression, } from './QueryBuilderFilterOperatorHelper.js';
|
20
20
|
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../graphManager/QueryBuilderSupportedFunctions.js';
|
21
21
|
import { buildNotExpression, generateDefaultValueForPrimitiveType, getNonCollectionValueSpecificationType, unwrapNotExpression, } from '../../QueryBuilderValueSpecificationHelper.js';
|
22
|
+
import { QUERY_BUILDER_HASH_STRUCTURE } from '../../../graphManager/QueryBuilderHashUtils.js';
|
22
23
|
export class QueryBuilderFilterOperator_StartWith extends QueryBuilderFilterOperator {
|
23
24
|
getLabel(filterConditionState) {
|
24
25
|
return 'starts with';
|
@@ -52,6 +53,9 @@ export class QueryBuilderFilterOperator_StartWith extends QueryBuilderFilterOper
|
|
52
53
|
buildFilterConditionState(filterState, expression) {
|
53
54
|
return buildFilterConditionState(filterState, expression, QUERY_BUILDER_SUPPORTED_FUNCTIONS.STARTS_WITH, this);
|
54
55
|
}
|
56
|
+
get hashCode() {
|
57
|
+
return hashArray([QUERY_BUILDER_HASH_STRUCTURE.FILTER_OPERATOR_START_WITH]);
|
58
|
+
}
|
55
59
|
}
|
56
60
|
export class QueryBuilderFilterOperator_NotStartWith extends QueryBuilderFilterOperator_StartWith {
|
57
61
|
getLabel(filterConditionState) {
|
@@ -67,5 +71,10 @@ export class QueryBuilderFilterOperator_NotStartWith extends QueryBuilderFilterO
|
|
67
71
|
? super.buildFilterConditionState(filterState, innerExpression)
|
68
72
|
: undefined;
|
69
73
|
}
|
74
|
+
get hashCode() {
|
75
|
+
return hashArray([
|
76
|
+
QUERY_BUILDER_HASH_STRUCTURE.FILTER_OPERATOR_NOT_START_WITH,
|
77
|
+
]);
|
78
|
+
}
|
70
79
|
}
|
71
80
|
//# sourceMappingURL=QueryBuilderFilterOperator_StartWith.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryBuilderFilterOperator_StartWith.js","sourceRoot":"","sources":["../../../../src/stores/filter/operators/QueryBuilderFilterOperator_StartWith.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EACL,cAAc,EAGd,2BAA2B,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,
|
1
|
+
{"version":3,"file":"QueryBuilderFilterOperator_StartWith.js","sourceRoot":"","sources":["../../../../src/stores/filter/operators/QueryBuilderFilterOperator_StartWith.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ServiceQueryBuilderState.d.ts","sourceRoot":"","sources":["../../../src/stores/workflows/ServiceQueryBuilderState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,iBAAiB,EACtB,KAAK,OAAO,EAIb,MAAM,qBAAqB,CAAC;
|
1
|
+
{"version":3,"file":"ServiceQueryBuilderState.d.ts","sourceRoot":"","sources":["../../../src/stores/workflows/ServiceQueryBuilderState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,iBAAiB,EACtB,KAAK,OAAO,EAIb,MAAM,qBAAqB,CAAC;AAS7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,oBAAY,uBAAuB,GAAG;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,qBAAa,wBAAyB,SAAQ,iBAAiB;IAC7D,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,iBAAiB,EAAE,uBAAuB,EAAE,CAAM;IAC3D,QAAQ,CAAC,wBAAwB,CAAC,EAC9B,CAAC,CAAC,GAAG,EAAE,uBAAuB,KAAK,IAAI,CAAC,GACxC,SAAS,CAAC;IAEL,oCAAoC,QAAO,MAAM,SAAS,CAChB;IAEnD,wBAAwB,CAAC,EAAE,uBAAuB,GAAG,SAAS,CAAC;gBAG7D,gBAAgB,EAAE,6BAA6B,EAC/C,iBAAiB,EAAE,iBAAiB,EACpC,OAAO,EAAE,OAAO,EAChB,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,EACxC,wBAAwB,CAAC,EACrB,CAAC,CAAC,GAAG,EAAE,uBAAuB,KAAK,IAAI,CAAC,GACxC,SAAS;IAmDf,2BAA2B,CAAC,GAAG,EAAE,uBAAuB,GAAG,IAAI;IAI/D,IAAa,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAIlD;IAED,IAAa,iBAAiB,IAAI,OAAO,CAExC;IAED,IAAa,iBAAiB,IAAI,OAAO,CAExC;IAED;;;;;;OAMG;IACH,+BAA+B,CAC7B,gBAAgB,EAAE,uBAAuB,GACxC,IAAI;CAkBR"}
|
@@ -14,7 +14,7 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
import { getMappingCompatibleClasses, PureMultiExecution, PureSingleExecution, } from '@finos/legend-graph';
|
17
|
-
import { getNullableFirstElement, IllegalStateError, } from '@finos/legend-shared';
|
17
|
+
import { assertTrue, getNullableFirstElement, guaranteeNonNullable, IllegalStateError, } from '@finos/legend-shared';
|
18
18
|
import { action, makeObservable, observable } from 'mobx';
|
19
19
|
import { renderServiceQueryBuilderSetupPanelContent } from '../../components/workflows/ServiceQueryBuilder.js';
|
20
20
|
import { QueryBuilderState } from '../QueryBuilderState.js';
|
@@ -42,13 +42,21 @@ export class ServiceQueryBuilderState extends QueryBuilderState {
|
|
42
42
|
mapping: ep.mapping.value,
|
43
43
|
runtimeValue: ep.runtime,
|
44
44
|
}));
|
45
|
-
|
46
|
-
if (
|
47
|
-
|
45
|
+
let selectedExecutionContext;
|
46
|
+
if (executionContextKey) {
|
47
|
+
const matchingExecutionContext = this.executionContexts.find((ec) => ec.key === executionContextKey);
|
48
|
+
if (!matchingExecutionContext) {
|
49
|
+
throw new IllegalStateError(`Can't initialize service query builder state: multi-execution service's execution context with key '${executionContextKey}' not found`);
|
50
|
+
}
|
51
|
+
selectedExecutionContext = matchingExecutionContext;
|
48
52
|
}
|
49
|
-
|
50
|
-
|
51
|
-
|
53
|
+
else {
|
54
|
+
assertTrue(this.executionContexts.length > 0, `Can't initialize service query builder state: multi-execution service has no execution context`);
|
55
|
+
selectedExecutionContext = guaranteeNonNullable(this.executionContexts[0]);
|
56
|
+
}
|
57
|
+
this.setSelectedExecutionContext(selectedExecutionContext);
|
58
|
+
this.mapping = selectedExecutionContext.mapping;
|
59
|
+
this.runtimeValue = selectedExecutionContext.runtimeValue;
|
52
60
|
}
|
53
61
|
}
|
54
62
|
setSelectedExecutionContext(val) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ServiceQueryBuilderState.js","sourceRoot":"","sources":["../../../src/stores/workflows/ServiceQueryBuilderState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAKL,2BAA2B,EAC3B,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAC1D,OAAO,EAAE,0CAA0C,EAAE,MAAM,mDAAmD,CAAC;AAC/G,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAQ5D,MAAM,OAAO,wBAAyB,SAAQ,iBAAiB;IACpD,OAAO,CAAU;IACjB,iBAAiB,GAA8B,EAAE,CAAC;IAClD,wBAAwB,CAEnB;IAEL,oCAAoC,GAAG,GAAoB,EAAE,CACpE,0CAA0C,CAAC,IAAI,CAAC,CAAC;IAEnD,wBAAwB,CAAuC;IAE/D,YACE,gBAA+C,EAC/C,iBAAoC,EACpC,OAAgB,EAChB,mBAAwC,EACxC,wBAEa;QAEb,KAAK,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;QAE3C,cAAc,CAAC,IAAI,EAAE;YACnB,wBAAwB,EAAE,UAAU;YACpC,2BAA2B,EAAE,MAAM;SACpC,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QAEzD,IAAI,OAAO,CAAC,SAAS,YAAY,mBAAmB,EAAE;YACpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;YAC/C,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC;SAC/C;aAAM,IAAI,OAAO,CAAC,SAAS,YAAY,kBAAkB,EAAE;YAC1D,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,GAAG,CAChE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBACP,GAAG,EAAE,EAAE,CAAC,GAAG;gBACX,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK;gBACzB,YAAY,EAAE,EAAE,CAAC,OAAO;aACzB,CAAC,CACH,CAAC;YAEF,MAAM,wBAAwB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAC1D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,mBAAmB,CACvC,CAAC;
|
1
|
+
{"version":3,"file":"ServiceQueryBuilderState.js","sourceRoot":"","sources":["../../../src/stores/workflows/ServiceQueryBuilderState.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": "0.0
|
3
|
+
"version": "0.1.0",
|
4
4
|
"description": "Legend query builder core",
|
5
5
|
"keywords": [
|
6
6
|
"legend",
|
@@ -44,13 +44,14 @@
|
|
44
44
|
"@ag-grid-community/client-side-row-model": "28.1.1",
|
45
45
|
"@ag-grid-community/core": "28.1.1",
|
46
46
|
"@ag-grid-community/react": "28.1.1",
|
47
|
-
"@finos/legend-application": "
|
48
|
-
"@finos/legend-art": "3.2.
|
49
|
-
"@finos/legend-graph": "
|
50
|
-
"@finos/legend-
|
51
|
-
"@finos/legend-
|
47
|
+
"@finos/legend-application": "8.0.0",
|
48
|
+
"@finos/legend-art": "3.2.2",
|
49
|
+
"@finos/legend-graph": "16.0.0",
|
50
|
+
"@finos/legend-server-depot": "4.0.0",
|
51
|
+
"@finos/legend-shared": "6.1.2",
|
52
|
+
"@finos/legend-storage": "3.0.11",
|
52
53
|
"@testing-library/react": "13.4.0",
|
53
|
-
"@types/react": "18.0.
|
54
|
+
"@types/react": "18.0.21",
|
54
55
|
"@types/react-dom": "18.0.6",
|
55
56
|
"@types/react-router-dom": "5.3.3",
|
56
57
|
"date-fns": "2.29.3",
|
@@ -62,19 +63,20 @@
|
|
62
63
|
"react-dnd": "16.0.1",
|
63
64
|
"react-dom": "18.2.0",
|
64
65
|
"react-hotkeys": "2.0.0",
|
66
|
+
"react-resize-detector": "7.1.2",
|
65
67
|
"react-router": "5.3.3",
|
66
68
|
"react-router-dom": "5.3.3",
|
67
69
|
"serializr": "2.0.5"
|
68
70
|
},
|
69
71
|
"devDependencies": {
|
70
|
-
"@finos/legend-dev-utils": "2.0.
|
72
|
+
"@finos/legend-dev-utils": "2.0.17",
|
71
73
|
"@jest/globals": "29.0.3",
|
72
74
|
"cross-env": "7.0.3",
|
73
|
-
"eslint": "8.
|
75
|
+
"eslint": "8.24.0",
|
74
76
|
"jest": "29.0.3",
|
75
77
|
"npm-run-all": "4.1.5",
|
76
78
|
"rimraf": "3.0.2",
|
77
|
-
"sass": "1.
|
79
|
+
"sass": "1.55.0",
|
78
80
|
"typescript": "4.8.3"
|
79
81
|
},
|
80
82
|
"peerDependencies": {
|
@@ -32,6 +32,7 @@ import {
|
|
32
32
|
CheckIcon,
|
33
33
|
CaretDownIcon,
|
34
34
|
CogIcon,
|
35
|
+
DiffIcon,
|
35
36
|
} from '@finos/legend-art';
|
36
37
|
import { QueryBuilderFilterPanel } from './filter/QueryBuilderFilterPanel.js';
|
37
38
|
import { QueryBuilderExplorerPanel } from './explorer/QueryBuilderExplorerPanel.js';
|
@@ -49,6 +50,7 @@ import { QueryBuilderParametersPanel } from './QueryBuilderParametersPanel.js';
|
|
49
50
|
import { QueryBuilderPostFilterPanel } from './fetch-structure/QueryBuilderPostFilterPanel.js';
|
50
51
|
import { QueryBuilderFunctionsExplorerPanel } from './explorer/QueryBuilderFunctionsExplorerPanel.js';
|
51
52
|
import { QueryBuilderProjectionState } from '../stores/fetch-structure/projection/QueryBuilderProjectionState.js';
|
53
|
+
import { QueryBuilderDiffViewPanel } from './QueryBuilderDiffPanel.js';
|
52
54
|
|
53
55
|
enum QUERY_BUILDER_HOTKEY {
|
54
56
|
COMPILE = 'COMPILE',
|
@@ -62,6 +64,8 @@ const QueryBuilderStatusBar = observer(
|
|
62
64
|
(props: { queryBuilderState: QueryBuilderState }) => {
|
63
65
|
const { queryBuilderState } = props;
|
64
66
|
const applicationStore = useApplicationStore();
|
67
|
+
const showDiff = (): void =>
|
68
|
+
queryBuilderState.changeDetectionState.showDiffViewPanel();
|
65
69
|
const openLambdaEditor = (mode: QueryBuilderTextEditorMode): void =>
|
66
70
|
queryBuilderState.textEditorState.openModal(mode);
|
67
71
|
const compile = applicationStore.guardUnhandledError(() =>
|
@@ -72,6 +76,32 @@ const QueryBuilderStatusBar = observer(
|
|
72
76
|
<div className="query-builder__status-bar">
|
73
77
|
<div className="query-builder__status-bar__left"></div>
|
74
78
|
<div className="query-builder__status-bar__right">
|
79
|
+
{queryBuilderState.changeDetectionState.initState.hasCompleted && (
|
80
|
+
<>
|
81
|
+
<button
|
82
|
+
className={clsx(
|
83
|
+
'query-builder__status-bar__action query-builder__status-bar__view-diff-btn',
|
84
|
+
)}
|
85
|
+
disabled={!queryBuilderState.changeDetectionState.hasChanged}
|
86
|
+
onClick={showDiff}
|
87
|
+
tabIndex={-1}
|
88
|
+
title={
|
89
|
+
queryBuilderState.changeDetectionState.hasChanged
|
90
|
+
? 'Show changes'
|
91
|
+
: 'Query has not been changed'
|
92
|
+
}
|
93
|
+
>
|
94
|
+
<DiffIcon />
|
95
|
+
</button>
|
96
|
+
{queryBuilderState.changeDetectionState.diffViewState && (
|
97
|
+
<QueryBuilderDiffViewPanel
|
98
|
+
diffViewState={
|
99
|
+
queryBuilderState.changeDetectionState.diffViewState
|
100
|
+
}
|
101
|
+
/>
|
102
|
+
)}
|
103
|
+
</>
|
104
|
+
)}
|
75
105
|
<button
|
76
106
|
className={clsx(
|
77
107
|
'query-builder__status-bar__action query-builder__status-bar__compile-btn',
|
@@ -90,6 +120,11 @@ const QueryBuilderStatusBar = observer(
|
|
90
120
|
<button
|
91
121
|
className={clsx(
|
92
122
|
'query-builder__status-bar__action query-builder__status-bar__action__toggler',
|
123
|
+
{
|
124
|
+
'query-builder__status-bar__action__toggler--toggled':
|
125
|
+
queryBuilderState.textEditorState.mode ===
|
126
|
+
QueryBuilderTextEditorMode.JSON,
|
127
|
+
},
|
93
128
|
)}
|
94
129
|
onClick={(): void =>
|
95
130
|
openLambdaEditor(QueryBuilderTextEditorMode.JSON)
|
@@ -100,12 +135,17 @@ const QueryBuilderStatusBar = observer(
|
|
100
135
|
<button
|
101
136
|
className={clsx(
|
102
137
|
'query-builder__status-bar__action query-builder__status-bar__action__toggler',
|
138
|
+
{
|
139
|
+
'query-builder__status-bar__action__toggler--toggled':
|
140
|
+
queryBuilderState.textEditorState.mode ===
|
141
|
+
QueryBuilderTextEditorMode.TEXT,
|
142
|
+
},
|
103
143
|
)}
|
104
144
|
onClick={(): void =>
|
105
145
|
openLambdaEditor(QueryBuilderTextEditorMode.TEXT)
|
106
146
|
}
|
107
147
|
tabIndex={-1}
|
108
|
-
title="View Pure
|
148
|
+
title="View Query in Pure"
|
109
149
|
>
|
110
150
|
<HackerIcon />
|
111
151
|
</button>
|
@@ -0,0 +1,222 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
3
|
+
*
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
* you may not use this file except in compliance with the License.
|
6
|
+
* You may obtain a copy of the License at
|
7
|
+
*
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
*
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
* See the License for the specific language governing permissions and
|
14
|
+
* limitations under the License.
|
15
|
+
*/
|
16
|
+
|
17
|
+
import {
|
18
|
+
EDITOR_LANGUAGE,
|
19
|
+
EDITOR_THEME,
|
20
|
+
TAB_SIZE,
|
21
|
+
useApplicationStore,
|
22
|
+
} from '@finos/legend-application';
|
23
|
+
import { useResizeDetector } from 'react-resize-detector';
|
24
|
+
import {
|
25
|
+
baseTextEditorSettings,
|
26
|
+
clsx,
|
27
|
+
Dialog,
|
28
|
+
disableEditorHotKeys,
|
29
|
+
disposeDiffEditor,
|
30
|
+
} from '@finos/legend-art';
|
31
|
+
import { observer } from 'mobx-react-lite';
|
32
|
+
import { editor as monacoEditorAPI } from 'monaco-editor';
|
33
|
+
import { useEffect, useRef, useState } from 'react';
|
34
|
+
import {
|
35
|
+
type QueryBuilderDiffViewState,
|
36
|
+
QueryBuilderDiffViewMode,
|
37
|
+
} from '../stores/QueryBuilderChangeDetectionState.js';
|
38
|
+
import { prettyCONSTName } from '@finos/legend-shared';
|
39
|
+
import { pruneSourceInformation } from '@finos/legend-graph';
|
40
|
+
|
41
|
+
const TextDiffView = observer(
|
42
|
+
(props: {
|
43
|
+
language: EDITOR_LANGUAGE;
|
44
|
+
from?: string | undefined;
|
45
|
+
to?: string | undefined;
|
46
|
+
}) => {
|
47
|
+
const { from, to, language } = props;
|
48
|
+
const applicationStore = useApplicationStore();
|
49
|
+
const [editor, setEditor] =
|
50
|
+
useState<monacoEditorAPI.IStandaloneDiffEditor>();
|
51
|
+
const editorRef = useRef<HTMLDivElement>(null);
|
52
|
+
const originalText = from ?? '';
|
53
|
+
const modifiedText = to ?? '';
|
54
|
+
|
55
|
+
const { ref, width, height } = useResizeDetector<HTMLDivElement>();
|
56
|
+
|
57
|
+
useEffect(() => {
|
58
|
+
if (width !== undefined && height !== undefined) {
|
59
|
+
editor?.layout({ width, height });
|
60
|
+
}
|
61
|
+
}, [editor, width, height]);
|
62
|
+
|
63
|
+
useEffect(() => {
|
64
|
+
if (!editor && editorRef.current) {
|
65
|
+
const element = editorRef.current;
|
66
|
+
const _editor = monacoEditorAPI.createDiffEditor(element, {
|
67
|
+
...baseTextEditorSettings,
|
68
|
+
theme: applicationStore.TEMPORARY__isLightThemeEnabled
|
69
|
+
? EDITOR_THEME.TEMPORARY__VSCODE_LIGHT
|
70
|
+
: EDITOR_THEME.LEGEND,
|
71
|
+
readOnly: true,
|
72
|
+
wordWrap: 'on',
|
73
|
+
});
|
74
|
+
disableEditorHotKeys(_editor);
|
75
|
+
setEditor(_editor);
|
76
|
+
}
|
77
|
+
}, [applicationStore, editor]);
|
78
|
+
|
79
|
+
if (editor) {
|
80
|
+
const originalModel = monacoEditorAPI.createModel(originalText, language);
|
81
|
+
const modifiedModel = monacoEditorAPI.createModel(modifiedText, language);
|
82
|
+
editor.setModel({
|
83
|
+
original: originalModel,
|
84
|
+
modified: modifiedModel,
|
85
|
+
});
|
86
|
+
}
|
87
|
+
|
88
|
+
useEffect(
|
89
|
+
() => (): void => {
|
90
|
+
if (editor) {
|
91
|
+
disposeDiffEditor(editor);
|
92
|
+
}
|
93
|
+
},
|
94
|
+
[editor],
|
95
|
+
); // dispose editor
|
96
|
+
|
97
|
+
return (
|
98
|
+
<div ref={ref} className="text-editor__container">
|
99
|
+
<div className="text-editor__body" ref={editorRef} />
|
100
|
+
</div>
|
101
|
+
);
|
102
|
+
},
|
103
|
+
);
|
104
|
+
|
105
|
+
export const QueryBuilderDiffViewPanel = observer(
|
106
|
+
(props: { diffViewState: QueryBuilderDiffViewState }) => {
|
107
|
+
const { diffViewState } = props;
|
108
|
+
const fromGrammarText = diffViewState.initialQueryGrammarText;
|
109
|
+
const toGrammarText = diffViewState.currentQueryGrammarText;
|
110
|
+
|
111
|
+
// actions
|
112
|
+
const onChangeMode =
|
113
|
+
(mode: QueryBuilderDiffViewMode): (() => void) =>
|
114
|
+
(): void => {
|
115
|
+
diffViewState.setMode(mode);
|
116
|
+
};
|
117
|
+
const close = (): void =>
|
118
|
+
diffViewState.changeDetectionState.hideDiffViewPanel();
|
119
|
+
|
120
|
+
useEffect(() => {
|
121
|
+
diffViewState.generateGrammarDiff();
|
122
|
+
}, [diffViewState]);
|
123
|
+
|
124
|
+
return (
|
125
|
+
<Dialog
|
126
|
+
open={Boolean(diffViewState)}
|
127
|
+
onClose={close}
|
128
|
+
classes={{
|
129
|
+
root: 'editor-modal__root-container',
|
130
|
+
container: 'editor-modal__container',
|
131
|
+
paper: 'editor-modal__content',
|
132
|
+
}}
|
133
|
+
>
|
134
|
+
<div
|
135
|
+
className={clsx(
|
136
|
+
'modal modal--dark editor-modal query-builder-text-mode__modal',
|
137
|
+
)}
|
138
|
+
>
|
139
|
+
<div className="query-builder__diff-panel">
|
140
|
+
<div className="query-builder__diff-panel__header">
|
141
|
+
{Object.values(QueryBuilderDiffViewMode).map((mode) => (
|
142
|
+
<button
|
143
|
+
onClick={onChangeMode(mode)}
|
144
|
+
className={clsx('query-builder__diff-panel__mode', {
|
145
|
+
'query-builder__diff-panel__mode--selected':
|
146
|
+
mode === diffViewState.mode,
|
147
|
+
})}
|
148
|
+
key={mode}
|
149
|
+
>
|
150
|
+
{prettyCONSTName(mode)}
|
151
|
+
</button>
|
152
|
+
))}
|
153
|
+
</div>
|
154
|
+
<div className="query-builder__diff-panel__content">
|
155
|
+
{diffViewState.mode === QueryBuilderDiffViewMode.GRAMMAR && (
|
156
|
+
<TextDiffView
|
157
|
+
language={EDITOR_LANGUAGE.PURE}
|
158
|
+
from={fromGrammarText}
|
159
|
+
to={toGrammarText}
|
160
|
+
/>
|
161
|
+
)}
|
162
|
+
{diffViewState.mode === QueryBuilderDiffViewMode.JSON && (
|
163
|
+
<TextDiffView
|
164
|
+
language={EDITOR_LANGUAGE.JSON}
|
165
|
+
from={JSON.stringify(
|
166
|
+
{
|
167
|
+
parameters: diffViewState.initialQuery.parameters
|
168
|
+
? pruneSourceInformation(
|
169
|
+
diffViewState.initialQuery.parameters as Record<
|
170
|
+
PropertyKey,
|
171
|
+
unknown
|
172
|
+
>,
|
173
|
+
)
|
174
|
+
: undefined,
|
175
|
+
body: diffViewState.initialQuery.body
|
176
|
+
? pruneSourceInformation(
|
177
|
+
diffViewState.initialQuery.body as Record<
|
178
|
+
PropertyKey,
|
179
|
+
unknown
|
180
|
+
>,
|
181
|
+
)
|
182
|
+
: undefined,
|
183
|
+
},
|
184
|
+
null,
|
185
|
+
TAB_SIZE,
|
186
|
+
)}
|
187
|
+
to={JSON.stringify(
|
188
|
+
{
|
189
|
+
parameters: diffViewState.currentQuery.parameters
|
190
|
+
? pruneSourceInformation(
|
191
|
+
diffViewState.currentQuery.parameters as Record<
|
192
|
+
PropertyKey,
|
193
|
+
unknown
|
194
|
+
>,
|
195
|
+
)
|
196
|
+
: undefined,
|
197
|
+
body: diffViewState.currentQuery.body
|
198
|
+
? pruneSourceInformation(
|
199
|
+
diffViewState.currentQuery.body as Record<
|
200
|
+
PropertyKey,
|
201
|
+
unknown
|
202
|
+
>,
|
203
|
+
)
|
204
|
+
: undefined,
|
205
|
+
},
|
206
|
+
null,
|
207
|
+
TAB_SIZE,
|
208
|
+
)}
|
209
|
+
/>
|
210
|
+
)}
|
211
|
+
</div>
|
212
|
+
<div className="query-builder__diff-panel__actions">
|
213
|
+
<button className="btn btn--dark" onClick={close}>
|
214
|
+
Close
|
215
|
+
</button>
|
216
|
+
</div>
|
217
|
+
</div>
|
218
|
+
</div>
|
219
|
+
</Dialog>
|
220
|
+
);
|
221
|
+
},
|
222
|
+
);
|
@@ -131,13 +131,13 @@ const VariableExpressionEditor = observer(
|
|
131
131
|
if (
|
132
132
|
value === MULTIPLICITY_INFINITE ||
|
133
133
|
value === '' ||
|
134
|
-
!isNaN(parseInt(value))
|
134
|
+
!isNaN(parseInt(value, 10))
|
135
135
|
) {
|
136
136
|
lambdaParameterState.changeMultiplicity(
|
137
137
|
multiplity.lowerBound,
|
138
138
|
value === MULTIPLICITY_INFINITE || value === ''
|
139
139
|
? undefined
|
140
|
-
: parseInt(value),
|
140
|
+
: parseInt(value, 10),
|
141
141
|
);
|
142
142
|
setUppBound(value);
|
143
143
|
}
|
@@ -370,7 +370,7 @@ export const QueryBuilderParametersPanel = observer(
|
|
370
370
|
<div className="panel__header__title">
|
371
371
|
<div className="panel__header__title__label">parameters</div>
|
372
372
|
</div>
|
373
|
-
{!isReadOnly && queryBuilderState.isParameterSupportDisabled && (
|
373
|
+
{!isReadOnly && !queryBuilderState.isParameterSupportDisabled && (
|
374
374
|
<div className="panel__header__actions">
|
375
375
|
<button
|
376
376
|
className="panel__header__action"
|
@@ -26,6 +26,7 @@ import {
|
|
26
26
|
ContextMenu,
|
27
27
|
clsx,
|
28
28
|
PauseCircleIcon,
|
29
|
+
ExclamationTriangleIcon,
|
29
30
|
} from '@finos/legend-art';
|
30
31
|
import { observer } from 'mobx-react-lite';
|
31
32
|
import { flowResult } from 'mobx';
|
@@ -325,7 +326,9 @@ const QueryBuilderGridResult = observer(
|
|
325
326
|
) : null
|
326
327
|
}
|
327
328
|
disabled={
|
328
|
-
!(
|
329
|
+
!(
|
330
|
+
fetchStructureImplementation instanceof QueryBuilderProjectionState
|
331
|
+
) || !queryBuilderState.isQuerySupported
|
329
332
|
}
|
330
333
|
menuProps={{ elevation: 7 }}
|
331
334
|
key={executionResult._UUID}
|
@@ -374,20 +377,18 @@ const QueryBuilderResultValues = observer(
|
|
374
377
|
isReadOnly={true}
|
375
378
|
/>
|
376
379
|
);
|
377
|
-
} else {
|
378
|
-
const executionResultString = JSON.stringify(
|
379
|
-
extractExecutionResultValues(executionResult),
|
380
|
-
null,
|
381
|
-
TAB_SIZE,
|
382
|
-
);
|
383
|
-
return (
|
384
|
-
<TextInputEditor
|
385
|
-
language={EDITOR_LANGUAGE.JSON}
|
386
|
-
inputValue={executionResultString}
|
387
|
-
isReadOnly={true}
|
388
|
-
/>
|
389
|
-
);
|
390
380
|
}
|
381
|
+
return (
|
382
|
+
<TextInputEditor
|
383
|
+
language={EDITOR_LANGUAGE.JSON}
|
384
|
+
inputValue={JSON.stringify(
|
385
|
+
extractExecutionResultValues(executionResult),
|
386
|
+
null,
|
387
|
+
TAB_SIZE,
|
388
|
+
)}
|
389
|
+
isReadOnly={true}
|
390
|
+
/>
|
391
|
+
);
|
391
392
|
},
|
392
393
|
);
|
393
394
|
|
@@ -475,10 +476,12 @@ export const QueryBuilderResultPanel = observer(
|
|
475
476
|
};
|
476
477
|
const allowSettingPreviewLimit = queryBuilderState.isQuerySupported;
|
477
478
|
const resultSetSize = (result: ExecutionResult | undefined): string =>
|
478
|
-
result
|
479
|
-
?
|
480
|
-
|
481
|
-
|
479
|
+
result
|
480
|
+
? result instanceof TdsExecutionResult
|
481
|
+
? `${
|
482
|
+
result.result.rows.length
|
483
|
+
} row(s) in ${resultState.executionDuration?.toString()} ms`
|
484
|
+
: `run in ${resultState.executionDuration?.toString()} ms`
|
482
485
|
: '';
|
483
486
|
|
484
487
|
return (
|
@@ -489,6 +492,16 @@ export const QueryBuilderResultPanel = observer(
|
|
489
492
|
<div className="query-builder__result__analytics">
|
490
493
|
{resultSetSize(executionResult)}
|
491
494
|
</div>
|
495
|
+
{executionResult && resultState.checkForStaleResults && (
|
496
|
+
<div className="query-builder__result__stale-status">
|
497
|
+
<div className="query-builder__result__stale-status__icon">
|
498
|
+
<ExclamationTriangleIcon />
|
499
|
+
</div>
|
500
|
+
<div className="query-builder__result__stale-status__label">
|
501
|
+
Preview data might be stale
|
502
|
+
</div>
|
503
|
+
</div>
|
504
|
+
)}
|
492
505
|
</div>
|
493
506
|
<div className="panel__header__actions query-builder__result__header__actions">
|
494
507
|
{allowSettingPreviewLimit && (
|
@@ -49,7 +49,7 @@ import {
|
|
49
49
|
buildElementOption,
|
50
50
|
useApplicationStore,
|
51
51
|
} from '@finos/legend-application';
|
52
|
-
import { MilestoningParametersEditor } from './explorer/
|
52
|
+
import { MilestoningParametersEditor } from './explorer/QueryBuilderMilestoningEditor.js';
|
53
53
|
|
54
54
|
const getParameterValue = (
|
55
55
|
parameter: ValueSpecification | undefined,
|