@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
@@ -28,24 +28,20 @@ import { WorkspaceReviewState } from './sidebar-state/WorkspaceReviewState.js';
28
28
  import { LocalChangesState } from './sidebar-state/LocalChangesState.js';
29
29
  import { WorkspaceWorkflowManagerState } from './sidebar-state/WorkflowManagerState.js';
30
30
  import { GrammarTextEditorState } from './editor-state/GrammarTextEditorState.js';
31
- import { LogEvent, isNonNullable, assertErrorThrown, guaranteeType, guaranteeNonNullable, UnsupportedOperationError, assertNonNullable, assertTrue, ActionState, filterByType, AssertionError, } from '@finos/legend-shared';
31
+ import { LogEvent, isNonNullable, assertErrorThrown, guaranteeNonNullable, UnsupportedOperationError, ActionState, AssertionError, } from '@finos/legend-shared';
32
32
  import { UMLEditorState } from './editor-state/element-editor-state/UMLEditorState.js';
33
33
  import { ServiceEditorState } from './editor-state/element-editor-state/service/ServiceEditorState.js';
34
34
  import { EditorSDLCState } from './EditorSDLCState.js';
35
35
  import { ModelImporterState } from './editor-state/ModelImporterState.js';
36
- import { EntityDiffViewState } from './editor-state/entity-diff-editor-state/EntityDiffViewState.js';
37
36
  import { FunctionEditorState } from './editor-state/element-editor-state/FunctionEditorState.js';
38
37
  import { ProjectConfigurationEditorState } from './editor-state/ProjectConfigurationEditorState.js';
39
38
  import { PackageableRuntimeEditorState } from './editor-state/element-editor-state/RuntimeEditorState.js';
40
39
  import { PackageableConnectionEditorState } from './editor-state/element-editor-state/connection/ConnectionEditorState.js';
41
40
  import { PackageableDataEditorState } from './editor-state/element-editor-state/data/DataEditorState.js';
42
41
  import { FileGenerationEditorState } from './editor-state/element-editor-state/FileGenerationEditorState.js';
43
- import { EntityDiffEditorState } from './editor-state/entity-diff-editor-state/EntityDiffEditorState.js';
44
- import { EntityChangeConflictEditorState } from './editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.js';
45
42
  import { CHANGE_DETECTION_EVENT } from './ChangeDetectionEvent.js';
46
43
  import { GenerationSpecificationEditorState } from './editor-state/GenerationSpecificationEditorState.js';
47
44
  import { UnsupportedElementEditorState } from './editor-state/UnsupportedElementEditorState.js';
48
- import { FileGenerationViewerState } from './editor-state/FileGenerationViewerState.js';
49
45
  import { DevToolState } from './aux-panel-state/DevToolState.js';
50
46
  import { generateEditorRoute, generateSetupRoute, generateViewProjectRoute, } from './LegendStudioRouter.js';
51
47
  import { NonBlockingDialogState, PanelDisplayState } from '@finos/legend-art';
@@ -60,6 +56,7 @@ import { PACKAGEABLE_ELEMENT_TYPE } from './shared/ModelClassifierUtils.js';
60
56
  import { GlobalTestRunnerState } from './sidebar-state/testable/GlobalTestRunnerState.js';
61
57
  import { EmbeddedQueryBuilderState } from './EmbeddedQueryBuilderState.js';
62
58
  import { LEGEND_STUDIO_COMMAND_KEY } from './LegendStudioCommand.js';
