@finos/legend-application-studio 28.19.57 → 28.19.58

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 (117) hide show
  1. package/lib/components/editor/QuickInput.d.ts.map +1 -1
  2. package/lib/components/editor/QuickInput.js +8 -3
  3. package/lib/components/editor/QuickInput.js.map +1 -1
  4. package/lib/components/editor/command-center/ProjectSearchCommand.d.ts.map +1 -1
  5. package/lib/components/editor/command-center/ProjectSearchCommand.js +8 -3
  6. package/lib/components/editor/command-center/ProjectSearchCommand.js.map +1 -1
  7. package/lib/components/editor/editor-group/connection-editor/DatabaseBuilderWizard.d.ts.map +1 -1
  8. package/lib/components/editor/editor-group/connection-editor/DatabaseBuilderWizard.js +5 -3
  9. package/lib/components/editor/editor-group/connection-editor/DatabaseBuilderWizard.js.map +1 -1
  10. package/lib/components/editor/editor-group/connection-editor/DatabaseModelBuilder.d.ts.map +1 -1
  11. package/lib/components/editor/editor-group/connection-editor/DatabaseModelBuilder.js +5 -3
  12. package/lib/components/editor/editor-group/connection-editor/DatabaseModelBuilder.js.map +1 -1
  13. package/lib/components/editor/editor-group/data-editor/RelationElementsDataEditor.d.ts.map +1 -1
  14. package/lib/components/editor/editor-group/data-editor/RelationElementsDataEditor.js +5 -1
  15. package/lib/components/editor/editor-group/data-editor/RelationElementsDataEditor.js.map +1 -1
  16. package/lib/components/editor/editor-group/data-editor/RelationalCSVDataEditor.d.ts.map +1 -1
  17. package/lib/components/editor/editor-group/data-editor/RelationalCSVDataEditor.js +10 -2
  18. package/lib/components/editor/editor-group/data-editor/RelationalCSVDataEditor.js.map +1 -1
  19. package/lib/components/editor/editor-group/element-generation-editor/ElementGenerationEditor.d.ts.map +1 -1
  20. package/lib/components/editor/editor-group/element-generation-editor/ElementGenerationEditor.js +8 -5
  21. package/lib/components/editor/editor-group/element-generation-editor/ElementGenerationEditor.js.map +1 -1
  22. package/lib/components/editor/editor-group/external-format-editor/DSL_ExternalFormat_SchemaSetElementEditor.d.ts.map +1 -1
  23. package/lib/components/editor/editor-group/external-format-editor/DSL_ExternalFormat_SchemaSetElementEditor.js +4 -2
  24. package/lib/components/editor/editor-group/external-format-editor/DSL_ExternalFormat_SchemaSetElementEditor.js.map +1 -1
  25. package/lib/components/editor/editor-group/function-activator/FunctionEditor.d.ts.map +1 -1
  26. package/lib/components/editor/editor-group/function-activator/FunctionEditor.js +5 -1
  27. package/lib/components/editor/editor-group/function-activator/FunctionEditor.js.map +1 -1
  28. package/lib/components/editor/editor-group/function-activator/testable/FunctionTestableEditor.d.ts.map +1 -1
  29. package/lib/components/editor/editor-group/function-activator/testable/FunctionTestableEditor.js +18 -5
  30. package/lib/components/editor/editor-group/function-activator/testable/FunctionTestableEditor.js.map +1 -1
  31. package/lib/components/editor/editor-group/ingest-editor/IngestDefinitionEditor.d.ts +6 -0
  32. package/lib/components/editor/editor-group/ingest-editor/IngestDefinitionEditor.d.ts.map +1 -1
  33. package/lib/components/editor/editor-group/ingest-editor/IngestDefinitionEditor.js +65 -4
  34. package/lib/components/editor/editor-group/ingest-editor/IngestDefinitionEditor.js.map +1 -1
  35. package/lib/components/editor/editor-group/mapping-editor/EnumerationMappingEditor.d.ts.map +1 -1
  36. package/lib/components/editor/editor-group/mapping-editor/EnumerationMappingEditor.js +9 -6
  37. package/lib/components/editor/editor-group/mapping-editor/EnumerationMappingEditor.js.map +1 -1
  38. package/lib/components/editor/editor-group/mapping-editor/InstanceSetImplementationSourceSelectorModal.d.ts.map +1 -1
  39. package/lib/components/editor/editor-group/mapping-editor/InstanceSetImplementationSourceSelectorModal.js +9 -6
  40. package/lib/components/editor/editor-group/mapping-editor/InstanceSetImplementationSourceSelectorModal.js.map +1 -1
  41. package/lib/components/editor/editor-group/mapping-editor/MappingExecutionBuilder.d.ts.map +1 -1
  42. package/lib/components/editor/editor-group/mapping-editor/MappingExecutionBuilder.js +8 -3
  43. package/lib/components/editor/editor-group/mapping-editor/MappingExecutionBuilder.js.map +1 -1
  44. package/lib/components/editor/editor-group/mapping-editor/MappingTestableEditor.d.ts.map +1 -1
  45. package/lib/components/editor/editor-group/mapping-editor/MappingTestableEditor.js +18 -5
  46. package/lib/components/editor/editor-group/mapping-editor/MappingTestableEditor.js.map +1 -1
  47. package/lib/components/editor/editor-group/mapping-editor/NewMappingElementModal.d.ts.map +1 -1
  48. package/lib/components/editor/editor-group/mapping-editor/NewMappingElementModal.js +9 -6
  49. package/lib/components/editor/editor-group/mapping-editor/NewMappingElementModal.js.map +1 -1
  50. package/lib/components/editor/editor-group/service-editor/NewServiceModal.d.ts.map +1 -1
  51. package/lib/components/editor/editor-group/service-editor/NewServiceModal.js +8 -5
  52. package/lib/components/editor/editor-group/service-editor/NewServiceModal.js.map +1 -1
  53. package/lib/components/editor/editor-group/service-editor/ServiceExecutionEditor.d.ts.map +1 -1
  54. package/lib/components/editor/editor-group/service-editor/ServiceExecutionEditor.js +15 -3
  55. package/lib/components/editor/editor-group/service-editor/ServiceExecutionEditor.js.map +1 -1
  56. package/lib/components/editor/editor-group/service-editor/testable/ServiceTestDataEditor.d.ts.map +1 -1
  57. package/lib/components/editor/editor-group/service-editor/testable/ServiceTestDataEditor.js +10 -2
  58. package/lib/components/editor/editor-group/service-editor/testable/ServiceTestDataEditor.js.map +1 -1
  59. package/lib/components/editor/editor-group/service-editor/testable/ServiceTestsEditor.d.ts.map +1 -1
  60. package/lib/components/editor/editor-group/service-editor/testable/ServiceTestsEditor.js +5 -1
  61. package/lib/components/editor/editor-group/service-editor/testable/ServiceTestsEditor.js.map +1 -1
  62. package/lib/components/editor/editor-group/testable/TestableSharedComponents.d.ts.map +1 -1
  63. package/lib/components/editor/editor-group/testable/TestableSharedComponents.js +19 -5
  64. package/lib/components/editor/editor-group/testable/TestableSharedComponents.js.map +1 -1
  65. package/lib/components/editor/editor-group/uml-editor/ClassQueryBuilder.d.ts.map +1 -1
  66. package/lib/components/editor/editor-group/uml-editor/ClassQueryBuilder.js +8 -5
  67. package/lib/components/editor/editor-group/uml-editor/ClassQueryBuilder.js.map +1 -1
  68. package/lib/components/editor/side-bar/CreateNewElementModal.d.ts.map +1 -1
  69. package/lib/components/editor/side-bar/CreateNewElementModal.js +16 -6
  70. package/lib/components/editor/side-bar/CreateNewElementModal.js.map +1 -1
  71. package/lib/components/editor/side-bar/Explorer.d.ts.map +1 -1
  72. package/lib/components/editor/side-bar/Explorer.js +16 -6
  73. package/lib/components/editor/side-bar/Explorer.js.map +1 -1
  74. package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.d.ts.map +1 -1
  75. package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.js +5 -1
  76. package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.js.map +1 -1
  77. package/lib/components/workspace-setup/CreateProjectModal.d.ts.map +1 -1
  78. package/lib/components/workspace-setup/CreateProjectModal.js +5 -1
  79. package/lib/components/workspace-setup/CreateProjectModal.js.map +1 -1
  80. package/lib/components/workspace-setup/CreateWorkspaceModal.d.ts.map +1 -1
  81. package/lib/components/workspace-setup/CreateWorkspaceModal.js +8 -3
  82. package/lib/components/workspace-setup/CreateWorkspaceModal.js.map +1 -1
  83. package/lib/index.css +1 -1
  84. package/lib/package.json +1 -1
  85. package/lib/stores/editor/editor-state/element-editor-state/ingest/IngestDefinitionEditorState.d.ts +7 -1
  86. package/lib/stores/editor/editor-state/element-editor-state/ingest/IngestDefinitionEditorState.d.ts.map +1 -1
  87. package/lib/stores/editor/editor-state/element-editor-state/ingest/IngestDefinitionEditorState.js +33 -1
  88. package/lib/stores/editor/editor-state/element-editor-state/ingest/IngestDefinitionEditorState.js.map +1 -1
  89. package/package.json +10 -10
  90. package/src/components/editor/QuickInput.tsx +8 -4
  91. package/src/components/editor/command-center/ProjectSearchCommand.tsx +8 -4
  92. package/src/components/editor/editor-group/connection-editor/DatabaseBuilderWizard.tsx +5 -3
  93. package/src/components/editor/editor-group/connection-editor/DatabaseModelBuilder.tsx +5 -3
  94. package/src/components/editor/editor-group/data-editor/RelationElementsDataEditor.tsx +5 -1
  95. package/src/components/editor/editor-group/data-editor/RelationalCSVDataEditor.tsx +10 -2
  96. package/src/components/editor/editor-group/element-generation-editor/ElementGenerationEditor.tsx +8 -6
  97. package/src/components/editor/editor-group/external-format-editor/DSL_ExternalFormat_SchemaSetElementEditor.tsx +4 -2
  98. package/src/components/editor/editor-group/function-activator/FunctionEditor.tsx +5 -1
  99. package/src/components/editor/editor-group/function-activator/testable/FunctionTestableEditor.tsx +18 -6
  100. package/src/components/editor/editor-group/ingest-editor/IngestDefinitionEditor.tsx +174 -12
  101. package/src/components/editor/editor-group/mapping-editor/EnumerationMappingEditor.tsx +8 -6
  102. package/src/components/editor/editor-group/mapping-editor/InstanceSetImplementationSourceSelectorModal.tsx +8 -6
  103. package/src/components/editor/editor-group/mapping-editor/MappingExecutionBuilder.tsx +8 -4
  104. package/src/components/editor/editor-group/mapping-editor/MappingTestableEditor.tsx +18 -6
  105. package/src/components/editor/editor-group/mapping-editor/NewMappingElementModal.tsx +8 -6
  106. package/src/components/editor/editor-group/service-editor/NewServiceModal.tsx +8 -6
  107. package/src/components/editor/editor-group/service-editor/ServiceExecutionEditor.tsx +15 -3
  108. package/src/components/editor/editor-group/service-editor/testable/ServiceTestDataEditor.tsx +10 -2
  109. package/src/components/editor/editor-group/service-editor/testable/ServiceTestsEditor.tsx +5 -1
  110. package/src/components/editor/editor-group/testable/TestableSharedComponents.tsx +19 -5
  111. package/src/components/editor/editor-group/uml-editor/ClassQueryBuilder.tsx +8 -6
  112. package/src/components/editor/side-bar/CreateNewElementModal.tsx +16 -8
  113. package/src/components/editor/side-bar/Explorer.tsx +14 -6
  114. package/src/components/editor/side-bar/WorkspaceSyncConflictResolver.tsx +5 -1
  115. package/src/components/workspace-setup/CreateProjectModal.tsx +5 -1
  116. package/src/components/workspace-setup/CreateWorkspaceModal.tsx +7 -3
  117. package/src/stores/editor/editor-state/element-editor-state/ingest/IngestDefinitionEditorState.ts +61 -1
