@finos/legend-application-studio 15.1.0 → 16.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 (362) hide show
  1. package/lib/application/LegendStudio.d.ts.map +1 -1
  2. package/lib/application/LegendStudio.js +5 -2
  3. package/lib/application/LegendStudio.js.map +1 -1
  4. package/lib/application/LegendStudioPluginManager.js +2 -2
  5. package/lib/application/LegendStudioPluginManager.js.map +1 -1
  6. package/lib/components/DSLExternalFormat_LegendStudioApplicationPlugin.d.ts +4 -4
  7. package/lib/components/DSLExternalFormat_LegendStudioApplicationPlugin.d.ts.map +1 -1
  8. package/lib/components/DSLExternalFormat_LegendStudioApplicationPlugin.js +3 -3
  9. package/lib/components/DSLExternalFormat_LegendStudioApplicationPlugin.js.map +1 -1
  10. package/lib/components/EditorComponentTestUtils.d.ts +1 -1
  11. package/lib/components/EditorComponentTestUtils.d.ts.map +1 -1
  12. package/lib/components/EditorComponentTestUtils.js +19 -23
  13. package/lib/components/EditorComponentTestUtils.js.map +1 -1
  14. package/lib/components/EmbeddedQueryBuilder.d.ts +19 -0
  15. package/lib/components/EmbeddedQueryBuilder.d.ts.map +1 -0
  16. package/lib/components/EmbeddedQueryBuilder.js +80 -0
  17. package/lib/components/EmbeddedQueryBuilder.js.map +1 -0
  18. package/lib/components/LegendStudioApplication.d.ts +0 -1
  19. package/lib/components/LegendStudioApplication.d.ts.map +1 -1
  20. package/lib/components/editor/Editor.d.ts.map +1 -1
  21. package/lib/components/editor/Editor.js +12 -13
  22. package/lib/components/editor/Editor.js.map +1 -1
  23. package/lib/components/editor/StatusBar.d.ts +0 -1
  24. package/lib/components/editor/StatusBar.d.ts.map +1 -1
  25. package/lib/components/editor/aux-panel/AuxiliaryPanel.d.ts +0 -1
  26. package/lib/components/editor/aux-panel/AuxiliaryPanel.d.ts.map +1 -1
  27. package/lib/components/editor/aux-panel/Console.d.ts +0 -1
  28. package/lib/components/editor/aux-panel/Console.d.ts.map +1 -1
  29. package/lib/components/editor/aux-panel/DevTool.d.ts +0 -1
  30. package/lib/components/editor/aux-panel/DevTool.d.ts.map +1 -1
  31. package/lib/components/editor/command-center/ProjectSearchCommand.d.ts +0 -1
  32. package/lib/components/editor/command-center/ProjectSearchCommand.d.ts.map +1 -1
  33. package/lib/components/editor/edit-panel/FileGenerationViewer.d.ts +0 -1
  34. package/lib/components/editor/edit-panel/FileGenerationViewer.d.ts.map +1 -1
  35. package/lib/components/editor/edit-panel/FunctionEditor.d.ts +0 -1
  36. package/lib/components/editor/edit-panel/FunctionEditor.d.ts.map +1 -1
  37. package/lib/components/editor/edit-panel/FunctionEditor.js +3 -3
  38. package/lib/components/editor/edit-panel/FunctionEditor.js.map +1 -1
  39. package/lib/components/editor/edit-panel/GenerationSpecificationEditor.d.ts +0 -1
  40. package/lib/components/editor/edit-panel/GenerationSpecificationEditor.d.ts.map +1 -1
  41. package/lib/components/editor/edit-panel/GrammarTextEditor.d.ts.map +1 -1
  42. package/lib/components/editor/edit-panel/GrammarTextEditor.js +15 -3
  43. package/lib/components/editor/edit-panel/GrammarTextEditor.js.map +1 -1
  44. package/lib/components/editor/edit-panel/ModelImporter.d.ts +0 -1
  45. package/lib/components/editor/edit-panel/ModelImporter.d.ts.map +1 -1
  46. package/lib/components/editor/edit-panel/RuntimeEditor.d.ts +0 -1
  47. package/lib/components/editor/edit-panel/RuntimeEditor.d.ts.map +1 -1
  48. package/lib/components/editor/edit-panel/UnsupportedElementEditor.d.ts +0 -1
  49. package/lib/components/editor/edit-panel/UnsupportedElementEditor.d.ts.map +1 -1
  50. package/lib/components/editor/edit-panel/UnsupportedElementEditor.js +1 -1
  51. package/lib/components/editor/edit-panel/UnsupportedElementEditor.js.map +1 -1
  52. package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.d.ts +0 -1
  53. package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.d.ts.map +1 -1
  54. package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.js +2 -2
  55. package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.js.map +1 -1
  56. package/lib/components/editor/edit-panel/connection-editor/DatabaseBuilder.d.ts +0 -1
  57. package/lib/components/editor/edit-panel/connection-editor/DatabaseBuilder.d.ts.map +1 -1
  58. package/lib/components/editor/edit-panel/connection-editor/DatabaseBuilder.js +1 -1
  59. package/lib/components/editor/edit-panel/connection-editor/DatabaseBuilder.js.map +1 -1
  60. package/lib/{stores/editor-state/element-editor-state/mapping/relational → components/editor/edit-panel/connection-editor}/DatabaseEditorHelper.d.ts +0 -0
  61. package/lib/components/editor/edit-panel/connection-editor/DatabaseEditorHelper.d.ts.map +1 -0
  62. package/lib/{stores/editor-state/element-editor-state/mapping/relational → components/editor/edit-panel/connection-editor}/DatabaseEditorHelper.js +0 -0
  63. package/lib/components/editor/edit-panel/connection-editor/DatabaseEditorHelper.js.map +1 -0
  64. package/lib/components/editor/edit-panel/connection-editor/FlatDataConnectionEditor.d.ts +0 -1
  65. package/lib/components/editor/edit-panel/connection-editor/FlatDataConnectionEditor.d.ts.map +1 -1
  66. package/lib/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.d.ts +3 -13
  67. package/lib/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.d.ts.map +1 -1
  68. package/lib/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.js +103 -41
  69. package/lib/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.js.map +1 -1
  70. package/lib/components/editor/edit-panel/connection-editor/post-processor-editor/MapperPostProcessorEditor.d.ts +25 -0
  71. package/lib/components/editor/edit-panel/connection-editor/post-processor-editor/MapperPostProcessorEditor.d.ts.map +1 -0
  72. package/lib/components/editor/edit-panel/connection-editor/post-processor-editor/MapperPostProcessorEditor.js +77 -0
  73. package/lib/components/editor/edit-panel/connection-editor/post-processor-editor/MapperPostProcessorEditor.js.map +1 -0
  74. package/lib/components/editor/edit-panel/data-editor/DataElementEditor.d.ts +0 -1
  75. package/lib/components/editor/edit-panel/data-editor/DataElementEditor.d.ts.map +1 -1
  76. package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.d.ts.map +1 -1
  77. package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.js +1 -1
  78. package/lib/components/editor/edit-panel/data-editor/EmbeddedDataEditor.js.map +1 -1
  79. package/lib/components/editor/edit-panel/data-editor/RelationalCSVDataEditor.d.ts +0 -1
  80. package/lib/components/editor/edit-panel/data-editor/RelationalCSVDataEditor.d.ts.map +1 -1
  81. package/lib/components/editor/edit-panel/diff-editor/EntityChangeConflictEditor.d.ts +0 -1
  82. package/lib/components/editor/edit-panel/diff-editor/EntityChangeConflictEditor.d.ts.map +1 -1
  83. package/lib/components/editor/edit-panel/diff-editor/EntityDiffView.d.ts +0 -1
  84. package/lib/components/editor/edit-panel/diff-editor/EntityDiffView.d.ts.map +1 -1
  85. package/lib/components/editor/edit-panel/element-generation-editor/ElementGenerationEditor.d.ts +0 -1
  86. package/lib/components/editor/edit-panel/element-generation-editor/ElementGenerationEditor.d.ts.map +1 -1
  87. package/lib/components/editor/edit-panel/element-generation-editor/ElementNativeView.d.ts +0 -1
  88. package/lib/components/editor/edit-panel/element-generation-editor/ElementNativeView.d.ts.map +1 -1
  89. package/lib/components/editor/edit-panel/external-format-editor/BindingElementEditor.d.ts +0 -1
  90. package/lib/components/editor/edit-panel/external-format-editor/BindingElementEditor.d.ts.map +1 -1
  91. package/lib/components/editor/edit-panel/external-format-editor/ExternalFormatConnectionEditor.d.ts +0 -1
  92. package/lib/components/editor/edit-panel/external-format-editor/ExternalFormatConnectionEditor.d.ts.map +1 -1
  93. package/lib/components/editor/edit-panel/external-format-editor/NewSchemaSetDriver.d.ts +0 -1
  94. package/lib/components/editor/edit-panel/external-format-editor/NewSchemaSetDriver.d.ts.map +1 -1
  95. package/lib/components/editor/edit-panel/external-format-editor/SchemaSetElementEditor.d.ts +0 -1
  96. package/lib/components/editor/edit-panel/external-format-editor/SchemaSetElementEditor.d.ts.map +1 -1
  97. package/lib/components/editor/edit-panel/external-format-editor/SchemaSetModelGenerationEditor.d.ts +0 -1
  98. package/lib/components/editor/edit-panel/external-format-editor/SchemaSetModelGenerationEditor.d.ts.map +1 -1
  99. package/lib/components/editor/edit-panel/mapping-editor/ClassMappingEditor.d.ts +0 -1
  100. package/lib/components/editor/edit-panel/mapping-editor/ClassMappingEditor.d.ts.map +1 -1
  101. package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.d.ts +0 -1
  102. package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.d.ts.map +1 -1
  103. package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.js +1 -1
  104. package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.js.map +1 -1
  105. package/lib/components/editor/edit-panel/mapping-editor/FlatDataPropertyMappingEditor.d.ts +0 -1
  106. package/lib/components/editor/edit-panel/mapping-editor/FlatDataPropertyMappingEditor.d.ts.map +1 -1
  107. package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.d.ts +0 -1
  108. package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.d.ts.map +1 -1
  109. package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.js +2 -2
  110. package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.js.map +1 -1
  111. package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.d.ts +0 -1
  112. package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.d.ts.map +1 -1
  113. package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.js +2 -5
  114. package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.js.map +1 -1
  115. package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.d.ts +0 -1
  116. package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.d.ts.map +1 -1
  117. package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.js +40 -8
  118. package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.js.map +1 -1
  119. package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionQueryBuilder.d.ts +18 -0
  120. package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionQueryBuilder.d.ts.map +1 -0
  121. package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionQueryBuilder.js +38 -0
  122. package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionQueryBuilder.js.map +1 -0
  123. package/lib/components/editor/edit-panel/mapping-editor/MappingTestEditor.d.ts +0 -1
  124. package/lib/components/editor/edit-panel/mapping-editor/MappingTestEditor.d.ts.map +1 -1
  125. package/lib/components/editor/edit-panel/mapping-editor/MappingTestEditor.js +40 -8
  126. package/lib/components/editor/edit-panel/mapping-editor/MappingTestEditor.js.map +1 -1
  127. package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.d.ts +0 -1
  128. package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.d.ts.map +1 -1
  129. package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.js +4 -4
  130. package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.js.map +1 -1
  131. package/lib/components/editor/edit-panel/mapping-editor/OperationSetImplementationEditor.d.ts +0 -1
  132. package/lib/components/editor/edit-panel/mapping-editor/OperationSetImplementationEditor.d.ts.map +1 -1
  133. package/lib/components/editor/edit-panel/mapping-editor/PropertyMappingsEditor.d.ts +0 -1
  134. package/lib/components/editor/edit-panel/mapping-editor/PropertyMappingsEditor.d.ts.map +1 -1
  135. package/lib/components/editor/edit-panel/mapping-editor/PurePropertyMappingEditor.d.ts +0 -1
  136. package/lib/components/editor/edit-panel/mapping-editor/PurePropertyMappingEditor.d.ts.map +1 -1
  137. package/lib/components/editor/edit-panel/mapping-editor/relational/RelationalPropertyMappingEditor.d.ts +0 -1
  138. package/lib/components/editor/edit-panel/mapping-editor/relational/RelationalPropertyMappingEditor.d.ts.map +1 -1
  139. package/lib/components/editor/edit-panel/mapping-editor/relational/TableOrViewSourceTree.js +1 -1
  140. package/lib/components/editor/edit-panel/mapping-editor/relational/TableOrViewSourceTree.js.map +1 -1
  141. package/lib/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.d.ts +0 -1
  142. package/lib/components/editor/edit-panel/project-configuration-editor/ProjectConfigurationEditor.d.ts.map +1 -1
  143. package/lib/components/editor/edit-panel/service-editor/NewServiceModal.d.ts +0 -1
  144. package/lib/components/editor/edit-panel/service-editor/NewServiceModal.d.ts.map +1 -1
  145. package/lib/components/editor/edit-panel/service-editor/ServiceEditor.d.ts +0 -1
  146. package/lib/components/editor/edit-panel/service-editor/ServiceEditor.d.ts.map +1 -1
  147. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionEditor.d.ts +0 -1
  148. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionEditor.d.ts.map +1 -1
  149. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionEditor.js +2 -1
  150. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionEditor.js.map +1 -1
  151. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.d.ts +0 -1
  152. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.d.ts.map +1 -1
  153. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.js +58 -10
  154. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.js.map +1 -1
  155. package/lib/components/editor/edit-panel/service-editor/ServiceRegistrationEditor.d.ts +0 -1
  156. package/lib/components/editor/edit-panel/service-editor/ServiceRegistrationEditor.d.ts.map +1 -1
  157. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.d.ts +0 -1
  158. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.d.ts.map +1 -1
  159. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.js +7 -5
  160. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.js.map +1 -1
  161. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestableEditor.d.ts +0 -1
  162. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestableEditor.d.ts.map +1 -1
  163. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestsEditor.d.ts +0 -1
  164. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestsEditor.d.ts.map +1 -1
  165. package/lib/components/editor/edit-panel/testable/TestAssertionEditor.d.ts +0 -1
  166. package/lib/components/editor/edit-panel/testable/TestAssertionEditor.d.ts.map +1 -1
  167. package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.d.ts +0 -1
  168. package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.d.ts.map +1 -1
  169. package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.js +2 -2
  170. package/lib/components/editor/edit-panel/uml-editor/AssociationEditor.js.map +1 -1
  171. package/lib/components/editor/edit-panel/uml-editor/ClassEditor.d.ts +0 -1
  172. package/lib/components/editor/edit-panel/uml-editor/ClassEditor.d.ts.map +1 -1
  173. package/lib/components/editor/edit-panel/uml-editor/ClassEditor.js +9 -7
  174. package/lib/components/editor/edit-panel/uml-editor/ClassEditor.js.map +1 -1
  175. package/lib/components/editor/edit-panel/uml-editor/ClassQueryBuilder.d.ts +19 -0
  176. package/lib/components/editor/edit-panel/uml-editor/ClassQueryBuilder.d.ts.map +1 -0
  177. package/lib/components/editor/edit-panel/uml-editor/ClassQueryBuilder.js +80 -0
  178. package/lib/components/editor/edit-panel/uml-editor/ClassQueryBuilder.js.map +1 -0
  179. package/lib/components/editor/edit-panel/uml-editor/EnumerationEditor.d.ts +0 -1
  180. package/lib/components/editor/edit-panel/uml-editor/EnumerationEditor.d.ts.map +1 -1
  181. package/lib/components/editor/edit-panel/uml-editor/ProfileEditor.d.ts +0 -1
  182. package/lib/components/editor/edit-panel/uml-editor/ProfileEditor.d.ts.map +1 -1
  183. package/lib/components/editor/edit-panel/uml-editor/PropertyEditor.d.ts +0 -1
  184. package/lib/components/editor/edit-panel/uml-editor/PropertyEditor.d.ts.map +1 -1
  185. package/lib/components/editor/edit-panel/uml-editor/StereotypeSelector.d.ts.map +1 -1
  186. package/lib/components/editor/edit-panel/uml-editor/StereotypeSelector.js +4 -1
  187. package/lib/components/editor/edit-panel/uml-editor/StereotypeSelector.js.map +1 -1
  188. package/lib/components/editor/edit-panel/uml-editor/TaggedValueEditor.d.ts.map +1 -1
  189. package/lib/components/editor/edit-panel/uml-editor/TaggedValueEditor.js +4 -1
  190. package/lib/components/editor/edit-panel/uml-editor/TaggedValueEditor.js.map +1 -1
  191. package/lib/components/editor/edit-panel/uml-editor/UMLEditor.d.ts +0 -1
  192. package/lib/components/editor/edit-panel/uml-editor/UMLEditor.d.ts.map +1 -1
  193. package/lib/components/editor/side-bar/CreateNewElementModal.d.ts +0 -1
  194. package/lib/components/editor/side-bar/CreateNewElementModal.d.ts.map +1 -1
  195. package/lib/components/editor/side-bar/CreateNewElementModal.js +7 -4
  196. package/lib/components/editor/side-bar/CreateNewElementModal.js.map +1 -1
  197. package/lib/components/editor/side-bar/Explorer.d.ts +0 -1
  198. package/lib/components/editor/side-bar/Explorer.d.ts.map +1 -1
  199. package/lib/components/editor/side-bar/Explorer.js +15 -8
  200. package/lib/components/editor/side-bar/Explorer.js.map +1 -1
  201. package/lib/components/editor/side-bar/LocalChanges.d.ts +0 -1
  202. package/lib/components/editor/side-bar/LocalChanges.d.ts.map +1 -1
  203. package/lib/components/editor/side-bar/ProjectOverview.d.ts +0 -1
  204. package/lib/components/editor/side-bar/ProjectOverview.d.ts.map +1 -1
  205. package/lib/components/editor/side-bar/SideBar.d.ts +0 -1
  206. package/lib/components/editor/side-bar/SideBar.d.ts.map +1 -1
  207. package/lib/components/editor/side-bar/WorkflowManager.d.ts +0 -1
  208. package/lib/components/editor/side-bar/WorkflowManager.d.ts.map +1 -1
  209. package/lib/components/editor/side-bar/WorkspaceReview.d.ts +0 -1
  210. package/lib/components/editor/side-bar/WorkspaceReview.d.ts.map +1 -1
  211. package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.d.ts +0 -1
  212. package/lib/components/editor/side-bar/WorkspaceSyncConflictResolver.d.ts.map +1 -1
  213. package/lib/components/editor/side-bar/WorkspaceUpdateConflictResolver.d.ts +0 -1
  214. package/lib/components/editor/side-bar/WorkspaceUpdateConflictResolver.d.ts.map +1 -1
  215. package/lib/components/editor/side-bar/WorkspaceUpdater.d.ts +0 -1
  216. package/lib/components/editor/side-bar/WorkspaceUpdater.d.ts.map +1 -1
  217. package/lib/components/editor/side-bar/testable/GlobalTestRunner.d.ts +0 -1
  218. package/lib/components/editor/side-bar/testable/GlobalTestRunner.d.ts.map +1 -1
  219. package/lib/components/editor/side-bar/testable/GlobalTestRunner.js +8 -2
  220. package/lib/components/editor/side-bar/testable/GlobalTestRunner.js.map +1 -1
  221. package/lib/components/project-viewer/ProjectViewer.d.ts.map +1 -1
  222. package/lib/components/project-viewer/ProjectViewer.js +5 -6
  223. package/lib/components/project-viewer/ProjectViewer.js.map +1 -1
  224. package/lib/components/shared/DiffView.d.ts +0 -1
  225. package/lib/components/shared/DiffView.d.ts.map +1 -1
  226. package/lib/components/shared/StudioLambdaEditor.d.ts +0 -1
  227. package/lib/components/shared/StudioLambdaEditor.d.ts.map +1 -1
  228. package/lib/components/workspace-review/WorkspaceReviewPanel.d.ts +0 -1
  229. package/lib/components/workspace-review/WorkspaceReviewPanel.d.ts.map +1 -1
  230. package/lib/components/workspace-review/WorkspaceReviewSideBar.d.ts +0 -1
  231. package/lib/components/workspace-review/WorkspaceReviewSideBar.d.ts.map +1 -1
  232. package/lib/components/workspace-setup/ProjectCreateModal.d.ts +0 -1
  233. package/lib/components/workspace-setup/ProjectCreateModal.d.ts.map +1 -1
  234. package/lib/index.css +2 -2
  235. package/lib/index.css.map +1 -1
  236. package/lib/index.d.ts +4 -3
  237. package/lib/index.d.ts.map +1 -1
  238. package/lib/index.js +4 -3
  239. package/lib/index.js.map +1 -1
  240. package/lib/package.json +9 -9
  241. package/lib/stores/DSLMapping_LegendStudioApplicationPlugin_Extension.d.ts +0 -18
  242. package/lib/stores/DSLMapping_LegendStudioApplicationPlugin_Extension.d.ts.map +1 -1
  243. package/lib/stores/DSLService_LegendStudioApplicationPlugin_Extension.d.ts +0 -10
  244. package/lib/stores/DSLService_LegendStudioApplicationPlugin_Extension.d.ts.map +1 -1
  245. package/lib/stores/EditorGraphState.js +1 -1
  246. package/lib/stores/EditorStore.d.ts +3 -9
  247. package/lib/stores/EditorStore.d.ts.map +1 -1
  248. package/lib/stores/EditorStore.js +6 -54
  249. package/lib/stores/EditorStore.js.map +1 -1
  250. package/lib/stores/EmbeddedQueryBuilderState.d.ts +40 -0
  251. package/lib/stores/EmbeddedQueryBuilderState.d.ts.map +1 -0
  252. package/lib/stores/EmbeddedQueryBuilderState.js +80 -0
  253. package/lib/stores/EmbeddedQueryBuilderState.js.map +1 -0
  254. package/lib/stores/LegendStudioApplicationNavigationContext.d.ts +1 -0
  255. package/lib/stores/LegendStudioApplicationNavigationContext.d.ts.map +1 -1
  256. package/lib/stores/LegendStudioApplicationNavigationContext.js +1 -0
  257. package/lib/stores/LegendStudioApplicationNavigationContext.js.map +1 -1
  258. package/lib/stores/LegendStudioApplicationPlugin.d.ts +7 -7
  259. package/lib/stores/LegendStudioApplicationPlugin.d.ts.map +1 -1
  260. package/lib/stores/LegendStudioCodeSnippets.d.ts +2 -0
  261. package/lib/stores/LegendStudioCodeSnippets.d.ts.map +1 -1
  262. package/lib/stores/LegendStudioCodeSnippets.js +28 -0
  263. package/lib/stores/LegendStudioCodeSnippets.js.map +1 -1
  264. package/lib/stores/StoreRelational_LegendStudioApplicationPlugin_Extension.d.ts +41 -6
  265. package/lib/stores/StoreRelational_LegendStudioApplicationPlugin_Extension.d.ts.map +1 -1
  266. package/lib/stores/editor/NewElementState.d.ts +1 -1
  267. package/lib/stores/editor/NewElementState.d.ts.map +1 -1
  268. package/lib/stores/editor/NewElementState.js +5 -3
  269. package/lib/stores/editor/NewElementState.js.map +1 -1
  270. package/lib/stores/editor-state/ModelImporterState.d.ts.map +1 -1
  271. package/lib/stores/editor-state/ModelImporterState.js +10 -6
  272. package/lib/stores/editor-state/ModelImporterState.js.map +1 -1
  273. package/lib/stores/editor-state/element-editor-state/connection/ConnectionEditorState.d.ts +9 -2
  274. package/lib/stores/editor-state/element-editor-state/connection/ConnectionEditorState.d.ts.map +1 -1
  275. package/lib/stores/editor-state/element-editor-state/connection/ConnectionEditorState.js +40 -10
  276. package/lib/stores/editor-state/element-editor-state/connection/ConnectionEditorState.js.map +1 -1
  277. package/lib/stores/editor-state/element-editor-state/connection/PostProcessorEditorState.d.ts +30 -0
  278. package/lib/stores/editor-state/element-editor-state/connection/PostProcessorEditorState.d.ts.map +1 -0
  279. package/lib/stores/editor-state/element-editor-state/connection/PostProcessorEditorState.js +49 -0
  280. package/lib/stores/editor-state/element-editor-state/connection/PostProcessorEditorState.js.map +1 -0
  281. package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionQueryBuilderState.d.ts +29 -0
  282. package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionQueryBuilderState.d.ts.map +1 -0
  283. package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionQueryBuilderState.js +42 -0
  284. package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionQueryBuilderState.js.map +1 -0
  285. package/lib/stores/editor-state/element-editor-state/service/ServiceExecutionState.js +1 -1
  286. package/lib/stores/editor-state/element-editor-state/service/ServiceExecutionState.js.map +1 -1
  287. package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestDataState.d.ts +2 -1
  288. package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestDataState.d.ts.map +1 -1
  289. package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestDataState.js +6 -4
  290. package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestDataState.js.map +1 -1
  291. package/lib/stores/graphModifier/StoreRelational_GraphModifierHelper.d.ts +10 -1
  292. package/lib/stores/graphModifier/StoreRelational_GraphModifierHelper.d.ts.map +1 -1
  293. package/lib/stores/graphModifier/StoreRelational_GraphModifierHelper.js +27 -1
  294. package/lib/stores/graphModifier/StoreRelational_GraphModifierHelper.js.map +1 -1
  295. package/lib/stores/shared/DnDUtil.js +1 -1
  296. package/lib/stores/shared/PackageTreeUtil.js +6 -6
  297. package/lib/stores/shared/PackageTreeUtil.js.map +1 -1
  298. package/lib/stores/sidebar-state/testable/GlobalTestRunnerState.d.ts +1 -3
  299. package/lib/stores/sidebar-state/testable/GlobalTestRunnerState.d.ts.map +1 -1
  300. package/lib/stores/sidebar-state/testable/GlobalTestRunnerState.js +1 -4
  301. package/lib/stores/sidebar-state/testable/GlobalTestRunnerState.js.map +1 -1
  302. package/package.json +17 -17
  303. package/src/application/LegendStudio.tsx +8 -2
  304. package/src/application/LegendStudioPluginManager.ts +2 -2
  305. package/src/components/DSLExternalFormat_LegendStudioApplicationPlugin.tsx +5 -5
  306. package/src/components/EditorComponentTestUtils.tsx +20 -35
  307. package/src/components/EmbeddedQueryBuilder.tsx +165 -0
  308. package/src/components/editor/Editor.tsx +77 -79
  309. package/src/components/editor/edit-panel/FunctionEditor.tsx +9 -2
  310. package/src/components/editor/edit-panel/GrammarTextEditor.tsx +24 -2
  311. package/src/components/editor/edit-panel/UnsupportedElementEditor.tsx +1 -1
  312. package/src/components/editor/edit-panel/connection-editor/ConnectionEditor.tsx +6 -2
  313. package/src/components/editor/edit-panel/connection-editor/DatabaseBuilder.tsx +1 -1
  314. package/src/{stores/editor-state/element-editor-state/mapping/relational → components/editor/edit-panel/connection-editor}/DatabaseEditorHelper.tsx +0 -0
  315. package/src/components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.tsx +371 -172
  316. package/src/components/editor/edit-panel/connection-editor/post-processor-editor/MapperPostProcessorEditor.tsx +279 -0
  317. package/src/components/editor/edit-panel/data-editor/EmbeddedDataEditor.tsx +2 -1
  318. package/src/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.tsx +5 -1
  319. package/src/components/editor/edit-panel/mapping-editor/InstanceSetImplementationEditor.tsx +2 -2
  320. package/src/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.tsx +2 -9
  321. package/src/components/editor/edit-panel/mapping-editor/MappingExecutionBuilder.tsx +88 -15
  322. package/src/components/editor/edit-panel/mapping-editor/MappingExecutionQueryBuilder.tsx +93 -0
  323. package/src/components/editor/edit-panel/mapping-editor/MappingTestEditor.tsx +81 -16
  324. package/src/components/editor/edit-panel/mapping-editor/NewMappingElementModal.tsx +4 -3
  325. package/src/components/editor/edit-panel/mapping-editor/relational/TableOrViewSourceTree.tsx +1 -1
  326. package/src/components/editor/edit-panel/service-editor/ServiceExecutionEditor.tsx +6 -2
  327. package/src/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.tsx +115 -20
  328. package/src/components/editor/edit-panel/service-editor/testable/ServiceTestDataEditor.tsx +12 -5
  329. package/src/components/editor/edit-panel/uml-editor/AssociationEditor.tsx +3 -1
  330. package/src/components/editor/edit-panel/uml-editor/ClassEditor.tsx +21 -12
  331. package/src/components/editor/edit-panel/uml-editor/ClassQueryBuilder.tsx +159 -0
  332. package/src/components/editor/edit-panel/uml-editor/StereotypeSelector.tsx +7 -4
  333. package/src/components/editor/edit-panel/uml-editor/TaggedValueEditor.tsx +7 -4
  334. package/src/components/editor/side-bar/CreateNewElementModal.tsx +9 -3
  335. package/src/components/editor/side-bar/Explorer.tsx +20 -10
  336. package/src/components/editor/side-bar/testable/GlobalTestRunner.tsx +13 -1
  337. package/src/components/project-viewer/ProjectViewer.tsx +36 -38
  338. package/src/index.ts +7 -3
  339. package/src/stores/DSLMapping_LegendStudioApplicationPlugin_Extension.ts +0 -27
  340. package/src/stores/DSLService_LegendStudioApplicationPlugin_Extension.ts +0 -14
  341. package/src/stores/EditorGraphState.ts +1 -1
  342. package/src/stores/EditorStore.ts +5 -81
  343. package/src/stores/EmbeddedQueryBuilderState.ts +105 -0
  344. package/src/stores/LegendStudioApplicationNavigationContext.ts +1 -0
  345. package/src/stores/LegendStudioApplicationPlugin.ts +7 -7
  346. package/src/stores/LegendStudioCodeSnippets.ts +34 -0
  347. package/src/stores/StoreRelational_LegendStudioApplicationPlugin_Extension.ts +74 -5
  348. package/src/stores/editor/NewElementState.ts +8 -7
  349. package/src/stores/editor-state/ModelImporterState.ts +15 -11
  350. package/src/stores/editor-state/element-editor-state/connection/ConnectionEditorState.ts +55 -9
  351. package/src/stores/editor-state/element-editor-state/connection/PostProcessorEditorState.ts +73 -0
  352. package/src/stores/editor-state/element-editor-state/mapping/MappingExecutionQueryBuilderState.ts +58 -0
  353. package/src/stores/editor-state/element-editor-state/service/ServiceExecutionState.ts +1 -1
  354. package/src/stores/editor-state/element-editor-state/service/testable/ServiceTestDataState.ts +14 -4
  355. package/src/stores/graphModifier/StoreRelational_GraphModifierHelper.ts +64 -0
  356. package/src/stores/shared/DnDUtil.ts +1 -1
  357. package/src/stores/shared/PackageTreeUtil.ts +6 -6
  358. package/src/stores/sidebar-state/testable/GlobalTestRunnerState.ts +2 -9
  359. package/tsconfig.json +10 -3
  360. package/tsconfig.package.json +38 -0
  361. package/lib/stores/editor-state/element-editor-state/mapping/relational/DatabaseEditorHelper.d.ts.map +0 -1
  362. package/lib/stores/editor-state/element-editor-state/mapping/relational/DatabaseEditorHelper.js.map +0 -1