59
+ import { EditorTabManagerState } from './EditorTabManagerState.js';
63
60
  export class EditorExtensionState {
64
61
  /**
65
62
  * This helps to better type-check for this empty abtract type
@@ -72,6 +69,9 @@ export class EditorStore {
72
69
  sdlcServerClient;
73
70
  depotServerClient;
74
71
  pluginManager;
72
+ initState = ActionState.create();
73
+ initialEntityPath;
74
+ graphEditMode = GRAPH_EDITOR_MODE.FORM;
75
75
  editorMode;
76
76
  // NOTE: once we clear up the editor store to make modes more separated
77
77
  // we should remove these sets of functions. They are basically hacks to
@@ -98,32 +98,25 @@ export class EditorStore {
98
98
  devToolState;
99
99
  embeddedQueryBuilderState;
100
100
  newElementState;
101
- initialEntityPath;
102
- initState = ActionState.create();
103
- graphEditMode = GRAPH_EDITOR_MODE.FORM;
104
- // Aux Panel
101
+ /**
102
+ * Since we want to share element generation state across all element in the editor, we will create 1 element generate state
103
+ * per file generation configuration type.
104
+ */
105
+ elementGenerationStates = [];
106
+ searchElementCommandState = new NonBlockingDialogState();
105
107
  activeAuxPanelMode = AUX_PANEL_MODE.CONSOLE;
106
108
  auxPanelDisplayState = new PanelDisplayState({
107
109
  initial: 0,
108
110
  default: 300,
109
111
  snap: 100,
110
112
  });
111
- // Side Bar
112
113
  activeActivity = ACTIVITY_MODE.EXPLORER;
113
114
  sideBarDisplayState = new PanelDisplayState({
114
115
  initial: 300,
115
116
  default: 300,
116
117
  snap: 150,
117
118
  });
118
- // Editor Tabs
119
- currentEditorState;
120
- openedEditorStates = [];
121
- /**
122
- * Since we want to share element generation state across all element in the editor, we will create 1 element generate state
123
- * per file generation configuration type.
124
- */
125
- elementGenerationStates = [];
126
- searchElementCommandState = new NonBlockingDialogState();
119
+ tabManagerState = new EditorTabManagerState(this);
127
120
  constructor(applicationStore, sdlcServerClient, depotServerClient, graphManagerState) {
128
121
  makeObservable(this, {
129
122
  editorMode: observable,
@@ -131,38 +124,18 @@ export class EditorStore {
131
124
  graphEditMode: observable,
132
125
  activeAuxPanelMode: observable,
133
126
  activeActivity: observable,
134
- currentEditorState: observable,
135
- openedEditorStates: observable,
136
127
  isInViewerMode: computed,
137
128
  isInConflictResolutionMode: computed,
138
129
  isInitialized: computed,
139
130
  isInGrammarTextMode: computed,
140
131
  isInFormMode: computed,
141
- applicationStore: false,
142
- sdlcServerClient: false,
143
- depotServerClient: false,
144
- graphState: false,
145
- graphManagerState: false,
146
132
  setEditorMode: action,
147
133
  setMode: action,
148
- setCurrentEditorState: action,
149
134
  setActiveAuxPanelMode: action,
150
- refreshCurrentEntityDiffEditorState: action,
151
135
  cleanUp: action,
152
136
  reset: action,
153
137
  setGraphEditMode: action,
154
138
  setActiveActivity: action,
155
- closeState: action,
156
- closeAllOtherStates: action,
157
- closeAllStates: action,
158
- openState: action,
159
- openEntityDiff: action,
160
- openEntityChangeConflict: action,
161
- openSingletonEditorState: action,
162
- openElement: action,
163
- reprocessElementEditorState: action,
164
- openGeneratedFile: action,
165
- closeAllEditorTabs: action,
166
139
  initialize: flow,
167
140
  initMode: flow,
168
141
  initStandardMode: flow,
@@ -228,25 +201,16 @@ export class EditorStore {
228
201
  get isInConflictResolutionMode() {
229
202
  return this.mode === EDITOR_MODE.CONFLICT_RESOLUTION;
230
203
  }
231
- /**
232
- * TODO?: we should really think of how we could simplify the trigger condition below
233
- * after we refactor editor modes
234
- *
235
- * See https://github.com/finos/legend-studio/issues/317
236
- */
237
- createEditorCommandTrigger(additionalChecker) {
238
- return () =>
239
- // we don't want to leak any hotkeys when we have embedded query builder open
240
- // TODO?: we probably should come up with a more generic mechanism for this
241
- !this.embeddedQueryBuilderState.queryBuilderState &&
242
- (!additionalChecker || additionalChecker());
243
- }
244
204
  setEditorMode(val) {
245
205
  this.editorMode = val;
246
206
  }
247
207
  setMode(val) {
248
208
  this.mode = val;
249
209
  }
210
+ setGraphEditMode(graphEditor) {
211
+ this.graphEditMode = graphEditor;
212
+ this.graphState.clearProblems();
213
+ }
250
214
  cleanUp() {
251
215
  // dismiss all the alerts as these are parts of application, if we don't do this, we might
252
216
  // end up blocking other parts of the app
@@ -257,6 +221,19 @@ export class EditorStore {
257
221
  // stop change detection to avoid memory-leak
258
222
  this.changeDetectionState.stop();
259
223
  }
224
+ /**
225
+ * TODO?: we should really think of how we could simplify the trigger condition below
226
+ * after we refactor editor modes
227
+ *
228
+ * See https://github.com/finos/legend-studio/issues/317
229
+ */
230
+ createEditorCommandTrigger(additionalChecker) {
231
+ return () =>
232
+ // we don't want to leak any hotkeys when we have embedded query builder open
233
+ // TODO?: we probably should come up with a more generic mechanism for this
234
+ !this.embeddedQueryBuilderState.queryBuilderState &&
235
+ (!additionalChecker || additionalChecker());
236
+ }
260
237
  registerCommands() {
261
238
  this.applicationStore.commandCenter.registerCommand({
262
239
  key: LEGEND_STUDIO_COMMAND_KEY.COMPILE,
@@ -303,7 +280,7 @@ export class EditorStore {
303
280
  this.applicationStore.commandCenter.registerCommand({
304
281
  key: LEGEND_STUDIO_COMMAND_KEY.TOGGLE_MODEL_LOADER,
305
282
  trigger: this.createEditorCommandTrigger(() => !this.isInViewerMode),
306
- action: () => this.openState(this.modelImporterState),
283
+ action: () => this.tabManagerState.openTab(this.modelImporterState),
307
284
  });
308
285
  this.applicationStore.commandCenter.registerCommand({
309
286
  key: LEGEND_STUDIO_COMMAND_KEY.SYNC_WITH_WORKSPACE,
@@ -355,7 +332,7 @@ export class EditorStore {
355
332
  ].forEach((key) => this.applicationStore.commandCenter.deregisterCommand(key));
356
333
  }
357
334
  reset() {
358
- this.closeAllEditorTabs();
335
+ this.tabManagerState.closeAllTabs();
359
336
  this.projectConfigurationEditorState = new ProjectConfigurationEditorState(this, this.sdlcState);
360
337
  this.explorerTreeState = new ExplorerTreeState(this);
361
338
  }
@@ -611,7 +588,7 @@ export class EditorStore {
611
588
  this.explorerTreeState.buildState.hasCompleted &&
612
589
  this.initialEntityPath) {
613
590
  try {
614
- this.openElement(this.graphManagerState.graph.getElement(this.initialEntityPath));
591
+ this.tabManagerState.openElementEditor(this.graphManagerState.graph.getElement(this.initialEntityPath));
615
592
  }
616
593
  catch {
617
594
  const elementPath = this.initialEntityPath;
@@ -646,107 +623,6 @@ export class EditorStore {
646
623
  this.initState.setMessage(undefined);
647
624
  }
648
625
  }
649
- setCurrentEditorState(val) {
650
- this.currentEditorState = val;
651
- }
652
- getCurrentEditorState(clazz) {
653
- return guaranteeType(this.currentEditorState, clazz, `Current editor state is not of the specified type (this is likely caused by calling this method at the wrong place)`);
654
- }
655
- getEditorExtensionState(clazz) {
656
- return guaranteeNonNullable(this.editorExtensionStates.find(filterByType(clazz)), `Can't find extension editor state of the specified type: no built extension editor state available from plugins`);
657
- }
658
- closeState(editorState) {
659
- const elementIndex = this.openedEditorStates.findIndex((e) => e === editorState);
660
- assertTrue(elementIndex !== -1, `Can't close a tab which is not opened`);
661
- this.openedEditorStates.splice(elementIndex, 1);
662
- if (this.currentEditorState === editorState) {
663
- if (this.openedEditorStates.length) {
664
- const openIndex = elementIndex - 1;
665
- this.setCurrentEditorState(openIndex >= 0
666
- ? this.openedEditorStates[openIndex]
667
- : this.openedEditorStates[0]);
668
- }
669
- else {
670
- this.setCurrentEditorState(undefined);
671
- }
672
- }
673
- this.explorerTreeState.reprocess();
674
- }
675
- closeAllOtherStates(editorState) {
676
- assertNonNullable(this.openedEditorStates.find((e) => e === editorState), 'Editor tab should be currently opened');
677
- this.setCurrentEditorState(editorState);
678
- this.openedEditorStates = [editorState];
679
- this.explorerTreeState.reprocess();
680
- }
681
- closeAllStates() {
682
- this.closeAllEditorTabs();
683
- this.explorerTreeState.reprocess();
684
- }
685
- openState(editorState) {
686
- if (editorState instanceof ElementEditorState) {
687
- this.openElement(editorState.element);
688
- }
689
- else if (editorState instanceof EntityDiffViewState) {
690
- this.openEntityDiff(editorState);
691
- }
692
- else if (editorState instanceof EntityChangeConflictEditorState) {
693
- this.openEntityChangeConflict(editorState);
694
- }
695
- else if (editorState instanceof FileGenerationViewerState) {
696
- this.openGeneratedFile(editorState.generatedFile);
697
- }
698
- else if (editorState === this.modelImporterState) {
699
- this.openSingletonEditorState(this.modelImporterState);
700
- }
701
- else if (editorState === this.projectConfigurationEditorState) {
702
- this.openSingletonEditorState(this.projectConfigurationEditorState);
703
- }
704
- else {
705
- throw new UnsupportedOperationError(`Can't open editor state`, editorState);
706
- }
707
- this.explorerTreeState.reprocess();
708
- }
709
- refreshCurrentEntityDiffEditorState() {
710
- if (this.currentEditorState instanceof EntityDiffEditorState) {
711
- this.currentEditorState.refresh();
712
- }
713
- }
714
- openEntityDiff(entityDiffEditorState) {
715
- const existingEditorState = this.openedEditorStates.find((editorState) => editorState instanceof EntityDiffViewState &&
716
- editorState.fromEntityPath === entityDiffEditorState.fromEntityPath &&
717
- editorState.toEntityPath === entityDiffEditorState.toEntityPath &&
718
- editorState.fromRevision === entityDiffEditorState.fromRevision &&
719
- editorState.toRevision === entityDiffEditorState.toRevision);
720
- const diffEditorState = existingEditorState ?? entityDiffEditorState;
721
- if (!existingEditorState) {
722
- this.openedEditorStates.push(diffEditorState);
723
- }
724
- this.setCurrentEditorState(diffEditorState);
725
- }
726
- openEntityChangeConflict(entityChangeConflictEditorState) {
727
- const existingEditorState = this.openedEditorStates.find((editorState) => editorState instanceof EntityChangeConflictEditorState &&
728
- editorState.entityPath === entityChangeConflictEditorState.entityPath);
729
- const conflictEditorState = existingEditorState ?? entityChangeConflictEditorState;
730
- if (!existingEditorState) {
731
- this.openedEditorStates.push(conflictEditorState);
732
- }
733
- this.setCurrentEditorState(conflictEditorState);
734
- }
735
- /**
736
- * This method helps open editor that only exists one instance at at time such as model-loader, project config, settings ...
737
- */
738
- openSingletonEditorState(singularEditorState) {
739
- const existingEditorState = this.openedEditorStates.find((e) => e === singularEditorState);
740
- const editorState = existingEditorState ?? singularEditorState;
741
- if (!existingEditorState) {
742
- this.openedEditorStates.push(editorState);
743
- }
744
- this.setCurrentEditorState(editorState);
745
- }
746
- setGraphEditMode(graphEditor) {
747
- this.graphEditMode = graphEditor;
748
- this.graphState.clearProblems();
749
- }
750
626
  setActiveActivity(activity, options) {
751
627
  if (!this.sideBarDisplayState.isOpen) {
752
628
  this.sideBarDisplayState.open();
@@ -760,7 +636,7 @@ export class EditorStore {
760
636
  setActiveAuxPanelMode(val) {
761
637
  this.activeAuxPanelMode = val;
762
638
  }
763
- createElementState(element) {
639
+ createElementEditorState(element) {
764
640
  if (element instanceof PrimitiveType) {
765
641
  throw new UnsupportedOperationError(`Can't create element state for primitive type`);
766
642
  }
@@ -812,30 +688,11 @@ export class EditorStore {
812
688
  }
813
689
  throw new UnsupportedOperationError(`Can't create editor state for element: no compatible editor state creator available from plugins`, element);
814
690
  }
815
- openElement(element) {
816
- if (this.isInGrammarTextMode) {
817
- // in text mode, we want to select the block of code that corresponds to the element if possible
818
- // the cheap way to do this is to search by element label text, e.g. `Mapping some::package::someMapping`
819
- this.grammarTextEditorState.setCurrentElementLabelRegexString(element);
820
- }
821
- else {
822
- if (!(element instanceof Package)) {
823
- const existingElementState = this.openedEditorStates.find((state) => state instanceof ElementEditorState && state.element === element);
824
- const elementState = existingElementState ?? this.createElementState(element);
825
- if (elementState && !existingElementState) {
826
- this.openedEditorStates.push(elementState);
827
- }
828
- this.setCurrentEditorState(elementState);
829
- }
830
- // expand tree node
831
- this.explorerTreeState.openNode(element);
832
- }
833
- }
834
691
  *addElement(element, packagePath, openAfterCreate) {
835
692
  graph_addElement(this.graphManagerState.graph, element, packagePath, this.changeDetectionState.observerContext);
836
693
  this.explorerTreeState.reprocess();
837
694
  if (openAfterCreate) {
838
- this.openElement(element);
695
+ this.tabManagerState.openElementEditor(element);
839
696
  }
840
697
  }
841
698
  *deleteElement(element) {
@@ -847,9 +704,9 @@ export class EditorStore {
847
704
  .map((genChildEntity) => this.graphManagerState.graph.generationModel.allOwnElements.find((genElement) => genElement.path === genChildEntity.path))
848
705
  .filter(isNonNullable);
849
706
  const elementsToDelete = [element, ...generatedChildrenElements];
850
- this.openedEditorStates = this.openedEditorStates.filter((elementState) => {
707
+ this.tabManagerState.tabs = this.tabManagerState.tabs.filter((elementState) => {
851
708
  if (elementState instanceof ElementEditorState) {
852
- if (elementState === this.currentEditorState) {
709
+ if (elementState === this.tabManagerState.currentTab) {
853
710
  // avoid closing the current editor state as this will be taken care of
854
711
  // by the `closeState()` call later
855
712
  return true;
@@ -858,10 +715,10 @@ export class EditorStore {
858
715
  }
859
716
  return true;
860
717
  });
861
- if (this.currentEditorState &&
862
- this.currentEditorState instanceof ElementEditorState &&
863
- elementsToDelete.includes(this.currentEditorState.element)) {
864
- this.closeState(this.currentEditorState);
718
+ if (this.tabManagerState.currentTab &&
719
+ this.tabManagerState.currentTab instanceof ElementEditorState &&
720
+ elementsToDelete.includes(this.tabManagerState.currentTab.element)) {
721
+ this.tabManagerState.closeTab(this.tabManagerState.currentTab);
865
722
  }
866
723
  // remove/retire the element's generated children before remove the element itself
867
724
  generatedChildrenElements.forEach((el) => graph_deleteOwnElement(this.graphManagerState.graph.generationModel, el));
@@ -903,44 +760,6 @@ export class EditorStore {
903
760
  message: `Can't compile graph after renaming and error cannot be located in form mode. Redirected to text mode for debugging`,
904
761
  }));
905
762
  }
906
- // TODO: to be removed when we process editor states properly
907
- reprocessElementEditorState = (editorState) => {
908
- if (editorState instanceof ElementEditorState) {
909
- const correspondingElement = this.graphManagerState.graph.getNullableElement(editorState.element.path);
910
- if (correspondingElement) {
911
- return editorState.reprocess(correspondingElement, this);
912
- }
913
- }
914
- // No need to reprocess generated file state as it has no reference to any of the graphs
915
- if (editorState instanceof FileGenerationViewerState) {
916
- return editorState;
917
- }
918
- return undefined;
919
- };
920
- // TODO: to be removed when we process editor states properly
921
- findCurrentEditorState = (editor) => {
922
- if (editor instanceof ElementEditorState) {
923
- return this.openedEditorStates.find((es) => es instanceof ElementEditorState &&
924
- es.element.path === editor.element.path);
925
- }
926
- if (editor instanceof FileGenerationViewerState) {
927
- return this.openedEditorStates.find((e) => e === editor);
928
- }
929
- return undefined;
930
- };
931
- openGeneratedFile(file) {
932
- const existingGeneratedFileState = this.openedEditorStates.find((editorState) => editorState instanceof FileGenerationViewerState &&
933
- editorState.generatedFile === file);
934
- const generatedFileState = existingGeneratedFileState ?? new FileGenerationViewerState(this, file);
935
- if (!existingGeneratedFileState) {
936
- this.openedEditorStates.push(generatedFileState);
937
- }
938
- this.setCurrentEditorState(generatedFileState);
939
- }
940
- closeAllEditorTabs() {
941
- this.setCurrentEditorState(undefined);
942
- this.openedEditorStates = [];
943
- }
944
763
  *toggleTextMode() {
945
764
  if (this.isInFormMode) {
946
765
  if (this.graphState.checkIfApplicationUpdateOperationIsRunning()) {
@@ -963,8 +782,8 @@ export class EditorStore {
963
782
  this.applicationStore.setBlockingAlert(undefined);
964
783
  this.setGraphEditMode(GRAPH_EDITOR_MODE.GRAMMAR_TEXT);
965
784
  // navigate to the currently opened element immediately after entering text mode editor
966
- if (this.currentEditorState instanceof ElementEditorState) {
967
- this.grammarTextEditorState.setCurrentElementLabelRegexString(this.currentEditorState.element);
785
+ if (this.tabManagerState.currentTab instanceof ElementEditorState) {
786
+ this.grammarTextEditorState.setCurrentElementLabelRegexString(this.tabManagerState.currentTab.element);
968
787
  }
969
788
  }
970
789
  else if (this.isInGrammarTextMode) {
@@ -1 +1 @@
1
- {"version":3,"file":"EditorStore.js","sourceRoot":"","sources":["../../src/stores/EditorStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EditorStore.js","sourceRoot":"","sources":["../../src/stores/EditorStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,MAAM,EACN,QAAQ,EACR,IAAI,EACJ,UAAU,EACV,cAAc,EACd,UAAU,GACX,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,gBAAgB,EAAE,MAAM,yDAAyD,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EACL,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,2DAA2D,CAAC;AAC/F,OAAO,EAAE,kBAAkB,EAAE,MAAM,mEAAmE,CAAC;AACvG,OAAO,EAEL,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAC;AACxF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,EAGL,QAAQ,EACR,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,WAAW,EACX,cAAc,GACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,MAAM,uDAAuD,CAAC;AACvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,mEAAmE,CAAC;AACvG,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4DAA4D,CAAC;AACjG,OAAO,EAAE,+BAA+B,EAAE,MAAM,mDAAmD,CAAC;AACpG,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAC;AAC1G,OAAO,EAAE,gCAAgC,EAAE,MAAM,yEAAyE,CAAC;AAC3H,OAAO,EAAE,0BAA0B,EAAE,MAAM,6DAA6D,CAAC;AACzG,OAAO,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAC7G,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sDAAsD,CAAC;AAC1G,OAAO,EAAE,6BAA6B,EAAE,MAAM,iDAAiD,CAAC;AAEhG,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,GAEzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAG9E,OAAO,EACL,oBAAoB,EACpB,aAAa,GAEd,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAGL,mBAAmB,EACnB,aAAa,EACb,KAAK,EACL,WAAW,EACX,OAAO,EACP,WAAW,EACX,0BAA0B,EAC1B,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,OAAO,EACP,kBAAkB,EAClB,qBAAqB,EACrB,2BAA2B,EAC3B,uBAAuB,EACvB,OAAO,EACP,WAAW,EACX,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAEL,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,QAAQ,GACT,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,sCAAsC,EAAE,MAAM,2DAA2D,CAAC;AACnH,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAE1F,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,OAAgB,oBAAoB;IACxC;;;OAGG;IACc,kBAAkB,CAA0B;CAC9D;AAED,MAAM,OAAO,WAAW;IACb,gBAAgB,CAA+B;IAC/C,gBAAgB,CAAmB;IACnC,iBAAiB,CAAoB;IACrC,aAAa,CAA4B;IAEzC,SAAS,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;IAC1C,iBAAiB,CAAsB;IACvC,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC;IACvC,UAAU,CAAa;IACvB,uEAAuE;IACvE,wEAAwE;IACxE,2DAA2D;IAC3D,0EAA0E;IAC1E,wDAAwD;IACxD,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC;IAE5B,qBAAqB,GAA2B,EAAE,CAAC;IACnD,iBAAiB,CAAoB;IACrC,SAAS,CAAkB;IAC3B,UAAU,CAAmB;IAC7B,iBAAiB,CAAoB;IACrC,oBAAoB,CAAuB;IAC3C,sBAAsB,CAAyB;IAC/C,kBAAkB,CAAqB;IACvC,+BAA+B,CAAkC;IACjE,oBAAoB,CAAuB;IAC3C,6BAA6B,CAAgC;IAC7D,qBAAqB,CAAwB;IAC7C,qBAAqB,CAAwB;IAC7C,oBAAoB,CAAuB;IAC3C,iBAAiB,CAAoB;IACrC,uBAAuB,CAAyC;IAChE,YAAY,CAAe;IAC3B,yBAAyB,CAA4B;IACrD,eAAe,CAAkB;IACjC;;;OAGG;IACH,uBAAuB,GAAiC,EAAE,CAAC;IAC3D,yBAAyB,GAAG,IAAI,sBAAsB,EAAE,CAAC;IAEzD,kBAAkB,GAAmB,cAAc,CAAC,OAAO,CAAC;IACnD,oBAAoB,GAAG,IAAI,iBAAiB,CAAC;QACpD,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,GAAG;QACZ,IAAI,EAAE,GAAG;KACV,CAAC,CAAC;IACH,cAAc,GAAmB,aAAa,CAAC,QAAQ,CAAC;IAC/C,mBAAmB,GAAG,IAAI,iBAAiB,CAAC;QACnD,OAAO,EAAE,GAAG;QACZ,OAAO,EAAE,GAAG;QACZ,IAAI,EAAE,GAAG;KACV,CAAC,CAAC;IACM,eAAe,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAE3D,YACE,gBAA8C,EAC9C,gBAAkC,EAClC,iBAAoC,EACpC,iBAAoC;QAEpC,cAAc,CAGZ,IAAI,EAAE;YACN,UAAU,EAAE,UAAU;YACtB,IAAI,EAAE,UAAU;YAChB,aAAa,EAAE,UAAU;YACzB,kBAAkB,EAAE,UAAU;YAC9B,cAAc,EAAE,UAAU;YAE1B,cAAc,EAAE,QAAQ;YACxB,0BAA0B,EAAE,QAAQ;YACpC,aAAa,EAAE,QAAQ;YACvB,mBAAmB,EAAE,QAAQ;YAC7B,YAAY,EAAE,QAAQ;YAEtB,aAAa,EAAE,MAAM;YACrB,OAAO,EAAE,MAAM;YAEf,qBAAqB,EAAE,MAAM;YAC7B,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,MAAM;YACb,gBAAgB,EAAE,MAAM;YACxB,iBAAiB,EAAE,MAAM;YAEzB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,IAAI;YACd,gBAAgB,EAAE,IAAI;YACtB,0BAA0B,EAAE,IAAI;YAChC,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,IAAI;YAChB,aAAa,EAAE,IAAI;YACnB,aAAa,EAAE,IAAI;YACnB,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,gBAAgB,CAAC,aAAa,CAAC;QAEpD,IAAI,CAAC,UAAU,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAE/C,IAAI,CAAC,SAAS,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,oBAAoB,GAAG,IAAI,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5E,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,yBAAyB,GAAG,IAAI,yBAAyB,CAAC,IAAI,CAAC,CAAC;QACrE,kBAAkB;QAClB,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,oBAAoB,GAAG,IAAI,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3E,IAAI,CAAC,qBAAqB,GAAG,IAAI,qBAAqB,CACpD,IAAI,EACJ,IAAI,CAAC,SAAS,CACf,CAAC;QACF,IAAI,CAAC,6BAA6B,GAAG,IAAI,6BAA6B,CACpE,IAAI,EACJ,IAAI,CAAC,SAAS,CACf,CAAC;QACF,IAAI,CAAC,qBAAqB,GAAG,IAAI,qBAAqB,CACpD,IAAI,EACJ,IAAI,CAAC,SAAS,CACf,CAAC;QACF,IAAI,CAAC,oBAAoB,GAAG,IAAI,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3E,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACrE,IAAI,CAAC,uBAAuB,GAAG,IAAI,sCAAsC,CACvE,IAAI,EACJ,IAAI,CAAC,SAAS,CACf,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QACjD,8BAA8B;QAC9B,IAAI,CAAC,sBAAsB,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,+BAA+B,GAAG,IAAI,+BAA+B,CACxE,IAAI,EACJ,IAAI,CAAC,SAAS,CACf,CAAC;QACF,aAAa;QACb,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,aAAa;aAC5C,qBAAqB,EAAE;aACvB,OAAO,CACN,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,oCAAoC,EAAE,EAAE,IAAI,EAAE,CAClE;aACA,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;aAC/B,MAAM,CAAC,aAAa,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,aAAa;QACf,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,OAAO,CACL,OAAO,CACL,IAAI,CAAC,SAAS,CAAC,cAAc,IAAI,IAAI,CAAC,SAAS,CAAC,gBAAgB,CACjE,IAAI,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,YAAY,CAC1D,CAAC;SACH;aAAM;YACL,OAAO,CACL,OAAO,CACL,IAAI,CAAC,SAAS,CAAC,cAAc;gBAC3B,IAAI,CAAC,SAAS,CAAC,gBAAgB;gBAC/B,IAAI,CAAC,SAAS,CAAC,eAAe;gBAC9B,IAAI,CAAC,SAAS,CAAC,uBAAuB,CACzC,IAAI,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,YAAY,CAC1D,CAAC;SACH;IACH,CAAC;IAED,IAAI,mBAAmB;QACrB,OAAO,IAAI,CAAC,aAAa,KAAK,iBAAiB,CAAC,YAAY,CAAC;IAC/D,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,KAAK,iBAAiB,CAAC,IAAI,CAAC;IACvD,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,CAAC;IAC1C,CAAC;IAED,IAAI,0BAA0B;QAC5B,OAAO,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,mBAAmB,CAAC;IACvD,CAAC;IAED,aAAa,CAAC,GAAe;QAC3B,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;IACxB,CAAC;IAED,OAAO,CAAC,GAAgB;QACtB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,CAAC;IAED,gBAAgB,CAAC,WAA8B;QAC7C,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC;QACjC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;IAClC,CAAC;IAED,OAAO;QACL,0FAA0F;QAC1F,yCAAyC;QACzC,oFAAoF;QACpF,0EAA0E;QAC1E,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACpD,6CAA6C;QAC7C,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC;IACnC,CAAC;IAED;;;;;OAKG;IACH,0BAA0B,CAAC,iBAAiC;QAC1D,OAAO,GAAY,EAAE;QACnB,6EAA6E;QAC7E,2EAA2E;QAC3E,CAAC,IAAI,CAAC,yBAAyB,CAAC,iBAAiB;YACjD,CAAC,CAAC,iBAAiB,IAAI,iBAAiB,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC;YAClD,GAAG,EAAE,yBAAyB,CAAC,OAAO;YACtC,OAAO,EAAE,IAAI,CAAC,0BAA0B,CACtC,GAAG,EAAE,CACH,IAAI,CAAC,aAAa;gBAClB,CAAC,CAAC,IAAI,CAAC,0BAA0B;oBAC/B,IAAI,CAAC,uBAAuB,CAAC,uBAAuB,CAAC,CAC1D;YACD,MAAM,EAAE,GAAG,EAAE;gBACX,IAAI,IAAI,CAAC,YAAY,EAAE;oBACrB,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,uBAAuB,EAAE,CAAC,CAAC,KAAK,CACzD,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAC1C,CAAC;iBACH;qBAAM,IAAI,IAAI,CAAC,mBAAmB,EAAE;oBACnC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,uBAAuB,EAAE,CAAC,CAAC,KAAK,CACzD,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAC1C,CAAC;iBACH;YACH,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC;YAClD,GAAG,EAAE,yBAAyB,CAAC,QAAQ;YACvC,OAAO,EAAE,IAAI,CAAC,0BAA0B,CACtC,GAAG,EAAE,CACH,IAAI,CAAC,aAAa;gBAClB,CAAC,CAAC,IAAI,CAAC,0BAA0B;oBAC/B,IAAI,CAAC,uBAAuB,CAAC,uBAAuB,CAAC,CAC1D;YACD,MAAM,EAAE,GAAG,EAAE;gBACX,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,cAAc,EAAE,CAAC,CAAC,KAAK,CACrE,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAC1C,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC;YAClD,GAAG,EAAE,yBAAyB,CAAC,cAAc;YAC7C,OAAO,EAAE,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;YACpE,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE;SAC/C,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC;YAClD,GAAG,EAAE,yBAAyB,CAAC,cAAc;YAC7C,OAAO,EAAE,IAAI,CAAC,0BAA0B,EAAE;YAC1C,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,EAAE;SACpD,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC;YAClD,GAAG,EAAE,yBAAyB,CAAC,gBAAgB;YAC/C,OAAO,EAAE,IAAI,CAAC,0BAA0B,CACtC,GAAG,EAAE,CACH,IAAI,CAAC,aAAa;gBAClB,CAAC,CAAC,IAAI,CAAC,0BAA0B;oBAC/B,IAAI,CAAC,uBAAuB,CAAC,uBAAuB,CAAC,CAC1D;YACD,MAAM,EAAE,GAAG,EAAE;gBACX,UAAU,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,KAAK,CACrC,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAC1C,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC;YAClD,GAAG,EAAE,yBAAyB,CAAC,mBAAmB;YAClD,OAAO,EAAE,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;YACpE,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC;SACpE,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC;YAClD,GAAG,EAAE,yBAAyB,CAAC,mBAAmB;YAClD,OAAO,EAAE,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;YACpE,MAAM,EAAE,GAAG,EAAE;gBACX,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,CAAC,KAAK,CACzD,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAC1C,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC;YAClD,GAAG,EAAE,yBAAyB,CAAC,gBAAgB;YAC/C,OAAO,EAAE,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;YACpE,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE;SACjD,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC;YAClD,GAAG,EAAE,yBAAyB,CAAC,uBAAuB;YACtD,OAAO,EAAE,IAAI,CAAC,0BAA0B,EAAE;YAC1C,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,QAAQ,CAAC;SAC7D,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC;YAClD,GAAG,EAAE,yBAAyB,CAAC,4BAA4B;YAC3D,OAAO,EAAE,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;YACpE,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,aAAa,CAAC;SAClE,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC;YAClD,GAAG,EAAE,yBAAyB,CAAC,+BAA+B;YAC9D,OAAO,EAAE,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;YACpE,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,gBAAgB,CAAC;SACrE,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC;YAClD,GAAG,EAAE,yBAAyB,CAAC,gCAAgC;YAC/D,OAAO,EAAE,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;YACpE,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,iBAAiB,CAAC;SACtE,CAAC,CAAC;IACL,CAAC;IAED,kBAAkB;QAChB;YACE,yBAAyB,CAAC,mBAAmB;YAC7C,yBAAyB,CAAC,cAAc;YACxC,yBAAyB,CAAC,cAAc;YACxC,yBAAyB,CAAC,gBAAgB;YAC1C,yBAAyB,CAAC,QAAQ;YAClC,yBAAyB,CAAC,OAAO;YACjC,yBAAyB,CAAC,gBAAgB;YAC1C,yBAAyB,CAAC,mBAAmB;YAC7C,yBAAyB,CAAC,uBAAuB;YACjD,yBAAyB,CAAC,4BAA4B;YACtD,yBAAyB,CAAC,+BAA+B;YACzD,yBAAyB,CAAC,gCAAgC;SAC3D,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAChB,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAC3D,CAAC;IACJ,CAAC;IAED,KAAK;QACH,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;QACpC,IAAI,CAAC,+BAA+B,GAAG,IAAI,+BAA+B,CACxE,IAAI,EACJ,IAAI,CAAC,SAAS,CACf,CAAC;QACF,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,qBAAqB,CAAC,MAAiC;QACrD,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QACzC,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB;YAC3C,CAAC,CAAC,aAAa,CAAC,KAAK;YACrB,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;QACvB,MAAM,WAAW,GAAG,oBAAoB,CACtC,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,WAAW,EAC7C,8CAA8C,CAC/C,CAAC;QACF,IAAI,UAAU,EAAE;YACd,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC;YACpC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,qBAAqB,CACnD,mBAAmB,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,CAAC,CAC3D,CAAC;SACH;IACH,CAAC;IAED;;;;OAIG;IACH,CAAC,UAAU,CACT,SAAiB,EACjB,WAAmB,EACnB,aAA4B;QAE5B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;YACpC;;;;;eAKG;YACH,0CAA0C;YAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE;gBAC1C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAC5B,QAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,EACpD,mGAAmG,CACpG,CAAC;gBACF,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC;gBAClC,OAAO;aACR;YACD,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACtC,gCAAgC,CACjC,CAAC;YACF,OAAO;SACR;QACD,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,CAAC,iBAA0B,EAAQ,EAAE;YACnD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;YAC3C,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACvC,CAAC,CAAC;QAEF,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC;QACrD,MAAM,UAAU,CACd,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,SAAS,EAAE;YAC5C,oBAAoB,EAAE,IAAI;SAC3B,CAAC,CACH,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE;YAClC,sEAAsE;YACtE,sFAAsF;YACtF,uCAAuC;YACvC,qDAAqD;YACrD,2BAA2B;YAC3B,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC;gBACvC,OAAO,EAAE,mCAAmC;gBAC5C,MAAM,EAAE,+DAA+D;gBACvE,IAAI,EAAE,eAAe,CAAC,QAAQ;gBAC9B,OAAO,EAAE;oBACP;wBACE,KAAK,EAAE,oBAAoB;wBAC3B,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,qBAAqB,CAAC,QAAQ;wBACpC,OAAO,EAAE,GAAS,EAAE;4BAClB,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;wBAC3C,CAAC;qBACF;oBACD;wBACE,KAAK,EAAE,yBAAyB;wBAChC,IAAI,EAAE,qBAAqB,CAAC,QAAQ;wBACpC,OAAO,EAAE,GAAS,EAAE;4BAClB,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,YAAY,CAC1C,kBAAkB,CAAC,SAAS,CAAC,CAC9B,CAAC;wBACJ,CAAC;qBACF;iBACF;aACF,CAAC,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,CAAC;YACf,OAAO;SACR;QACD,MAAM,UAAU,CACd,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAClC,SAAS,EACT,WAAW,EACX,aAAa,EACb;YACE,oBAAoB,EAAE,IAAI;SAC3B,CACF,CACF,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;YACpC,iCAAiC;YACjC,0FAA0F;YAC1F,uCAAuC;YACvC,yBAAyB;YACzB,iBAAiB;YACjB,2BAA2B;YAC3B,MAAM,0BAA0B,GAAG,KAAK,IAAmB,EAAE;gBAC3D,IAAI;oBACF,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;wBACrC,OAAO,EAAE,uBAAuB;wBAChC,MAAM,EAAE,qCAAqC;qBAC9C,CAAC,CAAC;oBACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAC3D,SAAS,EACT,WAAW,EACX,aAAa,CACd,CAAC;oBACF,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;oBAClD,IAAI,CAAC,gBAAgB,CAAC,aAAa,CACjC,cAAc,SAAS,CAAC,WAAW,oDAAoD,CACxF,CAAC;oBACF,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;iBAC1C;gBAAC,OAAO,KAAK,EAAE;oBACd,iBAAiB,CAAC,KAAK,CAAC,CAAC;oBACzB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAC7B,QAAQ,CAAC,MAAM,CAAC,uBAAuB,CAAC,uBAAuB,CAAC,EAChE,KAAK,CACN,CAAC;oBACF,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;iBAC1C;YACH,CAAC,CAAC;YACF,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC;gBACvC,OAAO,EAAE,qBAAqB;gBAC9B,MAAM,EAAE,+HAA+H;gBACvI,IAAI,EAAE,eAAe,CAAC,QAAQ;gBAC9B,OAAO,EAAE;oBACP;wBACE,KAAK,EAAE,cAAc;wBACrB,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,qBAAqB,CAAC,QAAQ;wBACpC,OAAO,EAAE,GAAS,EAAE;4BAClB,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,YAAY,CAC1C,wBAAwB,CAAC,SAAS,CAAC,CACpC,CAAC;wBACJ,CAAC;qBACF;oBACD;wBACE,KAAK,EAAE,kBAAkB;wBACzB,IAAI,EAAE,qBAAqB,CAAC,QAAQ;wBACpC,OAAO,EAAE,GAAS,EAAE;4BAClB,0BAA0B,EAAE,CAAC,KAAK,CAChC,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAC1C,CAAC;wBACJ,CAAC;qBACF;oBACD;wBACE,KAAK,EAAE,yBAAyB;wBAChC,IAAI,EAAE,qBAAqB,CAAC,QAAQ;wBACpC,OAAO,EAAE,GAAS,EAAE;4BAClB,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,YAAY,CAC1C,kBAAkB,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,CAAC,CAC1D,CAAC;wBACJ,CAAC;qBACF;iBACF;aACF,CAAC,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,CAAC;YACf,OAAO;SACR;QACD,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,SAAS,CAAC,oBAAoB,CACjC,SAAS,EACT,IAAI,CAAC,SAAS,CAAC,eAAe,CAC/B;YACD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE;YACzC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,UAAU,CAC5C;gBACE,GAAG,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG;gBACrC,OAAO,EAAE,QAAQ;gBACjB,YAAY,EAAE;oBACZ,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,eAAe;oBACrD,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,oBAAoB;oBAC/D,iBAAiB,EAAE,IAAI;iBACxB;aACF,EACD;gBACE,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,aAAa;aACnD,CACF;SACF,CAAC,CAAC;QACH,MAAM,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAElC,OAAO,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC;IAED,CAAC,QAAQ;QACP,QAAQ,IAAI,CAAC,IAAI,EAAE;YACjB,KAAK,WAAW,CAAC,QAAQ;gBACvB,MAAM,UAAU,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;gBAC1C,OAAO;YACT,KAAK,WAAW,CAAC,mBAAmB;gBAClC,MAAM,UAAU,CAAC,IAAI,CAAC,0BAA0B,EAAE,CAAC,CAAC;gBACpD,OAAO;YACT;gBACE,MAAM,IAAI,yBAAyB,CACjC,iDAAiD,IAAI,CAAC,IAAI,GAAG,CAC9D,CAAC;SACL;IACH,CAAC;IAEO,CAAC,gBAAgB;QACvB,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,SAAS,CAAC,0BAA0B,EAAE;YAC3C,IAAI,CAAC,oBAAoB,CAAC,2BAA2B,EAAE;YACvD,IAAI,CAAC,qBAAqB,CAAC,2BAA2B,EAAE;YACxD,IAAI,CAAC,+BAA+B,CAAC,kCAAkC,EAAE;YACzE,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,wCAAwC,EAAE;YAC/E,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,gCAAgC,EAAE;YAC3F,IAAI,CAAC,SAAS,CAAC,oBAAoB,EAAE;SACtC,CAAC,CAAC;IACL,CAAC;IAEO,CAAC,0BAA0B;QACjC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC;YACvC,OAAO,EAAE,6BAA6B;YACtC,MAAM,EACJ,mJAAmJ;YACrJ,IAAI,EAAE,eAAe,CAAC,OAAO;YAC7B,OAAO,EAAE;gBACP;oBACE,KAAK,EAAE,sBAAsB;oBAC7B,IAAI,EAAE,qBAAqB,CAAC,oBAAoB;oBAChD,OAAO,EAAE,GAAS,EAAE;wBAClB,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;wBAC1D,UAAU,CACR,IAAI,CAAC,uBAAuB,CAAC,gCAAgC,EAAE,CAChE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAChB,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,KAAK,CAAC,CACjD,CAAC;oBACJ,CAAC;iBACF;gBACD;oBACE,KAAK,EAAE,yBAAyB;oBAChC,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,qBAAqB,CAAC,QAAQ;iBACrC;aACF;SACF,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE;YACzC,IAAI,CAAC,SAAS,CAAC,0BAA0B,EAAE;YAC3C,IAAI,CAAC,+BAA+B,CAAC,kCAAkC,EAAE;YACzE,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,wCAAwC,EAAE;YAC/E,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,gCAAgC,EAAE;YAC3F,IAAI,CAAC,SAAS,CAAC,oBAAoB,EAAE;SACtC,CAAC,CAAC;IACL,CAAC;IAED,CAAC,UAAU,CAAC,aAAwB;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,QAAkB,CAAC;QACvB,IAAI,oBAAuD,CAAC;QAE5D,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;QAClD,IAAI;YACF,uDAAuD;YACvD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC;YACzD,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;YACvD,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,SAAS,EAAE,eAAe,CAAC;gBAC7D,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,SAAS,EAAE,eAAe,CAAC;aACnE,CAAC,CAAkD,CAAC;YACrD,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACrB,oBAAoB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,+BAA+B,CAAC,uBAAuB,CAC1D,oBAAoB,CAAC,aAAa,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAClE,CAAC;YACF,4EAA4E;YAC5E,IAAI,CAAC,+BAA+B,CAAC,+BAA+B,CAClE,oBAAoB,CAAC,aAAa,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAClE,CAAC;YACF,IAAI,CAAC,oBAAoB,CAAC,iCAAiC,CAAC,WAAW,CACrE,QAAQ,CACT,CAAC;YACF,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAC5B,QAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,EAC3D,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EACtB,IAAI,CACL,CAAC;SACH;QAAC,MAAM;YACN,OAAO;SACR;gBAAS;YACR,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;SACtC;QAED,IAAI;YACF,MAAM,MAAM,GAAG,CAAC,MAAM,UAAU;YAC9B,6EAA6E;YAC7E,iGAAiG;YACjG,qEAAqE;YACrE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,aAAa,IAAI,QAAQ,CAAC,CACtD,CAAuB,CAAC;YAEzB,IAAI,MAAM,CAAC,KAAK,EAAE;gBAChB,IAAI,MAAM,CAAC,MAAM,KAAK,kBAAkB,CAAC,uBAAuB,EAAE;oBAChE,MAAM,UAAU,CACd,IAAI,CAAC,oBAAoB,CAAC,iCAAiC,CAAC,sBAAsB,CAChF,QAAQ,EACR,QAAQ,CAAC,MAAM,CACb,sBAAsB,CAAC,yCAAyC,CACjE,CACF,CACF,CAAC;iBACH;gBACD,OAAO;aACR;YAED,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,qCAAqC,CAAC,CAAC;YAEjE,sBAAsB;YACtB,IAAI,CAAC,iBAAiB,CAAC,wBAAwB,EAAE,CAAC;YAClD,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;YAE/B,2CAA2C;YAC3C,IACE,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,YAAY;gBACnD,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,YAAY;gBAC9C,IAAI,CAAC,iBAAiB,EACtB;gBACA,IAAI;oBACF,IAAI,CAAC,eAAe,CAAC,iBAAiB,CACpC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAChE,CAAC;iBACH;gBAAC,MAAM;oBACN,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC;oBAC3C,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;oBACnC,MAAM,IAAI,cAAc,CACtB,iCAAiC,WAAW,GAAG,CAChD,CAAC;iBACH;aACF;YAED,6CAA6C;YAC7C,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC;YACjC,MAAM,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,YAAY,EAAE,CAAC,CAAC;YAC3D,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,IAAI,CAAC,oBAAoB,CAAC,4BAA4B,EAAE;gBACxD,IAAI,CAAC,oBAAoB,CAAC,iCAAiC,CAAC,sBAAsB,CAChF,QAAQ,EACR,QAAQ,CAAC,MAAM,CACb,sBAAsB,CAAC,yCAAyC,CACjE,CACF;gBAED,IAAI,CAAC,SAAS,CAAC,2CAA2C,EAAE;gBAC5D,IAAI,CAAC,SAAS,CAAC,2CAA2C,EAAE;aAC7D,CAAC,CAAC;YACH,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC;YAClC,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,IAAI,CAAC,oBAAoB,CAAC,iCAAiC,CAAC,IAAI,CAAC;gBACjE,IAAI,CAAC,oBAAoB,CAAC,qCAAqC,CAAC,IAAI,CAAC;aACtE,CAAC,CAAC;YACH,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAC5B,QAAQ,CAAC,MAAM,CAAC,sBAAsB,CAAC,0BAA0B,CAAC,EAClE,SAAS,CACV,CAAC;YACF,sDAAsD;SACvD;QAAC,OAAO,KAAK,EAAE;YACd,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAC7B,QAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,EAC1D,KAAK,CACN,CAAC;YACF,gFAAgF;YAChF,OAAO;SACR;gBAAS;YACR,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;SACtC;IACH,CAAC;IAED,iBAAiB,CACf,QAAuB,EACvB,OAAmD;QAEnD,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE;YACpC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC;SACjC;aAAM,IACL,QAAQ,KAAK,IAAI,CAAC,cAAc;YAChC,CAAC,OAAO,EAAE,2BAA2B,EACrC;YACA,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;SAClC;QACD,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;IACjC,CAAC;IAED,qBAAqB,CAAC,GAAmB;QACvC,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC;IAChC,CAAC;IAED,wBAAwB,CACtB,OAA2B;QAE3B,IAAI,OAAO,YAAY,aAAa,EAAE;YACpC,MAAM,IAAI,yBAAyB,CACjC,+CAA+C,CAChD,CAAC;SACH;aAAM,IAAI,OAAO,YAAY,KAAK,EAAE;YACnC,OAAO,IAAI,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAC5C;aAAM,IACL,OAAO,YAAY,WAAW;YAC9B,OAAO,YAAY,WAAW;YAC9B,OAAO,YAAY,OAAO,EAC1B;YACA,OAAO,IAAI,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAC1C;aAAM,IAAI,OAAO,YAAY,0BAA0B,EAAE;YACxD,OAAO,IAAI,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAC/C;aAAM,IACL,OAAO,YAAY,OAAO;YAC1B,OAAO,YAAY,QAAQ;YAC3B,OAAO,YAAY,QAAQ,EAC3B;YACA,OAAO,IAAI,6BAA6B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACzD;aAAM,IAAI,OAAO,YAAY,kBAAkB,EAAE;YAChD,OAAO,IAAI,6BAA6B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACzD;aAAM,IAAI,OAAO,YAAY,qBAAqB,EAAE;YACnD,OAAO,IAAI,gCAAgC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAC5D;aAAM,IAAI,OAAO,YAAY,OAAO,EAAE;YACrC,OAAO,IAAI,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAC9C;aAAM,IAAI,OAAO,YAAY,OAAO,EAAE;YACrC,OAAO,IAAI,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAC9C;aAAM,IAAI,OAAO,YAAY,uBAAuB,EAAE;YACrD,OAAO,IAAI,kCAAkC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAC9D;aAAM,IAAI,OAAO,YAAY,2BAA2B,EAAE;YACzD,OAAO,IAAI,yBAAyB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACrD;aAAM,IAAI,OAAO,YAAY,WAAW,EAAE;YACzC,OAAO,IAAI,0BAA0B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACtD;QACD,MAAM,+BAA+B,GAAG,IAAI,CAAC,aAAa;aACvD,qBAAqB,EAAE;aACvB,OAAO,CACN,CAAC,MAAM,EAAE,EAAE,CAEP,MACD,CAAC,kCAAkC,EAAE,EAAE,IAAI,EAAE,CACjD,CAAC;QACJ,KAAK,MAAM,OAAO,IAAI,+BAA+B,EAAE;YACrD,MAAM,kBAAkB,GAAG,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAClD,IAAI,kBAAkB,EAAE;gBACtB,OAAO,kBAAkB,CAAC;aAC3B;SACF;QACD,MAAM,IAAI,yBAAyB,CACjC,kGAAkG,EAClG,OAAO,CACR,CAAC;IACJ,CAAC;IAED,CAAC,UAAU,CACT,OAA2B,EAC3B,WAA+B,EAC/B,eAAwB;QAExB,gBAAgB,CACd,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAC5B,OAAO,EACP,WAAW,EACX,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAC1C,CAAC;QACF,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC;QAEnC,IAAI,eAAe,EAAE;YACnB,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;SACjD;IACH,CAAC;IAED,CAAC,aAAa,CAAC,OAA2B;QACxC,IACE,IAAI,CAAC,UAAU,CAAC,0CAA0C,EAAE;YAC5D,iBAAiB,CAAC,OAAO,CAAC,EAC1B;YACA,OAAO;SACR;QACD,MAAM,yBAAyB,GAAG,CAChC,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,GAAG,CACxD,OAAO,CAAC,IAAI,CACb,IAAI,EAAE,CACR;aACE,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE,CACtB,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,eAAe,CAAC,cAAc,CAAC,IAAI,CAC9D,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI,CACxD,CACF;aACA,MAAM,CAAC,aAAa,CAAC,CAAC;QACzB,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,GAAG,yBAAyB,CAAC,CAAC;QACjE,IAAI,CAAC,eAAe,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAC1D,CAAC,YAAY,EAAE,EAAE;YACf,IAAI,YAAY,YAAY,kBAAkB,EAAE;gBAC9C,IAAI,YAAY,KAAK,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE;oBACpD,uEAAuE;oBACvE,mCAAmC;oBACnC,OAAO,IAAI,CAAC;iBACb;gBACD,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;aACzD;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CACF,CAAC;QACF,IACE,IAAI,CAAC,eAAe,CAAC,UAAU;YAC/B,IAAI,CAAC,eAAe,CAAC,UAAU,YAAY,kBAAkB;YAC7D,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,EAClE;YACA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;SAChE;QACD,kFAAkF;QAClF,yBAAyB,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CACvC,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,CAAC,CACzE,CAAC;QACF,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAE3D,MAAM,mCAAmC,GAAG,IAAI,CAAC,aAAa;aAC3D,qBAAqB,EAAE;aACvB,OAAO,CACN,CAAC,MAAM,EAAE,EAAE,CAEP,MACD,CAAC,sCAAsC,EAAE,EAAE,IAAI,EAAE,CACrD,CAAC;QACJ,KAAK,MAAM,gBAAgB,IAAI,mCAAmC,EAAE;YAClE,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACjC;QAED,kCAAkC;QAClC,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC;QACnC,YAAY;QACZ,MAAM,UAAU,CACd,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC;YACtC,OAAO,EAAE,oHAAoH;SAC9H,CAAC,CACH,CAAC;IACJ,CAAC;IAED,CAAC,aAAa,CACZ,OAA2B,EAC3B,OAAe;QAEf,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE;YAC9B,OAAO;SACR;QACD,mBAAmB,CACjB,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAC5B,OAAO,EACP,OAAO,EACP,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAC1C,CAAC;QAEF,MAAM,mCAAmC,GAAG,IAAI,CAAC,aAAa;aAC3D,qBAAqB,EAAE;aACvB,OAAO,CACN,CAAC,MAAM,EAAE,EAAE,CAEP,MACD,CAAC,sCAAsC,EAAE,EAAE,IAAI,EAAE,CACrD,CAAC;QACJ,KAAK,MAAM,gBAAgB,IAAI,mCAAmC,EAAE;YAClE,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACjC;QAED,kCAAkC;QAClC,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC;QACnC,IAAI,OAAO,YAAY,OAAO,EAAE;YAC9B,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;SAC1C;aAAM,IAAI,OAAO,CAAC,OAAO,EAAE;YAC1B,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SAClD;QACD,YAAY;QACZ,MAAM,UAAU,CACd,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC;YACtC,OAAO,EAAE,oHAAoH;SAC9H,CAAC,CACH,CAAC;IACJ,CAAC;IAED,CAAC,cAAc;QACb,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,IAAI,CAAC,UAAU,CAAC,0CAA0C,EAAE,EAAE;gBAChE,OAAO;aACR;YACD,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;gBACrC,OAAO,EAAE,2BAA2B;gBACpC,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YACH,IAAI;gBACF,MAAM,YAAY,GAChB,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,eAAe,CACxD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAC7B,CAAW,CAAC;gBACf,MAAM,UAAU,CACd,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAC9D,CAAC;aACH;YAAC,OAAO,KAAK,EAAE;gBACd,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBACzB,IAAI,CAAC,gBAAgB,CAAC,aAAa,CACjC,wEAAwE,KAAK,CAAC,OAAO,EAAE,CACxF,CAAC;gBACF,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;gBAClD,OAAO;aACR;YACD,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;YAClD,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;YACtD,uFAAuF;YACvF,IAAI,IAAI,CAAC,eAAe,CAAC,UAAU,YAAY,kBAAkB,EAAE;gBACjE,IAAI,CAAC,sBAAsB,CAAC,iCAAiC,CAC3D,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CACxC,CAAC;aACH;SACF;aAAM,IAAI,IAAI,CAAC,mBAAmB,EAAE;YACnC,MAAM,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;SACnD;aAAM;YACL,MAAM,IAAI,yBAAyB,CACjC,2DAA2D,CAC5D,CAAC;SACH;IACH,CAAC;IAED,wBAAwB;QACtB,OACE;YACE,wBAAwB,CAAC,KAAK;YAC9B,wBAAwB,CAAC,WAAW;YACpC,wBAAwB,CAAC,OAAO;YAChC,wBAAwB,CAAC,WAAW;YACpC,wBAAwB,CAAC,QAAQ;YACjC,wBAAwB,CAAC,OAAO;YAChC,wBAAwB,CAAC,OAAO;YAChC,wBAAwB,CAAC,OAAO;YAChC,wBAAwB,CAAC,UAAU;YACnC,wBAAwB,CAAC,OAAO;YAChC,wBAAwB,CAAC,wBAAwB;YACjD,wBAAwB,CAAC,eAAe;YACxC,wBAAwB,CAAC,eAAe;YACxC,wBAAwB,CAAC,QAAQ;YACjC,wBAAwB,CAAC,IAAI;SAEhC,CAAC,MAAM,CACN,IAAI,CAAC,aAAa;aACf,qBAAqB,EAAE;aACvB,OAAO,CACN,CAAC,MAAM,EAAE,EAAE,CAEP,MACD,CAAC,6BAA6B,EAAE,EAAE,IAAI,EAAE,CAC5C,CACJ,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,56 @@
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
+ import { TabManagerState } from '@finos/legend-application';
17
+ import { type PackageableElement } from '@finos/legend-graph';
18
+ import { type Clazz } from '@finos/legend-shared';
19
+ import type { EditorState } from './editor-state/EditorState.js';
20
+ import type { EditorStore } from './EditorStore.js';
21
+ export declare class EditorTabManagerState extends TabManagerState {
22
+ readonly editorStore: EditorStore;
23
+ currentTab?: EditorState | undefined;
24
+ tabs: EditorState[];
25
+ constructor(editorStore: EditorStore);
26
+ get dndType(): string;
27
+ closeTab(tab: EditorState): void;
28
+ openTab(tab: EditorState): void;
29
+ getCurrentEditorState<T extends EditorState>(clazz: Clazz<T>): T;
30
+ openElementEditor(element: PackageableElement): void;
31
+ refreshCurrentEntityDiffViewer(): void;
32
+ /**
33
+ * After we do graph processing, we want to recover the tabs
34
+ *
35
+ * NOTE: we have to flush old tab states to ensure, we have no reference
36
+ * to the old graph to avoid memory leak. Here, we only recreate element
37
+ * editor tabs, and keep special editors open. Some tabs will be closed.
38
+ * But we **ABSOLUTELY** must never make this behavior customizable by extension
39
+ * i.e. we should not allow extension control if a tab should be kept open, because
40
+ * the plugin implementation could accidentally reference older graph and therefore
41
+ * cause memory issues
42
+ *
43
+ * See https://github.com/finos/legend-studio/issues/1713
44
+ *
45
+ * FIXME: we allow this so the UX stays the same but this can cause memory leak
46
+ * we should change `reprocess` model to do something like having source information
47
+ * on the form to navigate to it properly so that information is not dependent on the
48
+ * graph, but on the component itself, with IDs and such.
49
+ *
50
+ * TODO: to be removed when we process editor states properly
51
+ *
52
+ * @risk memory-leak
53
+ */
54
+ recoverTabs(tabs: EditorState[], currentTab: EditorState | undefined): void;
55
+ }
56
+ //# sourceMappingURL=EditorTabManagerState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditorTabManagerState.d.ts","sourceRoot":"","sources":["../../src/stores/EditorTabManagerState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAW,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAEL,KAAK,KAAK,EAGX,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAMjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,qBAAa,qBAAsB,SAAQ,eAAe;IACxD,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAE1B,UAAU,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,IAAI,EAAE,WAAW,EAAE,CAAC;gBAEhB,WAAW,EAAE,WAAW;IAYpC,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,QAAQ,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAgBhC,OAAO,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAkB/B,qBAAqB,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;IAQhE,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAmBpD,8BAA8B,IAAI,IAAI;IAMtC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,UAAU,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI;CA8B5E"}