@finos/legend-application-studio 27.1.2 → 27.1.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 (141) hide show
  1. package/lib/__lib__/LegendStudioApplicationNavigationContext.d.ts +1 -1
  2. package/lib/__lib__/LegendStudioApplicationNavigationContext.d.ts.map +1 -1
  3. package/lib/__lib__/LegendStudioApplicationNavigationContext.js +1 -1
  4. package/lib/__lib__/LegendStudioApplicationNavigationContext.js.map +1 -1
  5. package/lib/__lib__/LegendStudioDocumentation.d.ts +3 -1
  6. package/lib/__lib__/LegendStudioDocumentation.d.ts.map +1 -1
  7. package/lib/__lib__/LegendStudioDocumentation.js +3 -0
  8. package/lib/__lib__/LegendStudioDocumentation.js.map +1 -1
  9. package/lib/__lib__/LegendStudioTesting.d.ts +1 -0
  10. package/lib/__lib__/LegendStudioTesting.d.ts.map +1 -1
  11. package/lib/__lib__/LegendStudioTesting.js +1 -0
  12. package/lib/__lib__/LegendStudioTesting.js.map +1 -1
  13. package/lib/application/LegendStudioApplicationConfig.d.ts.map +1 -1
  14. package/lib/application/LegendStudioApplicationConfig.js +1 -1
  15. package/lib/application/LegendStudioApplicationConfig.js.map +1 -1
  16. package/lib/components/editor/editor-group/FunctionEditor.d.ts.map +1 -1
  17. package/lib/components/editor/editor-group/FunctionEditor.js +6 -3
  18. package/lib/components/editor/editor-group/FunctionEditor.js.map +1 -1
  19. package/lib/components/editor/editor-group/mapping-editor/MappingEditor.d.ts.map +1 -1
  20. package/lib/components/editor/editor-group/mapping-editor/MappingEditor.js +2 -2
  21. package/lib/components/editor/editor-group/mapping-editor/MappingEditor.js.map +1 -1
  22. package/lib/components/editor/editor-group/mapping-editor/MappingExplorer.js +1 -1
  23. package/lib/components/editor/editor-group/mapping-editor/MappingExplorer.js.map +1 -1
  24. package/lib/components/editor/editor-group/mapping-editor/MappingTestableEditor.d.ts.map +1 -1
  25. package/lib/components/editor/editor-group/mapping-editor/MappingTestableEditor.js +47 -12
  26. package/lib/components/editor/editor-group/mapping-editor/MappingTestableEditor.js.map +1 -1
  27. package/lib/components/editor/editor-group/project-configuration-editor/ProjectConfigurationEditor.d.ts.map +1 -1
  28. package/lib/components/editor/editor-group/project-configuration-editor/ProjectConfigurationEditor.js +61 -11
  29. package/lib/components/editor/editor-group/project-configuration-editor/ProjectConfigurationEditor.js.map +1 -1
  30. package/lib/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.d.ts.map +1 -1
  31. package/lib/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.js +1 -1
  32. package/lib/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.js.map +1 -1
  33. package/lib/components/editor/editor-group/service-editor/ServiceExecutionQueryEditor.js +1 -1
  34. package/lib/components/editor/editor-group/service-editor/ServiceExecutionQueryEditor.js.map +1 -1
  35. package/lib/components/editor/editor-group/service-editor/testable/ServiceTestsEditor.d.ts.map +1 -1
  36. package/lib/components/editor/editor-group/service-editor/testable/ServiceTestsEditor.js +9 -5
  37. package/lib/components/editor/editor-group/service-editor/testable/ServiceTestsEditor.js.map +1 -1
  38. package/lib/components/editor/editor-group/uml-editor/ClassEditor.d.ts.map +1 -1
  39. package/lib/components/editor/editor-group/uml-editor/ClassEditor.js +26 -27
  40. package/lib/components/editor/editor-group/uml-editor/ClassEditor.js.map +1 -1
  41. package/lib/components/editor/editor-group/uml-editor/EnumerationEditor.js +2 -2
  42. package/lib/components/editor/editor-group/uml-editor/EnumerationEditor.js.map +1 -1
  43. package/lib/components/editor/editor-group/uml-editor/ProfileEditor.js +3 -3
  44. package/lib/components/editor/editor-group/uml-editor/ProfileEditor.js.map +1 -1
  45. package/lib/components/editor/editor-group/uml-editor/StereotypeSelector.js +2 -2
  46. package/lib/components/editor/editor-group/uml-editor/StereotypeSelector.js.map +1 -1
  47. package/lib/components/editor/editor-group/uml-editor/TaggedValueEditor.js +2 -2
  48. package/lib/components/editor/editor-group/uml-editor/TaggedValueEditor.js.map +1 -1
  49. package/lib/components/editor/side-bar/ProjectOverview.d.ts.map +1 -1
  50. package/lib/components/editor/side-bar/ProjectOverview.js +7 -1
  51. package/lib/components/editor/side-bar/ProjectOverview.js.map +1 -1
  52. package/lib/index.css +2 -2
  53. package/lib/index.css.map +1 -1
  54. package/lib/package.json +4 -4
  55. package/lib/stores/editor/editor-state/element-editor-state/ClassState.d.ts +8 -2
  56. package/lib/stores/editor/editor-state/element-editor-state/ClassState.d.ts.map +1 -1
  57. package/lib/stores/editor/editor-state/element-editor-state/ClassState.js +10 -6
  58. package/lib/stores/editor/editor-state/element-editor-state/ClassState.js.map +1 -1
  59. package/lib/stores/editor/editor-state/element-editor-state/FunctionEditorState.d.ts +5 -1
  60. package/lib/stores/editor/editor-state/element-editor-state/FunctionEditorState.d.ts.map +1 -1
  61. package/lib/stores/editor/editor-state/element-editor-state/FunctionEditorState.js +7 -5
  62. package/lib/stores/editor/editor-state/element-editor-state/FunctionEditorState.js.map +1 -1
  63. package/lib/stores/editor/editor-state/element-editor-state/mapping/DEPRECATED__MappingTestState.d.ts +4 -1
  64. package/lib/stores/editor/editor-state/element-editor-state/mapping/DEPRECATED__MappingTestState.d.ts.map +1 -1
  65. package/lib/stores/editor/editor-state/element-editor-state/mapping/DEPRECATED__MappingTestState.js +7 -5
  66. package/lib/stores/editor/editor-state/element-editor-state/mapping/DEPRECATED__MappingTestState.js.map +1 -1
  67. package/lib/stores/editor/editor-state/element-editor-state/mapping/FlatDataInstanceSetImplementationState.d.ts +10 -3
  68. package/lib/stores/editor/editor-state/element-editor-state/mapping/FlatDataInstanceSetImplementationState.d.ts.map +1 -1
  69. package/lib/stores/editor/editor-state/element-editor-state/mapping/FlatDataInstanceSetImplementationState.js +7 -5
  70. package/lib/stores/editor/editor-state/element-editor-state/mapping/FlatDataInstanceSetImplementationState.js.map +1 -1
  71. package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingEditorState.d.ts +1 -1
  72. package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingEditorState.d.ts.map +1 -1
  73. package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingEditorState.js +2 -2
  74. package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingEditorState.js.map +1 -1
  75. package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingExecutionState.d.ts +3 -1
  76. package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingExecutionState.d.ts.map +1 -1
  77. package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingExecutionState.js +4 -4
  78. package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingExecutionState.js.map +1 -1
  79. package/lib/stores/editor/editor-state/element-editor-state/mapping/PureInstanceSetImplementationState.d.ts +8 -2
  80. package/lib/stores/editor/editor-state/element-editor-state/mapping/PureInstanceSetImplementationState.d.ts.map +1 -1
  81. package/lib/stores/editor/editor-state/element-editor-state/mapping/PureInstanceSetImplementationState.js +10 -6
  82. package/lib/stores/editor/editor-state/element-editor-state/mapping/PureInstanceSetImplementationState.js.map +1 -1
  83. package/lib/stores/editor/editor-state/element-editor-state/mapping/relational/RelationalInstanceSetImplementationState.d.ts +11 -3
  84. package/lib/stores/editor/editor-state/element-editor-state/mapping/relational/RelationalInstanceSetImplementationState.d.ts.map +1 -1
  85. package/lib/stores/editor/editor-state/element-editor-state/mapping/relational/RelationalInstanceSetImplementationState.js +6 -4
  86. package/lib/stores/editor/editor-state/element-editor-state/mapping/relational/RelationalInstanceSetImplementationState.js.map +1 -1
  87. package/lib/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestableState.d.ts +3 -1
  88. package/lib/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestableState.d.ts.map +1 -1
  89. package/lib/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestableState.js +3 -3
  90. package/lib/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestableState.js.map +1 -1
  91. package/lib/stores/editor/editor-state/element-editor-state/service/ServiceExecutionState.d.ts +3 -1
  92. package/lib/stores/editor/editor-state/element-editor-state/service/ServiceExecutionState.d.ts.map +1 -1
  93. package/lib/stores/editor/editor-state/element-editor-state/service/ServiceExecutionState.js +4 -4
  94. package/lib/stores/editor/editor-state/element-editor-state/service/ServiceExecutionState.js.map +1 -1
  95. package/lib/stores/editor/editor-state/element-editor-state/service/ServicePostValidationState.d.ts +8 -2
  96. package/lib/stores/editor/editor-state/element-editor-state/service/ServicePostValidationState.d.ts.map +1 -1
  97. package/lib/stores/editor/editor-state/element-editor-state/service/ServicePostValidationState.js +12 -8
  98. package/lib/stores/editor/editor-state/element-editor-state/service/ServicePostValidationState.js.map +1 -1
  99. package/lib/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestableState.d.ts +1 -1
  100. package/lib/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestableState.d.ts.map +1 -1
  101. package/lib/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestableState.js +13 -8
  102. package/lib/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestableState.js.map +1 -1
  103. package/lib/stores/editor/editor-state/project-configuration-editor-state/ProjectConfigurationEditorState.d.ts +6 -2
  104. package/lib/stores/editor/editor-state/project-configuration-editor-state/ProjectConfigurationEditorState.d.ts.map +1 -1
  105. package/lib/stores/editor/editor-state/project-configuration-editor-state/ProjectConfigurationEditorState.js +39 -3
  106. package/lib/stores/editor/editor-state/project-configuration-editor-state/ProjectConfigurationEditorState.js.map +1 -1
  107. package/lib/stores/editor/utils/TestableUtils.js +2 -2
  108. package/lib/stores/editor/utils/TestableUtils.js.map +1 -1
  109. package/package.json +14 -14
  110. package/src/__lib__/LegendStudioApplicationNavigationContext.ts +1 -1
  111. package/src/__lib__/LegendStudioDocumentation.ts +4 -0
  112. package/src/__lib__/LegendStudioTesting.ts +1 -0
  113. package/src/application/LegendStudioApplicationConfig.ts +1 -1
  114. package/src/components/editor/editor-group/FunctionEditor.tsx +8 -6
  115. package/src/components/editor/editor-group/mapping-editor/MappingEditor.tsx +5 -2
  116. package/src/components/editor/editor-group/mapping-editor/MappingExplorer.tsx +1 -1
  117. package/src/components/editor/editor-group/mapping-editor/MappingTestableEditor.tsx +68 -17
  118. package/src/components/editor/editor-group/project-configuration-editor/ProjectConfigurationEditor.tsx +137 -12
  119. package/src/components/editor/editor-group/project-configuration-editor/ProjectDependencyEditor.tsx +0 -1
  120. package/src/components/editor/editor-group/service-editor/ServiceExecutionQueryEditor.tsx +3 -3
  121. package/src/components/editor/editor-group/service-editor/testable/ServiceTestsEditor.tsx +53 -18
  122. package/src/components/editor/editor-group/uml-editor/ClassEditor.tsx +358 -364
  123. package/src/components/editor/editor-group/uml-editor/EnumerationEditor.tsx +4 -4
  124. package/src/components/editor/editor-group/uml-editor/ProfileEditor.tsx +7 -7
  125. package/src/components/editor/editor-group/uml-editor/StereotypeSelector.tsx +4 -4
  126. package/src/components/editor/editor-group/uml-editor/TaggedValueEditor.tsx +4 -4
  127. package/src/components/editor/side-bar/ProjectOverview.tsx +14 -3
  128. package/src/stores/editor/editor-state/element-editor-state/ClassState.ts +16 -6
  129. package/src/stores/editor/editor-state/element-editor-state/FunctionEditorState.ts +11 -8
  130. package/src/stores/editor/editor-state/element-editor-state/mapping/DEPRECATED__MappingTestState.ts +10 -5
  131. package/src/stores/editor/editor-state/element-editor-state/mapping/FlatDataInstanceSetImplementationState.ts +14 -5
  132. package/src/stores/editor/editor-state/element-editor-state/mapping/MappingEditorState.ts +2 -2
  133. package/src/stores/editor/editor-state/element-editor-state/mapping/MappingExecutionState.ts +6 -4
  134. package/src/stores/editor/editor-state/element-editor-state/mapping/PureInstanceSetImplementationState.ts +16 -6
  135. package/src/stores/editor/editor-state/element-editor-state/mapping/relational/RelationalInstanceSetImplementationState.ts +14 -4
  136. package/src/stores/editor/editor-state/element-editor-state/mapping/testable/MappingTestableState.ts +5 -3
  137. package/src/stores/editor/editor-state/element-editor-state/service/ServiceExecutionState.ts +6 -4
  138. package/src/stores/editor/editor-state/element-editor-state/service/ServicePostValidationState.ts +22 -10
  139. package/src/stores/editor/editor-state/element-editor-state/service/testable/ServiceTestableState.ts +21 -8
  140. package/src/stores/editor/editor-state/project-configuration-editor-state/ProjectConfigurationEditorState.ts +59 -2
  141. package/src/stores/editor/utils/TestableUtils.ts +2 -2
