@finos/legend-application-studio 13.0.0
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/LICENSE +201 -0
- package/README.md +3 -0
- package/lib/application/LegendStudio.d.ts +26 -0
- package/lib/application/LegendStudio.d.ts.map +1 -0
- package/lib/application/LegendStudio.js +60 -0
- package/lib/application/LegendStudio.js.map +1 -0
- package/lib/application/LegendStudioApplicationConfig.d.ts +72 -0
- package/lib/application/LegendStudioApplicationConfig.d.ts.map +1 -0
- package/lib/application/LegendStudioApplicationConfig.js +79 -0
- package/lib/application/LegendStudioApplicationConfig.js.map +1 -0
- package/lib/application/LegendStudioPluginManager.d.ts +33 -0
- package/lib/application/LegendStudioPluginManager.d.ts.map +1 -0
- package/lib/application/LegendStudioPluginManager.js +54 -0
- package/lib/application/LegendStudioPluginManager.js.map +1 -0
- package/lib/components/Core_LegendStudioApplicationPlugin.d.ts +25 -0
- package/lib/components/Core_LegendStudioApplicationPlugin.d.ts.map +1 -0
- package/lib/components/Core_LegendStudioApplicationPlugin.js +79 -0
- package/lib/components/Core_LegendStudioApplicationPlugin.js.map +1 -0
- package/lib/components/DSLExternalFormat_CodeSnippets.d.ts +21 -0
- package/lib/components/DSLExternalFormat_CodeSnippets.d.ts.map +1 -0
- package/lib/components/DSLExternalFormat_CodeSnippets.js +74 -0
- package/lib/components/DSLExternalFormat_CodeSnippets.js.map +1 -0
- package/lib/components/DSLExternalFormat_LegendStudioApplicationPlugin.d.ts +41 -0
- package/lib/components/DSLExternalFormat_LegendStudioApplicationPlugin.d.ts.map +1 -0
- package/lib/components/DSLExternalFormat_LegendStudioApplicationPlugin.js +289 -0
- package/lib/components/DSLExternalFormat_LegendStudioApplicationPlugin.js.map +1 -0
- package/lib/components/DSLExternalFormat_LegendStudioDocumentation.d.ts +21 -0
- package/lib/components/DSLExternalFormat_LegendStudioDocumentation.d.ts.map +1 -0
- package/lib/components/DSLExternalFormat_LegendStudioDocumentation.js +22 -0
- package/lib/components/DSLExternalFormat_LegendStudioDocumentation.js.map +1 -0
- package/lib/components/EditorComponentTestUtils.d.ts +129 -0
- package/lib/components/EditorComponentTestUtils.d.ts.map +1 -0
- package/lib/components/EditorComponentTestUtils.js +250 -0
- package/lib/components/EditorComponentTestUtils.js.map +1 -0
- package/lib/components/LegendStudioAppInfo.d.ts +21 -0
- package/lib/components/LegendStudioAppInfo.d.ts.map +1 -0
- package/lib/components/LegendStudioAppInfo.js +106 -0
- package/lib/components/LegendStudioAppInfo.js.map +1 -0
- package/lib/components/LegendStudioApplication.d.ts +28 -0
- package/lib/components/LegendStudioApplication.d.ts.map +1 -0
- package/lib/components/LegendStudioApplication.js +80 -0
- package/lib/components/LegendStudioApplication.js.map +1 -0
- package/lib/components/LegendStudioBaseStoreProvider.d.ts +25 -0
- package/lib/components/LegendStudioBaseStoreProvider.d.ts.map +1 -0
- package/lib/components/LegendStudioBaseStoreProvider.js +34 -0
- package/lib/components/LegendStudioBaseStoreProvider.js.map +1 -0
- package/lib/components/LegendStudioTestID.d.ts +47 -0
- package/lib/components/LegendStudioTestID.d.ts.map +1 -0
- package/lib/components/LegendStudioTestID.js +52 -0
- package/lib/components/LegendStudioTestID.js.map +1 -0
- package/lib/components/editor/ActivityBar.d.ts +28 -0
- package/lib/components/editor/ActivityBar.d.ts.map +1 -0
- package/lib/components/editor/ActivityBar.js +166 -0
- package/lib/components/editor/ActivityBar.js.map +1 -0
- package/lib/components/editor/Editor.d.ts +18 -0
- package/lib/components/editor/Editor.d.ts.map +1 -0
- package/lib/components/editor/Editor.js +176 -0
- package/lib/components/editor/Editor.js.map +1 -0
- package/lib/components/editor/EditorStoreProvider.d.ts +23 -0
- package/lib/components/editor/EditorStoreProvider.d.ts.map +1 -0
- package/lib/components/editor/EditorStoreProvider.js +39 -0
- package/lib/components/editor/EditorStoreProvider.js.map +1 -0
- package/lib/components/editor/StatusBar.d.ts +22 -0
- package/lib/components/editor/StatusBar.d.ts.map +1 -0
- package/lib/components/editor/StatusBar.js +145 -0
- package/lib/components/editor/StatusBar.js.map +1 -0
- package/lib/components/editor/aux-panel/AuxiliaryPanel.d.ts +20 -0
- package/lib/components/editor/aux-panel/AuxiliaryPanel.d.ts.map +1 -0
- package/lib/components/editor/aux-panel/AuxiliaryPanel.js +58 -0
- package/lib/components/editor/aux-panel/AuxiliaryPanel.js.map +1 -0
- package/lib/components/editor/aux-panel/Console.d.ts +20 -0
- package/lib/components/editor/aux-panel/Console.d.ts.map +1 -0
- package/lib/components/editor/aux-panel/Console.js +21 -0
- package/lib/components/editor/aux-panel/Console.js.map +1 -0
- package/lib/components/editor/aux-panel/DevTool.d.ts +20 -0
- package/lib/components/editor/aux-panel/DevTool.d.ts.map +1 -0
- package/lib/components/editor/aux-panel/DevTool.js +35 -0
- package/lib/components/editor/aux-panel/DevTool.js.map +1 -0
- package/lib/components/editor/command/project-search.css +1 -0
- package/lib/components/editor/command/project-search.css.map +1 -0
- package/lib/components/editor/command-center/ProjectSearchCommand.d.ts +20 -0
- package/lib/components/editor/command-center/ProjectSearchCommand.d.ts.map +1 -0
- package/lib/components/editor/command-center/ProjectSearchCommand.js +60 -0
- package/lib/components/editor/command-center/ProjectSearchCommand.js.map +1 -0
- package/lib/components/editor/edit-panel/EditPanel.d.ts +22 -0
- package/lib/components/editor/edit-panel/EditPanel.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/EditPanel.js +212 -0
- package/lib/components/editor/edit-panel/EditPanel.js.map +1 -0
- package/lib/components/editor/edit-panel/FileGenerationViewer.d.ts +20 -0
- package/lib/components/editor/edit-panel/FileGenerationViewer.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/FileGenerationViewer.js +32 -0
- package/lib/components/editor/edit-panel/FileGenerationViewer.js.map +1 -0
- package/lib/components/editor/edit-panel/FunctionEditor.d.ts +36 -0
- package/lib/components/editor/edit-panel/FunctionEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/FunctionEditor.js +278 -0
- package/lib/components/editor/edit-panel/FunctionEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/GenerationSpecificationEditor.d.ts +20 -0
- package/lib/components/editor/edit-panel/GenerationSpecificationEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/GenerationSpecificationEditor.js +216 -0
- package/lib/components/editor/edit-panel/GenerationSpecificationEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/GrammarTextEditor.d.ts +23 -0
- package/lib/components/editor/edit-panel/GrammarTextEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/GrammarTextEditor.js +892 -0
- package/lib/components/editor/edit-panel/GrammarTextEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/ModelLoader.d.ts +20 -0
- package/lib/components/editor/edit-panel/ModelLoader.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/ModelLoader.js +96 -0
- package/lib/components/editor/edit-panel/ModelLoader.js.map +1 -0
- package/lib/components/editor/edit-panel/RuntimeEditor.d.ts +43 -0
- package/lib/components/editor/edit-panel/RuntimeEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/RuntimeEditor.js +364 -0
- package/lib/components/editor/edit-panel/RuntimeEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/UnsupportedElementEditor.d.ts +26 -0
- package/lib/components/editor/edit-panel/UnsupportedElementEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/UnsupportedElementEditor.js +38 -0
- package/lib/components/editor/edit-panel/UnsupportedElementEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.d.ts +28 -0
- package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.js +75 -0
- package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/connection-editor/DatabaseBuilder.d.ts +31 -0
- package/lib/components/editor/edit-panel/connection-editor/DatabaseBuilder.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/connection-editor/DatabaseBuilder.js +123 -0
- package/lib/components/editor/edit-panel/connection-editor/DatabaseBuilder.js.map +1 -0
- package/lib/components/editor/edit-panel/connection-editor/FlatDataConnectionEditor.d.ts +24 -0
- package/lib/components/editor/edit-panel/connection-editor/FlatDataConnectionEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/connection-editor/FlatDataConnectionEditor.js +26 -0
- package/lib/components/editor/edit-panel/connection-editor/FlatDataConnectionEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.d.ts +66 -0
- package/lib/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.js +321 -0
- package/lib/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/data-editor/DataElementEditor.d.ts +34 -0
- package/lib/components/editor/edit-panel/data-editor/DataElementEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/data-editor/DataElementEditor.js +104 -0
- package/lib/components/editor/edit-panel/data-editor/DataElementEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.d.ts +38 -0
- package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.js +89 -0
- package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/data-editor/RelationalCSVDataEditor.d.ts +24 -0
- package/lib/components/editor/edit-panel/data-editor/RelationalCSVDataEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/data-editor/RelationalCSVDataEditor.js +69 -0
- package/lib/components/editor/edit-panel/data-editor/RelationalCSVDataEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/diff-editor/EntityChangeConflictEditor.d.ts +31 -0
- package/lib/components/editor/edit-panel/diff-editor/EntityChangeConflictEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/diff-editor/EntityChangeConflictEditor.js +449 -0
- package/lib/components/editor/edit-panel/diff-editor/EntityChangeConflictEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/diff-editor/EntityDiffView.d.ts +31 -0
- package/lib/components/editor/edit-panel/diff-editor/EntityDiffView.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/diff-editor/EntityDiffView.js +71 -0
- package/lib/components/editor/edit-panel/diff-editor/EntityDiffView.js.map +1 -0
- package/lib/components/editor/edit-panel/element-generation-editor/ElementGenerationEditor.d.ts +25 -0
- package/lib/components/editor/edit-panel/element-generation-editor/ElementGenerationEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/element-generation-editor/ElementGenerationEditor.js +71 -0
- package/lib/components/editor/edit-panel/element-generation-editor/ElementGenerationEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/element-generation-editor/ElementNativeView.d.ts +23 -0
- package/lib/components/editor/edit-panel/element-generation-editor/ElementNativeView.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/element-generation-editor/ElementNativeView.js +44 -0
- package/lib/components/editor/edit-panel/element-generation-editor/ElementNativeView.js.map +1 -0
- package/lib/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.d.ts +65 -0
- package/lib/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.js +398 -0
- package/lib/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/external-format-editor/BindingElementEditor.d.ts +20 -0
- package/lib/components/editor/edit-panel/external-format-editor/BindingElementEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/external-format-editor/BindingElementEditor.js +146 -0
- package/lib/components/editor/edit-panel/external-format-editor/BindingElementEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/external-format-editor/ExternalFormatConnectionEditor.d.ts +22 -0
- package/lib/components/editor/edit-panel/external-format-editor/ExternalFormatConnectionEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/external-format-editor/ExternalFormatConnectionEditor.js +57 -0
- package/lib/components/editor/edit-panel/external-format-editor/ExternalFormatConnectionEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/external-format-editor/NewSchemaSetDriver.d.ts +31 -0
- package/lib/components/editor/edit-panel/external-format-editor/NewSchemaSetDriver.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/external-format-editor/NewSchemaSetDriver.js +66 -0
- package/lib/components/editor/edit-panel/external-format-editor/NewSchemaSetDriver.js.map +1 -0
- package/lib/components/editor/edit-panel/external-format-editor/SchemaSetElementEditor.d.ts +20 -0
- package/lib/components/editor/edit-panel/external-format-editor/SchemaSetElementEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/external-format-editor/SchemaSetElementEditor.js +153 -0
- package/lib/components/editor/edit-panel/external-format-editor/SchemaSetElementEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/ClassMappingEditor.d.ts +36 -0
- package/lib/components/editor/edit-panel/mapping-editor/ClassMappingEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/ClassMappingEditor.js +131 -0
- package/lib/components/editor/edit-panel/mapping-editor/ClassMappingEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.d.ts +33 -0
- package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.js +166 -0
- package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/FlatDataPropertyMappingEditor.d.ts +26 -0
- package/lib/components/editor/edit-panel/mapping-editor/FlatDataPropertyMappingEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/FlatDataPropertyMappingEditor.js +140 -0
- package/lib/components/editor/edit-panel/mapping-editor/FlatDataPropertyMappingEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/FlatDataRecordTypeTree.d.ts +22 -0
- package/lib/components/editor/edit-panel/mapping-editor/FlatDataRecordTypeTree.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/FlatDataRecordTypeTree.js +78 -0
- package/lib/components/editor/edit-panel/mapping-editor/FlatDataRecordTypeTree.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.d.ts +30 -0
- package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.js +270 -0
- package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.d.ts +38 -0
- package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.js +118 -0
- package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingEditor.d.ts +21 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingEditor.js +115 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.d.ts +65 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.js +266 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingExplorer.d.ts +34 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingExplorer.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingExplorer.js +214 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingExplorer.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestEditor.d.ts +70 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestEditor.js +238 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestsExplorer.d.ts +37 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestsExplorer.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestsExplorer.js +157 -0
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestsExplorer.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.d.ts +20 -0
- package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.js +152 -0
- package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/OperationSetImplementationEditor.d.ts +24 -0
- package/lib/components/editor/edit-panel/mapping-editor/OperationSetImplementationEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/OperationSetImplementationEditor.js +100 -0
- package/lib/components/editor/edit-panel/mapping-editor/OperationSetImplementationEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/PropertyMappingsEditor.d.ts +27 -0
- package/lib/components/editor/edit-panel/mapping-editor/PropertyMappingsEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/PropertyMappingsEditor.js +149 -0
- package/lib/components/editor/edit-panel/mapping-editor/PropertyMappingsEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/PurePropertyMappingEditor.d.ts +26 -0
- package/lib/components/editor/edit-panel/mapping-editor/PurePropertyMappingEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/PurePropertyMappingEditor.js +167 -0
- package/lib/components/editor/edit-panel/mapping-editor/PurePropertyMappingEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/relational/RelationalPropertyMappingEditor.d.ts +26 -0
- package/lib/components/editor/edit-panel/mapping-editor/relational/RelationalPropertyMappingEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/relational/RelationalPropertyMappingEditor.js +134 -0
- package/lib/components/editor/edit-panel/mapping-editor/relational/RelationalPropertyMappingEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/relational/TableOrViewSourceTree.d.ts +45 -0
- package/lib/components/editor/edit-panel/mapping-editor/relational/TableOrViewSourceTree.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/mapping-editor/relational/TableOrViewSourceTree.js +205 -0
- package/lib/components/editor/edit-panel/mapping-editor/relational/TableOrViewSourceTree.js.map +1 -0
- package/lib/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.d.ts +20 -0
- package/lib/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.js +221 -0
- package/lib/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/NewServiceModal.d.ts +27 -0
- package/lib/components/editor/edit-panel/service-editor/NewServiceModal.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/NewServiceModal.js +57 -0
- package/lib/components/editor/edit-panel/service-editor/NewServiceModal.js.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceEditor.d.ts +20 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceEditor.js +127 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceExecutionEditor.d.ts +33 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceExecutionEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceExecutionEditor.js +277 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceExecutionEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.d.ts +24 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.js +111 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceRegistrationEditor.d.ts +20 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceRegistrationEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceRegistrationEditor.js +94 -0
- package/lib/components/editor/edit-panel/service-editor/ServiceRegistrationEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.d.ts +33 -0
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.js +143 -0
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestableEditor.d.ts +37 -0
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestableEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestableEditor.js +61 -0
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestableEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestsEditor.d.ts +15 -0
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestsEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestsEditor.js +179 -0
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestsEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/testable/TestAssertionEditor.d.ts +23 -0
- package/lib/components/editor/edit-panel/testable/TestAssertionEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/testable/TestAssertionEditor.js +109 -0
- package/lib/components/editor/edit-panel/testable/TestAssertionEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.d.ts +23 -0
- package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.js +188 -0
- package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/ClassEditor.d.ts +31 -0
- package/lib/components/editor/edit-panel/uml-editor/ClassEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/ClassEditor.js +521 -0
- package/lib/components/editor/edit-panel/uml-editor/ClassEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/EnumerationEditor.d.ts +23 -0
- package/lib/components/editor/edit-panel/uml-editor/EnumerationEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/EnumerationEditor.js +206 -0
- package/lib/components/editor/edit-panel/uml-editor/EnumerationEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/ProfileEditor.d.ts +23 -0
- package/lib/components/editor/edit-panel/uml-editor/ProfileEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/ProfileEditor.js +84 -0
- package/lib/components/editor/edit-panel/uml-editor/ProfileEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/PropertyEditor.d.ts +25 -0
- package/lib/components/editor/edit-panel/uml-editor/PropertyEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/PropertyEditor.js +92 -0
- package/lib/components/editor/edit-panel/uml-editor/PropertyEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/StereotypeSelector.d.ts +26 -0
- package/lib/components/editor/edit-panel/uml-editor/StereotypeSelector.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/StereotypeSelector.js +58 -0
- package/lib/components/editor/edit-panel/uml-editor/StereotypeSelector.js.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/TaggedValueEditor.d.ts +26 -0
- package/lib/components/editor/edit-panel/uml-editor/TaggedValueEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/TaggedValueEditor.js +69 -0
- package/lib/components/editor/edit-panel/uml-editor/TaggedValueEditor.js.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/UMLEditor.d.ts +20 -0
- package/lib/components/editor/edit-panel/uml-editor/UMLEditor.d.ts.map +1 -0
- package/lib/components/editor/edit-panel/uml-editor/UMLEditor.js +31 -0
- package/lib/components/editor/edit-panel/uml-editor/UMLEditor.js.map +1 -0
- package/lib/components/editor/side-bar/CreateNewElementModal.d.ts +22 -0
- package/lib/components/editor/side-bar/CreateNewElementModal.d.ts.map +1 -0
- package/lib/components/editor/side-bar/CreateNewElementModal.js +285 -0
- package/lib/components/editor/side-bar/CreateNewElementModal.js.map +1 -0
- package/lib/components/editor/side-bar/Explorer.d.ts +20 -0
- package/lib/components/editor/side-bar/Explorer.d.ts.map +1 -0
- package/lib/components/editor/side-bar/Explorer.js +319 -0
- package/lib/components/editor/side-bar/Explorer.js.map +1 -0
- package/lib/components/editor/side-bar/LocalChanges.d.ts +20 -0
- package/lib/components/editor/side-bar/LocalChanges.d.ts.map +1 -0
- package/lib/components/editor/side-bar/LocalChanges.js +113 -0
- package/lib/components/editor/side-bar/LocalChanges.js.map +1 -0
- package/lib/components/editor/side-bar/ProjectOverview.d.ts +23 -0
- package/lib/components/editor/side-bar/ProjectOverview.d.ts.map +1 -0
- package/lib/components/editor/side-bar/ProjectOverview.js +230 -0
- package/lib/components/editor/side-bar/ProjectOverview.js.map +1 -0
- package/lib/components/editor/side-bar/SideBar.d.ts +23 -0
- package/lib/components/editor/side-bar/SideBar.d.ts.map +1 -0
- package/lib/components/editor/side-bar/SideBar.js +57 -0
- package/lib/components/editor/side-bar/SideBar.js.map +1 -0
- package/lib/components/editor/side-bar/WorkflowManager.d.ts +23 -0
- package/lib/components/editor/side-bar/WorkflowManager.d.ts.map +1 -0
- package/lib/components/editor/side-bar/WorkflowManager.js +161 -0
- package/lib/components/editor/side-bar/WorkflowManager.js.map +1 -0
- package/lib/components/editor/side-bar/WorkspaceReview.d.ts +23 -0
- package/lib/components/editor/side-bar/WorkspaceReview.d.ts.map +1 -0
- package/lib/components/editor/side-bar/WorkspaceReview.js +146 -0
- package/lib/components/editor/side-bar/WorkspaceReview.js.map +1 -0
- package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.d.ts +20 -0
- package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.d.ts.map +1 -0
- package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.js +79 -0
- package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.js.map +1 -0
- package/lib/components/editor/side-bar/WorkspaceUpdateConflictResolver.d.ts +20 -0
- package/lib/components/editor/side-bar/WorkspaceUpdateConflictResolver.d.ts.map +1 -0
- package/lib/components/editor/side-bar/WorkspaceUpdateConflictResolver.js +70 -0
- package/lib/components/editor/side-bar/WorkspaceUpdateConflictResolver.js.map +1 -0
- package/lib/components/editor/side-bar/WorkspaceUpdater.d.ts +20 -0
- package/lib/components/editor/side-bar/WorkspaceUpdater.d.ts.map +1 -0
- package/lib/components/editor/side-bar/WorkspaceUpdater.js +103 -0
- package/lib/components/editor/side-bar/WorkspaceUpdater.js.map +1 -0
- package/lib/components/editor/side-bar/testable/GlobalTestRunner.d.ts +24 -0
- package/lib/components/editor/side-bar/testable/GlobalTestRunner.d.ts.map +1 -0
- package/lib/components/editor/side-bar/testable/GlobalTestRunner.js +129 -0
- package/lib/components/editor/side-bar/testable/GlobalTestRunner.js.map +1 -0
- package/lib/components/project-viewer/ProjectViewer.d.ts +18 -0
- package/lib/components/project-viewer/ProjectViewer.d.ts.map +1 -0
- package/lib/components/project-viewer/ProjectViewer.js +166 -0
- package/lib/components/project-viewer/ProjectViewer.js.map +1 -0
- package/lib/components/project-viewer/ProjectViewerStoreProvider.d.ts +23 -0
- package/lib/components/project-viewer/ProjectViewerStoreProvider.d.ts.map +1 -0
- package/lib/components/project-viewer/ProjectViewerStoreProvider.js +36 -0
- package/lib/components/project-viewer/ProjectViewerStoreProvider.js.map +1 -0
- package/lib/components/shared/DiffView.d.ts +35 -0
- package/lib/components/shared/DiffView.d.ts.map +1 -0
- package/lib/components/shared/DiffView.js +94 -0
- package/lib/components/shared/DiffView.js.map +1 -0
- package/lib/components/shared/ElementIconUtils.d.ts +21 -0
- package/lib/components/shared/ElementIconUtils.d.ts.map +1 -0
- package/lib/components/shared/ElementIconUtils.js +96 -0
- package/lib/components/shared/ElementIconUtils.js.map +1 -0
- package/lib/components/shared/MultiplicityBadge.d.ts +21 -0
- package/lib/components/shared/MultiplicityBadge.d.ts.map +1 -0
- package/lib/components/shared/MultiplicityBadge.js +25 -0
- package/lib/components/shared/MultiplicityBadge.js.map +1 -0
- package/lib/components/shared/StudioLambdaEditor.d.ts +40 -0
- package/lib/components/shared/StudioLambdaEditor.d.ts.map +1 -0
- package/lib/components/shared/StudioLambdaEditor.js +50 -0
- package/lib/components/shared/StudioLambdaEditor.js.map +1 -0
- package/lib/components/shared/StudioTextInputEditor.d.ts +28 -0
- package/lib/components/shared/StudioTextInputEditor.d.ts.map +1 -0
- package/lib/components/shared/StudioTextInputEditor.js +36 -0
- package/lib/components/shared/StudioTextInputEditor.js.map +1 -0
- package/lib/components/shared/TypeTree.d.ts +22 -0
- package/lib/components/shared/TypeTree.d.ts.map +1 -0
- package/lib/components/shared/TypeTree.js +165 -0
- package/lib/components/shared/TypeTree.js.map +1 -0
- package/lib/components/workspace-review/WorkspaceReview.d.ts +18 -0
- package/lib/components/workspace-review/WorkspaceReview.d.ts.map +1 -0
- package/lib/components/workspace-review/WorkspaceReview.js +84 -0
- package/lib/components/workspace-review/WorkspaceReview.js.map +1 -0
- package/lib/components/workspace-review/WorkspaceReviewPanel.d.ts +20 -0
- package/lib/components/workspace-review/WorkspaceReviewPanel.d.ts.map +1 -0
- package/lib/components/workspace-review/WorkspaceReviewPanel.js +57 -0
- package/lib/components/workspace-review/WorkspaceReviewPanel.js.map +1 -0
- package/lib/components/workspace-review/WorkspaceReviewSideBar.d.ts +20 -0
- package/lib/components/workspace-review/WorkspaceReviewSideBar.d.ts.map +1 -0
- package/lib/components/workspace-review/WorkspaceReviewSideBar.js +106 -0
- package/lib/components/workspace-review/WorkspaceReviewSideBar.js.map +1 -0
- package/lib/components/workspace-review/WorkspaceReviewStoreProvider.d.ts +22 -0
- package/lib/components/workspace-review/WorkspaceReviewStoreProvider.d.ts.map +1 -0
- package/lib/components/workspace-review/WorkspaceReviewStoreProvider.js +34 -0
- package/lib/components/workspace-review/WorkspaceReviewStoreProvider.js.map +1 -0
- package/lib/components/workspace-setup/ProjectCreateModal.d.ts +20 -0
- package/lib/components/workspace-setup/ProjectCreateModal.d.ts.map +1 -0
- package/lib/components/workspace-setup/ProjectCreateModal.js +203 -0
- package/lib/components/workspace-setup/ProjectCreateModal.js.map +1 -0
- package/lib/components/workspace-setup/ProjectSelector.d.ts +22 -0
- package/lib/components/workspace-setup/ProjectSelector.d.ts.map +1 -0
- package/lib/components/workspace-setup/ProjectSelector.js +65 -0
- package/lib/components/workspace-setup/ProjectSelector.js.map +1 -0
- package/lib/components/workspace-setup/WorkspaceSelector.d.ts +22 -0
- package/lib/components/workspace-setup/WorkspaceSelector.d.ts.map +1 -0
- package/lib/components/workspace-setup/WorkspaceSelector.js +57 -0
- package/lib/components/workspace-setup/WorkspaceSelector.js.map +1 -0
- package/lib/components/workspace-setup/WorkspaceSetup.d.ts +18 -0
- package/lib/components/workspace-setup/WorkspaceSetup.d.ts.map +1 -0
- package/lib/components/workspace-setup/WorkspaceSetup.js +155 -0
- package/lib/components/workspace-setup/WorkspaceSetup.js.map +1 -0
- package/lib/components/workspace-setup/WorkspaceSetupStoreProvider.d.ts +23 -0
- package/lib/components/workspace-setup/WorkspaceSetupStoreProvider.d.ts.map +1 -0
- package/lib/components/workspace-setup/WorkspaceSetupStoreProvider.js +34 -0
- package/lib/components/workspace-setup/WorkspaceSetupStoreProvider.js.map +1 -0
- package/lib/index.css +17 -0
- package/lib/index.css.map +1 -0
- package/lib/index.d.ts +70 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +75 -0
- package/lib/index.js.map +1 -0
- package/lib/package.json +101 -0
- package/lib/stores/AbstractConflictResolutionState.d.ts +39 -0
- package/lib/stores/AbstractConflictResolutionState.d.ts.map +1 -0
- package/lib/stores/AbstractConflictResolutionState.js +32 -0
- package/lib/stores/AbstractConflictResolutionState.js.map +1 -0
- package/lib/stores/ChangeDetectionEvent.d.ts +29 -0
- package/lib/stores/ChangeDetectionEvent.d.ts.map +1 -0
- package/lib/stores/ChangeDetectionEvent.js +31 -0
- package/lib/stores/ChangeDetectionEvent.js.map +1 -0
- package/lib/stores/ChangeDetectionState.d.ts +211 -0
- package/lib/stores/ChangeDetectionState.d.ts.map +1 -0
- package/lib/stores/ChangeDetectionState.js +523 -0
- package/lib/stores/ChangeDetectionState.js.map +1 -0
- package/lib/stores/DSLData_LegendStudioApplicationPlugin_Extension.d.ts +51 -0
- package/lib/stores/DSLData_LegendStudioApplicationPlugin_Extension.d.ts.map +1 -0
- package/lib/stores/DSLData_LegendStudioApplicationPlugin_Extension.js +17 -0
- package/lib/stores/DSLData_LegendStudioApplicationPlugin_Extension.js.map +1 -0
- package/lib/stores/DSLGenerationSpecification_LegendStudioApplicationPlugin_Extension.d.ts +42 -0
- package/lib/stores/DSLGenerationSpecification_LegendStudioApplicationPlugin_Extension.d.ts.map +1 -0
- package/lib/stores/DSLGenerationSpecification_LegendStudioApplicationPlugin_Extension.js +17 -0
- package/lib/stores/DSLGenerationSpecification_LegendStudioApplicationPlugin_Extension.js.map +1 -0
- package/lib/stores/DSLMapping_LegendStudioApplicationPlugin_Extension.d.ts +138 -0
- package/lib/stores/DSLMapping_LegendStudioApplicationPlugin_Extension.d.ts.map +1 -0
- package/lib/stores/DSLMapping_LegendStudioApplicationPlugin_Extension.js +17 -0
- package/lib/stores/DSLMapping_LegendStudioApplicationPlugin_Extension.js.map +1 -0
- package/lib/stores/DSLService_LegendStudioApplicationPlugin_Extension.d.ts +35 -0
- package/lib/stores/DSLService_LegendStudioApplicationPlugin_Extension.d.ts.map +1 -0
- package/lib/stores/DSLService_LegendStudioApplicationPlugin_Extension.js +17 -0
- package/lib/stores/DSLService_LegendStudioApplicationPlugin_Extension.js.map +1 -0
- package/lib/stores/EditorConfig.d.ts +75 -0
- package/lib/stores/EditorConfig.d.ts.map +1 -0
- package/lib/stores/EditorConfig.js +81 -0
- package/lib/stores/EditorConfig.js.map +1 -0
- package/lib/stores/EditorGraphState.d.ts +133 -0
- package/lib/stores/EditorGraphState.d.ts.map +1 -0
- package/lib/stores/EditorGraphState.js +848 -0
- package/lib/stores/EditorGraphState.js.map +1 -0
- package/lib/stores/EditorSDLCState.d.ts +59 -0
- package/lib/stores/EditorSDLCState.d.ts.map +1 -0
- package/lib/stores/EditorSDLCState.js +245 -0
- package/lib/stores/EditorSDLCState.js.map +1 -0
- package/lib/stores/EditorStore.d.ts +174 -0
- package/lib/stores/EditorStore.d.ts.map +1 -0
- package/lib/stores/EditorStore.js +992 -0
- package/lib/stores/EditorStore.js.map +1 -0
- package/lib/stores/EditorStoreTestUtils.d.ts +21 -0
- package/lib/stores/EditorStoreTestUtils.d.ts.map +1 -0
- package/lib/stores/EditorStoreTestUtils.js +54 -0
- package/lib/stores/EditorStoreTestUtils.js.map +1 -0
- package/lib/stores/ExplorerTreeState.d.ts +67 -0
- package/lib/stores/ExplorerTreeState.d.ts.map +1 -0
- package/lib/stores/ExplorerTreeState.js +271 -0
- package/lib/stores/ExplorerTreeState.js.map +1 -0
- package/lib/stores/LegendStudioAppEvent.d.ts +29 -0
- package/lib/stores/LegendStudioAppEvent.d.ts.map +1 -0
- package/lib/stores/LegendStudioAppEvent.js +34 -0
- package/lib/stores/LegendStudioAppEvent.js.map +1 -0
- package/lib/stores/LegendStudioApplicationNavigationContext.d.ts +38 -0
- package/lib/stores/LegendStudioApplicationNavigationContext.d.ts.map +1 -0
- package/lib/stores/LegendStudioApplicationNavigationContext.js +41 -0
- package/lib/stores/LegendStudioApplicationNavigationContext.js.map +1 -0
- package/lib/stores/LegendStudioApplicationPlugin.d.ts +218 -0
- package/lib/stores/LegendStudioApplicationPlugin.d.ts.map +1 -0
- package/lib/stores/LegendStudioApplicationPlugin.js +27 -0
- package/lib/stores/LegendStudioApplicationPlugin.js.map +1 -0
- package/lib/stores/LegendStudioBaseStore.d.ts +38 -0
- package/lib/stores/LegendStudioBaseStore.d.ts.map +1 -0
- package/lib/stores/LegendStudioBaseStore.js +159 -0
- package/lib/stores/LegendStudioBaseStore.js.map +1 -0
- package/lib/stores/LegendStudioCodeSnippets.d.ts +43 -0
- package/lib/stores/LegendStudioCodeSnippets.d.ts.map +1 -0
- package/lib/stores/LegendStudioCodeSnippets.js +307 -0
- package/lib/stores/LegendStudioCodeSnippets.js.map +1 -0
- package/lib/stores/LegendStudioDocumentation.d.ts +63 -0
- package/lib/stores/LegendStudioDocumentation.d.ts.map +1 -0
- package/lib/stores/LegendStudioDocumentation.js +73 -0
- package/lib/stores/LegendStudioDocumentation.js.map +1 -0
- package/lib/stores/LegendStudioEventService.d.ts +23 -0
- package/lib/stores/LegendStudioEventService.d.ts.map +1 -0
- package/lib/stores/LegendStudioEventService.js +29 -0
- package/lib/stores/LegendStudioEventService.js.map +1 -0
- package/lib/stores/LegendStudioRouter.d.ts +76 -0
- package/lib/stores/LegendStudioRouter.d.ts.map +1 -0
- package/lib/stores/LegendStudioRouter.js +119 -0
- package/lib/stores/LegendStudioRouter.js.map +1 -0
- package/lib/stores/StoreRelational_LegendStudioApplicationPlugin_Extension.d.ts +61 -0
- package/lib/stores/StoreRelational_LegendStudioApplicationPlugin_Extension.d.ts.map +1 -0
- package/lib/stores/StoreRelational_LegendStudioApplicationPlugin_Extension.js +17 -0
- package/lib/stores/StoreRelational_LegendStudioApplicationPlugin_Extension.js.map +1 -0
- package/lib/stores/aux-panel-state/DevToolState.d.ts +21 -0
- package/lib/stores/aux-panel-state/DevToolState.d.ts.map +1 -0
- package/lib/stores/aux-panel-state/DevToolState.js +24 -0
- package/lib/stores/aux-panel-state/DevToolState.js.map +1 -0
- package/lib/stores/editor/EditorMode.d.ts +22 -0
- package/lib/stores/editor/EditorMode.d.ts.map +1 -0
- package/lib/stores/editor/EditorMode.js +18 -0
- package/lib/stores/editor/EditorMode.js.map +1 -0
- package/lib/stores/editor/NewElementState.d.ts +125 -0
- package/lib/stores/editor/NewElementState.d.ts.map +1 -0
- package/lib/stores/editor/NewElementState.js +553 -0
- package/lib/stores/editor/NewElementState.js.map +1 -0
- package/lib/stores/editor/StandardEditorMode.d.ts +23 -0
- package/lib/stores/editor/StandardEditorMode.d.ts.map +1 -0
- package/lib/stores/editor/StandardEditorMode.js +28 -0
- package/lib/stores/editor/StandardEditorMode.js.map +1 -0
- package/lib/stores/editor-state/EditorState.d.ts +26 -0
- package/lib/stores/editor-state/EditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/EditorState.js +27 -0
- package/lib/stores/editor-state/EditorState.js.map +1 -0
- package/lib/stores/editor-state/ExternalFormatState.d.ts +42 -0
- package/lib/stores/editor-state/ExternalFormatState.d.ts.map +1 -0
- package/lib/stores/editor-state/ExternalFormatState.js +74 -0
- package/lib/stores/editor-state/ExternalFormatState.js.map +1 -0
- package/lib/stores/editor-state/FileGenerationState.d.ts +44 -0
- package/lib/stores/editor-state/FileGenerationState.d.ts.map +1 -0
- package/lib/stores/editor-state/FileGenerationState.js +217 -0
- package/lib/stores/editor-state/FileGenerationState.js.map +1 -0
- package/lib/stores/editor-state/FileGenerationViewerState.d.ts +27 -0
- package/lib/stores/editor-state/FileGenerationViewerState.d.ts.map +1 -0
- package/lib/stores/editor-state/FileGenerationViewerState.js +52 -0
- package/lib/stores/editor-state/FileGenerationViewerState.js.map +1 -0
- package/lib/stores/editor-state/GenerationSpecificationEditorState.d.ts +40 -0
- package/lib/stores/editor-state/GenerationSpecificationEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/GenerationSpecificationEditorState.js +73 -0
- package/lib/stores/editor-state/GenerationSpecificationEditorState.js.map +1 -0
- package/lib/stores/editor-state/GrammarTextEditorState.d.ts +31 -0
- package/lib/stores/editor-state/GrammarTextEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/GrammarTextEditorState.js +143 -0
- package/lib/stores/editor-state/GrammarTextEditorState.js.map +1 -0
- package/lib/stores/editor-state/GraphGenerationState.d.ts +74 -0
- package/lib/stores/editor-state/GraphGenerationState.d.ts.map +1 -0
- package/lib/stores/editor-state/GraphGenerationState.js +349 -0
- package/lib/stores/editor-state/GraphGenerationState.js.map +1 -0
- package/lib/stores/editor-state/ModelLoaderState.d.ts +52 -0
- package/lib/stores/editor-state/ModelLoaderState.d.ts.map +1 -0
- package/lib/stores/editor-state/ModelLoaderState.js +199 -0
- package/lib/stores/editor-state/ModelLoaderState.js.map +1 -0
- package/lib/stores/editor-state/ProjectConfigurationEditorState.d.ts +53 -0
- package/lib/stores/editor-state/ProjectConfigurationEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/ProjectConfigurationEditorState.js +191 -0
- package/lib/stores/editor-state/ProjectConfigurationEditorState.js.map +1 -0
- package/lib/stores/editor-state/UnsupportedElementEditorState.d.ts +22 -0
- package/lib/stores/editor-state/UnsupportedElementEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/UnsupportedElementEditorState.js +22 -0
- package/lib/stores/editor-state/UnsupportedElementEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/ClassEditorState.d.ts +31 -0
- package/lib/stores/editor-state/element-editor-state/ClassEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/ClassEditorState.js +88 -0
- package/lib/stores/editor-state/element-editor-state/ClassEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/ClassState.d.ts +59 -0
- package/lib/stores/editor-state/element-editor-state/ClassState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/ClassState.js +271 -0
- package/lib/stores/editor-state/element-editor-state/ClassState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/ElementEditorState.d.ts +43 -0
- package/lib/stores/editor-state/element-editor-state/ElementEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/ElementEditorState.js +104 -0
- package/lib/stores/editor-state/element-editor-state/ElementEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/ElementFileGenerationState.d.ts +30 -0
- package/lib/stores/editor-state/element-editor-state/ElementFileGenerationState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/ElementFileGenerationState.js +69 -0
- package/lib/stores/editor-state/element-editor-state/ElementFileGenerationState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/FileGenerationEditorState.d.ts +27 -0
- package/lib/stores/editor-state/element-editor-state/FileGenerationEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/FileGenerationEditorState.js +43 -0
- package/lib/stores/editor-state/element-editor-state/FileGenerationEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/FunctionEditorState.d.ts +46 -0
- package/lib/stores/editor-state/element-editor-state/FunctionEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/FunctionEditorState.js +156 -0
- package/lib/stores/editor-state/element-editor-state/FunctionEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/RuntimeEditorState.d.ts +115 -0
- package/lib/stores/editor-state/element-editor-state/RuntimeEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/RuntimeEditorState.js +522 -0
- package/lib/stores/editor-state/element-editor-state/RuntimeEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/UMLEditorState.d.ts +35 -0
- package/lib/stores/editor-state/element-editor-state/UMLEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/UMLEditorState.js +69 -0
- package/lib/stores/editor-state/element-editor-state/UMLEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/connection/ConnectionEditorState.d.ts +92 -0
- package/lib/stores/editor-state/element-editor-state/connection/ConnectionEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/connection/ConnectionEditorState.js +339 -0
- package/lib/stores/editor-state/element-editor-state/connection/ConnectionEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/connection/DatabaseBuilderState.d.ts +76 -0
- package/lib/stores/editor-state/element-editor-state/connection/DatabaseBuilderState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/connection/DatabaseBuilderState.js +422 -0
- package/lib/stores/editor-state/element-editor-state/connection/DatabaseBuilderState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/data/DataEditorState.d.ts +47 -0
- package/lib/stores/editor-state/element-editor-state/data/DataEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/data/DataEditorState.js +65 -0
- package/lib/stores/editor-state/element-editor-state/data/DataEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/data/EmbeddedDataState.d.ts +80 -0
- package/lib/stores/editor-state/element-editor-state/data/EmbeddedDataState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/data/EmbeddedDataState.js +254 -0
- package/lib/stores/editor-state/element-editor-state/data/EmbeddedDataState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/external-format/BindingEditorState.d.ts +30 -0
- package/lib/stores/editor-state/element-editor-state/external-format/BindingEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/external-format/BindingEditorState.js +47 -0
- package/lib/stores/editor-state/element-editor-state/external-format/BindingEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/external-format/SchemaSetEditorState.d.ts +68 -0
- package/lib/stores/editor-state/element-editor-state/external-format/SchemaSetEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/external-format/SchemaSetEditorState.js +277 -0
- package/lib/stores/editor-state/element-editor-state/external-format/SchemaSetEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/FlatDataInstanceSetImplementationState.d.ts +71 -0
- package/lib/stores/editor-state/element-editor-state/mapping/FlatDataInstanceSetImplementationState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/FlatDataInstanceSetImplementationState.js +236 -0
- package/lib/stores/editor-state/element-editor-state/mapping/FlatDataInstanceSetImplementationState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingEditorState.d.ts +111 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingEditorState.js +888 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingElementDecorator.d.ts +65 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingElementDecorator.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingElementDecorator.js +389 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingElementDecorator.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingElementState.d.ts +46 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingElementState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingElementState.js +73 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingElementState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionState.d.ts +101 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionState.js +448 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingTestState.d.ts +123 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingTestState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingTestState.js +461 -0
- package/lib/stores/editor-state/element-editor-state/mapping/MappingTestState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/PureInstanceSetImplementationState.d.ts +55 -0
- package/lib/stores/editor-state/element-editor-state/mapping/PureInstanceSetImplementationState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/PureInstanceSetImplementationState.js +235 -0
- package/lib/stores/editor-state/element-editor-state/mapping/PureInstanceSetImplementationState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/UnsupportedInstanceSetImplementationState.d.ts +22 -0
- package/lib/stores/editor-state/element-editor-state/mapping/UnsupportedInstanceSetImplementationState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/UnsupportedInstanceSetImplementationState.js +25 -0
- package/lib/stores/editor-state/element-editor-state/mapping/UnsupportedInstanceSetImplementationState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/relational/DatabaseEditorHelper.d.ts +19 -0
- package/lib/stores/editor-state/element-editor-state/mapping/relational/DatabaseEditorHelper.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/relational/DatabaseEditorHelper.js +108 -0
- package/lib/stores/editor-state/element-editor-state/mapping/relational/DatabaseEditorHelper.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/relational/RelationalInstanceSetImplementationState.d.ts +69 -0
- package/lib/stores/editor-state/element-editor-state/mapping/relational/RelationalInstanceSetImplementationState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/mapping/relational/RelationalInstanceSetImplementationState.js +225 -0
- package/lib/stores/editor-state/element-editor-state/mapping/relational/RelationalInstanceSetImplementationState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceEditorState.d.ts +41 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceEditorState.js +76 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceExecutionState.d.ts +158 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceExecutionState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceExecutionState.js +566 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceExecutionState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceRegistrationState.d.ts +55 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceRegistrationState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceRegistrationState.js +207 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceRegistrationState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceTestRunnerState.d.ts +23 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceTestRunnerState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceTestRunnerState.js +24 -0
- package/lib/stores/editor-state/element-editor-state/service/ServiceTestRunnerState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestDataState.d.ts +63 -0
- package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestDataState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestDataState.js +235 -0
- package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestDataState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.d.ts +81 -0
- package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.js +277 -0
- package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestableState.d.ts +54 -0
- package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestableState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestableState.js +208 -0
- package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestableState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/testable/TestAssertionState.d.ts +86 -0
- package/lib/stores/editor-state/element-editor-state/testable/TestAssertionState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/testable/TestAssertionState.js +230 -0
- package/lib/stores/editor-state/element-editor-state/testable/TestAssertionState.js.map +1 -0
- package/lib/stores/editor-state/element-editor-state/testable/TestableEditorState.d.ts +55 -0
- package/lib/stores/editor-state/element-editor-state/testable/TestableEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/element-editor-state/testable/TestableEditorState.js +140 -0
- package/lib/stores/editor-state/element-editor-state/testable/TestableEditorState.js.map +1 -0
- package/lib/stores/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.d.ts +92 -0
- package/lib/stores/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.js +383 -0
- package/lib/stores/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.js.map +1 -0
- package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffEditorState.d.ts +28 -0
- package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffEditorState.d.ts.map +1 -0
- package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffEditorState.js +43 -0
- package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffEditorState.js.map +1 -0
- package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffViewState.d.ts +68 -0
- package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffViewState.d.ts.map +1 -0
- package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffViewState.js +172 -0
- package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffViewState.js.map +1 -0
- package/lib/stores/graphModifier/DSLData_GraphModifierHelper.d.ts +27 -0
- package/lib/stores/graphModifier/DSLData_GraphModifierHelper.d.ts.map +1 -0
- package/lib/stores/graphModifier/DSLData_GraphModifierHelper.js +50 -0
- package/lib/stores/graphModifier/DSLData_GraphModifierHelper.js.map +1 -0
- package/lib/stores/graphModifier/DSLExternalFormat_GraphModifierHelper.d.ts +33 -0
- package/lib/stores/graphModifier/DSLExternalFormat_GraphModifierHelper.d.ts.map +1 -0
- package/lib/stores/graphModifier/DSLExternalFormat_GraphModifierHelper.js +69 -0
- package/lib/stores/graphModifier/DSLExternalFormat_GraphModifierHelper.js.map +1 -0
- package/lib/stores/graphModifier/DSLGeneration_GraphModifierHelper.d.ts +32 -0
- package/lib/stores/graphModifier/DSLGeneration_GraphModifierHelper.d.ts.map +1 -0
- package/lib/stores/graphModifier/DSLGeneration_GraphModifierHelper.js +80 -0
- package/lib/stores/graphModifier/DSLGeneration_GraphModifierHelper.js.map +1 -0
- package/lib/stores/graphModifier/DSLMapping_GraphModifierHelper.d.ts +84 -0
- package/lib/stores/graphModifier/DSLMapping_GraphModifierHelper.d.ts.map +1 -0
- package/lib/stores/graphModifier/DSLMapping_GraphModifierHelper.js +249 -0
- package/lib/stores/graphModifier/DSLMapping_GraphModifierHelper.js.map +1 -0
- package/lib/stores/graphModifier/DSLService_GraphModifierHelper.d.ts +45 -0
- package/lib/stores/graphModifier/DSLService_GraphModifierHelper.d.ts.map +1 -0
- package/lib/stores/graphModifier/DSLService_GraphModifierHelper.js +111 -0
- package/lib/stores/graphModifier/DSLService_GraphModifierHelper.js.map +1 -0
- package/lib/stores/graphModifier/DomainGraphModifierHelper.d.ts +59 -0
- package/lib/stores/graphModifier/DomainGraphModifierHelper.d.ts.map +1 -0
- package/lib/stores/graphModifier/DomainGraphModifierHelper.js +175 -0
- package/lib/stores/graphModifier/DomainGraphModifierHelper.js.map +1 -0
- package/lib/stores/graphModifier/GraphModifierHelper.d.ts +22 -0
- package/lib/stores/graphModifier/GraphModifierHelper.d.ts.map +1 -0
- package/lib/stores/graphModifier/GraphModifierHelper.js +45 -0
- package/lib/stores/graphModifier/GraphModifierHelper.js.map +1 -0
- package/lib/stores/graphModifier/StoreFlatData_GraphModifierHelper.d.ts +21 -0
- package/lib/stores/graphModifier/StoreFlatData_GraphModifierHelper.d.ts.map +1 -0
- package/lib/stores/graphModifier/StoreFlatData_GraphModifierHelper.js +33 -0
- package/lib/stores/graphModifier/StoreFlatData_GraphModifierHelper.js.map +1 -0
- package/lib/stores/graphModifier/StoreRelational_GraphModifierHelper.d.ts +73 -0
- package/lib/stores/graphModifier/StoreRelational_GraphModifierHelper.d.ts.map +1 -0
- package/lib/stores/graphModifier/StoreRelational_GraphModifierHelper.js +194 -0
- package/lib/stores/graphModifier/StoreRelational_GraphModifierHelper.js.map +1 -0
- package/lib/stores/graphModifier/Testable_GraphModifierHelper.d.ts +22 -0
- package/lib/stores/graphModifier/Testable_GraphModifierHelper.d.ts.map +1 -0
- package/lib/stores/graphModifier/Testable_GraphModifierHelper.js +35 -0
- package/lib/stores/graphModifier/Testable_GraphModifierHelper.js.map +1 -0
- package/lib/stores/graphModifier/ValueSpecificationGraphModifierHelper.d.ts +20 -0
- package/lib/stores/graphModifier/ValueSpecificationGraphModifierHelper.d.ts.map +1 -0
- package/lib/stores/graphModifier/ValueSpecificationGraphModifierHelper.js +28 -0
- package/lib/stores/graphModifier/ValueSpecificationGraphModifierHelper.js.map +1 -0
- package/lib/stores/project-viewer/ProjectViewerEditorMode.d.ts +23 -0
- package/lib/stores/project-viewer/ProjectViewerEditorMode.d.ts.map +1 -0
- package/lib/stores/project-viewer/ProjectViewerEditorMode.js +34 -0
- package/lib/stores/project-viewer/ProjectViewerEditorMode.js.map +1 -0
- package/lib/stores/project-viewer/ProjectViewerStore.d.ts +59 -0
- package/lib/stores/project-viewer/ProjectViewerStore.d.ts.map +1 -0
- package/lib/stores/project-viewer/ProjectViewerStore.js +349 -0
- package/lib/stores/project-viewer/ProjectViewerStore.js.map +1 -0
- package/lib/stores/shared/DnDUtil.d.ts +68 -0
- package/lib/stores/shared/DnDUtil.d.ts.map +1 -0
- package/lib/stores/shared/DnDUtil.js +78 -0
- package/lib/stores/shared/DnDUtil.js.map +1 -0
- package/lib/stores/shared/FileGenerationTreeUtil.d.ts +57 -0
- package/lib/stores/shared/FileGenerationTreeUtil.d.ts.map +1 -0
- package/lib/stores/shared/FileGenerationTreeUtil.js +221 -0
- package/lib/stores/shared/FileGenerationTreeUtil.js.map +1 -0
- package/lib/stores/shared/MockDataUtil.d.ts +25 -0
- package/lib/stores/shared/MockDataUtil.d.ts.map +1 -0
- package/lib/stores/shared/MockDataUtil.js +114 -0
- package/lib/stores/shared/MockDataUtil.js.map +1 -0
- package/lib/stores/shared/ModelUtil.d.ts +61 -0
- package/lib/stores/shared/ModelUtil.d.ts.map +1 -0
- package/lib/stores/shared/ModelUtil.js +83 -0
- package/lib/stores/shared/ModelUtil.js.map +1 -0
- package/lib/stores/shared/PackageTreeUtil.d.ts +32 -0
- package/lib/stores/shared/PackageTreeUtil.d.ts.map +1 -0
- package/lib/stores/shared/PackageTreeUtil.js +220 -0
- package/lib/stores/shared/PackageTreeUtil.js.map +1 -0
- package/lib/stores/shared/TreeUtil.d.ts +36 -0
- package/lib/stores/shared/TreeUtil.d.ts.map +1 -0
- package/lib/stores/shared/TreeUtil.js +17 -0
- package/lib/stores/shared/TreeUtil.js.map +1 -0
- package/lib/stores/shared/testable/TestableUtils.d.ts +45 -0
- package/lib/stores/shared/testable/TestableUtils.d.ts.map +1 -0
- package/lib/stores/shared/testable/TestableUtils.js +142 -0
- package/lib/stores/shared/testable/TestableUtils.js.map +1 -0
- package/lib/stores/sidebar-state/LocalChangesState.d.ts +57 -0
- package/lib/stores/sidebar-state/LocalChangesState.d.ts.map +1 -0
- package/lib/stores/sidebar-state/LocalChangesState.js +409 -0
- package/lib/stores/sidebar-state/LocalChangesState.js.map +1 -0
- package/lib/stores/sidebar-state/ProjectOverviewState.d.ts +49 -0
- package/lib/stores/sidebar-state/ProjectOverviewState.d.ts.map +1 -0
- package/lib/stores/sidebar-state/ProjectOverviewState.js +170 -0
- package/lib/stores/sidebar-state/ProjectOverviewState.js.map +1 -0
- package/lib/stores/sidebar-state/WorkflowManagerState.d.ts +110 -0
- package/lib/stores/sidebar-state/WorkflowManagerState.d.ts.map +1 -0
- package/lib/stores/sidebar-state/WorkflowManagerState.js +352 -0
- package/lib/stores/sidebar-state/WorkflowManagerState.js.map +1 -0
- package/lib/stores/sidebar-state/WorkspaceReviewState.d.ts +47 -0
- package/lib/stores/sidebar-state/WorkspaceReviewState.d.ts.map +1 -0
- package/lib/stores/sidebar-state/WorkspaceReviewState.js +254 -0
- package/lib/stores/sidebar-state/WorkspaceReviewState.js.map +1 -0
- package/lib/stores/sidebar-state/WorkspaceSyncState.d.ts +70 -0
- package/lib/stores/sidebar-state/WorkspaceSyncState.d.ts.map +1 -0
- package/lib/stores/sidebar-state/WorkspaceSyncState.js +382 -0
- package/lib/stores/sidebar-state/WorkspaceSyncState.js.map +1 -0
- package/lib/stores/sidebar-state/WorkspaceUpdateConflictResolutionState.d.ts +53 -0
- package/lib/stores/sidebar-state/WorkspaceUpdateConflictResolutionState.d.ts.map +1 -0
- package/lib/stores/sidebar-state/WorkspaceUpdateConflictResolutionState.js +472 -0
- package/lib/stores/sidebar-state/WorkspaceUpdateConflictResolutionState.js.map +1 -0
- package/lib/stores/sidebar-state/WorkspaceUpdaterState.d.ts +36 -0
- package/lib/stores/sidebar-state/WorkspaceUpdaterState.d.ts.map +1 -0
- package/lib/stores/sidebar-state/WorkspaceUpdaterState.js +210 -0
- package/lib/stores/sidebar-state/WorkspaceUpdaterState.js.map +1 -0
- package/lib/stores/sidebar-state/testable/GlobalTestRunnerState.d.ts +102 -0
- package/lib/stores/sidebar-state/testable/GlobalTestRunnerState.d.ts.map +1 -0
- package/lib/stores/sidebar-state/testable/GlobalTestRunnerState.js +413 -0
- package/lib/stores/sidebar-state/testable/GlobalTestRunnerState.js.map +1 -0
- package/lib/stores/workspace-review/WorkspaceReviewStore.d.ts +45 -0
- package/lib/stores/workspace-review/WorkspaceReviewStore.d.ts.map +1 -0
- package/lib/stores/workspace-review/WorkspaceReviewStore.js +185 -0
- package/lib/stores/workspace-review/WorkspaceReviewStore.js.map +1 -0
- package/lib/stores/workspace-setup/WorkspaceSetupStore.d.ts +72 -0
- package/lib/stores/workspace-setup/WorkspaceSetupStore.d.ts.map +1 -0
- package/lib/stores/workspace-setup/WorkspaceSetupStore.js +240 -0
- package/lib/stores/workspace-setup/WorkspaceSetupStore.js.map +1 -0
- package/package.json +101 -0
- package/src/application/LegendStudio.tsx +97 -0
- package/src/application/LegendStudioApplicationConfig.ts +148 -0
- package/src/application/LegendStudioPluginManager.ts +76 -0
- package/src/components/Core_LegendStudioApplicationPlugin.tsx +92 -0
- package/src/components/DSLExternalFormat_CodeSnippets.ts +78 -0
- package/src/components/DSLExternalFormat_LegendStudioApplicationPlugin.tsx +437 -0
- package/src/components/DSLExternalFormat_LegendStudioDocumentation.ts +21 -0
- package/src/components/EditorComponentTestUtils.tsx +452 -0
- package/src/components/LegendStudioAppInfo.tsx +312 -0
- package/src/components/LegendStudioApplication.tsx +223 -0
- package/src/components/LegendStudioBaseStoreProvider.tsx +69 -0
- package/src/components/LegendStudioTestID.ts +63 -0
- package/src/components/editor/ActivityBar.tsx +396 -0
- package/src/components/editor/Editor.tsx +317 -0
- package/src/components/editor/EditorStoreProvider.tsx +69 -0
- package/src/components/editor/StatusBar.tsx +359 -0
- package/src/components/editor/aux-panel/AuxiliaryPanel.tsx +135 -0
- package/src/components/editor/aux-panel/Console.tsx +25 -0
- package/src/components/editor/aux-panel/DevTool.tsx +118 -0
- package/src/components/editor/command-center/ProjectSearchCommand.tsx +146 -0
- package/src/components/editor/edit-panel/EditPanel.tsx +578 -0
- package/src/components/editor/edit-panel/FileGenerationViewer.tsx +106 -0
- package/src/components/editor/edit-panel/FunctionEditor.tsx +838 -0
- package/src/components/editor/edit-panel/GenerationSpecificationEditor.tsx +615 -0
- package/src/components/editor/edit-panel/GrammarTextEditor.tsx +1244 -0
- package/src/components/editor/edit-panel/ModelLoader.tsx +264 -0
- package/src/components/editor/edit-panel/RuntimeEditor.tsx +1114 -0
- package/src/components/editor/edit-panel/UnsupportedElementEditor.tsx +83 -0
- package/src/components/editor/edit-panel/connection-editor/ConnectionEditor.tsx +193 -0
- package/src/components/editor/edit-panel/connection-editor/DatabaseBuilder.tsx +354 -0
- package/src/components/editor/edit-panel/connection-editor/FlatDataConnectionEditor.tsx +51 -0
- package/src/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.tsx +1504 -0
- package/src/components/editor/edit-panel/data-editor/DataElementEditor.tsx +383 -0
- package/src/components/editor/edit-panel/data-editor/EmbeddedDataEditor.tsx +300 -0
- package/src/components/editor/edit-panel/data-editor/RelationalCSVDataEditor.tsx +257 -0
- package/src/components/editor/edit-panel/diff-editor/EntityChangeConflictEditor.tsx +800 -0
- package/src/components/editor/edit-panel/diff-editor/EntityDiffView.tsx +177 -0
- package/src/components/editor/edit-panel/element-generation-editor/ElementGenerationEditor.tsx +203 -0
- package/src/components/editor/edit-panel/element-generation-editor/ElementNativeView.tsx +61 -0
- package/src/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.tsx +1484 -0
- package/src/components/editor/edit-panel/external-format-editor/BindingElementEditor.tsx +482 -0
- package/src/components/editor/edit-panel/external-format-editor/ExternalFormatConnectionEditor.tsx +98 -0
- package/src/components/editor/edit-panel/external-format-editor/NewSchemaSetDriver.tsx +92 -0
- package/src/components/editor/edit-panel/external-format-editor/SchemaSetElementEditor.tsx +583 -0
- package/src/components/editor/edit-panel/mapping-editor/ClassMappingEditor.tsx +307 -0
- package/src/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.tsx +550 -0
- package/src/components/editor/edit-panel/mapping-editor/FlatDataPropertyMappingEditor.tsx +328 -0
- package/src/components/editor/edit-panel/mapping-editor/FlatDataRecordTypeTree.tsx +160 -0
- package/src/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.tsx +614 -0
- package/src/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.tsx +220 -0
- package/src/components/editor/edit-panel/mapping-editor/MappingEditor.tsx +348 -0
- package/src/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.tsx +814 -0
- package/src/components/editor/edit-panel/mapping-editor/MappingExplorer.tsx +594 -0
- package/src/components/editor/edit-panel/mapping-editor/MappingTestEditor.tsx +779 -0
- package/src/components/editor/edit-panel/mapping-editor/MappingTestsExplorer.tsx +508 -0
- package/src/components/editor/edit-panel/mapping-editor/NewMappingElementModal.tsx +279 -0
- package/src/components/editor/edit-panel/mapping-editor/OperationSetImplementationEditor.tsx +265 -0
- package/src/components/editor/edit-panel/mapping-editor/PropertyMappingsEditor.tsx +351 -0
- package/src/components/editor/edit-panel/mapping-editor/PurePropertyMappingEditor.tsx +420 -0
- package/src/components/editor/edit-panel/mapping-editor/relational/RelationalPropertyMappingEditor.tsx +362 -0
- package/src/components/editor/edit-panel/mapping-editor/relational/TableOrViewSourceTree.tsx +390 -0
- package/src/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.tsx +529 -0
- package/src/components/editor/edit-panel/service-editor/NewServiceModal.tsx +115 -0
- package/src/components/editor/edit-panel/service-editor/ServiceEditor.tsx +485 -0
- package/src/components/editor/edit-panel/service-editor/ServiceExecutionEditor.tsx +889 -0
- package/src/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.tsx +368 -0
- package/src/components/editor/edit-panel/service-editor/ServiceRegistrationEditor.tsx +221 -0
- package/src/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.tsx +428 -0
- package/src/components/editor/edit-panel/service-editor/testable/ServiceTestableEditor.tsx +232 -0
- package/src/components/editor/edit-panel/service-editor/testable/ServiceTestsEditor.tsx +749 -0
- package/src/components/editor/edit-panel/testable/TestAssertionEditor.tsx +362 -0
- package/src/components/editor/edit-panel/uml-editor/AssociationEditor.tsx +569 -0
- package/src/components/editor/edit-panel/uml-editor/ClassEditor.tsx +1534 -0
- package/src/components/editor/edit-panel/uml-editor/EnumerationEditor.tsx +600 -0
- package/src/components/editor/edit-panel/uml-editor/ProfileEditor.tsx +250 -0
- package/src/components/editor/edit-panel/uml-editor/PropertyEditor.tsx +239 -0
- package/src/components/editor/edit-panel/uml-editor/StereotypeSelector.tsx +142 -0
- package/src/components/editor/edit-panel/uml-editor/TaggedValueEditor.tsx +199 -0
- package/src/components/editor/edit-panel/uml-editor/UMLEditor.tsx +47 -0
- package/src/components/editor/side-bar/CreateNewElementModal.tsx +518 -0
- package/src/components/editor/side-bar/Explorer.tsx +914 -0
- package/src/components/editor/side-bar/LocalChanges.tsx +433 -0
- package/src/components/editor/side-bar/ProjectOverview.tsx +886 -0
- package/src/components/editor/side-bar/SideBar.tsx +71 -0
- package/src/components/editor/side-bar/WorkflowManager.tsx +529 -0
- package/src/components/editor/side-bar/WorkspaceReview.tsx +341 -0
- package/src/components/editor/side-bar/WorkspaceSyncConflictResolver.tsx +276 -0
- package/src/components/editor/side-bar/WorkspaceUpdateConflictResolver.tsx +206 -0
- package/src/components/editor/side-bar/WorkspaceUpdater.tsx +279 -0
- package/src/components/editor/side-bar/testable/GlobalTestRunner.tsx +459 -0
- package/src/components/project-viewer/ProjectViewer.tsx +358 -0
- package/src/components/project-viewer/ProjectViewerStoreProvider.tsx +56 -0
- package/src/components/shared/DiffView.tsx +151 -0
- package/src/components/shared/ElementIconUtils.tsx +141 -0
- package/src/components/shared/MultiplicityBadge.tsx +39 -0
- package/src/components/shared/StudioLambdaEditor.tsx +140 -0
- package/src/components/shared/StudioTextInputEditor.tsx +83 -0
- package/src/components/shared/TypeTree.tsx +290 -0
- package/src/components/workspace-review/WorkspaceReview.tsx +247 -0
- package/src/components/workspace-review/WorkspaceReviewPanel.tsx +190 -0
- package/src/components/workspace-review/WorkspaceReviewSideBar.tsx +250 -0
- package/src/components/workspace-review/WorkspaceReviewStoreProvider.tsx +58 -0
- package/src/components/workspace-setup/ProjectCreateModal.tsx +756 -0
- package/src/components/workspace-setup/ProjectSelector.tsx +148 -0
- package/src/components/workspace-setup/WorkspaceSelector.tsx +135 -0
- package/src/components/workspace-setup/WorkspaceSetup.tsx +406 -0
- package/src/components/workspace-setup/WorkspaceSetupStoreProvider.tsx +56 -0
- package/src/index.ts +113 -0
- package/src/stores/AbstractConflictResolutionState.ts +55 -0
- package/src/stores/ChangeDetectionEvent.ts +34 -0
- package/src/stores/ChangeDetectionState.ts +819 -0
- package/src/stores/DSLData_LegendStudioApplicationPlugin_Extension.ts +72 -0
- package/src/stores/DSLGenerationSpecification_LegendStudioApplicationPlugin_Extension.ts +49 -0
- package/src/stores/DSLMapping_LegendStudioApplicationPlugin_Extension.ts +230 -0
- package/src/stores/DSLService_LegendStudioApplicationPlugin_Extension.ts +46 -0
- package/src/stores/EditorConfig.ts +81 -0
- package/src/stores/EditorGraphState.ts +1243 -0
- package/src/stores/EditorSDLCState.ts +440 -0
- package/src/stores/EditorStore.ts +1463 -0
- package/src/stores/EditorStoreTestUtils.ts +73 -0
- package/src/stores/ExplorerTreeState.ts +413 -0
- package/src/stores/LegendStudioAppEvent.ts +35 -0
- package/src/stores/LegendStudioApplicationNavigationContext.ts +46 -0
- package/src/stores/LegendStudioApplicationPlugin.ts +331 -0
- package/src/stores/LegendStudioBaseStore.ts +239 -0
- package/src/stores/LegendStudioCodeSnippets.ts +350 -0
- package/src/stores/LegendStudioDocumentation.ts +84 -0
- package/src/stores/LegendStudioEventService.ts +36 -0
- package/src/stores/LegendStudioRouter.ts +222 -0
- package/src/stores/StoreRelational_LegendStudioApplicationPlugin_Extension.ts +100 -0
- package/src/stores/aux-panel-state/DevToolState.ts +27 -0
- package/src/stores/editor/EditorMode.ts +22 -0
- package/src/stores/editor/NewElementState.ts +835 -0
- package/src/stores/editor/StandardEditorMode.ts +35 -0
- package/src/stores/editor-state/EditorState.ts +32 -0
- package/src/stores/editor-state/ExternalFormatState.ts +107 -0
- package/src/stores/editor-state/FileGenerationState.ts +319 -0
- package/src/stores/editor-state/FileGenerationViewerState.ts +70 -0
- package/src/stores/editor-state/GenerationSpecificationEditorState.ts +125 -0
- package/src/stores/editor-state/GrammarTextEditorState.ts +181 -0
- package/src/stores/editor-state/GraphGenerationState.ts +554 -0
- package/src/stores/editor-state/ModelLoaderState.ts +278 -0
- package/src/stores/editor-state/ProjectConfigurationEditorState.ts +300 -0
- package/src/stores/editor-state/UnsupportedElementEditorState.ts +28 -0
- package/src/stores/editor-state/element-editor-state/ClassEditorState.ts +140 -0
- package/src/stores/editor-state/element-editor-state/ClassState.ts +419 -0
- package/src/stores/editor-state/element-editor-state/ElementEditorState.ts +159 -0
- package/src/stores/editor-state/element-editor-state/ElementFileGenerationState.ts +94 -0
- package/src/stores/editor-state/element-editor-state/FileGenerationEditorState.ts +69 -0
- package/src/stores/editor-state/element-editor-state/FunctionEditorState.ts +231 -0
- package/src/stores/editor-state/element-editor-state/RuntimeEditorState.ts +935 -0
- package/src/stores/editor-state/element-editor-state/UMLEditorState.ts +84 -0
- package/src/stores/editor-state/element-editor-state/connection/ConnectionEditorState.ts +475 -0
- package/src/stores/editor-state/element-editor-state/connection/DatabaseBuilderState.ts +637 -0
- package/src/stores/editor-state/element-editor-state/data/DataEditorState.ts +100 -0
- package/src/stores/editor-state/element-editor-state/data/EmbeddedDataState.ts +351 -0
- package/src/stores/editor-state/element-editor-state/external-format/BindingEditorState.ts +61 -0
- package/src/stores/editor-state/element-editor-state/external-format/SchemaSetEditorState.ts +397 -0
- package/src/stores/editor-state/element-editor-state/mapping/FlatDataInstanceSetImplementationState.ts +397 -0
- package/src/stores/editor-state/element-editor-state/mapping/MappingEditorState.ts +1528 -0
- package/src/stores/editor-state/element-editor-state/mapping/MappingElementDecorator.ts +794 -0
- package/src/stores/editor-state/element-editor-state/mapping/MappingElementState.ts +111 -0
- package/src/stores/editor-state/element-editor-state/mapping/MappingExecutionState.ts +895 -0
- package/src/stores/editor-state/element-editor-state/mapping/MappingTestState.ts +803 -0
- package/src/stores/editor-state/element-editor-state/mapping/PureInstanceSetImplementationState.ts +349 -0
- package/src/stores/editor-state/element-editor-state/mapping/UnsupportedInstanceSetImplementationState.ts +27 -0
- package/src/stores/editor-state/element-editor-state/mapping/relational/DatabaseEditorHelper.tsx +134 -0
- package/src/stores/editor-state/element-editor-state/mapping/relational/RelationalInstanceSetImplementationState.ts +350 -0
- package/src/stores/editor-state/element-editor-state/service/ServiceEditorState.ts +114 -0
- package/src/stores/editor-state/element-editor-state/service/ServiceExecutionState.ts +907 -0
- package/src/stores/editor-state/element-editor-state/service/ServiceRegistrationState.ts +312 -0
- package/src/stores/editor-state/element-editor-state/service/ServiceTestRunnerState.ts +31 -0
- package/src/stores/editor-state/element-editor-state/service/testable/ServiceTestDataState.ts +365 -0
- package/src/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.ts +405 -0
- package/src/stores/editor-state/element-editor-state/service/testable/ServiceTestableState.ts +293 -0
- package/src/stores/editor-state/element-editor-state/testable/TestAssertionState.ts +319 -0
- package/src/stores/editor-state/element-editor-state/testable/TestableEditorState.ts +205 -0
- package/src/stores/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.ts +547 -0
- package/src/stores/editor-state/entity-diff-editor-state/EntityDiffEditorState.ts +48 -0
- package/src/stores/editor-state/entity-diff-editor-state/EntityDiffViewState.ts +228 -0
- package/src/stores/graphModifier/DSLData_GraphModifierHelper.ts +104 -0
- package/src/stores/graphModifier/DSLExternalFormat_GraphModifierHelper.ts +138 -0
- package/src/stores/graphModifier/DSLGeneration_GraphModifierHelper.ts +188 -0
- package/src/stores/graphModifier/DSLMapping_GraphModifierHelper.ts +563 -0
- package/src/stores/graphModifier/DSLService_GraphModifierHelper.ts +243 -0
- package/src/stores/graphModifier/DomainGraphModifierHelper.ts +349 -0
- package/src/stores/graphModifier/GraphModifierHelper.ts +80 -0
- package/src/stores/graphModifier/StoreFlatData_GraphModifierHelper.ts +60 -0
- package/src/stores/graphModifier/StoreRelational_GraphModifierHelper.ts +413 -0
- package/src/stores/graphModifier/Testable_GraphModifierHelper.ts +58 -0
- package/src/stores/graphModifier/ValueSpecificationGraphModifierHelper.ts +41 -0
- package/src/stores/project-viewer/ProjectViewerEditorMode.ts +59 -0
- package/src/stores/project-viewer/ProjectViewerStore.ts +597 -0
- package/src/stores/shared/DnDUtil.ts +102 -0
- package/src/stores/shared/FileGenerationTreeUtil.ts +340 -0
- package/src/stores/shared/MockDataUtil.ts +191 -0
- package/src/stores/shared/ModelUtil.ts +87 -0
- package/src/stores/shared/PackageTreeUtil.ts +310 -0
- package/src/stores/shared/TreeUtil.ts +49 -0
- package/src/stores/shared/testable/TestableUtils.ts +213 -0
- package/src/stores/sidebar-state/LocalChangesState.ts +689 -0
- package/src/stores/sidebar-state/ProjectOverviewState.ts +287 -0
- package/src/stores/sidebar-state/WorkflowManagerState.ts +648 -0
- package/src/stores/sidebar-state/WorkspaceReviewState.ts +384 -0
- package/src/stores/sidebar-state/WorkspaceSyncState.ts +578 -0
- package/src/stores/sidebar-state/WorkspaceUpdateConflictResolutionState.ts +728 -0
- package/src/stores/sidebar-state/WorkspaceUpdaterState.ts +358 -0
- package/src/stores/sidebar-state/testable/GlobalTestRunnerState.ts +576 -0
- package/src/stores/workspace-review/WorkspaceReviewStore.ts +272 -0
- package/src/stores/workspace-setup/WorkspaceSetupStore.ts +374 -0
- package/tsconfig.json +256 -0
|
@@ -0,0 +1,1243 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { action, computed, flowResult, makeAutoObservable } from 'mobx';
|
|
18
|
+
import { CHANGE_DETECTION_EVENT } from './ChangeDetectionEvent.js';
|
|
19
|
+
import { GRAPH_EDITOR_MODE, AUX_PANEL_MODE } from './EditorConfig.js';
|
|
20
|
+
import {
|
|
21
|
+
type GeneratorFn,
|
|
22
|
+
type PlainObject,
|
|
23
|
+
LogEvent,
|
|
24
|
+
assertType,
|
|
25
|
+
UnsupportedOperationError,
|
|
26
|
+
assertErrorThrown,
|
|
27
|
+
assertTrue,
|
|
28
|
+
isNonNullable,
|
|
29
|
+
NetworkClientError,
|
|
30
|
+
guaranteeNonNullable,
|
|
31
|
+
StopWatch,
|
|
32
|
+
filterByType,
|
|
33
|
+
ActionState,
|
|
34
|
+
} from '@finos/legend-shared';
|
|
35
|
+
import type { EditorStore } from './EditorStore.js';
|
|
36
|
+
import { ElementEditorState } from './editor-state/element-editor-state/ElementEditorState.js';
|
|
37
|
+
import { GraphGenerationState } from './editor-state/GraphGenerationState.js';
|
|
38
|
+
import { MODEL_UPDATER_INPUT_TYPE } from './editor-state/ModelLoaderState.js';
|
|
39
|
+
import type { DSL_LegendStudioApplicationPlugin_Extension } from './LegendStudioApplicationPlugin.js';
|
|
40
|
+
import type { Entity } from '@finos/legend-storage';
|
|
41
|
+
import {
|
|
42
|
+
type EntityChange,
|
|
43
|
+
type ProjectDependency,
|
|
44
|
+
EntityChangeType,
|
|
45
|
+
ProjectConfiguration,
|
|
46
|
+
applyEntityChanges,
|
|
47
|
+
} from '@finos/legend-server-sdlc';
|
|
48
|
+
import {
|
|
49
|
+
ProjectVersionEntities,
|
|
50
|
+
ProjectData,
|
|
51
|
+
ProjectDependencyCoordinates,
|
|
52
|
+
generateGAVCoordinates,
|
|
53
|
+
} from '@finos/legend-server-depot';
|
|
54
|
+
import {
|
|
55
|
+
type SetImplementation,
|
|
56
|
+
type PackageableElement,
|
|
57
|
+
GRAPH_MANAGER_EVENT,
|
|
58
|
+
CompilationError,
|
|
59
|
+
EngineError,
|
|
60
|
+
extractSourceInformationCoordinates,
|
|
61
|
+
Package,
|
|
62
|
+
PureInstanceSetImplementation,
|
|
63
|
+
Profile,
|
|
64
|
+
OperationSetImplementation,
|
|
65
|
+
PrimitiveType,
|
|
66
|
+
Enumeration,
|
|
67
|
+
Class,
|
|
68
|
+
Association,
|
|
69
|
+
Mapping,
|
|
70
|
+
ConcreteFunctionDefinition,
|
|
71
|
+
Service,
|
|
72
|
+
FlatData,
|
|
73
|
+
FlatDataInstanceSetImplementation,
|
|
74
|
+
EmbeddedFlatDataPropertyMapping,
|
|
75
|
+
PackageableConnection,
|
|
76
|
+
PackageableRuntime,
|
|
77
|
+
FileGenerationSpecification,
|
|
78
|
+
GenerationSpecification,
|
|
79
|
+
Measure,
|
|
80
|
+
Unit,
|
|
81
|
+
Database,
|
|
82
|
+
SectionIndex,
|
|
83
|
+
RootRelationalInstanceSetImplementation,
|
|
84
|
+
EmbeddedRelationalInstanceSetImplementation,
|
|
85
|
+
AggregationAwareSetImplementation,
|
|
86
|
+
DependencyGraphBuilderError,
|
|
87
|
+
GraphDataDeserializationError,
|
|
88
|
+
GraphBuilderError,
|
|
89
|
+
type GraphBuilderReport,
|
|
90
|
+
GraphManagerTelemetry,
|
|
91
|
+
DataElement,
|
|
92
|
+
} from '@finos/legend-graph';
|
|
93
|
+
import {
|
|
94
|
+
type LambdaEditorState,
|
|
95
|
+
ActionAlertActionType,
|
|
96
|
+
ActionAlertType,
|
|
97
|
+
} from '@finos/legend-application';
|
|
98
|
+
import { CONFIGURATION_EDITOR_TAB } from './editor-state/ProjectConfigurationEditorState.js';
|
|
99
|
+
import type { DSLMapping_LegendStudioApplicationPlugin_Extension } from './DSLMapping_LegendStudioApplicationPlugin_Extension.js';
|
|
100
|
+
import { graph_dispose } from './graphModifier/GraphModifierHelper.js';
|
|
101
|
+
import {
|
|
102
|
+
PACKAGEABLE_ELEMENT_TYPE,
|
|
103
|
+
SET_IMPLEMENTATION_TYPE,
|
|
104
|
+
} from './shared/ModelUtil.js';
|
|
105
|
+
import { GlobalTestRunnerState } from './sidebar-state/testable/GlobalTestRunnerState.js';
|
|
106
|
+
|
|
107
|
+
export enum GraphBuilderStatus {
|
|
108
|
+
SUCCEEDED = 'SUCCEEDED',
|
|
109
|
+
FAILED = 'FAILED',
|
|
110
|
+
REDIRECTED_TO_TEXT_MODE = 'REDIRECTED_TO_TEXT_MODE',
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export interface GraphBuilderResult {
|
|
114
|
+
status: GraphBuilderStatus;
|
|
115
|
+
error?: Error;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
export class EditorGraphState {
|
|
119
|
+
editorStore: EditorStore;
|
|
120
|
+
graphGenerationState: GraphGenerationState;
|
|
121
|
+
isInitializingGraph = false;
|
|
122
|
+
isRunningGlobalCompile = false;
|
|
123
|
+
isRunningGlobalGenerate = false;
|
|
124
|
+
isApplicationLeavingTextMode = false;
|
|
125
|
+
isUpdatingGraph = false; // critical synchronous update to refresh the graph
|
|
126
|
+
isUpdatingApplication = false; // including graph update and async operations such as change detection
|
|
127
|
+
|
|
128
|
+
constructor(editorStore: EditorStore) {
|
|
129
|
+
makeAutoObservable(this, {
|
|
130
|
+
editorStore: false,
|
|
131
|
+
graphGenerationState: false,
|
|
132
|
+
getPackageableElementType: false,
|
|
133
|
+
getSetImplementationType: false,
|
|
134
|
+
hasCompilationError: computed,
|
|
135
|
+
clearCompilationError: action,
|
|
136
|
+
});
|
|
137
|
+
|
|
138
|
+
this.editorStore = editorStore;
|
|
139
|
+
this.graphGenerationState = new GraphGenerationState(this.editorStore);
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
get hasCompilationError(): boolean {
|
|
143
|
+
return (
|
|
144
|
+
Boolean(this.editorStore.grammarTextEditorState.error) ||
|
|
145
|
+
this.editorStore.openedEditorStates
|
|
146
|
+
.filter(filterByType(ElementEditorState))
|
|
147
|
+
.some((editorState) => editorState.hasCompilationError)
|
|
148
|
+
);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
clearCompilationError(): void {
|
|
152
|
+
this.editorStore.grammarTextEditorState.setError(undefined);
|
|
153
|
+
this.editorStore.openedEditorStates
|
|
154
|
+
.filter(filterByType(ElementEditorState))
|
|
155
|
+
.forEach((editorState) => editorState.clearCompilationError());
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
get isApplicationUpdateOperationIsRunning(): boolean {
|
|
159
|
+
return (
|
|
160
|
+
this.isRunningGlobalCompile ||
|
|
161
|
+
this.isRunningGlobalGenerate ||
|
|
162
|
+
this.isApplicationLeavingTextMode ||
|
|
163
|
+
this.isUpdatingApplication ||
|
|
164
|
+
this.isInitializingGraph
|
|
165
|
+
);
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
checkIfApplicationUpdateOperationIsRunning(): boolean {
|
|
169
|
+
if (this.isRunningGlobalGenerate) {
|
|
170
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
171
|
+
'Please wait for model generation to complete',
|
|
172
|
+
);
|
|
173
|
+
return true;
|
|
174
|
+
}
|
|
175
|
+
if (this.isRunningGlobalCompile) {
|
|
176
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
177
|
+
'Please wait for graph compilation to complete',
|
|
178
|
+
);
|
|
179
|
+
return true;
|
|
180
|
+
}
|
|
181
|
+
if (this.isApplicationLeavingTextMode) {
|
|
182
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
183
|
+
'Please wait for editor to leave text mode completely',
|
|
184
|
+
);
|
|
185
|
+
return true;
|
|
186
|
+
}
|
|
187
|
+
if (this.isUpdatingApplication) {
|
|
188
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
189
|
+
'Please wait for editor state to rebuild',
|
|
190
|
+
);
|
|
191
|
+
return true;
|
|
192
|
+
}
|
|
193
|
+
if (this.isInitializingGraph) {
|
|
194
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
195
|
+
'Please wait for editor initialization to complete',
|
|
196
|
+
);
|
|
197
|
+
return true;
|
|
198
|
+
}
|
|
199
|
+
return false;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
*buildGraph(entities: Entity[]): GeneratorFn<GraphBuilderResult> {
|
|
203
|
+
try {
|
|
204
|
+
this.isInitializingGraph = true;
|
|
205
|
+
const stopWatch = new StopWatch();
|
|
206
|
+
|
|
207
|
+
// reset
|
|
208
|
+
this.editorStore.graphManagerState.resetGraph();
|
|
209
|
+
|
|
210
|
+
// fetch and build dependencies
|
|
211
|
+
stopWatch.record();
|
|
212
|
+
const dependencyManager =
|
|
213
|
+
this.editorStore.graphManagerState.createEmptyDependencyManager();
|
|
214
|
+
this.editorStore.graphManagerState.graph.dependencyManager =
|
|
215
|
+
dependencyManager;
|
|
216
|
+
this.editorStore.graphManagerState.dependenciesBuildState.setMessage(
|
|
217
|
+
`Fetching dependencies...`,
|
|
218
|
+
);
|
|
219
|
+
const dependencyEntitiesIndex = (yield flowResult(
|
|
220
|
+
this.getIndexedDependencyEntities(),
|
|
221
|
+
)) as Map<string, Entity[]>;
|
|
222
|
+
stopWatch.record(GRAPH_MANAGER_EVENT.GRAPH_DEPENDENCIES_FETCHED);
|
|
223
|
+
|
|
224
|
+
const dependency_buildReport =
|
|
225
|
+
(yield this.editorStore.graphManagerState.graphManager.buildDependencies(
|
|
226
|
+
this.editorStore.graphManagerState.coreModel,
|
|
227
|
+
this.editorStore.graphManagerState.systemModel,
|
|
228
|
+
dependencyManager,
|
|
229
|
+
dependencyEntitiesIndex,
|
|
230
|
+
this.editorStore.graphManagerState.dependenciesBuildState,
|
|
231
|
+
)) as GraphBuilderReport;
|
|
232
|
+
dependency_buildReport.timings[
|
|
233
|
+
GRAPH_MANAGER_EVENT.GRAPH_DEPENDENCIES_FETCHED
|
|
234
|
+
] = stopWatch.getRecord(GRAPH_MANAGER_EVENT.GRAPH_DEPENDENCIES_FETCHED);
|
|
235
|
+
|
|
236
|
+
// build graph
|
|
237
|
+
const graph_buildReport =
|
|
238
|
+
(yield this.editorStore.graphManagerState.graphManager.buildGraph(
|
|
239
|
+
this.editorStore.graphManagerState.graph,
|
|
240
|
+
entities,
|
|
241
|
+
this.editorStore.graphManagerState.graphBuildState,
|
|
242
|
+
{
|
|
243
|
+
TEMPORARY__preserveSectionIndex:
|
|
244
|
+
this.editorStore.applicationStore.config.options
|
|
245
|
+
.TEMPORARY__preserveSectionIndex,
|
|
246
|
+
},
|
|
247
|
+
)) as GraphBuilderReport;
|
|
248
|
+
|
|
249
|
+
// build generations
|
|
250
|
+
const generation_buildReport =
|
|
251
|
+
(yield this.editorStore.graphManagerState.graphManager.buildGenerations(
|
|
252
|
+
this.editorStore.graphManagerState.graph,
|
|
253
|
+
this.graphGenerationState.generatedEntities,
|
|
254
|
+
this.editorStore.graphManagerState.generationsBuildState,
|
|
255
|
+
)) as GraphBuilderReport;
|
|
256
|
+
|
|
257
|
+
// report
|
|
258
|
+
stopWatch.record(GRAPH_MANAGER_EVENT.GRAPH_INITIALIZED);
|
|
259
|
+
const graphBuilderReportData = {
|
|
260
|
+
timings: {
|
|
261
|
+
[GRAPH_MANAGER_EVENT.GRAPH_INITIALIZED]: stopWatch.getRecord(
|
|
262
|
+
GRAPH_MANAGER_EVENT.GRAPH_INITIALIZED,
|
|
263
|
+
),
|
|
264
|
+
},
|
|
265
|
+
dependencies: dependency_buildReport,
|
|
266
|
+
graph: graph_buildReport,
|
|
267
|
+
generations: generation_buildReport,
|
|
268
|
+
};
|
|
269
|
+
this.editorStore.applicationStore.log.info(
|
|
270
|
+
LogEvent.create(GRAPH_MANAGER_EVENT.GRAPH_INITIALIZED),
|
|
271
|
+
graphBuilderReportData,
|
|
272
|
+
);
|
|
273
|
+
GraphManagerTelemetry.logEvent_GraphInitialized(
|
|
274
|
+
this.editorStore.applicationStore.telemetryService,
|
|
275
|
+
graphBuilderReportData,
|
|
276
|
+
);
|
|
277
|
+
|
|
278
|
+
// add generation specification if model generation elements exists in graph and no generation specification
|
|
279
|
+
yield flowResult(
|
|
280
|
+
this.graphGenerationState.possiblyAddMissingGenerationSpecifications(),
|
|
281
|
+
);
|
|
282
|
+
|
|
283
|
+
return {
|
|
284
|
+
status: GraphBuilderStatus.SUCCEEDED,
|
|
285
|
+
};
|
|
286
|
+
} catch (error) {
|
|
287
|
+
assertErrorThrown(error);
|
|
288
|
+
this.editorStore.applicationStore.log.error(
|
|
289
|
+
LogEvent.create(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_FAILURE),
|
|
290
|
+
error,
|
|
291
|
+
);
|
|
292
|
+
if (error instanceof DependencyGraphBuilderError) {
|
|
293
|
+
this.editorStore.graphManagerState.graphBuildState.fail();
|
|
294
|
+
// no recovery if dependency models cannot be built, this makes assumption that all dependencies models are compiled successfully
|
|
295
|
+
// TODO: we might want to handle this more gracefully when we can show people the dependency model element in the future
|
|
296
|
+
this.editorStore.applicationStore.notifyError(
|
|
297
|
+
`Can't initialize dependency models. Error: ${error.message}`,
|
|
298
|
+
);
|
|
299
|
+
const projectConfigurationEditorState =
|
|
300
|
+
this.editorStore.projectConfigurationEditorState;
|
|
301
|
+
projectConfigurationEditorState.setSelectedTab(
|
|
302
|
+
CONFIGURATION_EDITOR_TAB.PROJECT_DEPENDENCIES,
|
|
303
|
+
);
|
|
304
|
+
this.editorStore.setCurrentEditorState(projectConfigurationEditorState);
|
|
305
|
+
} else if (error instanceof GraphDataDeserializationError) {
|
|
306
|
+
// if something goes wrong with de-serialization, redirect to model loader to fix
|
|
307
|
+
this.redirectToModelLoaderForDebugging(error);
|
|
308
|
+
} else if (error instanceof NetworkClientError) {
|
|
309
|
+
this.editorStore.graphManagerState.graphBuildState.fail();
|
|
310
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
311
|
+
`Can't build graph. Error: ${error.message}`,
|
|
312
|
+
);
|
|
313
|
+
} else {
|
|
314
|
+
// TODO: we should split this into 2 notifications when we support multiple notifications
|
|
315
|
+
this.editorStore.applicationStore.notifyError(
|
|
316
|
+
`Can't build graph. Redirected to text mode for debugging. Error: ${error.message}`,
|
|
317
|
+
);
|
|
318
|
+
try {
|
|
319
|
+
const editorGrammar =
|
|
320
|
+
(yield this.editorStore.graphManagerState.graphManager.entitiesToPureCode(
|
|
321
|
+
entities,
|
|
322
|
+
)) as string;
|
|
323
|
+
yield flowResult(
|
|
324
|
+
this.editorStore.grammarTextEditorState.setGraphGrammarText(
|
|
325
|
+
editorGrammar,
|
|
326
|
+
),
|
|
327
|
+
);
|
|
328
|
+
} catch (error2) {
|
|
329
|
+
assertErrorThrown(error2);
|
|
330
|
+
this.editorStore.applicationStore.log.error(
|
|
331
|
+
LogEvent.create(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_FAILURE),
|
|
332
|
+
error2,
|
|
333
|
+
);
|
|
334
|
+
if (error2 instanceof NetworkClientError) {
|
|
335
|
+
// in case the server cannot even transform the JSON due to corrupted protocol, we can redirect to model loader
|
|
336
|
+
this.redirectToModelLoaderForDebugging(error2);
|
|
337
|
+
return {
|
|
338
|
+
status: GraphBuilderStatus.FAILED,
|
|
339
|
+
error: error2,
|
|
340
|
+
};
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
this.editorStore.setGraphEditMode(GRAPH_EDITOR_MODE.GRAMMAR_TEXT);
|
|
344
|
+
yield flowResult(
|
|
345
|
+
this.globalCompileInTextMode({
|
|
346
|
+
ignoreBlocking: true,
|
|
347
|
+
suppressCompilationFailureMessage: true,
|
|
348
|
+
}),
|
|
349
|
+
);
|
|
350
|
+
return {
|
|
351
|
+
status: GraphBuilderStatus.REDIRECTED_TO_TEXT_MODE,
|
|
352
|
+
error,
|
|
353
|
+
};
|
|
354
|
+
}
|
|
355
|
+
return {
|
|
356
|
+
status: GraphBuilderStatus.FAILED,
|
|
357
|
+
error,
|
|
358
|
+
};
|
|
359
|
+
} finally {
|
|
360
|
+
this.isInitializingGraph = false;
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
private redirectToModelLoaderForDebugging(error: Error): void {
|
|
365
|
+
if (this.editorStore.isInConflictResolutionMode) {
|
|
366
|
+
this.editorStore.setBlockingAlert({
|
|
367
|
+
message: `Can't de-serialize graph model from entities`,
|
|
368
|
+
prompt: `Please refresh the application and abort conflict resolution`,
|
|
369
|
+
});
|
|
370
|
+
return;
|
|
371
|
+
}
|
|
372
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
373
|
+
`Can't de-serialize graph model from entities. Redirected to model loader for debugging. Error: ${error.message}`,
|
|
374
|
+
);
|
|
375
|
+
this.editorStore.modelLoaderState.setCurrentModelLoadType(
|
|
376
|
+
MODEL_UPDATER_INPUT_TYPE.ENTITIES,
|
|
377
|
+
);
|
|
378
|
+
// Making an async call
|
|
379
|
+
this.editorStore.modelLoaderState.loadCurrentProjectEntities();
|
|
380
|
+
this.editorStore.openState(this.editorStore.modelLoaderState);
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
/**
|
|
384
|
+
* Get entitiy changes to prepare for syncing
|
|
385
|
+
*/
|
|
386
|
+
computeLocalEntityChanges(): EntityChange[] {
|
|
387
|
+
const baseHashesIndex = this.editorStore.isInConflictResolutionMode
|
|
388
|
+
? this.editorStore.changeDetectionState
|
|
389
|
+
.conflictResolutionHeadRevisionState.entityHashesIndex
|
|
390
|
+
: this.editorStore.changeDetectionState.workspaceLocalLatestRevisionState
|
|
391
|
+
.entityHashesIndex;
|
|
392
|
+
const originalPaths = new Set(Array.from(baseHashesIndex.keys()));
|
|
393
|
+
const entityChanges: EntityChange[] = [];
|
|
394
|
+
this.editorStore.graphManagerState.graph.allOwnElements.forEach(
|
|
395
|
+
(element) => {
|
|
396
|
+
const elementPath = element.path;
|
|
397
|
+
if (baseHashesIndex.get(elementPath) !== element.hashCode) {
|
|
398
|
+
const entity =
|
|
399
|
+
this.editorStore.graphManagerState.graphManager.elementToEntity(
|
|
400
|
+
element,
|
|
401
|
+
{
|
|
402
|
+
pruneSourceInformation: true,
|
|
403
|
+
},
|
|
404
|
+
);
|
|
405
|
+
entityChanges.push({
|
|
406
|
+
classifierPath: entity.classifierPath,
|
|
407
|
+
entityPath: element.path,
|
|
408
|
+
content: entity.content,
|
|
409
|
+
type:
|
|
410
|
+
baseHashesIndex.get(elementPath) !== undefined
|
|
411
|
+
? EntityChangeType.MODIFY
|
|
412
|
+
: EntityChangeType.CREATE,
|
|
413
|
+
});
|
|
414
|
+
}
|
|
415
|
+
originalPaths.delete(elementPath);
|
|
416
|
+
},
|
|
417
|
+
);
|
|
418
|
+
Array.from(originalPaths).forEach((path) => {
|
|
419
|
+
entityChanges.push({
|
|
420
|
+
type: EntityChangeType.DELETE,
|
|
421
|
+
entityPath: path,
|
|
422
|
+
});
|
|
423
|
+
});
|
|
424
|
+
return entityChanges;
|
|
425
|
+
}
|
|
426
|
+
|
|
427
|
+
/**
|
|
428
|
+
* Loads entity changes to graph and updates application.
|
|
429
|
+
*/
|
|
430
|
+
*loadEntityChangesToGraph(
|
|
431
|
+
changes: EntityChange[],
|
|
432
|
+
baseEntities: Entity[] | undefined,
|
|
433
|
+
): GeneratorFn<void> {
|
|
434
|
+
try {
|
|
435
|
+
assertTrue(
|
|
436
|
+
this.editorStore.isInFormMode,
|
|
437
|
+
`Can't apply entity changes: operation only supported in form mode`,
|
|
438
|
+
);
|
|
439
|
+
const entities =
|
|
440
|
+
baseEntities ??
|
|
441
|
+
this.editorStore.graphManagerState.graph.allOwnElements.map((element) =>
|
|
442
|
+
this.editorStore.graphManagerState.graphManager.elementToEntity(
|
|
443
|
+
element,
|
|
444
|
+
),
|
|
445
|
+
);
|
|
446
|
+
const modifiedEntities = applyEntityChanges(entities, changes);
|
|
447
|
+
yield flowResult(this.updateGraphAndApplication(modifiedEntities));
|
|
448
|
+
} catch (error) {
|
|
449
|
+
assertErrorThrown(error);
|
|
450
|
+
this.editorStore.applicationStore.notifyError(
|
|
451
|
+
`Can't load entity changes: ${error.message}`,
|
|
452
|
+
);
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
// TODO: when we support showing multiple notifications, we can take this options out as the only users of this
|
|
457
|
+
// is delete element flow, where we want to say `re-compiling graph after deletion`, but because compilation
|
|
458
|
+
// sometimes is so fast, the message flashes, so we want to combine with the message in this method
|
|
459
|
+
*globalCompileInFormMode(options?: {
|
|
460
|
+
message?: string;
|
|
461
|
+
disableNotificationOnSuccess?: boolean;
|
|
462
|
+
openConsole?: boolean;
|
|
463
|
+
}): GeneratorFn<void> {
|
|
464
|
+
assertTrue(
|
|
465
|
+
this.editorStore.isInFormMode,
|
|
466
|
+
'Editor must be in form mode to call this method',
|
|
467
|
+
);
|
|
468
|
+
if (this.checkIfApplicationUpdateOperationIsRunning()) {
|
|
469
|
+
return;
|
|
470
|
+
}
|
|
471
|
+
this.isRunningGlobalCompile = true;
|
|
472
|
+
try {
|
|
473
|
+
this.clearCompilationError();
|
|
474
|
+
if (options?.openConsole) {
|
|
475
|
+
this.editorStore.setActiveAuxPanelMode(AUX_PANEL_MODE.CONSOLE);
|
|
476
|
+
}
|
|
477
|
+
// NOTE: here we always keep the source information while compiling in form mode
|
|
478
|
+
// so that the form parts where the user interacted with (i.e. where the lamdbas source
|
|
479
|
+
// information are populated), can reveal compilation error. If compilation errors
|
|
480
|
+
// show up in other parts, the user will get redirected to text-mode
|
|
481
|
+
yield this.editorStore.graphManagerState.graphManager.compileGraph(
|
|
482
|
+
this.editorStore.graphManagerState.graph,
|
|
483
|
+
{
|
|
484
|
+
keepSourceInformation: true,
|
|
485
|
+
},
|
|
486
|
+
);
|
|
487
|
+
if (!options?.disableNotificationOnSuccess) {
|
|
488
|
+
this.editorStore.applicationStore.notifySuccess(
|
|
489
|
+
'Compiled successfully',
|
|
490
|
+
);
|
|
491
|
+
}
|
|
492
|
+
} catch (error) {
|
|
493
|
+
assertErrorThrown(error);
|
|
494
|
+
// TODO: we probably should make this pattern of error the handling for all other exceptions in the codebase
|
|
495
|
+
// i.e. there should be a catch-all handler (we can use if-else construct to check error types)
|
|
496
|
+
assertType(error, EngineError, `Unhandled exception:\n${error}`);
|
|
497
|
+
this.editorStore.applicationStore.log.error(
|
|
498
|
+
LogEvent.create(GRAPH_MANAGER_EVENT.COMPILATION_FAILURE),
|
|
499
|
+
error,
|
|
500
|
+
);
|
|
501
|
+
let fallbackToTextModeForDebugging = true;
|
|
502
|
+
// if compilation failed, we try to reveal the error in form mode,
|
|
503
|
+
// if even this fail, we will fall back to show it in text mode
|
|
504
|
+
if (error instanceof CompilationError) {
|
|
505
|
+
const errorCoordinates = extractSourceInformationCoordinates(
|
|
506
|
+
error.sourceInformation,
|
|
507
|
+
);
|
|
508
|
+
if (errorCoordinates) {
|
|
509
|
+
const element =
|
|
510
|
+
this.editorStore.graphManagerState.graph.getNullableElement(
|
|
511
|
+
guaranteeNonNullable(
|
|
512
|
+
errorCoordinates[0],
|
|
513
|
+
`Can't reveal compilation error: element path is missing`,
|
|
514
|
+
),
|
|
515
|
+
false,
|
|
516
|
+
);
|
|
517
|
+
if (element) {
|
|
518
|
+
this.editorStore.openElement(element);
|
|
519
|
+
if (
|
|
520
|
+
this.editorStore.currentEditorState instanceof ElementEditorState
|
|
521
|
+
) {
|
|
522
|
+
// check if we can reveal the error in the element editor state
|
|
523
|
+
fallbackToTextModeForDebugging =
|
|
524
|
+
!this.editorStore.currentEditorState.revealCompilationError(
|
|
525
|
+
error,
|
|
526
|
+
);
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
// decide if we need to fall back to text mode for debugging
|
|
533
|
+
if (fallbackToTextModeForDebugging) {
|
|
534
|
+
// TODO: when we support showing multiple notifications, we can split this into 2
|
|
535
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
536
|
+
options?.message ??
|
|
537
|
+
'Compilation failed and error cannot be located in form mode. Redirected to text mode for debugging.',
|
|
538
|
+
);
|
|
539
|
+
try {
|
|
540
|
+
const code =
|
|
541
|
+
(yield this.editorStore.graphManagerState.graphManager.graphToPureCode(
|
|
542
|
+
this.editorStore.graphManagerState.graph,
|
|
543
|
+
)) as string;
|
|
544
|
+
this.editorStore.grammarTextEditorState.setGraphGrammarText(code);
|
|
545
|
+
} catch (error2) {
|
|
546
|
+
assertErrorThrown(error2);
|
|
547
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
548
|
+
`Can't enter text mode. Transformation to grammar text failed: ${error2.message}`,
|
|
549
|
+
);
|
|
550
|
+
return;
|
|
551
|
+
}
|
|
552
|
+
this.editorStore.setGraphEditMode(GRAPH_EDITOR_MODE.GRAMMAR_TEXT);
|
|
553
|
+
yield flowResult(
|
|
554
|
+
this.globalCompileInTextMode({
|
|
555
|
+
ignoreBlocking: true,
|
|
556
|
+
suppressCompilationFailureMessage: true,
|
|
557
|
+
}),
|
|
558
|
+
);
|
|
559
|
+
} else {
|
|
560
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
561
|
+
`Compilation failed: ${error.message}`,
|
|
562
|
+
);
|
|
563
|
+
}
|
|
564
|
+
} finally {
|
|
565
|
+
this.isRunningGlobalCompile = false;
|
|
566
|
+
}
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
// TODO: when we support showing multiple notifications, we can take this `suppressCompilationFailureMessage` out as
|
|
570
|
+
// we can show the transition between form mode and text mode warning and the compilation failure warning at the same time
|
|
571
|
+
*globalCompileInTextMode(options?: {
|
|
572
|
+
ignoreBlocking?: boolean;
|
|
573
|
+
suppressCompilationFailureMessage?: boolean;
|
|
574
|
+
openConsole?: boolean;
|
|
575
|
+
}): GeneratorFn<void> {
|
|
576
|
+
assertTrue(
|
|
577
|
+
this.editorStore.isInGrammarTextMode,
|
|
578
|
+
'Editor must be in text mode to call this method',
|
|
579
|
+
);
|
|
580
|
+
if (
|
|
581
|
+
!options?.ignoreBlocking &&
|
|
582
|
+
this.checkIfApplicationUpdateOperationIsRunning()
|
|
583
|
+
) {
|
|
584
|
+
return;
|
|
585
|
+
}
|
|
586
|
+
try {
|
|
587
|
+
this.isRunningGlobalCompile = true;
|
|
588
|
+
this.clearCompilationError();
|
|
589
|
+
if (options?.openConsole) {
|
|
590
|
+
this.editorStore.setActiveAuxPanelMode(AUX_PANEL_MODE.CONSOLE);
|
|
591
|
+
}
|
|
592
|
+
const entities =
|
|
593
|
+
(yield this.editorStore.graphManagerState.graphManager.compileText(
|
|
594
|
+
this.editorStore.grammarTextEditorState.graphGrammarText,
|
|
595
|
+
this.editorStore.graphManagerState.graph,
|
|
596
|
+
)) as Entity[];
|
|
597
|
+
this.editorStore.applicationStore.notifySuccess('Compiled successfully');
|
|
598
|
+
yield flowResult(this.updateGraphAndApplication(entities));
|
|
599
|
+
} catch (error) {
|
|
600
|
+
assertErrorThrown(error);
|
|
601
|
+
if (error instanceof EngineError) {
|
|
602
|
+
this.editorStore.grammarTextEditorState.setError(error);
|
|
603
|
+
}
|
|
604
|
+
this.editorStore.applicationStore.log.error(
|
|
605
|
+
LogEvent.create(GRAPH_MANAGER_EVENT.COMPILATION_FAILURE),
|
|
606
|
+
'Compilation failed:',
|
|
607
|
+
error,
|
|
608
|
+
);
|
|
609
|
+
if (
|
|
610
|
+
!this.editorStore.applicationStore.notification ||
|
|
611
|
+
!options?.suppressCompilationFailureMessage
|
|
612
|
+
) {
|
|
613
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
614
|
+
`Compilation failed: ${error.message}`,
|
|
615
|
+
);
|
|
616
|
+
}
|
|
617
|
+
} finally {
|
|
618
|
+
this.isRunningGlobalCompile = false;
|
|
619
|
+
}
|
|
620
|
+
}
|
|
621
|
+
|
|
622
|
+
*leaveTextMode(): GeneratorFn<void> {
|
|
623
|
+
assertTrue(
|
|
624
|
+
this.editorStore.isInGrammarTextMode,
|
|
625
|
+
'Editor must be in text mode to call this method',
|
|
626
|
+
);
|
|
627
|
+
if (this.checkIfApplicationUpdateOperationIsRunning()) {
|
|
628
|
+
return;
|
|
629
|
+
}
|
|
630
|
+
try {
|
|
631
|
+
this.isApplicationLeavingTextMode = true;
|
|
632
|
+
this.clearCompilationError();
|
|
633
|
+
this.editorStore.setBlockingAlert({
|
|
634
|
+
message: 'Compiling graph before leaving text mode...',
|
|
635
|
+
showLoading: true,
|
|
636
|
+
});
|
|
637
|
+
try {
|
|
638
|
+
const entities =
|
|
639
|
+
(yield this.editorStore.graphManagerState.graphManager.compileText(
|
|
640
|
+
this.editorStore.grammarTextEditorState.graphGrammarText,
|
|
641
|
+
this.editorStore.graphManagerState.graph,
|
|
642
|
+
// surpress the modal to reveal error properly in the text editor
|
|
643
|
+
// if the blocking modal is not dismissed, the edior will not be able to gain focus as modal has a focus trap
|
|
644
|
+
// therefore, the editor will not be able to get the focus
|
|
645
|
+
{ onError: () => this.editorStore.setBlockingAlert(undefined) },
|
|
646
|
+
)) as Entity[];
|
|
647
|
+
this.editorStore.setBlockingAlert({
|
|
648
|
+
message: 'Leaving text mode and rebuilding graph...',
|
|
649
|
+
showLoading: true,
|
|
650
|
+
});
|
|
651
|
+
yield flowResult(this.updateGraphAndApplication(entities));
|
|
652
|
+
this.editorStore.grammarTextEditorState.setGraphGrammarText('');
|
|
653
|
+
this.editorStore.grammarTextEditorState.resetCurrentElementLabelRegexString();
|
|
654
|
+
this.editorStore.setGraphEditMode(GRAPH_EDITOR_MODE.FORM);
|
|
655
|
+
if (this.editorStore.currentEditorState) {
|
|
656
|
+
this.editorStore.openState(this.editorStore.currentEditorState);
|
|
657
|
+
}
|
|
658
|
+
} catch (error) {
|
|
659
|
+
assertErrorThrown(error);
|
|
660
|
+
if (error instanceof EngineError) {
|
|
661
|
+
this.editorStore.grammarTextEditorState.setError(error);
|
|
662
|
+
}
|
|
663
|
+
this.editorStore.applicationStore.log.error(
|
|
664
|
+
LogEvent.create(GRAPH_MANAGER_EVENT.COMPILATION_FAILURE),
|
|
665
|
+
'Compilation failed:',
|
|
666
|
+
error,
|
|
667
|
+
);
|
|
668
|
+
if (this.editorStore.graphManagerState.graphBuildState.hasFailed) {
|
|
669
|
+
// TODO: when we support showing multiple notification, we can split this into 2 messages
|
|
670
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
671
|
+
`Can't build graph, please resolve compilation error before leaving text mode. Compilation failed with error: ${error.message}`,
|
|
672
|
+
);
|
|
673
|
+
} else {
|
|
674
|
+
this.editorStore.applicationStore.notifyWarning(
|
|
675
|
+
`Compilation failed: ${error.message}`,
|
|
676
|
+
);
|
|
677
|
+
this.editorStore.setActionAlertInfo({
|
|
678
|
+
message: 'Project is not in a compiled state',
|
|
679
|
+
prompt:
|
|
680
|
+
'All changes made since the last time the graph was built successfully will be lost',
|
|
681
|
+
type: ActionAlertType.CAUTION,
|
|
682
|
+
onEnter: (): void => this.editorStore.setBlockGlobalHotkeys(true),
|
|
683
|
+
onClose: (): void => this.editorStore.setBlockGlobalHotkeys(false),
|
|
684
|
+
actions: [
|
|
685
|
+
{
|
|
686
|
+
label: 'Discard Changes',
|
|
687
|
+
handler: (): void =>
|
|
688
|
+
this.editorStore.setGraphEditMode(GRAPH_EDITOR_MODE.FORM),
|
|
689
|
+
type: ActionAlertActionType.PROCEED_WITH_CAUTION,
|
|
690
|
+
},
|
|
691
|
+
{
|
|
692
|
+
label: 'Stay',
|
|
693
|
+
default: true,
|
|
694
|
+
type: ActionAlertActionType.PROCEED,
|
|
695
|
+
},
|
|
696
|
+
],
|
|
697
|
+
});
|
|
698
|
+
}
|
|
699
|
+
}
|
|
700
|
+
} catch (error) {
|
|
701
|
+
assertErrorThrown(error);
|
|
702
|
+
this.editorStore.applicationStore.log.error(
|
|
703
|
+
LogEvent.create(GRAPH_MANAGER_EVENT.COMPILATION_FAILURE),
|
|
704
|
+
error,
|
|
705
|
+
);
|
|
706
|
+
} finally {
|
|
707
|
+
this.isApplicationLeavingTextMode = false;
|
|
708
|
+
this.editorStore.setBlockingAlert(undefined);
|
|
709
|
+
}
|
|
710
|
+
}
|
|
711
|
+
|
|
712
|
+
/**
|
|
713
|
+
* This function is used in lambda editor in form mode when user try to do an action that involves the lambda being edited, it takes an action
|
|
714
|
+
* and proceeds with a parsing check for the current lambda before executing the action. This prevents case where user quickly type something
|
|
715
|
+
* that does not parse and hit compile or generate right away.
|
|
716
|
+
*/
|
|
717
|
+
*checkLambdaParsingError(
|
|
718
|
+
lambdaHolderElement: LambdaEditorState,
|
|
719
|
+
checkParsingError: boolean,
|
|
720
|
+
onSuccess: () => Promise<void>,
|
|
721
|
+
): GeneratorFn<void> {
|
|
722
|
+
this.clearCompilationError();
|
|
723
|
+
lambdaHolderElement.clearErrors();
|
|
724
|
+
if (checkParsingError) {
|
|
725
|
+
yield flowResult(
|
|
726
|
+
lambdaHolderElement.convertLambdaGrammarStringToObject(),
|
|
727
|
+
);
|
|
728
|
+
// abort action if parser error occurred
|
|
729
|
+
if (lambdaHolderElement.parserError) {
|
|
730
|
+
return;
|
|
731
|
+
}
|
|
732
|
+
}
|
|
733
|
+
yield onSuccess();
|
|
734
|
+
}
|
|
735
|
+
|
|
736
|
+
/**
|
|
737
|
+
* NOTE: IMPORTANT! This method is both a savior and a sinner. It helps reprocessing the graph state to use a new graph
|
|
738
|
+
* built from the new model context data, it resets the graph properly. The bane here is that resetting the graph properly is
|
|
739
|
+
* not trivial, for example, in the cleanup phase, there are things we want to re-use, such as the one-time processed system
|
|
740
|
+
* metamodels or the `reusable` metamodels from project dependencies. There are also explorer states like the package tree,
|
|
741
|
+
* opened tabs, change detection, etc. to take care of. There are a lot of potential pitfalls. For these, we will add the
|
|
742
|
+
* marker:
|
|
743
|
+
*
|
|
744
|
+
* @risk memory-leak
|
|
745
|
+
*
|
|
746
|
+
* to indicate we should check carefully these pieces when we detect memory issue as it might still
|
|
747
|
+
* be referring to the old graph
|
|
748
|
+
*
|
|
749
|
+
* In the past, we have found that there are a few potential root causes for memory leak:
|
|
750
|
+
* 1. State management Mobx allows references, as such, it is sometimes hard to trace down which references can cause problem
|
|
751
|
+
* We have to understand that the behind this updater is very simple (replace), yet to do it cleanly is not easy, since
|
|
752
|
+
* so far it is tempting to refer to elements in the graph from various editor state. On top of that, change detection
|
|
753
|
+
* sometimes obfuscate the investigation but we have cleared it out with explicit disposing of reaction
|
|
754
|
+
* 2. Reusable models, at this point in time, we haven't completed stabilize the logic for handling generated models, as well
|
|
755
|
+
* as depdendencies, we intended to save computation time by reusing these while updating the graph. This can pose potential
|
|
756
|
+
* danger as well. Beware the way when we start to make system/project dependencies references elements of current graph
|
|
757
|
+
* e.g. when we have a computed value in a immutable class that get all subclasses, etc.
|
|
758
|
+
* 3. We reprocess editor states to ensure good UX, e.g. find tabs to keep open, find tree nodes to expand, etc.
|
|
759
|
+
* after updating the graph. These in our experience is the **MOST COMMON** source of memory leak. It is actually
|
|
760
|
+
* quite predictable since structures like tabs and tree node embeds graph data, which are references to the old graph
|
|
761
|
+
*
|
|
762
|
+
* NOTE: One big obfuscating factor is overlapping graph refresh. Sometimes, we observed that calling this update graph
|
|
763
|
+
* method multiple times can throws Mobx off and causes reusing change detection state to cause memory-leak. As such,
|
|
764
|
+
* we have blocked the possibility of calling compilation/graph-update/generation simultaneously
|
|
765
|
+
*
|
|
766
|
+
* A note on how to debug memory-leak issue:
|
|
767
|
+
* 1. Open browser Memory monitor
|
|
768
|
+
* 2. Go to text mode and compile multiple times (triggering graph update)
|
|
769
|
+
* 3. Try to force garbage collection, if we see memory goes up after while, it's pretty clear that this is memory-leak
|
|
770
|
+
* (note that since we disallow stacking multiple compilation and graph update, we have simplify the detection a lot)
|
|
771
|
+
* See https://auth0.com/blog/four-types-of-leaks-in-your-javascript-code-and-how-to-get-rid-of-them/
|
|
772
|
+
*/
|
|
773
|
+
private *updateGraphAndApplication(entities: Entity[]): GeneratorFn<void> {
|
|
774
|
+
const startTime = Date.now();
|
|
775
|
+
this.isUpdatingApplication = true;
|
|
776
|
+
this.isUpdatingGraph = true;
|
|
777
|
+
try {
|
|
778
|
+
const newGraph = this.editorStore.graphManagerState.createEmptyGraph();
|
|
779
|
+
/**
|
|
780
|
+
* NOTE: this can post memory-leak issue if we start having immutable elements referencing current graph elements:
|
|
781
|
+
* e.g. subclass analytics on the immutable class, etc.
|
|
782
|
+
*
|
|
783
|
+
* @risk memory-leak
|
|
784
|
+
*/
|
|
785
|
+
if (
|
|
786
|
+
this.editorStore.graphManagerState.dependenciesBuildState.hasSucceeded
|
|
787
|
+
) {
|
|
788
|
+
newGraph.dependencyManager =
|
|
789
|
+
this.editorStore.graphManagerState.graph.dependencyManager;
|
|
790
|
+
} else {
|
|
791
|
+
this.editorStore.projectConfigurationEditorState.setProjectConfiguration(
|
|
792
|
+
ProjectConfiguration.serialization.fromJson(
|
|
793
|
+
(yield this.editorStore.sdlcServerClient.getConfiguration(
|
|
794
|
+
this.editorStore.sdlcState.activeProject.projectId,
|
|
795
|
+
this.editorStore.sdlcState.activeWorkspace,
|
|
796
|
+
)) as PlainObject<ProjectConfiguration>,
|
|
797
|
+
),
|
|
798
|
+
);
|
|
799
|
+
const dependencyManager =
|
|
800
|
+
this.editorStore.graphManagerState.createEmptyDependencyManager();
|
|
801
|
+
newGraph.dependencyManager = dependencyManager;
|
|
802
|
+
const dependenciesBuildState = ActionState.create();
|
|
803
|
+
yield this.editorStore.graphManagerState.graphManager.buildDependencies(
|
|
804
|
+
this.editorStore.graphManagerState.coreModel,
|
|
805
|
+
this.editorStore.graphManagerState.systemModel,
|
|
806
|
+
dependencyManager,
|
|
807
|
+
(yield flowResult(this.getIndexedDependencyEntities())) as Map<
|
|
808
|
+
string,
|
|
809
|
+
Entity[]
|
|
810
|
+
>,
|
|
811
|
+
dependenciesBuildState,
|
|
812
|
+
);
|
|
813
|
+
this.editorStore.graphManagerState.dependenciesBuildState =
|
|
814
|
+
dependenciesBuildState;
|
|
815
|
+
}
|
|
816
|
+
|
|
817
|
+
/**
|
|
818
|
+
* Backup and editor states info before resetting
|
|
819
|
+
*
|
|
820
|
+
* @risk memory-leak
|
|
821
|
+
*/
|
|
822
|
+
const openedEditorStates = this.editorStore.openedEditorStates;
|
|
823
|
+
const currentEditorState = this.editorStore.currentEditorState;
|
|
824
|
+
/**
|
|
825
|
+
* We remove the current editor state so that we no longer let React displays the element that belongs to the old graph
|
|
826
|
+
* NOTE: this causes an UI flash, but this is in many way, acceptable since the user probably should know that we are
|
|
827
|
+
* refreshing the memory graph anyway.
|
|
828
|
+
*
|
|
829
|
+
* If this is really bothering, we can handle it by building mocked replica of the current editor state using stub element
|
|
830
|
+
* e.g. if the current editor is a class, we stub the class, create a new class editor state around it and copy over
|
|
831
|
+
* navigation information, etc.
|
|
832
|
+
*/
|
|
833
|
+
this.editorStore.closeAllEditorTabs();
|
|
834
|
+
|
|
835
|
+
this.editorStore.changeDetectionState.stop(); // stop change detection before disposing hash
|
|
836
|
+
yield flowResult(graph_dispose(this.editorStore.graphManagerState.graph));
|
|
837
|
+
|
|
838
|
+
const graphBuildState = ActionState.create();
|
|
839
|
+
yield this.editorStore.graphManagerState.graphManager.buildGraph(
|
|
840
|
+
newGraph,
|
|
841
|
+
entities,
|
|
842
|
+
graphBuildState,
|
|
843
|
+
{
|
|
844
|
+
TEMPORARY__preserveSectionIndex:
|
|
845
|
+
this.editorStore.applicationStore.config.options
|
|
846
|
+
.TEMPORARY__preserveSectionIndex,
|
|
847
|
+
},
|
|
848
|
+
);
|
|
849
|
+
|
|
850
|
+
// Activity States
|
|
851
|
+
this.editorStore.globalTestRunnerState = new GlobalTestRunnerState(
|
|
852
|
+
this.editorStore,
|
|
853
|
+
this.editorStore.sdlcState,
|
|
854
|
+
);
|
|
855
|
+
|
|
856
|
+
// NOTE: build model generation entities every-time we rebuild the graph - should we do this?
|
|
857
|
+
const generationsBuildState = ActionState.create();
|
|
858
|
+
yield this.editorStore.graphManagerState.graphManager.buildGenerations(
|
|
859
|
+
newGraph,
|
|
860
|
+
this.graphGenerationState.generatedEntities,
|
|
861
|
+
generationsBuildState,
|
|
862
|
+
);
|
|
863
|
+
|
|
864
|
+
this.editorStore.graphManagerState.graph = newGraph;
|
|
865
|
+
this.editorStore.graphManagerState.graphBuildState = graphBuildState;
|
|
866
|
+
this.editorStore.graphManagerState.generationsBuildState =
|
|
867
|
+
generationsBuildState;
|
|
868
|
+
|
|
869
|
+
/**
|
|
870
|
+
* Reprocess explorer tree which might still hold references to old graph
|
|
871
|
+
*
|
|
872
|
+
* FIXME: we allow this so the UX stays the same but this can cause memory leak
|
|
873
|
+
* we could consider doing this properly using node IDs
|
|
874
|
+
*
|
|
875
|
+
* @risk memory-leak
|
|
876
|
+
*/
|
|
877
|
+
this.editorStore.explorerTreeState.reprocess();
|
|
878
|
+
// this.editorStore.explorerTreeState = new ExplorerTreeState(this.applicationStore, this.editorStore);
|
|
879
|
+
// this.editorStore.explorerTreeState.buildImmutableModelTrees();
|
|
880
|
+
// this.editorStore.explorerTreeState.build();
|
|
881
|
+
|
|
882
|
+
/**
|
|
883
|
+
* Reprocess editor states which might still hold references to old graph
|
|
884
|
+
*
|
|
885
|
+
* FIXME: we allow this so the UX stays the same but this can cause memory leak
|
|
886
|
+
* we should change `reprocess` model to do something like having source information
|
|
887
|
+
* on the form to navigate to it properly so that information is not dependent on the
|
|
888
|
+
* graph, but on the component itself, with IDs and such.
|
|
889
|
+
*
|
|
890
|
+
* @risk memory-leak
|
|
891
|
+
*/
|
|
892
|
+
this.editorStore.openedEditorStates = openedEditorStates
|
|
893
|
+
.map((editorState) =>
|
|
894
|
+
this.editorStore.reprocessElementEditorState(editorState),
|
|
895
|
+
)
|
|
896
|
+
.filter(isNonNullable);
|
|
897
|
+
this.editorStore.setCurrentEditorState(
|
|
898
|
+
this.editorStore.findCurrentEditorState(currentEditorState),
|
|
899
|
+
);
|
|
900
|
+
|
|
901
|
+
this.editorStore.applicationStore.log.info(
|
|
902
|
+
LogEvent.create(GRAPH_MANAGER_EVENT.GRAPH_UPDATED_AND_REBUILT),
|
|
903
|
+
'[TOTAL]',
|
|
904
|
+
Date.now() - startTime,
|
|
905
|
+
'ms',
|
|
906
|
+
);
|
|
907
|
+
this.isUpdatingGraph = false;
|
|
908
|
+
|
|
909
|
+
// ======= (RE)START CHANGE DETECTION =======
|
|
910
|
+
yield flowResult(this.editorStore.changeDetectionState.observeGraph());
|
|
911
|
+
yield this.editorStore.changeDetectionState.preComputeGraphElementHashes();
|
|
912
|
+
this.editorStore.changeDetectionState.start();
|
|
913
|
+
this.editorStore.applicationStore.log.info(
|
|
914
|
+
LogEvent.create(CHANGE_DETECTION_EVENT.CHANGE_DETECTION_RESTARTED),
|
|
915
|
+
'[ASYNC]',
|
|
916
|
+
);
|
|
917
|
+
// ======= FINISHED (RE)START CHANGE DETECTION =======
|
|
918
|
+
} catch (error) {
|
|
919
|
+
assertErrorThrown(error);
|
|
920
|
+
this.editorStore.applicationStore.log.error(
|
|
921
|
+
LogEvent.create(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_FAILURE),
|
|
922
|
+
error,
|
|
923
|
+
);
|
|
924
|
+
this.editorStore.changeDetectionState.stop(true); // force stop change detection
|
|
925
|
+
this.isUpdatingGraph = false;
|
|
926
|
+
// Note: in the future this function will probably be ideal to refactor when we have different classes for each mode
|
|
927
|
+
// as we would handle this error differently in `text` mode and `form` mode.
|
|
928
|
+
if (error instanceof GraphBuilderError && this.editorStore.isInFormMode) {
|
|
929
|
+
this.editorStore.applicationStore.setBlockingAlert({
|
|
930
|
+
message: `Can't build graph: ${error.message}`,
|
|
931
|
+
prompt: 'Refreshing full application...',
|
|
932
|
+
showLoading: true,
|
|
933
|
+
});
|
|
934
|
+
this.editorStore.closeAllEditorTabs();
|
|
935
|
+
this.editorStore.cleanUp();
|
|
936
|
+
yield flowResult(this.editorStore.buildGraph(entities));
|
|
937
|
+
} else {
|
|
938
|
+
this.editorStore.applicationStore.notifyError(
|
|
939
|
+
`Can't build graph: ${error.message}`,
|
|
940
|
+
);
|
|
941
|
+
}
|
|
942
|
+
} finally {
|
|
943
|
+
this.isUpdatingApplication = false;
|
|
944
|
+
this.editorStore.applicationStore.setBlockingAlert(undefined);
|
|
945
|
+
}
|
|
946
|
+
}
|
|
947
|
+
|
|
948
|
+
/**
|
|
949
|
+
* Used to update generation model and generation graph using the generated entities
|
|
950
|
+
* does not alter the main or dependency model
|
|
951
|
+
*/
|
|
952
|
+
*updateGenerationGraphAndApplication(): GeneratorFn<void> {
|
|
953
|
+
assertTrue(
|
|
954
|
+
this.editorStore.graphManagerState.graphBuildState.hasSucceeded &&
|
|
955
|
+
this.editorStore.graphManagerState.dependenciesBuildState.hasSucceeded,
|
|
956
|
+
'Both main model and dependencies must be processed to built generation graph',
|
|
957
|
+
);
|
|
958
|
+
this.isUpdatingApplication = true;
|
|
959
|
+
try {
|
|
960
|
+
/**
|
|
961
|
+
* Backup and editor states info before resetting
|
|
962
|
+
*
|
|
963
|
+
* @risk memory-leak
|
|
964
|
+
*/
|
|
965
|
+
const openedEditorStates = this.editorStore.openedEditorStates;
|
|
966
|
+
const currentEditorState = this.editorStore.currentEditorState;
|
|
967
|
+
this.editorStore.closeAllEditorTabs();
|
|
968
|
+
|
|
969
|
+
yield flowResult(
|
|
970
|
+
this.editorStore.graphManagerState.graph.generationModel.dispose(),
|
|
971
|
+
);
|
|
972
|
+
// we reset the generation model
|
|
973
|
+
this.editorStore.graphManagerState.graph.generationModel =
|
|
974
|
+
this.editorStore.graphManagerState.createEmptyGenerationModel();
|
|
975
|
+
yield this.editorStore.graphManagerState.graphManager.buildGenerations(
|
|
976
|
+
this.editorStore.graphManagerState.graph,
|
|
977
|
+
this.graphGenerationState.generatedEntities,
|
|
978
|
+
this.editorStore.graphManagerState.generationsBuildState,
|
|
979
|
+
);
|
|
980
|
+
|
|
981
|
+
/**
|
|
982
|
+
* Reprocess explorer tree which might still hold references to old graph
|
|
983
|
+
*
|
|
984
|
+
* FIXME: we allow this so the UX stays the same but this can cause memory leak
|
|
985
|
+
* we could consider doing this properly using node IDs
|
|
986
|
+
*
|
|
987
|
+
* @risk memory-leak
|
|
988
|
+
*/
|
|
989
|
+
this.editorStore.explorerTreeState.reprocess();
|
|
990
|
+
|
|
991
|
+
// so that information is not dependent on the graph, but on the component itself, with IDs and such.
|
|
992
|
+
this.editorStore.openedEditorStates = openedEditorStates
|
|
993
|
+
.map((editorState) =>
|
|
994
|
+
this.editorStore.reprocessElementEditorState(editorState),
|
|
995
|
+
)
|
|
996
|
+
.filter(isNonNullable);
|
|
997
|
+
this.editorStore.setCurrentEditorState(
|
|
998
|
+
this.editorStore.findCurrentEditorState(currentEditorState),
|
|
999
|
+
);
|
|
1000
|
+
} catch (error) {
|
|
1001
|
+
assertErrorThrown(error);
|
|
1002
|
+
this.editorStore.applicationStore.log.error(
|
|
1003
|
+
LogEvent.create(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_FAILURE),
|
|
1004
|
+
error,
|
|
1005
|
+
);
|
|
1006
|
+
this.editorStore.applicationStore.notifyError(
|
|
1007
|
+
`Can't build graph: ${error.message}`,
|
|
1008
|
+
);
|
|
1009
|
+
} finally {
|
|
1010
|
+
this.isUpdatingApplication = false;
|
|
1011
|
+
}
|
|
1012
|
+
}
|
|
1013
|
+
|
|
1014
|
+
*getIndexedDependencyEntities(): GeneratorFn<Map<string, Entity[]>> {
|
|
1015
|
+
const dependencyEntitiesIndex = new Map<string, Entity[]>();
|
|
1016
|
+
const currentConfiguration =
|
|
1017
|
+
this.editorStore.projectConfigurationEditorState
|
|
1018
|
+
.currentProjectConfiguration;
|
|
1019
|
+
try {
|
|
1020
|
+
if (currentConfiguration.projectDependencies.length) {
|
|
1021
|
+
const dependencyCoordinates = (yield flowResult(
|
|
1022
|
+
this.buildProjectDependencyCoordinates(
|
|
1023
|
+
currentConfiguration.projectDependencies,
|
|
1024
|
+
),
|
|
1025
|
+
)) as ProjectDependencyCoordinates[];
|
|
1026
|
+
// NOTE: if A@v1 is transitive dependencies of 2 or more
|
|
1027
|
+
// direct dependencies, metadata server will take care of deduplication
|
|
1028
|
+
const dependencyEntitiesJson =
|
|
1029
|
+
(yield this.editorStore.depotServerClient.collectDependencyEntities(
|
|
1030
|
+
dependencyCoordinates.map((e) =>
|
|
1031
|
+
ProjectDependencyCoordinates.serialization.toJson(e),
|
|
1032
|
+
),
|
|
1033
|
+
true,
|
|
1034
|
+
true,
|
|
1035
|
+
)) as PlainObject<ProjectVersionEntities>[];
|
|
1036
|
+
const dependencyEntities = dependencyEntitiesJson.map((e) =>
|
|
1037
|
+
ProjectVersionEntities.serialization.fromJson(e),
|
|
1038
|
+
);
|
|
1039
|
+
const dependencyProjects = new Set<string>();
|
|
1040
|
+
dependencyEntities.forEach((dependencyInfo) => {
|
|
1041
|
+
const projectId = dependencyInfo.id;
|
|
1042
|
+
// There are a few validations that must be done:
|
|
1043
|
+
// 1. Unlike above, if in the depdendency graph, we have both A@v1 and A@v2
|
|
1044
|
+
// then we need to throw. Both SDLC and metadata server should handle this
|
|
1045
|
+
// validation, but haven't, so for now, we can do that in Studio.
|
|
1046
|
+
// 2. Same as the previous case, but for version-to-version transformation
|
|
1047
|
+
// This is a special case that needs handling, right now, SDLC does auto
|
|
1048
|
+
// healing, by scanning all the path and convert them into versioned path
|
|
1049
|
+
// e.g. model::someClass -> project1::v1_0_0::model::someClass
|
|
1050
|
+
// But this is a rare and advanced use-case which we will not attempt to handle now.
|
|
1051
|
+
if (dependencyProjects.has(projectId)) {
|
|
1052
|
+
const projectVersions = dependencyEntities
|
|
1053
|
+
.filter((e) => e.id === projectId)
|
|
1054
|
+
.map((e) => e.versionId);
|
|
1055
|
+
throw new UnsupportedOperationError(
|
|
1056
|
+
`Depending on multiple versions of a project is not supported. Found dependency on project '${projectId}' with versions: ${projectVersions.join(
|
|
1057
|
+
', ',
|
|
1058
|
+
)}.`,
|
|
1059
|
+
);
|
|
1060
|
+
}
|
|
1061
|
+
dependencyEntitiesIndex.set(
|
|
1062
|
+
dependencyInfo.id,
|
|
1063
|
+
dependencyInfo.entities,
|
|
1064
|
+
);
|
|
1065
|
+
dependencyProjects.add(dependencyInfo.id);
|
|
1066
|
+
});
|
|
1067
|
+
}
|
|
1068
|
+
} catch (error) {
|
|
1069
|
+
assertErrorThrown(error);
|
|
1070
|
+
const message = `Can't acquire dependency entitites. Error: ${error.message}`;
|
|
1071
|
+
this.editorStore.applicationStore.log.error(
|
|
1072
|
+
LogEvent.create(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_FAILURE),
|
|
1073
|
+
message,
|
|
1074
|
+
);
|
|
1075
|
+
this.editorStore.applicationStore.notifyError(error);
|
|
1076
|
+
throw new DependencyGraphBuilderError(error);
|
|
1077
|
+
}
|
|
1078
|
+
return dependencyEntitiesIndex;
|
|
1079
|
+
}
|
|
1080
|
+
|
|
1081
|
+
*buildProjectDependencyCoordinates(
|
|
1082
|
+
projectDependencies: ProjectDependency[],
|
|
1083
|
+
): GeneratorFn<ProjectDependencyCoordinates[]> {
|
|
1084
|
+
return (yield Promise.all(
|
|
1085
|
+
projectDependencies.map((dep) => {
|
|
1086
|
+
// legacyDependencies
|
|
1087
|
+
// We do this for backward compatible reasons as we expect current dependency ids to be in the format of {groupId}:{artifactId}.
|
|
1088
|
+
// For the legacy dependency we must fetch the corresponding coordinates (group, artifact ids) from the depot server
|
|
1089
|
+
if (dep.isLegacyDependency) {
|
|
1090
|
+
return this.editorStore.depotServerClient
|
|
1091
|
+
.getProjectById(dep.projectId)
|
|
1092
|
+
.then((projects) => {
|
|
1093
|
+
const projectsData = projects.map((p) =>
|
|
1094
|
+
ProjectData.serialization.fromJson(p),
|
|
1095
|
+
);
|
|
1096
|
+
if (projectsData.length !== 1) {
|
|
1097
|
+
throw new Error(
|
|
1098
|
+
`Expected 1 project for project ID '${dep.projectId}'. Got ${
|
|
1099
|
+
projectsData.length
|
|
1100
|
+
} projects with coordinates ${projectsData
|
|
1101
|
+
.map(
|
|
1102
|
+
(i) =>
|
|
1103
|
+
`'${generateGAVCoordinates(
|
|
1104
|
+
i.groupId,
|
|
1105
|
+
i.artifactId,
|
|
1106
|
+
undefined,
|
|
1107
|
+
)}'`,
|
|
1108
|
+
)
|
|
1109
|
+
.join(', ')}.`,
|
|
1110
|
+
);
|
|
1111
|
+
}
|
|
1112
|
+
const project = projectsData[0] as ProjectData;
|
|
1113
|
+
return new ProjectDependencyCoordinates(
|
|
1114
|
+
project.groupId,
|
|
1115
|
+
project.artifactId,
|
|
1116
|
+
dep.versionId,
|
|
1117
|
+
);
|
|
1118
|
+
});
|
|
1119
|
+
} else {
|
|
1120
|
+
return Promise.resolve(
|
|
1121
|
+
new ProjectDependencyCoordinates(
|
|
1122
|
+
guaranteeNonNullable(dep.groupId),
|
|
1123
|
+
guaranteeNonNullable(dep.artifactId),
|
|
1124
|
+
dep.versionId,
|
|
1125
|
+
),
|
|
1126
|
+
);
|
|
1127
|
+
}
|
|
1128
|
+
}),
|
|
1129
|
+
)) as ProjectDependencyCoordinates[];
|
|
1130
|
+
}
|
|
1131
|
+
|
|
1132
|
+
// -------------------------------------------------- UTILITIES -----------------------------------------------------
|
|
1133
|
+
/**
|
|
1134
|
+
* NOTE: Notice how this utility draws resources from all of metamodels and uses `instanceof` to classify behavior/response.
|
|
1135
|
+
* As such, methods in this utility cannot be placed in place they should belong to.
|
|
1136
|
+
*
|
|
1137
|
+
* For example: `getSetImplemetnationType` cannot be placed in `SetImplementation` because of circular module dependency
|
|
1138
|
+
* So this utility is born for such purpose, to avoid circular module dependency, and it should just be used for only that
|
|
1139
|
+
* Other utilities that really should reside in the domain-specific meta model should be placed in the meta model module.
|
|
1140
|
+
*
|
|
1141
|
+
* NOTE: We expect the need for these methods will eventually go away as we complete modularization. But we need these
|
|
1142
|
+
* methods here so that we can load plugins.
|
|
1143
|
+
*/
|
|
1144
|
+
|
|
1145
|
+
getPackageableElementType(element: PackageableElement): string {
|
|
1146
|
+
if (element instanceof PrimitiveType) {
|
|
1147
|
+
return PACKAGEABLE_ELEMENT_TYPE.PRIMITIVE;
|
|
1148
|
+
} else if (element instanceof Package) {
|
|
1149
|
+
return PACKAGEABLE_ELEMENT_TYPE.PACKAGE;
|
|
1150
|
+
} else if (element instanceof Class) {
|
|
1151
|
+
return PACKAGEABLE_ELEMENT_TYPE.CLASS;
|
|
1152
|
+
} else if (element instanceof Association) {
|
|
1153
|
+
return PACKAGEABLE_ELEMENT_TYPE.ASSOCIATION;
|
|
1154
|
+
} else if (element instanceof Enumeration) {
|
|
1155
|
+
return PACKAGEABLE_ELEMENT_TYPE.ENUMERATION;
|
|
1156
|
+
} else if (element instanceof Measure) {
|
|
1157
|
+
return PACKAGEABLE_ELEMENT_TYPE.MEASURE;
|
|
1158
|
+
} else if (element instanceof Unit) {
|
|
1159
|
+
return PACKAGEABLE_ELEMENT_TYPE.UNIT;
|
|
1160
|
+
} else if (element instanceof Profile) {
|
|
1161
|
+
return PACKAGEABLE_ELEMENT_TYPE.PROFILE;
|
|
1162
|
+
} else if (element instanceof ConcreteFunctionDefinition) {
|
|
1163
|
+
return PACKAGEABLE_ELEMENT_TYPE.FUNCTION;
|
|
1164
|
+
} else if (element instanceof FlatData) {
|
|
1165
|
+
return PACKAGEABLE_ELEMENT_TYPE.FLAT_DATA_STORE;
|
|
1166
|
+
} else if (element instanceof Database) {
|
|
1167
|
+
return PACKAGEABLE_ELEMENT_TYPE.DATABASE;
|
|
1168
|
+
} else if (element instanceof Mapping) {
|
|
1169
|
+
return PACKAGEABLE_ELEMENT_TYPE.MAPPING;
|
|
1170
|
+
} else if (element instanceof Service) {
|
|
1171
|
+
return PACKAGEABLE_ELEMENT_TYPE.SERVICE;
|
|
1172
|
+
} else if (element instanceof PackageableConnection) {
|
|
1173
|
+
return PACKAGEABLE_ELEMENT_TYPE.CONNECTION;
|
|
1174
|
+
} else if (element instanceof PackageableRuntime) {
|
|
1175
|
+
return PACKAGEABLE_ELEMENT_TYPE.RUNTIME;
|
|
1176
|
+
} else if (element instanceof FileGenerationSpecification) {
|
|
1177
|
+
return PACKAGEABLE_ELEMENT_TYPE.FILE_GENERATION;
|
|
1178
|
+
} else if (element instanceof GenerationSpecification) {
|
|
1179
|
+
return PACKAGEABLE_ELEMENT_TYPE.GENERATION_SPECIFICATION;
|
|
1180
|
+
} else if (element instanceof SectionIndex) {
|
|
1181
|
+
return PACKAGEABLE_ELEMENT_TYPE.SECTION_INDEX;
|
|
1182
|
+
} else if (element instanceof DataElement) {
|
|
1183
|
+
return PACKAGEABLE_ELEMENT_TYPE.DATA;
|
|
1184
|
+
}
|
|
1185
|
+
const extraElementTypeLabelGetters = this.editorStore.pluginManager
|
|
1186
|
+
.getApplicationPlugins()
|
|
1187
|
+
.flatMap(
|
|
1188
|
+
(plugin) =>
|
|
1189
|
+
(
|
|
1190
|
+
plugin as DSL_LegendStudioApplicationPlugin_Extension
|
|
1191
|
+
).getExtraElementTypeGetters?.() ?? [],
|
|
1192
|
+
);
|
|
1193
|
+
for (const labelGetter of extraElementTypeLabelGetters) {
|
|
1194
|
+
const label = labelGetter(element);
|
|
1195
|
+
if (label) {
|
|
1196
|
+
return label;
|
|
1197
|
+
}
|
|
1198
|
+
}
|
|
1199
|
+
throw new UnsupportedOperationError(
|
|
1200
|
+
`Can't get type label for element '${element.path}': no compatible label getter available from plugins`,
|
|
1201
|
+
);
|
|
1202
|
+
}
|
|
1203
|
+
|
|
1204
|
+
getSetImplementationType(setImplementation: SetImplementation): string {
|
|
1205
|
+
if (setImplementation instanceof PureInstanceSetImplementation) {
|
|
1206
|
+
return SET_IMPLEMENTATION_TYPE.PUREINSTANCE;
|
|
1207
|
+
} else if (setImplementation instanceof OperationSetImplementation) {
|
|
1208
|
+
return SET_IMPLEMENTATION_TYPE.OPERATION;
|
|
1209
|
+
} else if (setImplementation instanceof FlatDataInstanceSetImplementation) {
|
|
1210
|
+
return SET_IMPLEMENTATION_TYPE.FLAT_DATA;
|
|
1211
|
+
} else if (setImplementation instanceof EmbeddedFlatDataPropertyMapping) {
|
|
1212
|
+
return SET_IMPLEMENTATION_TYPE.EMBEDDED_FLAT_DATA;
|
|
1213
|
+
} else if (
|
|
1214
|
+
setImplementation instanceof RootRelationalInstanceSetImplementation
|
|
1215
|
+
) {
|
|
1216
|
+
return SET_IMPLEMENTATION_TYPE.RELATIONAL;
|
|
1217
|
+
} else if (
|
|
1218
|
+
setImplementation instanceof EmbeddedRelationalInstanceSetImplementation
|
|
1219
|
+
) {
|
|
1220
|
+
return SET_IMPLEMENTATION_TYPE.EMBEDDED_RELATIONAL;
|
|
1221
|
+
} else if (setImplementation instanceof AggregationAwareSetImplementation) {
|
|
1222
|
+
return SET_IMPLEMENTATION_TYPE.AGGREGATION_AWARE;
|
|
1223
|
+
}
|
|
1224
|
+
const extraSetImplementationClassifiers = this.editorStore.pluginManager
|
|
1225
|
+
.getApplicationPlugins()
|
|
1226
|
+
.flatMap(
|
|
1227
|
+
(plugin) =>
|
|
1228
|
+
(
|
|
1229
|
+
plugin as DSLMapping_LegendStudioApplicationPlugin_Extension
|
|
1230
|
+
).getExtraSetImplementationClassifiers?.() ?? [],
|
|
1231
|
+
);
|
|
1232
|
+
for (const Classifier of extraSetImplementationClassifiers) {
|
|
1233
|
+
const setImplementationClassifier = Classifier(setImplementation);
|
|
1234
|
+
if (setImplementationClassifier) {
|
|
1235
|
+
return setImplementationClassifier;
|
|
1236
|
+
}
|
|
1237
|
+
}
|
|
1238
|
+
throw new UnsupportedOperationError(
|
|
1239
|
+
`Can't classify set implementation: no compatible classifer available from plugins`,
|
|
1240
|
+
setImplementation,
|
|
1241
|
+
);
|
|
1242
|
+
}
|
|
1243
|
+
}
|