@finos/legend-application-studio 23.1.6 → 23.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/application/LegendStudio.d.ts.map +1 -1
- package/lib/application/LegendStudio.js +3 -14
- package/lib/application/LegendStudio.js.map +1 -1
- package/lib/application/LegendStudioDocumentation.d.ts +5 -0
- package/lib/application/LegendStudioDocumentation.d.ts.map +1 -1
- package/lib/application/LegendStudioDocumentation.js +5 -0
- package/lib/application/LegendStudioDocumentation.js.map +1 -1
- package/lib/components/editor/edit-panel/EditPanel.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/EditPanel.js +1 -1
- package/lib/components/editor/edit-panel/EditPanel.js.map +1 -1
- package/lib/components/editor/edit-panel/FileGenerationViewer.js +2 -2
- package/lib/components/editor/edit-panel/FileGenerationViewer.js.map +1 -1
- package/lib/components/editor/edit-panel/GrammarTextEditor.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/GrammarTextEditor.js +12 -11
- package/lib/components/editor/edit-panel/GrammarTextEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/ModelImporter.js +5 -4
- package/lib/components/editor/edit-panel/ModelImporter.js.map +1 -1
- package/lib/components/editor/edit-panel/connection-editor/DatabaseBuilder.js +3 -2
- package/lib/components/editor/edit-panel/connection-editor/DatabaseBuilder.js.map +1 -1
- package/lib/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.js +3 -2
- package/lib/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/data-editor/DataElementEditor.js +5 -3
- package/lib/components/editor/edit-panel/data-editor/DataElementEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.js +3 -2
- package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/data-editor/RelationalCSVDataEditor.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/data-editor/RelationalCSVDataEditor.js +3 -2
- package/lib/components/editor/edit-panel/data-editor/RelationalCSVDataEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/diff-editor/EntityChangeConflictEditor.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/diff-editor/EntityChangeConflictEditor.js +12 -11
- package/lib/components/editor/edit-panel/diff-editor/EntityChangeConflictEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/diff-editor/EntityDiffView.js +2 -2
- package/lib/components/editor/edit-panel/diff-editor/EntityDiffView.js.map +1 -1
- package/lib/components/editor/edit-panel/element-generation-editor/ElementNativeView.js +5 -4
- package/lib/components/editor/edit-panel/element-generation-editor/ElementNativeView.js.map +1 -1
- package/lib/components/editor/edit-panel/element-generation-editor/FileSystemViewer.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/element-generation-editor/FileSystemViewer.js +3 -2
- package/lib/components/editor/edit-panel/element-generation-editor/FileSystemViewer.js.map +1 -1
- package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_SchemaSetElementEditor.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_SchemaSetElementEditor.js +4 -3
- package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_SchemaSetElementEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_SchemaSetModelGenerationEditor.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_SchemaSetModelGenerationEditor.js +3 -2
- package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_SchemaSetModelGenerationEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/mapping-editor/MappingEditor.js +3 -3
- package/lib/components/editor/edit-panel/mapping-editor/MappingEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.d.ts +2 -2
- package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.js +10 -8
- package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.js.map +1 -1
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestEditor.d.ts +6 -6
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestEditor.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestEditor.js +8 -7
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestsExplorer.d.ts +4 -4
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestsExplorer.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/mapping-editor/MappingTestsExplorer.js.map +1 -1
- package/lib/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.js +3 -2
- package/lib/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/service-editor/ServiceEditor.js +3 -2
- package/lib/components/editor/edit-panel/service-editor/ServiceEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.js +6 -5
- package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.js +3 -2
- package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/testable/TestAssertionEditor.d.ts.map +1 -1
- package/lib/components/editor/edit-panel/testable/TestAssertionEditor.js +3 -2
- package/lib/components/editor/edit-panel/testable/TestAssertionEditor.js.map +1 -1
- package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.js +3 -2
- package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.js.map +1 -1
- package/lib/components/editor/side-bar/Explorer.js +7 -6
- package/lib/components/editor/side-bar/Explorer.js.map +1 -1
- package/lib/components/editor/side-bar/WorkflowManager.d.ts.map +1 -1
- package/lib/components/editor/side-bar/WorkflowManager.js +3 -2
- package/lib/components/editor/side-bar/WorkflowManager.js.map +1 -1
- package/lib/components/editor/side-bar/testable/GlobalTestRunner.d.ts.map +1 -1
- package/lib/components/editor/side-bar/testable/GlobalTestRunner.js +4 -3
- package/lib/components/editor/side-bar/testable/GlobalTestRunner.js.map +1 -1
- package/lib/components/extensions/Core_LegendStudioApplicationPlugin.d.ts +2 -1
- package/lib/components/extensions/Core_LegendStudioApplicationPlugin.d.ts.map +1 -1
- package/lib/components/extensions/Core_LegendStudioApplicationPlugin.js +14 -1
- package/lib/components/extensions/Core_LegendStudioApplicationPlugin.js.map +1 -1
- package/lib/components/shared/DiffView.d.ts +2 -2
- package/lib/components/shared/DiffView.d.ts.map +1 -1
- package/lib/components/shared/DiffView.js +8 -7
- package/lib/components/shared/DiffView.js.map +1 -1
- package/lib/components/workspace-setup/CreateProjectModal.d.ts.map +1 -1
- package/lib/components/workspace-setup/CreateProjectModal.js +2 -1
- package/lib/components/workspace-setup/CreateProjectModal.js.map +1 -1
- package/lib/components/workspace-setup/CreateWorkspaceModal.d.ts.map +1 -1
- package/lib/components/workspace-setup/CreateWorkspaceModal.js +2 -1
- package/lib/components/workspace-setup/CreateWorkspaceModal.js.map +1 -1
- package/lib/components/workspace-setup/WorkspaceSetup.d.ts.map +1 -1
- package/lib/components/workspace-setup/WorkspaceSetup.js +2 -1
- package/lib/components/workspace-setup/WorkspaceSetup.js.map +1 -1
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/package.json +8 -11
- package/lib/stores/editor/EditorGraphState.d.ts.map +1 -1
- package/lib/stores/editor/EditorGraphState.js +1 -1
- package/lib/stores/editor/EditorGraphState.js.map +1 -1
- package/lib/stores/editor/EditorTabManagerState.d.ts +1 -1
- package/lib/stores/editor/EditorTabManagerState.d.ts.map +1 -1
- package/lib/stores/editor/EditorTabManagerState.js +1 -1
- package/lib/stores/editor/EditorTabManagerState.js.map +1 -1
- package/lib/stores/editor/GraphEditFormModeState.d.ts.map +1 -1
- package/lib/stores/editor/GraphEditFormModeState.js.map +1 -1
- package/lib/stores/editor/editor-state/EditorState.d.ts +1 -1
- package/lib/stores/editor/editor-state/EditorState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/EditorState.js +1 -1
- package/lib/stores/editor/editor-state/EditorState.js.map +1 -1
- package/lib/stores/editor/editor-state/FileGenerationViewerState.d.ts +2 -2
- package/lib/stores/editor/editor-state/FileGenerationViewerState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/FileGenerationViewerState.js +7 -7
- package/lib/stores/editor/editor-state/FileGenerationViewerState.js.map +1 -1
- package/lib/stores/editor/editor-state/GrammarTextEditorState.d.ts +3 -3
- package/lib/stores/editor/editor-state/GrammarTextEditorState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/GrammarTextEditorState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingEditorState.d.ts +2 -2
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingEditorState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingEditorState.js +50 -26
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingEditorState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingExecutionState.d.ts +1 -2
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingExecutionState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingExecutionState.js +2 -2
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingExecutionState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingTabManagerState.d.ts +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingTabManagerState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingTabManagerState.js +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingTabManagerState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingTestState.d.ts +8 -3
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingTestState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingTestState.js +38 -20
- package/lib/stores/editor/editor-state/element-editor-state/mapping/MappingTestState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/service/ServiceEditorState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/service/ServiceEditorState.js +8 -2
- package/lib/stores/editor/editor-state/element-editor-state/service/ServiceEditorState.js.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/service/ServiceExecutionState.d.ts +1 -2
- package/lib/stores/editor/editor-state/element-editor-state/service/ServiceExecutionState.d.ts.map +1 -1
- package/lib/stores/editor/editor-state/element-editor-state/service/ServiceExecutionState.js +2 -2
- package/lib/stores/editor/editor-state/element-editor-state/service/ServiceExecutionState.js.map +1 -1
- package/package.json +17 -20
- package/src/application/LegendStudio.tsx +0 -18
- package/src/application/LegendStudioDocumentation.ts +5 -0
- package/src/components/editor/edit-panel/EditPanel.tsx +4 -1
- package/src/components/editor/edit-panel/FileGenerationViewer.tsx +2 -2
- package/src/components/editor/edit-panel/GrammarTextEditor.tsx +55 -50
- package/src/components/editor/edit-panel/ModelImporter.tsx +5 -5
- package/src/components/editor/edit-panel/connection-editor/DatabaseBuilder.tsx +4 -4
- package/src/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.tsx +6 -6
- package/src/components/editor/edit-panel/data-editor/DataElementEditor.tsx +4 -4
- package/src/components/editor/edit-panel/data-editor/EmbeddedDataEditor.tsx +3 -2
- package/src/components/editor/edit-panel/data-editor/RelationalCSVDataEditor.tsx +4 -3
- package/src/components/editor/edit-panel/diff-editor/EntityChangeConflictEditor.tsx +22 -20
- package/src/components/editor/edit-panel/diff-editor/EntityDiffView.tsx +2 -2
- package/src/components/editor/edit-panel/element-generation-editor/ElementNativeView.tsx +5 -5
- package/src/components/editor/edit-panel/element-generation-editor/FileSystemViewer.tsx +3 -5
- package/src/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_SchemaSetElementEditor.tsx +5 -4
- package/src/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_SchemaSetModelGenerationEditor.tsx +4 -3
- package/src/components/editor/edit-panel/mapping-editor/MappingEditor.tsx +3 -3
- package/src/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.tsx +18 -16
- package/src/components/editor/edit-panel/mapping-editor/MappingTestEditor.tsx +19 -19
- package/src/components/editor/edit-panel/mapping-editor/MappingTestsExplorer.tsx +4 -4
- package/src/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.tsx +5 -4
- package/src/components/editor/edit-panel/service-editor/ServiceEditor.tsx +2 -2
- package/src/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.tsx +9 -9
- package/src/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.tsx +2 -2
- package/src/components/editor/edit-panel/testable/TestAssertionEditor.tsx +4 -3
- package/src/components/editor/edit-panel/uml-editor/AssociationEditor.tsx +2 -2
- package/src/components/editor/side-bar/Explorer.tsx +8 -8
- package/src/components/editor/side-bar/WorkflowManager.tsx +4 -4
- package/src/components/editor/side-bar/testable/GlobalTestRunner.tsx +7 -6
- package/src/components/extensions/Core_LegendStudioApplicationPlugin.tsx +21 -0
- package/src/components/shared/DiffView.tsx +14 -14
- package/src/components/workspace-setup/CreateProjectModal.tsx +2 -4
- package/src/components/workspace-setup/CreateWorkspaceModal.tsx +2 -4
- package/src/components/workspace-setup/WorkspaceSetup.tsx +1 -1
- package/src/index.ts +1 -1
- package/src/stores/editor/EditorGraphState.ts +2 -4
- package/src/stores/editor/EditorTabManagerState.ts +1 -1
- package/src/stores/editor/GraphEditFormModeState.ts +1 -1
- package/src/stores/editor/editor-state/EditorState.ts +1 -1
- package/src/stores/editor/editor-state/FileGenerationViewerState.ts +8 -8
- package/src/stores/editor/editor-state/GrammarTextEditorState.ts +3 -3
- package/src/stores/editor/editor-state/element-editor-state/mapping/MappingEditorState.ts +63 -31
- package/src/stores/editor/editor-state/element-editor-state/mapping/MappingExecutionState.ts +1 -1
- package/src/stores/editor/editor-state/element-editor-state/mapping/MappingTabManagerState.ts +1 -1
- package/src/stores/editor/editor-state/element-editor-state/mapping/MappingTestState.ts +54 -30
- package/src/stores/editor/editor-state/element-editor-state/service/ServiceEditorState.ts +8 -1
- package/src/stores/editor/editor-state/element-editor-state/service/ServiceExecutionState.ts +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@finos/legend-application-studio",
|
|
3
|
-
"version": "23.1.
|
|
3
|
+
"version": "23.1.8",
|
|
4
4
|
"description": "Legend Studio application core",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"legend",
|
|
@@ -44,18 +44,19 @@
|
|
|
44
44
|
"test:watch": "jest --watch"
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@finos/legend-application": "
|
|
48
|
-
"@finos/legend-art": "
|
|
49
|
-
"@finos/legend-graph": "26.0.
|
|
50
|
-
"@finos/legend-
|
|
51
|
-
"@finos/legend-
|
|
52
|
-
"@finos/legend-server-
|
|
53
|
-
"@finos/legend-
|
|
54
|
-
"@finos/legend-
|
|
47
|
+
"@finos/legend-application": "14.0.0",
|
|
48
|
+
"@finos/legend-art": "6.0.0",
|
|
49
|
+
"@finos/legend-graph": "26.0.5",
|
|
50
|
+
"@finos/legend-lego": "0.1.0",
|
|
51
|
+
"@finos/legend-query-builder": "2.1.3",
|
|
52
|
+
"@finos/legend-server-depot": "4.4.13",
|
|
53
|
+
"@finos/legend-server-sdlc": "4.1.36",
|
|
54
|
+
"@finos/legend-shared": "8.1.0",
|
|
55
|
+
"@finos/legend-storage": "3.0.47",
|
|
55
56
|
"@testing-library/react": "14.0.0",
|
|
56
|
-
"@types/react": "18.0.
|
|
57
|
+
"@types/react": "18.0.34",
|
|
57
58
|
"@types/react-dom": "18.0.11",
|
|
58
|
-
"fast-xml-parser": "4.
|
|
59
|
+
"fast-xml-parser": "4.2.0",
|
|
59
60
|
"mobx": "6.9.0",
|
|
60
61
|
"mobx-react-lite": "3.4.3",
|
|
61
62
|
"mobx-utils": "6.0.6",
|
|
@@ -68,15 +69,15 @@
|
|
|
68
69
|
"yaml": "2.2.1"
|
|
69
70
|
},
|
|
70
71
|
"devDependencies": {
|
|
71
|
-
"@finos/legend-dev-utils": "2.0.
|
|
72
|
+
"@finos/legend-dev-utils": "2.0.52",
|
|
72
73
|
"@jest/globals": "29.5.0",
|
|
73
74
|
"cross-env": "7.0.3",
|
|
74
|
-
"eslint": "8.
|
|
75
|
+
"eslint": "8.38.0",
|
|
75
76
|
"jest": "29.5.0",
|
|
76
77
|
"npm-run-all": "4.1.5",
|
|
77
|
-
"rimraf": "
|
|
78
|
-
"sass": "1.
|
|
79
|
-
"typescript": "5.0.
|
|
78
|
+
"rimraf": "5.0.0",
|
|
79
|
+
"sass": "1.62.0",
|
|
80
|
+
"typescript": "5.0.4"
|
|
80
81
|
},
|
|
81
82
|
"peerDependencies": {
|
|
82
83
|
"react": "^18.0.0"
|
|
@@ -87,9 +88,5 @@
|
|
|
87
88
|
"extensions": {
|
|
88
89
|
"applicationStudioPlugin": "@finos/legend-application-studio-plugin-core",
|
|
89
90
|
"dsl_external_format_applicationStudioPlugin": "@finos/legend-application-studio-plugin-dsl-external-format"
|
|
90
|
-
},
|
|
91
|
-
"typedoc": {
|
|
92
|
-
"entryPoint": "./src/index.ts",
|
|
93
|
-
"readmeFile": "./README.md"
|
|
94
91
|
}
|
|
95
92
|
}
|
|
@@ -19,10 +19,8 @@ import { LegendStudioApplication } from '../components/LegendStudioApplication.j
|
|
|
19
19
|
import { LegendStudioPluginManager } from './LegendStudioPluginManager.js';
|
|
20
20
|
import {
|
|
21
21
|
type LegendApplicationConfig,
|
|
22
|
-
type LegendApplicationLogger,
|
|
23
22
|
ApplicationStoreProvider,
|
|
24
23
|
LegendApplication,
|
|
25
|
-
setupLegendApplicationUILibrary,
|
|
26
24
|
WebApplicationNavigatorProvider,
|
|
27
25
|
type LegendApplicationConfigurationInput,
|
|
28
26
|
BrowserRouter,
|
|
@@ -38,17 +36,8 @@ import { Core_LegendStudioApplicationPlugin } from '../components/extensions/Cor
|
|
|
38
36
|
import {
|
|
39
37
|
QueryBuilder_GraphManagerPreset,
|
|
40
38
|
QueryBuilder_LegendApplicationPlugin,
|
|
41
|
-
setupQueryBuilderUILibrary,
|
|
42
39
|
} from '@finos/legend-query-builder';
|
|
43
40
|
|
|
44
|
-
const setupLegendStudioUILibrary = async (
|
|
45
|
-
pluginManager: LegendStudioPluginManager,
|
|
46
|
-
logger: LegendApplicationLogger,
|
|
47
|
-
): Promise<void> => {
|
|
48
|
-
await setupLegendApplicationUILibrary(pluginManager, logger);
|
|
49
|
-
await setupQueryBuilderUILibrary();
|
|
50
|
-
};
|
|
51
|
-
|
|
52
41
|
export class LegendStudio extends LegendApplication {
|
|
53
42
|
declare config: LegendStudioApplicationConfig;
|
|
54
43
|
declare pluginManager: LegendStudioPluginManager;
|
|
@@ -74,15 +63,8 @@ export class LegendStudio extends LegendApplication {
|
|
|
74
63
|
}
|
|
75
64
|
|
|
76
65
|
async loadApplication(): Promise<void> {
|
|
77
|
-
// Setup React application libraries
|
|
78
|
-
await setupLegendStudioUILibrary(this.pluginManager, this.logger);
|
|
79
|
-
|
|
80
|
-
// Render React application
|
|
81
66
|
const rootElement = createRoot(getRootElement());
|
|
82
67
|
rootElement.render(
|
|
83
|
-
// TODO: would be great if we can have <React.StrictMode> here but since Mobx React is not ready for
|
|
84
|
-
// concurrency yet, we would have to wait
|
|
85
|
-
// See https://github.com/mobxjs/mobx/issues/2526
|
|
86
68
|
<BrowserRouter basename={this.baseUrl}>
|
|
87
69
|
<WebApplicationNavigatorProvider>
|
|
88
70
|
<ApplicationStoreProvider
|
|
@@ -69,6 +69,11 @@ export enum LEGEND_STUDIO_DOCUMENTATION_KEY {
|
|
|
69
69
|
QUESTION_HOW_TO_WRITE_A_CONSTRAINT_LAMBDA = 'question.how-to-write-a-class-constraint-lambda',
|
|
70
70
|
QUESTION_HOW_TO_SPECIFY_A_SUPERTYPE = 'question.how-to-specify-a-class-supertype',
|
|
71
71
|
QUESTION_HOW_TO_UPDATE_PROJECT_GAV_COORDINATES = 'question.how-to-update-project-gav-coordinates',
|
|
72
|
+
QUESTION_WHEN_TO_CONFIGURE_PLATFORM_VERSIONS = 'question.when-to-configure-project-platform-dependencies-versions',
|
|
73
|
+
QUESTION_HOW_TO_WRITE_A_SERVICE_TEST = 'question.how-to-write-a-service-test',
|
|
74
|
+
QUESTION_WHY_DO_I_SEE_ERROR_WITH_ASSOCIATION_PROPERTY_TYPE = 'question.why-do-i-see-error-with-association-property-type',
|
|
75
|
+
QUESTION_HOW_TO_WRITE_SERVICE_CONNECTION_TEST_DATA = 'question.how-to-write-service-connection-test-data',
|
|
76
|
+
QUESTION_HOW_TO_CREATE_A_DATA_ELEMENT = 'question.how-to-create-a-data-element',
|
|
72
77
|
|
|
73
78
|
// contexts
|
|
74
79
|
CONTEXT_CLASS_EDITOR = 'context.class-editor',
|
|
@@ -71,8 +71,11 @@ import type { DSL_LegendStudioApplicationPlugin_Extension } from '../../../store
|
|
|
71
71
|
import { useEditorStore } from '../EditorStoreProvider.js';
|
|
72
72
|
import { PackageableDataEditorState } from '../../../stores/editor/editor-state/element-editor-state/data/DataEditorState.js';
|
|
73
73
|
import { DataElementEditor } from './data-editor/DataElementEditor.js';
|
|
74
|
-
import { TabManager, type TabState } from '@finos/legend-application';
|
|
75
74
|
import { ElementXTGenerationEditor } from './element-generation-editor/ElementXTGenerationEditor.js';
|
|
75
|
+
import {
|
|
76
|
+
TabManager,
|
|
77
|
+
type TabState,
|
|
78
|
+
} from '@finos/legend-application/components';
|
|
76
79
|
|
|
77
80
|
export const ViewerEditPanelSplashScreen: React.FC = () => {
|
|
78
81
|
const commandListWidth = 300;
|
|
@@ -29,7 +29,7 @@ import {
|
|
|
29
29
|
} from '@finos/legend-art';
|
|
30
30
|
import type { FileGenerationSpecification } from '@finos/legend-graph';
|
|
31
31
|
import { useEditorStore } from '../EditorStoreProvider.js';
|
|
32
|
-
import {
|
|
32
|
+
import { CodeEditor } from '@finos/legend-lego/code-editor';
|
|
33
33
|
|
|
34
34
|
export const FileGenerationViewer = observer(() => {
|
|
35
35
|
const editorStore = useEditorStore();
|
|
@@ -90,7 +90,7 @@ export const FileGenerationViewer = observer(() => {
|
|
|
90
90
|
</div>
|
|
91
91
|
</div>
|
|
92
92
|
<PanelContent>
|
|
93
|
-
<
|
|
93
|
+
<CodeEditor
|
|
94
94
|
inputValue={getTextContent(
|
|
95
95
|
generatedFile.content,
|
|
96
96
|
generatedFile.format,
|
|
@@ -23,27 +23,29 @@ import {
|
|
|
23
23
|
} from 'monaco-editor';
|
|
24
24
|
import {
|
|
25
25
|
ContextMenu,
|
|
26
|
-
disposeEditor,
|
|
27
|
-
getBaseTextEditorOptions,
|
|
28
|
-
resetLineNumberGutterWidth,
|
|
29
26
|
clsx,
|
|
30
27
|
WordWrapIcon,
|
|
31
|
-
getEditorValue,
|
|
32
|
-
normalizeLineEnding,
|
|
33
28
|
MoreHorizontalIcon,
|
|
34
29
|
PanelContent,
|
|
35
30
|
useResizeDetector,
|
|
31
|
+
MenuContent,
|
|
32
|
+
MenuContentItem,
|
|
33
|
+
} from '@finos/legend-art';
|
|
34
|
+
import {
|
|
35
|
+
disposeCodeEditor,
|
|
36
|
+
getBaseCodeEditorOptions,
|
|
37
|
+
resetLineNumberGutterWidth,
|
|
38
|
+
getCodeEditorValue,
|
|
39
|
+
normalizeLineEnding,
|
|
36
40
|
setWarningMarkers,
|
|
37
41
|
clearMarkers,
|
|
38
42
|
setErrorMarkers,
|
|
39
43
|
moveCursorToPosition,
|
|
40
|
-
|
|
41
|
-
MenuContentItem,
|
|
42
|
-
} from '@finos/legend-art';
|
|
44
|
+
} from '@finos/legend-lego/code-editor';
|
|
43
45
|
import {
|
|
44
46
|
TAB_SIZE,
|
|
45
|
-
|
|
46
|
-
|
|
47
|
+
CODE_EDITOR_THEME,
|
|
48
|
+
CODE_EDITOR_LANGUAGE,
|
|
47
49
|
useApplicationStore,
|
|
48
50
|
useApplicationNavigationContext,
|
|
49
51
|
getInlineSnippetSuggestions,
|
|
@@ -722,13 +724,13 @@ export const GrammarTextEditor = observer(() => {
|
|
|
722
724
|
if (!editor && textEditorRef.current) {
|
|
723
725
|
const element = textEditorRef.current;
|
|
724
726
|
const _editor = monacoEditorAPI.create(element, {
|
|
725
|
-
...
|
|
726
|
-
language:
|
|
727
|
-
theme:
|
|
727
|
+
...getBaseCodeEditorOptions(),
|
|
728
|
+
language: CODE_EDITOR_LANGUAGE.PURE,
|
|
729
|
+
theme: CODE_EDITOR_THEME.LEGEND,
|
|
728
730
|
renderValidationDecorations: 'on',
|
|
729
731
|
});
|
|
730
732
|
_editor.onDidChangeModelContent(() => {
|
|
731
|
-
grammarTextEditorState.setGraphGrammarText(
|
|
733
|
+
grammarTextEditorState.setGraphGrammarText(getCodeEditorValue(_editor));
|
|
732
734
|
clearMarkers();
|
|
733
735
|
// NOTE: we can technically can reset the current element label regex string here
|
|
734
736
|
// but if we do that on first load, the cursor will not jump to the current element
|
|
@@ -788,7 +790,7 @@ export const GrammarTextEditor = observer(() => {
|
|
|
788
790
|
|
|
789
791
|
if (editor) {
|
|
790
792
|
// Set the value of the editor
|
|
791
|
-
const currentValue =
|
|
793
|
+
const currentValue = getCodeEditorValue(editor);
|
|
792
794
|
if (currentValue !== value) {
|
|
793
795
|
editor.setValue(value);
|
|
794
796
|
}
|
|
@@ -844,7 +846,7 @@ export const GrammarTextEditor = observer(() => {
|
|
|
844
846
|
// hover
|
|
845
847
|
hoverProviderDisposer.current?.dispose();
|
|
846
848
|
hoverProviderDisposer.current = monacoLanguagesAPI.registerHoverProvider(
|
|
847
|
-
|
|
849
|
+
CODE_EDITOR_LANGUAGE.PURE,
|
|
848
850
|
{
|
|
849
851
|
provideHover: (model, position) => {
|
|
850
852
|
const currentWord = model.getWordAtPosition(position);
|
|
@@ -944,42 +946,45 @@ export const GrammarTextEditor = observer(() => {
|
|
|
944
946
|
// suggestion
|
|
945
947
|
suggestionProviderDisposer.current?.dispose();
|
|
946
948
|
suggestionProviderDisposer.current =
|
|
947
|
-
monacoLanguagesAPI.registerCompletionItemProvider(
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
949
|
+
monacoLanguagesAPI.registerCompletionItemProvider(
|
|
950
|
+
CODE_EDITOR_LANGUAGE.PURE,
|
|
951
|
+
{
|
|
952
|
+
// NOTE: we need to specify this to show suggestions for section
|
|
953
|
+
// because by default, only alphanumeric characters trigger completion item provider
|
|
954
|
+
// See https://microsoft.github.io/monaco-editor/api/interfaces/monaco.languages.CompletionContext.html#triggerCharacter
|
|
955
|
+
// See https://github.com/microsoft/monaco-editor/issues/2530#issuecomment-861757198
|
|
956
|
+
triggerCharacters: ['#'],
|
|
957
|
+
provideCompletionItems: (model, position) => {
|
|
958
|
+
let suggestions: monacoLanguagesAPI.CompletionItem[] = [];
|
|
955
959
|
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
960
|
+
// suggestions for parser keyword
|
|
961
|
+
suggestions = suggestions.concat(
|
|
962
|
+
getParserKeywordSuggestions(
|
|
963
|
+
position,
|
|
964
|
+
model,
|
|
965
|
+
collectParserKeywordSuggestions(editorStore),
|
|
966
|
+
),
|
|
967
|
+
);
|
|
964
968
|
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
969
|
+
// suggestions for parser element snippets
|
|
970
|
+
suggestions = suggestions.concat(
|
|
971
|
+
getParserElementSnippetSuggestions(
|
|
972
|
+
position,
|
|
973
|
+
model,
|
|
974
|
+
(parserName: string) =>
|
|
975
|
+
collectParserElementSnippetSuggestions(editorStore, parserName),
|
|
976
|
+
),
|
|
977
|
+
);
|
|
974
978
|
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
+
// inline code snippet suggestions
|
|
980
|
+
suggestions = suggestions.concat(
|
|
981
|
+
getInlineSnippetSuggestions(position, model),
|
|
982
|
+
);
|
|
979
983
|
|
|
980
|
-
|
|
984
|
+
return { suggestions };
|
|
985
|
+
},
|
|
981
986
|
},
|
|
982
|
-
|
|
987
|
+
);
|
|
983
988
|
|
|
984
989
|
useEffect(() => {
|
|
985
990
|
if (editor && forcedCursorPosition) {
|
|
@@ -1025,7 +1030,7 @@ export const GrammarTextEditor = observer(() => {
|
|
|
1025
1030
|
useEffect(
|
|
1026
1031
|
() => (): void => {
|
|
1027
1032
|
if (editor) {
|
|
1028
|
-
|
|
1033
|
+
disposeCodeEditor(editor);
|
|
1029
1034
|
}
|
|
1030
1035
|
// NOTE: make sure the call the disposer again after leaving this editor
|
|
1031
1036
|
// else we would end up with duplicated suggestions and hover infos
|
|
@@ -1080,8 +1085,8 @@ export const GrammarTextEditor = observer(() => {
|
|
|
1080
1085
|
</div>
|
|
1081
1086
|
</div>
|
|
1082
1087
|
<PanelContent className="edit-panel__content">
|
|
1083
|
-
<div ref={ref} className="
|
|
1084
|
-
<div className="
|
|
1088
|
+
<div ref={ref} className="code-editor__container">
|
|
1089
|
+
<div className="code-editor__body" ref={textEditorRef} />
|
|
1085
1090
|
</div>
|
|
1086
1091
|
</PanelContent>
|
|
1087
1092
|
</div>
|
|
@@ -40,15 +40,15 @@ import { flowResult } from 'mobx';
|
|
|
40
40
|
import { useEditorStore } from '../EditorStoreProvider.js';
|
|
41
41
|
import {
|
|
42
42
|
useApplicationStore,
|
|
43
|
-
|
|
43
|
+
CODE_EDITOR_LANGUAGE,
|
|
44
44
|
useApplicationNavigationContext,
|
|
45
|
-
TextInputEditor,
|
|
46
45
|
} from '@finos/legend-application';
|
|
47
46
|
import type { ModelImporterExtensionConfiguration } from '../../../stores/LegendStudioApplicationPlugin.js';
|
|
48
47
|
import { LEGEND_STUDIO_APPLICATION_NAVIGATION_CONTEXT_KEY } from '../../../application/LegendStudioApplicationNavigationContext.js';
|
|
49
48
|
import { SCHEMA_SET_TAB_TYPE } from '../../../stores/editor/editor-state/element-editor-state/external-format/DSL_ExternalFormat_SchemaSetEditorState.js';
|
|
50
49
|
import { SchemaSetModelGenerationEditor } from './external-format-editor/DSL_ExternalFormat_SchemaSetModelGenerationEditor.js';
|
|
51
50
|
import { SchemaSetGeneralEditor } from './external-format-editor/DSL_ExternalFormat_SchemaSetElementEditor.js';
|
|
51
|
+
import { CodeEditor } from '@finos/legend-lego/code-editor';
|
|
52
52
|
|
|
53
53
|
const ExternalFormatModelImporterEditor = observer(
|
|
54
54
|
(props: { externalFormatState: ExternalFormatModelImporterState }) => {
|
|
@@ -189,12 +189,12 @@ export const ModelImporter = observer(() => {
|
|
|
189
189
|
modelImportEditorState.setModelText(val);
|
|
190
190
|
return (
|
|
191
191
|
<div className="panel__content model-loader__editor">
|
|
192
|
-
<
|
|
192
|
+
<CodeEditor
|
|
193
193
|
language={
|
|
194
194
|
modelImportEditorState.nativeType ===
|
|
195
195
|
MODEL_IMPORT_NATIVE_INPUT_TYPE.PURE_GRAMMAR
|
|
196
|
-
?
|
|
197
|
-
:
|
|
196
|
+
? CODE_EDITOR_LANGUAGE.PURE
|
|
197
|
+
: CODE_EDITOR_LANGUAGE.JSON
|
|
198
198
|
}
|
|
199
199
|
inputValue={modelImportEditorState.modelText}
|
|
200
200
|
updateInput={updateModel}
|
|
@@ -45,8 +45,7 @@ import {
|
|
|
45
45
|
} from '../../../../stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.js';
|
|
46
46
|
import { capitalize } from '@finos/legend-shared';
|
|
47
47
|
import {
|
|
48
|
-
|
|
49
|
-
TextInputEditor,
|
|
48
|
+
CODE_EDITOR_LANGUAGE,
|
|
50
49
|
useApplicationStore,
|
|
51
50
|
useConditionedApplicationNavigationContext,
|
|
52
51
|
} from '@finos/legend-application';
|
|
@@ -56,6 +55,7 @@ import {
|
|
|
56
55
|
} from './DatabaseEditorHelper.js';
|
|
57
56
|
import { flowResult } from 'mobx';
|
|
58
57
|
import { LEGEND_STUDIO_APPLICATION_NAVIGATION_CONTEXT_KEY } from '../../../../application/LegendStudioApplicationNavigationContext.js';
|
|
58
|
+
import { CodeEditor } from '@finos/legend-lego/code-editor';
|
|
59
59
|
|
|
60
60
|
const getNodeIcon = (node: DatabaseBuilderTreeNodeData): React.ReactNode => {
|
|
61
61
|
if (node instanceof SchemaDatabaseBuilderTreeNodeData) {
|
|
@@ -344,8 +344,8 @@ export const DatabaseBuilder = observer(
|
|
|
344
344
|
</div>
|
|
345
345
|
</div>
|
|
346
346
|
<PanelContent>
|
|
347
|
-
<
|
|
348
|
-
language={
|
|
347
|
+
<CodeEditor
|
|
348
|
+
language={CODE_EDITOR_LANGUAGE.PURE}
|
|
349
349
|
inputValue={databaseBuilderState.databaseGrammarCode}
|
|
350
350
|
isReadOnly={true}
|
|
351
351
|
/>
|
package/src/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.tsx
CHANGED
|
@@ -89,10 +89,9 @@ import type { STO_Relational_LegendStudioApplicationPlugin_Extension } from '../
|
|
|
89
89
|
import { DatabaseBuilder } from './DatabaseBuilder.js';
|
|
90
90
|
import { useEditorStore } from '../../EditorStoreProvider.js';
|
|
91
91
|
import {
|
|
92
|
-
|
|
92
|
+
CODE_EDITOR_LANGUAGE,
|
|
93
93
|
buildElementOption,
|
|
94
94
|
type PackageableElementOption,
|
|
95
|
-
TextInputEditor,
|
|
96
95
|
} from '@finos/legend-application';
|
|
97
96
|
import { connection_setStore } from '../../../../stores/editor/shared/modifier/DSL_Mapping_GraphModifierHelper.js';
|
|
98
97
|
import {
|
|
@@ -165,6 +164,7 @@ import {
|
|
|
165
164
|
import { MapperPostProcessorEditor } from './post-processor-editor/MapperPostProcessorEditor.js';
|
|
166
165
|
import { UnsupportedEditorPanel } from '../UnsupportedElementEditor.js';
|
|
167
166
|
import type { MapperPostProcessorEditorState } from '../../../../stores/editor/editor-state/element-editor-state/connection/PostProcessorEditorState.js';
|
|
167
|
+
import { CodeEditor } from '@finos/legend-lego/code-editor';
|
|
168
168
|
|
|
169
169
|
const LocalH2DatasourceSpecificationEditor = observer(
|
|
170
170
|
(props: {
|
|
@@ -186,7 +186,7 @@ const LocalH2DatasourceSpecificationEditor = observer(
|
|
|
186
186
|
<Modal darkMode={true} className="editor-modal">
|
|
187
187
|
<ModalHeader title="test data setup SQL" />
|
|
188
188
|
<ModalBody className="modal__body__large">
|
|
189
|
-
<
|
|
189
|
+
<CodeEditor
|
|
190
190
|
inputValue={SQLValue}
|
|
191
191
|
updateInput={(value: string | undefined): void =>
|
|
192
192
|
localH2DatasourceSpecification_setTestDataSetupSqls(
|
|
@@ -195,7 +195,7 @@ const LocalH2DatasourceSpecificationEditor = observer(
|
|
|
195
195
|
)
|
|
196
196
|
}
|
|
197
197
|
isReadOnly={isReadOnly}
|
|
198
|
-
language={
|
|
198
|
+
language={CODE_EDITOR_LANGUAGE.SQL}
|
|
199
199
|
/>
|
|
200
200
|
</ModalBody>
|
|
201
201
|
<ModalFooter>
|
|
@@ -218,7 +218,7 @@ const LocalH2DatasourceSpecificationEditor = observer(
|
|
|
218
218
|
</Button>
|
|
219
219
|
</div>
|
|
220
220
|
<div className="panel__content__form__section__text-editor">
|
|
221
|
-
<
|
|
221
|
+
<CodeEditor
|
|
222
222
|
inputValue={SQLValue}
|
|
223
223
|
updateInput={(value: string | undefined): void =>
|
|
224
224
|
localH2DatasourceSpecification_setTestDataSetupSqls(
|
|
@@ -227,7 +227,7 @@ const LocalH2DatasourceSpecificationEditor = observer(
|
|
|
227
227
|
)
|
|
228
228
|
}
|
|
229
229
|
isReadOnly={isReadOnly}
|
|
230
|
-
language={
|
|
230
|
+
language={CODE_EDITOR_LANGUAGE.SQL}
|
|
231
231
|
/>
|
|
232
232
|
</div>
|
|
233
233
|
</div>
|
|
@@ -72,12 +72,12 @@ import { getEditorLanguageForFormat } from '../../../../stores/editor/editor-sta
|
|
|
72
72
|
import type { ExternalFormatDataState } from '../../../../stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.js';
|
|
73
73
|
import { renderEmbeddedDataEditor } from './EmbeddedDataEditor.js';
|
|
74
74
|
import {
|
|
75
|
-
LEGEND_APPLICATION_DOCUMENTATION_KEY,
|
|
76
|
-
TextInputEditor,
|
|
77
75
|
useApplicationNavigationContext,
|
|
78
76
|
useApplicationStore,
|
|
79
77
|
} from '@finos/legend-application';
|
|
80
78
|
import { LEGEND_STUDIO_APPLICATION_NAVIGATION_CONTEXT_KEY } from '../../../../application/LegendStudioApplicationNavigationContext.js';
|
|
79
|
+
import { LEGEND_STUDIO_DOCUMENTATION_KEY } from '../../../../application/LegendStudioDocumentation.js';
|
|
80
|
+
import { CodeEditor } from '@finos/legend-lego/code-editor';
|
|
81
81
|
|
|
82
82
|
export const ExternalFormatDataEditor = observer(
|
|
83
83
|
(props: {
|
|
@@ -154,7 +154,7 @@ export const ExternalFormatDataEditor = observer(
|
|
|
154
154
|
</div>
|
|
155
155
|
<div className={clsx('external-format-data-editor__content')}>
|
|
156
156
|
<div className="external-format-data-editor__content__input">
|
|
157
|
-
<
|
|
157
|
+
<CodeEditor
|
|
158
158
|
language={language}
|
|
159
159
|
inputValue={externalFormatDataState.embeddedData.data}
|
|
160
160
|
updateInput={changeData}
|
|
@@ -269,7 +269,7 @@ export const DataElementEditor = observer(() => {
|
|
|
269
269
|
);
|
|
270
270
|
const seeDocumentation = (): void =>
|
|
271
271
|
applicationStore.assistantService.openDocumentationEntry(
|
|
272
|
-
|
|
272
|
+
LEGEND_STUDIO_DOCUMENTATION_KEY.QUESTION_HOW_TO_CREATE_A_DATA_ELEMENT,
|
|
273
273
|
);
|
|
274
274
|
|
|
275
275
|
useApplicationNavigationContext(
|
|
@@ -45,8 +45,9 @@ import {
|
|
|
45
45
|
RelationalCSVDataState,
|
|
46
46
|
} from '../../../../stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.js';
|
|
47
47
|
import type { DataElement } from '@finos/legend-graph';
|
|
48
|
-
import { buildElementOption
|
|
48
|
+
import { buildElementOption } from '@finos/legend-application';
|
|
49
49
|
import { RelationalCSVDataEditor } from './RelationalCSVDataEditor.js';
|
|
50
|
+
import { CodeEditor } from '@finos/legend-lego/code-editor';
|
|
50
51
|
|
|
51
52
|
export const ExternalFormatDataEditor = observer(
|
|
52
53
|
(props: {
|
|
@@ -134,7 +135,7 @@ export const ExternalFormatDataEditor = observer(
|
|
|
134
135
|
</div>
|
|
135
136
|
<div className={clsx('external-format-data-editor__content')}>
|
|
136
137
|
<div className="external-format-data-editor__content__input">
|
|
137
|
-
<
|
|
138
|
+
<CodeEditor
|
|
138
139
|
language={language}
|
|
139
140
|
inputValue={externalFormatDataState.embeddedData.data}
|
|
140
141
|
updateInput={changeData}
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
import {
|
|
17
|
+
import { CODE_EDITOR_LANGUAGE } from '@finos/legend-application';
|
|
18
18
|
import {
|
|
19
19
|
BlankPanelPlaceholder,
|
|
20
20
|
clsx,
|
|
@@ -32,6 +32,7 @@ import type { RelationalCSVDataTable } from '@finos/legend-graph';
|
|
|
32
32
|
import { observer } from 'mobx-react-lite';
|
|
33
33
|
import { forwardRef, useState } from 'react';
|
|
34
34
|
import type { RelationalCSVDataState } from '../../../../stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.js';
|
|
35
|
+
import { CodeEditor } from '@finos/legend-lego/code-editor';
|
|
35
36
|
|
|
36
37
|
const RelationalTableIdentifierModal = observer(
|
|
37
38
|
(props: { dataState: RelationalCSVDataState; isReadOnly: boolean }) => {
|
|
@@ -225,11 +226,11 @@ export const RelationalCSVDataEditor = observer(
|
|
|
225
226
|
<div className="relational-data-editor__content">
|
|
226
227
|
{currentTableState && (
|
|
227
228
|
<div className="relational-data-editor__values">
|
|
228
|
-
<
|
|
229
|
+
<CodeEditor
|
|
229
230
|
inputValue={currentTableState.table.values}
|
|
230
231
|
updateInput={updateTableValues}
|
|
231
232
|
isReadOnly={isReadOnly}
|
|
232
|
-
language={
|
|
233
|
+
language={CODE_EDITOR_LANGUAGE.TEXT}
|
|
233
234
|
/>
|
|
234
235
|
</div>
|
|
235
236
|
)}
|
|
@@ -24,8 +24,8 @@ import {
|
|
|
24
24
|
} from 'monaco-editor';
|
|
25
25
|
import {
|
|
26
26
|
TAB_SIZE,
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
CODE_EDITOR_THEME,
|
|
28
|
+
CODE_EDITOR_LANGUAGE,
|
|
29
29
|
useApplicationStore,
|
|
30
30
|
} from '@finos/legend-application';
|
|
31
31
|
import {
|
|
@@ -44,19 +44,21 @@ import {
|
|
|
44
44
|
import {
|
|
45
45
|
clsx,
|
|
46
46
|
CustomSelectorInput,
|
|
47
|
-
disposeEditor,
|
|
48
|
-
getBaseTextEditorOptions,
|
|
49
|
-
moveCursorToPosition,
|
|
50
|
-
setErrorMarkers,
|
|
51
|
-
resetLineNumberGutterWidth,
|
|
52
|
-
getEditorValue,
|
|
53
|
-
normalizeLineEnding,
|
|
54
47
|
CompareIcon,
|
|
55
48
|
ArrowDownIcon,
|
|
56
49
|
ArrowUpIcon,
|
|
57
50
|
useResizeDetector,
|
|
58
|
-
clearMarkers,
|
|
59
51
|
} from '@finos/legend-art';
|
|
52
|
+
import {
|
|
53
|
+
disposeCodeEditor,
|
|
54
|
+
getBaseCodeEditorOptions,
|
|
55
|
+
moveCursorToPosition,
|
|
56
|
+
setErrorMarkers,
|
|
57
|
+
resetLineNumberGutterWidth,
|
|
58
|
+
getCodeEditorValue,
|
|
59
|
+
normalizeLineEnding,
|
|
60
|
+
clearMarkers,
|
|
61
|
+
} from '@finos/legend-lego/code-editor';
|
|
60
62
|
import { TextDiffView } from '../../../shared/DiffView.js';
|
|
61
63
|
import { getPrettyLabelForRevision } from '../../../../stores/editor/editor-state/entity-diff-editor-state/EntityDiffEditorState.js';
|
|
62
64
|
import { flowResult } from 'mobx';
|
|
@@ -192,9 +194,9 @@ const MergeConflictEditor = observer(
|
|
|
192
194
|
if (!editor && textInputRef.current) {
|
|
193
195
|
const element = textInputRef.current;
|
|
194
196
|
const _editor = monacoEditorAPI.create(element, {
|
|
195
|
-
...
|
|
196
|
-
theme:
|
|
197
|
-
language:
|
|
197
|
+
...getBaseCodeEditorOptions(),
|
|
198
|
+
theme: CODE_EDITOR_THEME.LEGEND,
|
|
199
|
+
language: CODE_EDITOR_LANGUAGE.PURE,
|
|
198
200
|
minimap: { enabled: false },
|
|
199
201
|
formatOnType: true,
|
|
200
202
|
formatOnPaste: true,
|
|
@@ -210,7 +212,7 @@ const MergeConflictEditor = observer(
|
|
|
210
212
|
onDidChangeModelContentEventDisposer.current?.dispose();
|
|
211
213
|
onDidChangeModelContentEventDisposer.current =
|
|
212
214
|
editor.onDidChangeModelContent(() => {
|
|
213
|
-
conflictEditorState.setMergedText(
|
|
215
|
+
conflictEditorState.setMergedText(getCodeEditorValue(editor));
|
|
214
216
|
conflictEditorState.clearMergeEditorError();
|
|
215
217
|
});
|
|
216
218
|
|
|
@@ -280,7 +282,7 @@ const MergeConflictEditor = observer(
|
|
|
280
282
|
// CodeLens registration
|
|
281
283
|
mergeConflictResolutionCodeLensDisposer.current?.dispose();
|
|
282
284
|
mergeConflictResolutionCodeLensDisposer.current =
|
|
283
|
-
monacoLanguagesAPI.registerCodeLensProvider(
|
|
285
|
+
monacoLanguagesAPI.registerCodeLensProvider(CODE_EDITOR_LANGUAGE.PURE, {
|
|
284
286
|
provideCodeLenses: (model, token) => ({
|
|
285
287
|
lenses: conflictEditorState.mergeConflicts.flatMap((conflict) =>
|
|
286
288
|
[
|
|
@@ -522,7 +524,7 @@ const MergeConflictEditor = observer(
|
|
|
522
524
|
useEffect(() => {
|
|
523
525
|
if (editor) {
|
|
524
526
|
const editorModel = editor.getModel();
|
|
525
|
-
const currentValue =
|
|
527
|
+
const currentValue = getCodeEditorValue(editor);
|
|
526
528
|
if (editorModel && currentValue !== value) {
|
|
527
529
|
if (!hasInitializedTextValue) {
|
|
528
530
|
editor.setValue(value);
|
|
@@ -576,7 +578,7 @@ const MergeConflictEditor = observer(
|
|
|
576
578
|
useEffect(
|
|
577
579
|
() => (): void => {
|
|
578
580
|
if (editor) {
|
|
579
|
-
|
|
581
|
+
disposeCodeEditor(editor);
|
|
580
582
|
}
|
|
581
583
|
onDidChangeModelContentEventDisposer.current?.dispose();
|
|
582
584
|
onDidChangeCursorPositionEventDisposer.current?.dispose();
|
|
@@ -588,8 +590,8 @@ const MergeConflictEditor = observer(
|
|
|
588
590
|
); // dispose editor
|
|
589
591
|
|
|
590
592
|
return (
|
|
591
|
-
<div ref={ref} className="
|
|
592
|
-
<div className="
|
|
593
|
+
<div ref={ref} className="code-editor__container">
|
|
594
|
+
<div className="code-editor__body" ref={textInputRef} />
|
|
593
595
|
</div>
|
|
594
596
|
);
|
|
595
597
|
},
|
|
@@ -764,7 +766,7 @@ export const EntityChangeConflictEditor = observer(
|
|
|
764
766
|
{currentMode !==
|
|
765
767
|
ENTITY_CHANGE_CONFLICT_EDITOR_VIEW_MODE.MERGE_VIEW && (
|
|
766
768
|
<TextDiffView
|
|
767
|
-
language={
|
|
769
|
+
language={CODE_EDITOR_LANGUAGE.PURE}
|
|
768
770
|
from={currentModeComparisonViewInfo.fromGrammarText ?? ''}
|
|
769
771
|
to={currentModeComparisonViewInfo.toGrammarText ?? ''}
|
|
770
772
|
/>
|