@@ -42,7 +42,7 @@ import {
42
42
  LockIcon,
43
43
  FireIcon,
44
44
  StickArrowCircleRightIcon,
45
- PanelDnDEntryDragHandle,
45
+ PanelEntryDragHandle,
46
46
  DragPreviewLayer,
47
47
  useDragPreviewLayer,
48
48
  PanelDropZone,
@@ -165,9 +165,9 @@ const EnumBasicEditor = observer(
165
165
  placeholder={<div className="dnd__placeholder--light"></div>}
166
166
  className="enum-basic-editor__container"
167
167
  >
168
- <PanelDnDEntryDragHandle
169
- dropTargetConnector={handleRef}
170
- isBeingDragged={isBeingDragged}
168
+ <PanelEntryDragHandle
169
+ dragSourceConnector={handleRef}
170
+ isDragging={isBeingDragged}
171
171
  />
172
172
 
173
173
  <div className="enum-basic-editor">
@@ -26,7 +26,7 @@ import {
26
26
  PlusIcon,
27
27
  TimesIcon,
28
28
  LockIcon,
29
- PanelDnDEntryDragHandle,
29
+ PanelEntryDragHandle,
30
30
  DragPreviewLayer,
31
31
  useDragPreviewLayer,
32
32
  Panel,
@@ -126,9 +126,9 @@ const TagBasicEditor = observer(
126
126
  placeholder={<div className="dnd__placeholder--light"></div>}
127
127
  showPlaceholder={isBeingDragged}
128
128
  >
129
- <PanelDnDEntryDragHandle
130
- dropTargetConnector={handleRef}
131
- isBeingDragged={isBeingDragged}
129
+ <PanelEntryDragHandle
130
+ dragSourceConnector={handleRef}
131
+ isDragging={isBeingDragged}
132
132
  />
133
133
  <div className="tag-basic-editor">
134
134
  <InputWithInlineValidation
@@ -229,9 +229,9 @@ const StereotypeBasicEditor = observer(
229
229
  className="stereotype-basic-editor__container"
230
230
  showPlaceholder={isBeingDragged}
231
231
  >
232
- <PanelDnDEntryDragHandle
233
- dropTargetConnector={handleRef}
234
- isBeingDragged={isBeingDragged}
232
+ <PanelEntryDragHandle
233
+ dragSourceConnector={handleRef}
234
+ isDragging={isBeingDragged}
235
235
  />
236
236
  <div className="stereotype-basic-editor">
237
237
  <InputWithInlineValidation
@@ -21,7 +21,7 @@ import {
21
21
  createFilter,
22
22
  TimesIcon,
23
23
  ArrowCircleRightIcon,
24
- PanelDnDEntryDragHandle,
24
+ PanelEntryDragHandle,
25
25
  PanelDnDEntry,
26
26
  DragPreviewLayer,
27
27
  useDragPreviewLayer,
@@ -179,9 +179,9 @@ export const StereotypeSelector = observer(
179
179
  placeholder={<div className="dnd__placeholder--light"></div>}
180
180
  showPlaceholder={isBeingDragged}
181
181
  >
182
- <PanelDnDEntryDragHandle
183
- dropTargetConnector={handleRef}
184
- isBeingDragged={isBeingDragged}
182
+ <PanelEntryDragHandle
183
+ dragSourceConnector={handleRef}
184
+ isDragging={isBeingDragged}
185
185
  />
186
186
  <div
187
187
  className={clsx('stereotype-selector', {
@@ -24,7 +24,7 @@ import {
24
24
  TimesIcon,
25
25
  ArrowCircleRightIcon,
26
26
  LongArrowAltUpIcon,
27
- PanelDnDEntryDragHandle,
27
+ PanelEntryDragHandle,
28
28
  PanelDnDEntry,
29
29
  DragPreviewLayer,
30
30
  useDragPreviewLayer,
@@ -189,9 +189,9 @@ export const TaggedValueEditor = observer(
189
189
  showPlaceholder={isBeingDragged}
190
190
  placeholder={<div className="dnd__placeholder--light"></div>}
191
191
  >
192
- <PanelDnDEntryDragHandle
193
- dropTargetConnector={handleRef}
194
- isBeingDragged={isBeingDragged}
192
+ <PanelEntryDragHandle
193
+ dragSourceConnector={handleRef}
194
+ isDragging={isBeingDragged}
195
195
  />
196
196
  <div
197
197
  className={clsx('tagged-value-editor', {
@@ -801,6 +801,8 @@ interface ProjectOverviewActivityDisplay {
801
801
  export const ProjectOverviewActivityBar = observer(() => {
802
802
  const editorStore = useEditorStore();
803
803
  const projectOverviewState = editorStore.projectOverviewState;
804
+ const isInEmbeddedMode =
805
+ editorStore.projectConfigurationEditorState.isInEmbeddedMode;
804
806
  const changeActivity =
805
807
  (activity: PROJECT_OVERVIEW_ACTIVITY_MODE): (() => void) =>
806
808
  (): void =>
@@ -813,9 +815,18 @@ export const ProjectOverviewActivityBar = observer(() => {
813
815
  },
814
816
  { mode: PROJECT_OVERVIEW_ACTIVITY_MODE.VERSIONS, title: 'Versions' },
815
817
  { mode: PROJECT_OVERVIEW_ACTIVITY_MODE.WORKSPACES, title: 'Workspaces' },
816
- ].filter((activity): activity is ProjectOverviewActivityDisplay =>
817
- Boolean(activity),
818
- );
818
+ ]
819
+ .filter((activity): activity is ProjectOverviewActivityDisplay =>
820
+ Boolean(activity),
821
+ )
822
+ .filter(
823
+ (act) =>
824
+ // releasing not supported in embedded mode
825
+ !(
826
+ act.mode === PROJECT_OVERVIEW_ACTIVITY_MODE.RELEASE &&
827
+ isInEmbeddedMode
828
+ ),
829
+ );
819
830
 
820
831
  return (
821
832
  <div
@@ -104,7 +104,10 @@ export class DerivedPropertyState extends LambdaEditorState {
104
104
  }
105
105
  }
106
106
 
107
- *convertLambdaObjectToGrammarString(pretty: boolean): GeneratorFn<void> {
107
+ *convertLambdaObjectToGrammarString(options?: {
108
+ pretty?: boolean | undefined;
109
+ preserveCompilationError?: boolean | undefined;
110
+ }): GeneratorFn<void> {
108
111
  if (this.derivedProperty.body) {
109
112
  try {
110
113
  const lambdas = new Map<string, RawLambda>();
@@ -118,7 +121,7 @@ export class DerivedPropertyState extends LambdaEditorState {
118
121
  const isolatedLambdas =
119
122
  (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(
120
123
  lambdas,
121
- pretty,
124
+ options?.pretty,
122
125
  )) as Map<string, string>;
123
126
  const grammarText = isolatedLambdas.get(this.lambdaId);
124
127
  this.setLambdaString(
@@ -126,7 +129,9 @@ export class DerivedPropertyState extends LambdaEditorState {
126
129
  ? this.extractLambdaString(grammarText)
127
130
  : '',
128
131
  );
129
- this.clearErrors();
132
+ this.clearErrors({
133
+ preserveCompilationError: options?.preserveCompilationError,
134
+ });
130
135
  } catch (error) {
131
136
  assertErrorThrown(error);
132
137
  this.editorStore.applicationStore.logService.error(
@@ -196,7 +201,10 @@ export class ConstraintState extends LambdaEditorState {
196
201
  }
197
202
  }
198
203
 
199
- *convertLambdaObjectToGrammarString(pretty: boolean): GeneratorFn<void> {
204
+ *convertLambdaObjectToGrammarString(options?: {
205
+ pretty?: boolean | undefined;
206
+ preserveCompilationError?: boolean | undefined;
207
+ }): GeneratorFn<void> {
200
208
  if (!isStubbed_RawLambda(this.constraint.functionDefinition)) {
201
209
  try {
202
210
  const lambdas = new Map<string, RawLambda>();
@@ -204,7 +212,7 @@ export class ConstraintState extends LambdaEditorState {
204
212
  const isolatedLambdas =
205
213
  (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(
206
214
  lambdas,
207
- pretty,
215
+ options?.pretty,
208
216
  )) as Map<string, string>;
209
217
  const grammarText = isolatedLambdas.get(this.lambdaId);
210
218
  this.setLambdaString(
@@ -212,7 +220,9 @@ export class ConstraintState extends LambdaEditorState {
212
220
  ? this.extractLambdaString(grammarText)
213
221
  : '',
214
222
  );
215
- this.clearErrors();
223
+ this.clearErrors({
224
+ preserveCompilationError: options?.preserveCompilationError,
225
+ });
216
226
  } catch (error) {
217
227
  assertErrorThrown(error);
218
228
  this.editorStore.applicationStore.logService.error(
@@ -122,10 +122,11 @@ export class FunctionDefinitionEditorState extends LambdaEditorState {
122
122
  }
123
123
  }
124
124
 
125
- *convertLambdaObjectToGrammarString(
126
- pretty: boolean,
127
- firstLoad?: boolean,
128
- ): GeneratorFn<void> {
125
+ *convertLambdaObjectToGrammarString(options?: {
126
+ pretty?: boolean | undefined;
127
+ preserveCompilationError?: boolean | undefined;
128
+ firstLoad?: boolean | undefined;
129
+ }): GeneratorFn<void> {
129
130
  if (!isStubbed_PackageableElement(this.functionElement)) {
130
131
  this.isConvertingFunctionBodyToString = true;
131
132
  try {
@@ -138,7 +139,7 @@ export class FunctionDefinitionEditorState extends LambdaEditorState {
138
139
  const isolatedLambdas =
139
140
  (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(
140
141
  lambdas,
141
- pretty,
142
+ options?.pretty,
142
143
  )) as Map<string, string>;
143
144
  const grammarText = isolatedLambdas.get(this.lambdaId);
144
145
  if (grammarText) {
@@ -162,8 +163,10 @@ export class FunctionDefinitionEditorState extends LambdaEditorState {
162
163
  }
163
164
  // `firstLoad` flag is used in the first rendering of the function editor (in a `useEffect`)
164
165
  // This flag helps block editing while the JSON is converting to text and to avoid reseting parser/compiler error in reveal error
165
- if (!firstLoad) {
166
- this.clearErrors();
166
+ if (!options?.firstLoad) {
167
+ this.clearErrors({
168
+ preserveCompilationError: options?.preserveCompilationError,
169
+ });
167
170
  }
168
171
  this.isConvertingFunctionBodyToString = false;
169
172
  } catch (error) {
@@ -417,7 +420,7 @@ export class FunctionEditorState extends ElementEditorState {
417
420
  rawPlan,
418
421
  this.editorStore.graphManagerState.graph,
419
422
  );
420
- this.executionPlanState.setPlan(plan);
423
+ this.executionPlanState.initialize(plan);
421
424
  } catch {
422
425
  // do nothing
423
426
  }
@@ -146,10 +146,13 @@ export class MappingTestQueryState extends LambdaEditorState {
146
146
  *updateLamba(val: RawLambda): GeneratorFn<void> {
147
147
  this.query = val;
148
148
  DEPRECATED_mappingTest_setQuery(this.test, val);
149
- yield flowResult(this.convertLambdaObjectToGrammarString(true));
149
+ yield flowResult(this.convertLambdaObjectToGrammarString({ pretty: true }));
150
150
  }
151
151
 
152
- *convertLambdaObjectToGrammarString(pretty?: boolean): GeneratorFn<void> {
152
+ *convertLambdaObjectToGrammarString(options?: {
153
+ pretty?: boolean | undefined;
154
+ preserveCompilationError?: boolean | undefined;
155
+ }): GeneratorFn<void> {
153
156
  if (!isStubbed_RawLambda(this.query)) {
154
157
  try {
155
158
  const lambdas = new Map<string, RawLambda>();
@@ -157,7 +160,7 @@ export class MappingTestQueryState extends LambdaEditorState {
157
160
  const isolatedLambdas =
158
161
  (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(
159
162
  lambdas,
160
- pretty,
163
+ options?.pretty,
161
164
  )) as Map<string, string>;
162
165
  const grammarText = isolatedLambdas.get(this.lambdaId);
163
166
  this.setLambdaString(
@@ -165,7 +168,9 @@ export class MappingTestQueryState extends LambdaEditorState {
165
168
  ? this.extractLambdaString(grammarText)
166
169
  : '',
167
170
  );
168
- this.clearErrors();
171
+ this.clearErrors({
172
+ preserveCompilationError: options?.preserveCompilationError,
173
+ });
169
174
  } catch (error) {
170
175
  assertErrorThrown(error);
171
176
  this.editorStore.applicationStore.logService.error(
@@ -890,7 +895,7 @@ export class DEPRECATED__MappingTestState extends MappingEditorTabState {
890
895
  rawPlan,
891
896
  this.editorStore.graphManagerState.graph,
892
897
  );
893
- this.executionPlanState.setPlan(plan);
898
+ this.executionPlanState.initialize(plan);
894
899
  } catch {
895
900
  // do nothing
896
901
  }
@@ -109,7 +109,10 @@ export class FlatDataPropertyMappingState extends PropertyMappingState {
109
109
  }
110
110
  }
111
111
 
112
- *convertLambdaObjectToGrammarString(pretty: boolean): GeneratorFn<void> {
112
+ *convertLambdaObjectToGrammarString(options?: {
113
+ pretty?: boolean | undefined;
114
+ preserveCompilationError?: boolean | undefined;
115
+ }): GeneratorFn<void> {
113
116
  if (this.propertyMapping instanceof FlatDataPropertyMapping) {
114
117
  if (!isStubbed_RawLambda(this.propertyMapping.transform)) {
115
118
  try {
@@ -118,7 +121,7 @@ export class FlatDataPropertyMappingState extends PropertyMappingState {
118
121
  const isolatedLambdas =
119
122
  (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(
120
123
  lambdas,
121
- pretty,
124
+ options?.pretty,
122
125
  )) as Map<string, string>;
123
126
  const grammarText = isolatedLambdas.get(this.lambdaId);
124
127
  this.setLambdaString(
@@ -126,7 +129,9 @@ export class FlatDataPropertyMappingState extends PropertyMappingState {
126
129
  ? this.extractLambdaString(grammarText)
127
130
  : '',
128
131
  );
129
- this.clearErrors();
132
+ this.clearErrors({
133
+ preserveCompilationError: options?.preserveCompilationError,
134
+ });
130
135
  } catch (error) {
131
136
  assertErrorThrown(error);
132
137
  this.editorStore.applicationStore.logService.error(
@@ -347,14 +352,18 @@ export class EmbeddedFlatDataInstanceSetImplementationState
347
352
  extractLambdaString(fullLambdaString: string): string {
348
353
  throw new UnsupportedOperationError();
349
354
  }
350
- clearErrors(): void {
355
+ clearErrors(options?: {
356
+ preserveCompilationError?: boolean | undefined;
357
+ }): void {
351
358
  // TODO
352
359
  return;
353
360
  }
354
361
  *convertLambdaGrammarStringToObject(): GeneratorFn<void> {
355
362
  throw new UnsupportedOperationError();
356
363
  }
357
- *convertLambdaObjectToGrammarString(pretty: boolean): GeneratorFn<void> {
364
+ *convertLambdaObjectToGrammarString(options?: {
365
+ pretty?: boolean | undefined;
366
+ }): GeneratorFn<void> {
358
367
  throw new UnsupportedOperationError();
359
368
  }
360
369
  }
@@ -144,7 +144,7 @@ export const generateMappingTestName = (mapping: Mapping): string => {
144
144
 
145
145
  export enum MAPPING_EDITOR_TAB {
146
146
  CLASS_MAPPINGS = 'CLASS_MAPPINGS',
147
- BETA_TEST_SUITES = 'TEST_SUITES',
147
+ TEST_SUITES = 'TEST_SUITES',
148
148
  }
149
149
 
150
150
  export enum MAPPING_ELEMENT_SOURCE_ID_LABEL {
@@ -615,7 +615,7 @@ export interface MappingElementSpec {
615
615
  }
616
616
 
617
617
  export class MappingEditorState extends ElementEditorState {
618
- selectedTab = MAPPING_EDITOR_TAB.BETA_TEST_SUITES;
618
+ selectedTab = MAPPING_EDITOR_TAB.CLASS_MAPPINGS;
619
619
  currentTabState?: MappingEditorTabState | undefined;
620
620
  openedTabStates: MappingEditorTabState[] = [];
621
621
 
@@ -164,10 +164,12 @@ export class MappingExecutionQueryState extends LambdaEditorState {
164
164
 
165
165
  *updateLamba(val: RawLambda): GeneratorFn<void> {
166
166
  this.query = val;
167
- yield flowResult(this.convertLambdaObjectToGrammarString(true));
167
+ yield flowResult(this.convertLambdaObjectToGrammarString({ pretty: true }));
168
168
  }
169
169
 
170
- *convertLambdaObjectToGrammarString(pretty?: boolean): GeneratorFn<void> {
170
+ *convertLambdaObjectToGrammarString(options?: {
171
+ pretty?: boolean | undefined;
172
+ }): GeneratorFn<void> {
171
173
  if (!isStubbed_RawLambda(this.query)) {
172
174
  try {
173
175
  const lambdas = new Map<string, RawLambda>();
@@ -175,7 +177,7 @@ export class MappingExecutionQueryState extends LambdaEditorState {
175
177
  const isolatedLambdas =
176
178
  (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(
177
179
  lambdas,
178
- pretty,
180
+ options?.pretty,
179
181
  )) as Map<string, string>;
180
182
  const grammarText = isolatedLambdas.get(this.lambdaId);
181
183
  this.setLambdaString(
@@ -903,7 +905,7 @@ export class MappingExecutionState extends MappingEditorTabState {
903
905
  rawPlan,
904
906
  this.editorStore.graphManagerState.graph,
905
907
  );
906
- this.executionPlanState.setPlan(plan);
908
+ this.executionPlanState.initialize(plan);
907
909
  } catch {
908
910
  // do nothing
909
911
  }
@@ -97,7 +97,10 @@ export class PurePropertyMappingState extends PropertyMappingState {
97
97
  }
98
98
  }
99
99
 
100
- *convertLambdaObjectToGrammarString(pretty: boolean): GeneratorFn<void> {
100
+ *convertLambdaObjectToGrammarString(options?: {
101
+ pretty?: boolean | undefined;
102
+ preserveCompilationError?: boolean | undefined;
103
+ }): GeneratorFn<void> {
101
104
  if (!isStubbed_RawLambda(this.propertyMapping.transform)) {
102
105
  try {
103
106
  const lambdas = new Map<string, RawLambda>();
@@ -105,7 +108,7 @@ export class PurePropertyMappingState extends PropertyMappingState {
105
108
  const isolatedLambdas =
106
109
  (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(
107
110
  lambdas,
108
- pretty,
111
+ options?.pretty,
109
112
  )) as Map<string, string>;
110
113
  const grammarText = isolatedLambdas.get(this.lambdaId);
111
114
  this.setLambdaString(
@@ -113,7 +116,9 @@ export class PurePropertyMappingState extends PropertyMappingState {
113
116
  ? this.extractLambdaString(grammarText)
114
117
  : '',
115
118
  );
116
- this.clearErrors();
119
+ this.clearErrors({
120
+ preserveCompilationError: options?.preserveCompilationError,
121
+ });
117
122
  } catch (error) {
118
123
  assertErrorThrown(error);
119
124
  this.editorStore.applicationStore.logService.error(
@@ -190,16 +195,21 @@ export class PureInstanceSetImplementationFilterState extends LambdaEditorState
190
195
  }
191
196
  }
192
197
 
193
- *convertLambdaObjectToGrammarString(pretty: boolean): GeneratorFn<void> {
198
+ *convertLambdaObjectToGrammarString(options?: {
199
+ pretty?: boolean | undefined;
200
+ preserveCompilationError?: boolean | undefined;
201
+ }): GeneratorFn<void> {
194
202
  if (this.instanceSetImplementation.filter) {
195
203
  try {
196
204
  const grammarText =
197
205
  (yield this.editorStore.graphManagerState.graphManager.lambdaToPureCode(
198
206
  this.instanceSetImplementation.filter,
199
- pretty,
207
+ options?.pretty,
200
208
  )) as string;
201
209
  this.setLambdaString(this.extractLambdaString(grammarText));
202
- this.clearErrors();
210
+ this.clearErrors({
211
+ preserveCompilationError: options?.preserveCompilationError,
212
+ });
203
213
  } catch (error) {
204
214
  assertErrorThrown(error);
205
215
  this.editorStore.applicationStore.logService.error(
@@ -109,7 +109,10 @@ export class RelationalPropertyMappingState extends PropertyMappingState {
109
109
  }
110
110
  }
111
111
 
112
- *convertLambdaObjectToGrammarString(pretty: boolean): GeneratorFn<void> {
112
+ *convertLambdaObjectToGrammarString(options?: {
113
+ pretty?: boolean | undefined;
114
+ preserveCompilationError?: boolean | undefined;
115
+ }): GeneratorFn<void> {
113
116
  if (this.propertyMapping instanceof RelationalPropertyMapping) {
114
117
  if (!isStubbed_RawRelationalOperationElement(this.propertyMapping)) {
115
118
  try {
@@ -128,7 +131,9 @@ export class RelationalPropertyMappingState extends PropertyMappingState {
128
131
  ? this.extractLambdaString(grammarText)
129
132
  : '',
130
133
  );
131
- this.clearErrors();
134
+ this.clearErrors({
135
+ preserveCompilationError: options?.preserveCompilationError,
136
+ });
132
137
  } catch (error) {
133
138
  assertErrorThrown(error);
134
139
  this.editorStore.applicationStore.logService.error(
@@ -214,14 +219,19 @@ export class EmbeddedRelationalInstanceSetImplementationState
214
219
  extractLambdaString(fullLambdaString: string): string {
215
220
  throw new UnsupportedOperationError();
216
221
  }
217
- clearErrors(): void {
222
+ clearErrors(options?: {
223
+ preserveCompilationError?: boolean | undefined;
224
+ }): void {
218
225
  // TODO
219
226
  return;
220
227
  }
221
228
  *convertLambdaGrammarStringToObject(): GeneratorFn<void> {
222
229
  throw new UnsupportedOperationError();
223
230
  }
224
- *convertLambdaObjectToGrammarString(pretty: boolean): GeneratorFn<void> {
231
+ *convertLambdaObjectToGrammarString(options?: {
232
+ pretty?: boolean | undefined;
233
+ preserveCompilationError?: boolean | undefined;
234
+ }): GeneratorFn<void> {
225
235
  throw new UnsupportedOperationError();
226
236
  }
227
237
  }
@@ -291,10 +291,12 @@ export class MappingTestSuiteQueryState extends LambdaEditorState {
291
291
  *updateLamba(val: RawLambda): GeneratorFn<void> {
292
292
  this.query = val;
293
293
  mappingTestable_setQuery(this.parent, val);
294
- yield flowResult(this.convertLambdaObjectToGrammarString(true));
294
+ yield flowResult(this.convertLambdaObjectToGrammarString({ pretty: true }));
295
295
  }
296
296
 
297
- *convertLambdaObjectToGrammarString(pretty?: boolean): GeneratorFn<void> {
297
+ *convertLambdaObjectToGrammarString(options?: {
298
+ pretty?: boolean | undefined;
299
+ }): GeneratorFn<void> {
298
300
  if (!isStubbed_RawLambda(this.query)) {
299
301
  try {
300
302
  const lambdas = new Map<string, RawLambda>();
@@ -302,7 +304,7 @@ export class MappingTestSuiteQueryState extends LambdaEditorState {
302
304
  const isolatedLambdas =
303
305
  (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(
304
306
  lambdas,
305
- pretty,
307
+ options?.pretty,
306
308
  )) as Map<string, string>;
307
309
  const grammarText = isolatedLambdas.get(this.lambdaId);
308
310
  this.setLambdaString(
@@ -292,10 +292,12 @@ export class ServicePureExecutionQueryState extends LambdaEditorState {
292
292
 
293
293
  *updateLamba(val: RawLambda): GeneratorFn<void> {
294
294
  this.setLambda(val);
295
- yield flowResult(this.convertLambdaObjectToGrammarString(true));
295
+ yield flowResult(this.convertLambdaObjectToGrammarString({ pretty: true }));
296
296
  }
297
297
 
298
- *convertLambdaObjectToGrammarString(pretty?: boolean): GeneratorFn<void> {
298
+ *convertLambdaObjectToGrammarString(options?: {
299
+ pretty?: boolean | undefined;
300
+ }): GeneratorFn<void> {
299
301
  if (this.execution.func.body) {
300
302
  try {
301
303
  const lambdas = new Map<string, RawLambda>();
@@ -309,7 +311,7 @@ export class ServicePureExecutionQueryState extends LambdaEditorState {
309
311
  const isolatedLambdas =
310
312
  (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(
311
313
  lambdas,
312
- pretty,
314
+ options?.pretty,
313
315
  )) as Map<string, string>;
314
316
  const grammarText = isolatedLambdas.get(this.lambdaId);
315
317
  this.setLambdaString(
@@ -543,7 +545,7 @@ export abstract class ServicePureExecutionState extends ServiceExecutionState {
543
545
  rawPlan,
544
546
  this.editorStore.graphManagerState.graph,
545
547
  );
546
- this.executionPlanState.setPlan(plan);
548
+ this.executionPlanState.initialize(plan);
547
549
  } catch {
548
550
  // do nothing
549
551
  }
@@ -100,9 +100,10 @@ export class PostValidationAssertionState extends LambdaEditorState {
100
100
  }
101
101
  }
102
102
 
103
- override *convertLambdaObjectToGrammarString(
104
- pretty: boolean,
105
- ): GeneratorFn<void> {
103
+ override *convertLambdaObjectToGrammarString(options?: {
104
+ pretty?: boolean | undefined;
105
+ preserveCompilationError?: boolean | undefined;
106
+ }): GeneratorFn<void> {
106
107
  if (!isStubbed_RawLambda(this.assertion.assertion)) {
107
108
  try {
108
109
  const lambdas = new Map<string, RawLambda>();
@@ -110,11 +111,13 @@ export class PostValidationAssertionState extends LambdaEditorState {
110
111
  const isolatedLambdas =
111
112
  (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(
112
113
  lambdas,
113
- pretty,
114
+ options?.pretty,
114
115
  )) as Map<string, string>;
115
116
  const grammarText = isolatedLambdas.get(this.lambdaId);
116
117
  this.setLambdaString(grammarText ?? '');
117
- this.clearErrors();
118
+ this.clearErrors({
119
+ preserveCompilationError: options?.preserveCompilationError,
120
+ });
118
121
  } catch (error) {
119
122
  assertErrorThrown(error);
120
123
  this.editorStore.applicationStore.logService.error(
@@ -200,7 +203,10 @@ export class PostValidationParameterState extends LambdaEditorState {
200
203
  }
201
204
  }
202
205
 
203
- *convertLambdaObjectToGrammarString(pretty: boolean): GeneratorFn<void> {
206
+ *convertLambdaObjectToGrammarString(options?: {
207
+ pretty?: boolean | undefined;
208
+ preserveCompilationError?: boolean | undefined;
209
+ }): GeneratorFn<void> {
204
210
  if (this.lambda.body) {
205
211
  try {
206
212
  const lambdas = new Map<string, RawLambda>();
@@ -211,11 +217,13 @@ export class PostValidationParameterState extends LambdaEditorState {
211
217
  const isolatedLambdas =
212
218
  (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(
213
219
  lambdas,
214
- pretty,
220
+ options?.pretty,
215
221
  )) as Map<string, string>;
216
222
  const grammarText = isolatedLambdas.get(this.lambdaId);
217
223
  this.setLambdaString(grammarText ?? '');
218
- this.clearErrors();
224
+ this.clearErrors({
225
+ preserveCompilationError: options?.preserveCompilationError,
226
+ });
219
227
  } catch (error) {
220
228
  assertErrorThrown(error);
221
229
  this.editorStore.applicationStore.logService.error(
@@ -372,7 +380,9 @@ export class PostValidationState {
372
380
  this.servicePostValidationState.editorStore,
373
381
  );
374
382
  this.parametersState.push(_paramState);
375
- yield flowResult(_paramState.convertLambdaObjectToGrammarString(false));
383
+ yield flowResult(
384
+ _paramState.convertLambdaObjectToGrammarString({ pretty: false }),
385
+ );
376
386
  }
377
387
 
378
388
  deleteParam(paramState: PostValidationParameterState): void {
@@ -402,7 +412,9 @@ export class PostValidationState {
402
412
  this.servicePostValidationState.editorStore,
403
413
  );
404
414
  this.assertionStates.push(aState);
405
- yield flowResult(aState.convertLambdaObjectToGrammarString(false));
415
+ yield flowResult(
416
+ aState.convertLambdaObjectToGrammarString({ pretty: false }),
417
+ );
406
418
  }
407
419
 
408
420
  deleteAssertion(assertion: PostValidationAssertion): void {