@@ -127,11 +127,15 @@ export const CreateWorkspaceModal = observer(
127
127
  <Dialog
128
128
  open={setupStore.showCreateWorkspaceModal}
129
129
  onClose={onClose}
130
- TransitionProps={{
131
- onEnter: handleEnter,
130
+ slotProps={{
131
+ transition: {
132
+ onEnter: handleEnter,
133
+ },
134
+ paper: {
135
+ classes: { root: 'search-modal__inner-container' },
136
+ },
132
137
  }}
133
138
  classes={{ container: 'search-modal__container' }}
134
- PaperProps={{ classes: { root: 'search-modal__inner-container' } }}
135
139
  >
136
140
  <Modal
137
141
  darkMode={
@@ -14,7 +14,13 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { IngestDefinition, type PackageableElement } from '@finos/legend-graph';
17
+ import {
18
+ type MatViewDataSet,
19
+ type PackageableElement,
20
+ type V1_RawLineageModel,
21
+ GRAPH_MANAGER_EVENT,
22
+ IngestDefinition,
23
+ } from '@finos/legend-graph';
18
24
  import { ElementEditorState } from '../ElementEditorState.js';
19
25
  import type { EditorStore } from '../../../EditorStore.js';
20
26
  import {
@@ -48,6 +54,7 @@ import {
48
54
  import type { AuthContextProps } from 'react-oidc-context';
49
55
  import { EXTERNAL_APPLICATION_NAVIGATION__generateUrlWithEditorConfig } from '../../../../../__lib__/LegendStudioNavigation.js';
50
56
  import { LEGEND_STUDIO_APP_EVENT } from '../../../../../__lib__/LegendStudioEvent.js';
57
+ import { LineageState } from '@finos/legend-query-builder';
51
58
 
52
59
  const createEditorInitialConfiguration = (): EditorInitialConfiguration => {
53
60
  const config = new EditorInitialConfiguration();
@@ -75,7 +82,9 @@ const PARSER_SECTION = `###Lakehouse`;
75
82
  export class IngestDefinitionEditorState extends ElementEditorState {
76
83
  validateAndDeployResponse: ValidateAndDeploymentResponse | undefined;
77
84
  deploymentState = ActionState.create();
85
+ lineageGenerationState = ActionState.create();
78
86
  deployOnOpen = false;
87
+ lineageState: LineageState;
79
88
 
80
89
  constructor(
81
90
  editorStore: EditorStore,
@@ -93,6 +102,7 @@ export class IngestDefinitionEditorState extends ElementEditorState {
93
102
  setValidateAndDeployResponse: action,
94
103
  init_with_deploy: flow,
95
104
  deploy: flow,
105
+ generateLineage: flow,
96
106
  });
97
107
  if (
98
108
  config?.elementEditorConfiguration instanceof
@@ -101,6 +111,7 @@ export class IngestDefinitionEditorState extends ElementEditorState {
101
111
  this.deployOnOpen =
102
112
  config.elementEditorConfiguration.deployOnOpen ?? false;
103
113
  }
114
+ this.lineageState = new LineageState(this.editorStore.applicationStore);
104
115
  }
105
116
 
106
117
  get deploymentResponse():
@@ -189,6 +200,51 @@ export class IngestDefinitionEditorState extends ElementEditorState {
189
200
  }
190
201
  }
191
202
 
203
+ getMatviewFuncNames(): string[] {
204
+ return (
205
+ this.ingest.TEMPORARY_MATVIEW_FUNCTION_DATA_SETS?.map(
206
+ (dataset) => dataset.name,
207
+ ) ?? []
208
+ );
209
+ }
210
+
211
+ *generateLineage(matviewDataset: MatViewDataSet): GeneratorFn<void> {
212
+ if (this.lineageGenerationState.isInProgress) {
213
+ this.editorStore.applicationStore.notificationService.notifyError(
214
+ 'Lineage generation in progress already',
215
+ );
216
+ return;
217
+ }
218
+ try {
219
+ this.lineageGenerationState.inProgress();
220
+
221
+ const query = matviewDataset.source.function;
222
+
223
+ const lineageRawData =
224
+ (yield this.editorStore.graphManagerState.graphManager.generateLineage(
225
+ query,
226
+ undefined,
227
+ undefined,
228
+ this.editorStore.graphManagerState.graph,
229
+ undefined,
230
+ )) as V1_RawLineageModel;
231
+ const lineageData =
232
+ this.editorStore.graphManagerState.graphManager.buildLineage(
233
+ lineageRawData,
234
+ );
235
+ this.lineageState.setLineageData(lineageData);
236
+ } catch (error) {
237
+ assertErrorThrown(error);
238
+ this.editorStore.applicationStore.logService.error(
239
+ LogEvent.create(GRAPH_MANAGER_EVENT.LINEAGE_GENERATION_FAILURE),
240
+ error,
241
+ );
242
+ this.editorStore.applicationStore.notificationService.notifyError(error);
243
+ } finally {
244
+ this.lineageGenerationState.complete();
245
+ }
246
+ }
247
+
192
248
  reprocess(
193
249
  newElement: PackageableElement,
194
250
  editorStore: EditorStore,
@@ -202,6 +258,10 @@ export class IngestDefinitionEditorState extends ElementEditorState {
202
258
  );
203
259
  }
204
260
 
261
+ get validForLineageViewer(): boolean {
262
+ return Boolean(this.ingest.TEMPORARY_MATVIEW_FUNCTION_DATA_SETS?.length);
263
+ }
264
+
205
265
  get validationMessage(): string {
206
266
  if (!this.ingest.appDirDeployment) {
207
267
  return 'No app dir deployment found';