@finos/legend-extension-dsl-data-quality 2.1.34 → 2.1.35
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_LegendStudioApplicationPlugin.d.ts.map +1 -1
- package/lib/components/DSL_DataQuality_LegendStudioApplicationPlugin.js +45 -13
- package/lib/components/DSL_DataQuality_LegendStudioApplicationPlugin.js.map +1 -1
- package/lib/components/DataQualityCustomSelector.d.ts +16 -1
- package/lib/components/DataQualityCustomSelector.d.ts.map +1 -1
- package/lib/components/DataQualityCustomSelector.js +29 -4
- package/lib/components/DataQualityCustomSelector.js.map +1 -1
- package/lib/components/DataQualityRelationComparisonEditor.d.ts +19 -0
- package/lib/components/DataQualityRelationComparisonEditor.d.ts.map +1 -0
- package/lib/components/DataQualityRelationComparisonEditor.js +239 -0
- package/lib/components/DataQualityRelationComparisonEditor.js.map +1 -0
- package/lib/components/DataQualityRelationGridResult.d.ts +3 -0
- package/lib/components/DataQualityRelationGridResult.d.ts.map +1 -1
- package/lib/components/DataQualityRelationGridResult.js +1 -1
- package/lib/components/DataQualityRelationGridResult.js.map +1 -1
- package/lib/components/DataQualityRelationLambdaGUIDataTypeHandlers.d.ts +0 -10
- package/lib/components/DataQualityRelationLambdaGUIDataTypeHandlers.d.ts.map +1 -1
- package/lib/components/DataQualityRelationLambdaGUIDataTypeHandlers.js +11 -24
- package/lib/components/DataQualityRelationLambdaGUIDataTypeHandlers.js.map +1 -1
- package/lib/components/DataQualityRelationLambdaGUIValidationEditor.d.ts.map +1 -1
- package/lib/components/DataQualityRelationLambdaGUIValidationEditor.js +6 -4
- package/lib/components/DataQualityRelationLambdaGUIValidationEditor.js.map +1 -1
- package/lib/components/states/DataQualityRelationComparisonConfigurationState.d.ts +111 -0
- package/lib/components/states/DataQualityRelationComparisonConfigurationState.d.ts.map +1 -0
- package/lib/components/states/DataQualityRelationComparisonConfigurationState.js +495 -0
- package/lib/components/states/DataQualityRelationComparisonConfigurationState.js.map +1 -0
- package/lib/data-quality-custom-selector.css +2 -2
- package/lib/data-quality-custom-selector.css.map +1 -1
- package/lib/graph/metamodel/DSL_DataQuality_HashUtils.d.ts +3 -1
- package/lib/graph/metamodel/DSL_DataQuality_HashUtils.d.ts.map +1 -1
- package/lib/graph/metamodel/DSL_DataQuality_HashUtils.js +2 -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 +35 -0
- package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js +37 -0
- 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 +7 -1
- package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.d.ts.map +1 -1
- package/lib/graph-manager/DSL_DataQuality_GraphModifierHelper.js +18 -0
- 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 +3 -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 +28 -1
- package/lib/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.d.ts +4 -1
- 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.map +1 -1
- package/lib/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.js +33 -5
- 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 +26 -2
- 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 +107 -3
- package/lib/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_DataQualityValidationConfiguration.d.ts +19 -0
- package/lib/graph-manager/protocol/pure/v1/V1_DataQualityValidationConfiguration.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_DataQualityValidationConfiguration.js +37 -0
- package/lib/graph-manager/protocol/pure/v1/V1_DataQualityValidationConfiguration.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.d.ts +2 -1
- 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 +26 -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 +3 -2
- 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 +29 -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 +4 -1
- 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 +37 -2
- 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_LegendStudioApplicationPlugin.tsx +64 -12
- package/src/components/DataQualityCustomSelector.tsx +111 -6
- package/src/components/DataQualityRelationComparisonEditor.tsx +795 -0
- package/src/components/DataQualityRelationGridResult.tsx +1 -1
- package/src/components/DataQualityRelationLambdaGUIDataTypeHandlers.tsx +9 -87
- package/src/components/DataQualityRelationLambdaGUIValidationEditor.tsx +16 -6
- package/src/components/states/DataQualityRelationComparisonConfigurationState.ts +747 -0
- package/src/graph/metamodel/DSL_DataQuality_HashUtils.ts +2 -0
- package/src/graph/metamodel/DSL_DataQuality_PureGraphPlugin.ts +2 -0
- package/src/graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.ts +66 -0
- package/src/graph-manager/DSL_DataQuality_GraphManagerHelper.ts +13 -0
- package/src/graph-manager/DSL_DataQuality_GraphModifierHelper.ts +57 -0
- package/src/graph-manager/DSL_DataQuality_PureGraphManagerPlugin.ts +8 -0
- package/src/graph-manager/action/changeDetection/DSL_DataQuality_ObserverHelper.ts +42 -0
- package/src/graph-manager/protocol/pure/DSL_DataQuality_PureGraphManagerExtension.ts +16 -0
- package/src/graph-manager/protocol/pure/DSL_DataQuality_PureProtocolProcessorPlugin.ts +65 -0
- package/src/graph-manager/protocol/pure/v1/V1_DSL_Data_Quality_PureGraphManagerExtension.ts +171 -1
- package/src/graph-manager/protocol/pure/v1/V1_DataQualityValidationConfiguration.ts +49 -0
- package/src/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationBuilderHelper.ts +39 -0
- package/src/graph-manager/protocol/pure/v1/transformation/V1_DSL_DataQuality_ValueSpecificationTransformer.ts +50 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_DSL_DataQuality_ProtocolHelper.ts +71 -0
- package/style/_data-quality-relation-comparison-editor.scss +361 -0
- package/style/data-quality-custom-selector.scss +23 -0
- package/style/index.scss +74 -0
- package/tsconfig.json +2 -0
|
@@ -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,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;
|
|
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;AAgC1C,qBAAa,6CACX,SAAQ,6BACR,YAAW,2CAA2C;;IAMtD,6BAA6B,IAAI,MAAM,EAAE;IAOzC,yCAAyC,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IASlE,0BAA0B,IAAI,iBAAiB,EAAE;IAcjD,0BAA0B,IAAI,iBAAiB,EAAE;IAqBjD,+BAA+B,IAAI,sBAAsB,EAAE;IAc3D,mCAAmC,IAAI,0BAA0B,EAAE;IA2BnE,8BAA8B,IAAI,qBAAqB,EAAE;IAsCzD,kCAAkC,IAAI,yBAAyB,EAAE;IA6BjE,uCAAuC,IAAI,8BAA8B,EAAE;IAW3E,gCAAgC,IAAI,uBAAuB,EAAE;IAcpD,gDAAgD,IAAI,MAAM,EAAE;CAMtE"}
|
|
@@ -16,8 +16,8 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
16
16
|
*/
|
|
17
17
|
import packageJson from '../../package.json' with { type: 'json' };
|
|
18
18
|
import { LegendStudioApplicationPlugin, PACKAGEABLE_ELEMENT_GROUP_BY_CATEGORY, } from '@finos/legend-application-studio';
|
|
19
|
-
import { DataQualityClassValidationsConfiguration, DataQualityServiceValidationConfiguration, DataQualityRelationValidationConfiguration, DataQualityValidationConfiguration, } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
|
20
|
-
import { EyeIcon } from '@finos/legend-art';
|
|
19
|
+
import { DataQualityClassValidationsConfiguration, DataQualityServiceValidationConfiguration, DataQualityRelationValidationConfiguration, DataQualityValidationConfiguration, DataQualityRelationComparisonConfiguration, DataQualityRelationQueryLambda, MD5HashStrategy, } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
|
20
|
+
import { CompareIcon, EyeIcon } from '@finos/legend-art';
|
|
21
21
|
import { DataQualityClassValidationEditor } from './DataQualityClassValidationEditor.js';
|
|
22
22
|
import { DataQuality_ElementDriver } from './DSL_DataQuality_ElementDriver.js';
|
|
23
23
|
import { DataQualityServiceValidationEditor } from './DataQualityServiceValidationEditor.js';
|
|
@@ -27,19 +27,27 @@ import { DataQualityServiceValidationState } from './states/DataQualityServiceVa
|
|
|
27
27
|
import { DataQualityRelationValidationConfigurationState } from './states/DataQualityRelationValidationConfigurationState.js';
|
|
28
28
|
import { DataQualityRelationValidationConfigurationEditor } from './DataQualityRelationValidationConfigurationEditor.js';
|
|
29
29
|
import { DSL_DATA_QUALITY_LEGEND_STUDIO_APPLICATION_NAVIGATION_CONTEXT_KEY } from '../__lib__/studio/DSL_DataQuality_LegendStudioApplicationNavigationContext.js';
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
import { DataQualityRelationComparisonConfigurationState } from './states/DataQualityRelationComparisonConfigurationState.js';
|
|
31
|
+
import { DataQualityRelationComparisonEditor } from './DataQualityRelationComparisonEditor.js';
|
|
32
|
+
const DATA_QUALITY_VALIDATION_ELEMENT_TYPE = 'DATAQUALITYVALIDATION';
|
|
33
|
+
const DATA_QUALITY_VALIDATION_ELEMENT_TYPE_LABEL = 'Data Quality Validation';
|
|
34
|
+
const DATA_QUALITY_RELATION_COMPARISON_ELEMENT_TYPE = 'DATAQUALITYRELATIONCOMPARISON';
|
|
35
|
+
const DATA_QUALITY_RELATION_COMPARISON_ELEMENT_TYPE_LABEL = 'Data Quality Relation Comparison';
|
|
32
36
|
export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioApplicationPlugin {
|
|
33
37
|
constructor() {
|
|
34
38
|
super(packageJson.extensions.applicationStudioPlugin, packageJson.version);
|
|
35
39
|
}
|
|
36
40
|
getExtraSupportedElementTypes() {
|
|
37
|
-
return [
|
|
41
|
+
return [
|
|
42
|
+
DATA_QUALITY_VALIDATION_ELEMENT_TYPE,
|
|
43
|
+
DATA_QUALITY_RELATION_COMPARISON_ELEMENT_TYPE,
|
|
44
|
+
];
|
|
38
45
|
}
|
|
39
46
|
getExtraSupportedElementTypesWithCategory() {
|
|
40
47
|
const elementTypeswithCategory = new Map();
|
|
41
48
|
elementTypeswithCategory.set(PACKAGEABLE_ELEMENT_GROUP_BY_CATEGORY.OTHER, [
|
|
42
|
-
|
|
49
|
+
DATA_QUALITY_VALIDATION_ELEMENT_TYPE,
|
|
50
|
+
DATA_QUALITY_RELATION_COMPARISON_ELEMENT_TYPE,
|
|
43
51
|
]);
|
|
44
52
|
return elementTypeswithCategory;
|
|
45
53
|
}
|
|
@@ -47,7 +55,10 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
|
47
55
|
return [
|
|
48
56
|
(element) => {
|
|
49
57
|
if (element instanceof DataQualityValidationConfiguration) {
|
|
50
|
-
return
|
|
58
|
+
return DATA_QUALITY_VALIDATION_ELEMENT_TYPE;
|
|
59
|
+
}
|
|
60
|
+
if (element instanceof DataQualityRelationComparisonConfiguration) {
|
|
61
|
+
return DATA_QUALITY_RELATION_COMPARISON_ELEMENT_TYPE;
|
|
51
62
|
}
|
|
52
63
|
return undefined;
|
|
53
64
|
},
|
|
@@ -56,9 +67,12 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
|
56
67
|
getExtraElementIconGetters() {
|
|
57
68
|
return [
|
|
58
69
|
(type) => {
|
|
59
|
-
if (type ===
|
|
70
|
+
if (type === DATA_QUALITY_VALIDATION_ELEMENT_TYPE) {
|
|
60
71
|
return (_jsx("div", { className: "icon icon--dataQuality", children: _jsx(EyeIcon, {}) }));
|
|
61
72
|
}
|
|
73
|
+
else if (type === DATA_QUALITY_RELATION_COMPARISON_ELEMENT_TYPE) {
|
|
74
|
+
return (_jsx("div", { className: "icon icon--dataQuality", children: _jsx(CompareIcon, {}) }));
|
|
75
|
+
}
|
|
62
76
|
return undefined;
|
|
63
77
|
},
|
|
64
78
|
];
|
|
@@ -66,8 +80,11 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
|
66
80
|
getExtraElementTypeLabelGetters() {
|
|
67
81
|
return [
|
|
68
82
|
(type) => {
|
|
69
|
-
if (type ===
|
|
70
|
-
return
|
|
83
|
+
if (type === DATA_QUALITY_VALIDATION_ELEMENT_TYPE) {
|
|
84
|
+
return DATA_QUALITY_VALIDATION_ELEMENT_TYPE_LABEL;
|
|
85
|
+
}
|
|
86
|
+
if (type === DATA_QUALITY_RELATION_COMPARISON_ELEMENT_TYPE) {
|
|
87
|
+
return DATA_QUALITY_RELATION_COMPARISON_ELEMENT_TYPE_LABEL;
|
|
71
88
|
}
|
|
72
89
|
return undefined;
|
|
73
90
|
},
|
|
@@ -76,11 +93,19 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
|
76
93
|
getExtraNewElementFromStateCreators() {
|
|
77
94
|
return [
|
|
78
95
|
(type, name, state) => {
|
|
79
|
-
if (type ===
|
|
96
|
+
if (type === DATA_QUALITY_VALIDATION_ELEMENT_TYPE) {
|
|
80
97
|
return state
|
|
81
98
|
.getNewElementDriver(DataQuality_ElementDriver)
|
|
82
99
|
.createElement(name);
|
|
83
100
|
}
|
|
101
|
+
if (type === DATA_QUALITY_RELATION_COMPARISON_ELEMENT_TYPE) {
|
|
102
|
+
const comparison = new DataQualityRelationComparisonConfiguration(name);
|
|
103
|
+
comparison.source = new DataQualityRelationQueryLambda();
|
|
104
|
+
comparison.target = new DataQualityRelationQueryLambda();
|
|
105
|
+
// default currently
|
|
106
|
+
comparison.strategy = new MD5HashStrategy();
|
|
107
|
+
return comparison;
|
|
108
|
+
}
|
|
84
109
|
return undefined;
|
|
85
110
|
},
|
|
86
111
|
];
|
|
@@ -98,6 +123,10 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
|
98
123
|
DataQualityRelationValidationConfigurationState) {
|
|
99
124
|
return (_jsx(DataQualityRelationValidationConfigurationEditor, {}, elementEditorState.uuid));
|
|
100
125
|
}
|
|
126
|
+
if (elementEditorState instanceof
|
|
127
|
+
DataQualityRelationComparisonConfigurationState) {
|
|
128
|
+
return (_jsx(DataQualityRelationComparisonEditor, {}, elementEditorState.uuid));
|
|
129
|
+
}
|
|
101
130
|
return undefined;
|
|
102
131
|
},
|
|
103
132
|
];
|
|
@@ -114,6 +143,9 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
|
114
143
|
if (element instanceof DataQualityRelationValidationConfiguration) {
|
|
115
144
|
return new DataQualityRelationValidationConfigurationState(editorStore, element);
|
|
116
145
|
}
|
|
146
|
+
if (element instanceof DataQualityRelationComparisonConfiguration) {
|
|
147
|
+
return new DataQualityRelationComparisonConfigurationState(editorStore, element);
|
|
148
|
+
}
|
|
117
149
|
return undefined;
|
|
118
150
|
},
|
|
119
151
|
];
|
|
@@ -121,7 +153,7 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
|
121
153
|
getExtraNewElementDriverEditorRenderers() {
|
|
122
154
|
return [
|
|
123
155
|
(type) => {
|
|
124
|
-
if (type ===
|
|
156
|
+
if (type === DATA_QUALITY_VALIDATION_ELEMENT_TYPE) {
|
|
125
157
|
return _jsx(NewDataQualityValidationElementEditor, {});
|
|
126
158
|
}
|
|
127
159
|
return undefined;
|
|
@@ -131,7 +163,7 @@ export class DSL_DataQuality_LegendStudioApplicationPlugin extends LegendStudioA
|
|
|
131
163
|
getExtraNewElementDriverCreators() {
|
|
132
164
|
return [
|
|
133
165
|
(editorStore, type) => {
|
|
134
|
-
if (type ===
|
|
166
|
+
if (type === DATA_QUALITY_VALIDATION_ELEMENT_TYPE) {
|
|
135
167
|
return new DataQuality_ElementDriver(editorStore);
|
|
136
168
|
}
|
|
137
169
|
return undefined;
|
|
@@ -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,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACnE,OAAO,EAcL,6BAA6B,EAC7B,qCAAqC,GACtC,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,wCAAwC,EACxC,yCAAyC,EACzC,0CAA0C,EAC1C,kCAAkC,
|
|
1
|
+
{"version":3,"file":"DSL_DataQuality_LegendStudioApplicationPlugin.js","sourceRoot":"","sources":["../../src/components/DSL_DataQuality_LegendStudioApplicationPlugin.tsx"],"names":[],"mappings":"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"}
|
|
@@ -21,15 +21,30 @@ export type Option<T = string> = {
|
|
|
21
21
|
export interface DataQualityCustomSelectorProps<T> {
|
|
22
22
|
value?: T | undefined;
|
|
23
23
|
options: T[];
|
|
24
|
-
onChange: (value: T) => void;
|
|
24
|
+
onChange: (value: T | undefined) => void;
|
|
25
25
|
disabled?: boolean;
|
|
26
26
|
placeholder?: string;
|
|
27
27
|
className?: string;
|
|
28
28
|
title?: string;
|
|
29
29
|
renderLabel?: (option: T) => ReactNode;
|
|
30
|
+
clearable?: boolean;
|
|
30
31
|
}
|
|
31
32
|
export declare const DataQualityCustomSelector: <T extends {
|
|
32
33
|
value: string;
|
|
33
34
|
label: string;
|
|
34
35
|
}>(props: DataQualityCustomSelectorProps<T>) => React.ReactElement;
|
|
36
|
+
export interface DataQualityMultiCustomSelectorProps<T> {
|
|
37
|
+
value?: T[] | undefined;
|
|
38
|
+
options: T[];
|
|
39
|
+
onChange: (value: T[]) => void;
|
|
40
|
+
disabled?: boolean;
|
|
41
|
+
placeholder?: string;
|
|
42
|
+
className?: string;
|
|
43
|
+
darkMode: boolean;
|
|
44
|
+
renderLabel?: (option: T) => ReactNode;
|
|
45
|
+
}
|
|
46
|
+
export declare const DataQualityMultiCustomSelector: <T extends {
|
|
47
|
+
value: string;
|
|
48
|
+
label: string;
|
|
49
|
+
}>(props: DataQualityMultiCustomSelectorProps<T>) => React.ReactElement;
|
|
35
50
|
//# sourceMappingURL=DataQualityCustomSelector.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataQualityCustomSelector.d.ts","sourceRoot":"","sources":["../../src/components/DataQualityCustomSelector.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"DataQualityCustomSelector.d.ts","sourceRoot":"","sources":["../../src/components/DataQualityCustomSelector.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAYH,OAAO,KAAK,EAAc,SAAS,EAAE,MAAM,OAAO,CAAC;AAEnD,MAAM,MAAM,MAAM,CAAC,CAAC,GAAG,MAAM,IAAI;IAAE,KAAK,EAAE,CAAC,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7D,MAAM,WAAW,8BAA8B,CAAC,CAAC;IAC/C,KAAK,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC;IACtB,OAAO,EAAE,CAAC,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,SAAS,CAAC;IACvC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,yBAAyB,GACpC,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAE1C,OAAO,8BAA8B,CAAC,CAAC,CAAC,KACvC,KAAK,CAAC,YA2DR,CAAC;AAEF,MAAM,WAAW,mCAAmC,CAAC,CAAC;IACpD,KAAK,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC;IACxB,OAAO,EAAE,CAAC,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,SAAS,CAAC;CACxC;AAED,eAAO,MAAM,8BAA8B,GACzC,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAE1C,OAAO,mCAAmC,CAAC,CAAC,CAAC,KAC5C,KAAK,CAAC,YAqER,CAAC"}
|
|
@@ -14,14 +14,39 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
-
import { CaretDownIcon, ControlledDropdownMenu, MenuContent, MenuContentItem, } from '@finos/legend-art';
|
|
17
|
+
import { BaseMenuItem, CaretDownIcon, Checkbox, ControlledDropdownMenu, CustomSelectorInput, MenuContent, MenuContentItem, TimesIcon, } from '@finos/legend-art';
|
|
18
18
|
export const DataQualityCustomSelector = (props) => {
|
|
19
|
-
const { value, options, onChange, disabled = false, placeholder = 'Choose option...', className, title = 'Choose option...', } = props;
|
|
19
|
+
const { value, options, onChange, disabled = false, placeholder = 'Choose option...', className, title = 'Choose option...', renderLabel, clearable = false, } = props;
|
|
20
20
|
const selectedOption = options.find((opt) => opt.value === value?.value);
|
|
21
|
-
|
|
21
|
+
const selectedLabel = selectedOption
|
|
22
|
+
? (renderLabel?.(selectedOption) ?? selectedOption.label)
|
|
23
|
+
: placeholder;
|
|
24
|
+
return (_jsxs(ControlledDropdownMenu, { className: className ?? 'data-quality-custom-selector', title: title, disabled: disabled, content: _jsx(MenuContent, { children: options.map((opt) => (_jsx(MenuContentItem, { className: "data-quality-custom-selector__dropdown__option", onClick: () => onChange(opt), children: renderLabel?.(opt) ?? opt.label }, String(opt.value)))) }), menuProps: {
|
|
22
25
|
anchorOrigin: { vertical: 'bottom', horizontal: 'left' },
|
|
23
26
|
transformOrigin: { vertical: 'top', horizontal: 'left' },
|
|
24
27
|
elevation: 7,
|
|
25
|
-
}, children: [_jsx("div", { className: "data-quality-custom-selector__label", children:
|
|
28
|
+
}, children: [_jsx("div", { className: "data-quality-custom-selector__label", children: selectedLabel }), clearable && selectedOption && (_jsx("button", { className: "data-quality-custom-selector__clear", onClick: (e) => {
|
|
29
|
+
e.stopPropagation();
|
|
30
|
+
onChange(undefined);
|
|
31
|
+
}, children: _jsx(TimesIcon, {}) })), _jsx("div", { className: "data-quality-custom-selector__dropdown__trigger", children: _jsx(CaretDownIcon, {}) })] }));
|
|
32
|
+
};
|
|
33
|
+
export const DataQualityMultiCustomSelector = (props) => {
|
|
34
|
+
const { value = [], onChange, options = [], placeholder = 'Select options', darkMode, disabled, renderLabel, } = props;
|
|
35
|
+
const CustomOption = ({ children, ...optionProps }) => {
|
|
36
|
+
const { data, isSelected, selectOption } = optionProps;
|
|
37
|
+
const handleClick = (event) => {
|
|
38
|
+
event.preventDefault();
|
|
39
|
+
selectOption(data);
|
|
40
|
+
};
|
|
41
|
+
return (_jsxs(BaseMenuItem, { onClick: handleClick, className: "data-quality-validation-gui-editor__column-list-item", dense: true, children: [_jsx(Checkbox, { size: "small", checked: isSelected, onClick: handleClick }), _jsx("div", { children: children })] }));
|
|
42
|
+
};
|
|
43
|
+
return (_jsx(CustomSelectorInput, { value: value, placeholder: placeholder, isMulti: true, options: options, hideSelectedOptions: false, closeMenuOnSelect: false, formatOptionLabel: (option) => renderLabel?.(option) ?? option.label, components: {
|
|
44
|
+
Option: CustomOption,
|
|
45
|
+
MultiValueContainer: ({ children }) => {
|
|
46
|
+
return (_jsx("div", { className: "data-quality-validation-gui-editor__column-list-item", children: children }));
|
|
47
|
+
},
|
|
48
|
+
MultiValueLabel: ({ data }) => renderLabel?.(data) ?? data.label,
|
|
49
|
+
MultiValueRemove: () => null,
|
|
50
|
+
}, onChange: (newValue) => onChange(newValue ? [...newValue] : []), darkMode: darkMode, disabled: disabled }));
|
|
26
51
|
};
|
|
27
52
|
//# sourceMappingURL=DataQualityCustomSelector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataQualityCustomSelector.js","sourceRoot":"","sources":["../../src/components/DataQualityCustomSelector.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,WAAW,EACX,eAAe,
|
|
1
|
+
{"version":3,"file":"DataQualityCustomSelector.js","sourceRoot":"","sources":["../../src/components/DataQualityCustomSelector.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2026-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
|
+
export declare const DataQualityRelationComparisonEditor: (() => import("react/jsx-runtime").JSX.Element) & {
|
|
17
|
+
displayName: string;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=DataQualityRelationComparisonEditor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataQualityRelationComparisonEditor.d.ts","sourceRoot":"","sources":["../../src/components/DataQualityRelationComparisonEditor.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAsOH,eAAO,MAAM,mCAAmC;;CAsiB9C,CAAC"}
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) 2026-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 React, { useEffect, useMemo } from 'react';
|
|
19
|
+
import { BlankPanelContent, CaretDownIcon, clsx, ControlledDropdownMenu, CustomSelectorInput, Dialog, ExclamationTriangleIcon, MenuContent, MenuContentItem, Modal, ModalBody, ModalFooter, ModalFooterButton, ModalFooterStatus, ModalHeader, Panel, PanelContent, PanelFormBooleanField, PanelFormSection, PanelLoadingIndicator, PauseCircleIcon, PlayIcon, RefreshIcon, ResizablePanel, ResizablePanelGroup, ResizablePanelSplitter, ResizablePanelSplitterLine, } from '@finos/legend-art';
|
|
20
|
+
import { MD5HashStrategy } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
|
21
|
+
import { DataQualityRelationComparisonConfigurationState, DEFAULT_LIMIT, RECONCILIATION_EXECUTION_TYPE, } from './states/DataQualityRelationComparisonConfigurationState.js';
|
|
22
|
+
import { useEditorStore } from '@finos/legend-application-studio';
|
|
23
|
+
import { DEFAULT_TAB_SIZE, useApplicationStore, } from '@finos/legend-application';
|
|
24
|
+
import { BasicValueSpecificationEditor, LambdaEditor, LambdaParameterValuesEditor, getTDSColumnCustomizations, getFilterTDSColumnCustomizations, } from '@finos/legend-query-builder';
|
|
25
|
+
import { flowResult } from 'mobx';
|
|
26
|
+
import { DataQualityMultiCustomSelector } from './DataQualityCustomSelector.js';
|
|
27
|
+
import { PrimitiveType, TDSExecutionResult, RawExecutionResult, extractExecutionResultValues, } from '@finos/legend-graph';
|
|
28
|
+
import { guaranteeType, prettyDuration, prettyCONSTName, returnUndefOnError, } from '@finos/legend-shared';
|
|
29
|
+
import { CodeEditor } from '@finos/legend-lego/code-editor';
|
|
30
|
+
import { CODE_EDITOR_LANGUAGE } from '@finos/legend-code-editor';
|
|
31
|
+
import { DataQualityResultCellRenderer, getRowDataFromExecutionResult, } from './DataQualityRelationGridResult.js';
|
|
32
|
+
import { DataGrid, } from '@finos/legend-lego/data-grid';
|
|
33
|
+
const ComparisonParameterSection = observer((props) => {
|
|
34
|
+
const { title, graph, observerContext, parameterStates } = props;
|
|
35
|
+
if (!parameterStates.length) {
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
return (_jsxs("div", { className: "data-quality-relation-comparison-editor__parameters-modal__section", children: [_jsx("div", { className: "data-quality-relation-comparison-editor__parameters-modal__section__title", children: title }), _jsx("div", { className: "data-quality-relation-comparison-editor__parameters-modal__section__body", children: parameterStates.map((paramState) => {
|
|
39
|
+
const variableType = paramState.variableType ?? PrimitiveType.STRING;
|
|
40
|
+
return (_jsxs("div", { className: "panel__content__form__section", children: [_jsxs("div", { className: "lambda-parameter-values__value__label", children: [_jsx("div", { className: "lambda-parameter-values__value__label__name", children: paramState.parameter.name }), _jsx("div", { className: "lambda-parameter-values__value__label__type", children: variableType.name })] }), paramState.value && (_jsx(BasicValueSpecificationEditor, { valueSpecification: paramState.value, setValueSpecification: (val) => {
|
|
41
|
+
paramState.setValue(val);
|
|
42
|
+
}, graph: graph, observerContext: observerContext, typeCheckOption: {
|
|
43
|
+
expectedType: variableType,
|
|
44
|
+
match: variableType === PrimitiveType.DATETIME,
|
|
45
|
+
}, className: "query-builder__parameters__value__editor", resetValue: () => undefined }))] }, paramState.uuid));
|
|
46
|
+
}) })] }));
|
|
47
|
+
});
|
|
48
|
+
const DataQualityRelationComparisonParametersEditor = observer((props) => {
|
|
49
|
+
const { state } = props;
|
|
50
|
+
const applicationStore = useApplicationStore();
|
|
51
|
+
const [isSubmitAction, setIsSubmitAction] = React.useState(false);
|
|
52
|
+
const [isClosingAction, setIsClosingAction] = React.useState(false);
|
|
53
|
+
const valuesEditorState = state.comparisonParametersEditorState;
|
|
54
|
+
const submitAction = valuesEditorState.submitAction;
|
|
55
|
+
const close = () => {
|
|
56
|
+
setIsClosingAction(true);
|
|
57
|
+
valuesEditorState.close();
|
|
58
|
+
};
|
|
59
|
+
const submit = applicationStore.guardUnhandledError(async () => {
|
|
60
|
+
if (submitAction) {
|
|
61
|
+
setIsSubmitAction(true);
|
|
62
|
+
close();
|
|
63
|
+
await submitAction.handler();
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
return (_jsx(Dialog, { open: Boolean(valuesEditorState.showModal), onClose: close, classes: {
|
|
67
|
+
root: 'editor-modal__root-container',
|
|
68
|
+
container: 'editor-modal__container',
|
|
69
|
+
paper: 'editor-modal__content',
|
|
70
|
+
}, children: _jsxs(Modal, { darkMode: !applicationStore.layoutService.TEMPORARY__isLightColorThemeEnabled, className: "editor-modal lambda-parameter-values__modal data-quality-relation-comparison-editor__parameters-modal", children: [_jsx(ModalHeader, { title: "Set Comparison Parameter Values" }), _jsxs(ModalBody, { className: "lambda-parameter-values__modal__body data-quality-relation-comparison-editor__parameters-modal__body", children: [_jsx("div", { className: "data-quality-relation-comparison-editor__parameters-modal__description", children: "Source and target parameters are submitted independently for the reconciliation run." }), _jsxs("div", { className: "data-quality-relation-comparison-editor__parameters-modal__sections", children: [_jsx(ComparisonParameterSection, { title: "Source Query", graph: state.editorStore.graphManagerState.graph, observerContext: state.editorStore.changeDetectionState.observerContext, parameterStates: state.sourceParametersState.parameterStates }), _jsx(ComparisonParameterSection, { title: "Target Query", graph: state.editorStore.graphManagerState.graph, observerContext: state.editorStore.changeDetectionState.observerContext, parameterStates: state.targetParametersState.parameterStates })] })] }), _jsxs(ModalFooter, { children: [isClosingAction && (_jsx(ModalFooterStatus, { children: "Closing..." })), submitAction && (_jsx(ModalFooterButton, { inProgressText: isSubmitAction ? `${submitAction.label}...` : undefined, onClick: submit, text: prettyCONSTName(submitAction.label) })), _jsx(ModalFooterButton, { inProgressText: isClosingAction ? 'Closing...' : undefined, onClick: close, text: "Close", type: "secondary" })] })] }) }));
|
|
71
|
+
});
|
|
72
|
+
export const DataQualityRelationComparisonEditor = observer(() => {
|
|
73
|
+
const editorStore = useEditorStore();
|
|
74
|
+
const applicationStore = useApplicationStore();
|
|
75
|
+
const state = editorStore.tabManagerState.getCurrentEditorState(DataQualityRelationComparisonConfigurationState);
|
|
76
|
+
const comparison = state.element;
|
|
77
|
+
const md5Strategy = guaranteeType(comparison.strategy, MD5HashStrategy);
|
|
78
|
+
const sourceColumnOptions = state.sourceColumnOptions;
|
|
79
|
+
const targetColumnOptions = state.targetColumnOptions;
|
|
80
|
+
const combinedColumnOptions = state.combinedColumnOptions;
|
|
81
|
+
const isRunning = state.isRunning;
|
|
82
|
+
const executionResult = state.executionResult;
|
|
83
|
+
const isFetchingColumns = state.fetchColumnsState.isInProgress;
|
|
84
|
+
const hasColumnFetchError = state.hasColumnFetchError;
|
|
85
|
+
const columnFetchError = state.columnFetchError;
|
|
86
|
+
const hasNoOverlappingColumns = state.hasNoOverlappingColumns;
|
|
87
|
+
const columnsDisabled = hasColumnFetchError || isFetchingColumns;
|
|
88
|
+
// Execution handlers
|
|
89
|
+
const cancelRun = applicationStore.guardUnhandledError(() => flowResult(state.cancelRun()));
|
|
90
|
+
const runReconciliation = applicationStore.guardUnhandledError(() => flowResult(state.handleRun(RECONCILIATION_EXECUTION_TYPE.RECONCILIATION)));
|
|
91
|
+
const runSourceQuery = applicationStore.guardUnhandledError(() => flowResult(state.handleRun(RECONCILIATION_EXECUTION_TYPE.SOURCE_QUERY)));
|
|
92
|
+
const runTargetQuery = applicationStore.guardUnhandledError(() => flowResult(state.handleRun(RECONCILIATION_EXECUTION_TYPE.TARGET_QUERY)));
|
|
93
|
+
const retryFetchColumns = applicationStore.guardUnhandledError(() => flowResult(state.retryFetchColumns()));
|
|
94
|
+
const getResultSetDescription = (_executionResult) => {
|
|
95
|
+
const queryDuration = state.executionDuration
|
|
96
|
+
? prettyDuration(state.executionDuration)
|
|
97
|
+
: undefined;
|
|
98
|
+
if (!queryDuration) {
|
|
99
|
+
return undefined;
|
|
100
|
+
}
|
|
101
|
+
const executionName = state.lastExecutionType === RECONCILIATION_EXECUTION_TYPE.RECONCILIATION
|
|
102
|
+
? 'Data Comparison'
|
|
103
|
+
: state.lastExecutionType === RECONCILIATION_EXECUTION_TYPE.SOURCE_QUERY
|
|
104
|
+
? 'Source Query'
|
|
105
|
+
: 'Target Query';
|
|
106
|
+
return `${executionName} ran in ${queryDuration}`;
|
|
107
|
+
};
|
|
108
|
+
const resultDescription = !isRunning && executionResult
|
|
109
|
+
? getResultSetDescription(executionResult)
|
|
110
|
+
: undefined;
|
|
111
|
+
const darkMode = !applicationStore.layoutService.TEMPORARY__isLightColorThemeEnabled;
|
|
112
|
+
const [limitValue, setLimitValue] = React.useState(state.limit);
|
|
113
|
+
const inputRef = React.useRef(null);
|
|
114
|
+
const changeLimit = (event) => {
|
|
115
|
+
setLimitValue(parseInt(event.target.value, 10));
|
|
116
|
+
};
|
|
117
|
+
const getLimit = () => {
|
|
118
|
+
if (isNaN(limitValue) || limitValue === 0) {
|
|
119
|
+
setLimitValue(1000);
|
|
120
|
+
state.setLimit(1000);
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
state.setLimit(limitValue);
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
const onLimitKeyDown = (event) => {
|
|
127
|
+
if (event.code === 'Enter') {
|
|
128
|
+
getLimit();
|
|
129
|
+
inputRef.current?.focus();
|
|
130
|
+
}
|
|
131
|
+
else if (event.code === 'Escape') {
|
|
132
|
+
setLimitValue(state.limit);
|
|
133
|
+
inputRef.current?.select();
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
useEffect(() => {
|
|
137
|
+
setLimitValue(state.limit);
|
|
138
|
+
}, [state.limit]);
|
|
139
|
+
const renderResult = () => {
|
|
140
|
+
if (executionResult instanceof TDSExecutionResult) {
|
|
141
|
+
const colDefs = executionResult.result.columns.map((colName) => ({
|
|
142
|
+
minWidth: 50,
|
|
143
|
+
sortable: true,
|
|
144
|
+
resizable: true,
|
|
145
|
+
field: colName,
|
|
146
|
+
flex: 1,
|
|
147
|
+
...getTDSColumnCustomizations(executionResult, colName),
|
|
148
|
+
...getFilterTDSColumnCustomizations(executionResult, colName),
|
|
149
|
+
cellRenderer: DataQualityResultCellRenderer,
|
|
150
|
+
}));
|
|
151
|
+
return (_jsx("div", { className: "data-quality-validation__result__values__table", children: _jsx("div", { className: clsx('data-quality-validation__result__tds-grid', {
|
|
152
|
+
'ag-theme-balham': !darkMode,
|
|
153
|
+
'ag-theme-balham-dark': darkMode,
|
|
154
|
+
}), children: _jsx(DataGrid, { rowData: getRowDataFromExecutionResult(executionResult), gridOptions: {
|
|
155
|
+
suppressScrollOnNewData: true,
|
|
156
|
+
getRowId: (data) => `${data.data.rowNumber}`,
|
|
157
|
+
rowSelection: {
|
|
158
|
+
mode: 'multiRow',
|
|
159
|
+
checkboxes: false,
|
|
160
|
+
headerCheckbox: false,
|
|
161
|
+
},
|
|
162
|
+
}, onRowDataUpdated: (params) => {
|
|
163
|
+
params.api.refreshCells({ force: true });
|
|
164
|
+
}, suppressFieldDotNotation: true, suppressContextMenu: false, columnDefs: colDefs }) }) }));
|
|
165
|
+
}
|
|
166
|
+
if (executionResult instanceof RawExecutionResult) {
|
|
167
|
+
const val = executionResult.value === null
|
|
168
|
+
? 'null'
|
|
169
|
+
: executionResult.value.toString();
|
|
170
|
+
return (_jsx(CodeEditor, { language: CODE_EDITOR_LANGUAGE.TEXT, inputValue: val, isReadOnly: true }));
|
|
171
|
+
}
|
|
172
|
+
else if (executionResult !== undefined) {
|
|
173
|
+
const json = returnUndefOnError(() => JSON.stringify(extractExecutionResultValues(executionResult), null, DEFAULT_TAB_SIZE)) ?? JSON.stringify(executionResult);
|
|
174
|
+
return (_jsx(CodeEditor, { language: CODE_EDITOR_LANGUAGE.JSON, inputValue: json, isReadOnly: true }));
|
|
175
|
+
}
|
|
176
|
+
return _jsx(BlankPanelContent, { children: "No Data to Display" });
|
|
177
|
+
};
|
|
178
|
+
useEffect(() => {
|
|
179
|
+
flowResult(state.sourceLambdaEditorState.convertLambdaObjectToGrammarString({
|
|
180
|
+
pretty: true,
|
|
181
|
+
firstLoad: true,
|
|
182
|
+
})).catch(applicationStore.alertUnhandledError);
|
|
183
|
+
flowResult(state.targetLambdaEditorState.convertLambdaObjectToGrammarString({
|
|
184
|
+
pretty: true,
|
|
185
|
+
firstLoad: true,
|
|
186
|
+
})).catch(applicationStore.alertUnhandledError);
|
|
187
|
+
}, [
|
|
188
|
+
applicationStore,
|
|
189
|
+
state.sourceLambdaEditorState,
|
|
190
|
+
state.targetLambdaEditorState,
|
|
191
|
+
]);
|
|
192
|
+
const sourceHashColumnValue = md5Strategy.sourceHashColumn
|
|
193
|
+
? {
|
|
194
|
+
value: md5Strategy.sourceHashColumn,
|
|
195
|
+
label: md5Strategy.sourceHashColumn,
|
|
196
|
+
}
|
|
197
|
+
: undefined;
|
|
198
|
+
const targetHashColumnValue = md5Strategy.targetHashColumn
|
|
199
|
+
? {
|
|
200
|
+
value: md5Strategy.targetHashColumn,
|
|
201
|
+
label: md5Strategy.targetHashColumn,
|
|
202
|
+
}
|
|
203
|
+
: undefined;
|
|
204
|
+
const selectedKeyOptions = useMemo(() => {
|
|
205
|
+
const selectedKeys = new Set(comparison.keys);
|
|
206
|
+
return combinedColumnOptions.filter(({ value }) => selectedKeys.has(value));
|
|
207
|
+
}, [combinedColumnOptions, comparison.keys]);
|
|
208
|
+
const selectedColumnsToCompareOptions = useMemo(() => {
|
|
209
|
+
const selectedColumns = new Set(comparison.columnsToCompare);
|
|
210
|
+
return combinedColumnOptions.filter(({ value }) => selectedColumns.has(value));
|
|
211
|
+
}, [combinedColumnOptions, comparison.columnsToCompare]);
|
|
212
|
+
return (_jsxs("div", { className: "data-quality-relation-comparison-editor", children: [_jsxs(Panel, { children: [_jsx(PanelLoadingIndicator, { isLoading: isRunning }), _jsx("div", { className: "panel__header", children: _jsxs("div", { className: "panel__header__title", children: [_jsx("div", { className: "panel__header__title__label", children: "dataQualityRelationComparison" }), _jsx("div", { className: "panel__header__title__content", children: comparison.name })] }) }), _jsxs("div", { className: "data-quality-relation-comparison-editor__actions-bar", children: [_jsxs("div", { className: "data-quality-relation-comparison-editor__actions-bar__limit", children: [_jsx("div", { className: "data-quality-relation-comparison-editor__actions-bar__limit__label", children: "preview row limit" }), _jsx("input", { ref: inputRef, className: "input--dark data-quality-relation-comparison-editor__actions-bar__limit__input", spellCheck: false, type: "number", value: Number.isNaN(limitValue) ? '' : limitValue, min: 1, placeholder: DEFAULT_LIMIT.toString(), onChange: changeLimit, onBlur: getLimit, onKeyDown: onLimitKeyDown })] }), _jsx("div", { className: "btn__dropdown-combo btn__dropdown-combo--primary", children: state.isRunning ? (_jsx("button", { className: "btn__dropdown-combo__canceler data-quality-relation-comparison-editor__actions-bar__cancel-btn", onClick: cancelRun, tabIndex: -1, children: _jsxs("div", { className: "btn--dark btn--caution btn__dropdown-combo__canceler__label data-quality-relation-comparison-editor__actions-bar__cancel-label", children: [_jsx(PauseCircleIcon, { className: "btn__dropdown-combo__canceler__label__icon" }), _jsx("div", { className: "btn__dropdown-combo__canceler__label__title", children: "Stop" })] }) })) : (_jsxs("div", { className: "data-quality-relation-comparison-editor__actions-bar__run-group", children: [_jsxs("button", { className: "btn__dropdown-combo__label data-quality-relation-comparison-editor__actions-bar__run-btn", onClick: runReconciliation, title: "Run Data Comparison", disabled: isRunning, tabIndex: -1, children: [_jsx(PlayIcon, { className: "btn__dropdown-combo__label__icon" }), _jsx("div", { className: "btn__dropdown-combo__label__title", children: "Run Data Comparison" })] }), _jsx(ControlledDropdownMenu, { className: "btn__dropdown-combo__dropdown-btn data-quality-relation-comparison-editor__actions-bar__dropdown-btn", disabled: isRunning, content: _jsxs(MenuContent, { children: [_jsx(MenuContentItem, { className: "btn__dropdown-combo__option", onClick: runSourceQuery, children: "Run Source Query" }), _jsx(MenuContentItem, { className: "btn__dropdown-combo__option", onClick: runTargetQuery, children: "Run Target Query" })] }), menuProps: {
|
|
213
|
+
anchorOrigin: {
|
|
214
|
+
vertical: 'bottom',
|
|
215
|
+
horizontal: 'right',
|
|
216
|
+
},
|
|
217
|
+
transformOrigin: {
|
|
218
|
+
vertical: 'top',
|
|
219
|
+
horizontal: 'right',
|
|
220
|
+
},
|
|
221
|
+
}, children: _jsx(CaretDownIcon, {}) })] })) })] }), _jsxs(PanelContent, { children: [_jsx("div", { className: "data-quality-relation-comparison-editor__queries", children: _jsxs(ResizablePanelGroup, { orientation: "vertical", children: [_jsx(ResizablePanel, { minSize: 200, children: _jsxs("div", { className: "data-quality-relation-comparison-editor__query-panel", children: [_jsx("div", { className: "data-quality-relation-comparison-editor__query-panel__header", children: _jsx("div", { className: "data-quality-relation-comparison-editor__query-panel__title", children: "SOURCE QUERY" }) }), _jsx("div", { className: clsx('data-quality-relation-comparison-editor__query-panel__content', {
|
|
222
|
+
backdrop__element: Boolean(state.sourceLambdaEditorState.parserError),
|
|
223
|
+
}), children: _jsx(LambdaEditor, { className: "data-quality-relation-comparison-editor__lambda-editor lambda-editor--dark", disabled: state.sourceLambdaEditorState
|
|
224
|
+
.isConvertingFunctionBodyToString, lambdaEditorState: state.sourceLambdaEditorState, forceBackdrop: false, autoFocus: false }) })] }) }), _jsx(ResizablePanelSplitter, { children: _jsx(ResizablePanelSplitterLine, { color: "var(--color-dark-grey-250)" }) }), _jsx(ResizablePanel, { minSize: 200, children: _jsxs("div", { className: "data-quality-relation-comparison-editor__query-panel", children: [_jsx("div", { className: "data-quality-relation-comparison-editor__query-panel__header", children: _jsx("div", { className: "data-quality-relation-comparison-editor__query-panel__title", children: "TARGET QUERY" }) }), _jsx("div", { className: clsx('data-quality-relation-comparison-editor__query-panel__content', {
|
|
225
|
+
backdrop__element: Boolean(state.targetLambdaEditorState.parserError),
|
|
226
|
+
}), children: _jsx(LambdaEditor, { className: "data-quality-relation-comparison-editor__lambda-editor lambda-editor--dark", disabled: state.targetLambdaEditorState
|
|
227
|
+
.isConvertingFunctionBodyToString, lambdaEditorState: state.targetLambdaEditorState, forceBackdrop: false, autoFocus: false }) })] }) })] }) }), _jsxs("div", { className: "data-quality-relation-comparison-editor__panel__content__form", children: [hasColumnFetchError && (_jsxs("div", { className: "data-quality-relation-comparison-editor__column-fetch-error", children: [_jsx(ExclamationTriangleIcon, { className: "data-quality-relation-comparison-editor__column-fetch-error__icon" }), _jsx("span", { className: "data-quality-relation-comparison-editor__column-fetch-error__message", children: columnFetchError }), _jsxs("button", { className: "data-quality-relation-comparison-editor__column-fetch-error__retry-btn btn--dark btn--sm", onClick: retryFetchColumns, disabled: isFetchingColumns, tabIndex: -1, children: [_jsx(RefreshIcon, {}), _jsx("span", { children: "Retry" })] })] })), hasNoOverlappingColumns && (_jsxs("div", { className: "data-quality-relation-comparison-editor__column-overlap-warning", children: [_jsx(ExclamationTriangleIcon, { className: "data-quality-relation-comparison-editor__column-overlap-warning__icon" }), _jsx("span", { className: "data-quality-relation-comparison-editor__column-overlap-warning__message", children: "No overlapping columns found between source and target queries. The Keys and Columns to Compare selectors require at least one common column name across both queries." })] })), _jsxs(PanelFormSection, { children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Keys" }), _jsx("div", { className: "panel__content__form__section__header__prompt", children: "Columns used as join keys between source and target" }), _jsx(DataQualityMultiCustomSelector, { value: selectedKeyOptions, onChange: (values) => state.setKeys(values.map((option) => option.value)), options: combinedColumnOptions, placeholder: "Select keys...", disabled: columnsDisabled, darkMode: darkMode })] }), _jsxs(PanelFormSection, { children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Columns to Compare" }), _jsx(DataQualityMultiCustomSelector, { value: selectedColumnsToCompareOptions, onChange: (values) => state.setColumnsToCompare(values.map((option) => option.value)), options: combinedColumnOptions, placeholder: "Select columns to compare...", disabled: columnsDisabled, darkMode: darkMode })] }), _jsxs(PanelFormSection, { children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Source Hash Column" }), _jsx("div", { className: "panel__content__form__section__header__prompt", children: "If a source hash column already exists you can specify it here (optional)" }), _jsx(CustomSelectorInput, { value: sourceHashColumnValue ?? null, options: sourceColumnOptions, onChange: (opt) => {
|
|
228
|
+
state.setSourceHashColumn(opt?.value);
|
|
229
|
+
}, placeholder: "Select source hash column...", isClearable: true, darkMode: darkMode, disabled: columnsDisabled })] }), _jsxs(PanelFormSection, { children: [_jsx("div", { className: "panel__content__form__section__header__label", children: "Target Hash Column" }), _jsx("div", { className: "panel__content__form__section__header__prompt", children: "If a target hash column already exists you can specify it here (optional)" }), _jsx(CustomSelectorInput, { value: targetHashColumnValue ?? null, options: targetColumnOptions, onChange: (opt) => {
|
|
230
|
+
state.setTargetHashColumn(opt?.value);
|
|
231
|
+
}, placeholder: "Select target hash column...", isClearable: true, darkMode: darkMode, disabled: columnsDisabled })] }), _jsx(PanelFormBooleanField, { name: "Aggregated Hash", prompt: "Compare data at a group level using keys, or compare entire datasets as a whole when no keys are provided.", value: md5Strategy.aggregatedHash, isReadOnly: false, update: (value) => state.setAggregatedHash(value) })] }), _jsxs("div", { className: "data-quality-relation-comparison-editor__result", children: [_jsx("div", { className: "data-quality-relation-comparison-editor__result__header", children: _jsxs("div", { className: "data-quality-relation-comparison-editor__result__header-group", children: [_jsx("div", { className: "data-quality-relation-comparison-editor__result__title", children: "RESULT" }), isRunning && (_jsx("div", { className: "data-quality-relation-comparison-editor__result__status", children: state.currentExecutionType ===
|
|
232
|
+
RECONCILIATION_EXECUTION_TYPE.RECONCILIATION
|
|
233
|
+
? 'Running Data Comparison...'
|
|
234
|
+
: state.currentExecutionType ===
|
|
235
|
+
RECONCILIATION_EXECUTION_TYPE.SOURCE_QUERY
|
|
236
|
+
? 'Running Source Query...'
|
|
237
|
+
: 'Running Target Query...' })), _jsx("div", { className: "data-quality-relation-comparison-editor__result__analytics", children: resultDescription ?? '' })] }) }), _jsx("div", { className: "data-quality-relation-comparison-editor__result__content", children: _jsx("div", { className: "data-quality-relation-comparison-editor__result__viewer", children: renderResult() }) })] })] })] }), state.sourceParametersState.parameterValuesEditorState.showModal && (_jsx(LambdaParameterValuesEditor, { graph: editorStore.graphManagerState.graph, observerContext: editorStore.changeDetectionState.observerContext, lambdaParametersState: state.sourceParametersState })), state.targetParametersState.parameterValuesEditorState.showModal && (_jsx(LambdaParameterValuesEditor, { graph: editorStore.graphManagerState.graph, observerContext: editorStore.changeDetectionState.observerContext, lambdaParametersState: state.targetParametersState })), state.comparisonParametersEditorState.showModal && (_jsx(DataQualityRelationComparisonParametersEditor, { state: state }))] }));
|
|
238
|
+
});
|
|
239
|
+
//# sourceMappingURL=DataQualityRelationComparisonEditor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataQualityRelationComparisonEditor.js","sourceRoot":"","sources":["../../src/components/DataQualityRelationComparisonEditor.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,IAAI,EACJ,sBAAsB,EACtB,mBAAmB,EACnB,MAAM,EACN,uBAAuB,EACvB,WAAW,EACX,eAAe,EACf,KAAK,EACL,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,WAAW,EACX,KAAK,EACL,YAAY,EACZ,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,QAAQ,EACR,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,MAAM,gGAAgG,CAAC;AACjI,OAAO,EACL,+CAA+C,EAC/C,aAAa,EACb,6BAA6B,GAC9B,MAAM,6DAA6D,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EACL,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,6BAA6B,EAC7B,YAAY,EACZ,2BAA2B,EAE3B,0BAA0B,EAC1B,gCAAgC,GACjC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,8BAA8B,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,EAGL,aAAa,EAEb,kBAAkB,EAClB,kBAAkB,EAElB,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,aAAa,EACb,cAAc,EACd,eAAe,EACf,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,GAC9B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEL,QAAQ,GACT,MAAM,8BAA8B,CAAC;AAEtC,MAAM,0BAA0B,GAAG,QAAQ,CACzC,CAAC,KAKA,EAAE,EAAE;IACH,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC;IAEjE,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,eAAK,SAAS,EAAC,oEAAoE,aACjF,cAAK,SAAS,EAAC,2EAA2E,YACvF,KAAK,GACF,EACN,cAAK,SAAS,EAAC,0EAA0E,YACtF,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;oBAClC,MAAM,YAAY,GAChB,UAAU,CAAC,YAAY,IAAI,aAAa,CAAC,MAAM,CAAC;oBAClD,OAAO,CACL,eAEE,SAAS,EAAC,+BAA+B,aAEzC,eAAK,SAAS,EAAC,uCAAuC,aACpD,cAAK,SAAS,EAAC,6CAA6C,YACzD,UAAU,CAAC,SAAS,CAAC,IAAI,GACtB,EACN,cAAK,SAAS,EAAC,6CAA6C,YACzD,YAAY,CAAC,IAAI,GACd,IACF,EACL,UAAU,CAAC,KAAK,IAAI,CACnB,KAAC,6BAA6B,IAC5B,kBAAkB,EAAE,UAAU,CAAC,KAAK,EACpC,qBAAqB,EAAE,CAAC,GAAuB,EAAQ,EAAE;oCACvD,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gCAC3B,CAAC,EACD,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE;oCACf,YAAY,EAAE,YAAY;oCAC1B,KAAK,EAAE,YAAY,KAAK,aAAa,CAAC,QAAQ;iCAC/C,EACD,SAAS,EAAC,0CAA0C,EACpD,UAAU,EAAE,GAAS,EAAE,CAAC,SAAS,GACjC,CACH,KA1BI,UAAU,CAAC,IAAI,CA2BhB,CACP,CAAC;gBACJ,CAAC,CAAC,GACE,IACF,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,6CAA6C,GAAG,QAAQ,CAC5D,CAAC,KAAiE,EAAE,EAAE;IACpE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IACxB,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpE,MAAM,iBAAiB,GAAG,KAAK,CAAC,+BAA+B,CAAC;IAChE,MAAM,YAAY,GAAG,iBAAiB,CAAC,YAAY,CAAC;IAEpD,MAAM,KAAK,GAAG,GAAS,EAAE;QACvB,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,iBAAiB,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,IAAI,EAAE;QAC7D,IAAI,YAAY,EAAE,CAAC;YACjB,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,KAAK,EAAE,CAAC;YACR,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;QAC/B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,KAAC,MAAM,IACL,IAAI,EAAE,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAC1C,OAAO,EAAE,KAAK,EACd,OAAO,EAAE;YACP,IAAI,EAAE,8BAA8B;YACpC,SAAS,EAAE,yBAAyB;YACpC,KAAK,EAAE,uBAAuB;SAC/B,YAED,MAAC,KAAK,IACJ,QAAQ,EACN,CAAC,gBAAgB,CAAC,aAAa,CAAC,mCAAmC,EAErE,SAAS,EAAC,uGAAuG,aAEjH,KAAC,WAAW,IAAC,KAAK,EAAC,iCAAiC,GAAG,EACvD,MAAC,SAAS,IAAC,SAAS,EAAC,sGAAsG,aACzH,cAAK,SAAS,EAAC,wEAAwE,qGAGjF,EACN,eAAK,SAAS,EAAC,qEAAqE,aAClF,KAAC,0BAA0B,IACzB,KAAK,EAAC,cAAc,EACpB,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,EAChD,eAAe,EACb,KAAK,CAAC,WAAW,CAAC,oBAAoB,CAAC,eAAe,EAExD,eAAe,EAAE,KAAK,CAAC,qBAAqB,CAAC,eAAe,GAC5D,EACF,KAAC,0BAA0B,IACzB,KAAK,EAAC,cAAc,EACpB,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,EAChD,eAAe,EACb,KAAK,CAAC,WAAW,CAAC,oBAAoB,CAAC,eAAe,EAExD,eAAe,EAAE,KAAK,CAAC,qBAAqB,CAAC,eAAe,GAC5D,IACE,IACI,EACZ,MAAC,WAAW,eACT,eAAe,IAAI,CAClB,KAAC,iBAAiB,6BAA+B,CAClD,EACA,YAAY,IAAI,CACf,KAAC,iBAAiB,IAChB,cAAc,EACZ,cAAc,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,EAEzD,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,eAAe,CAAC,YAAY,CAAC,KAAK,CAAC,GACzC,CACH,EACD,KAAC,iBAAiB,IAChB,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EAC1D,OAAO,EAAE,KAAK,EACd,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,WAAW,GAChB,IACU,IACR,GACD,CACV,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,mCAAmC,GAAG,QAAQ,CAAC,GAAG,EAAE;IAC/D,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,MAAM,KAAK,GAAG,WAAW,CAAC,eAAe,CAAC,qBAAqB,CAC7D,+CAA+C,CAChD,CAAC;IAEF,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC;IACjC,MAAM,WAAW,GAAG,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAExE,MAAM,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,CAAC;IACtD,MAAM,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,CAAC;IACtD,MAAM,qBAAqB,GAAG,KAAK,CAAC,qBAAqB,CAAC;IAE1D,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;IAC9C,MAAM,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC;IAC/D,MAAM,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,CAAC;IACtD,MAAM,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,CAAC;IAChD,MAAM,uBAAuB,GAAG,KAAK,CAAC,uBAAuB,CAAC;IAC9D,MAAM,eAAe,GAAG,mBAAmB,IAAI,iBAAiB,CAAC;IAEjE,qBAAqB;IACrB,MAAM,SAAS,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAC1D,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAC9B,CAAC;IAEF,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAClE,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAC,CAC1E,CAAC;IAEF,MAAM,cAAc,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAC/D,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,6BAA6B,CAAC,YAAY,CAAC,CAAC,CACxE,CAAC;IAEF,MAAM,cAAc,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAC/D,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,6BAA6B,CAAC,YAAY,CAAC,CAAC,CACxE,CAAC;IAEF,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAClE,UAAU,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,CACtC,CAAC;IAEF,MAAM,uBAAuB,GAAG,CAC9B,gBAAiC,EACb,EAAE;QACtB,MAAM,aAAa,GAAG,KAAK,CAAC,iBAAiB;YAC3C,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,iBAAiB,CAAC;YACzC,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,aAAa,GACjB,KAAK,CAAC,iBAAiB,KAAK,6BAA6B,CAAC,cAAc;YACtE,CAAC,CAAC,iBAAiB;YACnB,CAAC,CAAC,KAAK,CAAC,iBAAiB,KAAK,6BAA6B,CAAC,YAAY;gBACtE,CAAC,CAAC,cAAc;gBAChB,CAAC,CAAC,cAAc,CAAC;QACvB,OAAO,GAAG,aAAa,WAAW,aAAa,EAAE,CAAC;IACpD,CAAC,CAAC;IAEF,MAAM,iBAAiB,GACrB,CAAC,SAAS,IAAI,eAAe;QAC3B,CAAC,CAAC,uBAAuB,CAAC,eAAe,CAAC;QAC1C,CAAC,CAAC,SAAS,CAAC;IAEhB,MAAM,QAAQ,GACZ,CAAC,gBAAgB,CAAC,aAAa,CAAC,mCAAmC,CAAC;IACtE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAmB,IAAI,CAAC,CAAC;IAEtD,MAAM,WAAW,GAA+C,CAAC,KAAK,EAAE,EAAE;QACxE,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,GAAS,EAAE;QAC1B,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;YAC1C,aAAa,CAAC,IAAI,CAAC,CAAC;YACpB,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,cAAc,GAAiD,CACnE,KAAK,EACL,EAAE;QACF,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,QAAQ,EAAE,CAAC;YACX,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACnC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAElB,MAAM,YAAY,GAAG,GAAoB,EAAE;QACzC,IAAI,eAAe,YAAY,kBAAkB,EAAE,CAAC;YAClD,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAChD,CAAC,OAAO,EAAE,EAAE,CACV,CAAC;gBACC,QAAQ,EAAE,EAAE;gBACZ,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,IAAI;gBACf,KAAK,EAAE,OAAO;gBACd,IAAI,EAAE,CAAC;gBACP,GAAG,0BAA0B,CAAC,eAAe,EAAE,OAAO,CAAC;gBACvD,GAAG,gCAAgC,CAAC,eAAe,EAAE,OAAO,CAAC;gBAC7D,YAAY,EAAE,6BAA6B;aAC5C,CAA6B,CACjC,CAAC;YACF,OAAO,CACL,cAAK,SAAS,EAAC,gDAAgD,YAC7D,cACE,SAAS,EAAE,IAAI,CAAC,2CAA2C,EAAE;wBAC3D,iBAAiB,EAAE,CAAC,QAAQ;wBAC5B,sBAAsB,EAAE,QAAQ;qBACjC,CAAC,YAEF,KAAC,QAAQ,IACP,OAAO,EAAE,6BAA6B,CAAC,eAAe,CAAC,EACvD,WAAW,EAAE;4BACX,uBAAuB,EAAE,IAAI;4BAC7B,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;4BAC5C,YAAY,EAAE;gCACZ,IAAI,EAAE,UAAU;gCAChB,UAAU,EAAE,KAAK;gCACjB,cAAc,EAAE,KAAK;6BACtB;yBACF,EACD,gBAAgB,EAAE,CAAC,MAAM,EAAE,EAAE;4BAC3B,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC3C,CAAC,EACD,wBAAwB,EAAE,IAAI,EAC9B,mBAAmB,EAAE,KAAK,EAC1B,UAAU,EAAE,OAAO,GACnB,GACE,GACF,CACP,CAAC;QACJ,CAAC;QACD,IAAI,eAAe,YAAY,kBAAkB,EAAE,CAAC;YAClD,MAAM,GAAG,GACP,eAAe,CAAC,KAAK,KAAK,IAAI;gBAC5B,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACvC,OAAO,CACL,KAAC,UAAU,IACT,QAAQ,EAAE,oBAAoB,CAAC,IAAI,EACnC,UAAU,EAAE,GAAG,EACf,UAAU,EAAE,IAAI,GAChB,CACH,CAAC;QACJ,CAAC;aAAM,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,IAAI,GACR,kBAAkB,CAAC,GAAG,EAAE,CACtB,IAAI,CAAC,SAAS,CACZ,4BAA4B,CAAC,eAAe,CAAC,EAC7C,IAAI,EACJ,gBAAgB,CACjB,CACF,IAAI,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YACvC,OAAO,CACL,KAAC,UAAU,IACT,QAAQ,EAAE,oBAAoB,CAAC,IAAI,EACnC,UAAU,EAAE,IAAI,EAChB,UAAU,EAAE,IAAI,GAChB,CACH,CAAC;QACJ,CAAC;QACD,OAAO,KAAC,iBAAiB,qCAAuC,CAAC;IACnE,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CACR,KAAK,CAAC,uBAAuB,CAAC,kCAAkC,CAAC;YAC/D,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,IAAI;SAChB,CAAC,CACH,CAAC,KAAK,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAC9C,UAAU,CACR,KAAK,CAAC,uBAAuB,CAAC,kCAAkC,CAAC;YAC/D,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,IAAI;SAChB,CAAC,CACH,CAAC,KAAK,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;IAChD,CAAC,EAAE;QACD,gBAAgB;QAChB,KAAK,CAAC,uBAAuB;QAC7B,KAAK,CAAC,uBAAuB;KAC9B,CAAC,CAAC;IAEH,MAAM,qBAAqB,GAAG,WAAW,CAAC,gBAAgB;QACxD,CAAC,CAAC;YACE,KAAK,EAAE,WAAW,CAAC,gBAAgB;YACnC,KAAK,EAAE,WAAW,CAAC,gBAAgB;SACpC;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,qBAAqB,GAAG,WAAW,CAAC,gBAAgB;QACxD,CAAC,CAAC;YACE,KAAK,EAAE,WAAW,CAAC,gBAAgB;YACnC,KAAK,EAAE,WAAW,CAAC,gBAAgB;SACpC;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,EAAE;QACtC,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9C,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9E,CAAC,EAAE,CAAC,qBAAqB,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAE7C,MAAM,+BAA+B,GAAG,OAAO,CAAC,GAAG,EAAE;QACnD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;QAC7D,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAChD,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAC3B,CAAC;IACJ,CAAC,EAAE,CAAC,qBAAqB,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEzD,OAAO,CACL,eAAK,SAAS,EAAC,yCAAyC,aACtD,MAAC,KAAK,eACJ,KAAC,qBAAqB,IAAC,SAAS,EAAE,SAAS,GAAI,EAC/C,cAAK,SAAS,EAAC,eAAe,YAC5B,eAAK,SAAS,EAAC,sBAAsB,aACnC,cAAK,SAAS,EAAC,6BAA6B,8CAEtC,EACN,cAAK,SAAS,EAAC,+BAA+B,YAC3C,UAAU,CAAC,IAAI,GACZ,IACF,GACF,EACN,eAAK,SAAS,EAAC,sDAAsD,aACnE,eAAK,SAAS,EAAC,6DAA6D,aAC1E,cAAK,SAAS,EAAC,oEAAoE,kCAE7E,EACN,gBACE,GAAG,EAAE,QAAQ,EACb,SAAS,EAAC,gFAAgF,EAC1F,UAAU,EAAE,KAAK,EACjB,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,EACjD,GAAG,EAAE,CAAC,EACN,WAAW,EAAE,aAAa,CAAC,QAAQ,EAAE,EACrC,QAAQ,EAAE,WAAW,EACrB,MAAM,EAAE,QAAQ,EAChB,SAAS,EAAE,cAAc,GACzB,IACE,EACN,cAAK,SAAS,EAAC,kDAAkD,YAC9D,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CACjB,iBACE,SAAS,EAAC,gGAAgG,EAC1G,OAAO,EAAE,SAAS,EAClB,QAAQ,EAAE,CAAC,CAAC,YAEZ,eAAK,SAAS,EAAC,gIAAgI,aAC7I,KAAC,eAAe,IAAC,SAAS,EAAC,4CAA4C,GAAG,EAC1E,cAAK,SAAS,EAAC,6CAA6C,qBAEtD,IACF,GACC,CACV,CAAC,CAAC,CAAC,CACF,eAAK,SAAS,EAAC,iEAAiE,aAC9E,kBACE,SAAS,EAAC,0FAA0F,EACpG,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAC,qBAAqB,EAC3B,QAAQ,EAAE,SAAS,EACnB,QAAQ,EAAE,CAAC,CAAC,aAEZ,KAAC,QAAQ,IAAC,SAAS,EAAC,kCAAkC,GAAG,EACzD,cAAK,SAAS,EAAC,mCAAmC,oCAE5C,IACC,EACT,KAAC,sBAAsB,IACrB,SAAS,EAAC,sGAAsG,EAChH,QAAQ,EAAE,SAAS,EACnB,OAAO,EACL,MAAC,WAAW,eACV,KAAC,eAAe,IACd,SAAS,EAAC,6BAA6B,EACvC,OAAO,EAAE,cAAc,iCAGP,EAClB,KAAC,eAAe,IACd,SAAS,EAAC,6BAA6B,EACvC,OAAO,EAAE,cAAc,iCAGP,IACN,EAEhB,SAAS,EAAE;gDACT,YAAY,EAAE;oDACZ,QAAQ,EAAE,QAAQ;oDAClB,UAAU,EAAE,OAAO;iDACpB;gDACD,eAAe,EAAE;oDACf,QAAQ,EAAE,KAAK;oDACf,UAAU,EAAE,OAAO;iDACpB;6CACF,YAED,KAAC,aAAa,KAAG,GACM,IACrB,CACP,GACG,IACF,EACN,MAAC,YAAY,eACX,cAAK,SAAS,EAAC,kDAAkD,YAC/D,MAAC,mBAAmB,IAAC,WAAW,EAAC,UAAU,aACzC,KAAC,cAAc,IAAC,OAAO,EAAE,GAAG,YAC1B,eAAK,SAAS,EAAC,sDAAsD,aACnE,cAAK,SAAS,EAAC,8DAA8D,YAC3E,cAAK,SAAS,EAAC,6DAA6D,6BAEtE,GACF,EACN,cACE,SAAS,EAAE,IAAI,CACb,+DAA+D,EAC/D;4DACE,iBAAiB,EAAE,OAAO,CACxB,KAAK,CAAC,uBAAuB,CAAC,WAAW,CAC1C;yDACF,CACF,YAED,KAAC,YAAY,IACX,SAAS,EAAC,4EAA4E,EACtF,QAAQ,EACN,KAAK,CAAC,uBAAuB;iEAC1B,gCAAgC,EAErC,iBAAiB,EAAE,KAAK,CAAC,uBAAuB,EAChD,aAAa,EAAE,KAAK,EACpB,SAAS,EAAE,KAAK,GAChB,GACE,IACF,GACS,EACjB,KAAC,sBAAsB,cACrB,KAAC,0BAA0B,IAAC,KAAK,EAAC,4BAA4B,GAAG,GAC1C,EACzB,KAAC,cAAc,IAAC,OAAO,EAAE,GAAG,YAC1B,eAAK,SAAS,EAAC,sDAAsD,aACnE,cAAK,SAAS,EAAC,8DAA8D,YAC3E,cAAK,SAAS,EAAC,6DAA6D,6BAEtE,GACF,EACN,cACE,SAAS,EAAE,IAAI,CACb,+DAA+D,EAC/D;4DACE,iBAAiB,EAAE,OAAO,CACxB,KAAK,CAAC,uBAAuB,CAAC,WAAW,CAC1C;yDACF,CACF,YAED,KAAC,YAAY,IACX,SAAS,EAAC,4EAA4E,EACtF,QAAQ,EACN,KAAK,CAAC,uBAAuB;iEAC1B,gCAAgC,EAErC,iBAAiB,EAAE,KAAK,CAAC,uBAAuB,EAChD,aAAa,EAAE,KAAK,EACpB,SAAS,EAAE,KAAK,GAChB,GACE,IACF,GACS,IACG,GAClB,EAEN,eAAK,SAAS,EAAC,+DAA+D,aAC3E,mBAAmB,IAAI,CACtB,eAAK,SAAS,EAAC,6DAA6D,aAC1E,KAAC,uBAAuB,IAAC,SAAS,EAAC,mEAAmE,GAAG,EACzG,eAAM,SAAS,EAAC,sEAAsE,YACnF,gBAAgB,GACZ,EACP,kBACE,SAAS,EAAC,0FAA0F,EACpG,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,iBAAiB,EAC3B,QAAQ,EAAE,CAAC,CAAC,aAEZ,KAAC,WAAW,KAAG,EACf,mCAAkB,IACX,IACL,CACP,EACA,uBAAuB,IAAI,CAC1B,eAAK,SAAS,EAAC,iEAAiE,aAC9E,KAAC,uBAAuB,IAAC,SAAS,EAAC,uEAAuE,GAAG,EAC7G,eAAM,SAAS,EAAC,0EAA0E,uLAInF,IACH,CACP,EACD,MAAC,gBAAgB,eACf,cAAK,SAAS,EAAC,8CAA8C,qBAEvD,EACN,cAAK,SAAS,EAAC,+CAA+C,oEAExD,EACN,KAAC,8BAA8B,IAC7B,KAAK,EAAE,kBAAkB,EACzB,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CACnB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAErD,OAAO,EAAE,qBAAqB,EAC9B,WAAW,EAAC,gBAAgB,EAC5B,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,QAAQ,GAClB,IACe,EAEnB,MAAC,gBAAgB,eACf,cAAK,SAAS,EAAC,8CAA8C,mCAEvD,EACN,KAAC,8BAA8B,IAC7B,KAAK,EAAE,+BAA+B,EACtC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CACnB,KAAK,CAAC,mBAAmB,CACvB,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CACrC,EAEH,OAAO,EAAE,qBAAqB,EAC9B,WAAW,EAAC,8BAA8B,EAC1C,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,QAAQ,GAClB,IACe,EAEnB,MAAC,gBAAgB,eACf,cAAK,SAAS,EAAC,8CAA8C,mCAEvD,EACN,cAAK,SAAS,EAAC,+CAA+C,0FAGxD,EACN,KAAC,mBAAmB,IAClB,KAAK,EAAE,qBAAqB,IAAI,IAAI,EACpC,OAAO,EAAE,mBAAmB,EAC5B,QAAQ,EAAE,CAAC,GAA4C,EAAE,EAAE;oDACzD,KAAK,CAAC,mBAAmB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gDACxC,CAAC,EACD,WAAW,EAAC,8BAA8B,EAC1C,WAAW,EAAE,IAAI,EACjB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,eAAe,GACzB,IACe,EACnB,MAAC,gBAAgB,eACf,cAAK,SAAS,EAAC,8CAA8C,mCAEvD,EACN,cAAK,SAAS,EAAC,+CAA+C,0FAGxD,EACN,KAAC,mBAAmB,IAClB,KAAK,EAAE,qBAAqB,IAAI,IAAI,EACpC,OAAO,EAAE,mBAAmB,EAC5B,QAAQ,EAAE,CAAC,GAA4C,EAAE,EAAE;oDACzD,KAAK,CAAC,mBAAmB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gDACxC,CAAC,EACD,WAAW,EAAC,8BAA8B,EAC1C,WAAW,EAAE,IAAI,EACjB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,eAAe,GACzB,IACe,EACnB,KAAC,qBAAqB,IACpB,IAAI,EAAC,iBAAiB,EACtB,MAAM,EAAC,4GAA4G,EACnH,KAAK,EAAE,WAAW,CAAC,cAAc,EACjC,UAAU,EAAE,KAAK,EACjB,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,GACjD,IACE,EAEN,eAAK,SAAS,EAAC,iDAAiD,aAC9D,cAAK,SAAS,EAAC,yDAAyD,YACtE,eAAK,SAAS,EAAC,+DAA+D,aAC5E,cAAK,SAAS,EAAC,wDAAwD,uBAEjE,EACL,SAAS,IAAI,CACZ,cAAK,SAAS,EAAC,yDAAyD,YACrE,KAAK,CAAC,oBAAoB;wDAC3B,6BAA6B,CAAC,cAAc;wDAC1C,CAAC,CAAC,4BAA4B;wDAC9B,CAAC,CAAC,KAAK,CAAC,oBAAoB;4DACxB,6BAA6B,CAAC,YAAY;4DAC5C,CAAC,CAAC,yBAAyB;4DAC3B,CAAC,CAAC,yBAAyB,GAC3B,CACP,EACD,cAAK,SAAS,EAAC,4DAA4D,YACxE,iBAAiB,IAAI,EAAE,GACpB,IACF,GACF,EACN,cAAK,SAAS,EAAC,0DAA0D,YACvE,cAAK,SAAS,EAAC,yDAAyD,YACrE,YAAY,EAAE,GACX,GACF,IACF,IACO,IACT,EACP,KAAK,CAAC,qBAAqB,CAAC,0BAA0B,CAAC,SAAS,IAAI,CACnE,KAAC,2BAA2B,IAC1B,KAAK,EAAE,WAAW,CAAC,iBAAiB,CAAC,KAAK,EAC1C,eAAe,EAAE,WAAW,CAAC,oBAAoB,CAAC,eAAe,EACjE,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,GAClD,CACH,EACA,KAAK,CAAC,qBAAqB,CAAC,0BAA0B,CAAC,SAAS,IAAI,CACnE,KAAC,2BAA2B,IAC1B,KAAK,EAAE,WAAW,CAAC,iBAAiB,CAAC,KAAK,EAC1C,eAAe,EAAE,WAAW,CAAC,oBAAoB,CAAC,eAAe,EACjE,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,GAClD,CACH,EACA,KAAK,CAAC,+BAA+B,CAAC,SAAS,IAAI,CAClD,KAAC,6CAA6C,IAAC,KAAK,EAAE,KAAK,GAAI,CAChE,IACG,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -24,6 +24,9 @@ export type IRelationValidationRendererParamsWithGridType = DataGridCellRenderer
|
|
|
24
24
|
tdsExecutionResult: TDSExecutionResult;
|
|
25
25
|
};
|
|
26
26
|
export declare const getRowDataFromExecutionResult: (executionResult: TDSExecutionResult) => DataQualityRelationRowDataType[];
|
|
27
|
+
export declare const DataQualityResultCellRenderer: ((params: IRelationValidationRendererParamsWithGridType) => import("react/jsx-runtime").JSX.Element) & {
|
|
28
|
+
displayName: string;
|
|
29
|
+
};
|
|
27
30
|
export declare const DataQualityRelationGridResult: ((props: {
|
|
28
31
|
executionResult: TDSExecutionResult;
|
|
29
32
|
relationValidationConfigurationState: DataQualityRelationValidationConfigurationState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataQualityRelationGridResult.d.ts","sourceRoot":"","sources":["../../src/components/DataQualityRelationGridResult.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAEV,8BAA8B,EAC9B,8BAA8B,EAC/B,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EAAE,+CAA+C,EAAE,MAAM,6DAA6D,CAAC;AAYnI,OAAO,EAGL,KAAK,0BAA0B,EAIhC,MAAM,8BAA8B,CAAC;AAItC,eAAO,MAAM,cAAc,UAAU,CAAC;AACtC,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAEzC,MAAM,MAAM,6CAA6C,GACvD,0BAA0B,GAAG;IAC3B,WAAW,EAAE,8BAA8B,CAAC;IAC5C,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,CAAC;AAEJ,eAAO,MAAM,6BAA6B,GACxC,iBAAiB,kBAAkB,KAClC,8BAA8B,EAWhC,CAAC;
|
|
1
|
+
{"version":3,"file":"DataQualityRelationGridResult.d.ts","sourceRoot":"","sources":["../../src/components/DataQualityRelationGridResult.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAEV,8BAA8B,EAC9B,8BAA8B,EAC/B,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EAAE,+CAA+C,EAAE,MAAM,6DAA6D,CAAC;AAYnI,OAAO,EAGL,KAAK,0BAA0B,EAIhC,MAAM,8BAA8B,CAAC;AAItC,eAAO,MAAM,cAAc,UAAU,CAAC;AACtC,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAEzC,MAAM,MAAM,6CAA6C,GACvD,0BAA0B,GAAG;IAC3B,WAAW,EAAE,8BAA8B,CAAC;IAC5C,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,CAAC;AAEJ,eAAO,MAAM,6BAA6B,GACxC,iBAAiB,kBAAkB,KAClC,8BAA8B,EAWhC,CAAC;AAEF,eAAO,MAAM,6BAA6B,YAC/B,6CAA6C;;CA4BvD,CAAC;AAEF,eAAO,MAAM,6BAA6B,WAChC;IACN,eAAe,EAAE,kBAAkB,CAAC;IACpC,oCAAoC,EAAE,+CAA+C,CAAC;CACvF;;CA2EF,CAAC"}
|