@finos/legend-application-query 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +3 -0
- package/lib/LegendQueryAppEvent.d.ts +19 -0
- package/lib/LegendQueryAppEvent.d.ts.map +1 -0
- package/lib/LegendQueryAppEvent.js +21 -0
- package/lib/LegendQueryAppEvent.js.map +1 -0
- package/lib/QueryBuilder_Const.d.ts +77 -0
- package/lib/QueryBuilder_Const.d.ts.map +1 -0
- package/lib/QueryBuilder_Const.js +85 -0
- package/lib/QueryBuilder_Const.js.map +1 -0
- package/lib/application/LegendQuery.d.ts +27 -0
- package/lib/application/LegendQuery.d.ts.map +1 -0
- package/lib/application/LegendQuery.js +58 -0
- package/lib/application/LegendQuery.js.map +1 -0
- package/lib/application/LegendQueryApplicationConfig.d.ts +46 -0
- package/lib/application/LegendQueryApplicationConfig.d.ts.map +1 -0
- package/lib/application/LegendQueryApplicationConfig.js +35 -0
- package/lib/application/LegendQueryApplicationConfig.js.map +1 -0
- package/lib/application/LegendQueryPluginManager.d.ts +32 -0
- package/lib/application/LegendQueryPluginManager.d.ts.map +1 -0
- package/lib/application/LegendQueryPluginManager.js +46 -0
- package/lib/application/LegendQueryPluginManager.js.map +1 -0
- package/lib/components/LegendQueryApplication.d.ts +25 -0
- package/lib/components/LegendQueryApplication.d.ts.map +1 -0
- package/lib/components/LegendQueryApplication.js +39 -0
- package/lib/components/LegendQueryApplication.js.map +1 -0
- package/lib/components/LegendQueryBaseStoreProvider.d.ts +28 -0
- package/lib/components/LegendQueryBaseStoreProvider.d.ts.map +1 -0
- package/lib/components/LegendQueryBaseStoreProvider.js +32 -0
- package/lib/components/LegendQueryBaseStoreProvider.js.map +1 -0
- package/lib/components/QueryBuilder.d.ts +23 -0
- package/lib/components/QueryBuilder.d.ts.map +1 -0
- package/lib/components/QueryBuilder.js +91 -0
- package/lib/components/QueryBuilder.js.map +1 -0
- package/lib/components/QueryBuilderExplorerPanel.d.ts +34 -0
- package/lib/components/QueryBuilderExplorerPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderExplorerPanel.js +379 -0
- package/lib/components/QueryBuilderExplorerPanel.js.map +1 -0
- package/lib/components/QueryBuilderFetchStructurePanel.d.ts +23 -0
- package/lib/components/QueryBuilderFetchStructurePanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderFetchStructurePanel.js +89 -0
- package/lib/components/QueryBuilderFetchStructurePanel.js.map +1 -0
- package/lib/components/QueryBuilderFilterPanel.d.ts +23 -0
- package/lib/components/QueryBuilderFilterPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderFilterPanel.js +301 -0
- package/lib/components/QueryBuilderFilterPanel.js.map +1 -0
- package/lib/components/QueryBuilderFunctionsExplorerPanel.d.ts +23 -0
- package/lib/components/QueryBuilderFunctionsExplorerPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderFunctionsExplorerPanel.js +177 -0
- package/lib/components/QueryBuilderFunctionsExplorerPanel.js.map +1 -0
- package/lib/components/QueryBuilderGraphFetchTreePanel.d.ts +33 -0
- package/lib/components/QueryBuilderGraphFetchTreePanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderGraphFetchTreePanel.js +96 -0
- package/lib/components/QueryBuilderGraphFetchTreePanel.js.map +1 -0
- package/lib/components/QueryBuilderLambdaEditor.d.ts +42 -0
- package/lib/components/QueryBuilderLambdaEditor.d.ts.map +1 -0
- package/lib/components/QueryBuilderLambdaEditor.js +47 -0
- package/lib/components/QueryBuilderLambdaEditor.js.map +1 -0
- package/lib/components/QueryBuilderMilestoneEditor.d.ts +24 -0
- package/lib/components/QueryBuilderMilestoneEditor.d.ts.map +1 -0
- package/lib/components/QueryBuilderMilestoneEditor.js +120 -0
- package/lib/components/QueryBuilderMilestoneEditor.js.map +1 -0
- package/lib/components/QueryBuilderParameterPanel.d.ts +30 -0
- package/lib/components/QueryBuilderParameterPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderParameterPanel.js +148 -0
- package/lib/components/QueryBuilderParameterPanel.js.map +1 -0
- package/lib/components/QueryBuilderPostFilterPanel.d.ts +31 -0
- package/lib/components/QueryBuilderPostFilterPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderPostFilterPanel.js +373 -0
- package/lib/components/QueryBuilderPostFilterPanel.js.map +1 -0
- package/lib/components/QueryBuilderProjectionPanel.d.ts +23 -0
- package/lib/components/QueryBuilderProjectionPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderProjectionPanel.js +229 -0
- package/lib/components/QueryBuilderProjectionPanel.js.map +1 -0
- package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts +30 -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/QueryBuilderPropertyInfoTooltip.d.ts +26 -0
- package/lib/components/QueryBuilderPropertyInfoTooltip.d.ts.map +1 -0
- package/lib/components/QueryBuilderPropertyInfoTooltip.js +32 -0
- package/lib/components/QueryBuilderPropertyInfoTooltip.js.map +1 -0
- package/lib/components/QueryBuilderPropertySearchPanel.d.ts +24 -0
- package/lib/components/QueryBuilderPropertySearchPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderPropertySearchPanel.js +202 -0
- package/lib/components/QueryBuilderPropertySearchPanel.js.map +1 -0
- package/lib/components/QueryBuilderResultModifierPanel.d.ts +23 -0
- package/lib/components/QueryBuilderResultModifierPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderResultModifierPanel.js +88 -0
- package/lib/components/QueryBuilderResultModifierPanel.js.map +1 -0
- package/lib/components/QueryBuilderResultPanel.d.ts +23 -0
- package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderResultPanel.js +223 -0
- package/lib/components/QueryBuilderResultPanel.js.map +1 -0
- package/lib/components/QueryBuilderSetupPanel.d.ts +23 -0
- package/lib/components/QueryBuilderSetupPanel.d.ts.map +1 -0
- package/lib/components/QueryBuilderSetupPanel.js +148 -0
- package/lib/components/QueryBuilderSetupPanel.js.map +1 -0
- package/lib/components/QueryBuilderTextEditor.d.ts +23 -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 +23 -0
- package/lib/components/QueryBuilderUnsupportedQueryEditor.d.ts.map +1 -0
- package/lib/components/QueryBuilderUnsupportedQueryEditor.js +35 -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/QueryEditor.d.ts +29 -0
- package/lib/components/QueryEditor.d.ts.map +1 -0
- package/lib/components/QueryEditor.js +130 -0
- package/lib/components/QueryEditor.js.map +1 -0
- package/lib/components/QueryEditorComponentTestUtils.d.ts +35 -0
- package/lib/components/QueryEditorComponentTestUtils.d.ts.map +1 -0
- package/lib/components/QueryEditorComponentTestUtils.js +108 -0
- package/lib/components/QueryEditorComponentTestUtils.js.map +1 -0
- package/lib/components/QueryEditorStoreProvider.d.ts +37 -0
- package/lib/components/QueryEditorStoreProvider.d.ts.map +1 -0
- package/lib/components/QueryEditorStoreProvider.js +48 -0
- package/lib/components/QueryEditorStoreProvider.js.map +1 -0
- package/lib/components/QuerySetup.d.ts +18 -0
- package/lib/components/QuerySetup.d.ts.map +1 -0
- package/lib/components/QuerySetup.js +388 -0
- package/lib/components/QuerySetup.js.map +1 -0
- package/lib/components/QuerySetupStoreProvider.d.ts +23 -0
- package/lib/components/QuerySetupStoreProvider.d.ts.map +1 -0
- package/lib/components/QuerySetupStoreProvider.js +35 -0
- package/lib/components/QuerySetupStoreProvider.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/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 +68 -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 +36 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +36 -0
- package/lib/index.js.map +1 -0
- package/lib/package.json +99 -0
- package/lib/stores/LegendQueryApplicationPlugin.d.ts +47 -0
- package/lib/stores/LegendQueryApplicationPlugin.d.ts.map +1 -0
- package/lib/stores/LegendQueryApplicationPlugin.js +27 -0
- package/lib/stores/LegendQueryApplicationPlugin.js.map +1 -0
- package/lib/stores/LegendQueryBaseStore.d.ts +28 -0
- package/lib/stores/LegendQueryBaseStore.d.ts.map +1 -0
- package/lib/stores/LegendQueryBaseStore.js +28 -0
- package/lib/stores/LegendQueryBaseStore.js.map +1 -0
- package/lib/stores/LegendQueryEventService.d.ts +27 -0
- package/lib/stores/LegendQueryEventService.d.ts.map +1 -0
- package/lib/stores/LegendQueryEventService.js +29 -0
- package/lib/stores/LegendQueryEventService.js.map +1 -0
- package/lib/stores/LegendQueryRouter.d.ts +55 -0
- package/lib/stores/LegendQueryRouter.d.ts.map +1 -0
- package/lib/stores/LegendQueryRouter.js +50 -0
- package/lib/stores/LegendQueryRouter.js.map +1 -0
- package/lib/stores/QueryBuilderAggregationState.d.ts +53 -0
- package/lib/stores/QueryBuilderAggregationState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderAggregationState.js +122 -0
- package/lib/stores/QueryBuilderAggregationState.js.map +1 -0
- package/lib/stores/QueryBuilderExplorerState.d.ts +93 -0
- package/lib/stores/QueryBuilderExplorerState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderExplorerState.js +310 -0
- package/lib/stores/QueryBuilderExplorerState.js.map +1 -0
- package/lib/stores/QueryBuilderFetchStructureState.d.ts +33 -0
- package/lib/stores/QueryBuilderFetchStructureState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderFetchStructureState.js +50 -0
- package/lib/stores/QueryBuilderFetchStructureState.js.map +1 -0
- package/lib/stores/QueryBuilderFilterState.d.ts +127 -0
- package/lib/stores/QueryBuilderFilterState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderFilterState.js +566 -0
- package/lib/stores/QueryBuilderFilterState.js.map +1 -0
- package/lib/stores/QueryBuilderGraphFetchTreeState.d.ts +35 -0
- package/lib/stores/QueryBuilderGraphFetchTreeState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderGraphFetchTreeState.js +65 -0
- package/lib/stores/QueryBuilderGraphFetchTreeState.js.map +1 -0
- package/lib/stores/QueryBuilderGraphFetchTreeUtil.d.ts +41 -0
- package/lib/stores/QueryBuilderGraphFetchTreeUtil.d.ts.map +1 -0
- package/lib/stores/QueryBuilderGraphFetchTreeUtil.js +173 -0
- package/lib/stores/QueryBuilderGraphFetchTreeUtil.js.map +1 -0
- package/lib/stores/QueryBuilderLambdaBuilder.d.ts +30 -0
- package/lib/stores/QueryBuilderLambdaBuilder.d.ts.map +1 -0
- package/lib/stores/QueryBuilderLambdaBuilder.js +407 -0
- package/lib/stores/QueryBuilderLambdaBuilder.js.map +1 -0
- package/lib/stores/QueryBuilderLambdaProcessor.d.ts +56 -0
- package/lib/stores/QueryBuilderLambdaProcessor.d.ts.map +1 -0
- package/lib/stores/QueryBuilderLambdaProcessor.js +544 -0
- package/lib/stores/QueryBuilderLambdaProcessor.js.map +1 -0
- package/lib/stores/QueryBuilderOperatorsHelper.d.ts +28 -0
- package/lib/stores/QueryBuilderOperatorsHelper.d.ts.map +1 -0
- package/lib/stores/QueryBuilderOperatorsHelper.js +123 -0
- package/lib/stores/QueryBuilderOperatorsHelper.js.map +1 -0
- package/lib/stores/QueryBuilderPostFilterOperator.d.ts +29 -0
- package/lib/stores/QueryBuilderPostFilterOperator.d.ts.map +1 -0
- package/lib/stores/QueryBuilderPostFilterOperator.js +30 -0
- package/lib/stores/QueryBuilderPostFilterOperator.js.map +1 -0
- package/lib/stores/QueryBuilderPostFilterProcessor.d.ts +24 -0
- package/lib/stores/QueryBuilderPostFilterProcessor.d.ts.map +1 -0
- package/lib/stores/QueryBuilderPostFilterProcessor.js +111 -0
- package/lib/stores/QueryBuilderPostFilterProcessor.js.map +1 -0
- package/lib/stores/QueryBuilderPostFilterState.d.ts +132 -0
- package/lib/stores/QueryBuilderPostFilterState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderPostFilterState.js +559 -0
- package/lib/stores/QueryBuilderPostFilterState.js.map +1 -0
- package/lib/stores/QueryBuilderPreviewDataHelper.d.ts +25 -0
- package/lib/stores/QueryBuilderPreviewDataHelper.d.ts.map +1 -0
- package/lib/stores/QueryBuilderPreviewDataHelper.js +161 -0
- package/lib/stores/QueryBuilderPreviewDataHelper.js.map +1 -0
- package/lib/stores/QueryBuilderProjectionState.d.ts +104 -0
- package/lib/stores/QueryBuilderProjectionState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderProjectionState.js +432 -0
- package/lib/stores/QueryBuilderProjectionState.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 +384 -0
- package/lib/stores/QueryBuilderPropertyEditorState.js.map +1 -0
- package/lib/stores/QueryBuilderPropertySearchPanelState.d.ts +46 -0
- package/lib/stores/QueryBuilderPropertySearchPanelState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderPropertySearchPanelState.js +240 -0
- package/lib/stores/QueryBuilderPropertySearchPanelState.js.map +1 -0
- package/lib/stores/QueryBuilderResultState.d.ts +38 -0
- package/lib/stores/QueryBuilderResultState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderResultState.js +164 -0
- package/lib/stores/QueryBuilderResultState.js.map +1 -0
- package/lib/stores/QueryBuilderSetupState.d.ts +46 -0
- package/lib/stores/QueryBuilderSetupState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderSetupState.js +163 -0
- package/lib/stores/QueryBuilderSetupState.js.map +1 -0
- package/lib/stores/QueryBuilderState.d.ts +101 -0
- package/lib/stores/QueryBuilderState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderState.js +371 -0
- package/lib/stores/QueryBuilderState.js.map +1 -0
- package/lib/stores/QueryBuilderUnsupportedState.d.ts +26 -0
- package/lib/stores/QueryBuilderUnsupportedState.d.ts.map +1 -0
- package/lib/stores/QueryBuilderUnsupportedState.js +36 -0
- package/lib/stores/QueryBuilderUnsupportedState.js.map +1 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts +19 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts.map +1 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js +50 -0
- package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js.map +1 -0
- package/lib/stores/QueryEditorStore.d.ts +98 -0
- package/lib/stores/QueryEditorStore.d.ts.map +1 -0
- package/lib/stores/QueryEditorStore.js +370 -0
- package/lib/stores/QueryEditorStore.js.map +1 -0
- package/lib/stores/QueryEditorStoreTestUtils.d.ts +18 -0
- package/lib/stores/QueryEditorStoreTestUtils.d.ts.map +1 -0
- package/lib/stores/QueryEditorStoreTestUtils.js +42 -0
- package/lib/stores/QueryEditorStoreTestUtils.js.map +1 -0
- package/lib/stores/QueryFunctionsExplorerState.d.ts +63 -0
- package/lib/stores/QueryFunctionsExplorerState.d.ts.map +1 -0
- package/lib/stores/QueryFunctionsExplorerState.js +238 -0
- package/lib/stores/QueryFunctionsExplorerState.js.map +1 -0
- package/lib/stores/QueryParametersState.d.ts +30 -0
- package/lib/stores/QueryParametersState.d.ts.map +1 -0
- package/lib/stores/QueryParametersState.js +42 -0
- package/lib/stores/QueryParametersState.js.map +1 -0
- package/lib/stores/QueryResultSetModifierState.d.ts +52 -0
- package/lib/stores/QueryResultSetModifierState.d.ts.map +1 -0
- package/lib/stores/QueryResultSetModifierState.js +165 -0
- package/lib/stores/QueryResultSetModifierState.js.map +1 -0
- package/lib/stores/QuerySetupStore.d.ts +86 -0
- package/lib/stores/QuerySetupStore.d.ts.map +1 -0
- package/lib/stores/QuerySetupStore.js +297 -0
- package/lib/stores/QuerySetupStore.js.map +1 -0
- package/lib/stores/QueryTextEditorState.d.ts +49 -0
- package/lib/stores/QueryTextEditorState.d.ts.map +1 -0
- package/lib/stores/QueryTextEditorState.js +145 -0
- package/lib/stores/QueryTextEditorState.js.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.d.ts +21 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.d.ts.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.js +40 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.js.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.d.ts +26 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.d.ts.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.js +50 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.js.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.d.ts +26 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.d.ts.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.js +55 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.js.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.d.ts +25 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.d.ts.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.js +50 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.js.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.d.ts +26 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.d.ts.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.js +77 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.js.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.d.ts +26 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.d.ts.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.js +66 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.js.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.d.ts +25 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.d.ts.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.js +86 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.js.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.d.ts +25 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.d.ts.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.js +86 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.js.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.d.ts +26 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.d.ts.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.js +50 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.js.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts +26 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.js +50 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.js.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.d.ts +25 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.d.ts.map +1 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.js +45 -0
- package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.js.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperatorHelper.d.ts +20 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperatorHelper.d.ts.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperatorHelper.js +257 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperatorHelper.js.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_Contain.d.ts +31 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_Contain.d.ts.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_Contain.js +72 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_Contain.js.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_EndWith.d.ts +31 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_EndWith.d.ts.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_EndWith.js +72 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_EndWith.js.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_Equal.d.ts +31 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_Equal.d.ts.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_Equal.js +139 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_Equal.js.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.d.ts +26 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.d.ts.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.js +107 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.js.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts +26 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.js +107 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.js.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_In.d.ts +31 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_In.d.ts.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_In.js +103 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_In.js.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.d.ts +31 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.d.ts.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.js +65 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.js.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThan.d.ts +26 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThan.d.ts.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThan.js +108 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThan.js.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.d.ts +26 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.d.ts.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.js +107 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.js.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_StartWith.d.ts +31 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_StartWith.d.ts.map +1 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_StartWith.js +72 -0
- package/lib/stores/filterOperators/QueryBuilderFilterOperator_StartWith.js.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.d.ts +23 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.d.ts.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.js +74 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.js.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.d.ts +32 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.d.ts.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.js +76 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.js.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.d.ts +32 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.d.ts.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.js +76 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.js.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.d.ts +32 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.d.ts.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.js +142 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.js.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.d.ts +27 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.d.ts.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.js +105 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.js.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts +24 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.js +43 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.js.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.d.ts +32 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.d.ts.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.js +104 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.js.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.d.ts +33 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.d.ts.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.js +67 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.js.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.d.ts +27 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.d.ts.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.js +105 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.js.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts +24 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.js +43 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.js.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.d.ts +32 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.d.ts.map +1 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.js +76 -0
- package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.js.map +1 -0
- package/package.json +99 -0
- package/src/LegendQueryAppEvent.ts +20 -0
- package/src/QueryBuilder_Const.ts +88 -0
- package/src/application/LegendQuery.tsx +92 -0
- package/src/application/LegendQueryApplicationConfig.ts +77 -0
- package/src/application/LegendQueryPluginManager.ts +67 -0
- package/src/components/LegendQueryApplication.tsx +104 -0
- package/src/components/LegendQueryBaseStoreProvider.tsx +68 -0
- package/src/components/QueryBuilder.tsx +375 -0
- package/src/components/QueryBuilderExplorerPanel.tsx +998 -0
- package/src/components/QueryBuilderFetchStructurePanel.tsx +184 -0
- package/src/components/QueryBuilderFilterPanel.tsx +858 -0
- package/src/components/QueryBuilderFunctionsExplorerPanel.tsx +598 -0
- package/src/components/QueryBuilderGraphFetchTreePanel.tsx +270 -0
- package/src/components/QueryBuilderLambdaEditor.tsx +117 -0
- package/src/components/QueryBuilderMilestoneEditor.tsx +291 -0
- package/src/components/QueryBuilderParameterPanel.tsx +434 -0
- package/src/components/QueryBuilderPostFilterPanel.tsx +1061 -0
- package/src/components/QueryBuilderProjectionPanel.tsx +652 -0
- package/src/components/QueryBuilderPropertyExpressionEditor.tsx +370 -0
- package/src/components/QueryBuilderPropertyInfoTooltip.tsx +87 -0
- package/src/components/QueryBuilderPropertySearchPanel.tsx +617 -0
- package/src/components/QueryBuilderResultModifierPanel.tsx +252 -0
- package/src/components/QueryBuilderResultPanel.tsx +582 -0
- package/src/components/QueryBuilderSetupPanel.tsx +341 -0
- package/src/components/QueryBuilderTextEditor.tsx +127 -0
- package/src/components/QueryBuilderUnsupportedQueryEditor.tsx +110 -0
- package/src/components/QueryBuilder_TestID.ts +26 -0
- package/src/components/QueryEditor.tsx +345 -0
- package/src/components/QueryEditorComponentTestUtils.tsx +200 -0
- package/src/components/QueryEditorStoreProvider.tsx +128 -0
- package/src/components/QuerySetup.tsx +907 -0
- package/src/components/QuerySetupStoreProvider.tsx +65 -0
- package/src/components/shared/ElementIconUtils.tsx +47 -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 +170 -0
- package/src/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.ts +573 -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 +57 -0
- package/src/stores/LegendQueryApplicationPlugin.ts +61 -0
- package/src/stores/LegendQueryBaseStore.ts +47 -0
- package/src/stores/LegendQueryEventService.ts +38 -0
- package/src/stores/LegendQueryRouter.ts +114 -0
- package/src/stores/QueryBuilderAggregationState.ts +208 -0
- package/src/stores/QueryBuilderExplorerState.ts +590 -0
- package/src/stores/QueryBuilderFetchStructureState.ts +59 -0
- package/src/stores/QueryBuilderFilterState.ts +815 -0
- package/src/stores/QueryBuilderGraphFetchTreeState.ts +90 -0
- package/src/stores/QueryBuilderGraphFetchTreeUtil.ts +281 -0
- package/src/stores/QueryBuilderLambdaBuilder.ts +755 -0
- package/src/stores/QueryBuilderLambdaProcessor.ts +1239 -0
- package/src/stores/QueryBuilderOperatorsHelper.ts +191 -0
- package/src/stores/QueryBuilderPostFilterOperator.ts +66 -0
- package/src/stores/QueryBuilderPostFilterProcessor.ts +275 -0
- package/src/stores/QueryBuilderPostFilterState.ts +762 -0
- package/src/stores/QueryBuilderPreviewDataHelper.ts +300 -0
- package/src/stores/QueryBuilderProjectionState.ts +796 -0
- package/src/stores/QueryBuilderPropertyEditorState.ts +656 -0
- package/src/stores/QueryBuilderPropertySearchPanelState.ts +331 -0
- package/src/stores/QueryBuilderResultState.ts +263 -0
- package/src/stores/QueryBuilderSetupState.ts +236 -0
- package/src/stores/QueryBuilderState.ts +561 -0
- package/src/stores/QueryBuilderUnsupportedState.ts +42 -0
- package/src/stores/QueryBuilderValueSpecificationBuilderHelper.ts +76 -0
- package/src/stores/QueryEditorStore.ts +648 -0
- package/src/stores/QueryEditorStoreTestUtils.ts +46 -0
- package/src/stores/QueryFunctionsExplorerState.ts +386 -0
- package/src/stores/QueryParametersState.ts +54 -0
- package/src/stores/QueryResultSetModifierState.ts +307 -0
- package/src/stores/QuerySetupStore.ts +430 -0
- package/src/stores/QueryTextEditorState.ts +203 -0
- package/src/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.ts +111 -0
- package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.ts +100 -0
- package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.ts +108 -0
- package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.ts +98 -0
- package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.ts +175 -0
- package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.ts +157 -0
- package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.ts +176 -0
- package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.ts +176 -0
- package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.ts +100 -0
- package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.ts +100 -0
- package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.ts +90 -0
- package/src/stores/filterOperators/QueryBuilderFilterOperatorHelper.ts +524 -0
- package/src/stores/filterOperators/QueryBuilderFilterOperator_Contain.ts +134 -0
- package/src/stores/filterOperators/QueryBuilderFilterOperator_EndWith.ts +134 -0
- package/src/stores/filterOperators/QueryBuilderFilterOperator_Equal.ts +233 -0
- package/src/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.ts +164 -0
- package/src/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.ts +164 -0
- package/src/stores/filterOperators/QueryBuilderFilterOperator_In.ts +181 -0
- package/src/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.ts +125 -0
- package/src/stores/filterOperators/QueryBuilderFilterOperator_LessThan.ts +165 -0
- package/src/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.ts +164 -0
- package/src/stores/filterOperators/QueryBuilderFilterOperator_StartWith.ts +134 -0
- package/src/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.ts +129 -0
- package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.ts +140 -0
- package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.ts +135 -0
- package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.ts +238 -0
- package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.ts +161 -0
- package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.ts +70 -0
- package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.ts +183 -0
- package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.ts +113 -0
- package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.ts +161 -0
- package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.ts +70 -0
- package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.ts +135 -0
- package/tsconfig.json +155 -0
- package/tsconfig.package.json +38 -0
@@ -0,0 +1,544 @@
|
|
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
|
+
import { assertNonNullable, assertTrue, assertType, guaranteeNonNullable, guaranteeType, isNonNullable, isNumber, isString, returnUndefOnError, UnsupportedOperationError, } from '@finos/legend-shared';
|
17
|
+
import { COLUMN_SORT_TYPE, SortColumnState, } from './QueryResultSetModifierState.js';
|
18
|
+
import { QueryBuilderFilterTreeGroupNodeData, QueryBuilderFilterTreeConditionNodeData, } from './QueryBuilderFilterState.js';
|
19
|
+
import { FETCH_STRUCTURE_MODE } from './QueryBuilderFetchStructureState.js';
|
20
|
+
import { MILESTONING_STEREOTYPE, DerivedProperty, RawLambda, matchFunctionName, Class, CollectionInstanceValue, GraphFetchTreeInstanceValue, LambdaFunctionInstanceValue, PrimitiveInstanceValue, RootGraphFetchTree, SimpleFunctionExpression, VariableExpression, AbstractPropertyExpression, V1_deserializeRawValueSpecification, V1_RawLambda, getMilestoneTemporalStereotype, } from '@finos/legend-graph';
|
21
|
+
import { QueryBuilderDerivationProjectionColumnState, QueryBuilderSimpleProjectionColumnState, } from './QueryBuilderProjectionState.js';
|
22
|
+
import { toGroupOperation } from './QueryBuilderOperatorsHelper.js';
|
23
|
+
import { processPostFilterLambda } from './QueryBuilderPostFilterProcessor.js';
|
24
|
+
import { getDerivedPropertyMilestoningSteoreotype } from './QueryBuilderPropertyEditorState.js';
|
25
|
+
import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../QueryBuilder_Const.js';
|
26
|
+
import { LambdaParameterState } from '@finos/legend-application';
|
27
|
+
const getNullableStringValueFromValueSpec = (valueSpec) => {
|
28
|
+
if (valueSpec instanceof PrimitiveInstanceValue &&
|
29
|
+
isString(valueSpec.values[0])) {
|
30
|
+
return valueSpec.values[0];
|
31
|
+
}
|
32
|
+
return undefined;
|
33
|
+
};
|
34
|
+
const getNullableNumberValueFromValueSpec = (valueSpec) => {
|
35
|
+
if (valueSpec instanceof PrimitiveInstanceValue &&
|
36
|
+
isNumber(valueSpec.values[0])) {
|
37
|
+
return valueSpec.values[0];
|
38
|
+
}
|
39
|
+
return undefined;
|
40
|
+
};
|
41
|
+
/**
|
42
|
+
* Checks if the milestoning property expression is valid in terms of number of parameter values provided
|
43
|
+
* in relation to its milestoning type.
|
44
|
+
*
|
45
|
+
* NOTE: this takes date propgation into account. See the table below for all
|
46
|
+
* the combination:
|
47
|
+
*
|
48
|
+
* | [source] | | | | |
|
49
|
+
* ----------------------------------------------------------------------
|
50
|
+
* [target] | | NONE | PR_TMP | BI_TMP | BU_TMP |
|
51
|
+
* ----------------------------------------------------------------------
|
52
|
+
* | NONE | N.A. | PRD | PRD,BUD | BUD |
|
53
|
+
* ----------------------------------------------------------------------
|
54
|
+
* | PR_TMP | N.A. | X | PRD,BUD | BUD |
|
55
|
+
* ----------------------------------------------------------------------
|
56
|
+
* | BI_TMP | N.A. | X | X | X |
|
57
|
+
* ----------------------------------------------------------------------
|
58
|
+
* | BU_TMP | N.A. | PRD | PRD,BUD | X |
|
59
|
+
* ----------------------------------------------------------------------
|
60
|
+
*
|
61
|
+
* Annotations:
|
62
|
+
*
|
63
|
+
* [source]: source temporal type
|
64
|
+
* [target]: target temporal type
|
65
|
+
*
|
66
|
+
* PR_TMP : processing temporal
|
67
|
+
* BI_TMP : bitemporal
|
68
|
+
* BU_TMP : business temporal
|
69
|
+
*
|
70
|
+
* X : no default date propagated
|
71
|
+
* PRD : default processing date is propagated
|
72
|
+
* BUD : default business date is propgated
|
73
|
+
*/
|
74
|
+
const validatePropertyExpressionChain = (propertyExpression, graph) => {
|
75
|
+
if (propertyExpression.func.genericType.value.rawType instanceof Class &&
|
76
|
+
propertyExpression.func._OWNER._generatedMilestonedProperties.length !== 0) {
|
77
|
+
const name = propertyExpression.func.name;
|
78
|
+
const func = propertyExpression.func._OWNER._generatedMilestonedProperties.find((e) => e.name === name);
|
79
|
+
if (func) {
|
80
|
+
const targetStereotype = getMilestoneTemporalStereotype(propertyExpression.func.genericType.value.rawType, graph);
|
81
|
+
if (targetStereotype) {
|
82
|
+
const sourceStereotype = getDerivedPropertyMilestoningSteoreotype(guaranteeType(func, DerivedProperty), graph);
|
83
|
+
if (sourceStereotype !== MILESTONING_STEREOTYPE.BITEMPORAL &&
|
84
|
+
targetStereotype !== sourceStereotype) {
|
85
|
+
if (targetStereotype === MILESTONING_STEREOTYPE.BITEMPORAL) {
|
86
|
+
if (propertyExpression.parametersValues.length !== 3 &&
|
87
|
+
!sourceStereotype) {
|
88
|
+
throw new UnsupportedOperationError(`Property of milestoning sterotype '${MILESTONING_STEREOTYPE.BITEMPORAL}' should have exactly two parameters`);
|
89
|
+
}
|
90
|
+
else if (propertyExpression.parametersValues.length < 2) {
|
91
|
+
throw new UnsupportedOperationError(`Property of milestoning sterotype '${MILESTONING_STEREOTYPE.BITEMPORAL}' should have at least one parameter`);
|
92
|
+
}
|
93
|
+
else if (propertyExpression.parametersValues.length > 3) {
|
94
|
+
throw new UnsupportedOperationError(`Property of milestoning sterotype '${MILESTONING_STEREOTYPE.BITEMPORAL}' should not have more than two parameters`);
|
95
|
+
}
|
96
|
+
}
|
97
|
+
else if (propertyExpression.parametersValues.length !== 2) {
|
98
|
+
throw new UnsupportedOperationError(`Property of milestoning sterotype '${targetStereotype}' should have exactly one parameter`);
|
99
|
+
}
|
100
|
+
}
|
101
|
+
}
|
102
|
+
}
|
103
|
+
}
|
104
|
+
};
|
105
|
+
const processFilterExpression = (expression, filterState, parentFilterNodeId) => {
|
106
|
+
const parentNode = parentFilterNodeId
|
107
|
+
? filterState.getNode(parentFilterNodeId)
|
108
|
+
: undefined;
|
109
|
+
if ([
|
110
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.AND,
|
111
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.OR,
|
112
|
+
].some((fn) => matchFunctionName(expression.functionName, fn))) {
|
113
|
+
const groupNode = new QueryBuilderFilterTreeGroupNodeData(parentFilterNodeId, toGroupOperation(expression.functionName));
|
114
|
+
filterState.nodes.set(groupNode.id, groupNode);
|
115
|
+
expression.parametersValues.forEach((filterExpression) => processFilterExpression(guaranteeType(filterExpression, SimpleFunctionExpression, `Can't process filter group expression: each child expression must be a function expression`), filterState, groupNode.id));
|
116
|
+
filterState.addNodeFromNode(groupNode, parentNode);
|
117
|
+
}
|
118
|
+
else {
|
119
|
+
const propertyExpression = expression.parametersValues[0];
|
120
|
+
if (propertyExpression instanceof AbstractPropertyExpression) {
|
121
|
+
const currentPropertyExpression = propertyExpression.parametersValues[0];
|
122
|
+
if (currentPropertyExpression instanceof AbstractPropertyExpression) {
|
123
|
+
validatePropertyExpressionChain(currentPropertyExpression, filterState.queryBuilderState.graphManagerState.graph);
|
124
|
+
}
|
125
|
+
}
|
126
|
+
for (const operator of filterState.operators) {
|
127
|
+
// NOTE: this allow plugin author to either return `undefined` or throw error
|
128
|
+
// if there is a problem with building the lambda. Either case, the plugin is
|
129
|
+
// considered as not supporting the lambda.
|
130
|
+
const filterConditionState = returnUndefOnError(() => operator.buildFilterConditionState(filterState, expression));
|
131
|
+
if (filterConditionState) {
|
132
|
+
filterState.addNodeFromNode(new QueryBuilderFilterTreeConditionNodeData(undefined, filterConditionState), parentNode);
|
133
|
+
return;
|
134
|
+
}
|
135
|
+
}
|
136
|
+
throw new UnsupportedOperationError(`Can't process filter() expression: no compatible filter operator processer available from plugins`);
|
137
|
+
}
|
138
|
+
};
|
139
|
+
const processFilterLambda = (filterLambda, filterState) => {
|
140
|
+
const lambdaFunc = guaranteeNonNullable(filterLambda.values[0], `Can't process filter() lambda: filter() lambda function is missing`);
|
141
|
+
assertTrue(lambdaFunc.expressionSequence.length === 1, `Can't process filter() lambda: only support filter() lambda body with 1 expression`);
|
142
|
+
const rootExpression = guaranteeType(lambdaFunc.expressionSequence[0], SimpleFunctionExpression, `Can't process filter() lambda: only support filter() lambda body with 1 expression`);
|
143
|
+
assertTrue(lambdaFunc.functionType.parameters.length === 1, `Can't process filter() lambda: only support filter() lambda with 1 parameter`);
|
144
|
+
filterState.setLambdaParameterName(guaranteeType(lambdaFunc.functionType.parameters[0], VariableExpression, `Can't process filter() lambda: only support filter() lambda with 1 parameter`).name);
|
145
|
+
processFilterExpression(rootExpression, filterState, undefined);
|
146
|
+
};
|
147
|
+
const processAggregateLambda = (aggregateLambda, projectionColumnState, aggregationState) => {
|
148
|
+
const lambdaFunc = guaranteeNonNullable(aggregateLambda.values[0], `Can't process agg() lambda: agg() lambda function is missing`);
|
149
|
+
assertTrue(lambdaFunc.expressionSequence.length === 1, `Can't process agg() lambda: only support agg() lambda body with 1 expression`);
|
150
|
+
const expression = guaranteeType(lambdaFunc.expressionSequence[0], SimpleFunctionExpression, `Can't process agg() lambda: only support agg() lambda body with 1 expression`);
|
151
|
+
assertTrue(lambdaFunc.functionType.parameters.length === 1, `Can't process agg() lambda: only support agg() lambda with 1 parameter`);
|
152
|
+
const lambdaParam = guaranteeType(lambdaFunc.functionType.parameters[0], VariableExpression, `Can't process agg() lambda: only support agg() lambda with 1 parameter`);
|
153
|
+
for (const operator of aggregationState.operators) {
|
154
|
+
// NOTE: this allow plugin author to either return `undefined` or throw error
|
155
|
+
// if there is a problem with building the lambda. Either case, the plugin is
|
156
|
+
// considered as not supporting the lambda.
|
157
|
+
const aggregateColumnState = returnUndefOnError(() => operator.buildAggregateColumnState(expression, lambdaParam, projectionColumnState));
|
158
|
+
if (aggregateColumnState) {
|
159
|
+
aggregationState.addColumn(aggregateColumnState);
|
160
|
+
return;
|
161
|
+
}
|
162
|
+
}
|
163
|
+
throw new UnsupportedOperationError(`Can't process aggregate expression function: no compatible aggregate operator processer available from plugins`);
|
164
|
+
};
|
165
|
+
/**
|
166
|
+
* This is the expression processor for query builder.
|
167
|
+
* Unlike expression builder which takes care of transforming the value specification
|
168
|
+
* from `protocol` to `metamodel`, and type-inferencing, this takes care
|
169
|
+
* of traversing the expression to populate the query builder UI state.
|
170
|
+
*
|
171
|
+
* NOTE: While traversing the expression, this processor also does a fair amount of
|
172
|
+
* validations and assertsions but just so enough to populate the UI state.
|
173
|
+
*
|
174
|
+
* Validation and assertion should be done by both the builder and processor, but the builder
|
175
|
+
* will do more structural checks to build the proper metamodel. The processor should never
|
176
|
+
* modify the metamodel, just traversing it.
|
177
|
+
*/
|
178
|
+
export class QueryBuilderLambdaProcessor {
|
179
|
+
queryBuilderState;
|
180
|
+
precedingExpression;
|
181
|
+
constructor(queryBuilderState, precedingExpression) {
|
182
|
+
this.queryBuilderState = queryBuilderState;
|
183
|
+
this.precedingExpression = precedingExpression;
|
184
|
+
}
|
185
|
+
visit_INTERNAL__UnknownValueSpecification(valueSpecification) {
|
186
|
+
assertNonNullable(this.precedingExpression, `Can't process unknown value: unknown value preceding expression cannot be retrieved`);
|
187
|
+
const precedingExpressionName = this.precedingExpression.functionName;
|
188
|
+
if ([
|
189
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT,
|
190
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY,
|
191
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_AGG,
|
192
|
+
].some((fn) => matchFunctionName(precedingExpressionName, fn))) {
|
193
|
+
const projectionState = this.queryBuilderState.fetchStructureState.projectionState;
|
194
|
+
const rawLambdaProtocol = returnUndefOnError(() => guaranteeType(V1_deserializeRawValueSpecification(valueSpecification.content), V1_RawLambda));
|
195
|
+
assertNonNullable(rawLambdaProtocol, `Can't process unknown value: only support ${precedingExpressionName}() column expression as a lambda`);
|
196
|
+
const columnState = new QueryBuilderDerivationProjectionColumnState(projectionState, new RawLambda(rawLambdaProtocol.parameters, rawLambdaProtocol.body));
|
197
|
+
projectionState.addColumn(columnState, { skipSorting: true });
|
198
|
+
return;
|
199
|
+
}
|
200
|
+
throw new UnsupportedOperationError(`Can't process unknown value with preceding expression of function ${this.precedingExpression.functionName}()`);
|
201
|
+
}
|
202
|
+
visit_RootGraphFetchTreeInstanceValue(valueSpecification) {
|
203
|
+
throw new UnsupportedOperationError();
|
204
|
+
}
|
205
|
+
visit_PropertyGraphFetchTreeInstanceValue(valueSpecification) {
|
206
|
+
throw new UnsupportedOperationError();
|
207
|
+
}
|
208
|
+
visit_AlloySerializationConfigInstanceValue(valueSpecification) {
|
209
|
+
throw new UnsupportedOperationError();
|
210
|
+
}
|
211
|
+
visit_PrimitiveInstanceValue(valueSpecification) {
|
212
|
+
throw new UnsupportedOperationError();
|
213
|
+
}
|
214
|
+
visit_EnumValueInstanceValue(valueSpecification) {
|
215
|
+
throw new UnsupportedOperationError();
|
216
|
+
}
|
217
|
+
visit_RuntimeInstanceValue(valueSpecification) {
|
218
|
+
throw new UnsupportedOperationError();
|
219
|
+
}
|
220
|
+
visit_PairInstanceValue(valueSpecification) {
|
221
|
+
throw new UnsupportedOperationError();
|
222
|
+
}
|
223
|
+
visit_MappingInstanceValue(valueSpecification) {
|
224
|
+
throw new UnsupportedOperationError();
|
225
|
+
}
|
226
|
+
visit_PureListInstanceValue(valueSpecification) {
|
227
|
+
throw new UnsupportedOperationError();
|
228
|
+
}
|
229
|
+
visit_CollectionInstanceValue(valueSpecification) {
|
230
|
+
throw new UnsupportedOperationError();
|
231
|
+
}
|
232
|
+
visit_FunctionExpression(valueSpecification) {
|
233
|
+
throw new UnsupportedOperationError();
|
234
|
+
}
|
235
|
+
visit_INTERNAL__PropagatedValue(valueSpecification) {
|
236
|
+
throw new UnsupportedOperationError();
|
237
|
+
}
|
238
|
+
visit_SimpleFunctionExpression(valueSpecification) {
|
239
|
+
const functionName = valueSpecification.functionName;
|
240
|
+
if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.GET_ALL)) {
|
241
|
+
const _class = valueSpecification.genericType?.value.rawType;
|
242
|
+
assertType(_class, Class, `Can't process getAll() expression: getAll() return type is missing`);
|
243
|
+
this.queryBuilderState.querySetupState.setClass(_class, true);
|
244
|
+
this.queryBuilderState.explorerState.refreshTreeData();
|
245
|
+
let acceptedNoOfParameters = 1;
|
246
|
+
const stereotype = getMilestoneTemporalStereotype(_class, this.queryBuilderState.graphManagerState.graph);
|
247
|
+
switch (stereotype) {
|
248
|
+
case MILESTONING_STEREOTYPE.BITEMPORAL:
|
249
|
+
acceptedNoOfParameters = 3;
|
250
|
+
assertTrue(valueSpecification.parametersValues.length ===
|
251
|
+
acceptedNoOfParameters, `Can't process getAll() expression: when used with a bitemporal milestoned class getAll() expects two parameters`);
|
252
|
+
this.queryBuilderState.querySetupState.setProcessingDate(valueSpecification.parametersValues[1]);
|
253
|
+
this.queryBuilderState.querySetupState.setBusinessDate(valueSpecification.parametersValues[2]);
|
254
|
+
break;
|
255
|
+
case MILESTONING_STEREOTYPE.BUSINESS_TEMPORAL:
|
256
|
+
acceptedNoOfParameters = 2;
|
257
|
+
assertTrue(valueSpecification.parametersValues.length ===
|
258
|
+
acceptedNoOfParameters, `Can't process getAll() expression: when used with a milestoned class getAll() expects a parameter`);
|
259
|
+
this.queryBuilderState.querySetupState.setBusinessDate(valueSpecification.parametersValues[1]);
|
260
|
+
break;
|
261
|
+
case MILESTONING_STEREOTYPE.PROCESSING_TEMPORAL:
|
262
|
+
acceptedNoOfParameters = 2;
|
263
|
+
assertTrue(valueSpecification.parametersValues.length ===
|
264
|
+
acceptedNoOfParameters, `Can't process getAll() expression: when used with a milestoned class getAll() expects a parameter`);
|
265
|
+
this.queryBuilderState.querySetupState.setProcessingDate(valueSpecification.parametersValues[1]);
|
266
|
+
break;
|
267
|
+
default:
|
268
|
+
assertTrue(valueSpecification.parametersValues.length ===
|
269
|
+
acceptedNoOfParameters, `Can't process getAll() expression: getAll() expects no arguments`);
|
270
|
+
}
|
271
|
+
return;
|
272
|
+
}
|
273
|
+
else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.FILTER) ||
|
274
|
+
matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_FILTER)) {
|
275
|
+
assertTrue(valueSpecification.parametersValues.length === 2, `Can't process filter() expression: filter() expects 1 argument`);
|
276
|
+
const filterState = this.queryBuilderState.filterState;
|
277
|
+
const precedingExpression = guaranteeType(valueSpecification.parametersValues[0], SimpleFunctionExpression, `Can't process filter() expression: only support filter() immediately following an expression`);
|
278
|
+
precedingExpression.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, undefined));
|
279
|
+
if (matchFunctionName(precedingExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.GET_ALL)) {
|
280
|
+
assertTrue(matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.FILTER), `Can't process filter() expression: only supports ${QUERY_BUILDER_SUPPORTED_FUNCTIONS.FILTER}() immediately following getAll() (got '${functionName}')`);
|
281
|
+
const filterLambda = valueSpecification.parametersValues[1];
|
282
|
+
assertType(filterLambda, LambdaFunctionInstanceValue, `Can't process filter() expression: filter() expects argument #1 to be a lambda function`);
|
283
|
+
processFilterLambda(filterLambda, filterState);
|
284
|
+
/**
|
285
|
+
* NOTE: Since group operations like and/or do not take more than 2 parameters, if there are
|
286
|
+
* more than 2 clauses in each group operations, then these clauses are converted into an
|
287
|
+
* unbalanced tree. However, this would look quite bad for UX, as such, we simplify the tree.
|
288
|
+
* After building the filter state.
|
289
|
+
*/
|
290
|
+
filterState.simplifyTree();
|
291
|
+
return;
|
292
|
+
}
|
293
|
+
else if (matchFunctionName(precedingExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT) ||
|
294
|
+
matchFunctionName(precedingExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY)) {
|
295
|
+
assertTrue(matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_FILTER), `Can't process post-filter expression: only supports ${QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_FILTER}() immediately following TDS project()/groupBy() (got '${functionName}')`);
|
296
|
+
const postFilterState = this.queryBuilderState.postFilterState;
|
297
|
+
const postFilterLambda = valueSpecification.parametersValues[1];
|
298
|
+
assertType(postFilterLambda, LambdaFunctionInstanceValue, `Can't process post-filter expression: expects argument #1 to be a lambda function`);
|
299
|
+
processPostFilterLambda(postFilterLambda, postFilterState);
|
300
|
+
this.queryBuilderState.setShowPostFilterPanel(true);
|
301
|
+
postFilterState.simplifyTree();
|
302
|
+
return;
|
303
|
+
}
|
304
|
+
else {
|
305
|
+
throw new UnsupportedOperationError("`Can't process filter() expression: only support filter() immediately following getAll() or TDS project()/groupBy()");
|
306
|
+
}
|
307
|
+
}
|
308
|
+
else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT)) {
|
309
|
+
const params = valueSpecification.parametersValues;
|
310
|
+
assertTrue(params.length === 3, `Can't process project() expression: project() expects 2 arguments`);
|
311
|
+
const precedingExpression = guaranteeType(params[0], SimpleFunctionExpression, `Can't process project() expression: only support project() immediately following an expression`);
|
312
|
+
precedingExpression.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, undefined));
|
313
|
+
// check caller
|
314
|
+
assertTrue([
|
315
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.GET_ALL,
|
316
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.FILTER,
|
317
|
+
].some((fn) => matchFunctionName(precedingExpression.functionName, fn)), `Can't process project() expression: only support project() immediately following either getAll() or filter()`);
|
318
|
+
// columns
|
319
|
+
const columnLambdas = params[1];
|
320
|
+
assertType(columnLambdas, CollectionInstanceValue, `Can't process project() expression: project() expects argument #1 to be a collection`);
|
321
|
+
columnLambdas.values.map((value) => value.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, valueSpecification)));
|
322
|
+
// aliases
|
323
|
+
const columnAliases = params[2];
|
324
|
+
assertType(columnAliases, CollectionInstanceValue, `Can't process project() expression: project() expects argument #2 to be a collection`);
|
325
|
+
assertTrue(columnLambdas.values.length === columnAliases.values.length, `Can't process project() expression: number of aliases does not match the number of columns`);
|
326
|
+
const aliases = columnAliases.values
|
327
|
+
.map(getNullableStringValueFromValueSpec)
|
328
|
+
.filter(isNonNullable);
|
329
|
+
this.queryBuilderState.fetchStructureState.projectionState.columns.forEach((e, idx) => e.setColumnName(aliases[idx]));
|
330
|
+
return;
|
331
|
+
}
|
332
|
+
else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_TAKE)) {
|
333
|
+
assertTrue(valueSpecification.parametersValues.length === 2, `Can't process take() expression: take() expects 1 argument`);
|
334
|
+
const precedingExpression = guaranteeType(valueSpecification.parametersValues[0], SimpleFunctionExpression, `Can't process take() expression: only support take() immediately following an expression`);
|
335
|
+
precedingExpression.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, undefined));
|
336
|
+
// check caller
|
337
|
+
assertTrue([
|
338
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_TAKE,
|
339
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_DISTINCT,
|
340
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_SORT,
|
341
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT,
|
342
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY,
|
343
|
+
].some((fn) => matchFunctionName(precedingExpression.functionName, fn)), `Can't process take() expression: only support take() in TDS expression`);
|
344
|
+
const takeValue = getNullableNumberValueFromValueSpec(guaranteeNonNullable(valueSpecification.parametersValues[1]));
|
345
|
+
this.queryBuilderState.resultSetModifierState.setLimit(takeValue);
|
346
|
+
return;
|
347
|
+
}
|
348
|
+
else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_DISTINCT)) {
|
349
|
+
assertTrue(valueSpecification.parametersValues.length === 1, `Can't process disctinct() expression: distinct() expects no parameter`);
|
350
|
+
const precedingExpression = guaranteeType(valueSpecification.parametersValues[0], SimpleFunctionExpression, `Can't process distinct() expression: only support distinct() immediately following an expression`);
|
351
|
+
precedingExpression.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, undefined));
|
352
|
+
// check caller
|
353
|
+
assertTrue([
|
354
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_TAKE,
|
355
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_DISTINCT,
|
356
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_SORT,
|
357
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT,
|
358
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY,
|
359
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_FILTER,
|
360
|
+
].some((fn) => matchFunctionName(precedingExpression.functionName, fn)), `Can't process distinct() expression: only support distinct() in TDS expression`);
|
361
|
+
this.queryBuilderState.resultSetModifierState.distinct = true;
|
362
|
+
return;
|
363
|
+
}
|
364
|
+
else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_SORT)) {
|
365
|
+
assertTrue(valueSpecification.parametersValues.length === 2, `Can't process sort() expression: sort() expects 1 argument`);
|
366
|
+
const precedingExpression = guaranteeType(valueSpecification.parametersValues[0], SimpleFunctionExpression, `Can't process sort() expression: only support sort() immediately following an expression`);
|
367
|
+
precedingExpression.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, undefined));
|
368
|
+
// check caller
|
369
|
+
assertTrue([
|
370
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_TAKE,
|
371
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_DISTINCT,
|
372
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_SORT,
|
373
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT,
|
374
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY,
|
375
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_FILTER,
|
376
|
+
].some((fn) => matchFunctionName(precedingExpression.functionName, fn)), `Can't process sort() expression: only support sort() in TDS expression`);
|
377
|
+
const sortParam = valueSpecification.parametersValues[1];
|
378
|
+
assertType(sortParam, CollectionInstanceValue, `Can't process sort() expression: sort() argument should be a collection`);
|
379
|
+
sortParam.values.map((e) => e.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, valueSpecification)));
|
380
|
+
return;
|
381
|
+
}
|
382
|
+
else if ((matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_ASC) ||
|
383
|
+
matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_DESC)) &&
|
384
|
+
this.precedingExpression &&
|
385
|
+
matchFunctionName(this.precedingExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_SORT)) {
|
386
|
+
assertTrue(valueSpecification.parametersValues.length === 1, `Can't process ${functionName}() expression: ${functionName}() expects no argument`);
|
387
|
+
const sortColumnName = getNullableStringValueFromValueSpec(guaranteeNonNullable(valueSpecification.parametersValues[0]));
|
388
|
+
const queryBuilderProjectionColumnState = this.queryBuilderState.fetchStructureState.projectionState.columns.find((e) => e.columnName === sortColumnName);
|
389
|
+
if (queryBuilderProjectionColumnState) {
|
390
|
+
const sortColumnState = new SortColumnState(this.queryBuilderState, queryBuilderProjectionColumnState);
|
391
|
+
sortColumnState.sortType = matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_ASC)
|
392
|
+
? COLUMN_SORT_TYPE.ASC
|
393
|
+
: COLUMN_SORT_TYPE.DESC;
|
394
|
+
this.queryBuilderState.resultSetModifierState.addSortColumn(sortColumnState);
|
395
|
+
}
|
396
|
+
return;
|
397
|
+
}
|
398
|
+
else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY)) {
|
399
|
+
assertTrue(valueSpecification.parametersValues.length === 4, `Can't process groupBy() expression: groupBy() expects 3 arguments`);
|
400
|
+
const params = valueSpecification.parametersValues;
|
401
|
+
const precedingExpression = guaranteeType(params[0], SimpleFunctionExpression, `Can't process groupBy() expression: only support groupBy() immediately following an expression`);
|
402
|
+
precedingExpression.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, undefined));
|
403
|
+
// check caller
|
404
|
+
assertTrue([
|
405
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.GET_ALL,
|
406
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.FILTER,
|
407
|
+
].some((fn) => matchFunctionName(precedingExpression.functionName, fn)), `Can't process groupBy() expression: only support groupBy() immediately following either getAll() or filter()`);
|
408
|
+
// columns
|
409
|
+
const columnExpressions = params[1];
|
410
|
+
assertType(columnExpressions, CollectionInstanceValue, `Can't process groupBy() expression: groupBy() expects argument #1 to be a collection`);
|
411
|
+
columnExpressions.values.map((e) => e.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, valueSpecification)));
|
412
|
+
// aggregations
|
413
|
+
const aggregationExpressions = params[2];
|
414
|
+
assertType(aggregationExpressions, CollectionInstanceValue, `Can't process groupBy() expression: groupBy() expects argument #2 to be a collection`);
|
415
|
+
aggregationExpressions.values.map((e) => e.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, valueSpecification)));
|
416
|
+
// aliases
|
417
|
+
const columnAliases = params[3];
|
418
|
+
assertType(columnAliases, CollectionInstanceValue, `Can't process groupBy() expression: groupBy() expects argument #3 to be a collection`);
|
419
|
+
assertTrue(columnAliases.values.length ===
|
420
|
+
columnExpressions.values.length +
|
421
|
+
aggregationExpressions.values.length, `Can't process groupBy() expression: number of aliases does not match the number of columns`);
|
422
|
+
const aliases = columnAliases.values
|
423
|
+
.map(getNullableStringValueFromValueSpec)
|
424
|
+
.filter(isNonNullable);
|
425
|
+
this.queryBuilderState.fetchStructureState.projectionState.columns.forEach((e, idx) => e.setColumnName(aliases[idx]));
|
426
|
+
return;
|
427
|
+
}
|
428
|
+
else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_AGG)) {
|
429
|
+
assertTrue(valueSpecification.parametersValues.length === 2, `Can't process agg() expression: agg() expects 2 arguments`);
|
430
|
+
// check caller
|
431
|
+
assertNonNullable(this.precedingExpression);
|
432
|
+
assertTrue(matchFunctionName(this.precedingExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY), `Can't process agg() expression: only support agg() in aggregation`);
|
433
|
+
const columnLambdas = guaranteeNonNullable(valueSpecification.parametersValues[0]);
|
434
|
+
columnLambdas.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, valueSpecification));
|
435
|
+
const aggregateLambda = valueSpecification.parametersValues[1];
|
436
|
+
assertType(aggregateLambda, LambdaFunctionInstanceValue, `Can't process agg() expression: agg() expects argument #1 to be a lambda function`);
|
437
|
+
// NOTE: since we process agg() expressions one by one, we know that the current agg()
|
438
|
+
// always correspond to the last column projection state, based on our processing procedure
|
439
|
+
processAggregateLambda(aggregateLambda, guaranteeNonNullable(this.queryBuilderState.fetchStructureState.projectionState.columns[this.queryBuilderState.fetchStructureState.projectionState.columns
|
440
|
+
.length - 1]), this.queryBuilderState.fetchStructureState.projectionState
|
441
|
+
.aggregationState);
|
442
|
+
return;
|
443
|
+
}
|
444
|
+
else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.SERIALIZE)) {
|
445
|
+
assertTrue(valueSpecification.parametersValues.length === 2, `Can't process serialize() expression: serialize() expects 1 argument`);
|
446
|
+
const precedingExpression = guaranteeType(valueSpecification.parametersValues[0], SimpleFunctionExpression, `Can't process serialize() expression: only support serialize() immediately following an expression`);
|
447
|
+
precedingExpression.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, valueSpecification));
|
448
|
+
// check caller
|
449
|
+
assertTrue([
|
450
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.GRAPH_FETCH,
|
451
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.GRAPH_FETCH_CHECKED,
|
452
|
+
].some((fn) => matchFunctionName(precedingExpression.functionName, fn)), `Can't process serialize() expression: only support serialize() in graph-fetch expression`);
|
453
|
+
const serializeFunc = guaranteeType(valueSpecification.parametersValues[1], GraphFetchTreeInstanceValue, `Can't process serialize() expression: serialize() graph-fetch is missing`);
|
454
|
+
const value = guaranteeType(serializeFunc.values[0], RootGraphFetchTree, `Can't process serialize() expression: serialize() graph-fetch tree root is missing`);
|
455
|
+
this.queryBuilderState.fetchStructureState.setFetchStructureMode(FETCH_STRUCTURE_MODE.GRAPH_FETCH);
|
456
|
+
this.queryBuilderState.fetchStructureState.graphFetchTreeState.initialize(value);
|
457
|
+
return;
|
458
|
+
}
|
459
|
+
else if ((matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.GRAPH_FETCH_CHECKED) ||
|
460
|
+
matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.GRAPH_FETCH)) &&
|
461
|
+
this.precedingExpression &&
|
462
|
+
matchFunctionName(this.precedingExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.SERIALIZE)) {
|
463
|
+
assertTrue(valueSpecification.parametersValues.length === 2, `Can't process ${functionName}() expression: ${functionName}() expects 1 argument`);
|
464
|
+
const precedingExpression = guaranteeType(valueSpecification.parametersValues[0], SimpleFunctionExpression, `Can't process ${functionName}() expression: only support ${functionName}() immediately following an expression`);
|
465
|
+
precedingExpression.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, valueSpecification));
|
466
|
+
// check caller
|
467
|
+
assertTrue([
|
468
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.FILTER,
|
469
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.GET_ALL,
|
470
|
+
].some((fn) => matchFunctionName(precedingExpression.functionName, fn)), `Can't process ${functionName}(): only support ${functionName}() immediately following either getAll() or filter()`);
|
471
|
+
this.queryBuilderState.fetchStructureState.graphFetchTreeState.setChecked(matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.GRAPH_FETCH_CHECKED));
|
472
|
+
return;
|
473
|
+
}
|
474
|
+
throw new UnsupportedOperationError(`Can't process expression of function ${functionName}()`);
|
475
|
+
}
|
476
|
+
visit_VariableExpression(valueSpecification) {
|
477
|
+
throw new UnsupportedOperationError();
|
478
|
+
}
|
479
|
+
visit_LambdaFunctionInstanceValue(valueSpecification) {
|
480
|
+
valueSpecification.values.forEach((value) => value.expressionSequence.forEach((expression) => expression.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(this.queryBuilderState, this.precedingExpression))));
|
481
|
+
}
|
482
|
+
visit_AbstractPropertyExpression(valueSpecification) {
|
483
|
+
assertNonNullable(this.precedingExpression, `Can't process property expression: property expression preceding expression cannot be retrieved`);
|
484
|
+
const precedingExpressionName = this.precedingExpression.functionName;
|
485
|
+
if ([
|
486
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT,
|
487
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY,
|
488
|
+
QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_AGG,
|
489
|
+
].some((fn) => matchFunctionName(precedingExpressionName, fn))) {
|
490
|
+
// NOTE: we do this before creating the projection state, as we will
|
491
|
+
// auto-fill arguments for derived properties when missing as part of building
|
492
|
+
// the property expression state.
|
493
|
+
let currentPropertyExpression = valueSpecification;
|
494
|
+
while (currentPropertyExpression instanceof AbstractPropertyExpression) {
|
495
|
+
const propertyExpression = currentPropertyExpression;
|
496
|
+
validatePropertyExpressionChain(currentPropertyExpression, this.queryBuilderState.graphManagerState.graph);
|
497
|
+
currentPropertyExpression = guaranteeNonNullable(currentPropertyExpression.parametersValues[0]);
|
498
|
+
// here we just do a simple check to ensure that if we encounter derived properties
|
499
|
+
// the number of parameters and arguments provided match
|
500
|
+
if (propertyExpression.func instanceof DerivedProperty) {
|
501
|
+
assertTrue((Array.isArray(propertyExpression.func.parameters)
|
502
|
+
? propertyExpression.func.parameters.length
|
503
|
+
: 0) ===
|
504
|
+
propertyExpression.parametersValues.length - 1, `Can't process property expression: derived property '${propertyExpression.func.name}' expects number of provided arguments to match number of parameters`);
|
505
|
+
}
|
506
|
+
// Take care of chains of subtype (a pattern that is not useful, but we want to support and rectify)
|
507
|
+
// $x.employees->subType(@Person)->subType(@Staff)
|
508
|
+
while (currentPropertyExpression instanceof SimpleFunctionExpression &&
|
509
|
+
matchFunctionName(currentPropertyExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE)) {
|
510
|
+
currentPropertyExpression = guaranteeNonNullable(currentPropertyExpression.parametersValues[0]);
|
511
|
+
}
|
512
|
+
}
|
513
|
+
assertType(currentPropertyExpression, VariableExpression, `Can't process property expression: expects expression root to be a variable`);
|
514
|
+
const projectionState = this.queryBuilderState.fetchStructureState.projectionState;
|
515
|
+
const columnState = new QueryBuilderSimpleProjectionColumnState(projectionState, valueSpecification, false);
|
516
|
+
projectionState.addColumn(columnState, { skipSorting: true });
|
517
|
+
// NOTE: technically we should set the lambda parameter name when we process
|
518
|
+
// the lambda, not when we process the lambda body like this, but that requires
|
519
|
+
// some setup, so it's easier to do it here. The validation of this should have
|
520
|
+
// already been taken care of by the builder.
|
521
|
+
columnState.setLambdaParameterName(currentPropertyExpression.name);
|
522
|
+
return;
|
523
|
+
}
|
524
|
+
throw new UnsupportedOperationError(`Can't process property expression with preceding expression of function ${this.precedingExpression.functionName}()`);
|
525
|
+
}
|
526
|
+
visit_InstanceValue(valueSpecification) {
|
527
|
+
throw new UnsupportedOperationError();
|
528
|
+
}
|
529
|
+
}
|
530
|
+
export const processQueryParameters = (parameters, queryBuilderState) => {
|
531
|
+
const queryParameterState = queryBuilderState.queryParametersState;
|
532
|
+
parameters.forEach((parameter) => {
|
533
|
+
const parameterState = new LambdaParameterState(parameter, queryBuilderState.observableContext);
|
534
|
+
parameterState.mockParameterValue();
|
535
|
+
queryParameterState.addParameter(parameterState);
|
536
|
+
});
|
537
|
+
};
|
538
|
+
export const processQueryBuilderLambdaFunction = (queryBuilderState, lambdaFunc) => {
|
539
|
+
if (lambdaFunc.functionType.parameters.length) {
|
540
|
+
processQueryParameters(lambdaFunc.functionType.parameters, queryBuilderState);
|
541
|
+
}
|
542
|
+
lambdaFunc.expressionSequence.map((e) => e.accept_ValueSpecificationVisitor(new QueryBuilderLambdaProcessor(queryBuilderState, undefined)));
|
543
|
+
};
|
544
|
+
//# sourceMappingURL=QueryBuilderLambdaProcessor.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"QueryBuilderLambdaProcessor.js","sourceRoot":"","sources":["../../src/stores/QueryBuilderLambdaProcessor.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,28 @@
|
|
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
|
+
import { type Type, type PureModel, type ValueSpecification, SimpleFunctionExpression } from '@finos/legend-graph';
|
17
|
+
export declare enum QUERY_BUILDER_GROUP_OPERATION {
|
18
|
+
AND = "and",
|
19
|
+
OR = "or"
|
20
|
+
}
|
21
|
+
export declare const fromGroupOperation: (operation: QUERY_BUILDER_GROUP_OPERATION) => string;
|
22
|
+
export declare const toGroupOperation: (functionName: string) => QUERY_BUILDER_GROUP_OPERATION;
|
23
|
+
export declare const getNonCollectionValueSpecificationType: (valueSpecification: ValueSpecification) => Type | undefined;
|
24
|
+
export declare const getCollectionValueSpecificationType: (graph: PureModel, values: ValueSpecification[]) => Type | undefined;
|
25
|
+
export declare const unwrapNotExpression: (expression: SimpleFunctionExpression) => SimpleFunctionExpression | undefined;
|
26
|
+
export declare const buildNotExpression: (graph: PureModel, expression: ValueSpecification) => ValueSpecification;
|
27
|
+
export declare const isPropertyExpressionChainOptional: (expression: ValueSpecification | undefined) => boolean;
|
28
|
+
//# sourceMappingURL=QueryBuilderOperatorsHelper.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"QueryBuilderOperatorsHelper.d.ts","sourceRoot":"","sources":["../../src/stores/QueryBuilderOperatorsHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,KAAK,IAAI,EACT,KAAK,SAAS,EACd,KAAK,kBAAkB,EAIvB,wBAAwB,EAMzB,MAAM,qBAAqB,CAAC;AAS7B,oBAAY,6BAA6B;IACvC,GAAG,QAAQ;IACX,EAAE,OAAO;CACV;AAED,eAAO,MAAM,kBAAkB,cAClB,6BAA6B,KACvC,MAWF,CAAC;AAEF,eAAO,MAAM,gBAAgB,iBACb,MAAM,KACnB,6BAWF,CAAC;AAEF,eAAO,MAAM,sCAAsC,uBAC7B,kBAAkB,KACrC,IAAI,GAAG,SAWT,CAAC;AAEF,eAAO,MAAM,mCAAmC,UACvC,SAAS,UACR,kBAAkB,EAAE,KAC3B,IAAI,GAAG,SA4CT,CAAC;AAEF,eAAO,MAAM,mBAAmB,eAClB,wBAAwB,KACnC,wBAAwB,GAAG,SAa7B,CAAC;AAEF,eAAO,MAAM,kBAAkB,UACtB,SAAS,cACJ,kBAAkB,KAC7B,kBAUF,CAAC;AAEF,eAAO,MAAM,iCAAiC,eAChC,kBAAkB,GAAG,SAAS,KACzC,OAiBF,CAAC"}
|