@finos/legend-application-studio 28.21.2 → 28.21.4

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.
Files changed (42) hide show
  1. package/lib/components/editor/editor-group/data-editor/RelationElementsDataEditor.d.ts.map +1 -1
  2. package/lib/components/editor/editor-group/data-editor/RelationElementsDataEditor.js +63 -20
  3. package/lib/components/editor/editor-group/data-editor/RelationElementsDataEditor.js.map +1 -1
  4. package/lib/components/editor/editor-group/dataProduct/DataProductEditor.d.ts.map +1 -1
  5. package/lib/components/editor/editor-group/dataProduct/DataProductEditor.js +9 -1
  6. package/lib/components/editor/editor-group/dataProduct/DataProductEditor.js.map +1 -1
  7. package/lib/components/editor/editor-group/dataProduct/testable/DataProductTestableEditor.d.ts +23 -0
  8. package/lib/components/editor/editor-group/dataProduct/testable/DataProductTestableEditor.d.ts.map +1 -0
  9. package/lib/components/editor/editor-group/dataProduct/testable/DataProductTestableEditor.js +230 -0
  10. package/lib/components/editor/editor-group/dataProduct/testable/DataProductTestableEditor.js.map +1 -0
  11. package/lib/components/editor/editor-group/testable/TestableSharedComponents.d.ts.map +1 -1
  12. package/lib/components/editor/editor-group/testable/TestableSharedComponents.js +39 -5
  13. package/lib/components/editor/editor-group/testable/TestableSharedComponents.js.map +1 -1
  14. package/lib/index.css +2 -2
  15. package/lib/index.css.map +1 -1
  16. package/lib/package.json +1 -1
  17. package/lib/stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.d.ts +16 -1
  18. package/lib/stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.d.ts.map +1 -1
  19. package/lib/stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.js +36 -1
  20. package/lib/stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.js.map +1 -1
  21. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.d.ts +4 -1
  22. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.d.ts.map +1 -1
  23. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.js +4 -0
  24. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.js.map +1 -1
  25. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/testable/DataProductTestableState.d.ts +118 -0
  26. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/testable/DataProductTestableState.d.ts.map +1 -0
  27. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/testable/DataProductTestableState.js +600 -0
  28. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/testable/DataProductTestableState.js.map +1 -0
  29. package/lib/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.d.ts +17 -1
  30. package/lib/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.d.ts.map +1 -1
  31. package/lib/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.js +46 -1
  32. package/lib/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.js.map +1 -1
  33. package/package.json +9 -9
  34. package/src/components/editor/editor-group/data-editor/RelationElementsDataEditor.tsx +135 -49
  35. package/src/components/editor/editor-group/dataProduct/DataProductEditor.tsx +14 -0
  36. package/src/components/editor/editor-group/dataProduct/testable/DataProductTestableEditor.tsx +872 -0
  37. package/src/components/editor/editor-group/testable/TestableSharedComponents.tsx +169 -15
  38. package/src/stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.ts +54 -1
  39. package/src/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.ts +4 -0
  40. package/src/stores/editor/editor-state/element-editor-state/dataProduct/testable/DataProductTestableState.ts +863 -0
  41. package/src/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.ts +66 -0
  42. package/tsconfig.json +2 -0
@@ -13,11 +13,12 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { type TestAssertion, type AssertionStatus, type ValueSpecification, AssertFail, type TestResult, EqualToJson, EqualToJsonAssertFail, EqualTo } from '@finos/legend-graph';
16
+ import { type TestAssertion, type AssertionStatus, type ValueSpecification, AssertFail, type TestResult, EqualToJson, EqualToJsonAssertFail, EqualToRelationAssertFail, EqualTo, EqualToRelation } from '@finos/legend-graph';
17
17
  import { type GeneratorFn, ActionState } from '@finos/legend-shared';
18
18
  import type { EditorStore } from '../../../EditorStore.js';
19
19
  import { TESTABLE_RESULT } from '../../../sidebar-state/testable/GlobalTestRunnerState.js';
20
20
  import type { TestableTestEditorState } from './TestableEditorState.js';
