@finos/legend-query-builder 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- package/LICENSE +201 -0
- package/README.md +3 -0
- package/lib/components/QueryBuilder.d.ts +22 -0
- package/lib/components/QueryBuilder.d.ts.map +1 -0
- package/lib/components/QueryBuilder.js +111 -0
- package/lib/components/QueryBuilder.js.map +1 -0
- package/lib/components/QueryBuilderComponentTestUtils.d.ts +24 -0
- package/lib/components/QueryBuilderComponentTestUtils.d.ts.map +1 -0
- package/lib/components/QueryBuilderComponentTestUtils.js +54 -0
- package/lib/components/QueryBuilderComponentTestUtils.js.map +1 -0
- package/lib/components/QueryBuilderParametersPanel.d.ts +31 -0
- package/lib/components/QueryBuilderParametersPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderParametersPanel.js +128 -0
- package/lib/components/QueryBuilderParametersPanel.js.map +1 -0
- package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts +29 -0
- package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts.map +1 -0
- package/lib/components/QueryBuilderPropertyExpressionEditor.js +116 -0
- package/lib/components/QueryBuilderPropertyExpressionEditor.js.map +1 -0
- package/lib/components/QueryBuilderResultPanel.d.ts +22 -0
- package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderResultPanel.js +242 -0
- package/lib/components/QueryBuilderResultPanel.js.map +1 -0
- package/lib/components/QueryBuilderSideBar.d.ts +41 -0
- package/lib/components/QueryBuilderSideBar.d.ts.map +1 -0
- package/lib/components/QueryBuilderSideBar.js +169 -0
- package/lib/components/QueryBuilderSideBar.js.map +1 -0
- package/lib/components/QueryBuilderTextEditor.d.ts +22 -0
- package/lib/components/QueryBuilderTextEditor.d.ts.map +1 -0
- package/lib/components/QueryBuilderTextEditor.js +48 -0
- package/lib/components/QueryBuilderTextEditor.js.map +1 -0
- package/lib/components/QueryBuilderUnsupportedQueryEditor.d.ts +22 -0
- package/lib/components/QueryBuilderUnsupportedQueryEditor.d.ts.map +1 -0
- package/lib/components/QueryBuilderUnsupportedQueryEditor.js +36 -0
- package/lib/components/QueryBuilderUnsupportedQueryEditor.js.map +1 -0
- package/lib/components/QueryBuilder_TestID.d.ts +26 -0
- package/lib/components/QueryBuilder_TestID.d.ts.map +1 -0
- package/lib/components/QueryBuilder_TestID.js +27 -0
- package/lib/components/QueryBuilder_TestID.js.map +1 -0
- package/lib/components/explorer/QueryBuilderExplorerPanel.d.ts +36 -0
- package/lib/components/explorer/QueryBuilderExplorerPanel.d.ts.map +1 -0
- package/lib/components/explorer/QueryBuilderExplorerPanel.js +340 -0
- package/lib/components/explorer/QueryBuilderExplorerPanel.js.map +1 -0
- package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.d.ts +22 -0
- package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.d.ts.map +1 -0
- package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.js +147 -0
- package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.js.map +1 -0
- package/lib/components/explorer/QueryBuilderMilestoneEditor.d.ts +22 -0
- package/lib/components/explorer/QueryBuilderMilestoneEditor.d.ts.map +1 -0
- package/lib/components/explorer/QueryBuilderMilestoneEditor.js +122 -0
- package/lib/components/explorer/QueryBuilderMilestoneEditor.js.map +1 -0
- package/lib/components/explorer/QueryBuilderPropertySearchPanel.d.ts +23 -0
- package/lib/components/explorer/QueryBuilderPropertySearchPanel.d.ts.map +1 -0
- package/lib/components/explorer/QueryBuilderPropertySearchPanel.js +200 -0
- package/lib/components/explorer/QueryBuilderPropertySearchPanel.js.map +1 -0
- package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.d.ts +22 -0
- package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.d.ts.map +1 -0
- package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.js +52 -0
- package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.js.map +1 -0
- package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.d.ts +31 -0
- package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.d.ts.map +1 -0
- package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.js +94 -0
- package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.js.map +1 -0
- package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.d.ts +30 -0
- package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.d.ts.map +1 -0
- package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js +378 -0
- package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js.map +1 -0
- package/lib/components/fetch-structure/QueryBuilderProjectionPanel.d.ts +22 -0
- package/lib/components/fetch-structure/QueryBuilderProjectionPanel.d.ts.map +1 -0
- package/lib/components/fetch-structure/QueryBuilderProjectionPanel.js +216 -0
- package/lib/components/fetch-structure/QueryBuilderProjectionPanel.js.map +1 -0
- package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.d.ts +22 -0
- package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.d.ts.map +1 -0
- package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.js +88 -0
- package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.js.map +1 -0
- package/lib/components/filter/QueryBuilderFilterPanel.d.ts +22 -0
- package/lib/components/filter/QueryBuilderFilterPanel.d.ts.map +1 -0
- package/lib/components/filter/QueryBuilderFilterPanel.js +316 -0
- package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -0
- package/lib/components/shared/ElementIconUtils.d.ts +18 -0
- package/lib/components/shared/ElementIconUtils.d.ts.map +1 -0
- package/lib/components/shared/ElementIconUtils.js +37 -0
- package/lib/components/shared/ElementIconUtils.js.map +1 -0
- package/lib/components/shared/QueryBuilderLambdaEditor.d.ts +42 -0
- package/lib/components/shared/QueryBuilderLambdaEditor.d.ts.map +1 -0
- package/lib/components/shared/QueryBuilderLambdaEditor.js +47 -0
- package/lib/components/shared/QueryBuilderLambdaEditor.js.map +1 -0
- package/lib/components/shared/QueryBuilderPanelIssueCountBadge.d.ts +20 -0
- package/lib/components/shared/QueryBuilderPanelIssueCountBadge.d.ts.map +1 -0
- package/lib/components/shared/QueryBuilderPanelIssueCountBadge.js +28 -0
- package/lib/components/shared/QueryBuilderPanelIssueCountBadge.js.map +1 -0
- package/lib/components/shared/QueryBuilderPropertyInfoTooltip.d.ts +26 -0
- package/lib/components/shared/QueryBuilderPropertyInfoTooltip.d.ts.map +1 -0
- package/lib/components/shared/QueryBuilderPropertyInfoTooltip.js +32 -0
- package/lib/components/shared/QueryBuilderPropertyInfoTooltip.js.map +1 -0
- package/lib/components/workflows/ClassQueryBuilder.d.ts +18 -0
- package/lib/components/workflows/ClassQueryBuilder.d.ts.map +1 -0
- package/lib/components/workflows/ClassQueryBuilder.js +87 -0
- package/lib/components/workflows/ClassQueryBuilder.js.map +1 -0
- package/lib/components/workflows/MappingQueryBuilder.d.ts +18 -0
- package/lib/components/workflows/MappingQueryBuilder.d.ts.map +1 -0
- package/lib/components/workflows/MappingQueryBuilder.js +88 -0
- package/lib/components/workflows/MappingQueryBuilder.js.map +1 -0
- package/lib/components/workflows/ServiceQueryBuilder.d.ts +18 -0
- package/lib/components/workflows/ServiceQueryBuilder.d.ts.map +1 -0
- package/lib/components/workflows/ServiceQueryBuilder.js +69 -0
- package/lib/components/workflows/ServiceQueryBuilder.js.map +1 -0
- package/lib/graphManager/QueryBuilderSupportedFunctions.d.ts +60 -0
- package/lib/graphManager/QueryBuilderSupportedFunctions.d.ts.map +1 -0
- package/lib/graphManager/QueryBuilderSupportedFunctions.js +65 -0
- package/lib/graphManager/QueryBuilderSupportedFunctions.js.map +1 -0
- package/lib/graphManager/QueryBuilder_GraphManagerPlugin.d.ts +21 -0
- package/lib/graphManager/QueryBuilder_GraphManagerPlugin.d.ts.map +1 -0
- package/lib/graphManager/QueryBuilder_GraphManagerPlugin.js +27 -0
- package/lib/graphManager/QueryBuilder_GraphManagerPlugin.js.map +1 -0
- package/lib/graphManager/QueryBuilder_GraphManagerPreset.d.ts +24 -0
- package/lib/graphManager/QueryBuilder_GraphManagerPreset.d.ts.map +1 -0
- package/lib/graphManager/QueryBuilder_GraphManagerPreset.js +32 -0
- package/lib/graphManager/QueryBuilder_GraphManagerPreset.js.map +1 -0
- package/lib/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.d.ts +21 -0
- package/lib/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.d.ts.map +1 -0
- package/lib/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.js +20 -0
- package/lib/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.js.map +1 -0
- package/lib/graphManager/action/analytics/ServiceExecutionAnalysis.d.ts +21 -0
- package/lib/graphManager/action/analytics/ServiceExecutionAnalysis.d.ts.map +1 -0
- package/lib/graphManager/action/analytics/ServiceExecutionAnalysis.js +20 -0
- package/lib/graphManager/action/analytics/ServiceExecutionAnalysis.js.map +1 -0
- package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.d.ts +25 -0
- package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.d.ts.map +1 -0
- package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.js +21 -0
- package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.js.map +1 -0
- package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.d.ts +18 -0
- package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.d.ts.map +1 -0
- package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.js +20 -0
- package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.js.map +1 -0
- package/lib/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.d.ts +22 -0
- package/lib/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.d.ts.map +1 -0
- package/lib/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.js +70 -0
- package/lib/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.js.map +1 -0
- package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.d.ts +22 -0
- package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.d.ts.map +1 -0
- package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.js +207 -0
- package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.js.map +1 -0
- package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.d.ts +18 -0
- package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.d.ts.map +1 -0
- package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.js +18 -0
- package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.js.map +1 -0
- package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.d.ts +29 -0
- package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.d.ts.map +1 -0
- package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.js +182 -0
- package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.js.map +1 -0
- package/lib/index.css +17 -0
- package/lib/index.css.map +1 -0
- package/lib/index.d.ts +28 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +26 -0
- package/lib/index.js.map +1 -0
- package/lib/package.json +95 -0
- package/lib/stores/QueryBuilderBootstraper.d.ts +17 -0
- package/lib/stores/QueryBuilderBootstraper.d.ts.map +1 -0
- package/lib/stores/QueryBuilderBootstraper.js +22 -0
- package/lib/stores/QueryBuilderBootstraper.js.map +1 -0
- package/lib/stores/QueryBuilderChangeDetectionState.d.ts +25 -0
- package/lib/stores/QueryBuilderChangeDetectionState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderChangeDetectionState.js +32 -0
- package/lib/stores/QueryBuilderChangeDetectionState.js.map +1 -0
- package/lib/stores/QueryBuilderConfig.d.ts +32 -0
- package/lib/stores/QueryBuilderConfig.d.ts.map +1 -0
- package/lib/stores/QueryBuilderConfig.js +34 -0
- package/lib/stores/QueryBuilderConfig.js.map +1 -0
- package/lib/stores/QueryBuilderGroupOperationHelper.d.ts +22 -0
- package/lib/stores/QueryBuilderGroupOperationHelper.d.ts.map +1 -0
- package/lib/stores/QueryBuilderGroupOperationHelper.js +43 -0
- package/lib/stores/QueryBuilderGroupOperationHelper.js.map +1 -0
- package/lib/stores/QueryBuilderMilestoningState.d.ts +32 -0
- package/lib/stores/QueryBuilderMilestoningState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderMilestoningState.js +95 -0
- package/lib/stores/QueryBuilderMilestoningState.js.map +1 -0
- package/lib/stores/QueryBuilderParametersState.d.ts +28 -0
- package/lib/stores/QueryBuilderParametersState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderParametersState.js +39 -0
- package/lib/stores/QueryBuilderParametersState.js.map +1 -0
- package/lib/stores/QueryBuilderPreviewDataHelper.d.ts +26 -0
- package/lib/stores/QueryBuilderPreviewDataHelper.d.ts.map +1 -0
- package/lib/stores/QueryBuilderPreviewDataHelper.js +138 -0
- package/lib/stores/QueryBuilderPreviewDataHelper.js.map +1 -0
- package/lib/stores/QueryBuilderPropertyEditorState.d.ts +62 -0
- package/lib/stores/QueryBuilderPropertyEditorState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderPropertyEditorState.js +395 -0
- package/lib/stores/QueryBuilderPropertyEditorState.js.map +1 -0
- package/lib/stores/QueryBuilderResultState.d.ts +41 -0
- package/lib/stores/QueryBuilderResultState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderResultState.js +176 -0
- package/lib/stores/QueryBuilderResultState.js.map +1 -0
- package/lib/stores/QueryBuilderState.d.ts +110 -0
- package/lib/stores/QueryBuilderState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderState.js +334 -0
- package/lib/stores/QueryBuilderState.js.map +1 -0
- package/lib/stores/QueryBuilderStateBuilder.d.ts +124 -0
- package/lib/stores/QueryBuilderStateBuilder.d.ts.map +1 -0
- package/lib/stores/QueryBuilderStateBuilder.js +311 -0
- package/lib/stores/QueryBuilderStateBuilder.js.map +1 -0
- package/lib/stores/QueryBuilderStateTestUtils.d.ts +24 -0
- package/lib/stores/QueryBuilderStateTestUtils.d.ts.map +1 -0
- package/lib/stores/QueryBuilderStateTestUtils.js +50 -0
- package/lib/stores/QueryBuilderStateTestUtils.js.map +1 -0
- package/lib/stores/QueryBuilderTextEditorState.d.ts +49 -0
- package/lib/stores/QueryBuilderTextEditorState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderTextEditorState.js +145 -0
- package/lib/stores/QueryBuilderTextEditorState.js.map +1 -0
- package/lib/stores/QueryBuilderTypeaheadHelper.d.ts +24 -0
- package/lib/stores/QueryBuilderTypeaheadHelper.d.ts.map +1 -0
- package/lib/stores/QueryBuilderTypeaheadHelper.js +85 -0
- package/lib/stores/QueryBuilderTypeaheadHelper.js.map +1 -0
- package/lib/stores/QueryBuilderUnsupportedQueryState.d.ts +26 -0
- package/lib/stores/QueryBuilderUnsupportedQueryState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderUnsupportedQueryState.js +37 -0
- package/lib/stores/QueryBuilderUnsupportedQueryState.js.map +1 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilder.d.ts +20 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilder.d.ts.map +1 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilder.js +87 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilder.js.map +1 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts +27 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts.map +1 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js +161 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js.map +1 -0
- package/lib/stores/QueryBuilderValueSpecificationHelper.d.ts +61 -0
- package/lib/stores/QueryBuilderValueSpecificationHelper.d.ts.map +1 -0
- package/lib/stores/QueryBuilderValueSpecificationHelper.js +235 -0
- package/lib/stores/QueryBuilderValueSpecificationHelper.js.map +1 -0
- package/lib/stores/explorer/QueryBuilderExplorerState.d.ts +99 -0
- package/lib/stores/explorer/QueryBuilderExplorerState.d.ts.map +1 -0
- package/lib/stores/explorer/QueryBuilderExplorerState.js +446 -0
- package/lib/stores/explorer/QueryBuilderExplorerState.js.map +1 -0
- package/lib/stores/explorer/QueryBuilderPropertySearchState.d.ts +46 -0
- package/lib/stores/explorer/QueryBuilderPropertySearchState.d.ts.map +1 -0
- package/lib/stores/explorer/QueryBuilderPropertySearchState.js +242 -0
- package/lib/stores/explorer/QueryBuilderPropertySearchState.js.map +1 -0
- package/lib/stores/explorer/QueryFunctionsExplorerState.d.ts +59 -0
- package/lib/stores/explorer/QueryFunctionsExplorerState.d.ts.map +1 -0
- package/lib/stores/explorer/QueryFunctionsExplorerState.js +228 -0
- package/lib/stores/explorer/QueryFunctionsExplorerState.js.map +1 -0
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts +40 -0
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts.map +1 -0
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js +34 -0
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js.map +1 -0
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.d.ts +27 -0
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.d.ts.map +1 -0
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.js +73 -0
- package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.js.map +1 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts +49 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts.map +1 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js +157 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js.map +1 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.d.ts +20 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.d.ts.map +1 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.js +62 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.js.map +1 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.d.ts +42 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.d.ts.map +1 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js +173 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js.map +1 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.d.ts +26 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.d.ts.map +1 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.js +72 -0
- package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.js.map +1 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.d.ts +73 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js +187 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js.map +1 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.d.ts +68 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.js +305 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.js.map +1 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionStateBuilder.d.ts +25 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionStateBuilder.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionStateBuilder.js +186 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionStateBuilder.js.map +1 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.d.ts +26 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.js +189 -0
- package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.js.map +1 -0
- package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.d.ts +43 -0
- package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.js +77 -0
- package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.d.ts +32 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.js +36 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.d.ts +18 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.js +38 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.d.ts +42 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.js +103 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationStateBuilder.d.ts +20 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationStateBuilder.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationStateBuilder.js +96 -0
- package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationStateBuilder.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.d.ts +22 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.js +40 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.d.ts +27 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.js +50 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.d.ts +27 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.js +55 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.d.ts +26 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.js +50 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.d.ts +27 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.js +78 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.d.ts +27 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.js +67 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.d.ts +26 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.js +86 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.d.ts +26 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.js +86 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.d.ts +27 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.js +50 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts +27 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.js +50 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.js.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.d.ts +26 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.js +45 -0
- package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.d.ts +29 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.js +30 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.d.ts +18 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.js +44 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.d.ts +135 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js +585 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterStateBuilder.d.ts +22 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterStateBuilder.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterStateBuilder.js +122 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterStateBuilder.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.d.ts +19 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.js +79 -0
- package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.d.ts +23 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.js +73 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.d.ts +32 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.js +75 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.d.ts +32 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.js +75 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.d.ts +32 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.js +118 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.d.ts +27 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.js +81 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts +24 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.js +43 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.d.ts +32 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.js +104 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.d.ts +33 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.js +67 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.d.ts +27 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.js +81 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts +24 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.js +43 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.js.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.d.ts +32 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.d.ts.map +1 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.js +75 -0
- package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.js.map +1 -0
- package/lib/stores/filter/QueryBuilderFilterOperator.d.ts +27 -0
- package/lib/stores/filter/QueryBuilderFilterOperator.d.ts.map +1 -0
- package/lib/stores/filter/QueryBuilderFilterOperator.js +20 -0
- package/lib/stores/filter/QueryBuilderFilterOperator.js.map +1 -0
- package/lib/stores/filter/QueryBuilderFilterOperatorLoader.d.ts +18 -0
- package/lib/stores/filter/QueryBuilderFilterOperatorLoader.d.ts.map +1 -0
- package/lib/stores/filter/QueryBuilderFilterOperatorLoader.js +44 -0
- package/lib/stores/filter/QueryBuilderFilterOperatorLoader.js.map +1 -0
- package/lib/stores/filter/QueryBuilderFilterState.d.ts +123 -0
- package/lib/stores/filter/QueryBuilderFilterState.d.ts.map +1 -0
- package/lib/stores/filter/QueryBuilderFilterState.js +531 -0
- package/lib/stores/filter/QueryBuilderFilterState.js.map +1 -0
- package/lib/stores/filter/QueryBuilderFilterStateBuilder.d.ts +19 -0
- package/lib/stores/filter/QueryBuilderFilterStateBuilder.d.ts.map +1 -0
- package/lib/stores/filter/QueryBuilderFilterStateBuilder.js +74 -0
- package/lib/stores/filter/QueryBuilderFilterStateBuilder.js.map +1 -0
- package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.d.ts +19 -0
- package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.d.ts.map +1 -0
- package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.js +78 -0
- package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.js.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperatorHelper.d.ts +21 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperatorHelper.d.ts.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperatorHelper.js +257 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperatorHelper.js.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.d.ts +32 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.d.ts.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.js +71 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.js.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.d.ts +32 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.d.ts.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.js +71 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.js.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.d.ts +32 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.d.ts.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.js +115 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.js.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.d.ts +27 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.d.ts.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.js +83 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.js.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts +27 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.js +83 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.js.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.d.ts +32 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.d.ts.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.js +103 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.js.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.d.ts +32 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.d.ts.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.js +65 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.js.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.d.ts +27 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.d.ts.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.js +83 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.js.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.d.ts +27 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.d.ts.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.js +83 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.js.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.d.ts +32 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.d.ts.map +1 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.js +71 -0
- package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.js.map +1 -0
- package/lib/stores/workflows/ClassQueryBuilderState.d.ts +35 -0
- package/lib/stores/workflows/ClassQueryBuilderState.d.ts.map +1 -0
- package/lib/stores/workflows/ClassQueryBuilderState.js +57 -0
- package/lib/stores/workflows/ClassQueryBuilderState.js.map +1 -0
- package/lib/stores/workflows/MappingQueryBuilderState.d.ts +33 -0
- package/lib/stores/workflows/MappingQueryBuilderState.d.ts.map +1 -0
- package/lib/stores/workflows/MappingQueryBuilderState.js +55 -0
- package/lib/stores/workflows/MappingQueryBuilderState.js.map +1 -0
- package/lib/stores/workflows/ServiceQueryBuilderState.d.ts +44 -0
- package/lib/stores/workflows/ServiceQueryBuilderState.d.ts.map +1 -0
- package/lib/stores/workflows/ServiceQueryBuilderState.js +90 -0
- package/lib/stores/workflows/ServiceQueryBuilderState.js.map +1 -0
- package/package.json +95 -0
- package/src/components/QueryBuilder.tsx +411 -0
- package/src/components/QueryBuilderComponentTestUtils.tsx +122 -0
- package/src/components/QueryBuilderParametersPanel.tsx +431 -0
- package/src/components/QueryBuilderPropertyExpressionEditor.tsx +376 -0
- package/src/components/QueryBuilderResultPanel.tsx +640 -0
- package/src/components/QueryBuilderSideBar.tsx +421 -0
- package/src/components/QueryBuilderTextEditor.tsx +127 -0
- package/src/components/QueryBuilderUnsupportedQueryEditor.tsx +88 -0
- package/src/components/QueryBuilder_TestID.ts +26 -0
- package/src/components/explorer/QueryBuilderExplorerPanel.tsx +934 -0
- package/src/components/explorer/QueryBuilderFunctionsExplorerPanel.tsx +554 -0
- package/src/components/explorer/QueryBuilderMilestoneEditor.tsx +296 -0
- package/src/components/explorer/QueryBuilderPropertySearchPanel.tsx +617 -0
- package/src/components/fetch-structure/QueryBuilderFetchStructurePanel.tsx +112 -0
- package/src/components/fetch-structure/QueryBuilderGraphFetchTreePanel.tsx +276 -0
- package/src/components/fetch-structure/QueryBuilderPostFilterPanel.tsx +1103 -0
- package/src/components/fetch-structure/QueryBuilderProjectionPanel.tsx +649 -0
- package/src/components/fetch-structure/QueryBuilderResultModifierPanel.tsx +254 -0
- package/src/components/filter/QueryBuilderFilterPanel.tsx +891 -0
- package/src/components/shared/ElementIconUtils.tsx +47 -0
- package/src/components/shared/QueryBuilderLambdaEditor.tsx +120 -0
- package/src/components/shared/QueryBuilderPanelIssueCountBadge.tsx +40 -0
- package/src/components/shared/QueryBuilderPropertyInfoTooltip.tsx +87 -0
- package/src/components/workflows/ClassQueryBuilder.tsx +198 -0
- package/src/components/workflows/MappingQueryBuilder.tsx +195 -0
- package/src/components/workflows/ServiceQueryBuilder.tsx +192 -0
- package/src/graphManager/QueryBuilderSupportedFunctions.ts +67 -0
- package/src/graphManager/QueryBuilder_GraphManagerPlugin.ts +32 -0
- package/src/graphManager/QueryBuilder_GraphManagerPreset.ts +33 -0
- package/src/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.ts +22 -0
- package/src/graphManager/action/analytics/ServiceExecutionAnalysis.ts +22 -0
- package/src/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.ts +47 -0
- package/src/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.ts +27 -0
- package/src/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.ts +167 -0
- package/src/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.ts +571 -0
- package/src/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.ts +28 -0
- package/src/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.ts +296 -0
- package/src/index.ts +38 -0
- package/src/stores/QueryBuilderBootstraper.ts +23 -0
- package/src/stores/QueryBuilderChangeDetectionState.ts +37 -0
- package/src/stores/QueryBuilderConfig.ts +34 -0
- package/src/stores/QueryBuilderGroupOperationHelper.ts +54 -0
- package/src/stores/QueryBuilderMilestoningState.ts +164 -0
- package/src/stores/QueryBuilderParametersState.ts +52 -0
- package/src/stores/QueryBuilderPreviewDataHelper.ts +202 -0
- package/src/stores/QueryBuilderPropertyEditorState.ts +668 -0
- package/src/stores/QueryBuilderResultState.ts +281 -0
- package/src/stores/QueryBuilderState.ts +465 -0
- package/src/stores/QueryBuilderStateBuilder.ts +585 -0
- package/src/stores/QueryBuilderStateTestUtils.ts +99 -0
- package/src/stores/QueryBuilderTextEditorState.ts +203 -0
- package/src/stores/QueryBuilderTypeaheadHelper.ts +152 -0
- package/src/stores/QueryBuilderUnsupportedQueryState.ts +44 -0
- package/src/stores/QueryBuilderValueSpecificationBuilder.ts +179 -0
- package/src/stores/QueryBuilderValueSpecificationBuilderHelper.ts +256 -0
- package/src/stores/QueryBuilderValueSpecificationHelper.ts +359 -0
- package/src/stores/explorer/QueryBuilderExplorerState.ts +798 -0
- package/src/stores/explorer/QueryBuilderPropertySearchState.ts +333 -0
- package/src/stores/explorer/QueryFunctionsExplorerState.ts +375 -0
- package/src/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.ts +65 -0
- package/src/stores/fetch-structure/QueryBuilderFetchStructureState.ts +107 -0
- package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.ts +240 -0
- package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.ts +131 -0
- package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.ts +282 -0
- package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.ts +154 -0
- package/src/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.ts +327 -0
- package/src/stores/fetch-structure/projection/QueryBuilderProjectionState.ts +569 -0
- package/src/stores/fetch-structure/projection/QueryBuilderProjectionStateBuilder.ts +426 -0
- package/src/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.ts +416 -0
- package/src/stores/fetch-structure/projection/QueryResultSetModifierState.ts +95 -0
- package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.ts +79 -0
- package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.ts +41 -0
- package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.ts +145 -0
- package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationStateBuilder.ts +228 -0
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.ts +109 -0
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.ts +98 -0
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.ts +106 -0
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.ts +96 -0
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.ts +173 -0
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.ts +155 -0
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.ts +174 -0
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.ts +174 -0
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.ts +98 -0
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.ts +98 -0
- package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.ts +88 -0
- package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.ts +66 -0
- package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.ts +65 -0
- package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.ts +807 -0
- package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterStateBuilder.ts +297 -0
- package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.ts +121 -0
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.ts +129 -0
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.ts +140 -0
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.ts +135 -0
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.ts +218 -0
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.ts +143 -0
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.ts +70 -0
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.ts +183 -0
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.ts +113 -0
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.ts +143 -0
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.ts +70 -0
- package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.ts +135 -0
- package/src/stores/filter/QueryBuilderFilterOperator.ts +52 -0
- package/src/stores/filter/QueryBuilderFilterOperatorLoader.ts +65 -0
- package/src/stores/filter/QueryBuilderFilterState.ts +736 -0
- package/src/stores/filter/QueryBuilderFilterStateBuilder.ts +155 -0
- package/src/stores/filter/QueryBuilderFilterValueSpecificationBuilder.ts +120 -0
- package/src/stores/filter/operators/QueryBuilderFilterOperatorHelper.ts +524 -0
- package/src/stores/filter/operators/QueryBuilderFilterOperator_Contain.ts +134 -0
- package/src/stores/filter/operators/QueryBuilderFilterOperator_EndWith.ts +134 -0
- package/src/stores/filter/operators/QueryBuilderFilterOperator_Equal.ts +211 -0
- package/src/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.ts +145 -0
- package/src/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.ts +145 -0
- package/src/stores/filter/operators/QueryBuilderFilterOperator_In.ts +181 -0
- package/src/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.ts +125 -0
- package/src/stores/filter/operators/QueryBuilderFilterOperator_LessThan.ts +145 -0
- package/src/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.ts +145 -0
- package/src/stores/filter/operators/QueryBuilderFilterOperator_StartWith.ts +134 -0
- package/src/stores/workflows/ClassQueryBuilderState.ts +80 -0
- package/src/stores/workflows/MappingQueryBuilderState.ts +86 -0
- package/src/stores/workflows/ServiceQueryBuilderState.ts +143 -0
- package/tsconfig.json +166 -0
- package/tsconfig.package.json +38 -0
@@ -0,0 +1,524 @@
|
|
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
|
+
type ValueSpecification,
|
19
|
+
extractElementNameFromPath,
|
20
|
+
matchFunctionName,
|
21
|
+
LambdaFunctionInstanceValue,
|
22
|
+
VariableExpression,
|
23
|
+
AbstractPropertyExpression,
|
24
|
+
SimpleFunctionExpression,
|
25
|
+
TYPICAL_MULTIPLICITY_TYPE,
|
26
|
+
} from '@finos/legend-graph';
|
27
|
+
import {
|
28
|
+
guaranteeType,
|
29
|
+
guaranteeNonNullable,
|
30
|
+
assertTrue,
|
31
|
+
generateEnumerableNameFromToken,
|
32
|
+
} from '@finos/legend-shared';
|
33
|
+
import {
|
34
|
+
FilterConditionState,
|
35
|
+
type QueryBuilderFilterState,
|
36
|
+
} from '../QueryBuilderFilterState.js';
|
37
|
+
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../graphManager/QueryBuilderSupportedFunctions.js';
|
38
|
+
import { buildGenericLambdaFunctionInstanceValue } from '../../QueryBuilderValueSpecificationHelper.js';
|
39
|
+
import type { QueryBuilderFilterOperator } from '../QueryBuilderFilterOperator.js';
|
40
|
+
import { buildPropertyExpressionChain } from '../../QueryBuilderValueSpecificationBuilderHelper.js';
|
41
|
+
|
42
|
+
const getPropertyExpressionChainVariable = (
|
43
|
+
propertyExpression: AbstractPropertyExpression,
|
44
|
+
): VariableExpression => {
|
45
|
+
let currentExpression: ValueSpecification = propertyExpression;
|
46
|
+
while (currentExpression instanceof AbstractPropertyExpression) {
|
47
|
+
currentExpression = guaranteeNonNullable(
|
48
|
+
currentExpression.parametersValues[0],
|
49
|
+
);
|
50
|
+
// Take care of chains of subtype (a pattern that is not useful, but we want to support and rectify)
|
51
|
+
// $x.employees->subType(@Person)->subType(@Staff)
|
52
|
+
while (
|
53
|
+
currentExpression instanceof SimpleFunctionExpression &&
|
54
|
+
matchFunctionName(
|
55
|
+
currentExpression.functionName,
|
56
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE,
|
57
|
+
)
|
58
|
+
) {
|
59
|
+
currentExpression = guaranteeNonNullable(
|
60
|
+
currentExpression.parametersValues[0],
|
61
|
+
);
|
62
|
+
}
|
63
|
+
}
|
64
|
+
return guaranteeType(currentExpression, VariableExpression);
|
65
|
+
};
|
66
|
+
|
67
|
+
const buildFilterConditionExpressionWithExists = (
|
68
|
+
filterConditionState: FilterConditionState,
|
69
|
+
operatorFunctionFullPath: string,
|
70
|
+
): ValueSpecification => {
|
71
|
+
const multiplicityOne =
|
72
|
+
filterConditionState.filterState.queryBuilderState.graphManagerState.graph.getTypicalMultiplicity(
|
73
|
+
TYPICAL_MULTIPLICITY_TYPE.ONE,
|
74
|
+
);
|
75
|
+
assertTrue(
|
76
|
+
filterConditionState.propertyExpressionState.requiresExistsHandling,
|
77
|
+
);
|
78
|
+
// 1. Decompose property expression
|
79
|
+
const expressions: (AbstractPropertyExpression | SimpleFunctionExpression)[] =
|
80
|
+
[];
|
81
|
+
let currentPropertyExpression: ValueSpecification =
|
82
|
+
buildPropertyExpressionChain(
|
83
|
+
filterConditionState.propertyExpressionState.propertyExpression,
|
84
|
+
filterConditionState.propertyExpressionState.queryBuilderState,
|
85
|
+
);
|
86
|
+
while (
|
87
|
+
currentPropertyExpression instanceof AbstractPropertyExpression ||
|
88
|
+
(currentPropertyExpression instanceof SimpleFunctionExpression &&
|
89
|
+
matchFunctionName(
|
90
|
+
currentPropertyExpression.functionName,
|
91
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE,
|
92
|
+
))
|
93
|
+
) {
|
94
|
+
let exp: AbstractPropertyExpression | SimpleFunctionExpression;
|
95
|
+
if (currentPropertyExpression instanceof SimpleFunctionExpression) {
|
96
|
+
exp = new SimpleFunctionExpression(
|
97
|
+
extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE),
|
98
|
+
multiplicityOne,
|
99
|
+
);
|
100
|
+
} else {
|
101
|
+
exp = new AbstractPropertyExpression('', multiplicityOne);
|
102
|
+
exp.func = currentPropertyExpression.func;
|
103
|
+
}
|
104
|
+
// NOTE: we must retain the rest of the parameters as those are derived property parameters
|
105
|
+
exp.parametersValues =
|
106
|
+
currentPropertyExpression.parametersValues.length > 1
|
107
|
+
? currentPropertyExpression.parametersValues.slice(1)
|
108
|
+
: [];
|
109
|
+
expressions.push(exp);
|
110
|
+
currentPropertyExpression = guaranteeNonNullable(
|
111
|
+
currentPropertyExpression.parametersValues[0],
|
112
|
+
);
|
113
|
+
}
|
114
|
+
const rootVariable = guaranteeType(
|
115
|
+
currentPropertyExpression,
|
116
|
+
VariableExpression,
|
117
|
+
);
|
118
|
+
|
119
|
+
// 2. Traverse the list of decomposed property expression backward, every time we encounter a property of
|
120
|
+
// multiplicity many, create a new property expression and keep track of it to later form the lambda chain
|
121
|
+
const existsLambdaParamNames = [
|
122
|
+
...filterConditionState.existsLambdaParamNames,
|
123
|
+
];
|
124
|
+
const existsLambdaPropertyChains: ValueSpecification[] = [rootVariable];
|
125
|
+
let currentParamNameIndex = 0;
|
126
|
+
|
127
|
+
for (let i = expressions.length - 1; i >= 0; --i) {
|
128
|
+
const exp = expressions[i] as
|
129
|
+
| AbstractPropertyExpression
|
130
|
+
| SimpleFunctionExpression;
|
131
|
+
// just keep adding to the property chain
|
132
|
+
exp.parametersValues.unshift(
|
133
|
+
existsLambdaPropertyChains[
|
134
|
+
existsLambdaPropertyChains.length - 1
|
135
|
+
] as ValueSpecification,
|
136
|
+
);
|
137
|
+
existsLambdaPropertyChains[existsLambdaPropertyChains.length - 1] = exp;
|
138
|
+
// ... but if the property is of multiplicity multiple, start a new property chain
|
139
|
+
if (
|
140
|
+
exp instanceof AbstractPropertyExpression &&
|
141
|
+
(exp.func.multiplicity.upperBound === undefined ||
|
142
|
+
exp.func.multiplicity.upperBound > 1)
|
143
|
+
) {
|
144
|
+
// NOTE: we need to find/generate the property chain variable name
|
145
|
+
// here, by doing this, we try our best to respect original/user-input variable name
|
146
|
+
if (currentParamNameIndex > existsLambdaParamNames.length - 1) {
|
147
|
+
existsLambdaParamNames.push(
|
148
|
+
generateEnumerableNameFromToken(
|
149
|
+
existsLambdaParamNames,
|
150
|
+
filterConditionState.filterState.lambdaParameterName,
|
151
|
+
),
|
152
|
+
);
|
153
|
+
assertTrue(currentParamNameIndex === existsLambdaParamNames.length - 1);
|
154
|
+
}
|
155
|
+
existsLambdaPropertyChains.push(
|
156
|
+
new VariableExpression(
|
157
|
+
existsLambdaParamNames[currentParamNameIndex] as string,
|
158
|
+
multiplicityOne,
|
159
|
+
),
|
160
|
+
);
|
161
|
+
currentParamNameIndex++;
|
162
|
+
}
|
163
|
+
}
|
164
|
+
|
165
|
+
// 3. Build each property chain into an exists() simple function expression
|
166
|
+
const simpleFunctionExpressions: SimpleFunctionExpression[] = [];
|
167
|
+
for (let i = 0; i < existsLambdaPropertyChains.length - 1; ++i) {
|
168
|
+
const simpleFunctionExpression = new SimpleFunctionExpression(
|
169
|
+
extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.EXISTS),
|
170
|
+
multiplicityOne,
|
171
|
+
);
|
172
|
+
simpleFunctionExpression.parametersValues.push(
|
173
|
+
existsLambdaPropertyChains[i] as ValueSpecification,
|
174
|
+
);
|
175
|
+
simpleFunctionExpressions.push(simpleFunctionExpression);
|
176
|
+
}
|
177
|
+
// build the leaf simple function expression which uses the operator
|
178
|
+
const operatorEpression = new SimpleFunctionExpression(
|
179
|
+
extractElementNameFromPath(operatorFunctionFullPath),
|
180
|
+
multiplicityOne,
|
181
|
+
);
|
182
|
+
operatorEpression.parametersValues.push(
|
183
|
+
existsLambdaPropertyChains[
|
184
|
+
existsLambdaPropertyChains.length - 1
|
185
|
+
] as ValueSpecification,
|
186
|
+
);
|
187
|
+
// NOTE: there are simple operators which do not require any params (e.g. isEmpty)
|
188
|
+
if (filterConditionState.value) {
|
189
|
+
operatorEpression.parametersValues.push(filterConditionState.value);
|
190
|
+
}
|
191
|
+
simpleFunctionExpressions.push(operatorEpression);
|
192
|
+
|
193
|
+
// 4. Build the exists() lambda chain
|
194
|
+
assertTrue(simpleFunctionExpressions.length >= 2);
|
195
|
+
for (let i = simpleFunctionExpressions.length - 2; i >= 0; --i) {
|
196
|
+
const currentSFE = simpleFunctionExpressions[i] as SimpleFunctionExpression;
|
197
|
+
const childSFE = simpleFunctionExpressions[
|
198
|
+
i + 1
|
199
|
+
] as SimpleFunctionExpression;
|
200
|
+
// build child SFE lambda
|
201
|
+
const _existsLambdaVariable = childSFE.parametersValues[0];
|
202
|
+
const existsLambdaVariable =
|
203
|
+
_existsLambdaVariable instanceof AbstractPropertyExpression
|
204
|
+
? getPropertyExpressionChainVariable(_existsLambdaVariable)
|
205
|
+
: guaranteeType(_existsLambdaVariable, VariableExpression);
|
206
|
+
const existsLambda = buildGenericLambdaFunctionInstanceValue(
|
207
|
+
existsLambdaVariable.name,
|
208
|
+
[childSFE],
|
209
|
+
filterConditionState.filterState.queryBuilderState.graphManagerState
|
210
|
+
.graph,
|
211
|
+
);
|
212
|
+
// add the child SFE lambda to the current SFE parameters
|
213
|
+
currentSFE.parametersValues.push(existsLambda);
|
214
|
+
}
|
215
|
+
|
216
|
+
return simpleFunctionExpressions[0] as SimpleFunctionExpression;
|
217
|
+
};
|
218
|
+
|
219
|
+
export const buildFilterConditionExpression = (
|
220
|
+
filterConditionState: FilterConditionState,
|
221
|
+
operatorFunctionFullPath: string,
|
222
|
+
): ValueSpecification => {
|
223
|
+
const multiplicityOne =
|
224
|
+
filterConditionState.filterState.queryBuilderState.graphManagerState.graph.getTypicalMultiplicity(
|
225
|
+
TYPICAL_MULTIPLICITY_TYPE.ONE,
|
226
|
+
);
|
227
|
+
if (filterConditionState.propertyExpressionState.requiresExistsHandling) {
|
228
|
+
return buildFilterConditionExpressionWithExists(
|
229
|
+
filterConditionState,
|
230
|
+
operatorFunctionFullPath,
|
231
|
+
);
|
232
|
+
}
|
233
|
+
const expression = new SimpleFunctionExpression(
|
234
|
+
extractElementNameFromPath(operatorFunctionFullPath),
|
235
|
+
multiplicityOne,
|
236
|
+
);
|
237
|
+
const propertyExpression = buildPropertyExpressionChain(
|
238
|
+
filterConditionState.propertyExpressionState.propertyExpression,
|
239
|
+
filterConditionState.propertyExpressionState.queryBuilderState,
|
240
|
+
);
|
241
|
+
expression.parametersValues.push(guaranteeNonNullable(propertyExpression));
|
242
|
+
// NOTE: there are simple operators which do not require any params (e.g. isEmpty)
|
243
|
+
if (filterConditionState.value) {
|
244
|
+
expression.parametersValues.push(filterConditionState.value);
|
245
|
+
}
|
246
|
+
return expression;
|
247
|
+
};
|
248
|
+
|
249
|
+
/**
|
250
|
+
* Handling exists() lambda found in the filter condition expression.
|
251
|
+
* The general approach for handling exists() is we will flat out the chain
|
252
|
+
* of exists() expressions into a normal filter condition state.
|
253
|
+
*
|
254
|
+
* When we build the condition function expression from the filter condition state,
|
255
|
+
* we walk the property expression chain, find property with multiplitiy upper bound
|
256
|
+
* other than 1 and create an exists() lambda there
|
257
|
+
*
|
258
|
+
* NOTE: to ensure we respect user's choice of variable name, as we build the state
|
259
|
+
* we record the lambda parameter names, so we can use those while re-building the function
|
260
|
+
* If for some reason, this list is stale, we can start adding our own parameter names
|
261
|
+
*/
|
262
|
+
const buildFilterConditionStateWithExists = (
|
263
|
+
filterState: QueryBuilderFilterState,
|
264
|
+
parentExpression: SimpleFunctionExpression,
|
265
|
+
operatorFunctionFullPath: string,
|
266
|
+
): [FilterConditionState | undefined, SimpleFunctionExpression | undefined] => {
|
267
|
+
if (
|
268
|
+
matchFunctionName(
|
269
|
+
parentExpression.functionName,
|
270
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.EXISTS,
|
271
|
+
)
|
272
|
+
) {
|
273
|
+
// 1. Decompose the exists() lambda chain into property expression chains
|
274
|
+
const existsLambdaParameterNames: string[] = [];
|
275
|
+
|
276
|
+
// `existsLambdaExpressions` should be a list of `AbstractPropertyExpression`
|
277
|
+
// e.g. |Firm.all()->filter(x|$x.employees->exists(x_1|$x_1->subType(@Develper).id->exists(x_2|$x_2 == 1))
|
278
|
+
// In the first exists() lambda, `$x_1->subType(@Develper).id` is an `AbstractPropertyExpression`.
|
279
|
+
const existsLambdaExpressions: AbstractPropertyExpression[] = [];
|
280
|
+
let mainFilterExpression: SimpleFunctionExpression = parentExpression;
|
281
|
+
while (
|
282
|
+
matchFunctionName(
|
283
|
+
mainFilterExpression.functionName,
|
284
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.EXISTS,
|
285
|
+
)
|
286
|
+
) {
|
287
|
+
const existsLambda = guaranteeNonNullable(
|
288
|
+
guaranteeType(
|
289
|
+
mainFilterExpression.parametersValues[1],
|
290
|
+
LambdaFunctionInstanceValue,
|
291
|
+
).values[0],
|
292
|
+
`Can't process exists() expression: exists() lambda is missing`,
|
293
|
+
);
|
294
|
+
assertTrue(
|
295
|
+
existsLambda.expressionSequence.length === 1,
|
296
|
+
`Can't process exists() expression: exists() lambda body should hold an expression`,
|
297
|
+
);
|
298
|
+
mainFilterExpression = guaranteeType(
|
299
|
+
existsLambda.expressionSequence[0],
|
300
|
+
SimpleFunctionExpression,
|
301
|
+
`Can't process exists() expression: exists() lambda body should hold an expression`,
|
302
|
+
);
|
303
|
+
|
304
|
+
// record the lambda parameter name
|
305
|
+
assertTrue(
|
306
|
+
existsLambda.functionType.parameters.length === 1,
|
307
|
+
`Can't process exists() expression: exists() lambda should have 1 parameter`,
|
308
|
+
);
|
309
|
+
existsLambdaParameterNames.push(
|
310
|
+
guaranteeType(
|
311
|
+
existsLambda.functionType.parameters[0],
|
312
|
+
VariableExpression,
|
313
|
+
`Can't process exists() expression: exists() lambda should have 1 parameter`,
|
314
|
+
).name,
|
315
|
+
);
|
316
|
+
|
317
|
+
// record the lambda property expression
|
318
|
+
if (
|
319
|
+
mainFilterExpression.parametersValues[0] instanceof
|
320
|
+
AbstractPropertyExpression
|
321
|
+
) {
|
322
|
+
existsLambdaExpressions.push(mainFilterExpression.parametersValues[0]);
|
323
|
+
}
|
324
|
+
}
|
325
|
+
// NOTE: make sure that the inner most function expression is the one we support
|
326
|
+
if (
|
327
|
+
!matchFunctionName(
|
328
|
+
mainFilterExpression.functionName,
|
329
|
+
operatorFunctionFullPath,
|
330
|
+
)
|
331
|
+
) {
|
332
|
+
return [undefined, undefined];
|
333
|
+
}
|
334
|
+
|
335
|
+
// 2. Build the property expression
|
336
|
+
const multiplicityOne =
|
337
|
+
filterState.queryBuilderState.graphManagerState.graph.getTypicalMultiplicity(
|
338
|
+
TYPICAL_MULTIPLICITY_TYPE.ONE,
|
339
|
+
);
|
340
|
+
const initialPropertyExpression = guaranteeType(
|
341
|
+
parentExpression.parametersValues[0],
|
342
|
+
AbstractPropertyExpression,
|
343
|
+
);
|
344
|
+
let flattenedPropertyExpressionChain = new AbstractPropertyExpression(
|
345
|
+
'',
|
346
|
+
multiplicityOne,
|
347
|
+
);
|
348
|
+
flattenedPropertyExpressionChain.func = initialPropertyExpression.func;
|
349
|
+
flattenedPropertyExpressionChain.parametersValues =
|
350
|
+
initialPropertyExpression.parametersValues;
|
351
|
+
|
352
|
+
for (const expression of existsLambdaExpressions) {
|
353
|
+
// when rebuilding the property expression chain, disregard the initial variable that starts the chain
|
354
|
+
const expressions: (
|
355
|
+
| AbstractPropertyExpression
|
356
|
+
| SimpleFunctionExpression
|
357
|
+
)[] = [];
|
358
|
+
let currentExpression: ValueSpecification = expression;
|
359
|
+
while (
|
360
|
+
currentExpression instanceof AbstractPropertyExpression ||
|
361
|
+
(currentExpression instanceof SimpleFunctionExpression &&
|
362
|
+
matchFunctionName(
|
363
|
+
currentExpression.functionName,
|
364
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE,
|
365
|
+
))
|
366
|
+
) {
|
367
|
+
if (currentExpression instanceof SimpleFunctionExpression) {
|
368
|
+
const functionExpression = new SimpleFunctionExpression(
|
369
|
+
extractElementNameFromPath(
|
370
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE,
|
371
|
+
),
|
372
|
+
multiplicityOne,
|
373
|
+
);
|
374
|
+
functionExpression.parametersValues.unshift(
|
375
|
+
guaranteeNonNullable(currentExpression.parametersValues[1]),
|
376
|
+
);
|
377
|
+
expressions.push(functionExpression);
|
378
|
+
} else if (currentExpression instanceof AbstractPropertyExpression) {
|
379
|
+
const propertyExpression = new AbstractPropertyExpression(
|
380
|
+
'',
|
381
|
+
multiplicityOne,
|
382
|
+
);
|
383
|
+
propertyExpression.func = currentExpression.func;
|
384
|
+
if (currentExpression.parametersValues.length > 1) {
|
385
|
+
// NOTE: we must retain the rest of the parameters as those are derived property parameters
|
386
|
+
propertyExpression.parametersValues =
|
387
|
+
currentExpression.parametersValues.slice(1);
|
388
|
+
} else {
|
389
|
+
propertyExpression.parametersValues = [];
|
390
|
+
}
|
391
|
+
expressions.push(propertyExpression);
|
392
|
+
}
|
393
|
+
currentExpression = guaranteeNonNullable(
|
394
|
+
currentExpression.parametersValues[0],
|
395
|
+
);
|
396
|
+
}
|
397
|
+
assertTrue(
|
398
|
+
expressions.length > 0,
|
399
|
+
`Can't process exists() expression: exists() usage with non-chain property expression is not supported`,
|
400
|
+
);
|
401
|
+
for (let i = 0; i < expressions.length - 1; ++i) {
|
402
|
+
(
|
403
|
+
expressions[i] as
|
404
|
+
| AbstractPropertyExpression
|
405
|
+
| SimpleFunctionExpression
|
406
|
+
).parametersValues.unshift(
|
407
|
+
expressions[i + 1] as
|
408
|
+
| AbstractPropertyExpression
|
409
|
+
| SimpleFunctionExpression,
|
410
|
+
);
|
411
|
+
}
|
412
|
+
(
|
413
|
+
expressions[expressions.length - 1] as
|
414
|
+
| AbstractPropertyExpression
|
415
|
+
| SimpleFunctionExpression
|
416
|
+
).parametersValues.unshift(flattenedPropertyExpressionChain);
|
417
|
+
flattenedPropertyExpressionChain = guaranteeType(
|
418
|
+
expressions[0],
|
419
|
+
AbstractPropertyExpression,
|
420
|
+
`Can't process exists() expression: can't flatten to a property expression`,
|
421
|
+
);
|
422
|
+
}
|
423
|
+
|
424
|
+
// 3. Build the filter condition state with the simplified property expression
|
425
|
+
const filterConditionState = new FilterConditionState(
|
426
|
+
filterState,
|
427
|
+
flattenedPropertyExpressionChain,
|
428
|
+
);
|
429
|
+
existsLambdaParameterNames.forEach((paramName) =>
|
430
|
+
filterConditionState.addExistsLambdaParamNames(paramName),
|
431
|
+
);
|
432
|
+
return [filterConditionState, mainFilterExpression];
|
433
|
+
}
|
434
|
+
return [undefined, undefined];
|
435
|
+
};
|
436
|
+
|
437
|
+
export const buildFilterConditionState = (
|
438
|
+
filterState: QueryBuilderFilterState,
|
439
|
+
expression: SimpleFunctionExpression,
|
440
|
+
operatorFunctionFullPath: string,
|
441
|
+
operator: QueryBuilderFilterOperator,
|
442
|
+
/**
|
443
|
+
* Use this flag for operator that does not require any param (e.g. isEmpty)
|
444
|
+
* NOTE: this is not the cleanest way to do this, if we find ourselves adding more and more customization
|
445
|
+
* to this utility function, we should just create a bunch of different methods
|
446
|
+
*/
|
447
|
+
hasNoValue = false,
|
448
|
+
): FilterConditionState | undefined => {
|
449
|
+
let filterConditionState: FilterConditionState | undefined;
|
450
|
+
// This is the simple expression of form `{property} {operator} {value}`
|
451
|
+
// This is used for post-build checks (useful when this expression is nested inside a longer
|
452
|
+
// chain of expression, e.g. ->exists($x|x == 'something'), etc.)
|
453
|
+
let mainExpressionWithOperator: SimpleFunctionExpression | undefined;
|
454
|
+
|
455
|
+
if (matchFunctionName(expression.functionName, operatorFunctionFullPath)) {
|
456
|
+
assertTrue(
|
457
|
+
expression.parametersValues.length === (hasNoValue ? 1 : 2),
|
458
|
+
`Can't process ${extractElementNameFromPath(
|
459
|
+
operatorFunctionFullPath,
|
460
|
+
)}() expression: ${extractElementNameFromPath(
|
461
|
+
operatorFunctionFullPath,
|
462
|
+
)}() expects ${hasNoValue ? 'no argument' : '1 argument'}`,
|
463
|
+
);
|
464
|
+
|
465
|
+
const propertyExpression = guaranteeType(
|
466
|
+
expression.parametersValues[0],
|
467
|
+
AbstractPropertyExpression,
|
468
|
+
`Can't process ${extractElementNameFromPath(
|
469
|
+
operatorFunctionFullPath,
|
470
|
+
)}() expression: expects property expression in lambda body`,
|
471
|
+
);
|
472
|
+
|
473
|
+
const variableName =
|
474
|
+
getPropertyExpressionChainVariable(propertyExpression).name;
|
475
|
+
assertTrue(
|
476
|
+
filterState.lambdaParameterName === variableName,
|
477
|
+
`Can't process ${extractElementNameFromPath(
|
478
|
+
operatorFunctionFullPath,
|
479
|
+
)}() expression: expects variable used in lambda body '${variableName}' to match lambda parameter '${
|
480
|
+
filterState.lambdaParameterName
|
481
|
+
}'`,
|
482
|
+
);
|
483
|
+
|
484
|
+
filterConditionState = new FilterConditionState(
|
485
|
+
filterState,
|
486
|
+
propertyExpression,
|
487
|
+
);
|
488
|
+
mainExpressionWithOperator = expression;
|
489
|
+
} else if (
|
490
|
+
matchFunctionName(
|
491
|
+
expression.functionName,
|
492
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.EXISTS,
|
493
|
+
)
|
494
|
+
) {
|
495
|
+
[filterConditionState, mainExpressionWithOperator] =
|
496
|
+
buildFilterConditionStateWithExists(
|
497
|
+
filterState,
|
498
|
+
expression,
|
499
|
+
operatorFunctionFullPath,
|
500
|
+
);
|
501
|
+
}
|
502
|
+
|
503
|
+
// Post-build check: make sure the simple filter condition LHS, RHS, and operator are compatible
|
504
|
+
// and set the value of the condition in the state accordingly.
|
505
|
+
if (filterConditionState && mainExpressionWithOperator) {
|
506
|
+
assertTrue(
|
507
|
+
operator.isCompatibleWithFilterConditionProperty(filterConditionState),
|
508
|
+
`Can't process ${extractElementNameFromPath(
|
509
|
+
operatorFunctionFullPath,
|
510
|
+
)}() expression: property is not compatible with operator`,
|
511
|
+
);
|
512
|
+
filterConditionState.setOperator(operator);
|
513
|
+
filterConditionState.setValue(
|
514
|
+
hasNoValue ? undefined : mainExpressionWithOperator.parametersValues[1],
|
515
|
+
);
|
516
|
+
if (!operator.isCompatibleWithFilterConditionValue(filterConditionState)) {
|
517
|
+
filterConditionState.setValue(
|
518
|
+
operator.getDefaultFilterConditionValue(filterConditionState),
|
519
|
+
);
|
520
|
+
}
|
521
|
+
return filterConditionState;
|
522
|
+
}
|
523
|
+
return undefined;
|
524
|
+
};
|
@@ -0,0 +1,134 @@
|
|
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 type {
|
18
|
+
QueryBuilderFilterState,
|
19
|
+
FilterConditionState,
|
20
|
+
} from '../QueryBuilderFilterState.js';
|
21
|
+
import { QueryBuilderFilterOperator } from '../QueryBuilderFilterOperator.js';
|
22
|
+
import {
|
23
|
+
PRIMITIVE_TYPE,
|
24
|
+
type ValueSpecification,
|
25
|
+
type SimpleFunctionExpression,
|
26
|
+
buildPrimitiveInstanceValue,
|
27
|
+
} from '@finos/legend-graph';
|
28
|
+
import { UnsupportedOperationError } from '@finos/legend-shared';
|
29
|
+
import {
|
30
|
+
buildFilterConditionState,
|
31
|
+
buildFilterConditionExpression,
|
32
|
+
} from './QueryBuilderFilterOperatorHelper.js';
|
33
|
+
import {
|
34
|
+
buildNotExpression,
|
35
|
+
generateDefaultValueForPrimitiveType,
|
36
|
+
getNonCollectionValueSpecificationType,
|
37
|
+
unwrapNotExpression,
|
38
|
+
} from '../../QueryBuilderValueSpecificationHelper.js';
|
39
|
+
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../graphManager/QueryBuilderSupportedFunctions.js';
|
40
|
+
|
41
|
+
export class QueryBuilderFilterOperator_Contain extends QueryBuilderFilterOperator {
|
42
|
+
getLabel(filterConditionState: FilterConditionState): string {
|
43
|
+
return 'contains';
|
44
|
+
}
|
45
|
+
|
46
|
+
isCompatibleWithFilterConditionProperty(
|
47
|
+
filterConditionState: FilterConditionState,
|
48
|
+
): boolean {
|
49
|
+
const propertyType =
|
50
|
+
filterConditionState.propertyExpressionState.propertyExpression.func
|
51
|
+
.genericType.value.rawType;
|
52
|
+
return PRIMITIVE_TYPE.STRING === propertyType.path;
|
53
|
+
}
|
54
|
+
|
55
|
+
isCompatibleWithFilterConditionValue(
|
56
|
+
filterConditionState: FilterConditionState,
|
57
|
+
): boolean {
|
58
|
+
const type = filterConditionState.value
|
59
|
+
? getNonCollectionValueSpecificationType(filterConditionState.value)
|
60
|
+
: undefined;
|
61
|
+
return PRIMITIVE_TYPE.STRING === type?.path;
|
62
|
+
}
|
63
|
+
|
64
|
+
getDefaultFilterConditionValue(
|
65
|
+
filterConditionState: FilterConditionState,
|
66
|
+
): ValueSpecification | undefined {
|
67
|
+
const propertyType =
|
68
|
+
filterConditionState.propertyExpressionState.propertyExpression.func
|
69
|
+
.genericType.value.rawType;
|
70
|
+
switch (propertyType.path) {
|
71
|
+
case PRIMITIVE_TYPE.STRING: {
|
72
|
+
return buildPrimitiveInstanceValue(
|
73
|
+
filterConditionState.filterState.queryBuilderState.graphManagerState
|
74
|
+
.graph,
|
75
|
+
propertyType.path,
|
76
|
+
generateDefaultValueForPrimitiveType(propertyType.path),
|
77
|
+
);
|
78
|
+
}
|
79
|
+
default:
|
80
|
+
throw new UnsupportedOperationError(
|
81
|
+
`Can't get default value for filter operator '${this.getLabel(
|
82
|
+
filterConditionState,
|
83
|
+
)}' when the LHS property is of type '${propertyType.path}'`,
|
84
|
+
);
|
85
|
+
}
|
86
|
+
}
|
87
|
+
|
88
|
+
buildFilterConditionExpression(
|
89
|
+
filterConditionState: FilterConditionState,
|
90
|
+
): ValueSpecification {
|
91
|
+
return buildFilterConditionExpression(
|
92
|
+
filterConditionState,
|
93
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.CONTAINS,
|
94
|
+
);
|
95
|
+
}
|
96
|
+
|
97
|
+
buildFilterConditionState(
|
98
|
+
filterState: QueryBuilderFilterState,
|
99
|
+
expression: SimpleFunctionExpression,
|
100
|
+
): FilterConditionState | undefined {
|
101
|
+
return buildFilterConditionState(
|
102
|
+
filterState,
|
103
|
+
expression,
|
104
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.CONTAINS,
|
105
|
+
this,
|
106
|
+
);
|
107
|
+
}
|
108
|
+
}
|
109
|
+
|
110
|
+
export class QueryBuilderFilterOperator_NotContain extends QueryBuilderFilterOperator_Contain {
|
111
|
+
override getLabel(filterConditionState: FilterConditionState): string {
|
112
|
+
return `doesn't contain`;
|
113
|
+
}
|
114
|
+
|
115
|
+
override buildFilterConditionExpression(
|
116
|
+
filterConditionState: FilterConditionState,
|
117
|
+
): ValueSpecification {
|
118
|
+
return buildNotExpression(
|
119
|
+
filterConditionState.filterState.queryBuilderState.graphManagerState
|
120
|
+
.graph,
|
121
|
+
super.buildFilterConditionExpression(filterConditionState),
|
122
|
+
);
|
123
|
+
}
|
124
|
+
|
125
|
+
override buildFilterConditionState(
|
126
|
+
filterState: QueryBuilderFilterState,
|
127
|
+
expression: SimpleFunctionExpression,
|
128
|
+
): FilterConditionState | undefined {
|
129
|
+
const innerExpression = unwrapNotExpression(expression);
|
130
|
+
return innerExpression
|
131
|
+
? super.buildFilterConditionState(filterState, innerExpression)
|
132
|
+
: undefined;
|
133
|
+
}
|
134
|
+
}
|