@finos/legend-application-studio 20.1.2 → 21.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.
Files changed (330) hide show
  1. package/lib/application/LegendStudioApplicationConfig.d.ts +0 -2
  2. package/lib/application/LegendStudioApplicationConfig.d.ts.map +1 -1
  3. package/lib/application/LegendStudioApplicationConfig.js.map +1 -1
  4. package/lib/components/Core_LegendStudioApplicationPlugin.js +13 -13
  5. package/lib/components/DSL_ExternalFormat_LegendStudioApplicationPlugin.js +4 -4
  6. package/lib/components/DSL_ExternalFormat_LegendStudioDocumentation.d.ts +2 -2
  7. package/lib/components/DSL_ExternalFormat_LegendStudioDocumentation.js +2 -2
  8. package/lib/components/LegendStudioApplication.d.ts.map +1 -1
  9. package/lib/components/LegendStudioApplication.js +19 -19
  10. package/lib/components/LegendStudioApplication.js.map +1 -1
  11. package/lib/components/LegendStudioTestID.d.ts +1 -1
  12. package/lib/components/LegendStudioTestID.d.ts.map +1 -1
  13. package/lib/components/LegendStudioTestID.js +1 -1
  14. package/lib/components/LegendStudioTestID.js.map +1 -1
  15. package/lib/components/editor/command-center/ProjectSearchCommand.d.ts.map +1 -1
  16. package/lib/components/editor/command-center/ProjectSearchCommand.js +1 -1
  17. package/lib/components/editor/command-center/ProjectSearchCommand.js.map +1 -1
  18. package/lib/components/editor/edit-panel/EditPanel.d.ts.map +1 -1
  19. package/lib/components/editor/edit-panel/EditPanel.js +52 -73
  20. package/lib/components/editor/edit-panel/EditPanel.js.map +1 -1
  21. package/lib/components/editor/edit-panel/FileGenerationViewer.js +5 -5
  22. package/lib/components/editor/edit-panel/FileGenerationViewer.js.map +1 -1
  23. package/lib/components/editor/edit-panel/FunctionEditor.js +3 -3
  24. package/lib/components/editor/edit-panel/FunctionEditor.js.map +1 -1
  25. package/lib/components/editor/edit-panel/GenerationSpecificationEditor.d.ts.map +1 -1
  26. package/lib/components/editor/edit-panel/GenerationSpecificationEditor.js +3 -3
  27. package/lib/components/editor/edit-panel/GenerationSpecificationEditor.js.map +1 -1
  28. package/lib/components/editor/edit-panel/GrammarTextEditor.d.ts.map +1 -1
  29. package/lib/components/editor/edit-panel/GrammarTextEditor.js +14 -14
  30. package/lib/components/editor/edit-panel/GrammarTextEditor.js.map +1 -1
  31. package/lib/components/editor/edit-panel/ModelImporter.js +1 -1
  32. package/lib/components/editor/edit-panel/ModelImporter.js.map +1 -1
  33. package/lib/components/editor/edit-panel/RuntimeEditor.d.ts.map +1 -1
  34. package/lib/components/editor/edit-panel/RuntimeEditor.js +4 -4
  35. package/lib/components/editor/edit-panel/RuntimeEditor.js.map +1 -1
  36. package/lib/components/editor/edit-panel/UnsupportedElementEditor.d.ts.map +1 -1
  37. package/lib/components/editor/edit-panel/UnsupportedElementEditor.js +1 -1
  38. package/lib/components/editor/edit-panel/UnsupportedElementEditor.js.map +1 -1
  39. package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.js +1 -1
  40. package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.js.map +1 -1
  41. package/lib/components/editor/edit-panel/data-editor/DataElementEditor.js +3 -3
  42. package/lib/components/editor/edit-panel/data-editor/DataElementEditor.js.map +1 -1
  43. package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.d.ts.map +1 -1
  44. package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.js +3 -3
  45. package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.js.map +1 -1
  46. package/lib/components/editor/edit-panel/diff-editor/EntityDiffView.js +1 -1
  47. package/lib/components/editor/edit-panel/diff-editor/EntityDiffView.js.map +1 -1
  48. package/lib/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.d.ts.map +1 -1
  49. package/lib/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.js +3 -3
  50. package/lib/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.js.map +1 -1
  51. package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_BindingElementEditor.d.ts.map +1 -1
  52. package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_BindingElementEditor.js +1 -1
  53. package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_BindingElementEditor.js.map +1 -1
  54. package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_SchemaSetElementEditor.js +3 -3
  55. package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_SchemaSetElementEditor.js.map +1 -1
  56. package/lib/components/editor/edit-panel/mapping-editor/ClassMappingEditor.d.ts.map +1 -1
  57. package/lib/components/editor/edit-panel/mapping-editor/ClassMappingEditor.js +8 -8
  58. package/lib/components/editor/edit-panel/mapping-editor/ClassMappingEditor.js.map +1 -1
  59. package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.d.ts.map +1 -1
  60. package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.js +7 -7
  61. package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.js.map +1 -1
  62. package/lib/components/editor/edit-panel/mapping-editor/FlatDataPropertyMappingEditor.js +1 -1
  63. package/lib/components/editor/edit-panel/mapping-editor/FlatDataPropertyMappingEditor.js.map +1 -1
  64. package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.js +2 -2
  65. package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.js.map +1 -1
  66. package/lib/components/editor/edit-panel/mapping-editor/MappingEditor.js +2 -2
  67. package/lib/components/editor/edit-panel/mapping-editor/MappingEditor.js.map +1 -1
  68. package/lib/components/editor/edit-panel/mapping-editor/MappingExplorer.js +5 -5
  69. package/lib/components/editor/edit-panel/mapping-editor/MappingExplorer.js.map +1 -1
  70. package/lib/components/editor/edit-panel/mapping-editor/MappingTestsExplorer.js +3 -3
  71. package/lib/components/editor/edit-panel/mapping-editor/MappingTestsExplorer.js.map +1 -1
  72. package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.js +1 -1
  73. package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.js.map +1 -1
  74. package/lib/components/editor/edit-panel/mapping-editor/OperationSetImplementationEditor.js +3 -3
  75. package/lib/components/editor/edit-panel/mapping-editor/OperationSetImplementationEditor.js.map +1 -1
  76. package/lib/components/editor/edit-panel/mapping-editor/PropertyMappingsEditor.js +3 -3
  77. package/lib/components/editor/edit-panel/mapping-editor/PropertyMappingsEditor.js.map +1 -1
  78. package/lib/components/editor/edit-panel/mapping-editor/PurePropertyMappingEditor.d.ts.map +1 -1
  79. package/lib/components/editor/edit-panel/mapping-editor/PurePropertyMappingEditor.js +11 -9
  80. package/lib/components/editor/edit-panel/mapping-editor/PurePropertyMappingEditor.js.map +1 -1
  81. package/lib/components/editor/edit-panel/mapping-editor/relational/RelationalPropertyMappingEditor.js +2 -2
  82. package/lib/components/editor/edit-panel/mapping-editor/relational/RelationalPropertyMappingEditor.js.map +1 -1
  83. package/lib/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.js +1 -1
  84. package/lib/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.js.map +1 -1
  85. package/lib/components/editor/edit-panel/service-editor/ServiceEditor.d.ts.map +1 -1
  86. package/lib/components/editor/edit-panel/service-editor/ServiceEditor.js +2 -2
  87. package/lib/components/editor/edit-panel/service-editor/ServiceEditor.js.map +1 -1
  88. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionEditor.d.ts.map +1 -1
  89. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionEditor.js +5 -4
  90. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionEditor.js.map +1 -1
  91. package/lib/components/editor/edit-panel/service-editor/ServiceRegistrationEditor.d.ts.map +1 -1
  92. package/lib/components/editor/edit-panel/service-editor/ServiceRegistrationEditor.js +1 -1
  93. package/lib/components/editor/edit-panel/service-editor/ServiceRegistrationEditor.js.map +1 -1
  94. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestsEditor.d.ts.map +1 -1
  95. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestsEditor.js +9 -3
  96. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestsEditor.js.map +1 -1
  97. package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.d.ts.map +1 -1
  98. package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.js +2 -2
  99. package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.js.map +1 -1
  100. package/lib/components/editor/edit-panel/uml-editor/ClassEditor.d.ts.map +1 -1
  101. package/lib/components/editor/edit-panel/uml-editor/ClassEditor.js +8 -8
  102. package/lib/components/editor/edit-panel/uml-editor/ClassEditor.js.map +1 -1
  103. package/lib/components/editor/edit-panel/uml-editor/EnumerationEditor.d.ts.map +1 -1
  104. package/lib/components/editor/edit-panel/uml-editor/EnumerationEditor.js +2 -2
  105. package/lib/components/editor/edit-panel/uml-editor/EnumerationEditor.js.map +1 -1
  106. package/lib/components/editor/edit-panel/uml-editor/ProfileEditor.d.ts.map +1 -1
  107. package/lib/components/editor/edit-panel/uml-editor/ProfileEditor.js +1 -1
  108. package/lib/components/editor/edit-panel/uml-editor/ProfileEditor.js.map +1 -1
  109. package/lib/components/editor/edit-panel/uml-editor/StereotypeSelector.js +1 -1
  110. package/lib/components/editor/edit-panel/uml-editor/StereotypeSelector.js.map +1 -1
  111. package/lib/components/editor/edit-panel/uml-editor/TaggedValueEditor.js +1 -1
  112. package/lib/components/editor/edit-panel/uml-editor/TaggedValueEditor.js.map +1 -1
  113. package/lib/components/editor/edit-panel/uml-editor/UMLEditor.d.ts.map +1 -1
  114. package/lib/components/editor/edit-panel/uml-editor/UMLEditor.js +1 -1
  115. package/lib/components/editor/edit-panel/uml-editor/UMLEditor.js.map +1 -1
  116. package/lib/components/editor/side-bar/Explorer.js +5 -5
  117. package/lib/components/editor/side-bar/Explorer.js.map +1 -1
  118. package/lib/components/editor/side-bar/LocalChanges.js +6 -6
  119. package/lib/components/editor/side-bar/LocalChanges.js.map +1 -1
  120. package/lib/components/editor/side-bar/WorkspaceReview.js +4 -4
  121. package/lib/components/editor/side-bar/WorkspaceReview.js.map +1 -1
  122. package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.js +1 -1
  123. package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.js.map +1 -1
  124. package/lib/components/editor/side-bar/WorkspaceUpdateConflictResolver.js +6 -6
  125. package/lib/components/editor/side-bar/WorkspaceUpdateConflictResolver.js.map +1 -1
  126. package/lib/components/editor/side-bar/WorkspaceUpdater.js +6 -6
  127. package/lib/components/editor/side-bar/WorkspaceUpdater.js.map +1 -1
  128. package/lib/components/workspace-review/WorkspaceReviewPanel.d.ts.map +1 -1
  129. package/lib/components/workspace-review/WorkspaceReviewPanel.js +16 -16
  130. package/lib/components/workspace-review/WorkspaceReviewPanel.js.map +1 -1
  131. package/lib/components/workspace-review/WorkspaceReviewSideBar.js +4 -4
  132. package/lib/components/workspace-review/WorkspaceReviewSideBar.js.map +1 -1
  133. package/lib/index.css +2 -2
  134. package/lib/index.css.map +1 -1
  135. package/lib/index.d.ts +1 -0
  136. package/lib/index.d.ts.map +1 -1
  137. package/lib/index.js +1 -0
  138. package/lib/index.js.map +1 -1
  139. package/lib/package.json +1 -1
  140. package/lib/stores/EditorGraphState.d.ts +1 -1
  141. package/lib/stores/EditorGraphState.d.ts.map +1 -1
  142. package/lib/stores/EditorGraphState.js +24 -44
  143. package/lib/stores/EditorGraphState.js.map +1 -1
  144. package/lib/stores/EditorSDLCState.js +3 -3
  145. package/lib/stores/EditorSDLCState.js.map +1 -1
  146. package/lib/stores/EditorStore.d.ts +19 -42
  147. package/lib/stores/EditorStore.d.ts.map +1 -1
  148. package/lib/stores/EditorStore.js +42 -223
  149. package/lib/stores/EditorStore.js.map +1 -1
  150. package/lib/stores/EditorTabManagerState.d.ts +56 -0
  151. package/lib/stores/EditorTabManagerState.d.ts.map +1 -0
  152. package/lib/stores/EditorTabManagerState.js +144 -0
  153. package/lib/stores/EditorTabManagerState.js.map +1 -0
  154. package/lib/stores/ExplorerTreeState.d.ts.map +1 -1
  155. package/lib/stores/ExplorerTreeState.js +1 -1
  156. package/lib/stores/ExplorerTreeState.js.map +1 -1
  157. package/lib/stores/LegendStudioCommand.js +8 -8
  158. package/lib/stores/LegendStudioCommand.js.map +1 -1
  159. package/lib/stores/LegendStudioDocumentation.d.ts +14 -14
  160. package/lib/stores/LegendStudioDocumentation.js +14 -14
  161. package/lib/stores/editor-state/EditorState.d.ts +7 -6
  162. package/lib/stores/editor-state/EditorState.d.ts.map +1 -1
  163. package/lib/stores/editor-state/EditorState.js +3 -6
  164. package/lib/stores/editor-state/EditorState.js.map +1 -1
  165. package/lib/stores/editor-state/FileGenerationViewerState.d.ts +5 -4
  166. package/lib/stores/editor-state/FileGenerationViewerState.d.ts.map +1 -1
  167. package/lib/stores/editor-state/FileGenerationViewerState.js +11 -8
  168. package/lib/stores/editor-state/FileGenerationViewerState.js.map +1 -1
  169. package/lib/stores/editor-state/GraphGenerationState.d.ts.map +1 -1
  170. package/lib/stores/editor-state/GraphGenerationState.js +10 -16
  171. package/lib/stores/editor-state/GraphGenerationState.js.map +1 -1
  172. package/lib/stores/editor-state/ModelImporterState.d.ts +2 -1
  173. package/lib/stores/editor-state/ModelImporterState.d.ts.map +1 -1
  174. package/lib/stores/editor-state/ModelImporterState.js +4 -1
  175. package/lib/stores/editor-state/ModelImporterState.js.map +1 -1
  176. package/lib/stores/editor-state/ProjectConfigurationEditorState.d.ts +2 -1
  177. package/lib/stores/editor-state/ProjectConfigurationEditorState.d.ts.map +1 -1
  178. package/lib/stores/editor-state/ProjectConfigurationEditorState.js +5 -2
  179. package/lib/stores/editor-state/ProjectConfigurationEditorState.js.map +1 -1
  180. package/lib/stores/editor-state/element-editor-state/ElementEditorState.d.ts +13 -1
  181. package/lib/stores/editor-state/element-editor-state/ElementEditorState.d.ts.map +1 -1
  182. package/lib/stores/editor-state/element-editor-state/ElementEditorState.js +9 -2
  183. package/lib/stores/editor-state/element-editor-state/ElementEditorState.js.map +1 -1
  184. package/lib/stores/editor-state/element-editor-state/ElementFileGenerationState.js +1 -1
  185. package/lib/stores/editor-state/element-editor-state/ElementFileGenerationState.js.map +1 -1
  186. package/lib/stores/editor-state/element-editor-state/mapping/MappingEditorState.d.ts +5 -7
  187. package/lib/stores/editor-state/element-editor-state/mapping/MappingEditorState.d.ts.map +1 -1
  188. package/lib/stores/editor-state/element-editor-state/mapping/MappingEditorState.js +7 -8
  189. package/lib/stores/editor-state/element-editor-state/mapping/MappingEditorState.js.map +1 -1
  190. package/lib/stores/editor-state/element-editor-state/mapping/MappingElementState.d.ts +7 -6
  191. package/lib/stores/editor-state/element-editor-state/mapping/MappingElementState.d.ts.map +1 -1
  192. package/lib/stores/editor-state/element-editor-state/mapping/MappingElementState.js +7 -3
  193. package/lib/stores/editor-state/element-editor-state/mapping/MappingElementState.js.map +1 -1
  194. package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionState.d.ts +3 -2
  195. package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionState.d.ts.map +1 -1
  196. package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionState.js +8 -4
  197. package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionState.js.map +1 -1
  198. package/lib/stores/editor-state/element-editor-state/mapping/MappingTabManagerState.d.ts +19 -0
  199. package/lib/stores/editor-state/element-editor-state/mapping/MappingTabManagerState.d.ts.map +1 -0
  200. package/lib/stores/editor-state/element-editor-state/mapping/MappingTabManagerState.js +19 -0
  201. package/lib/stores/editor-state/element-editor-state/mapping/MappingTabManagerState.js.map +1 -0
  202. package/lib/stores/editor-state/element-editor-state/mapping/MappingTestState.d.ts +8 -7
  203. package/lib/stores/editor-state/element-editor-state/mapping/MappingTestState.d.ts.map +1 -1
  204. package/lib/stores/editor-state/element-editor-state/mapping/MappingTestState.js +6 -2
  205. package/lib/stores/editor-state/element-editor-state/mapping/MappingTestState.js.map +1 -1
  206. package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.d.ts +7 -0
  207. package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.d.ts.map +1 -1
  208. package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.js +21 -2
  209. package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.js.map +1 -1
  210. package/lib/stores/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.d.ts +5 -3
  211. package/lib/stores/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.d.ts.map +1 -1
  212. package/lib/stores/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.js +8 -4
  213. package/lib/stores/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.js.map +1 -1
  214. package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffEditorState.d.ts +1 -1
  215. package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffEditorState.js +1 -1
  216. package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffViewState.d.ts +7 -5
  217. package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffViewState.d.ts.map +1 -1
  218. package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffViewState.js +19 -12
  219. package/lib/stores/editor-state/entity-diff-editor-state/EntityDiffViewState.js.map +1 -1
  220. package/lib/stores/project-viewer/ProjectViewerStore.js +1 -1
  221. package/lib/stores/project-viewer/ProjectViewerStore.js.map +1 -1
  222. package/lib/stores/shared/DnDUtils.d.ts +1 -1
  223. package/lib/stores/shared/DnDUtils.d.ts.map +1 -1
  224. package/lib/stores/shared/DnDUtils.js.map +1 -1
  225. package/lib/stores/shared/modifier/DSL_Mapping_GraphModifierHelper.d.ts +7 -7
  226. package/lib/stores/shared/modifier/DSL_Mapping_GraphModifierHelper.d.ts.map +1 -1
  227. package/lib/stores/shared/modifier/DSL_Mapping_GraphModifierHelper.js +3 -3
  228. package/lib/stores/shared/modifier/DSL_Mapping_GraphModifierHelper.js.map +1 -1
  229. package/lib/stores/shared/modifier/DSL_Service_GraphModifierHelper.d.ts +1 -0
  230. package/lib/stores/shared/modifier/DSL_Service_GraphModifierHelper.d.ts.map +1 -1
  231. package/lib/stores/shared/modifier/DSL_Service_GraphModifierHelper.js +3 -0
  232. package/lib/stores/shared/modifier/DSL_Service_GraphModifierHelper.js.map +1 -1
  233. package/lib/stores/sidebar-state/LocalChangesState.js +4 -4
  234. package/lib/stores/sidebar-state/LocalChangesState.js.map +1 -1
  235. package/lib/stores/sidebar-state/WorkspaceReviewState.js +1 -1
  236. package/lib/stores/sidebar-state/WorkspaceReviewState.js.map +1 -1
  237. package/lib/stores/sidebar-state/WorkspaceSyncState.d.ts +6 -6
  238. package/lib/stores/sidebar-state/WorkspaceUpdateConflictResolutionState.js +7 -7
  239. package/lib/stores/sidebar-state/WorkspaceUpdateConflictResolutionState.js.map +1 -1
  240. package/lib/stores/sidebar-state/WorkspaceUpdaterState.js +2 -2
  241. package/lib/stores/sidebar-state/WorkspaceUpdaterState.js.map +1 -1
  242. package/package.json +10 -10
  243. package/src/application/LegendStudioApplicationConfig.ts +0 -2
  244. package/src/components/Core_LegendStudioApplicationPlugin.tsx +13 -13
  245. package/src/components/DSL_ExternalFormat_LegendStudioApplicationPlugin.tsx +4 -4
  246. package/src/components/DSL_ExternalFormat_LegendStudioDocumentation.ts +2 -2
  247. package/src/components/LegendStudioApplication.tsx +0 -3
  248. package/src/components/LegendStudioTestID.ts +1 -2
  249. package/src/components/editor/command-center/ProjectSearchCommand.tsx +4 -1
  250. package/src/components/editor/edit-panel/EditPanel.tsx +72 -181
  251. package/src/components/editor/edit-panel/FileGenerationViewer.tsx +5 -5
  252. package/src/components/editor/edit-panel/FunctionEditor.tsx +3 -3
  253. package/src/components/editor/edit-panel/GenerationSpecificationEditor.tsx +7 -5
  254. package/src/components/editor/edit-panel/GrammarTextEditor.tsx +16 -20
  255. package/src/components/editor/edit-panel/ModelImporter.tsx +1 -1
  256. package/src/components/editor/edit-panel/RuntimeEditor.tsx +6 -9
  257. package/src/components/editor/edit-panel/UnsupportedElementEditor.tsx +4 -3
  258. package/src/components/editor/edit-panel/connection-editor/ConnectionEditor.tsx +1 -1
  259. package/src/components/editor/edit-panel/data-editor/DataElementEditor.tsx +3 -3
  260. package/src/components/editor/edit-panel/data-editor/EmbeddedDataEditor.tsx +4 -3
  261. package/src/components/editor/edit-panel/diff-editor/EntityDiffView.tsx +1 -1
  262. package/src/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.tsx +6 -5
  263. package/src/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_BindingElementEditor.tsx +2 -1
  264. package/src/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_SchemaSetElementEditor.tsx +3 -3
  265. package/src/components/editor/edit-panel/mapping-editor/ClassMappingEditor.tsx +93 -95
  266. package/src/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.tsx +131 -133
  267. package/src/components/editor/edit-panel/mapping-editor/FlatDataPropertyMappingEditor.tsx +1 -1
  268. package/src/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.tsx +2 -2
  269. package/src/components/editor/edit-panel/mapping-editor/MappingEditor.tsx +3 -3
  270. package/src/components/editor/edit-panel/mapping-editor/MappingExplorer.tsx +5 -5
  271. package/src/components/editor/edit-panel/mapping-editor/MappingTestsExplorer.tsx +3 -3
  272. package/src/components/editor/edit-panel/mapping-editor/NewMappingElementModal.tsx +1 -1
  273. package/src/components/editor/edit-panel/mapping-editor/OperationSetImplementationEditor.tsx +3 -3
  274. package/src/components/editor/edit-panel/mapping-editor/PropertyMappingsEditor.tsx +3 -3
  275. package/src/components/editor/edit-panel/mapping-editor/PurePropertyMappingEditor.tsx +14 -9
  276. package/src/components/editor/edit-panel/mapping-editor/relational/RelationalPropertyMappingEditor.tsx +2 -2
  277. package/src/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.tsx +1 -1
  278. package/src/components/editor/edit-panel/service-editor/ServiceEditor.tsx +4 -2
  279. package/src/components/editor/edit-panel/service-editor/ServiceExecutionEditor.tsx +14 -4
  280. package/src/components/editor/edit-panel/service-editor/ServiceRegistrationEditor.tsx +2 -1
  281. package/src/components/editor/edit-panel/service-editor/testable/ServiceTestsEditor.tsx +44 -8
  282. package/src/components/editor/edit-panel/uml-editor/AssociationEditor.tsx +3 -2
  283. package/src/components/editor/edit-panel/uml-editor/ClassEditor.tsx +12 -8
  284. package/src/components/editor/edit-panel/uml-editor/EnumerationEditor.tsx +3 -2
  285. package/src/components/editor/edit-panel/uml-editor/ProfileEditor.tsx +2 -1
  286. package/src/components/editor/edit-panel/uml-editor/StereotypeSelector.tsx +1 -1
  287. package/src/components/editor/edit-panel/uml-editor/TaggedValueEditor.tsx +1 -1
  288. package/src/components/editor/edit-panel/uml-editor/UMLEditor.tsx +2 -1
  289. package/src/components/editor/side-bar/Explorer.tsx +5 -5
  290. package/src/components/editor/side-bar/LocalChanges.tsx +6 -6
  291. package/src/components/editor/side-bar/WorkspaceReview.tsx +4 -4
  292. package/src/components/editor/side-bar/WorkspaceSyncConflictResolver.tsx +6 -6
  293. package/src/components/editor/side-bar/WorkspaceUpdateConflictResolver.tsx +6 -6
  294. package/src/components/editor/side-bar/WorkspaceUpdater.tsx +6 -6
  295. package/src/components/workspace-review/WorkspaceReviewPanel.tsx +20 -24
  296. package/src/components/workspace-review/WorkspaceReviewSideBar.tsx +4 -4
  297. package/src/index.ts +1 -0
  298. package/src/stores/EditorGraphState.ts +39 -54
  299. package/src/stores/EditorSDLCState.ts +3 -3
  300. package/src/stores/EditorStore.ts +59 -303
  301. package/src/stores/EditorTabManagerState.ts +175 -0
  302. package/src/stores/ExplorerTreeState.ts +3 -1
  303. package/src/stores/LegendStudioCommand.ts +8 -8
  304. package/src/stores/LegendStudioDocumentation.ts +14 -14
  305. package/src/stores/editor-state/EditorState.ts +9 -8
  306. package/src/stores/editor-state/FileGenerationViewerState.ts +12 -8
  307. package/src/stores/editor-state/GraphGenerationState.ts +14 -26
  308. package/src/stores/editor-state/ModelImporterState.ts +5 -1
  309. package/src/stores/editor-state/ProjectConfigurationEditorState.ts +6 -2
  310. package/src/stores/editor-state/element-editor-state/ElementEditorState.ts +23 -2
  311. package/src/stores/editor-state/element-editor-state/ElementFileGenerationState.ts +1 -1
  312. package/src/stores/editor-state/element-editor-state/mapping/MappingEditorState.ts +16 -17
  313. package/src/stores/editor-state/element-editor-state/mapping/MappingElementState.ts +15 -6
  314. package/src/stores/editor-state/element-editor-state/mapping/MappingExecutionState.ts +9 -4
  315. package/src/stores/editor-state/element-editor-state/mapping/MappingTabManagerState.ts +19 -0
  316. package/src/stores/editor-state/element-editor-state/mapping/MappingTestState.ts +16 -7
  317. package/src/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.ts +32 -0
  318. package/src/stores/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.ts +21 -4
  319. package/src/stores/editor-state/entity-diff-editor-state/EntityDiffEditorState.ts +1 -1
  320. package/src/stores/editor-state/entity-diff-editor-state/EntityDiffViewState.ts +28 -12
  321. package/src/stores/project-viewer/ProjectViewerStore.ts +1 -1
  322. package/src/stores/shared/DnDUtils.ts +1 -1
  323. package/src/stores/shared/modifier/DSL_Mapping_GraphModifierHelper.ts +13 -10
  324. package/src/stores/shared/modifier/DSL_Service_GraphModifierHelper.ts +6 -0
  325. package/src/stores/sidebar-state/LocalChangesState.ts +4 -4
  326. package/src/stores/sidebar-state/WorkspaceReviewState.ts +1 -1
  327. package/src/stores/sidebar-state/WorkspaceSyncState.ts +6 -6
  328. package/src/stores/sidebar-state/WorkspaceUpdateConflictResolutionState.ts +7 -7
  329. package/src/stores/sidebar-state/WorkspaceUpdaterState.ts +2 -2
  330. package/tsconfig.json +2 -0