21
+ import { RelationElementState } from '../data/EmbeddedDataState.js';
21
22
  export declare enum TEST_ASSERTION_TAB {
22
23
  EXPECTED = "EXPECTED",
23
24
  RESULT = "RESULT"
@@ -42,6 +43,12 @@ export declare class EqualToJsonAssertFailState extends AssertFailState {
42
43
  constructor(resultState: TestAssertionResultState, status: EqualToJsonAssertFail);
43
44
  setDiffModal(val: boolean): void;
44
45
  }
46
+ export declare class EqualToRelationAssertFailState extends AssertFailState {
47
+ status: EqualToRelationAssertFail;
48
+ diffModal: boolean;
49
+ constructor(resultState: TestAssertionResultState, status: EqualToRelationAssertFail);
50
+ setDiffModal(val: boolean): void;
51
+ }
45
52
  export declare class UnsupportedAssertionStatusState extends TestAssertionStatusState {
46
53
  }
47
54
  export declare class TestAssertionResultState {
@@ -72,6 +79,15 @@ export declare class EqualToJsonAssertionState extends TestAssertionState {
72
79
  generateBare(): TestAssertion;
73
80
  label(): string;
74
81
  }
82
+ export declare class EqualToRelationAssertionState extends TestAssertionState {
83
+ assertion: EqualToRelation;
84
+ expectedRelationElementState: RelationElementState;
85
+ constructor(editorStore: EditorStore, assertionState: TestAssertionEditorState);
86
+ get supportsGeneratingAssertion(): boolean;
87
+ generateExpected(_status: AssertFail): boolean;
88
+ generateBare(): TestAssertion;
89
+ label(): string;
90
+ }
75
91
  export declare class EqualToAssertionState extends TestAssertionState {
76
92
  assertion: EqualTo;
77
93
  valueSpec: ValueSpecification;
@@ -1 +1 @@
1
- {"version":3,"file":"TestAssertionState.d.ts","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TestAssertionState.d.ts","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.ts"],"names":[],"mappings":"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"}
@@ -13,11 +13,12 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { AssertFail, TestExecuted, TestError, EqualToJson, ExternalFormatData, EqualToJsonAssertFail, MultiExecutionServiceTestResult, AssertPass, TestExecutionStatus, EqualTo, observe_ValueSpecification, } from '@finos/legend-graph';
16
+ import { AssertFail, TestExecuted, TestError, EqualToJson, ExternalFormatData, EqualToJsonAssertFail, EqualToRelationAssertFail, MultiExecutionServiceTestResult, AssertPass, TestExecutionStatus, EqualTo, EqualToRelation, RelationElement, observe_ValueSpecification, } from '@finos/legend-graph';
17
17
  import { ActionState, assertErrorThrown, ContentType, UnsupportedOperationError, assertTrue, isNonNullable, IllegalStateError, guaranteeNonNullable, guaranteeType, returnUndefOnError, } from '@finos/legend-shared';
18
18
  import { action, flow, flowResult, makeObservable, observable } from 'mobx';
19
19
  import { externalFormatData_setData } from '../../../../graph-modifier/DSL_Data_GraphModifierHelper.js';
20
20
  import { getTestableResultFromAssertionStatus, TESTABLE_RESULT, } from '../../../sidebar-state/testable/GlobalTestRunnerState.js';
21
+ import { RelationElementState } from '../data/EmbeddedDataState.js';
21
22
  import { isTestPassing } from '../../../utils/TestableUtils.js';
22
23
  import { equalTo_setExpected } from '../../../../graph-modifier/Testable_GraphModifierHelper.js';
23
24
  export var TEST_ASSERTION_TAB;
@@ -69,6 +70,20 @@ export class EqualToJsonAssertFailState extends AssertFailState {
69
70
  this.diffModal = val;
70
71
  }
71
72
  }
73
+ export class EqualToRelationAssertFailState extends AssertFailState {
74
+ diffModal = false;
75
+ constructor(resultState, status) {
76
+ super(resultState, status);
77
+ this.status = status;
78
+ makeObservable(this, {
79
+ diffModal: observable,
80
+ setDiffModal: action,
81
+ });
82
+ }
83
+ setDiffModal(val) {
84
+ this.diffModal = val;
85
+ }
86
+ }
72
87
  export class UnsupportedAssertionStatusState extends TestAssertionStatusState {
73
88
  }
74
89
  export class TestAssertionResultState {
@@ -107,6 +122,9 @@ export class TestAssertionResultState {
107
122
  if (val instanceof EqualToJsonAssertFail) {
108
123
  return new EqualToJsonAssertFailState(this, val);
109
124
  }
125
+ if (val instanceof EqualToRelationAssertFail) {
126
+ return new EqualToRelationAssertFailState(this, val);
127
+ }
110
128
  if (val instanceof AssertFail) {
111
129
  if (this.assertionState.assertion instanceof EqualTo) {
112
130
  const message = val.message ?? '';
@@ -201,6 +219,30 @@ export class EqualToJsonAssertionState extends TestAssertionState {
201
219
  return 'EqualToJSON';
202
220
  }
203
221
  }
222
+ export class EqualToRelationAssertionState extends TestAssertionState {
223
+ expectedRelationElementState;
224
+ constructor(editorStore, assertionState) {
225
+ super(editorStore, assertionState);
226
+ this.expectedRelationElementState = new RelationElementState(this.assertion.expected);
227
+ }
228
+ get supportsGeneratingAssertion() {
229
+ return false;
230
+ }
231
+ generateExpected(_status) {
232
+ return false;
233
+ }
234
+ generateBare() {
235
+ const bareAssertion = new EqualToRelation();
236
+ bareAssertion.expected = new RelationElement();
237
+ bareAssertion.expected.columns = [];
238
+ bareAssertion.expected.paths = [];
239
+ bareAssertion.expected.rows = [];
240
+ return bareAssertion;
241
+ }
242
+ label() {
243
+ return 'EqualToRelation';
244
+ }
245
+ }
204
246
  export class EqualToAssertionState extends TestAssertionState {
205
247
  valueSpec;
206
248
  constructor(editorStore, assertionState, valueSpec) {
@@ -327,6 +369,9 @@ export class TestAssertionEditorState {
327
369
  if (assertion instanceof EqualToJson) {
328
370
  return new EqualToJsonAssertionState(this.editorStore, this);
329
371
  }
372
+ else if (assertion instanceof EqualToRelation) {
373
+ return new EqualToRelationAssertionState(this.editorStore, this);
374
+ }
330
375
  else if (assertion instanceof EqualTo) {
331
376
  const val = returnUndefOnError(() => this.editorStore.graphManagerState.graphManager.buildValueSpecification(assertion.expected, this.editorStore.graphManagerState.graph));
332
377
  if (val) {
@@ -1 +1 @@
1
- {"version":3,"file":"TestAssertionState.js","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TestAssertionState.js","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/testable/TestAssertionState.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-application-studio",
3
- "version": "28.21.2",
3
+ "version": "28.21.4",
4
4
  "description": "Legend Studio application core",
5
5
  "keywords": [
6
6
  "legend",
@@ -49,15 +49,15 @@
49
49
  "@dagrejs/dagre": "1.1.4",
50
50
  "@finos/legend-application": "16.0.105",
51
51
  "@finos/legend-art": "7.1.147",
52
- "@finos/legend-code-editor": "2.0.169",
53
- "@finos/legend-data-cube": "0.3.86",
54
- "@finos/legend-extension-dsl-data-product": "0.0.77",
55
- "@finos/legend-extension-dsl-diagram": "8.1.233",
56
- "@finos/legend-graph": "32.6.1",
57
- "@finos/legend-lego": "2.0.189",
58
- "@finos/legend-query-builder": "4.18.6",
52
+ "@finos/legend-code-editor": "2.0.170",
53
+ "@finos/legend-data-cube": "0.3.87",
54
+ "@finos/legend-extension-dsl-data-product": "0.0.79",
55
+ "@finos/legend-extension-dsl-diagram": "8.1.234",
56
+ "@finos/legend-graph": "32.6.2",
57
+ "@finos/legend-lego": "2.0.190",
58
+ "@finos/legend-query-builder": "4.18.8",
59
59
  "@finos/legend-server-depot": "6.1.11",
60
- "@finos/legend-server-lakehouse": "0.3.50",
60
+ "@finos/legend-server-lakehouse": "0.3.51",
61
61
  "@finos/legend-server-sdlc": "5.4.2",
62
62
  "@finos/legend-server-showcase": "0.2.65",
63
63
  "@finos/legend-shared": "11.0.24",
@@ -48,6 +48,14 @@ const NewRelationElementModal = observer(
48
48
  (props: { dataState: RelationElementsDataState; isReadOnly: boolean }) => {
49
49
  const { isReadOnly, dataState } = props;
50
50
  const applicationStore = dataState.editorStore.applicationStore;
51
+ const availableAccessorOptions = dataState.availableAccessorOptions;
52
+ const hasAccessorOptions =
53
+ dataState.accessorOptions !== undefined &&
54
+ availableAccessorOptions.length > 0;
55
+
56
+ const [selectedAccessor, setSelectedAccessor] = useState<
57
+ string | undefined
58
+ >(availableAccessorOptions[0]?.value);
51
59
 
52
60
  enum PathType {
53
61
  SCHEMA_TABLE = 'Schema and Table',
@@ -83,17 +91,29 @@ const NewRelationElementModal = observer(
83
91
  const closeModal = (): void =>
84
92
  dataState.setShowNewRelationElementModal(false);
85
93
  const handleSubmit = (): void => {
86
- const path: string[] = [];
87
- if (pathType && schemaName && tableName) {
88
- path.push(schemaName);
89
- path.push(tableName);
94
+ if (hasAccessorOptions && selectedAccessor) {
95
+ const option = availableAccessorOptions.find(
96
+ (o) => o.value === selectedAccessor,
97
+ );
98
+ if (option) {
99
+ const relationElement = new RelationElement();
100
+ relationElement.paths = [option.value];
101
+ relationElement.columns = option.columns;
102
+ relationElement.rows = [];
103
+ dataState.addRelationElement(relationElement);
104
+ }
105
+ } else {
106
+ const path: string[] = [];
107
+ if (pathType && schemaName && tableName) {
108
+ path.push(schemaName);
109
+ path.push(tableName);
110
+ }
111
+ const relationElement = new RelationElement();
112
+ relationElement.columns = [];
113
+ relationElement.rows = [];
114
+ relationElement.paths = path;
115
+ dataState.addRelationElement(relationElement);
90
116
  }
91
- const relationElement = new RelationElement();
92
- relationElement.columns = [];
93
- relationElement.rows = [];
94
- relationElement.paths = path;
95
-
96
- dataState.addRelationElement(relationElement);
97
117
  closeModal();
98
118
  };
99
119
 
@@ -112,48 +132,84 @@ const NewRelationElementModal = observer(
112
132
  onSubmit={(event) => {
113
133
  event.preventDefault();
114
134
  handleSubmit();
115
- closeModal();
116
135
  }}
117
136
  className="modal modal--dark search-modal"
118
137
  >
119
138
  <div className="modal__title">Add Relation Element</div>
120
139
  <div className="relational-data-editor__identifier">
121
- <div className="relational-data-editor__identifier__values">
122
- <CustomSelectorInput
123
- className="explorer__new-element-modal__driver__dropdown"
124
- options={pathTypeOptions}
125
- onChange={onPathTypeChange}
126
- value={pathType}
127
- isClearable={false}
128
- darkMode={
129
- !applicationStore.layoutService
130
- .TEMPORARY__isLightColorThemeEnabled
131
- }
132
- />
133
- </div>
134
- <>
140
+ {hasAccessorOptions ? (
135
141
  <div className="relational-data-editor__identifier__values">
136
- <input
137
- className="panel__content__form__section__input"
138
- disabled={isReadOnly}
139
- placeholder="schemaName"
140
- value={schemaName}
141
- onChange={changeSchemaValue}
142
- />
143
- </div>
144
- <div className="relational-data-editor__identifier__values">
145
- <input
146
- className="relational-data-editor__identifier__values panel__content__form__section__input"
147
- disabled={isReadOnly}
148
- placeholder="tableName"
149
- value={tableName}
150
- onChange={changeTableValue}
142
+ <div className="panel__content__form__section__header__label">
143
+ {dataState.accessorTypeLabel}
144
+ </div>
145
+ <CustomSelectorInput
146
+ className="explorer__new-element-modal__driver__dropdown"
147
+ options={availableAccessorOptions.map((o) => ({
148
+ value: o.value,
149
+ label: o.label,
150
+ }))}
151
+ onChange={(
152
+ val: { value: string; label: string } | null,
153
+ ): void => {
154
+ setSelectedAccessor(val?.value);
155
+ }}
156
+ value={
157
+ selectedAccessor
158
+ ? {
159
+ value: selectedAccessor,
160
+ label: selectedAccessor,
161
+ }
162
+ : null
163
+ }
164
+ placeholder={`Select ${dataState.accessorTypeLabel ?? 'option'}...`}
165
+ isClearable={false}
166
+ darkMode={
167
+ !applicationStore.layoutService
168
+ .TEMPORARY__isLightColorThemeEnabled
169
+ }
151
170
  />
152
171
  </div>
153
- </>
172
+ ) : (
173
+ <>
174
+ <div className="relational-data-editor__identifier__values">
175
+ <CustomSelectorInput
176
+ className="explorer__new-element-modal__driver__dropdown"
177
+ options={pathTypeOptions}
178
+ onChange={onPathTypeChange}
179
+ value={pathType}
180
+ isClearable={false}
181
+ darkMode={
182
+ !applicationStore.layoutService
183
+ .TEMPORARY__isLightColorThemeEnabled
184
+ }
185
+ />
186
+ </div>
187
+ <div className="relational-data-editor__identifier__values">
188
+ <input
189
+ className="panel__content__form__section__input"
190
+ disabled={isReadOnly}
191
+ placeholder="schemaName"
192
+ value={schemaName}
193
+ onChange={changeSchemaValue}
194
+ />
195
+ </div>
196
+ <div className="relational-data-editor__identifier__values">
197
+ <input
198
+ className="relational-data-editor__identifier__values panel__content__form__section__input"
199
+ disabled={isReadOnly}
200
+ placeholder="tableName"
201
+ value={tableName}
202
+ onChange={changeTableValue}
203
+ />
204
+ </div>
205
+ </>
206
+ )}
154
207
  </div>
155
208
  <div className="search-modal__actions">
156
- <button className="btn btn--dark" disabled={isReadOnly}>
209
+ <button
210
+ className="btn btn--dark"
211
+ disabled={isReadOnly || (hasAccessorOptions && !selectedAccessor)}
212
+ >
157
213
  Add
158
214
  </button>
159
215
  </div>
@@ -171,26 +227,28 @@ export const RelationElementEditor = observer(
171
227
  const { relationElementState, isReadOnly } = props;
172
228
  const editorStore = useEditorStore();
173
229
  const embeddedData = relationElementState.relationElement;
230
+ const canEditColumns =
231
+ !isReadOnly && relationElementState.supportsColumnEditing;
174
232
  const [exportFormat, setExportFormat] = useState<'json' | 'csv' | 'sql'>(
175
233
  'json',
176
234
  );
177
235
  const fileInputRef = useRef<HTMLInputElement>(null);
178
236
 
179
237
  const addColumn = (): void => {
180
- if (!isReadOnly) {
238
+ if (canEditColumns) {
181
239
  const columnName = `column_${embeddedData.columns.length + 1}`;
182
240
  relationElementState.addColumn(columnName);
183
241
  }
184
242
  };
185
243
 
186
244
  const removeColumn = (index: number): void => {
187
- if (!isReadOnly) {
245
+ if (canEditColumns) {
188
246
  relationElementState.removeColumn(index);
189
247
  }
190
248
  };
191
249
 
192
250
  const updateColumn = (index: number, value: string): void => {
193
- if (!isReadOnly) {
251
+ if (canEditColumns) {
194
252
  const column = embeddedData.columns[index];
195
253
  if (column) {
196
254
  relationElementState.updateColumn(index, value);
@@ -309,7 +367,7 @@ export const RelationElementEditor = observer(
309
367
  <button
310
368
  className="btn--icon btn--dark btn--sm"
311
369
  onClick={addColumn}
312
- disabled={isReadOnly}
370
+ disabled={!canEditColumns}
313
371
  title="Add Column"
314
372
  >
315
373
  <PlusIcon />
@@ -327,12 +385,12 @@ export const RelationElementEditor = observer(
327
385
  value={column}
328
386
  onChange={(e) => updateColumn(index, e.target.value)}
329
387
  placeholder="Column Name"
330
- disabled={isReadOnly}
388
+ disabled={!canEditColumns}
331
389
  />
332
390
  <button
333
391
  className="btn--icon btn--caution btn--dark btn--sm"
334
392
  onClick={() => removeColumn(index)}
335
- disabled={isReadOnly}
393
+ disabled={!canEditColumns}
336
394
  title="Remove Column"
337
395
  >
338
396
  <TimesIcon />
@@ -488,7 +546,23 @@ export const RelationElementsDataEditor = observer(
488
546
  );
489
547
 
490
548
  const addRelationElement = (): void => {
491
- dataState.setShowNewRelationElementModal(true);
549
+ const doAdd = (): void => {
550
+ if (
551
+ dataState.accessorOptions !== undefined &&
552
+ dataState.availableAccessorOptions.length === 0
553
+ ) {
554
+ dataState.editorStore.applicationStore.notificationService.notifyWarning(
555
+ `All referenced ${dataState.accessorTypeLabel ?? 'item'}s' data is already present`,
556
+ );
557
+ return;
558
+ }
559
+ dataState.setShowNewRelationElementModal(true);
560
+ };
561
+ if (dataState.refreshAccessorOptions) {
562
+ dataState.refreshAccessorOptions().then(doAdd).catch(doAdd);
563
+ } else {
564
+ doAdd();
565
+ }
492
566
  };
493
567
 
494
568
  const changeRelationElement = (
@@ -532,6 +606,18 @@ export const RelationElementsDataEditor = observer(
532
606
  ) : (
533
607
  <span>{relationElementState.relationElement.paths[0]}</span>
534
608
  )}
609
+ {!isReadOnly && (
610
+ <button
611
+ className="service-editor__tab__close-btn"
612
+ onClick={(e): void => {
613
+ e.stopPropagation();
614
+ dataState.deleteRelationElement(relationElementState);
615
+ }}
616
+ title="Delete"
617
+ >
618
+ <TimesIcon />
619
+ </button>
620
+ )}
535
621
  </div>
536
622
  ))}
537
623
  </div>
@@ -79,6 +79,7 @@ import {
79
79
  ListIcon,
80
80
  PanelLoadingIndicator,
81
81
  GearSuggestIcon,
82
+ FlaskIcon,
82
83
  } from '@finos/legend-art';
83
84
  import {
84
85
  type ChangeEventHandler,
@@ -106,6 +107,7 @@ import {
106
107
  type QueryBuilderState,
107
108
  } from '@finos/legend-query-builder';
108
109
  import { action, autorun, flowResult } from 'mobx';
110
+ import { DataProductTestableEditor } from './testable/DataProductTestableEditor.js';
109
111
  import { CODE_EDITOR_LANGUAGE } from '@finos/legend-code-editor';
110
112
  import { CodeEditor } from '@finos/legend-lego/code-editor';
111
113
  import {
@@ -2244,6 +2246,11 @@ const DataProductSidebar = observer(
2244
2246
  title: 'Operational Metadata',
2245
2247
  icon: <GearSuggestIcon />,
2246
2248
  },
2249
+ {
2250
+ label: DATA_PRODUCT_TAB.TESTING,
2251
+ title: 'Testing',
2252
+ icon: <FlaskIcon />,
2253
+ },
2247
2254
  {
2248
2255
  label: DATA_PRODUCT_TAB.SUPPORT,
2249
2256
  icon: <QuestionCircleIcon />,
@@ -3384,6 +3391,13 @@ export const DataProductEditor = observer(() => {
3384
3391
  isReadOnly={isReadOnly}
3385
3392
  />
3386
3393
  );
3394
+ case DATA_PRODUCT_TAB.TESTING:
3395
+ return (
3396
+ <DataProductTestableEditor
3397
+ dataProductEditorState={dataProductEditorState}
3398
+ isReadOnly={isReadOnly}
3399
+ />
3400
+ );
3387
3401
  default:
3388
3402
  return null;
3389
3403
  }