@finos/legend-extension-dsl-data-quality 2.0.60 → 2.0.62
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_ElementDriver.d.ts +3 -2
- package/lib/components/DSL_DataQuality_ElementDriver.d.ts.map +1 -1
- package/lib/components/DSL_DataQuality_ElementDriver.js +33 -14
- package/lib/components/DSL_DataQuality_ElementDriver.js.map +1 -1
- package/lib/components/DataQualityRelationValidationEditor.d.ts.map +1 -1
- package/lib/components/DataQualityRelationValidationEditor.js +4 -2
- package/lib/components/DataQualityRelationValidationEditor.js.map +1 -1
- package/lib/index.css +1 -1
- package/lib/package.json +1 -1
- package/package.json +7 -7
- package/src/components/DSL_DataQuality_ElementDriver.tsx +38 -16
- package/src/components/DataQualityRelationValidationEditor.tsx +6 -1
@@ -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 { type DataQualityValidationConfiguration } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
17
|
+
import { type DataQualityValidationConfiguration, DataQualityRelationValidation } 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';
|
@@ -42,12 +42,13 @@ export declare class DataQuality_ElementDriver extends NewElementDriver<DataQual
|
|
42
42
|
get mappingOptions(): PackageableElementOption<Mapping>[];
|
43
43
|
get compatibleMappingRuntimes(): PackageableRuntime[];
|
44
44
|
get runtimeOptions(): RuntimeOption[];
|
45
|
+
get isValid(): boolean;
|
45
46
|
setDataSpaceSelected(dataSpace: PackageableElementOption<DataSpace> | undefined): void;
|
46
47
|
setMappingSelected(mappingSelected: PackageableElementOption<Mapping> | undefined): void;
|
47
48
|
setRuntimeSelected(runtimeSelected: RuntimeOption | undefined): void;
|
48
49
|
setDqClassElementCreationBasis(dqClassElementCreationBasis: CLASS_ELEMENT_CREATION_BASIS): void;
|
49
50
|
setDqValidationElementType(dqValidationElementType: DQ_VALIDATION_ELEMENT_TYPE): void;
|
50
|
-
|
51
|
+
createDefaultValidation(): DataQualityRelationValidation[];
|
51
52
|
createRelationValidationElement(name: string): DataQualityValidationConfiguration;
|
52
53
|
createServiceValidationElement(name: string): DataQualityValidationConfiguration;
|
53
54
|
createClassValidationElement(name: string): DataQualityValidationConfiguration;
|
@@ -1 +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,
|
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,EAOvC,6BAA6B,EAC9B,MAAM,gGAAgG,CAAC;AAQxG,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,kBAAkB,EAMxB,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,IAAI,OAAO,IAAI,OAAO,CAgBrB;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,uBAAuB,IAAI,6BAA6B,EAAE;IAkB1D,+BAA+B,CAC7B,IAAI,EAAE,MAAM,GACX,kCAAkC;IAarC,8BAA8B,CAC5B,IAAI,EAAE,MAAM,GACX,kCAAkC;IAIrC,4BAA4B,CAC1B,IAAI,EAAE,MAAM,GACX,kCAAkC;IAuDrC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,kCAAkC;CAehE"}
|
@@ -14,10 +14,10 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
import { NewElementDriver, } from '@finos/legend-application-studio';
|
17
|
-
import { DataQualityClassValidationsConfiguration, DataQualityServiceValidationConfiguration, DataQualityRelationValidationConfiguration, DataSpaceDataQualityExecutionContext, MappingAndRuntimeDataQualityExecutionContext, DataQualityRelationQueryLambda, } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
17
|
+
import { DataQualityClassValidationsConfiguration, DataQualityServiceValidationConfiguration, DataQualityRelationValidationConfiguration, DataSpaceDataQualityExecutionContext, MappingAndRuntimeDataQualityExecutionContext, DataQualityRelationQueryLambda, DataQualityRelationValidation, } from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
18
18
|
import { action, computed, makeObservable, observable } from 'mobx';
|
19
19
|
import { at, filterByType, guaranteeNonNullable, UnsupportedOperationError, } from '@finos/legend-shared';
|
20
|
-
import { getMappingCompatibleRuntimes, PackageableElementExplicitReference, getMappingCompatibleClasses, } from '@finos/legend-graph';
|
20
|
+
import { getMappingCompatibleRuntimes, PackageableElementExplicitReference, getMappingCompatibleClasses, RawLambda, } 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';
|
@@ -76,6 +76,19 @@ export class DataQuality_ElementDriver extends NewElementDriver {
|
|
76
76
|
get runtimeOptions() {
|
77
77
|
return this.compatibleMappingRuntimes.map((runtime) => buildElementOption(runtime));
|
78
78
|
}
|
79
|
+
get isValid() {
|
80
|
+
if (this.dqValidationElementType ===
|
81
|
+
DQ_VALIDATION_ELEMENT_TYPE.RELATION_VALIDATION ||
|
82
|
+
this.dqValidationElementType ===
|
83
|
+
DQ_VALIDATION_ELEMENT_TYPE.SERVICE_VALIDATION) {
|
84
|
+
return true;
|
85
|
+
}
|
86
|
+
if (this.dqClassElementCreationBasis ===
|
87
|
+
CLASS_ELEMENT_CREATION_BASIS.DATASPACE_BASED) {
|
88
|
+
return Boolean(this.dataSpaceSelected);
|
89
|
+
}
|
90
|
+
return Boolean(this.mappingSelected && this.runtimeSelected);
|
91
|
+
}
|
79
92
|
setDataSpaceSelected(dataSpace) {
|
80
93
|
this.dataSpaceSelected = dataSpace;
|
81
94
|
}
|
@@ -91,18 +104,22 @@ export class DataQuality_ElementDriver extends NewElementDriver {
|
|
91
104
|
setDqValidationElementType(dqValidationElementType) {
|
92
105
|
this.dqValidationElementType = dqValidationElementType;
|
93
106
|
}
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
107
|
+
createDefaultValidation() {
|
108
|
+
const body = [
|
109
|
+
{
|
110
|
+
_type: 'boolean',
|
111
|
+
value: true,
|
112
|
+
},
|
113
|
+
];
|
114
|
+
const parameters = [
|
115
|
+
{
|
116
|
+
_type: 'var',
|
117
|
+
name: 'row',
|
118
|
+
},
|
119
|
+
];
|
120
|
+
const assertion = new RawLambda(parameters, body);
|
121
|
+
const defaultValidation = new DataQualityRelationValidation('', assertion);
|
122
|
+
return [defaultValidation];
|
106
123
|
}
|
107
124
|
createRelationValidationElement(name) {
|
108
125
|
const relationValidationConfiguration = new DataQualityRelationValidationConfiguration(name);
|
@@ -111,6 +128,8 @@ export class DataQuality_ElementDriver extends NewElementDriver {
|
|
111
128
|
relationValidationConfiguration.query.body =
|
112
129
|
this.editorStore.graphManagerState.graphManager.createDefaultBasicRawLambda().body;
|
113
130
|
this.editorStore.graphManagerState.graphManager.createDefaultBasicRawLambda();
|
131
|
+
relationValidationConfiguration.validations =
|
132
|
+
this.createDefaultValidation();
|
114
133
|
return relationValidationConfiguration;
|
115
134
|
}
|
116
135
|
createServiceValidationElement(name) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DSL_DataQuality_ElementDriver.js","sourceRoot":"","sources":["../../src/components/DSL_DataQuality_ElementDriver.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAEL,gBAAgB,GACjB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAEL,wCAAwC,EACxC,yCAAyC,EACzC,0CAA0C,EAC1C,oCAAoC,EACpC,4CAA4C,EAC5C,8BAA8B,
|
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":"DataQualityRelationValidationEditor.d.ts","sourceRoot":"","sources":["../../src/components/DataQualityRelationValidationEditor.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
1
|
+
{"version":3,"file":"DataQualityRelationValidationEditor.d.ts","sourceRoot":"","sources":["../../src/components/DataQualityRelationValidationEditor.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAsBH,OAAO,EACL,KAAK,+CAA+C,EAErD,MAAM,6DAA6D,CAAC;AACrE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,gGAAgG,CAAC;AAUpJ,MAAM,MAAM,4BAA4B,GAAG;IACzC,UAAU,EAAE,6BAA6B,CAAC;CAC3C,CAAC;AACF,eAAO,MAAM,4BAA4B,wBAAwB,CAAC;AAElE,eAAO,MAAM,mCAAmC,WACtC;IACN,oCAAoC,EAAE,+CAA+C,CAAC;IACtF,UAAU,EAAE,6BAA6B,CAAC;IAC1C,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,UAAU,EAAE,OAAO,CAAC;CACrB;;CA+NF,CAAC"}
|
@@ -16,7 +16,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
16
16
|
*/
|
17
17
|
import { useCallback, useRef } from 'react';
|
18
18
|
import { observer } from 'mobx-react-lite';
|
19
|
-
import { CustomSelectorInput, FilledWindowMaximizeIcon, PanelDnDEntry, PanelEntryDragHandle, RocketIcon, TimesIcon, useDragPreviewLayer, } from '@finos/legend-art';
|
19
|
+
import { CustomSelectorInput, FilledWindowMaximizeIcon, PanelDnDEntry, PanelEntryDragHandle, RocketIcon, TimesIcon, useDragPreviewLayer, clsx, } from '@finos/legend-art';
|
20
20
|
import { flowResult } from 'mobx';
|
21
21
|
import { PrimitiveType } from '@finos/legend-graph';
|
22
22
|
import { ApplicationNavigationContextData, useApplicationStore, } from '@finos/legend-application';
|
@@ -82,7 +82,9 @@ export const DataQualityRelationValidationEditor = observer((props) => {
|
|
82
82
|
const openValidationDialog = () => {
|
83
83
|
validationState.setIsValidationDialogOpen(true);
|
84
84
|
};
|
85
|
-
return (_jsxs(PanelDnDEntry, { ref: ref, placeholder: _jsx("div", { className: "uml-element-editor__dnd__placeholder" }), className: "relation-validation__container", showPlaceholder: isBeingDragged, children: [_jsxs("div", {
|
85
|
+
return (_jsxs(PanelDnDEntry, { ref: ref, placeholder: _jsx("div", { className: "uml-element-editor__dnd__placeholder" }), className: "relation-validation__container", showPlaceholder: isBeingDragged, children: [_jsxs("div", { className: clsx('relation-validation', {
|
86
|
+
backdrop__element: validationState.parserError,
|
87
|
+
}), children: [_jsxs("div", { className: "relation-validation__content", children: [_jsx(PanelEntryDragHandle, { dragSourceConnector: handleRef, isDragging: isBeingDragged }), _jsx("input", { className: "relation-validation__content__name", spellCheck: false, disabled: isReadOnly, value: validation.name, onChange: changeName, placeholder: "Validation name" }), _jsx(CustomSelectorInput, { options: relationValidationConfigurationState.relationValidationOptions, onChange: onValidationTypeChange, value: selectedValidationType, darkMode: !applicationStore.layoutService
|
86
88
|
.TEMPORARY__isLightColorThemeEnabled, placeholder: 'Type of validation to be added' }), !isReadOnly && (_jsx("button", { className: "uml-element-editor__remove-btn", onClick: remove, tabIndex: -1, title: "Remove", children: _jsx(TimesIcon, {}) })), _jsx("button", { className: "uml-element-editor__remove-btn", onClick: runQuery, tabIndex: -1, title: "Run Validation", disabled: hasParserError, children: _jsx(RocketIcon, {}) }), _jsx("button", { className: "uml-element-editor__remove-btn", onClick: openValidationDialog, tabIndex: -1, title: "Open Validation Details dialog", children: _jsx(FilledWindowMaximizeIcon, {}) })] }), _jsxs("div", { className: "data-quality-uml-element-editor__lambda", children: [_jsx("div", { className: "data-quality-uml-element-editor__lambda__label", children: "Assertion" }), _jsx("div", { className: "data-quality-uml-element-editor__lambda__value", children: _jsx(InlineLambdaEditor, { disabled: relationValidationConfigurationState.isConvertingValidationLambdaObjects ||
|
87
89
|
isReadOnly, lambdaEditorState: validationState, forceBackdrop: hasParserError, expectedType: PrimitiveType.BOOLEAN, onEditorFocus: () => onLambdaEditorFocus(true), disablePopUp: true, className: "relation-validation__lambda" }) })] })] }), validationState.isValidationDialogOpen && (_jsx(DataQualityValidationDetailPanel, { dataQualityRelationValidationState: relationValidationConfigurationState, isReadOnly: isReadOnly, relationValidationState: validationState, changeName: changeName, changeDescription: changeDescription, onLambdaEditorFocus: onLambdaEditorFocus, forceBackdrop: hasParserError, onValidationTypeChange: onValidationTypeChange, selectedValidationType: selectedValidationType }))] }));
|
88
90
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DataQualityRelationValidationEditor.js","sourceRoot":"","sources":["../../src/components/DataQualityRelationValidationEditor.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAEL,mBAAmB,EACnB,wBAAwB,EACxB,aAAa,EACb,oBAAoB,EACpB,UAAU,EACV,SAAS,EACT,mBAAmB,
|
1
|
+
{"version":3,"file":"DataQualityRelationValidationEditor.js","sourceRoot":"","sources":["../../src/components/DataQualityRelationValidationEditor.tsx"],"names":[],"mappings":"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"}
|
package/lib/index.css
CHANGED
package/lib/package.json
CHANGED
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@finos/legend-extension-dsl-data-quality",
|
3
|
-
"version": "2.0.
|
3
|
+
"version": "2.0.62",
|
4
4
|
"description": "Legend extension for Data Quality",
|
5
5
|
"keywords": [
|
6
6
|
"legend",
|
@@ -43,13 +43,13 @@
|
|
43
43
|
},
|
44
44
|
"dependencies": {
|
45
45
|
"@finos/legend-application": "16.0.36",
|
46
|
-
"@finos/legend-application-studio": "28.18.
|
46
|
+
"@finos/legend-application-studio": "28.18.116",
|
47
47
|
"@finos/legend-art": "7.1.93",
|
48
|
-
"@finos/legend-code-editor": "2.0.
|
49
|
-
"@finos/legend-extension-dsl-data-space": "10.4.
|
50
|
-
"@finos/legend-graph": "32.1.
|
51
|
-
"@finos/legend-lego": "2.0.
|
52
|
-
"@finos/legend-query-builder": "4.16.
|
48
|
+
"@finos/legend-code-editor": "2.0.63",
|
49
|
+
"@finos/legend-extension-dsl-data-space": "10.4.69",
|
50
|
+
"@finos/legend-graph": "32.1.21",
|
51
|
+
"@finos/legend-lego": "2.0.67",
|
52
|
+
"@finos/legend-query-builder": "4.16.27",
|
53
53
|
"@finos/legend-shared": "11.0.11",
|
54
54
|
"@finos/legend-storage": "3.0.130",
|
55
55
|
"@types/react": "19.0.10",
|
@@ -26,6 +26,7 @@ import {
|
|
26
26
|
DataSpaceDataQualityExecutionContext,
|
27
27
|
MappingAndRuntimeDataQualityExecutionContext,
|
28
28
|
DataQualityRelationQueryLambda,
|
29
|
+
DataQualityRelationValidation,
|
29
30
|
} from '../graph/metamodel/pure/packageableElements/data-quality/DataQualityValidationConfiguration.js';
|
30
31
|
import { action, computed, makeObservable, observable } from 'mobx';
|
31
32
|
import {
|
@@ -41,6 +42,7 @@ import {
|
|
41
42
|
getMappingCompatibleRuntimes,
|
42
43
|
PackageableElementExplicitReference,
|
43
44
|
getMappingCompatibleClasses,
|
45
|
+
RawLambda,
|
44
46
|
} from '@finos/legend-graph';
|
45
47
|
import {
|
46
48
|
type PackageableElementOption,
|
@@ -126,6 +128,24 @@ export class DataQuality_ElementDriver extends NewElementDriver<DataQualityValid
|
|
126
128
|
);
|
127
129
|
}
|
128
130
|
|
131
|
+
get isValid(): boolean {
|
132
|
+
if (
|
133
|
+
this.dqValidationElementType ===
|
134
|
+
DQ_VALIDATION_ELEMENT_TYPE.RELATION_VALIDATION ||
|
135
|
+
this.dqValidationElementType ===
|
136
|
+
DQ_VALIDATION_ELEMENT_TYPE.SERVICE_VALIDATION
|
137
|
+
) {
|
138
|
+
return true;
|
139
|
+
}
|
140
|
+
if (
|
141
|
+
this.dqClassElementCreationBasis ===
|
142
|
+
CLASS_ELEMENT_CREATION_BASIS.DATASPACE_BASED
|
143
|
+
) {
|
144
|
+
return Boolean(this.dataSpaceSelected);
|
145
|
+
}
|
146
|
+
return Boolean(this.mappingSelected && this.runtimeSelected);
|
147
|
+
}
|
148
|
+
|
129
149
|
setDataSpaceSelected(
|
130
150
|
dataSpace: PackageableElementOption<DataSpace> | undefined,
|
131
151
|
): void {
|
@@ -154,22 +174,22 @@ export class DataQuality_ElementDriver extends NewElementDriver<DataQualityValid
|
|
154
174
|
this.dqValidationElementType = dqValidationElementType;
|
155
175
|
}
|
156
176
|
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
return
|
177
|
+
createDefaultValidation(): DataQualityRelationValidation[] {
|
178
|
+
const body = [
|
179
|
+
{
|
180
|
+
_type: 'boolean',
|
181
|
+
value: true,
|
182
|
+
},
|
183
|
+
];
|
184
|
+
const parameters = [
|
185
|
+
{
|
186
|
+
_type: 'var',
|
187
|
+
name: 'row',
|
188
|
+
},
|
189
|
+
];
|
190
|
+
const assertion = new RawLambda(parameters, body);
|
191
|
+
const defaultValidation = new DataQualityRelationValidation('', assertion);
|
192
|
+
return [defaultValidation];
|
173
193
|
}
|
174
194
|
|
175
195
|
createRelationValidationElement(
|
@@ -182,6 +202,8 @@ export class DataQuality_ElementDriver extends NewElementDriver<DataQualityValid
|
|
182
202
|
relationValidationConfiguration.query.body =
|
183
203
|
this.editorStore.graphManagerState.graphManager.createDefaultBasicRawLambda().body;
|
184
204
|
this.editorStore.graphManagerState.graphManager.createDefaultBasicRawLambda();
|
205
|
+
relationValidationConfiguration.validations =
|
206
|
+
this.createDefaultValidation();
|
185
207
|
return relationValidationConfiguration;
|
186
208
|
}
|
187
209
|
|
@@ -25,6 +25,7 @@ import {
|
|
25
25
|
RocketIcon,
|
26
26
|
TimesIcon,
|
27
27
|
useDragPreviewLayer,
|
28
|
+
clsx,
|
28
29
|
} from '@finos/legend-art';
|
29
30
|
import { flowResult } from 'mobx';
|
30
31
|
import { PrimitiveType } from '@finos/legend-graph';
|
@@ -185,7 +186,11 @@ export const DataQualityRelationValidationEditor = observer(
|
|
185
186
|
className="relation-validation__container"
|
186
187
|
showPlaceholder={isBeingDragged}
|
187
188
|
>
|
188
|
-
<div
|
189
|
+
<div
|
190
|
+
className={clsx('relation-validation', {
|
191
|
+
backdrop__element: validationState.parserError,
|
192
|
+
})}
|
193
|
+
>
|
189
194
|
<div className="relation-validation__content">
|
190
195
|
<PanelEntryDragHandle
|
191
196
|
dragSourceConnector={handleRef}
|