@@ -15,9 +15,12 @@
15
15
  */
16
16
 
17
17
  import { observable, makeObservable, action, flow } from 'mobx';
18
- import { type GeneratorFn, uuid } from '@finos/legend-shared';
18
+ import type { GeneratorFn } from '@finos/legend-shared';
19
19
  import type { EditorStore } from '../../../EditorStore.js';
20
- import type { MappingElement } from './MappingEditorState.js';
20
+ import {
21
+ getMappingElementLabel,
22
+ type MappingElement,
23
+ } from './MappingEditorState.js';
21
24
  import type {
22
25
  PropertyMapping,
23
26
  InstanceSetImplementation,
@@ -25,13 +28,15 @@ import type {
25
28
  Type,
26
29
  } from '@finos/legend-graph';
27
30
  import { LambdaEditorState } from '@finos/legend-query-builder';
31
+ import { MappingEditorTabState } from './MappingTabManagerState.js';
28
32
 
29
- export class MappingElementState {
30
- readonly uuid = uuid();
31
- editorStore: EditorStore;
32
- mappingElement: MappingElement;
33
+ export class MappingElementState extends MappingEditorTabState {
34
+ readonly editorStore: EditorStore;
35
+ readonly mappingElement: MappingElement;
33
36
 
34
37
  constructor(editorStore: EditorStore, mappingElement: MappingElement) {
38
+ super();
39
+
35
40
  makeObservable(this, {
36
41
  mappingElement: observable,
37
42
  });
@@ -39,6 +44,10 @@ export class MappingElementState {
39
44
  this.editorStore = editorStore;
40
45
  this.mappingElement = mappingElement;
41
46
  }
47
+
48
+ get label(): string {
49
+ return getMappingElementLabel(this.mappingElement, this.editorStore).value;
50
+ }
42
51
  }
43
52
 
44
53
  export abstract class SetImplementationState extends MappingElementState {
@@ -68,7 +68,6 @@ import {
68
68
  extractExecutionResultValues,
69
69
  LAMBDA_PIPE,
70
70
  GRAPH_MANAGER_EVENT,
71
- MappingTest,
72
71
  Class,
73
72
  ObjectInputData,
74
73
  ObjectInputType,
@@ -98,6 +97,7 @@ import {
98
97
  TestData,
99
98
  ConnectionTestData,
100
99
  DEFAULT_TEST_SUITE_PREFIX,
100
+ DEPRECATED__MappingTest,
101
101
  ModelStore,
102
102
  } from '@finos/legend-graph';
103
103
  import {
@@ -128,6 +128,7 @@ import {
128
128
  } from '../../../shared/testable/TestableUtils.js';
129
129
  import { SERIALIZATION_FORMAT } from '../service/testable/ServiceTestEditorState.js';
130
130
  import { LambdaEditorState } from '@finos/legend-query-builder';
131
+ import { MappingEditorTabState } from './MappingTabManagerState.js';
131
132
 
132
133
  export class MappingExecutionQueryState extends LambdaEditorState {
133
134
  editorStore: EditorStore;
@@ -477,8 +478,7 @@ export class MappingExecutionRelationalInputDataState extends MappingExecutionIn
477
478
  }
478
479
  }
479
480
 
480
- export class MappingExecutionState {
481
- readonly uuid = uuid();
481
+ export class MappingExecutionState extends MappingEditorTabState {
482
482
  readonly editorStore: EditorStore;
483
483
  readonly mappingEditorState: MappingEditorState;
484
484
 
@@ -498,6 +498,8 @@ export class MappingExecutionState {
498
498
  mappingEditorState: MappingEditorState,
499
499
  name: string,
500
500
  ) {
501
+ super();
502
+
501
503
  makeObservable(this, {
502
504
  name: observable,
503
505
  queryState: observable,
@@ -539,6 +541,9 @@ export class MappingExecutionState {
539
541
  );
540
542
  }
541
543
 
544
+ get label(): string {
545
+ return this.name;
546
+ }
542
547
  setQueryState(val: MappingExecutionQueryState): void {
543
548
  this.queryState = val;
544
549
  }
@@ -646,7 +651,7 @@ export class MappingExecutionState {
646
651
  const assert = new ExpectedOutputMappingTestAssert(
647
652
  toGrammarString(this.executionResultText),
648
653
  );
649
- const mappingTest = new MappingTest(
654
+ const mappingTest = new DEPRECATED__MappingTest(
650
655
  generateMappingTestName(this.mappingEditorState.mapping),
651
656
  query,
652
657
  [inputData],
@@ -0,0 +1,19 @@
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 { TabState } from '@finos/legend-application';
18
+
19
+ export abstract class MappingEditorTabState extends TabState {}
@@ -42,7 +42,6 @@ import type { EditorStore } from '../../../EditorStore.js';
42
42
  import { observable, flow, action, makeObservable, flowResult } from 'mobx';
43
43
  import { createMockDataForMappingElementSource } from '../../../shared/MockDataUtils.js';
44
44
  import {
45
- type MappingTest,
46
45
  type RawLambda,
47
46
  type Runtime,
48
47
  type InputData,
@@ -76,6 +75,7 @@ import {
76
75
  stub_Class,
77
76
  generateIdentifiedConnectionId,
78
77
  DEPRECATED__validate_MappingTest,
78
+ type DEPRECATED__MappingTest,
79
79
  ModelStore,
80
80
  } from '@finos/legend-graph';
81
81
  import { ExecutionPlanState, TAB_SIZE } from '@finos/legend-application';
@@ -94,6 +94,7 @@ import {
94
94
  relationalInputData_setData,
95
95
  } from '../../../shared/modifier/STO_Relational_GraphModifierHelper.js';
96
96
  import { LambdaEditorState } from '@finos/legend-query-builder';
97
+ import { MappingEditorTabState } from './MappingTabManagerState.js';
97
98
 
98
99
  export enum TEST_RESULT {
99
100
  NONE = 'NONE', // test has not run yet
@@ -104,11 +105,15 @@ export enum TEST_RESULT {
104
105
 
105
106
  export class MappingTestQueryState extends LambdaEditorState {
106
107
  editorStore: EditorStore;
107
- test: MappingTest;
108
+ test: DEPRECATED__MappingTest;
108
109
  isInitializingLambda = false;
109
110
  query: RawLambda;
110
111
 
111
- constructor(editorStore: EditorStore, test: MappingTest, query: RawLambda) {
112
+ constructor(
113
+ editorStore: EditorStore,
114
+ test: DEPRECATED__MappingTest,
115
+ query: RawLambda,
116
+ ) {
112
117
  super('', LAMBDA_PIPE);
113
118
 
114
119
  makeObservable(this, {
@@ -383,14 +388,13 @@ export enum MAPPING_TEST_EDITOR_TAB_TYPE {
383
388
  RESULT = 'Test Result',
384
389
  }
385
390
 
386
- export class MappingTestState {
387
- readonly uuid = uuid();
391
+ export class MappingTestState extends MappingEditorTabState {
388
392
  readonly editorStore: EditorStore;
389
393
  readonly mappingEditorState: MappingEditorState;
390
394
 
391
395
  selectedTab = MAPPING_TEST_EDITOR_TAB_TYPE.SETUP;
392
396
  result: TEST_RESULT = TEST_RESULT.NONE;
393
- test: MappingTest;
397
+ test: DEPRECATED__MappingTest;
394
398
  runTime = 0;
395
399
  isSkipped = false;
396
400
  errorRunningTest?: Error | undefined;
@@ -406,9 +410,11 @@ export class MappingTestState {
406
410
 
407
411
  constructor(
408
412
  editorStore: EditorStore,
409
- test: MappingTest,
413
+ test: DEPRECATED__MappingTest,
410
414
  mappingEditorState: MappingEditorState,
411
415
  ) {
416
+ super();
417
+
412
418
  makeObservable(this, {
413
419
  selectedTab: observable,
414
420
  result: observable,
@@ -454,6 +460,9 @@ export class MappingTestState {
454
460
  );
455
461
  }
456
462
 
463
+ get label(): string {
464
+ return this.test.name;
465
+ }
457
466
  setIsRunningTest(val: boolean): void {
458
467
  this.isRunningTest = val;
459
468
  }
@@ -23,11 +23,13 @@ import {
23
23
  ParameterValue,
24
24
  buildLambdaVariableExpressions,
25
25
  VariableExpression,
26
+ PureMultiExecution,
26
27
  } from '@finos/legend-graph';
27
28
  import { action, flow, makeObservable, observable } from 'mobx';
28
29
  import { TestableTestEditorState } from '../../testable/TestableEditorState.js';
29
30
  import type { ServiceTestSuiteState } from './ServiceTestableState.js';
30
31
  import {
32
+ service_addAssertKeyForTest,
31
33
  service_addParameterValue,
32
34
  service_deleteParameterValue,
33
35
  service_setParameterName,
@@ -77,6 +79,11 @@ export type SerializationFormatOption = {
77
79
  label: string;
78
80
  };
79
81
 
82
+ export type KeyOption = {
83
+ value: string;
84
+ label: string;
85
+ };
86
+
80
87
  export class ServiceTestParameterState {
81
88
  readonly uuid = uuid();
82
89
  readonly editorStore: EditorStore;
@@ -167,6 +174,7 @@ export class ServiceTestSetupState {
167
174
  setShowNewParameterModal: action,
168
175
  openNewParamModal: action,
169
176
  addParameterValue: action,
177
+ addServiceTestAssertKeys: action,
170
178
  syncWithQuery: action,
171
179
  removeParamValueState: action,
172
180
  });
@@ -193,6 +201,30 @@ export class ServiceTestSetupState {
193
201
  }));
194
202
  }
195
203
 
204
+ get keyOptions(): KeyOption[] {
205
+ const keys =
206
+ this.testState.testable.execution instanceof PureMultiExecution
207
+ ? this.testState.testable.execution.executionParameters.map(
208
+ (p) => p.key,
209
+ )
210
+ : [];
211
+ return keys.map((k) => ({
212
+ value: k,
213
+ label: k,
214
+ }));
215
+ }
216
+
217
+ getSelectedKeyOptions(): KeyOption[] {
218
+ return this.testState.test.keys.map((k) => ({
219
+ value: k,
220
+ label: k,
221
+ }));
222
+ }
223
+
224
+ addServiceTestAssertKeys(val: string[]): void {
225
+ service_addAssertKeyForTest(this.testState.test, val);
226
+ }
227
+
196
228
  get newParamOptions(): { value: string; label: string }[] {
197
229
  const queryVarExpressions = this.queryVariableExpressions;
198
230
  const currentParams = this.testState.test.parameters;
@@ -25,7 +25,7 @@ import {
25
25
  import type { EditorStore } from '../../EditorStore.js';
26
26
  import {
27
27
  type SPECIAL_REVISION_ALIAS,
28
- EntityDiffEditorState,
28
+ EntityDiffViewerState,
29
29
  } from './EntityDiffEditorState.js';
30
30
  import {
31
31
  type GeneratorFn,
@@ -37,6 +37,7 @@ import { type Entity, extractEntityNameFromPath } from '@finos/legend-storage';
37
37
  import { EntityChangeConflictResolution } from '@finos/legend-server-sdlc';
38
38
  import { ParserError } from '@finos/legend-graph';
39
39
  import type { AbstractConflictResolutionState } from '../../AbstractConflictResolutionState.js';
40
+ import type { EditorState } from '../EditorState.js';
40
41
 
41
42
  const START_HEADER_MARKER = '<<<<<<<';
42
43
  const COMMON_BASE_MARKER = '|||||||';
@@ -127,7 +128,7 @@ export enum ENTITY_CHANGE_CONFLICT_EDITOR_VIEW_MODE {
127
128
  CURRENT_INCOMING = 'CURRENT_INCOMING',
128
129
  }
129
130
 
130
- export class EntityChangeConflictEditorState extends EntityDiffEditorState {
131
+ export class EntityChangeConflictEditorState extends EntityDiffViewerState {
131
132
  entityPath: string;
132
133
  // revision
133
134
  baseRevision: SPECIAL_REVISION_ALIAS | string;
@@ -207,7 +208,7 @@ export class EntityChangeConflictEditorState extends EntityDiffEditorState {
207
208
  currentMergeEditorLine: observable,
208
209
  mergeEditorParserError: observable,
209
210
  currentMode: observable,
210
- headerName: computed,
211
+ label: computed,
211
212
  sortedMergedConflicts: computed,
212
213
  canUseTheirs: computed,
213
214
  canUseYours: computed,
@@ -253,18 +254,23 @@ export class EntityChangeConflictEditorState extends EntityDiffEditorState {
253
254
  setReadOnly(val: boolean): void {
254
255
  this.isReadOnly = val;
255
256
  }
257
+
256
258
  setMergedText(val: string): void {
257
259
  this.mergedText = val;
258
260
  }
261
+
259
262
  setCurrentMode(mode: ENTITY_CHANGE_CONFLICT_EDITOR_VIEW_MODE): void {
260
263
  this.currentMode = mode;
261
264
  }
265
+
262
266
  setCurrentMergeEditorLine(val: number | undefined): void {
263
267
  this.currentMergeEditorLine = val;
264
268
  }
269
+
265
270
  setCurrentMergeEditorConflict(conflict: MergeConflict | undefined): void {
266
271
  this.currentMergeEditorConflict = conflict;
267
272
  }
273
+
268
274
  clearMergeEditorError(): void {
269
275
  this.mergeEditorParserError = undefined;
270
276
  }
@@ -275,24 +281,28 @@ export class EntityChangeConflictEditorState extends EntityDiffEditorState {
275
281
  }
276
282
  }
277
283
 
278
- get headerName(): string {
284
+ get label(): string {
279
285
  return extractEntityNameFromPath(this.entityPath);
280
286
  }
287
+
281
288
  private get sortedMergedConflicts(): MergeConflict[] {
282
289
  return this.mergeConflicts
283
290
  .slice()
284
291
  .sort((a, b) => a.startHeader - b.startHeader);
285
292
  }
293
+
286
294
  get canUseTheirs(): boolean {
287
295
  return (
288
296
  this.currentMode !== ENTITY_CHANGE_CONFLICT_EDITOR_VIEW_MODE.BASE_CURRENT
289
297
  );
290
298
  }
299
+
291
300
  get canUseYours(): boolean {
292
301
  return (
293
302
  this.currentMode !== ENTITY_CHANGE_CONFLICT_EDITOR_VIEW_MODE.BASE_INCOMING
294
303
  );
295
304
  }
305
+
296
306
  get canMarkAsResolved(): boolean {
297
307
  return Boolean(
298
308
  !this.mergeConflicts.length &&
@@ -318,6 +328,13 @@ export class EntityChangeConflictEditorState extends EntityDiffEditorState {
318
328
  );
319
329
  }
320
330
 
331
+ match(tab: EditorState): boolean {
332
+ return (
333
+ tab instanceof EntityChangeConflictEditorState &&
334
+ tab.entityPath === this.entityPath
335
+ );
336
+ }
337
+
321
338
  getModeComparisonViewInfo(
322
339
  mode: ENTITY_CHANGE_CONFLICT_EDITOR_VIEW_MODE,
323
340
  ): MergeEditorComparisonViewInfo {
@@ -43,6 +43,6 @@ export const getPrettyLabelForRevision = (
43
43
  }
44
44
  };
45
45
 
46
- export abstract class EntityDiffEditorState extends EditorState {
46
+ export abstract class EntityDiffViewerState extends EditorState {
47
47
  abstract refresh(): void;
48
48
  }
@@ -26,11 +26,12 @@ import {
26
26
  import type { EditorStore } from '../../EditorStore.js';
27
27
  import {
28
28
  type SPECIAL_REVISION_ALIAS,
29
- EntityDiffEditorState,
29
+ EntityDiffViewerState,
30
30
  } from './EntityDiffEditorState.js';
31
31
  import { type Entity, extractEntityNameFromPath } from '@finos/legend-storage';
32
32
  import { LEGEND_STUDIO_APP_EVENT } from '../../LegendStudioAppEvent.js';
33
33
  import type { PackageableElement } from '@finos/legend-graph';
34
+ import type { EditorState } from '../EditorState.js';
34
35
 
35
36
  /**
36
37
  * NOTE: when we support comparison between entities, we should create a new editor state
@@ -44,7 +45,7 @@ export enum DIFF_VIEW_MODE {
44
45
  GRAMMAR = 'Grammar',
45
46
  }
46
47
 
47
- export class EntityDiffViewState extends EntityDiffEditorState {
48
+ export class EntityDiffViewState extends EntityDiffViewerState {
48
49
  diffMode = DIFF_VIEW_MODE.GRAMMAR;
49
50
  fromEntityPath?: string | undefined;
50
51
  toEntityPath?: string | undefined;
@@ -93,8 +94,8 @@ export class EntityDiffViewState extends EntityDiffEditorState {
93
94
  toEntityGetter: observable,
94
95
  effectiveEntityPath: computed,
95
96
  element: computed,
96
- headerName: computed,
97
- headerTooltip: computed,
97
+ label: computed,
98
+ description: computed,
98
99
  summaryText: computed,
99
100
  setDiffMode: action,
100
101
  setToGrammarText: action,
@@ -133,15 +134,18 @@ export class EntityDiffViewState extends EntityDiffEditorState {
133
134
  'Neither from nor to entity paths can be missing',
134
135
  );
135
136
  }
137
+
136
138
  get element(): PackageableElement | undefined {
137
139
  return this.editorStore.graphManagerState.graph.getNullableElement(
138
140
  this.effectiveEntityPath,
139
141
  );
140
142
  }
141
- get headerName(): string {
143
+
144
+ get label(): string {
142
145
  return extractEntityNameFromPath(this.effectiveEntityPath);
143
146
  }
144
- get headerTooltip(): string {
147
+
148
+ override get description(): string {
145
149
  return this.effectiveEntityPath;
146
150
  }
147
151
 
@@ -161,15 +165,27 @@ export class EntityDiffViewState extends EntityDiffEditorState {
161
165
  return `Entity '${this.toEntityPath}' is modified`;
162
166
  }
163
167
 
164
- setDiffMode = (diffMode: DIFF_VIEW_MODE): void => {
168
+ setDiffMode(diffMode: DIFF_VIEW_MODE): void {
165
169
  this.diffMode = diffMode;
166
- };
167
- private setToGrammarText = (text: string): void => {
170
+ }
171
+
172
+ private setToGrammarText(text: string): void {
168
173
  this.toGrammarText = text;
169
- };
170
- private setFromGrammarText = (text: string): void => {
174
+ }
175
+
176
+ private setFromGrammarText(text: string): void {
171
177
  this.fromGrammarText = text;
172
- };
178
+ }
179
+
180
+ match(tab: EditorState): boolean {
181
+ return (
182
+ tab instanceof EntityDiffViewState &&
183
+ tab.fromEntityPath === this.fromEntityPath &&
184
+ tab.toEntityPath === this.toEntityPath &&
185
+ tab.fromRevision === this.fromRevision &&
186
+ tab.toRevision === this.toRevision
187
+ );
188
+ }
173
189
 
174
190
  refresh(): void {
175
191
  this.fromEntity = this.fromEntityGetter
@@ -560,7 +560,7 @@ export class ProjectViewerStore {
560
560
  this.initialEntityPath
561
561
  ) {
562
562
  try {
563
- this.editorStore.openElement(
563
+ this.editorStore.tabManagerState.openElementEditor(
564
564
  this.editorStore.graphManagerState.graph.getElement(
565
565
  this.initialEntityPath,
566
566
  ),
@@ -58,7 +58,7 @@ export enum CORE_DND_TYPE {
58
58
  // See https://github.com/react-dnd/react-dnd/issues/1094
59
59
  // See https://github.com/react-dnd/react-dnd/pull/1079
60
60
  export class TypeDragSource {
61
- data: TypeTreeNodeData;
61
+ data: TypeTreeNodeData | undefined;
62
62
 
63
63
  constructor(data: TypeTreeNodeData) {
64
64
  this.data = data;
@@ -21,7 +21,7 @@ import {
21
21
  type InputData,
22
22
  type InstanceSetImplementation,
23
23
  type Mapping,
24
- type MappingTest,
24
+ type DEPRECATED__MappingTest,
25
25
  type MappingTestAssert,
26
26
  type PropertyMapping,
27
27
  type RawLambda,
@@ -54,7 +54,7 @@ import {
54
54
  observe_SetImplementation,
55
55
  observe_EnumerationMapping,
56
56
  observe_AssociationImplementation,
57
- observe_MappingTest,
57
+ observe_MappingTest_Legacy,
58
58
  observe_SourceValue,
59
59
  observe_MappingTestAssert,
60
60
  observe_SetImplementationContainer,
@@ -158,17 +158,20 @@ export const mapping_deleteAssociationMapping = action(
158
158
  },
159
159
  );
160
160
  export const mapping_deleteTest = action(
161
- (mapping: Mapping, val: MappingTest): void => {
162
- deleteEntry(mapping.tests, val);
161
+ (mapping: Mapping, val: DEPRECATED__MappingTest): void => {
162
+ deleteEntry(mapping.test, val);
163
163
  },
164
164
  );
165
165
  export const mapping_addTest = action(
166
166
  (
167
167
  mapping: Mapping,
168
- val: MappingTest,
168
+ val: DEPRECATED__MappingTest,
169
169
  observerContext: ObserverContext,
170
170
  ): void => {
171
- addUniqueEntry(mapping.tests, observe_MappingTest(val, observerContext));
171
+ addUniqueEntry(
172
+ mapping.test,
173
+ observe_MappingTest_Legacy(val, observerContext),
174
+ );
172
175
  },
173
176
  );
174
177
 
@@ -266,14 +269,14 @@ export const enumValueMapping_updateSourceValue = action(
266
269
  // --------------------------------------------- Mapping Test -------------------------------------
267
270
 
268
271
  export const mappingTest_setName = action(
269
- (test: MappingTest, value: string): void => {
272
+ (test: DEPRECATED__MappingTest, value: string): void => {
270
273
  test.name = value;
271
274
  },
272
275
  );
273
276
 
274
277
  export const mappingTest_setInputData = action(
275
278
  (
276
- test: MappingTest,
279
+ test: DEPRECATED__MappingTest,
277
280
  value: InputData[],
278
281
  observeContext: ObserverContext,
279
282
  ): void => {
@@ -282,14 +285,14 @@ export const mappingTest_setInputData = action(
282
285
  );
283
286
 
284
287
  export const mappingTest_setQuery = action(
285
- (test: MappingTest, value: RawLambda): void => {
288
+ (test: DEPRECATED__MappingTest, value: RawLambda): void => {
286
289
  test.query = observe_RawLambda(value);
287
290
  },
288
291
  );
289
292
 
290
293
  export const mappingTest_setAssert = action(
291
294
  (
292
- test: MappingTest,
295
+ test: DEPRECATED__MappingTest,
293
296
  value: MappingTestAssert,
294
297
  observerContext: ObserverContext,
295
298
  ): void => {
@@ -87,6 +87,12 @@ export const service_setSerializationFormat = action(
87
87
  },
88
88
  );
89
89
 
90
+ export const service_addAssertKeyForTest = action(
91
+ (test: ServiceTest, keys: string[]) => {
92
+ test.keys = keys;
93
+ },
94
+ );
95
+
90
96
  export const service_addTestSuite = action(
91
97
  (
92
98
  service: Service,
@@ -288,7 +288,7 @@ export class LocalChangesState {
288
288
  `Can't find entity with path '${diff.newPath}'`,
289
289
  )
290
290
  : undefined;
291
- this.editorStore.openEntityDiff(
291
+ this.editorStore.tabManagerState.openTab(
292
292
  new EntityDiffViewState(
293
293
  this.editorStore,
294
294
  SPECIAL_REVISION_ALIAS.WORKSPACE_HEAD,
@@ -336,7 +336,7 @@ export class LocalChangesState {
336
336
  `Can't find entity with path '${diff.newPath}'`,
337
337
  )
338
338
  : undefined;
339
- this.editorStore.openEntityDiff(
339
+ this.editorStore.tabManagerState.openTab(
340
340
  new EntityDiffViewState(
341
341
  this.editorStore,
342
342
  SPECIAL_REVISION_ALIAS.LOCAL,
@@ -395,7 +395,7 @@ export class LocalChangesState {
395
395
  incomingChangeEntityGetter,
396
396
  );
397
397
  conflictEditorState.setReadOnly(true);
398
- this.editorStore.openEntityChangeConflict(conflictEditorState);
398
+ this.editorStore.tabManagerState.openTab(conflictEditorState);
399
399
  }
400
400
 
401
401
  *refreshLocalChanges(): GeneratorFn<void> {
@@ -636,7 +636,7 @@ export class LocalChangesState {
636
636
  ),
637
637
  ),
638
638
  );
639
- this.editorStore.refreshCurrentEntityDiffEditorState();
639
+ this.editorStore.tabManagerState.refreshCurrentEntityDiffViewer();
640
640
  } catch (error) {
641
641
  assertErrorThrown(error);
642
642
  /**
@@ -117,7 +117,7 @@ export class WorkspaceReviewState {
117
117
  `Can't find entity with path '${diff.newPath}'`,
118
118
  )
119
119
  : undefined;
120
- this.editorStore.openEntityDiff(
120
+ this.editorStore.tabManagerState.openTab(
121
121
  new EntityDiffViewState(
122
122
  this.editorStore,
123
123
  SPECIAL_REVISION_ALIAS.WORKSPACE_BASE,
@@ -33,7 +33,7 @@ import {
33
33
  import { CHANGE_DETECTION_EVENT } from '../ChangeDetectionEvent.js';
34
34
  import { EntityChangeConflictEditorState } from '../editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.js';
35
35
  import {
36
- type EntityDiffEditorState,
36
+ type EntityDiffViewerState,
37
37
  SPECIAL_REVISION_ALIAS,
38
38
  } from '../editor-state/entity-diff-editor-state/EntityDiffEditorState.js';
39
39
  import { EntityDiffViewState } from '../editor-state/entity-diff-editor-state/EntityDiffViewState.js';
@@ -55,8 +55,8 @@ import { AbstractConflictResolutionState } from '../AbstractConflictResolutionSt
55
55
  class WorkspaceSyncConflictResolutionState extends AbstractConflictResolutionState {
56
56
  showModal = false;
57
57
  conflicts: EntityChangeConflict[] = [];
58
- openMergedEditorStates: EntityDiffEditorState[] = [];
59
- currentDiffEditorState: EntityDiffEditorState | undefined;
58
+ openMergedEditorStates: EntityDiffViewerState[] = [];
59
+ currentDiffEditorState: EntityDiffViewerState | undefined;
60
60
  resolutions: EntityChangeConflictResolution[] = [];
61
61
  baseToLocalChanges: EntityDiff[] = [];
62
62
 
@@ -154,7 +154,7 @@ class WorkspaceSyncConflictResolutionState extends AbstractConflictResolutionSta
154
154
  .concat(this.resolvedChanges);
155
155
  }
156
156
 
157
- openState(entityDiffEditorState: EntityDiffEditorState): void {
157
+ openState(entityDiffEditorState: EntityDiffViewerState): void {
158
158
  if (entityDiffEditorState instanceof EntityChangeConflictEditorState) {
159
159
  this.openConflictState(entityDiffEditorState);
160
160
  }
@@ -207,7 +207,7 @@ class WorkspaceSyncConflictResolutionState extends AbstractConflictResolutionSta
207
207
  this.openEntityChangeConflict(mergeEditorState);
208
208
  }
209
209
 
210
- closeConflict(conflictState: EntityDiffEditorState): void {
210
+ closeConflict(conflictState: EntityDiffViewerState): void {
211
211
  const conflictIndex = this.openMergedEditorStates.findIndex(
212
212
  (e) => e === conflictState,
213
213
  );
@@ -328,7 +328,7 @@ class WorkspaceSyncConflictResolutionState extends AbstractConflictResolutionSta
328
328
  this.showModal = val;
329
329
  }
330
330
 
331
- setCurrentMergeEditorState(val: EntityDiffEditorState | undefined): void {
331
+ setCurrentMergeEditorState(val: EntityDiffViewerState | undefined): void {
332
332
  this.currentDiffEditorState = val;
333
333
  }
334
334