@@ -38,7 +38,10 @@ import {
38
38
  annotatedElement_swapStereotypes,
39
39
  stereotypeReference_setValue,
40
40
  } from '../../../../stores/graphModifier/DomainGraphModifierHelper.js';
41
- import type { PackageableElementOption } from '@finos/legend-application';
41
+ import {
42
+ buildElementOption,
43
+ type PackageableElementOption,
44
+ } from '@finos/legend-application';
42
45
  import { useDrop, useDrag } from 'react-dnd';
43
46
 
44
47
  interface StereotypeOption {
@@ -81,9 +84,9 @@ export const StereotypeSelector = observer(
81
84
  const editorStore = useEditorStore();
82
85
 
83
86
  // Profile
84
- const profileOptions = editorStore.profileOptions.filter(
85
- (p) => p.value.p_stereotypes.length,
86
- );
87
+ const profileOptions = editorStore.graphManagerState.usableProfiles
88
+ .map(buildElementOption)
89
+ .filter((p) => p.value.p_stereotypes.length);
87
90
  const filterOption = createFilter({
88
91
  ignoreCase: true,
89
92
  ignoreAccents: false,
@@ -42,7 +42,10 @@ import {
42
42
  taggedValue_setTag,
43
43
  annotatedElement_swapTaggedValues,
44
44
  } from '../../../../stores/graphModifier/DomainGraphModifierHelper.js';
45
- import type { PackageableElementOption } from '@finos/legend-application';
45
+ import {
46
+ buildElementOption,
47
+ type PackageableElementOption,
48
+ } from '@finos/legend-application';
46
49
  import { useDrop, useDrag } from 'react-dnd';
47
50
 
48
51
  interface TagOption {
@@ -88,9 +91,9 @@ export const TaggedValueEditor = observer(
88
91
  HTMLTextAreaElement | HTMLInputElement
89
92
  > = (event) => taggedValue_setValue(taggedValue, event.target.value);
90
93
  // Profile
91
- const profileOptions = editorStore.profileOptions.filter(
92
- (p) => p.value.p_tags.length,
93
- );
94
+ const profileOptions = editorStore.graphManagerState.usableProfiles
95
+ .map(buildElementOption)
96
+ .filter((p) => p.value.p_tags.length);
94
97
  const profileFilterOption = createFilter({
95
98
  ignoreCase: true,
96
99
  ignoreAccents: false,
@@ -41,6 +41,7 @@ import {
41
41
  import type { FileGenerationTypeOption } from '../../../stores/editor-state/GraphGenerationState.js';
42
42
  import { flowResult } from 'mobx';
43
43
  import {
44
+ buildElementOption,
44
45
  getPackageableElementOptionFormatter,
45
46
  useApplicationStore,
46
47
  type PackageableElementOption,
@@ -164,7 +165,8 @@ const NewRuntimeDriverEditor = observer(() => {
164
165
  );
165
166
  // mapping
166
167
  const mapping = newRuntimeDriver.mapping;
167
- const mappingOptions = editorStore.mappingOptions;
168
+ const mappingOptions =
169
+ editorStore.graphManagerState.usableMappings.map(buildElementOption);
168
170
  const selectedMappingOption = { label: mapping?.path ?? '', value: mapping };
169
171
  const onMappingSelectionChange = (
170
172
  val: PackageableElementOption<Mapping>,
@@ -216,7 +218,10 @@ const NewPureModelConnectionDriverEditor = observer(
216
218
  }): void => newConnectionDriver.setStore(val.value);
217
219
  // class
218
220
  const _class = newConnectionValueDriver.class;
219
- const classOptions = editorStore.classOptions.slice().sort(compareLabelFn);
221
+ const classOptions = editorStore.graphManagerState.usableClasses
222
+ .map(buildElementOption)
223
+ .slice()
224
+ .sort(compareLabelFn);
220
225
  const selectedClassOption = _class
221
226
  ? { label: _class.path, value: _class }
222
227
  : null;
@@ -321,7 +326,8 @@ const NewServiceDriverEditor = observer(() => {
321
326
  editorStore.newElementState.getNewElementDriver(NewServiceDriver);
322
327
  // mapping
323
328
  const currentMappingOption = newServiceDriver.mappingOption;
324
- const mappingOptions = editorStore.mappingOptions;
329
+ const mappingOptions =
330
+ editorStore.graphManagerState.usableMappings.map(buildElementOption);
325
331
  const onMappingChange = (
326
332
  val: PackageableElementOption<Mapping> | null,
327
333
  ): void => {
@@ -75,10 +75,12 @@ import {
75
75
  isSystemElement,
76
76
  isDependencyElement,
77
77
  isElementReadOnly,
78
+ Class,
78
79
  } from '@finos/legend-graph';
79
80
  import { useApplicationStore } from '@finos/legend-application';
80
81
  import { PACKAGEABLE_ELEMENT_TYPE } from '../../../stores/shared/ModelUtil.js';
81
82
  import { useLegendStudioApplicationStore } from '../../LegendStudioBaseStoreProvider.js';
83
+ import { queryClass } from '../edit-panel/uml-editor/ClassQueryBuilder.js';
82
84
 
83
85
  const ElementRenamer = observer(() => {
84
86
  const editorStore = useEditorStore();
@@ -198,6 +200,23 @@ const ExplorerContextMenu = observer(
198
200
  ? node.packageableElement
199
201
  : undefined
200
202
  : editorStore.graphManagerState.graph.root;
203
+ const elementTypes = ([PACKAGEABLE_ELEMENT_TYPE.PACKAGE] as string[])
204
+ .concat(editorStore.getSupportedElementTypes())
205
+ .filter(
206
+ // NOTE: we can only create package in root
207
+ (type) =>
208
+ _package !== editorStore.graphManagerState.graph.root ||
209
+ type === PACKAGEABLE_ELEMENT_TYPE.PACKAGE,
210
+ );
211
+
212
+ // actions
213
+ const buildQuery = editorStore.applicationStore.guardUnhandledError(
214
+ async () => {
215
+ if (node?.packageableElement instanceof Class) {
216
+ await queryClass(node.packageableElement, editorStore);
217
+ }
218
+ },
219
+ );
201
220
  const removeElement = (): void => {
202
221
  if (node) {
203
222
  flowResult(editorStore.deleteElement(node.packageableElement)).catch(
@@ -237,21 +256,11 @@ const ExplorerContextMenu = observer(
237
256
  .catch(applicationStore.alertUnhandledError);
238
257
  }
239
258
  };
240
-
241
259
  const createNewElement =
242
260
  (type: string): (() => void) =>
243
261
  (): void =>
244
262
  editorStore.newElementState.openModal(type, _package);
245
263
 
246
- const elementTypes = ([PACKAGEABLE_ELEMENT_TYPE.PACKAGE] as string[])
247
- .concat(editorStore.getSupportedElementTypes())
248
- .filter(
249
- // NOTE: we can only create package in root
250
- (type) =>
251
- _package !== editorStore.graphManagerState.graph.root ||
252
- type === PACKAGEABLE_ELEMENT_TYPE.PACKAGE,
253
- );
254
-
255
264
  if (_package && !isReadOnly) {
256
265
  return (
257
266
  <MenuContent data-testid={LEGEND_STUDIO_TEST_ID.EXPLORER_CONTEXT_MENU}>
@@ -281,6 +290,7 @@ const ExplorerContextMenu = observer(
281
290
 
282
291
  return (
283
292
  <MenuContent data-testid={LEGEND_STUDIO_TEST_ID.EXPLORER_CONTEXT_MENU}>
293
+ <MenuContentItem onClick={buildQuery}>Query...</MenuContentItem>
284
294
  {extraExplorerContextMenuItems}
285
295
  {!isReadOnly && node && (
286
296
  <>
@@ -38,6 +38,7 @@ import {
38
38
  import {
39
39
  AssertFail,
40
40
  EqualToJsonAssertFail,
41
+ PackageableElement,
41
42
  TestError,
42
43
  } from '@finos/legend-graph';
43
44
  import { type GeneratorFn, isNonNullable } from '@finos/legend-shared';
@@ -58,6 +59,7 @@ import {
58
59
  } from '../../../../stores/sidebar-state/testable/GlobalTestRunnerState.js';
59
60
  import { LEGEND_STUDIO_TEST_ID } from '../../../LegendStudioTestID.js';
60
61
  import { TextDiffView } from '../../../shared/DiffView.js';
62
+ import { getElementTypeIcon } from '../../../shared/ElementIconUtils.js';
61
63
  import { StudioTextInputEditor } from '../../../shared/StudioTextInputEditor.js';
62
64
  import { useEditorStore } from '../../EditorStoreProvider.js';
63
65
 
@@ -249,6 +251,7 @@ const TestableTreeNodeContainer: React.FC<
249
251
  > = (props) => {
250
252
  const { node, level, stepPaddingInRem, onNodeSelect } = props;
251
253
  const { treeData, testableState, globalTestRunnerState } = props.innerProps;
254
+ const editorStore = useEditorStore();
252
255
  const results = testableState.results;
253
256
  const expandIcon =
254
257
  node instanceof AssertionTestTreeNodeData ? (
@@ -259,7 +262,16 @@ const TestableTreeNodeContainer: React.FC<
259
262
  <ChevronRightIcon />
260
263
  );
261
264
  const nodeIcon =
262
- node instanceof TestableTreeNodeData ? node.testableMetadata.icon : null;
265
+ node instanceof TestableTreeNodeData
266
+ ? node.testableMetadata.testable instanceof PackageableElement
267
+ ? getElementTypeIcon(
268
+ editorStore,
269
+ editorStore.graphState.getPackageableElementType(
270
+ node.testableMetadata.testable,
271
+ ),
272
+ )
273
+ : null
274
+ : null;
263
275
  const resultIcon = getTestableResultIcon(
264
276
  getNodeTestableResult(
265
277
  node,
@@ -16,8 +16,6 @@
16
16
 
17
17
  import { useEffect, Fragment } from 'react';
18
18
  import { observer } from 'mobx-react-lite';
19
- import { DndProvider } from 'react-dnd';
20
- import { HTML5Backend } from 'react-dnd-html5-backend';
21
19
  import { useResizeDetector } from 'react-resize-detector';
22
20
  import { EditPanel } from '../editor/edit-panel/EditPanel.js';
23
21
  import { GrammarTextEditor } from '../editor/edit-panel/GrammarTextEditor.js';
@@ -68,6 +66,7 @@ import { Explorer } from '../editor/side-bar/Explorer.js';
68
66
  import { ProjectOverview } from '../editor/side-bar/ProjectOverview.js';
69
67
  import { WorkflowManager } from '../editor/side-bar/WorkflowManager.js';
70
68
  import { useLegendStudioApplicationStore } from '../LegendStudioBaseStoreProvider.js';
69
+ import { EmbeddedQueryBuilder } from '../EmbeddedQueryBuilder.js';
71
70
 
72
71
  const ProjectViewerStatusBar = observer(() => {
73
72
  const params = useParams<ViewerPathParams>();
@@ -313,45 +312,44 @@ export const ProjectViewer = withEditorStore(
313
312
  }, [applicationStore, viewerStore, params]);
314
313
 
315
314
  return (
316
- <DndProvider backend={HTML5Backend}>
317
- <div className="app__page">
318
- <div className="editor viewer">
319
- <GlobalHotKeys keyMap={keyMap} handlers={handlers}>
320
- <div className="editor__body">
321
- <ProjectViewerActivityBar />
322
- <div ref={ref} className="editor__content-container">
323
- <div className="editor__content">
324
- <ResizablePanelGroup orientation="vertical">
325
- <ResizablePanel
326
- {...getControlledResizablePanelProps(
327
- editorStore.sideBarDisplayState.size === 0,
328
- {
329
- onStopResize: resizeSideBar,
330
- size: editorStore.sideBarDisplayState.size,
331
- },
332
- )}
333
- direction={1}
334
- >
335
- <ProjectViewerSideBar />
336
- </ResizablePanel>
337
- <ResizablePanelSplitter />
338
- <ResizablePanel minSize={300}>
339
- {editorStore.isInFormMode && <EditPanel />}
340
- {editorStore.isInGrammarTextMode && (
341
- <GrammarTextEditor />
342
- )}
343
- </ResizablePanel>
344
- </ResizablePanelGroup>
345
- </div>
315
+ <div className="app__page">
316
+ <div className="editor viewer">
317
+ <GlobalHotKeys keyMap={keyMap} handlers={handlers}>
318
+ <div className="editor__body">
319
+ <ProjectViewerActivityBar />
320
+ <div ref={ref} className="editor__content-container">
321
+ <div className="editor__content">
322
+ <ResizablePanelGroup orientation="vertical">
323
+ <ResizablePanel
324
+ {...getControlledResizablePanelProps(
325
+ editorStore.sideBarDisplayState.size === 0,
326
+ {
327
+ onStopResize: resizeSideBar,
328
+ size: editorStore.sideBarDisplayState.size,
329
+ },
330
+ )}
331
+ direction={1}
332
+ >
333
+ <ProjectViewerSideBar />
334
+ </ResizablePanel>
335
+ <ResizablePanelSplitter />
336
+ <ResizablePanel minSize={300}>
337
+ {editorStore.isInFormMode && <EditPanel />}
338
+ {editorStore.isInGrammarTextMode && (
339
+ <GrammarTextEditor />
340
+ )}
341
+ </ResizablePanel>
342
+ </ResizablePanelGroup>
346
343
  </div>
347
344
  </div>
348
- <ProjectViewerStatusBar />
349
- {extraEditorExtensionComponents}
350
- {allowOpeningElement && <ProjectSearchCommand />}
351
- </GlobalHotKeys>
352
- </div>
345
+ </div>
346
+ {allowOpeningElement && <ProjectSearchCommand />}
347
+ <ProjectViewerStatusBar />
348
+ <EmbeddedQueryBuilder />
349
+ {extraEditorExtensionComponents}
350
+ </GlobalHotKeys>
353
351
  </div>
354
- </DndProvider>
352
+ </div>
355
353
  );
356
354
  }),
357
355
  ),
package/src/index.ts CHANGED
@@ -21,9 +21,9 @@ export * from './application/LegendStudio.js';
21
21
  export * from './application/LegendStudioApplicationConfig.js';
22
22
  export * from './application/LegendStudioPluginManager.js';
23
23
  export * from './stores/LegendStudioAppEvent.js';
24
+ export { queryClass } from './components/editor/edit-panel/uml-editor/ClassQueryBuilder.js';
24
25
 
25
26
  // stores
26
- export { FormModeCompilationOutcome } from './stores/EditorGraphState.js';
27
27
  export * from './stores/LegendStudioApplicationPlugin.js';
28
28
  export * from './stores/EditorStore.js';
29
29
  export * from './stores/EditorConfig.js';
@@ -68,9 +68,13 @@ export {
68
68
  export * from './components/LegendStudioTestID.js';
69
69
  export * from './stores/EditorStoreTestUtils.js';
70
70
 
71
+ export { PostProcessorEditorState } from './stores/editor-state/element-editor-state/connection/PostProcessorEditorState.js';
71
72
  export { MappingExecutionState } from './stores/editor-state/element-editor-state/mapping/MappingExecutionState.js';
72
73
  export { MappingTestState } from './stores/editor-state/element-editor-state/mapping/MappingTestState.js';
73
- export { ConnectionValueState } from './stores/editor-state/element-editor-state/connection/ConnectionEditorState.js';
74
+ export {
75
+ ConnectionValueState,
76
+ RelationalDatabaseConnectionValueState,
77
+ } from './stores/editor-state/element-editor-state/connection/ConnectionEditorState.js';
74
78
  export * from './stores/editor-state/element-editor-state/mapping/MappingEditorState.js';
75
79
  export { MappingElementState } from './stores/editor-state/element-editor-state/mapping/MappingElementState.js';
76
80
  export { UnsupportedInstanceSetImplementationState } from './stores/editor-state/element-editor-state/mapping/UnsupportedInstanceSetImplementationState.js';
@@ -89,7 +93,7 @@ export { WorkspaceSetupStore } from './stores/workspace-setup/WorkspaceSetupStor
89
93
  */
90
94
 
91
95
  export {
92
- ConnectionEditor_StringEditor,
96
+ ConnectionEditor_TextEditor,
93
97
  ConnectionEditor_BooleanEditor,
94
98
  ConnectionEditor_ArrayEditor,
95
99
  } from './components/editor/edit-panel/connection-editor/RelationalDatabaseConnectionEditor.js';
@@ -23,8 +23,6 @@ import type {
23
23
  SetImplementation,
24
24
  InstanceSetImplementation,
25
25
  } from '@finos/legend-graph';
26
- import type { MappingTestState } from './editor-state/element-editor-state/mapping/MappingTestState.js';
27
- import type { MappingExecutionState } from './editor-state/element-editor-state/mapping/MappingExecutionState.js';
28
26
  import type { NewConnectionValueDriver } from './editor/NewElementState.js';
29
27
  import type {
30
28
  MappingElement,
@@ -95,21 +93,6 @@ export type NewConnectionDriverCreator = (
95
93
  store: Store,
96
94
  ) => NewConnectionValueDriver<Connection> | undefined;
97
95
 
98
- export type MappingExecutionQueryEditorActionConfiguration = {
99
- key: string;
100
- renderer: (
101
- executionState: MappingExecutionState,
102
- ) => React.ReactNode | undefined;
103
- };
104
-
105
- export type MappingTestQueryEditorActionConfiguration = {
106
- key: string;
107
- renderer: (
108
- testState: MappingTestState,
109
- isReadOnly: boolean,
110
- ) => React.ReactNode | undefined;
111
- };
112
-
113
96
  /**
114
97
  * @returns a boolean indicating whether the update has ocurred or not
115
98
  */
@@ -192,16 +175,6 @@ export interface DSLMapping_LegendStudioApplicationPlugin_Extension
192
175
  */
193
176
  getExtraNewConnectionDriverCreators?(): NewConnectionDriverCreator[];
194
177
 
195
- /**
196
- * Get the list of actions for mapping execution query editor.
197
- */
198
- getExtraMappingExecutionQueryEditorActionConfigurations?(): MappingExecutionQueryEditorActionConfiguration[];
199
-
200
- /**
201
- * Get the list of actions for mapping test query editor.
202
- */
203
- getExtraMappingTestQueryEditorActionConfigurations?(): MappingTestQueryEditorActionConfiguration[];
204
-
205
178
  /**
206
179
  * Get the list of instance set implementation source updaters.
207
180
  */
@@ -16,15 +16,6 @@
16
16
 
17
17
  import type { DSL_LegendStudioApplicationPlugin_Extension } from './LegendStudioApplicationPlugin.js';
18
18
  import type { Connection, Runtime } from '@finos/legend-graph';
19
- import type { ServicePureExecutionState } from './editor-state/element-editor-state/service/ServiceExecutionState.js';
20
-
21
- export type ServiceQueryEditorActionConfiguration = {
22
- key: string;
23
- renderer: (
24
- executionState: ServicePureExecutionState,
25
- isReadOnly: boolean,
26
- ) => React.ReactNode | undefined;
27
- };
28
19
 
29
20
  export type ServiceTestRuntimeConnectionBuilder = (
30
21
  sourceConnection: Connection,
@@ -34,11 +25,6 @@ export type ServiceTestRuntimeConnectionBuilder = (
34
25
 
35
26
  export interface DSLService_LegendStudioApplicationPlugin_Extension
36
27
  extends DSL_LegendStudioApplicationPlugin_Extension {
37
- /**
38
- * Get the list of actions for service execution query editor.
39
- */
40
- getExtraServiceQueryEditorActionConfigurations?(): ServiceQueryEditorActionConfiguration[];
41
-
42
28
  /**
43
29
  * Get the list of service test runtime connection builder for a provided connection and test data.
44
30
  */
@@ -1208,7 +1208,7 @@ export class EditorGraphState {
1208
1208
  (plugin) =>
1209
1209
  (
1210
1210
  plugin as DSL_LegendStudioApplicationPlugin_Extension
1211
- ).getExtraElementTypeGetters?.() ?? [],
1211
+ ).getExtraElementClassifiers?.() ?? [],
1212
1212
  );
1213
1213
  for (const labelGetter of extraElementTypeLabelGetters) {
1214
1214
  const label = labelGetter(element);
@@ -95,7 +95,6 @@ import {
95
95
  } from '@finos/legend-server-sdlc';
96
96
  import {
97
97
  type PackageableElement,
98
- type Type,
99
98
  type Store,
100
99
  type GraphManagerState,
101
100
  GRAPH_MANAGER_EVENT,
@@ -114,7 +113,6 @@ import {
114
113
  PackageableConnection,
115
114
  FileGenerationSpecification,
116
115
  GenerationSpecification,
117
- PRIMITIVE_TYPE,
118
116
  Package,
119
117
  DataElement,
120
118
  isElementReadOnly,
@@ -144,6 +142,7 @@ import {
144
142
  import { PACKAGEABLE_ELEMENT_TYPE } from './shared/ModelUtil.js';
145
143
  import { GlobalTestRunnerState } from './sidebar-state/testable/GlobalTestRunnerState.js';
146
144
  import type { LegendStudioApplicationStore } from './LegendStudioBaseStore.js';
145
+ import { EmbeddedQueryBuilderState } from './EmbeddedQueryBuilderState.js';
147
146
 
148
147
  export abstract class EditorExtensionState {
149
148
  /**
@@ -196,6 +195,7 @@ export class EditorStore {
196
195
  localChangesState: LocalChangesState;
197
196
  conflictResolutionState: WorkspaceUpdateConflictResolutionState;
198
197
  devToolState: DevToolState;
198
+ embeddedQueryBuilderState: EmbeddedQueryBuilderState;
199
199
 
200
200
  private _isDisposed = false;
201
201
  initState = ActionState.create();
@@ -291,6 +291,7 @@ export class EditorStore {
291
291
  this.graphManagerState = graphManagerState;
292
292
  this.changeDetectionState = new ChangeDetectionState(this, this.graphState);
293
293
  this.devToolState = new DevToolState(this);
294
+ this.embeddedQueryBuilderState = new EmbeddedQueryBuilderState(this);
294
295
  // side bar panels
295
296
  this.explorerTreeState = new ExplorerTreeState(this);
296
297
  this.projectOverviewState = new ProjectOverviewState(this, this.sdlcState);
@@ -1344,89 +1345,12 @@ export class EditorStore {
1344
1345
  }
1345
1346
  }
1346
1347
 
1347
- get enumerationOptions(): PackageableElementOption<Enumeration>[] {
1348
- return this.graphManagerState.graph.ownEnumerations
1349
- .concat(this.graphManagerState.graph.dependencyManager.enumerations)
1350
- .map(buildElementOption);
1351
- }
1352
-
1353
- get classOptions(): PackageableElementOption<Class>[] {
1354
- return this.graphManagerState.graph.ownClasses
1355
- .concat(
1356
- this.graphManagerState.collectExposedSystemElements(
1357
- this.graphManagerState.graph.systemModel.ownClasses,
1358
- ),
1359
- )
1360
- .concat(this.graphManagerState.graph.dependencyManager.classes)
1361
- .map(buildElementOption);
1362
- }
1363
-
1364
- get associationOptions(): PackageableElementOption<Association>[] {
1365
- return this.graphManagerState.graph.ownAssociations
1366
- .concat(
1367
- this.graphManagerState.collectExposedSystemElements(
1368
- this.graphManagerState.graph.systemModel.ownAssociations,
1369
- ),
1370
- )
1371
- .concat(this.graphManagerState.graph.dependencyManager.associations)
1372
- .map(buildElementOption);
1373
- }
1374
-
1375
- get profileOptions(): PackageableElementOption<Profile>[] {
1376
- return this.graphManagerState.graph.ownProfiles
1377
- .concat(
1378
- this.graphManagerState.collectExposedSystemElements(
1379
- this.graphManagerState.graph.systemModel.ownProfiles,
1380
- ),
1381
- )
1382
- .concat(this.graphManagerState.graph.dependencyManager.profiles)
1383
- .map(buildElementOption);
1384
- }
1385
-
1386
- get classPropertyGenericTypeOptions(): PackageableElementOption<Type>[] {
1387
- return this.graphManagerState.graph.primitiveTypes
1388
- .filter((p) => p.path !== PRIMITIVE_TYPE.LATESTDATE)
1389
- .map(buildElementOption)
1390
- .concat(
1391
- this.graphManagerState.graph.ownTypes
1392
- .concat(
1393
- this.graphManagerState.collectExposedSystemElements(
1394
- this.graphManagerState.graph.systemModel.ownTypes,
1395
- ),
1396
- )
1397
- .concat(this.graphManagerState.graph.dependencyManager.types)
1398
- .map(buildElementOption),
1399
- );
1400
- }
1401
-
1402
- get mappingOptions(): PackageableElementOption<Mapping>[] {
1403
- return this.graphManagerState.graph.ownMappings
1404
- .concat(this.graphManagerState.graph.dependencyManager.mappings)
1405
- .map(buildElementOption);
1406
- }
1407
-
1408
- get runtimeOptions(): PackageableElementOption<PackageableRuntime>[] {
1409
- return this.graphManagerState.graph.ownRuntimes
1410
- .concat(this.graphManagerState.graph.dependencyManager.runtimes)
1411
- .map(buildElementOption);
1412
- }
1413
-
1414
- get serviceOptions(): PackageableElementOption<Service>[] {
1415
- return this.graphManagerState.graph.ownServices
1416
- .concat(this.graphManagerState.graph.dependencyManager.services)
1417
- .map(buildElementOption);
1418
- }
1419
-
1420
1348
  get storeOptions(): PackageableElementOption<Store>[] {
1421
- return this.graphManagerState.graph.ownStores
1422
- .concat(this.graphManagerState.graph.dependencyManager.stores)
1423
- .map(buildElementOption);
1349
+ return this.graphManagerState.usableStores.map(buildElementOption);
1424
1350
  }
1425
1351
 
1426
1352
  get dataOptions(): PackageableElementOption<DataElement>[] {
1427
- return this.graphManagerState.graph.ownDataElements
1428
- .concat(this.graphManagerState.graph.dependencyManager.dataElements)
1429
- .map(buildElementOption);
1353
+ return this.graphManagerState.usableDataElements.map(buildElementOption);
1430
1354
  }
1431
1355
 
1432
1356
  getSupportedElementTypes(): string[] {
@@ -0,0 +1,105 @@
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 type { QueryBuilderState } from '@finos/legend-query-builder';
18
+ import type { GeneratorFn } from '@finos/legend-shared';
19
+ import { flow, flowResult, makeObservable, observable } from 'mobx';
20
+ import { FormModeCompilationOutcome } from './EditorGraphState.js';
21
+ import type { EditorStore } from './EditorStore.js';
22
+
23
+ type EmbeddedQueryBuilderActionConfiguration = {
24
+ key: string;
25
+ renderer: (queryBuilderState: QueryBuilderState) => React.ReactNode;
26
+ };
27
+
28
+ type EmbeddedQueryBuilderConfiguration = {
29
+ setupQueryBuilderState: () => QueryBuilderState;
30
+ disableCompile?: boolean | undefined;
31
+ actionConfigs: EmbeddedQueryBuilderActionConfiguration[];
32
+ };
33
+
34
+ export class EmbeddedQueryBuilderState {
35
+ editorStore: EditorStore;
36
+ queryBuilderState?: QueryBuilderState | undefined;
37
+ actionConfigs: EmbeddedQueryBuilderActionConfiguration[] = [];
38
+
39
+ constructor(editorStore: EditorStore) {
40
+ makeObservable(this, {
41
+ queryBuilderState: observable,
42
+ actionConfigs: observable,
43
+ setEmbeddedQueryBuilderConfiguration: flow,
44
+ });
45
+
46
+ this.editorStore = editorStore;
47
+ }
48
+
49
+ /**
50
+ * When opening query builder, we ensure the graph compiles successfully
51
+ */
52
+ *setEmbeddedQueryBuilderConfiguration(
53
+ config: EmbeddedQueryBuilderConfiguration | undefined,
54
+ ): GeneratorFn<void> {
55
+ if (config) {
56
+ if (!this.editorStore.isInFormMode) {
57
+ return;
58
+ }
59
+ if (!config.disableCompile) {
60
+ this.editorStore.setBlockingAlert({
61
+ message: 'Compiling graph before building query...',
62
+ showLoading: true,
63
+ });
64
+ const compilationOutcome = (yield flowResult(
65
+ this.editorStore.graphState.globalCompileInFormMode({
66
+ // we don't want to notify about compilation success since this is just a simple check
67
+ // in order to be able to open query builder
68
+ disableNotificationOnSuccess: true,
69
+ }),
70
+ )) as FormModeCompilationOutcome;
71
+ switch (compilationOutcome) {
72
+ case FormModeCompilationOutcome.SKIPPED: {
73
+ this.editorStore.setBlockingAlert(undefined);
74
+ this.editorStore.applicationStore.notifyWarning(
75
+ `Can't open query builder: Can't compile at this time, please try again later`,
76
+ );
77
+ return;
78
+ }
79
+ case FormModeCompilationOutcome.SUCCEEDED: {
80
+ this.editorStore.setBlockingAlert(undefined);
81
+ break;
82
+ }
83
+ default: {
84
+ this.editorStore.applicationStore.notifyWarning(
85
+ `Can't open query builder: Compilation failed! Please fix the compilation issue and try again`,
86
+ );
87
+ this.editorStore.setBlockingAlert(undefined);
88
+ return;
89
+ }
90
+ }
91
+ }
92
+ if (!this.editorStore.graphState.hasCompilationError) {
93
+ this.queryBuilderState = config.setupQueryBuilderState();
94
+ this.actionConfigs = config.actionConfigs;
95
+ }
96
+ this.editorStore.setBlockGlobalHotkeys(true);
97
+ this.editorStore.setHotkeys([]);
98
+ } else {
99
+ this.queryBuilderState = undefined;
100
+ this.actionConfigs = [];
101
+ this.editorStore.setBlockGlobalHotkeys(false);
102
+ this.editorStore.resetHotkeys();
103
+ }
104
+ }
105
+ }
@@ -24,6 +24,7 @@ export enum LEGEND_STUDIO_APPLICATION_NAVIGATION_CONTEXT_KEY {
24
24
 
25
25
  MODEL_LOADER = 'studio.editor.model-loader',
26
26
  TEXT_MODE_EDITOR = 'studio.editor.text-mode-editor',
27
+ EMBEDDED_QUERY_BUILDER = 'studio.editor.embedded-query-builder',
27
28
 
28
29
  CLASS_EDITOR = 'studio.editor.class-editor',
29
30
  CLASS_EDITOR_PROPERTIES = 'studio.editor.class-editor.properties',