@finos/legend-extension-dsl-data-quality 1.0.61 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/{DSL_DataQuality_ClassElementDriver.d.ts → DSL_DataQuality_ElementDriver.d.ts} +17 -7
- package/lib/components/DSL_DataQuality_ElementDriver.d.ts.map +1 -0
- package/lib/components/{DSL_DataQuality_ClassElementDriver.js → DSL_DataQuality_ElementDriver.js} +70 -23
- package/lib/components/DSL_DataQuality_ElementDriver.js.map +1 -0
- package/lib/components/DSL_DataQuality_LegendStudioApplicationPlugin.d.ts.map +1 -1
- package/lib/components/DSL_DataQuality_LegendStudioApplicationPlugin.js +20 -39
- package/lib/components/DSL_DataQuality_LegendStudioApplicationPlugin.js.map +1 -1
- package/lib/components/{DSL_NewDataQualityClassValidationElement.d.ts → DSL_NewDataQualityValidationElement.d.ts} +2 -2
- package/lib/components/DSL_NewDataQualityValidationElement.d.ts.map +1 -0
- package/lib/components/DSL_NewDataQualityValidationElement.js +80 -0
- package/lib/components/DSL_NewDataQualityValidationElement.js.map +1 -0
- package/lib/components/DataQualityRelationTrialRuns.d.ts +22 -0
- package/lib/components/DataQualityRelationTrialRuns.d.ts.map +1 -0
- package/lib/components/DataQualityRelationTrialRuns.js +87 -0
- package/lib/components/DataQualityRelationTrialRuns.js.map +1 -0
- package/lib/components/{DSL_NewDataQualityServiceValidationElement.d.ts → DataQualityRelationValidationConfigurationEditor.d.ts} +2 -2
- package/lib/components/DataQualityRelationValidationConfigurationEditor.d.ts.map +1 -0
- package/lib/components/DataQualityRelationValidationConfigurationEditor.js +99 -0
- package/lib/components/DataQualityRelationValidationConfigurationEditor.js.map +1 -0
- package/lib/components/DataQualityRelationValidationEditor.d.ts +30 -0
- package/lib/components/DataQualityRelationValidationEditor.d.ts.map +1 -0
- package/lib/components/DataQualityRelationValidationEditor.js +89 -0
- package/lib/components/DataQualityRelationValidationEditor.js.map +1 -0
- package/lib/components/DataQualityResultPanel.d.ts.map +1 -1
- package/lib/components/DataQualityResultPanel.js +1 -1
- package/lib/components/DataQualityResultPanel.js.map +1 -1
- package/lib/components/DataQualityResultValues.d.ts +0 -2
- package/lib/components/DataQualityResultValues.d.ts.map +1 -1
- package/lib/components/DataQualityResultValues.js.map +1 -1
- package/lib/components/DataQualitySideBar.js +2 -2
- package/lib/components/DataQualitySideBar.js.map +1 -1
- package/lib/components/DataQualityValidationDetailPanel.d.ts +36 -0
- package/lib/components/DataQualityValidationDetailPanel.d.ts.map +1 -0
- package/lib/components/DataQualityValidationDetailPanel.js +39 -0
- package/lib/components/DataQualityValidationDetailPanel.js.map +1 -0
- package/lib/components/DataQualityValidationParametersEditor.d.ts +15 -0
- package/lib/components/DataQualityValidationParametersEditor.d.ts.map +1 -0
- package/lib/components/DataQualityValidationParametersEditor.js +129 -0
- package/lib/components/DataQualityValidationParametersEditor.js.map +1 -0
- package/lib/components/states/ConstraintState.d.ts +2 -0
- package/lib/components/states/ConstraintState.d.ts.map +1 -1
- package/lib/components/states/ConstraintState.js +2 -0
- package/lib/components/states/ConstraintState.js.map +1 -1
- package/lib/components/states/DataQualityClassValidationState.d.ts +2 -2
- package/lib/components/states/DataQualityClassValidationState.d.ts.map +1 -1
- package/lib/components/states/DataQualityClassValidationState.js +4 -4
- package/lib/components/states/DataQualityClassValidationState.js.map +1 -1
- package/lib/components/states/DataQualityRelationResultState.d.ts +46 -0
- package/lib/components/states/DataQualityRelationResultState.d.ts.map +1 -0
- package/lib/components/states/DataQualityRelationResultState.js +194 -0
- package/lib/components/states/DataQualityRelationResultState.js.map +1 -0
- package/lib/components/states/DataQualityRelationValidationConfigurationState.d.ts +73 -0
- package/lib/components/states/DataQualityRelationValidationConfigurationState.d.ts.map +1 -0
- package/lib/components/states/DataQualityRelationValidationConfigurationState.js +255 -0
- package/lib/components/states/DataQualityRelationValidationConfigurationState.js.map +1 -0
- package/lib/components/states/DataQualityRelationValidationLambdaEditorState.d.ts +32 -0
- package/lib/components/states/DataQualityRelationValidationLambdaEditorState.d.ts.map +1 -0
- package/lib/components/states/DataQualityRelationValidationLambdaEditorState.js +79 -0
- package/lib/components/states/DataQualityRelationValidationLambdaEditorState.js.map +1 -0
- package/lib/components/states/DataQualityRelationValidationState.d.ts +38 -0
- package/lib/components/states/DataQualityRelationValidationState.d.ts.map +1 -0
- package/lib/components/states/DataQualityRelationValidationState.js +119 -0
- package/lib/components/states/DataQualityRelationValidationState.js.map +1 -0
- package/lib/components/states/DataQualityResultState.d.ts.map +1 -1
- package/lib/components/states/DataQualityResultState.js +6 -3
- package/lib/components/states/DataQualityResultState.js.map +1 -1
- package/lib/components/states/DataQualityState.js +1 -1
- package/lib/components/states/DataQualityState.js.map +1 -1
- package/lib/graph/metamodel/DSL_DataQuality_HashUtils.d.ts +5 -1
- package/lib/graph/metamodel/DSL_DataQuality_HashUtils.d.ts.map +1 -1
- package/lib/graph/metamodel/DSL_DataQuality_HashUtils.js +4 -0
- package/lib/graph/metamodel/DSL_DataQuality_HashUtils.js.map +1 -1
- package/lib/graph/metamodel/DSL_DataQuality_PureGraphPlugin.d.ts.map +1 -1
- package/lib/graph/metamodel/DSL_DataQuality_PureGraphPlugin.js +2 -1
- package/lib/graph/metamodel/DSL_DataQuality_PureGraphPlugin.js.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.d.ts +36 -3
- package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js +58 -4
- package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_GraphManagerHelper.d.ts +2 -1
- package/lib/graph-manager/DSL_DataQuality_GraphManagerHelper.d.ts.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_GraphManagerHelper.js +2 -1
- package/lib/graph-manager/DSL_DataQuality_GraphManagerHelper.js.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.d.ts +13 -2
- package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.d.ts.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.js +36 -2
- package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.js.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.d.ts.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.js +5 -2
- package/lib/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.js.map +1 -1
- package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.d.ts +5 -1
- package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.d.ts.map +1 -1
- package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.js +29 -2
- package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.d.ts +6 -5
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.js.map +1 -1
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.d.ts +1 -1
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.js +34 -40
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.d.ts +8 -6
- package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.js +19 -12
- package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/{V1_DataQualityConstraintsConfiguration.d.ts → V1_DataQualityValidationConfiguration.d.ts} +26 -4
- package/lib/graph-manager/protocol/pure/v1/V1_DataQualityValidationConfiguration.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/{V1_DataQualityConstraintsConfiguration.js → V1_DataQualityValidationConfiguration.js} +49 -4
- package/lib/graph-manager/protocol/pure/v1/V1_DataQualityValidationConfiguration.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.d.ts +7 -3
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.js +43 -3
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationTransformer.d.ts +6 -3
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationTransformer.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationTransformer.js +39 -2
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationTransformer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.d.ts +5 -2
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.js +27 -9
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.js.map +1 -1
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/package.json +1 -1
- package/package.json +7 -7
- package/src/components/{DSL_DataQuality_ClassElementDriver.tsx → DSL_DataQuality_ElementDriver.tsx} +87 -18
- package/src/components/DSL_DataQuality_LegendStudioApplicationPlugin.tsx +33 -48
- package/src/components/DSL_NewDataQualityValidationElement.tsx +208 -0
- package/src/components/DataQualityRelationTrialRuns.tsx +288 -0
- package/src/components/DataQualityRelationValidationConfigurationEditor.tsx +364 -0
- package/src/components/DataQualityRelationValidationEditor.tsx +290 -0
- package/src/components/DataQualityResultPanel.tsx +1 -4
- package/src/components/DataQualityResultValues.tsx +1 -5
- package/src/components/DataQualitySideBar.tsx +2 -2
- package/src/components/DataQualityValidationDetailPanel.tsx +182 -0
- package/src/components/DataQualityValidationParametersEditor.tsx +355 -0
- package/src/components/states/ConstraintState.ts +2 -0
- package/src/components/states/DataQualityClassValidationState.ts +5 -5
- package/src/components/states/DataQualityRelationResultState.ts +274 -0
- package/src/components/states/DataQualityRelationValidationConfigurationState.ts +429 -0
- package/src/components/states/DataQualityRelationValidationLambdaEditorState.ts +138 -0
- package/src/components/states/DataQualityRelationValidationState.ts +180 -0
- package/src/components/states/DataQualityResultState.ts +6 -8
- package/src/components/states/DataQualityState.ts +1 -1
- package/src/graph/metamodel/DSL_DataQuality_HashUtils.ts +4 -0
- package/src/graph/metamodel/DSL_DataQuality_PureGraphPlugin.ts +2 -0
- package/src/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.ts +79 -3
- package/src/graph-manager/DSL_DataQuality_GraphManagerHelper.ts +13 -0
- package/src/graph-manager/DSL_DataQuality_GraphModifierHelper.ts +107 -0
- package/src/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.ts +8 -0
- package/src/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.ts +54 -1
- package/src/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.ts +5 -3
- package/src/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.ts +72 -81
- package/src/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.ts +20 -23
- package/src/graph-manager/protocol/pure/v1/{V1_DataQualityConstraintsConfiguration.ts → V1_DataQualityValidationConfiguration.ts} +63 -4
- package/src/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.ts +116 -2
- package/src/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationTransformer.ts +78 -1
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.ts +55 -8
- package/style/_data-quality-relation-validation-builder.scss +454 -0
- package/style/index.scss +6 -0
- package/tsconfig.json +13 -6
- package/lib/components/DSL_DataQuality_ClassElementDriver.d.ts.map +0 -1
- package/lib/components/DSL_DataQuality_ClassElementDriver.js.map +0 -1
- package/lib/components/DSL_DataQuality_ServiceElementDriver.d.ts +0 -27
- package/lib/components/DSL_DataQuality_ServiceElementDriver.d.ts.map +0 -1
- package/lib/components/DSL_DataQuality_ServiceElementDriver.js +0 -41
- package/lib/components/DSL_DataQuality_ServiceElementDriver.js.map +0 -1
- package/lib/components/DSL_NewDataQualityClassValidationElement.d.ts.map +0 -1
- package/lib/components/DSL_NewDataQualityClassValidationElement.js +0 -64
- package/lib/components/DSL_NewDataQualityClassValidationElement.js.map +0 -1
- package/lib/components/DSL_NewDataQualityServiceValidationElement.d.ts.map +0 -1
- package/lib/components/DSL_NewDataQualityServiceValidationElement.js +0 -41
- package/lib/components/DSL_NewDataQualityServiceValidationElement.js.map +0 -1
- package/lib/graph-manager/protocol/pure/v1/V1_DataQualityConstraintsConfiguration.d.ts.map +0 -1
- package/lib/graph-manager/protocol/pure/v1/V1_DataQualityConstraintsConfiguration.js.map +0 -1
- package/src/components/DSL_DataQuality_ServiceElementDriver.tsx +0 -57
- package/src/components/DSL_NewDataQualityClassValidationElement.tsx +0 -156
- package/src/components/DSL_NewDataQualityServiceValidationElement.tsx +0 -74
@@ -14,7 +14,7 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
import { type EditorStore, NewElementDriver } from '@finos/legend-application-studio';
|
17
|
-
import {
|
17
|
+
import { type DataQualityValidationConfiguration } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
18
18
|
import { type Mapping, type PackageableRuntime } from '@finos/legend-graph';
|
19
19
|
import { type PackageableElementOption } from '@finos/legend-lego/graph-editor';
|
20
20
|
import { DataSpace } from '@finos/legend-extension-dsl-data-space/graph';
|
@@ -22,12 +22,18 @@ export type RuntimeOption = {
|
|
22
22
|
label: string;
|
23
23
|
value: PackageableRuntime | undefined;
|
24
24
|
};
|
25
|
-
export declare enum
|
25
|
+
export declare enum CLASS_ELEMENT_CREATION_BASIS {
|
26
26
|
MAPPING_RUNTIME_BASED = "Mapping/Runtime",
|
27
27
|
DATASPACE_BASED = "DataSpace"
|
28
28
|
}
|
29
|
-
export declare
|
30
|
-
|
29
|
+
export declare enum DQ_VALIDATION_ELEMENT_TYPE {
|
30
|
+
CLASS_VALIDATION = "ClassValidation",
|
31
|
+
SERVICE_VALIDATION = "ServiceValidation",
|
32
|
+
RELATION_VALIDATION = "RelationValidation"
|
33
|
+
}
|
34
|
+
export declare class DataQuality_ElementDriver extends NewElementDriver<DataQualityValidationConfiguration> {
|
35
|
+
dqValidationElementType: DQ_VALIDATION_ELEMENT_TYPE;
|
36
|
+
dqClassElementCreationBasis: CLASS_ELEMENT_CREATION_BASIS;
|
31
37
|
dataSpaceSelected: PackageableElementOption<DataSpace> | undefined;
|
32
38
|
mappingSelected: PackageableElementOption<Mapping> | undefined;
|
33
39
|
runtimeSelected: RuntimeOption | undefined;
|
@@ -39,8 +45,12 @@ export declare class DataQuality_ClassElementDriver extends NewElementDriver<Dat
|
|
39
45
|
setDataSpaceSelected(dataSpace: PackageableElementOption<DataSpace> | undefined): void;
|
40
46
|
setMappingSelected(mappingSelected: PackageableElementOption<Mapping> | undefined): void;
|
41
47
|
setRuntimeSelected(runtimeSelected: RuntimeOption | undefined): void;
|
42
|
-
|
48
|
+
setDqClassElementCreationBasis(dqClassElementCreationBasis: CLASS_ELEMENT_CREATION_BASIS): void;
|
49
|
+
setDqValidationElementType(dqValidationElementType: DQ_VALIDATION_ELEMENT_TYPE): void;
|
43
50
|
get isValid(): boolean;
|
44
|
-
|
51
|
+
createRelationValidationElement(name: string): DataQualityValidationConfiguration;
|
52
|
+
createServiceValidationElement(name: string): DataQualityValidationConfiguration;
|
53
|
+
createClassValidationElement(name: string): DataQualityValidationConfiguration;
|
54
|
+
createElement(name: string): DataQualityValidationConfiguration;
|
45
55
|
}
|
46
|
-
//# sourceMappingURL=
|
56
|
+
//# sourceMappingURL=DSL_DataQuality_ElementDriver.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"DSL_DataQuality_ElementDriver.d.ts","sourceRoot":"","sources":["../../src/components/DSL_DataQuality_ElementDriver.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,WAAW,EAChB,gBAAgB,EACjB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,KAAK,kCAAkC,EAOxC,MAAM,gGAAgG,CAAC;AAQxG,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,kBAAkB,EAKxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,wBAAwB,EAE9B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,SAAS,EAEV,MAAM,8CAA8C,CAAC;AAGtD,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,kBAAkB,GAAG,SAAS,CAAC;CACvC,CAAC;AAEF,oBAAY,4BAA4B;IACtC,qBAAqB,oBAAoB;IACzC,eAAe,cAAc;CAC9B;AAED,oBAAY,0BAA0B;IACpC,gBAAgB,oBAAoB;IACpC,kBAAkB,sBAAsB;IACxC,mBAAmB,uBAAuB;CAC3C;AAED,qBAAa,yBAA0B,SAAQ,gBAAgB,CAAC,kCAAkC,CAAC;IACjG,uBAAuB,EAAE,0BAA0B,CAAC;IACpD,2BAA2B,EAAE,4BAA4B,CAAC;IAC1D,iBAAiB,EAAE,wBAAwB,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IACnE,eAAe,EAAE,wBAAwB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAC/D,eAAe,EAAE,aAAa,GAAG,SAAS,CAAC;gBAE/B,WAAW,EAAE,WAAW;IAwBpC,IAAI,gBAAgB,IAAI,wBAAwB,CAAC,SAAS,CAAC,EAAE,CAI5D;IAED,IAAI,cAAc,IAAI,wBAAwB,CAAC,OAAO,CAAC,EAAE,CAIxD;IAED,IAAI,yBAAyB,IAAI,kBAAkB,EAAE,CAOpD;IAED,IAAI,cAAc,IAAI,aAAa,EAAE,CAIpC;IAED,oBAAoB,CAClB,SAAS,EAAE,wBAAwB,CAAC,SAAS,CAAC,GAAG,SAAS,GACzD,IAAI;IAIP,kBAAkB,CAChB,eAAe,EAAE,wBAAwB,CAAC,OAAO,CAAC,GAAG,SAAS,GAC7D,IAAI;IAIP,kBAAkB,CAAC,eAAe,EAAE,aAAa,GAAG,SAAS,GAAG,IAAI;IAIpE,8BAA8B,CAC5B,2BAA2B,EAAE,4BAA4B,GACxD,IAAI;IAIP,0BAA0B,CACxB,uBAAuB,EAAE,0BAA0B,GAClD,IAAI;IAIP,IAAI,OAAO,IAAI,OAAO,CAgBrB;IAED,+BAA+B,CAC7B,IAAI,EAAE,MAAM,GACX,kCAAkC;IAWrC,8BAA8B,CAC5B,IAAI,EAAE,MAAM,GACX,kCAAkC;IAIrC,4BAA4B,CAC1B,IAAI,EAAE,MAAM,GACX,kCAAkC;IAuDrC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,kCAAkC;CAehE"}
|
package/lib/components/{DSL_DataQuality_ClassElementDriver.js → DSL_DataQuality_ElementDriver.js}
RENAMED
@@ -14,20 +14,27 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
import { NewElementDriver, } from '@finos/legend-application-studio';
|
17
|
-
import { DataQualityClassValidationsConfiguration, DataSpaceDataQualityExecutionContext, MappingAndRuntimeDataQualityExecutionContext, } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
17
|
+
import { DataQualityClassValidationsConfiguration, DataQualityServiceValidationConfiguration, DataQualityRelationValidationConfiguration, DataSpaceDataQualityExecutionContext, MappingAndRuntimeDataQualityExecutionContext, DataQualityRelationQueryLambda, } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
18
18
|
import { action, computed, makeObservable, observable } from 'mobx';
|
19
19
|
import { filterByType, getNullableFirstEntry, guaranteeNonNullable, UnsupportedOperationError, } from '@finos/legend-shared';
|
20
20
|
import { getMappingCompatibleRuntimes, PackageableElementExplicitReference, getMappingCompatibleClasses, } from '@finos/legend-graph';
|
21
21
|
import { buildElementOption, } from '@finos/legend-lego/graph-editor';
|
22
22
|
import { DataSpace, resolveUsableDataSpaceClasses, } from '@finos/legend-extension-dsl-data-space/graph';
|
23
23
|
import { buildDefaultDataQualityRootGraphFetchTree } from './utils/DataQualityGraphFetchTreeUtil.js';
|
24
|
-
export var
|
25
|
-
(function (
|
26
|
-
|
27
|
-
|
28
|
-
})(
|
29
|
-
export
|
30
|
-
|
24
|
+
export var CLASS_ELEMENT_CREATION_BASIS;
|
25
|
+
(function (CLASS_ELEMENT_CREATION_BASIS) {
|
26
|
+
CLASS_ELEMENT_CREATION_BASIS["MAPPING_RUNTIME_BASED"] = "Mapping/Runtime";
|
27
|
+
CLASS_ELEMENT_CREATION_BASIS["DATASPACE_BASED"] = "DataSpace";
|
28
|
+
})(CLASS_ELEMENT_CREATION_BASIS || (CLASS_ELEMENT_CREATION_BASIS = {}));
|
29
|
+
export var DQ_VALIDATION_ELEMENT_TYPE;
|
30
|
+
(function (DQ_VALIDATION_ELEMENT_TYPE) {
|
31
|
+
DQ_VALIDATION_ELEMENT_TYPE["CLASS_VALIDATION"] = "ClassValidation";
|
32
|
+
DQ_VALIDATION_ELEMENT_TYPE["SERVICE_VALIDATION"] = "ServiceValidation";
|
33
|
+
DQ_VALIDATION_ELEMENT_TYPE["RELATION_VALIDATION"] = "RelationValidation";
|
34
|
+
})(DQ_VALIDATION_ELEMENT_TYPE || (DQ_VALIDATION_ELEMENT_TYPE = {}));
|
35
|
+
export class DataQuality_ElementDriver extends NewElementDriver {
|
36
|
+
dqValidationElementType;
|
37
|
+
dqClassElementCreationBasis;
|
31
38
|
dataSpaceSelected;
|
32
39
|
mappingSelected;
|
33
40
|
runtimeSelected;
|
@@ -37,14 +44,18 @@ export class DataQuality_ClassElementDriver extends NewElementDriver {
|
|
37
44
|
dataSpaceSelected: observable,
|
38
45
|
mappingSelected: observable,
|
39
46
|
runtimeSelected: observable,
|
40
|
-
|
47
|
+
dqValidationElementType: observable,
|
48
|
+
dqClassElementCreationBasis: observable,
|
41
49
|
setDataSpaceSelected: action,
|
42
50
|
setMappingSelected: action,
|
43
51
|
setRuntimeSelected: action,
|
44
|
-
|
52
|
+
setDqClassElementCreationBasis: action,
|
53
|
+
setDqValidationElementType: action,
|
45
54
|
runtimeOptions: computed,
|
46
55
|
});
|
47
|
-
this.
|
56
|
+
this.dqValidationElementType = DQ_VALIDATION_ELEMENT_TYPE.CLASS_VALIDATION;
|
57
|
+
this.dqClassElementCreationBasis =
|
58
|
+
CLASS_ELEMENT_CREATION_BASIS.DATASPACE_BASED;
|
48
59
|
this.dataSpaceSelected = getNullableFirstEntry(this.dataSpaceOptions);
|
49
60
|
this.mappingSelected = getNullableFirstEntry(this.mappingOptions);
|
50
61
|
this.runtimeSelected = getNullableFirstEntry(this.runtimeOptions);
|
@@ -74,26 +85,50 @@ export class DataQuality_ClassElementDriver extends NewElementDriver {
|
|
74
85
|
setRuntimeSelected(runtimeSelected) {
|
75
86
|
this.runtimeSelected = runtimeSelected;
|
76
87
|
}
|
77
|
-
|
78
|
-
this.
|
88
|
+
setDqClassElementCreationBasis(dqClassElementCreationBasis) {
|
89
|
+
this.dqClassElementCreationBasis = dqClassElementCreationBasis;
|
90
|
+
}
|
91
|
+
setDqValidationElementType(dqValidationElementType) {
|
92
|
+
this.dqValidationElementType = dqValidationElementType;
|
79
93
|
}
|
80
94
|
get isValid() {
|
81
|
-
if (this.
|
95
|
+
if (this.dqValidationElementType ===
|
96
|
+
DQ_VALIDATION_ELEMENT_TYPE.RELATION_VALIDATION ||
|
97
|
+
this.dqValidationElementType ===
|
98
|
+
DQ_VALIDATION_ELEMENT_TYPE.SERVICE_VALIDATION) {
|
99
|
+
return true;
|
100
|
+
}
|
101
|
+
if (this.dqClassElementCreationBasis ===
|
102
|
+
CLASS_ELEMENT_CREATION_BASIS.DATASPACE_BASED) {
|
82
103
|
return Boolean(this.dataSpaceSelected);
|
83
104
|
}
|
84
105
|
return Boolean(this.mappingSelected && this.runtimeSelected);
|
85
106
|
}
|
86
|
-
|
107
|
+
createRelationValidationElement(name) {
|
108
|
+
const relationValidationConfiguration = new DataQualityRelationValidationConfiguration(name);
|
109
|
+
relationValidationConfiguration.query =
|
110
|
+
new DataQualityRelationQueryLambda();
|
111
|
+
relationValidationConfiguration.query.body =
|
112
|
+
this.editorStore.graphManagerState.graphManager.createDefaultBasicRawLambda().body;
|
113
|
+
this.editorStore.graphManagerState.graphManager.createDefaultBasicRawLambda();
|
114
|
+
return relationValidationConfiguration;
|
115
|
+
}
|
116
|
+
createServiceValidationElement(name) {
|
117
|
+
return new DataQualityServiceValidationConfiguration(name);
|
118
|
+
}
|
119
|
+
createClassValidationElement(name) {
|
87
120
|
let usableClasses = [];
|
88
|
-
const
|
89
|
-
if (this.
|
121
|
+
const dataQualityClassConstraintsConfiguration = new DataQualityClassValidationsConfiguration(name);
|
122
|
+
if (this.dqClassElementCreationBasis ===
|
123
|
+
CLASS_ELEMENT_CREATION_BASIS.DATASPACE_BASED) {
|
90
124
|
const dataSpaceToSet = PackageableElementExplicitReference.create(this.dataSpaceSelected.value);
|
91
125
|
const dataSpaceExecutionContext = new DataSpaceDataQualityExecutionContext();
|
92
126
|
dataSpaceExecutionContext.context =
|
93
127
|
dataSpaceToSet.value.defaultExecutionContext.name;
|
94
128
|
dataSpaceExecutionContext.dataSpace = dataSpaceToSet;
|
95
|
-
|
96
|
-
|
129
|
+
dataQualityClassConstraintsConfiguration.context =
|
130
|
+
dataSpaceExecutionContext;
|
131
|
+
dataQualityClassConstraintsConfiguration.dataQualityRootGraphFetchTree =
|
97
132
|
undefined;
|
98
133
|
usableClasses = resolveUsableDataSpaceClasses(dataSpaceToSet.value, dataSpaceToSet.value.defaultExecutionContext.mapping.value, this.editorStore.graphManagerState);
|
99
134
|
}
|
@@ -107,7 +142,7 @@ export class DataQuality_ClassElementDriver extends NewElementDriver {
|
|
107
142
|
const mappingAndRuntimeExecutionContext = new MappingAndRuntimeDataQualityExecutionContext();
|
108
143
|
mappingAndRuntimeExecutionContext.mapping = mapping;
|
109
144
|
mappingAndRuntimeExecutionContext.runtime = runtimeValue;
|
110
|
-
|
145
|
+
dataQualityClassConstraintsConfiguration.context =
|
111
146
|
mappingAndRuntimeExecutionContext;
|
112
147
|
usableClasses = getMappingCompatibleClasses(mapping.value, this.editorStore.graphManagerState.usableClasses);
|
113
148
|
}
|
@@ -115,9 +150,21 @@ export class DataQuality_ClassElementDriver extends NewElementDriver {
|
|
115
150
|
if (usableClasses.length === 0) {
|
116
151
|
throw new UnsupportedOperationError('Must have at least one usable class with given mapping');
|
117
152
|
}
|
118
|
-
|
153
|
+
dataQualityClassConstraintsConfiguration.dataQualityRootGraphFetchTree =
|
119
154
|
buildDefaultDataQualityRootGraphFetchTree(usableClasses[0]);
|
120
|
-
return
|
155
|
+
return dataQualityClassConstraintsConfiguration;
|
156
|
+
}
|
157
|
+
createElement(name) {
|
158
|
+
switch (this.dqValidationElementType) {
|
159
|
+
case DQ_VALIDATION_ELEMENT_TYPE.RELATION_VALIDATION:
|
160
|
+
return this.createRelationValidationElement(name);
|
161
|
+
case DQ_VALIDATION_ELEMENT_TYPE.SERVICE_VALIDATION:
|
162
|
+
return this.createServiceValidationElement(name);
|
163
|
+
case DQ_VALIDATION_ELEMENT_TYPE.CLASS_VALIDATION:
|
164
|
+
return this.createClassValidationElement(name);
|
165
|
+
default:
|
166
|
+
throw new UnsupportedOperationError(`Can't create data quality validation configuration of type '${this.dqValidationElementType}'`);
|
167
|
+
}
|
121
168
|
}
|
122
169
|
}
|
123
|
-
//# sourceMappingURL=
|
170
|
+
//# sourceMappingURL=DSL_DataQuality_ElementDriver.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"DSL_DataQuality_ElementDriver.js","sourceRoot":"","sources":["../../src/components/DSL_DataQuality_ElementDriver.tsx"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DSL_DataQuality_LegendStudioApplicationPlugin.d.ts","sourceRoot":"","sources":["../../src/components/DSL_DataQuality_LegendStudioApplicationPlugin.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,KAAK,2CAA2C,
|
1
|
+
{"version":3,"file":"DSL_DataQuality_LegendStudioApplicationPlugin.d.ts","sourceRoot":"","sources":["../../src/components/DSL_DataQuality_LegendStudioApplicationPlugin.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,KAAK,2CAA2C,EAEhD,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAE1B,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAE3B,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,EACnC,KAAK,0BAA0B,EAE/B,6BAA6B,EAE9B,MAAM,kCAAkC,CAAC;AAsB1C,qBAAa,6CACX,SAAQ,6BACR,YAAW,2CAA2C;;IAMtD,6BAA6B,IAAI,MAAM,EAAE;IAIzC,yCAAyC,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAQlE,0BAA0B,IAAI,iBAAiB,EAAE;IAWjD,0BAA0B,IAAI,iBAAiB,EAAE;IAejD,+BAA+B,IAAI,sBAAsB,EAAE;IAW3D,mCAAmC,IAAI,0BAA0B,EAAE;IAiBnE,8BAA8B,IAAI,qBAAqB,EAAE;IA4BzD,kCAAkC,IAAI,yBAAyB,EAAE;IAuBjE,uCAAuC,IAAI,8BAA8B,EAAE;IAW3E,gCAAgC,IAAI,uBAAuB,EAAE;CAa9D"}
|
@@ -16,48 +16,39 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
16
16
|
*/
|
17
17
|
import packageJson from '../../package.json';
|
18
18
|
import { LegendStudioApplicationPlugin, PACKAGEABLE_ELEMENT_GROUP_BY_CATEGORY, } from '@finos/legend-application-studio';
|
19
|
-
import {
|
19
|
+
import {} from 'react';
|
20
|
+
import { DataQualityClassValidationsConfiguration, DataQualityServiceValidationConfiguration, DataQualityRelationValidationConfiguration, DataQualityValidationConfiguration, } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
20
21
|
import { EyeIcon } from '@finos/legend-art';
|
21
22
|
import { DataQualityClassValidationEditor } from './DataQualityClassValidationEditor.js';
|
22
|
-
import {
|
23
|
-
import { NewDataQualityServiceValidationElementEditor } from './DSL_NewDataQualityServiceValidationElement.js';
|
24
|
-
import { DataQuality_ServiceElementDriver } from './DSL_DataQuality_ServiceElementDriver.js';
|
23
|
+
import { DataQuality_ElementDriver } from './DSL_DataQuality_ElementDriver.js';
|
25
24
|
import { DataQualityServiceValidationEditor } from './DataQualityServiceValidationEditor.js';
|
26
25
|
import { DataQualityClassValidationState } from './states/DataQualityClassValidationState.js';
|
27
|
-
import {
|
28
|
-
import {} from 'react';
|
26
|
+
import { NewDataQualityValidationElementEditor } from './DSL_NewDataQualityValidationElement.js';
|
29
27
|
import { DataQualityServiceValidationState } from './states/DataQualityServiceValidationState.js';
|
30
|
-
|
31
|
-
|
32
|
-
const
|
33
|
-
const
|
28
|
+
import { DataQualityRelationValidationConfigurationState } from './states/DataQualityRelationValidationConfigurationState.js';
|
29
|
+
import { DataQualityRelationValidationConfigurationEditor } from './DataQualityRelationValidationConfigurationEditor.js';
|
30
|
+
const DATA_QUALITY_ELEMENT_TYPE = 'DATAQUALITYVALIDATION';
|
31
|
+
const DATA_QUALITY_ELEMENT_TYPE_LABEL = 'Data Quality Validation';
|
34
32
|
export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioApplicationPlugin {
|
35
33
|
constructor() {
|
36
34
|
super(packageJson.extensions.applicationStudioPlugin, packageJson.version);
|
37
35
|
}
|
38
36
|
getExtraSupportedElementTypes() {
|
39
|
-
return [
|
40
|
-
DATA_QUALITY_ELEMENT_TYPE,
|
41
|
-
DATA_QUALITY_SERVICE_VALIDATION_ELEMENT_TYPE,
|
42
|
-
];
|
37
|
+
return [DATA_QUALITY_ELEMENT_TYPE];
|
43
38
|
}
|
44
39
|
getExtraSupportedElementTypesWithCategory() {
|
45
40
|
const elementTypeswithCategory = new Map();
|
46
41
|
elementTypeswithCategory.set(PACKAGEABLE_ELEMENT_GROUP_BY_CATEGORY.OTHER, [
|
47
42
|
DATA_QUALITY_ELEMENT_TYPE,
|
48
|
-
// DATA_QUALITY_SERVICE_VALIDATION_ELEMENT_TYPE,
|
49
43
|
]);
|
50
44
|
return elementTypeswithCategory;
|
51
45
|
}
|
52
46
|
getExtraElementClassifiers() {
|
53
47
|
return [
|
54
48
|
(element) => {
|
55
|
-
if (element instanceof
|
49
|
+
if (element instanceof DataQualityValidationConfiguration) {
|
56
50
|
return DATA_QUALITY_ELEMENT_TYPE;
|
57
51
|
}
|
58
|
-
if (element instanceof DataQualityServiceValidationConfiguration) {
|
59
|
-
return DATA_QUALITY_SERVICE_VALIDATION_ELEMENT_TYPE;
|
60
|
-
}
|
61
52
|
return undefined;
|
62
53
|
},
|
63
54
|
];
|
@@ -68,9 +59,6 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
68
59
|
if (type === DATA_QUALITY_ELEMENT_TYPE) {
|
69
60
|
return (_jsx("div", { className: "icon icon--dataQuality", children: _jsx(EyeIcon, {}) }));
|
70
61
|
}
|
71
|
-
if (type === DATA_QUALITY_SERVICE_VALIDATION_ELEMENT_TYPE) {
|
72
|
-
return (_jsx("div", { className: "icon icon--dataQuality", children: _jsx(EyeIcon, {}) }));
|
73
|
-
}
|
74
62
|
return undefined;
|
75
63
|
},
|
76
64
|
];
|
@@ -81,9 +69,6 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
81
69
|
if (type === DATA_QUALITY_ELEMENT_TYPE) {
|
82
70
|
return DATA_QUALITY_ELEMENT_TYPE_LABEL;
|
83
71
|
}
|
84
|
-
if (type === DATA_QUALITY_SERVICE_VALIDATION_ELEMENT_TYPE) {
|
85
|
-
return DATA_QUALITY_SERVICE_VALIDATION_TYPE_LABEL;
|
86
|
-
}
|
87
72
|
return undefined;
|
88
73
|
},
|
89
74
|
];
|
@@ -93,12 +78,7 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
93
78
|
(type, name, state) => {
|
94
79
|
if (type === DATA_QUALITY_ELEMENT_TYPE) {
|
95
80
|
return state
|
96
|
-
.getNewElementDriver(
|
97
|
-
.createElement(name);
|
98
|
-
}
|
99
|
-
if (type === DATA_QUALITY_SERVICE_VALIDATION_ELEMENT_TYPE) {
|
100
|
-
return state
|
101
|
-
.getNewElementDriver(DataQuality_ServiceElementDriver)
|
81
|
+
.getNewElementDriver(DataQuality_ElementDriver)
|
102
82
|
.createElement(name);
|
103
83
|
}
|
104
84
|
return undefined;
|
@@ -114,6 +94,10 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
114
94
|
if (elementEditorState instanceof DataQualityClassValidationState) {
|
115
95
|
return (_jsx(DataQualityClassValidationEditor, {}, elementEditorState.uuid));
|
116
96
|
}
|
97
|
+
if (elementEditorState instanceof
|
98
|
+
DataQualityRelationValidationConfigurationState) {
|
99
|
+
return (_jsx(DataQualityRelationValidationConfigurationEditor, {}, elementEditorState.uuid));
|
100
|
+
}
|
117
101
|
return undefined;
|
118
102
|
},
|
119
103
|
];
|
@@ -127,6 +111,9 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
127
111
|
if (element instanceof DataQualityServiceValidationConfiguration) {
|
128
112
|
return new DataQualityServiceValidationState(editorStore, element);
|
129
113
|
}
|
114
|
+
if (element instanceof DataQualityRelationValidationConfiguration) {
|
115
|
+
return new DataQualityRelationValidationConfigurationState(editorStore, element);
|
116
|
+
}
|
130
117
|
return undefined;
|
131
118
|
},
|
132
119
|
];
|
@@ -135,10 +122,7 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
135
122
|
return [
|
136
123
|
(type) => {
|
137
124
|
if (type === DATA_QUALITY_ELEMENT_TYPE) {
|
138
|
-
return _jsx(
|
139
|
-
}
|
140
|
-
if (type === DATA_QUALITY_SERVICE_VALIDATION_ELEMENT_TYPE) {
|
141
|
-
return _jsx(NewDataQualityServiceValidationElementEditor, {});
|
125
|
+
return _jsx(NewDataQualityValidationElementEditor, {});
|
142
126
|
}
|
143
127
|
return undefined;
|
144
128
|
},
|
@@ -148,10 +132,7 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
148
132
|
return [
|
149
133
|
(editorStore, type) => {
|
150
134
|
if (type === DATA_QUALITY_ELEMENT_TYPE) {
|
151
|
-
return new
|
152
|
-
}
|
153
|
-
if (type === DATA_QUALITY_SERVICE_VALIDATION_ELEMENT_TYPE) {
|
154
|
-
return new DataQuality_ServiceElementDriver(editorStore);
|
135
|
+
return new DataQuality_ElementDriver(editorStore);
|
155
136
|
}
|
156
137
|
return undefined;
|
157
138
|
},
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DSL_DataQuality_LegendStudioApplicationPlugin.js","sourceRoot":"","sources":["../../src/components/DSL_DataQuality_LegendStudioApplicationPlugin.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAcL,6BAA6B,EAC7B,qCAAqC,GACtC,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,wCAAwC,EACxC,yCAAyC,
|
1
|
+
{"version":3,"file":"DSL_DataQuality_LegendStudioApplicationPlugin.js","sourceRoot":"","sources":["../../src/components/DSL_DataQuality_LegendStudioApplicationPlugin.tsx"],"names":[],"mappings":"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"}
|
@@ -13,7 +13,7 @@
|
|
13
13
|
* See the License for the specific language governing permissions and
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
|
-
export declare const
|
16
|
+
export declare const NewDataQualityValidationElementEditor: (() => import("react/jsx-runtime").JSX.Element) & {
|
17
17
|
displayName: string;
|
18
18
|
};
|
19
|
-
//# sourceMappingURL=
|
19
|
+
//# sourceMappingURL=DSL_NewDataQualityValidationElement.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"DSL_NewDataQualityValidationElement.d.ts","sourceRoot":"","sources":["../../src/components/DSL_NewDataQualityValidationElement.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAmBH,eAAO,MAAM,qCAAqC;;CA8KhD,CAAC"}
|
@@ -0,0 +1,80 @@
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
+
/**
|
3
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
4
|
+
*
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
* you may not use this file except in compliance with the License.
|
7
|
+
* You may obtain a copy of the License at
|
8
|
+
*
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
*
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
* See the License for the specific language governing permissions and
|
15
|
+
* limitations under the License.
|
16
|
+
*/
|
17
|
+
import { observer } from 'mobx-react-lite';
|
18
|
+
import { useEditorStore } from '@finos/legend-application-studio';
|
19
|
+
import { BaseRadioGroup, CustomSelectorInput } from '@finos/legend-art';
|
20
|
+
import { buildElementOption, } from '@finos/legend-lego/graph-editor';
|
21
|
+
import { DataQuality_ElementDriver, CLASS_ELEMENT_CREATION_BASIS, DQ_VALIDATION_ELEMENT_TYPE, } from './DSL_DataQuality_ElementDriver.js';
|
22
|
+
import { prettyCONSTName } from '@finos/legend-shared';
|
23
|
+
export const NewDataQualityValidationElementEditor = observer(() => {
|
24
|
+
const editorStore = useEditorStore();
|
25
|
+
const applicationStore = editorStore.applicationStore;
|
26
|
+
const dataQualityValidationDriver = editorStore.newElementState.getNewElementDriver(DataQuality_ElementDriver);
|
27
|
+
const dqValidationElementType = dataQualityValidationDriver.dqValidationElementType;
|
28
|
+
const dqElementCreationBasis = dataQualityValidationDriver.dqClassElementCreationBasis;
|
29
|
+
const dataSpacesOptions = dataQualityValidationDriver.dataSpaceOptions;
|
30
|
+
const mappingOptions = dataQualityValidationDriver.mappingOptions;
|
31
|
+
const runtimeOptions = dataQualityValidationDriver.compatibleMappingRuntimes.map(buildElementOption);
|
32
|
+
const dqValidationElementTypeOptions = Object.values(DQ_VALIDATION_ELEMENT_TYPE)
|
33
|
+
.filter((validation) => validation !== DQ_VALIDATION_ELEMENT_TYPE.SERVICE_VALIDATION)
|
34
|
+
.map((validationType) => ({
|
35
|
+
label: prettyCONSTName(validationType),
|
36
|
+
value: validationType,
|
37
|
+
}));
|
38
|
+
const onDataSpaceChange = (val) => {
|
39
|
+
if (val) {
|
40
|
+
dataQualityValidationDriver.setDataSpaceSelected(val);
|
41
|
+
}
|
42
|
+
};
|
43
|
+
const onMappingChange = (val) => {
|
44
|
+
if (val) {
|
45
|
+
dataQualityValidationDriver.setMappingSelected(val);
|
46
|
+
}
|
47
|
+
else {
|
48
|
+
dataQualityValidationDriver.setMappingSelected(undefined);
|
49
|
+
}
|
50
|
+
dataQualityValidationDriver.setRuntimeSelected(dataQualityValidationDriver.runtimeOptions.length > 0
|
51
|
+
? dataQualityValidationDriver.runtimeOptions[0]
|
52
|
+
: undefined);
|
53
|
+
};
|
54
|
+
const onRuntimeChange = (val) => {
|
55
|
+
if (val) {
|
56
|
+
dataQualityValidationDriver.setRuntimeSelected(val);
|
57
|
+
}
|
58
|
+
};
|
59
|
+
const handleDQClassElementCreationBasisChange = (event) => {
|
60
|
+
const classValidationElementCreationBasis = event.target.value;
|
61
|
+
dataQualityValidationDriver.setDqClassElementCreationBasis(classValidationElementCreationBasis);
|
62
|
+
};
|
63
|
+
const handleDQValidationElementTypeChange = (val) => {
|
64
|
+
dataQualityValidationDriver.setDqValidationElementType(val.value);
|
65
|
+
};
|
66
|
+
const selectedDqValidationElementType = {
|
67
|
+
label: prettyCONSTName(dataQualityValidationDriver.dqValidationElementType),
|
68
|
+
value: dataQualityValidationDriver.dqValidationElementType,
|
69
|
+
};
|
70
|
+
return (_jsxs("div", { children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Validation Type" }), _jsx("div", { className: "panel__content__form__section__header__prompt", children: "Type of Data Quality Validation to be configured" }), _jsx(CustomSelectorInput, { options: dqValidationElementTypeOptions, onChange: handleDQValidationElementTypeChange, value: selectedDqValidationElementType, darkMode: !applicationStore.layoutService.TEMPORARY__isLightColorThemeEnabled, placeholder: "Choose a data quality validation type", isClearable: false, className: 'dq-validation-element-type' }), dqValidationElementType ===
|
71
|
+
DQ_VALIDATION_ELEMENT_TYPE.CLASS_VALIDATION && (_jsxs("div", { children: [_jsxs("div", { className: "element-creation-basis", children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Basis of Data Quality Class Validation" }), _jsx(BaseRadioGroup, { value: dqElementCreationBasis, onChange: handleDQClassElementCreationBasisChange, row: false, options: [
|
72
|
+
CLASS_ELEMENT_CREATION_BASIS.DATASPACE_BASED,
|
73
|
+
CLASS_ELEMENT_CREATION_BASIS.MAPPING_RUNTIME_BASED,
|
74
|
+
], size: 2 })] }), dqElementCreationBasis ===
|
75
|
+
CLASS_ELEMENT_CREATION_BASIS.DATASPACE_BASED ? (_jsxs("div", { children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "DataSpace" }), _jsx("div", { className: "data-quality-explorer__new-element-modal__driver", children: _jsx(CustomSelectorInput, { className: "data-quality-explorer__new-element-modal__driver__dropdown", options: dataSpacesOptions, onChange: onDataSpaceChange, value: dataQualityValidationDriver.dataSpaceSelected, darkMode: !applicationStore.layoutService
|
76
|
+
.TEMPORARY__isLightColorThemeEnabled }) })] })) : (_jsxs("div", { children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Mapping" }), _jsx("div", { className: "data-quality-explorer__new-element-modal__driver", children: _jsx(CustomSelectorInput, { className: "data-quality-explorer__new-element-modal__driver__dropdown", options: mappingOptions, onChange: onMappingChange, value: dataQualityValidationDriver.mappingSelected, darkMode: !applicationStore.layoutService
|
77
|
+
.TEMPORARY__isLightColorThemeEnabled }) }), _jsx("div", { className: "panel__content__form__section__header__label", children: "Runtime" }), _jsx("div", { className: "data-quality-explorer__new-element-modal__driver", children: _jsx(CustomSelectorInput, { className: "data-quality-explorer__new-element-modal__driver__dropdown", options: runtimeOptions, onChange: onRuntimeChange, value: dataQualityValidationDriver.runtimeSelected, darkMode: !applicationStore.layoutService
|
78
|
+
.TEMPORARY__isLightColorThemeEnabled }) })] }))] }))] }));
|
79
|
+
});
|
80
|
+
//# sourceMappingURL=DSL_NewDataQualityValidationElement.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"DSL_NewDataQualityValidationElement.js","sourceRoot":"","sources":["../../src/components/DSL_NewDataQualityValidationElement.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,22 @@
|
|
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 { DataQualityRelationValidationConfigurationState } from './states/DataQualityRelationValidationConfigurationState.js';
|
17
|
+
export declare const DataQualityRelationTrialRuns: ((props: {
|
18
|
+
dataQualityRelationValidationConfigurationState: DataQualityRelationValidationConfigurationState;
|
19
|
+
}) => import("react/jsx-runtime").JSX.Element) & {
|
20
|
+
displayName: string;
|
21
|
+
};
|
22
|
+
//# sourceMappingURL=DataQualityRelationTrialRuns.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"DataQualityRelationTrialRuns.d.ts","sourceRoot":"","sources":["../../src/components/DataQualityRelationTrialRuns.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA+BH,OAAO,KAAK,EAAE,+CAA+C,EAAE,MAAM,6DAA6D,CAAC;AAEnI,eAAO,MAAM,4BAA4B,WAC/B;IACN,+CAA+C,EAAE,+CAA+C,CAAC;CAClG;;CA6OF,CAAC"}
|
@@ -0,0 +1,87 @@
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
2
|
+
/**
|
3
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
4
|
+
*
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
* you may not use this file except in compliance with the License.
|
7
|
+
* You may obtain a copy of the License at
|
8
|
+
*
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
*
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
* See the License for the specific language governing permissions and
|
15
|
+
* limitations under the License.
|
16
|
+
*/
|
17
|
+
import { observer } from 'mobx-react-lite';
|
18
|
+
import { useApplicationStore } from '@finos/legend-application';
|
19
|
+
import { flowResult } from 'mobx';
|
20
|
+
import { ExecutionPlanViewer, LambdaParameterValuesEditor, } from '@finos/legend-query-builder';
|
21
|
+
import {} from '@finos/legend-graph';
|
22
|
+
import { prettyDuration } from '@finos/legend-shared';
|
23
|
+
import React, { useRef, useState } from 'react';
|
24
|
+
import { DATA_QUALITY_VALIDATION_TEST_ID } from './constants/DataQualityConstants.js';
|
25
|
+
import { BlankPanelContent, CaretDownIcon, ControlledDropdownMenu, CubesLoadingIndicator, CubesLoadingIndicatorIcon, DebugIcon, ExclamationTriangleIcon, MenuContent, MenuContentItem, MenuContentItemIcon, MenuContentItemLabel, PanelContent, PauseCircleIcon, PlayIcon, ReportIcon, } from '@finos/legend-art';
|
26
|
+
import { DataQualityResultValues } from './DataQualityResultValues.js';
|
27
|
+
export const DataQualityRelationTrialRuns = observer((props) => {
|
28
|
+
const { dataQualityRelationValidationConfigurationState } = props;
|
29
|
+
const applicationStore = useApplicationStore();
|
30
|
+
const resultState = dataQualityRelationValidationConfigurationState.resultState;
|
31
|
+
const executionResult = resultState.executionResult;
|
32
|
+
const runQuery = () => {
|
33
|
+
resultState.handleRunValidation();
|
34
|
+
};
|
35
|
+
const cancelQuery = applicationStore.guardUnhandledError(() => flowResult(resultState.cancelValidation()));
|
36
|
+
const generatePlan = applicationStore.guardUnhandledError(() => {
|
37
|
+
return flowResult(resultState.generatePlan(false));
|
38
|
+
});
|
39
|
+
const debugPlanGeneration = applicationStore.guardUnhandledError(() => flowResult(resultState.generatePlan(true)));
|
40
|
+
const isRunQueryDisabled = resultState.isGeneratingPlan || resultState.isRunningValidation;
|
41
|
+
const getResultSetDescription = (_executionResult) => {
|
42
|
+
const queryDuration = resultState.executionDuration
|
43
|
+
? prettyDuration(resultState.executionDuration, {
|
44
|
+
ms: true,
|
45
|
+
})
|
46
|
+
: undefined;
|
47
|
+
if (!queryDuration) {
|
48
|
+
return undefined;
|
49
|
+
}
|
50
|
+
return `validation ran in ${queryDuration}`;
|
51
|
+
};
|
52
|
+
const resultDescription = !resultState.isRunningValidation && executionResult
|
53
|
+
? getResultSetDescription(executionResult)
|
54
|
+
: undefined;
|
55
|
+
const [previewLimitValue, setPreviewLimitValue] = useState(resultState.previewLimit);
|
56
|
+
const changePreviewLimit = (event) => {
|
57
|
+
setPreviewLimitValue(parseInt(event.target.value, 10));
|
58
|
+
};
|
59
|
+
const inputRef = useRef(null);
|
60
|
+
const getPreviewLimit = () => {
|
61
|
+
if (isNaN(previewLimitValue) || previewLimitValue === 0) {
|
62
|
+
setPreviewLimitValue(1);
|
63
|
+
dataQualityRelationValidationConfigurationState.resultState.setPreviewLimit(1);
|
64
|
+
}
|
65
|
+
else {
|
66
|
+
dataQualityRelationValidationConfigurationState.resultState.setPreviewLimit(previewLimitValue);
|
67
|
+
}
|
68
|
+
};
|
69
|
+
const onKeyDown = (event) => {
|
70
|
+
if (event.code === 'Enter') {
|
71
|
+
getPreviewLimit();
|
72
|
+
inputRef.current?.focus();
|
73
|
+
}
|
74
|
+
else if (event.code === 'Escape') {
|
75
|
+
inputRef.current?.select();
|
76
|
+
}
|
77
|
+
};
|
78
|
+
const isLoading = resultState.isRunningValidation || resultState.isGeneratingPlan;
|
79
|
+
return (_jsxs("div", { "data-testid": DATA_QUALITY_VALIDATION_TEST_ID.DATA_QUALITY_VALIDATION_RESULT_PANEL, className: "panel data-quality-validation__result", children: [_jsxs("div", { className: "panel__header", children: [_jsxs("div", { className: "panel__header__title", children: [_jsx("div", { className: "panel__header__title__label", children: "results" }), resultState.validationToRun && (_jsx("div", { className: "panel__header__title__label", children: resultState.validationToRun.name })), resultState.isRunningValidation && (_jsx("div", { className: "panel__header__title__label__status", children: "Running Validation..." })), _jsx("div", { "data-testid": DATA_QUALITY_VALIDATION_TEST_ID.DATA_QUALITY_VALIDATION_RESULT_ANALYTICS, className: "data-quality-validation__result__analytics", children: resultDescription ?? '' }), executionResult && resultState.checkForStaleResults && (_jsxs("div", { className: "data-quality-validation__result__stale-status", children: [_jsx("div", { className: "data-quality-validation__result__stale-status__icon", children: _jsx(ExclamationTriangleIcon, {}) }), _jsx("div", { className: "data-quality-validation__result__stale-status__label", children: "Preview data might be stale" })] }))] }), _jsxs("div", { className: "panel__header__actions data-quality-validation__result__header__actions", children: [_jsxs("div", { className: "data-quality-validation__result__limit", children: [_jsx("div", { className: "data-quality-validation__result__limit__label", children: "preview row limit" }), _jsx("input", { ref: inputRef, className: "input--dark data-quality-validation__result__limit__input", spellCheck: false, type: "number", value: previewLimitValue, onChange: changePreviewLimit, onBlur: getPreviewLimit, onKeyDown: onKeyDown })] }), _jsx("div", { className: "data-quality-validation__result__execute-btn btn__dropdown-combo btn__dropdown-combo--primary", children: resultState.isRunningValidation ? (_jsx("button", { className: "btn__dropdown-combo__canceler data-quality-validation__result__execute-btn__btn", onClick: cancelQuery, tabIndex: -1, children: _jsxs("div", { className: "btn--dark btn--caution btn__dropdown-combo__canceler__label data-quality-validation__result__execute-btn__btn", children: [_jsx(PauseCircleIcon, {}), "Stop"] }) })) : (_jsxs(_Fragment, { children: [_jsxs("button", { className: "btn__dropdown-combo__label data-quality-validation__result__execute-btn__validation data-quality-validation__result__execute-btn__btn data-quality-validation__result__execute-btn__btn--green", onClick: runQuery, tabIndex: -1, disabled: isRunQueryDisabled, children: [_jsx(PlayIcon, {}), "Run Validation"] }), _jsx(ControlledDropdownMenu, { className: "btn__dropdown-combo__dropdown-btn data-quality-validation__result__execute-btn__btn data-quality-validation__result__execute-btn__btn--green", disabled: isRunQueryDisabled, content: _jsxs(MenuContent, { children: [_jsxs(MenuContentItem, { className: "btn__dropdown-combo__option", onClick: generatePlan, disabled: isRunQueryDisabled, children: [_jsx(MenuContentItemIcon, { children: _jsx(ReportIcon, {}) }), _jsx(MenuContentItemLabel, { children: "Generate Plan" })] }), _jsxs(MenuContentItem, { className: "btn__dropdown-combo__option", onClick: debugPlanGeneration, disabled: isRunQueryDisabled, children: [_jsx(MenuContentItemIcon, { children: _jsx(DebugIcon, {}) }), _jsx(MenuContentItemLabel, { children: "Debug" })] })] }), menuProps: {
|
80
|
+
anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
|
81
|
+
transformOrigin: { vertical: 'top', horizontal: 'right' },
|
82
|
+
}, children: _jsx(CaretDownIcon, {}) })] })) })] })] }), _jsxs(PanelContent, { className: "data-quality-validation__result__content", children: [_jsx(CubesLoadingIndicator, { isLoading: isLoading, children: _jsx(CubesLoadingIndicatorIcon, {}) }), !executionResult && !isLoading && (_jsx(BlankPanelContent, { children: "Click on run validation to see the validation results" })), executionResult && !isLoading && (_jsx("div", { className: "data-quality-validation__result__values", children: _jsx(DataQualityResultValues, { executionResult: executionResult }) }))] }), _jsx(ExecutionPlanViewer, { executionPlanState: resultState.executionPlanState }), dataQualityRelationValidationConfigurationState.parametersState
|
83
|
+
.parameterValuesEditorState.showModal && (_jsx(LambdaParameterValuesEditor, { graph: dataQualityRelationValidationConfigurationState.editorStore
|
84
|
+
.graphManagerState.graph, observerContext: dataQualityRelationValidationConfigurationState.editorStore
|
85
|
+
.changeDetectionState.observerContext, lambdaParametersState: dataQualityRelationValidationConfigurationState.parametersState }))] }));
|
86
|
+
});
|
87
|
+
//# sourceMappingURL=DataQualityRelationTrialRuns.js.map
|