@finos/legend-application-studio 22.2.0 → 22.3.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 (214) hide show
  1. package/lib/components/editor/StatusBar.js +1 -1
  2. package/lib/components/editor/StatusBar.js.map +1 -1
  3. package/lib/components/editor/command-center/ProjectSearchCommand.d.ts.map +1 -1
  4. package/lib/components/editor/command-center/ProjectSearchCommand.js +1 -0
  5. package/lib/components/editor/command-center/ProjectSearchCommand.js.map +1 -1
  6. package/lib/components/editor/edit-panel/EditPanel.d.ts.map +1 -1
  7. package/lib/components/editor/edit-panel/EditPanel.js +24 -11
  8. package/lib/components/editor/edit-panel/EditPanel.js.map +1 -1
  9. package/lib/components/editor/edit-panel/GenerationSpecificationEditor.d.ts.map +1 -1
  10. package/lib/components/editor/edit-panel/GenerationSpecificationEditor.js +2 -1
  11. package/lib/components/editor/edit-panel/GenerationSpecificationEditor.js.map +1 -1
  12. package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.d.ts.map +1 -1
  13. package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.js +1 -0
  14. package/lib/components/editor/edit-panel/connection-editor/ConnectionEditor.js.map +1 -1
  15. package/lib/components/editor/edit-panel/element-generation-editor/ElementGenerationEditor.d.ts.map +1 -1
  16. package/lib/components/editor/edit-panel/element-generation-editor/ElementGenerationEditor.js +4 -3
  17. package/lib/components/editor/edit-panel/element-generation-editor/ElementGenerationEditor.js.map +1 -1
  18. package/lib/components/editor/edit-panel/element-generation-editor/ElementXTGenerationEditor.d.ts +32 -0
  19. package/lib/components/editor/edit-panel/element-generation-editor/ElementXTGenerationEditor.d.ts.map +1 -0
  20. package/lib/components/editor/edit-panel/element-generation-editor/ElementXTGenerationEditor.js +66 -0
  21. package/lib/components/editor/edit-panel/element-generation-editor/ElementXTGenerationEditor.js.map +1 -0
  22. package/lib/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.d.ts +0 -23
  23. package/lib/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.d.ts.map +1 -1
  24. package/lib/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.js +6 -58
  25. package/lib/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.js.map +1 -1
  26. package/lib/components/editor/edit-panel/element-generation-editor/FileSystemViewer.d.ts +41 -0
  27. package/lib/components/editor/edit-panel/element-generation-editor/FileSystemViewer.d.ts.map +1 -0
  28. package/lib/components/editor/edit-panel/element-generation-editor/FileSystemViewer.js +77 -0
  29. package/lib/components/editor/edit-panel/element-generation-editor/FileSystemViewer.js.map +1 -0
  30. package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_BindingElementEditor.d.ts +7 -0
  31. package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_BindingElementEditor.d.ts.map +1 -1
  32. package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_BindingElementEditor.js +19 -14
  33. package/lib/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_BindingElementEditor.js.map +1 -1
  34. package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.d.ts.map +1 -1
  35. package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.js +3 -1
  36. package/lib/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.js.map +1 -1
  37. package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.js +3 -1
  38. package/lib/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.js.map +1 -1
  39. package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionQueryBuilder.d.ts.map +1 -1
  40. package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionQueryBuilder.js +3 -0
  41. package/lib/components/editor/edit-panel/mapping-editor/MappingExecutionQueryBuilder.js.map +1 -1
  42. package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.d.ts.map +1 -1
  43. package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.js +3 -1
  44. package/lib/components/editor/edit-panel/mapping-editor/NewMappingElementModal.js.map +1 -1
  45. package/lib/components/editor/edit-panel/service-editor/ServiceEditor.d.ts.map +1 -1
  46. package/lib/components/editor/edit-panel/service-editor/ServiceEditor.js +51 -13
  47. package/lib/components/editor/edit-panel/service-editor/ServiceEditor.js.map +1 -1
  48. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.d.ts.map +1 -1
  49. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.js +18 -10
  50. package/lib/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.js.map +1 -1
  51. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestableEditor.d.ts +1 -3
  52. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestableEditor.d.ts.map +1 -1
  53. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestableEditor.js +2 -20
  54. package/lib/components/editor/edit-panel/service-editor/testable/ServiceTestableEditor.js.map +1 -1
  55. package/lib/components/editor/edit-panel/uml-editor/ClassEditor.d.ts.map +1 -1
  56. package/lib/components/editor/edit-panel/uml-editor/ClassEditor.js +9 -3
  57. package/lib/components/editor/edit-panel/uml-editor/ClassEditor.js.map +1 -1
  58. package/lib/components/editor/side-bar/CreateNewElementModal.d.ts.map +1 -1
  59. package/lib/components/editor/side-bar/CreateNewElementModal.js +1 -0
  60. package/lib/components/editor/side-bar/CreateNewElementModal.js.map +1 -1
  61. package/lib/components/editor/side-bar/Explorer.d.ts.map +1 -1
  62. package/lib/components/editor/side-bar/Explorer.js +29 -8
  63. package/lib/components/editor/side-bar/Explorer.js.map +1 -1
  64. package/lib/components/editor/side-bar/testable/GlobalTestRunner.d.ts.map +1 -1
  65. package/lib/components/editor/side-bar/testable/GlobalTestRunner.js +17 -3
  66. package/lib/components/editor/side-bar/testable/GlobalTestRunner.js.map +1 -1
  67. package/lib/index.css +2 -2
  68. package/lib/index.css.map +1 -1
  69. package/lib/index.d.ts +2 -2
  70. package/lib/index.d.ts.map +1 -1
  71. package/lib/index.js +2 -2
  72. package/lib/index.js.map +1 -1
  73. package/lib/package.json +3 -3
  74. package/lib/stores/DSL_Generation_LegendStudioApplicationPlugin_Extension.d.ts +2 -2
  75. package/lib/stores/DSL_Generation_LegendStudioApplicationPlugin_Extension.d.ts.map +1 -1
  76. package/lib/stores/DependencyProjectViewerHelper.d.ts +19 -0
  77. package/lib/stores/DependencyProjectViewerHelper.d.ts.map +1 -0
  78. package/lib/stores/DependencyProjectViewerHelper.js +23 -0
  79. package/lib/stores/DependencyProjectViewerHelper.js.map +1 -0
  80. package/lib/stores/EditorGraphState.d.ts +9 -2
  81. package/lib/stores/EditorGraphState.d.ts.map +1 -1
  82. package/lib/stores/EditorGraphState.js +39 -137
  83. package/lib/stores/EditorGraphState.js.map +1 -1
  84. package/lib/stores/EditorStore.d.ts +1 -1
  85. package/lib/stores/EditorStore.d.ts.map +1 -1
  86. package/lib/stores/EditorStore.js +14 -6
  87. package/lib/stores/EditorStore.js.map +1 -1
  88. package/lib/stores/EditorTabManagerState.d.ts +1 -2
  89. package/lib/stores/EditorTabManagerState.d.ts.map +1 -1
  90. package/lib/stores/EditorTabManagerState.js +11 -25
  91. package/lib/stores/EditorTabManagerState.js.map +1 -1
  92. package/lib/stores/ExplorerTreeState.d.ts +4 -4
  93. package/lib/stores/ExplorerTreeState.d.ts.map +1 -1
  94. package/lib/stores/ExplorerTreeState.js +12 -15
  95. package/lib/stores/ExplorerTreeState.js.map +1 -1
  96. package/lib/stores/editor/NewElementState.d.ts.map +1 -1
  97. package/lib/stores/editor/NewElementState.js +0 -3
  98. package/lib/stores/editor/NewElementState.js.map +1 -1
  99. package/lib/stores/editor-state/ExternalFormatState.d.ts +2 -0
  100. package/lib/stores/editor-state/ExternalFormatState.d.ts.map +1 -1
  101. package/lib/stores/editor-state/ExternalFormatState.js +6 -0
  102. package/lib/stores/editor-state/ExternalFormatState.js.map +1 -1
  103. package/lib/stores/editor-state/FileGenerationState.d.ts +18 -18
  104. package/lib/stores/editor-state/FileGenerationState.d.ts.map +1 -1
  105. package/lib/stores/editor-state/FileGenerationState.js +86 -133
  106. package/lib/stores/editor-state/FileGenerationState.js.map +1 -1
  107. package/lib/stores/editor-state/FileGenerationViewerState.d.ts +3 -3
  108. package/lib/stores/editor-state/FileGenerationViewerState.d.ts.map +1 -1
  109. package/lib/stores/editor-state/FileGenerationViewerState.js.map +1 -1
  110. package/lib/stores/editor-state/FileSystemState.d.ts +30 -0
  111. package/lib/stores/editor-state/FileSystemState.d.ts.map +1 -0
  112. package/lib/stores/editor-state/FileSystemState.js +82 -0
  113. package/lib/stores/editor-state/FileSystemState.js.map +1 -0
  114. package/lib/stores/editor-state/GraphGenerationState.d.ts +9 -9
  115. package/lib/stores/editor-state/GraphGenerationState.d.ts.map +1 -1
  116. package/lib/stores/editor-state/GraphGenerationState.js +14 -15
  117. package/lib/stores/editor-state/GraphGenerationState.js.map +1 -1
  118. package/lib/stores/editor-state/element-editor-state/ElementEditorState.d.ts +25 -2
  119. package/lib/stores/editor-state/element-editor-state/ElementEditorState.d.ts.map +1 -1
  120. package/lib/stores/editor-state/element-editor-state/ElementEditorState.js +50 -7
  121. package/lib/stores/editor-state/element-editor-state/ElementEditorState.js.map +1 -1
  122. package/lib/stores/editor-state/element-editor-state/ElementExternalFormatGenerationState.d.ts +44 -0
  123. package/lib/stores/editor-state/element-editor-state/ElementExternalFormatGenerationState.d.ts.map +1 -0
  124. package/lib/stores/editor-state/element-editor-state/ElementExternalFormatGenerationState.js +172 -0
  125. package/lib/stores/editor-state/element-editor-state/ElementExternalFormatGenerationState.js.map +1 -0
  126. package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionState.js +1 -1
  127. package/lib/stores/editor-state/element-editor-state/mapping/MappingExecutionState.js.map +1 -1
  128. package/lib/stores/editor-state/element-editor-state/mapping/MappingTestState.js +2 -2
  129. package/lib/stores/editor-state/element-editor-state/mapping/MappingTestState.js.map +1 -1
  130. package/lib/stores/editor-state/element-editor-state/service/ServiceEditorState.d.ts +3 -0
  131. package/lib/stores/editor-state/element-editor-state/service/ServiceEditorState.d.ts.map +1 -1
  132. package/lib/stores/editor-state/element-editor-state/service/ServiceEditorState.js +14 -2
  133. package/lib/stores/editor-state/element-editor-state/service/ServiceEditorState.js.map +1 -1
  134. package/lib/stores/editor-state/element-editor-state/service/ServiceExecutionState.d.ts +9 -6
  135. package/lib/stores/editor-state/element-editor-state/service/ServiceExecutionState.d.ts.map +1 -1
  136. package/lib/stores/editor-state/element-editor-state/service/ServiceExecutionState.js +38 -28
  137. package/lib/stores/editor-state/element-editor-state/service/ServiceExecutionState.js.map +1 -1
  138. package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.d.ts.map +1 -1
  139. package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.js +6 -3
  140. package/lib/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.js.map +1 -1
  141. package/lib/stores/editor-state/project-configuration-editor-state/ProjectDependencyEditorState.d.ts.map +1 -1
  142. package/lib/stores/editor-state/project-configuration-editor-state/ProjectDependencyEditorState.js +1 -0
  143. package/lib/stores/editor-state/project-configuration-editor-state/ProjectDependencyEditorState.js.map +1 -1
  144. package/lib/stores/project-viewer/ProjectViewerStore.d.ts.map +1 -1
  145. package/lib/stores/project-viewer/ProjectViewerStore.js +1 -1
  146. package/lib/stores/project-viewer/ProjectViewerStore.js.map +1 -1
  147. package/lib/stores/shared/FileSystemTreeUtils.d.ts +56 -0
  148. package/lib/stores/shared/FileSystemTreeUtils.d.ts.map +1 -0
  149. package/lib/stores/shared/{FileGenerationTreeUtils.js → FileSystemTreeUtils.js} +31 -32
  150. package/lib/stores/shared/FileSystemTreeUtils.js.map +1 -0
  151. package/lib/stores/shared/PackageTreeUtils.d.ts +6 -4
  152. package/lib/stores/shared/PackageTreeUtils.d.ts.map +1 -1
  153. package/lib/stores/shared/PackageTreeUtils.js +90 -11
  154. package/lib/stores/shared/PackageTreeUtils.js.map +1 -1
  155. package/lib/stores/sidebar-state/LocalChangesState.d.ts +16 -3
  156. package/lib/stores/sidebar-state/LocalChangesState.d.ts.map +1 -1
  157. package/lib/stores/sidebar-state/LocalChangesState.js +143 -246
  158. package/lib/stores/sidebar-state/LocalChangesState.js.map +1 -1
  159. package/lib/stores/sidebar-state/testable/GlobalTestRunnerState.d.ts +3 -3
  160. package/lib/stores/sidebar-state/testable/GlobalTestRunnerState.d.ts.map +1 -1
  161. package/lib/stores/sidebar-state/testable/GlobalTestRunnerState.js +37 -1
  162. package/lib/stores/sidebar-state/testable/GlobalTestRunnerState.js.map +1 -1
  163. package/package.json +12 -12
  164. package/src/components/editor/StatusBar.tsx +1 -1
  165. package/src/components/editor/command-center/ProjectSearchCommand.tsx +1 -0
  166. package/src/components/editor/edit-panel/EditPanel.tsx +79 -25
  167. package/src/components/editor/edit-panel/GenerationSpecificationEditor.tsx +2 -1
  168. package/src/components/editor/edit-panel/connection-editor/ConnectionEditor.tsx +1 -0
  169. package/src/components/editor/edit-panel/element-generation-editor/ElementGenerationEditor.tsx +5 -7
  170. package/src/components/editor/edit-panel/element-generation-editor/ElementXTGenerationEditor.tsx +194 -0
  171. package/src/components/editor/edit-panel/element-generation-editor/FileGenerationEditor.tsx +6 -270
  172. package/src/components/editor/edit-panel/element-generation-editor/FileSystemViewer.tsx +296 -0
  173. package/src/components/editor/edit-panel/external-format-editor/DSL_ExternalFormat_BindingElementEditor.tsx +177 -155
  174. package/src/components/editor/edit-panel/mapping-editor/EnumerationMappingEditor.tsx +3 -1
  175. package/src/components/editor/edit-panel/mapping-editor/InstanceSetImplementationSourceSelectorModal.tsx +3 -3
  176. package/src/components/editor/edit-panel/mapping-editor/MappingExecutionQueryBuilder.tsx +3 -0
  177. package/src/components/editor/edit-panel/mapping-editor/NewMappingElementModal.tsx +3 -1
  178. package/src/components/editor/edit-panel/service-editor/ServiceEditor.tsx +243 -184
  179. package/src/components/editor/edit-panel/service-editor/ServiceExecutionQueryEditor.tsx +42 -15
  180. package/src/components/editor/edit-panel/service-editor/testable/ServiceTestableEditor.tsx +2 -65
  181. package/src/components/editor/edit-panel/uml-editor/ClassEditor.tsx +9 -3
  182. package/src/components/editor/side-bar/CreateNewElementModal.tsx +1 -0
  183. package/src/components/editor/side-bar/Explorer.tsx +82 -13
  184. package/src/components/editor/side-bar/testable/GlobalTestRunner.tsx +31 -9
  185. package/src/index.ts +5 -2
  186. package/src/stores/DSL_Generation_LegendStudioApplicationPlugin_Extension.ts +2 -2
  187. package/src/stores/DependencyProjectViewerHelper.ts +39 -0
  188. package/src/stores/EditorGraphState.ts +67 -197
  189. package/src/stores/EditorStore.ts +22 -10
  190. package/src/stores/EditorTabManagerState.ts +16 -38
  191. package/src/stores/ExplorerTreeState.ts +29 -23
  192. package/src/stores/editor/NewElementState.ts +0 -2
  193. package/src/stores/editor-state/ExternalFormatState.ts +9 -0
  194. package/src/stores/editor-state/FileGenerationState.ts +129 -180
  195. package/src/stores/editor-state/FileGenerationViewerState.ts +3 -3
  196. package/src/stores/editor-state/FileSystemState.ts +111 -0
  197. package/src/stores/editor-state/GraphGenerationState.ts +35 -31
  198. package/src/stores/editor-state/element-editor-state/ElementEditorState.ts +91 -6
  199. package/src/stores/editor-state/element-editor-state/ElementExternalFormatGenerationState.ts +266 -0
  200. package/src/stores/editor-state/element-editor-state/mapping/MappingExecutionState.ts +1 -1
  201. package/src/stores/editor-state/element-editor-state/mapping/MappingTestState.ts +2 -2
  202. package/src/stores/editor-state/element-editor-state/service/ServiceEditorState.ts +23 -2
  203. package/src/stores/editor-state/element-editor-state/service/ServiceExecutionState.ts +60 -55
  204. package/src/stores/editor-state/element-editor-state/service/testable/ServiceTestEditorState.ts +6 -2
  205. package/src/stores/editor-state/project-configuration-editor-state/ProjectDependencyEditorState.ts +2 -0
  206. package/src/stores/project-viewer/ProjectViewerStore.ts +3 -1
  207. package/src/stores/shared/{FileGenerationTreeUtils.ts → FileSystemTreeUtils.ts} +77 -76
  208. package/src/stores/shared/PackageTreeUtils.ts +144 -10
  209. package/src/stores/sidebar-state/LocalChangesState.ts +279 -450
  210. package/src/stores/sidebar-state/testable/GlobalTestRunnerState.ts +42 -3
  211. package/tsconfig.json +6 -1
  212. package/lib/stores/shared/FileGenerationTreeUtils.d.ts +0 -56
  213. package/lib/stores/shared/FileGenerationTreeUtils.d.ts.map +0 -1
  214. package/lib/stores/shared/FileGenerationTreeUtils.js.map +0 -1
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { RunTestsTestableInput, TestSuite, AtomicTest, AtomicTestId, TestError, TestFailed, TestPassed, AssertPass, AssertFail, PackageableElement, getNullableIDFromTestable, MultiExecutionServiceTestResult, } from '@finos/legend-graph';
16
+ import { AssertionStatus, RunTestsTestableInput, TestSuite, AtomicTest, AtomicTestId, TestError, TestFailed, TestPassed, AssertPass, AssertFail, PackageableElement, getNullableIDFromTestable, MultiExecutionServiceTestResult, } from '@finos/legend-graph';
17
17
  import { assertErrorThrown, isNonNullable, ActionState, uuid, assertTrue, guaranteeNonNullable, UnsupportedOperationError, filterByType, } from '@finos/legend-shared';
18
18
  import { action, flow, makeObservable, observable } from 'mobx';
19
19
  export const getTestableMetadata = (testable, editorStore, extraTestableMetadataGetters) => {
@@ -140,6 +140,18 @@ export const getAssertionStatus = (assertion, results) => {
140
140
  if (result instanceof TestFailed) {
141
141
  return result.assertStatuses.find((s) => s.assertion === assertion);
142
142
  }
143
+ else if (result instanceof MultiExecutionServiceTestResult) {
144
+ const testAssertionStatus = new Map();
145
+ Array.from(result.keyIndexedTestResults.entries()).forEach(([key, testResult]) => {
146
+ if (testResult instanceof TestFailed) {
147
+ const testAssertion = testResult.assertStatuses.find((s) => s.assertion === assertion);
148
+ if (testAssertion) {
149
+ testAssertionStatus.set(key, testAssertion);
150
+ }
151
+ }
152
+ });
153
+ return testAssertionStatus;
154
+ }
143
155
  return undefined;
144
156
  };
145
157
  const getTestSuite_TestResults = (suite, results) => suite.tests.map((t) => getAtomicTest_TestResult(t, results));
@@ -190,6 +202,15 @@ export const getTestableResultFromAssertionStatus = (assertionStatus) => {
190
202
  else if (assertionStatus instanceof AssertFail) {
191
203
  return TESTABLE_RESULT.FAILED;
192
204
  }
205
+ else if (assertionStatus && !(assertionStatus instanceof AssertionStatus)) {
206
+ const assertionStatuses = Array.from(assertionStatus.values());
207
+ if (assertionStatuses.every((t) => t instanceof AssertPass)) {
208
+ return TESTABLE_RESULT.PASSED;
209
+ }
210
+ else if (assertionStatuses.find((t) => t instanceof AssertFail)) {
211
+ return TESTABLE_RESULT.FAILED;
212
+ }
213
+ }
193
214
  return TESTABLE_RESULT.DID_NOT_RUN;
194
215
  };
195
216
  export const getTestableResultFromTestResults = (testResults) => {
@@ -202,6 +223,21 @@ export const getTestableResultFromTestResults = (testResults) => {
202
223
  else if (testResults.find((t) => t instanceof TestFailed)) {
203
224
  return TESTABLE_RESULT.FAILED;
204
225
  }
226
+ else if (testResults.find((t) => t instanceof MultiExecutionServiceTestResult)) {
227
+ let result = [];
228
+ testResults.forEach((testResult) => {
229
+ if (testResult instanceof MultiExecutionServiceTestResult) {
230
+ result = result.concat(Array.from(testResult.keyIndexedTestResults.values()));
231
+ }
232
+ });
233
+ if (result.every((t) => t instanceof TestPassed)) {
234
+ return TESTABLE_RESULT.PASSED;
235
+ }
236
+ else if (result.some((t) => t instanceof TestError)) {
237
+ return TESTABLE_RESULT.ERROR;
238
+ }
239
+ return TESTABLE_RESULT.FAILED;
240
+ }
205
241
  return TESTABLE_RESULT.DID_NOT_RUN;
206
242
  };
207
243
  export const getNodeTestableResult = (node, globalRun, results) => {
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalTestRunnerState.js","sourceRoot":"","sources":["../../../../src/stores/sidebar-state/testable/GlobalTestRunnerState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GlobalTestRunnerState.js","sourceRoot":"","sources":["../../../../src/stores/sidebar-state/testable/GlobalTestRunnerState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,eAAe,EAMf,qBAAqB,EACrB,SAAS,EACT,UAAU,EACV,YAAY,EACZ,SAAS,EACT,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,kBAAkB,EAClB,yBAAyB,EACzB,+BAA+B,GAChC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,IAAI,EACJ,UAAU,EACV,oBAAoB,EACpB,yBAAyB,EACzB,YAAY,GACb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAehE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,QAAkB,EAClB,WAAwB,EACxB,4BAAsD,EACpC,EAAE;IACpB,IAAI,QAAQ,YAAY,kBAAkB,EAAE;QAC1C,OAAO;YACL,QAAQ;YACR,EAAE,EACA,yBAAyB,CACvB,QAAQ,EACR,WAAW,CAAC,iBAAiB,CAAC,KAAK,EACnC,WAAW,CAAC,iBAAiB,CAAC,aAAa,CAAC,0BAA0B,EAAE,CACzE,IAAI,IAAI,EAAE;YACb,IAAI,EAAE,QAAQ,CAAC,IAAI;SACpB,CAAC;KACH;IACD,MAAM,cAAc,GAAG,4BAA4B;SAChD,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;SAC9C,MAAM,CAAC,aAAa,CAAC,CAAC;IACzB,OAAO,CACL,cAAc,CAAC,CAAC,CAAC,IAAI;QACnB,QAAQ;QACR,EAAE,EAAE,IAAI,EAAE;QACV,IAAI,EAAE,WAAW;KAClB,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,WAAW;AACX,MAAM,OAAgB,4BAA4B;IAChD,UAAU,CAAuB;IACjC,MAAM,CAAuB;IAC7B,EAAE,CAAS;IACX,KAAK,CAAS;IACd,WAAW,CAAwB;IACnC,YAAY,EAAU,EAAE,KAAa;QACnC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,4BAA4B;IACpE,gBAAgB,CAAmB;IACnC,SAAS,GAAG,KAAK,CAAC;IAElB,YAAY,QAA0B;QACpC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;QACjC,cAAc,CAAC,IAAI,EAAE;YACnB,SAAS,EAAE,UAAU;SACtB,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,OAAgB,gBAAiB,SAAQ,4BAA4B;IACzE,SAAS,GAAG,KAAK,CAAC;IAElB,YAAY,EAAU,EAAE,KAAa;QACnC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACjB,cAAc,CAAC,IAAI,EAAE;YACnB,SAAS,EAAE,UAAU;SACtB,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,gBAAgB;IAC1D,UAAU,CAAa;IACvB,YAAY,EAAU,EAAE,UAAsB;QAC5C,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,gBAAgB;IACzD,SAAS,CAAY;IACrB,YAAY,EAAU,EAAE,SAAoB;QAC1C,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,gBAAgB;IACzD,SAAS,CAAY;IAErB,YAAY,EAAU,EAAE,SAAoB;QAC1C,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,OAAO,yBAA0B,SAAQ,4BAA4B;IACzE,SAAS,CAAgB;IAEzB,YAAY,EAAU,EAAE,SAAwB;QAC9C,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,iBAAiB,GAAG,CACxB,IAAU,EACV,QAAgB,EACc,EAAE;IAChC,IAAI,IAAI,YAAY,UAAU,EAAE;QAC9B,OAAO,IAAI,sBAAsB,CAAC,GAAG,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;KACnE;SAAM,IAAI,IAAI,YAAY,SAAS,EAAE;QACpC,OAAO,IAAI,qBAAqB,CAAC,GAAG,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;KAClE;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AACF,MAAM,uBAAuB,GAAG,CAC9B,IAAkC,EAClC,QAAgD,EAC1C,EAAE;IACR,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;QACrB,IAAI,QAAQ,GAAmC,EAAE,CAAC;QAClD,IAAI,IAAI,YAAY,oBAAoB,EAAE;YACxC,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK;iBAC5C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;iBACzC,MAAM,CAAC,aAAa,CAAC,CAAC;SAC1B;aAAM,IAAI,IAAI,YAAY,qBAAqB,EAAE;YAChD,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK;iBAC5B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;iBACzC,MAAM,CAAC,aAAa,CAAC,CAAC;SAC1B;aAAM,IAAI,IAAI,YAAY,sBAAsB,EAAE;YACjD,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;gBACtD,MAAM,aAAa,GAAG,IAAI,yBAAyB,CACjD,GAAG,IAAI,CAAC,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAC5B,SAAS,CACV,CAAC;gBACF,OAAO,aAAa,CAAC;YACvB,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7C,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;KACtD;AACH,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,IAAkC,EAClC,QAAgD,EAC1C,EAAE;IACR,uBAAuB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;AAC7B,CAAC,CAAC;AAEF,iBAAiB;AACjB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,UAAsB,EACtB,OAAoC,EACZ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAErD,MAAM,uBAAuB,GAAG,CAC9B,SAAwB,EACxB,OAAoC,EACZ,EAAE;IAC1B,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC;IAClC,OAAO,IAAI,CAAC,CAAC,CAAC,wBAAwB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,SAAwB,EACxB,OAAoC,EACwB,EAAE;IAC9D,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC3D,IAAI,MAAM,YAAY,UAAU,EAAE;QAChC,OAAO,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;KACrE;SAAM,IAAI,MAAM,YAAY,+BAA+B,EAAE;QAC5D,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAA2B,CAAC;QAC/D,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CACxD,CAAC,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,EAAE;YACpB,IAAI,UAAU,YAAY,UAAU,EAAE;gBACpC,MAAM,aAAa,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,CAClD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CACjC,CAAC;gBACF,IAAI,aAAa,EAAE;oBACjB,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;iBAC7C;aACF;QACH,CAAC,CACF,CAAC;QACF,OAAO,mBAAmB,CAAC;KAC5B;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAC/B,KAAgB,EAChB,OAAoC,EACR,EAAE,CAC9B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,wBAAwB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAE/D,MAAM,mBAAmB,GAAG,CAC1B,IAAU,EACV,OAAoC,EACR,EAAE;IAC9B,IAAI,IAAI,YAAY,UAAU,EAAE;QAC9B,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;KAClD;SAAM,IAAI,IAAI,YAAY,SAAS,EAAE;QACpC,OAAO,wBAAwB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KAChD;IACD,OAAO,CAAC,SAAS,CAAC,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAC7B,IAAc,EACd,OAAoC,EACR,EAAE,CAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAC7D,MAAM,CAAN,IAAY,eAMX;AAND,WAAY,eAAe;IACzB,8CAA2B,CAAA;IAC3B,kCAAe,CAAA;IACf,oCAAiB,CAAA;IACjB,oCAAiB,CAAA;IACjB,8CAA2B,CAAA;AAC7B,CAAC,EANW,eAAe,GAAf,eAAe,KAAf,eAAe,QAM1B;AAED,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAC7C,UAAkC,EACjB,EAAE;IACnB,IAAI,UAAU,YAAY,UAAU,EAAE;QACpC,OAAO,eAAe,CAAC,MAAM,CAAC;KAC/B;SAAM,IAAI,UAAU,YAAY,UAAU,EAAE;QAC3C,OAAO,eAAe,CAAC,MAAM,CAAC;KAC/B;SAAM,IAAI,UAAU,YAAY,SAAS,EAAE;QAC1C,OAAO,eAAe,CAAC,KAAK,CAAC;KAC9B;SAAM,IAAI,UAAU,YAAY,+BAA+B,EAAE;QAChE,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,MAAM,EAAE,CAAC,CAAC;QACrE,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,UAAU,CAAC,EAAE;YAChD,OAAO,eAAe,CAAC,MAAM,CAAC;SAC/B;aAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,SAAS,CAAC,EAAE;YACrD,OAAO,eAAe,CAAC,KAAK,CAAC;SAC9B;QACD,OAAO,eAAe,CAAC,MAAM,CAAC;KAC/B;IACD,OAAO,eAAe,CAAC,WAAW,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAClD,eAA2E,EAC1D,EAAE;IACnB,IAAI,eAAe,YAAY,UAAU,EAAE;QACzC,OAAO,eAAe,CAAC,MAAM,CAAC;KAC/B;SAAM,IAAI,eAAe,YAAY,UAAU,EAAE;QAChD,OAAO,eAAe,CAAC,MAAM,CAAC;KAC/B;SAAM,IAAI,eAAe,IAAI,CAAC,CAAC,eAAe,YAAY,eAAe,CAAC,EAAE;QAC3E,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;QAC/D,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,UAAU,CAAC,EAAE;YAC3D,OAAO,eAAe,CAAC,MAAM,CAAC;SAC/B;aAAM,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,UAAU,CAAC,EAAE;YACjE,OAAO,eAAe,CAAC,MAAM,CAAC;SAC/B;KACF;IACD,OAAO,eAAe,CAAC,WAAW,CAAC;AACrC,CAAC,CAAC;AACF,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAC9C,WAAuC,EACtB,EAAE;IACnB,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,UAAU,CAAC,EAAE;QACrD,OAAO,eAAe,CAAC,MAAM,CAAC;KAC/B;SAAM,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,SAAS,CAAC,EAAE;QAC1D,OAAO,eAAe,CAAC,KAAK,CAAC;KAC9B;SAAM,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,UAAU,CAAC,EAAE;QAC3D,OAAO,eAAe,CAAC,MAAM,CAAC;KAC/B;SAAM,IACL,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,+BAA+B,CAAC,EACrE;QACA,IAAI,MAAM,GAAiB,EAAE,CAAC;QAC9B,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACjC,IAAI,UAAU,YAAY,+BAA+B,EAAE;gBACzD,MAAM,GAAG,MAAM,CAAC,MAAM,CACpB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,MAAM,EAAE,CAAC,CACtD,CAAC;aACH;QACH,CAAC,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,UAAU,CAAC,EAAE;YAChD,OAAO,eAAe,CAAC,MAAM,CAAC;SAC/B;aAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,SAAS,CAAC,EAAE;YACrD,OAAO,eAAe,CAAC,KAAK,CAAC;SAC9B;QACD,OAAO,eAAe,CAAC,MAAM,CAAC;KAC/B;IACD,OAAO,eAAe,CAAC,WAAW,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,IAAkC,EAClC,SAAkB,EAClB,OAAoC,EACnB,EAAE;IACnB,IAAI,SAAS,IAAI,IAAI,YAAY,oBAAoB,EAAE;QACrD,OAAO,eAAe,CAAC,WAAW,CAAC;KACpC;IACD,IACE,CAAC,IAAI,YAAY,gBAAgB;QAC/B,IAAI,YAAY,oBAAoB,CAAC;QACvC,IAAI,CAAC,SAAS,EACd;QACA,OAAO,eAAe,CAAC,WAAW,CAAC;KACpC;IACD,IAAI,IAAI,YAAY,yBAAyB,EAAE;QAC7C,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC3D,IAAI,MAAM,EAAE;YACV,OAAO,oCAAoC,CAAC,MAAM,CAAC,CAAC;SACrD;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU;YACtC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;YACxC,CAAC,CAAC,SAAS,CAAC;QACd,OAAO,+BAA+B,CAAC,MAAM,CAAC,CAAC;KAChD;SAAM,IAAI,IAAI,YAAY,sBAAsB,EAAE;QACjD,OAAO,+BAA+B,CACpC,wBAAwB,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CACnD,CAAC;KACH;SAAM,IAAI,IAAI,YAAY,qBAAqB,EAAE;QAChD,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YAC9C,qBAAqB,CACnB,IAAI,yBAAyB,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,EACtD,SAAS,EACT,OAAO,CACR,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;SAAM,IAAI,IAAI,YAAY,qBAAqB,EAAE;QAChD,OAAO,gCAAgC,CACrC,wBAAwB,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAClD,CAAC;KACH;SAAM,IAAI,IAAI,YAAY,oBAAoB,EAAE;QAC/C,OAAO,gCAAgC,CACrC,sBAAsB,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAChE,CAAC;KACH;IACD,OAAO,eAAe,CAAC,WAAW,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,OAAO,aAAa;IACf,IAAI,GAAG,IAAI,EAAE,CAAC;IACvB,qBAAqB,CAAwB;IAC7C,WAAW,CAAc;IACzB,gBAAgB,CAAmB;IACnC,QAAQ,CAAyC;IACjD,OAAO,GAAgC,IAAI,GAAG,EAAE,CAAC;IACjD,YAAY,GAA+B,IAAI,GAAG,EAAE,CAAC;IACrD,cAAc,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;IAEtC,YACE,WAAwB,EACxB,qBAA4C,EAC5C,QAAkB;QAElB,cAAc,CAAC,IAAI,EAAE;YACnB,WAAW,EAAE,KAAK;YAClB,gBAAgB,EAAE,UAAU;YAC5B,cAAc,EAAE,UAAU;YAC1B,OAAO,EAAE,UAAU;YACnB,QAAQ,EAAE,UAAU,CAAC,GAAG;YACxB,oBAAoB,EAAE,MAAM;YAC5B,WAAW,EAAE,MAAM;YACnB,gBAAgB,EAAE,MAAM;YACxB,GAAG,EAAE,IAAI;SACV,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;QACnD,IAAI,CAAC,gBAAgB,GAAG,mBAAmB,CACzC,QAAQ,EACR,WAAW,EACX,IAAI,CAAC,qBAAqB,CAAC,4BAA4B,CACxD,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC5D,CAAC;IAED,CAAC,GAAG,CAAC,IAAkC;QACrC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;QACjC,IAAI,KAA4B,CAAC;QACjC,IAAI,WAAW,GAAG,IAAI,CAAC;QACvB,IAAI;YACF,IAAI,IAAI,YAAY,yBAAyB,EAAE;gBAC7C,MAAM,UAAU,GAAG,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;gBACnE,MAAM,KAAK,GACT,UAAU,CAAC,QAAQ,YAAY,SAAS;oBACtC,CAAC,CAAC,UAAU,CAAC,QAAQ;oBACrB,CAAC,CAAC,SAAS,CAAC;gBAChB,KAAK,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAClE,KAAK,CAAC,WAAW,GAAG,CAAC,IAAI,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;gBAC1D,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;qBACxD,MAAM,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;qBAC5C,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC;gBAC5C,IAAI,UAAU,EAAE;oBACd,WAAW,GAAG,UAAU,CAAC;oBACzB,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC;iBAC7B;aACF;iBAAM,IAAI,IAAI,YAAY,sBAAsB,EAAE;gBACjD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;gBACnC,MAAM,KAAK,GACT,UAAU,CAAC,QAAQ,YAAY,SAAS;oBACtC,CAAC,CAAC,UAAU,CAAC,QAAQ;oBACrB,CAAC,CAAC,SAAS,CAAC;gBAChB,KAAK,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAClE,KAAK,CAAC,WAAW,GAAG,CAAC,IAAI,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;gBAC1D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;aACvB;iBAAM,IAAI,IAAI,YAAY,qBAAqB,EAAE;gBAChD,KAAK,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAClE,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAC1C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAC3C,CAAC;gBACF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;aACvB;iBAAM,IAAI,IAAI,YAAY,oBAAoB,EAAE;gBAC/C,KAAK,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAClE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;aACvB;iBAAM;gBACL,MAAM,IAAI,yBAAyB,CACjC,gCAAgC,IAAI,EAAE,CACvC,CAAC;aACH;YACD,MAAM,WAAW,GACf,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAC7D,CAAC,KAAK,CAAC,EACP,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,CACzC,CAAiB,CAAC;YACrB,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YACtD,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;SAChC;QAAC,OAAO,KAAK,EAAE;YACd,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACrD,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;SAC5B;gBAAS;YACR,IACE,WAAW,YAAY,gBAAgB;gBACvC,WAAW,YAAY,oBAAoB,EAC3C;gBACA,WAAW,CAAC,SAAS,GAAG,KAAK,CAAC;aAC/B;SACF;IACH,CAAC;IAED,oBAAoB,CAAC,UAAsB,EAAE,cAAwB;QACnE,IAAI;YACF,UAAU,CAAC,UAAU,CAAC,QAAQ,KAAK,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YACnE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;SAClE;QAAC,OAAO,KAAK,EAAE;YACd,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,WAAW,CAC3C,iCAAiC,KAAK,CAAC,OAAO,EAAE,CACjD,CAAC;SACH;IACH,CAAC;IAED,aAAa,CACX,QAA0B;QAE1B,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAwC,CAAC;QAC9D,MAAM,QAAQ,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACpC,MAAM,oBAAoB,GAAG,IAAI,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAChE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;QAC/C,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;QAClE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,WAAW,CAAC,IAA4C;QACtD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,gBAAgB,CACd,IAAkC,EAClC,QAAgD;QAEhD,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACjC,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;IACpC,CAAC;CACF;AAED,MAAM,OAAO,qBAAqB;IAChC,WAAW,CAAc;IACzB,SAAS,CAAkB;IAC3B,cAAc,CAA8B;IAC5C,cAAc,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;IACtC,4BAA4B,GAA6B,EAAE,CAAC;IAC5D,cAAc,CAAqC;IAEnD,YAAY,WAAwB,EAAE,SAA0B;QAC9D,cAAc,CAAC,IAAI,EAAE;YACnB,WAAW,EAAE,KAAK;YAClB,SAAS,EAAE,KAAK;YAChB,cAAc,EAAE,UAAU;YAC1B,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE,UAAU;YAC1B,iBAAiB,EAAE,MAAM;SAC1B,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,4BAA4B,GAAG,WAAW,CAAC,aAAa;aAC1D,qBAAqB,EAAE;aACvB,OAAO,CACN,CAAC,MAAqC,EAAE,EAAE,CACxC,MAAM,CAAC,wBAAwB,EAAE,EAAE,IAAI,EAAE,CAC5C;aACA,MAAM,CAAC,aAAa,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,CAAC,KAAe;QAClB,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,KAAK,EAAE;YACjC,MAAM,SAAS,GACb,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,CAAC,eAAe,CAAC;YAC3D,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,GAAG,CACjC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,CAClE,CAAC;SACH;IACH,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,mBAAmB;QACrB,OAAO,CACL,IAAI,CAAC,cAAc,CAAC,YAAY;YAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC,CAC1D,CAAC;IACJ,CAAC;IAED,iBAAiB,CAAC,GAAuC;QACvD,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC;IAC5B,CAAC;IAED,CAAC,WAAW,CAAC,aAAwC;QACnD,IAAI;YACF,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;YACjC,IAAI,MAAM,GAA4B,EAAE,CAAC;YACzC,IAAI,CAAC,aAAa,EAAE;gBAClB,MAAM,GAAG,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,GAAG,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,qBAAqB,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAC9D,CAAC;aACH;iBAAM;gBACL,MAAM,GAAG;oBACP,IAAI,qBAAqB,CAAC,aAAa,CAAC,gBAAgB,CAAC,QAAQ,CAAC;iBACnE,CAAC;aACH;YACD,MAAM,WAAW,GACf,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAC7D,MAAM,EACN,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,CACzC,CAAiB,CAAC;YACrB,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YAChC,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;SAChC;QAAC,OAAO,KAAK,EAAE;YACd,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACrD,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;SAC5B;IACH,CAAC;IAED,aAAa,CAAC,WAAyB;QACrC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACjC,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CACvC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,KAAK,UAAU,CAAC,QAAQ,CACrE,CAAC;YACF,IAAI,aAAa,EAAE;gBACjB,aAAa,CAAC,oBAAoB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;aACtD;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-application-studio",
3
- "version": "22.2.0",
3
+ "version": "22.3.0",
4
4
  "description": "Legend Studio application core",
5
5
  "keywords": [
6
6
  "legend",
@@ -44,17 +44,17 @@
44
44
  "test:watch": "jest --watch"
45
45
  },
46
46
  "dependencies": {
47
- "@finos/legend-application": "10.2.5",
48
- "@finos/legend-art": "5.0.17",
49
- "@finos/legend-graph": "22.1.0",
50
- "@finos/legend-query-builder": "0.6.14",
51
- "@finos/legend-server-depot": "4.2.3",
52
- "@finos/legend-server-sdlc": "4.1.13",
53
- "@finos/legend-shared": "6.2.11",
54
- "@finos/legend-storage": "3.0.26",
47
+ "@finos/legend-application": "10.2.7",
48
+ "@finos/legend-art": "5.0.19",
49
+ "@finos/legend-graph": "22.2.0",
50
+ "@finos/legend-query-builder": "0.6.16",
51
+ "@finos/legend-server-depot": "4.2.5",
52
+ "@finos/legend-server-sdlc": "4.1.15",
53
+ "@finos/legend-shared": "6.2.13",
54
+ "@finos/legend-storage": "3.0.28",
55
55
  "@testing-library/react": "13.4.0",
56
56
  "@types/react": "18.0.26",
57
- "@types/react-dom": "18.0.9",
57
+ "@types/react-dom": "18.0.10",
58
58
  "mobx": "6.7.0",
59
59
  "mobx-react-lite": "3.4.0",
60
60
  "mobx-utils": "6.0.5",
@@ -66,10 +66,10 @@
66
66
  "serializr": "3.0.2"
67
67
  },
68
68
  "devDependencies": {
69
- "@finos/legend-dev-utils": "2.0.34",
69
+ "@finos/legend-dev-utils": "2.0.36",
70
70
  "@jest/globals": "29.3.1",
71
71
  "cross-env": "7.0.3",
72
- "eslint": "8.30.0",
72
+ "eslint": "8.31.0",
73
73
  "jest": "29.3.1",
74
74
  "npm-run-all": "4.1.5",
75
75
  "rimraf": "3.0.2",
@@ -330,7 +330,7 @@ export const StatusBar = observer((props: { actionsDisabled: boolean }) => {
330
330
  {
331
331
  'editor__status-bar__action editor__status-bar__clear__generation-btn--wiggling':
332
332
  editorStore.graphState.graphGenerationState
333
- .isClearingGenerationEntities,
333
+ .clearingGenerationEntitiesState.isInProgress,
334
334
  },
335
335
  )}
336
336
  disabled={
@@ -148,6 +148,7 @@ export const ProjectSearchCommand = observer(() => {
148
148
  darkMode={true}
149
149
  formatOptionLabel={getPackageableElementOptionFormatter({
150
150
  darkMode: true,
151
+ pureModel: editorStore.graphManagerState.graph,
151
152
  })}
152
153
  />
153
154
  </div>
@@ -29,7 +29,12 @@ import { MappingEditor } from './mapping-editor/MappingEditor.js';
29
29
  import { UMLEditor } from './uml-editor/UMLEditor.js';
30
30
  import { MappingEditorState } from '../../../stores/editor-state/element-editor-state/mapping/MappingEditorState.js';
31
31
  import { UMLEditorState } from '../../../stores/editor-state/element-editor-state/UMLEditorState.js';
32
- import { ElementEditorState } from '../../../stores/editor-state/element-editor-state/ElementEditorState.js';
32
+ import {
33
+ ElementEditorState,
34
+ ELEMENT_GENERATION_MODE,
35
+ ExternalFormatElementGenerationViewModeState,
36
+ FileGenerationViewModeState,
37
+ } from '../../../stores/editor-state/element-editor-state/ElementEditorState.js';
33
38
  import { LEGEND_STUDIO_TEST_ID } from '../../LegendStudioTestID.js';
34
39
  import { ELEMENT_NATIVE_VIEW_MODE } from '../../../stores/EditorConfig.js';
35
40
  import {
@@ -53,7 +58,6 @@ import { PackageableConnectionEditorState } from '../../../stores/editor-state/e
53
58
  import { PackageableConnectionEditor } from './connection-editor/ConnectionEditor.js';
54
59
  import { FileGenerationEditorState } from '../../../stores/editor-state/element-editor-state/FileGenerationEditorState.js';
55
60
  import { FileGenerationEditor } from './element-generation-editor/FileGenerationEditor.js';
56
- import { guaranteeNonNullable } from '@finos/legend-shared';
57
61
  import { EntityChangeConflictEditorState } from '../../../stores/editor-state/entity-diff-editor-state/EntityChangeConflictEditorState.js';
58
62
  import { EntityChangeConflictEditor } from './diff-editor/EntityChangeConflictEditor.js';
59
63
  import { UnsupportedElementEditorState } from '../../../stores/editor-state/UnsupportedElementEditorState.js';
@@ -68,6 +72,7 @@ import { useEditorStore } from '../EditorStoreProvider.js';
68
72
  import { PackageableDataEditorState } from '../../../stores/editor-state/element-editor-state/data/DataEditorState.js';
69
73
  import { DataElementEditor } from './data-editor/DataElementEditor.js';
70
74
  import { TabManager, type TabState } from '@finos/legend-application';
75
+ import { ElementXTGenerationEditor } from './element-generation-editor/ElementXTGenerationEditor.js';
71
76
 
72
77
  export const ViewerEditPanelSplashScreen: React.FC = () => {
73
78
  const commandListWidth = 300;
@@ -176,29 +181,52 @@ export const EditPanel = observer(() => {
176
181
  currentTabState instanceof ElementEditorState
177
182
  ? Object.values(ELEMENT_NATIVE_VIEW_MODE)
178
183
  : [];
179
- const generationViewModes =
184
+ const externalformatViewModes =
185
+ currentTabState instanceof ElementEditorState
186
+ ? editorStore.graphState.graphGenerationState.externalFormatState.externalFormatsDescriptions
187
+ .filter((f) => f.supportsSchemaGeneration)
188
+ .slice()
189
+ .sort((a, b): number => a.name.localeCompare(b.name))
190
+ : [];
191
+ const generationViewModes = (
180
192
  currentTabState instanceof ElementEditorState
181
193
  ? editorStore.graphState.graphGenerationState.fileGenerationConfigurations
182
194
  .slice()
183
195
  .sort((a, b): number => a.label.localeCompare(b.label))
184
- : [];
196
+ : []
197
+ ).filter(
198
+ (file) =>
199
+ !externalformatViewModes
200
+ .map((e) => e.name.toLowerCase())
201
+ .includes(file.key.toLowerCase()),
202
+ );
185
203
 
186
204
  const renderActiveElementTab = (): React.ReactNode => {
187
205
  if (currentTabState instanceof ElementEditorState) {
188
- if (currentTabState.generationViewMode) {
189
- const elementGenerationState = editorStore.elementGenerationStates.find(
190
- (state) =>
191
- state.fileGenerationType === currentTabState.generationViewMode,
192
- );
193
- return (
194
- <ElementGenerationEditor
195
- key={elementGenerationState?.uuid}
196
- elementGenerationState={guaranteeNonNullable(
197
- elementGenerationState,
198
- )}
199
- currentElementState={currentTabState}
200
- />
201
- );
206
+ const generationViewState = currentTabState.generationModeState;
207
+ if (generationViewState) {
208
+ if (generationViewState instanceof FileGenerationViewModeState) {
209
+ return (
210
+ <ElementGenerationEditor
211
+ key={generationViewState.elementGenerationState.uuid}
212
+ elementGenerationState={
213
+ generationViewState.elementGenerationState
214
+ }
215
+ currentElementState={currentTabState}
216
+ />
217
+ );
218
+ } else if (
219
+ generationViewState instanceof
220
+ ExternalFormatElementGenerationViewModeState
221
+ ) {
222
+ return (
223
+ <ElementXTGenerationEditor
224
+ key={generationViewState.generationState.uuid}
225
+ elementXTState={generationViewState.generationState}
226
+ currentElementState={currentTabState}
227
+ />
228
+ );
229
+ }
202
230
  }
203
231
  switch (currentTabState.editMode) {
204
232
  case ELEMENT_NATIVE_VIEW_MODE.FORM: {
@@ -360,12 +388,38 @@ export const EditPanel = observer(() => {
360
388
  ))}
361
389
  </div>
362
390
  </div>
391
+ {Boolean(externalformatViewModes.length) && (
392
+ <>
393
+ <div className="edit-panel__view-mode__option__group__separator" />
394
+ <div className="edit-panel__view-mode__option__group edit-panel__view-mode__option__group--generation">
395
+ <div className="edit-panel__view-mode__option__group__name">
396
+ external format
397
+ </div>
398
+ <div className="edit-panel__view-mode__option__group__options">
399
+ {externalformatViewModes.map((mode) => (
400
+ <MenuContentItem
401
+ key={mode.name}
402
+ className="edit-panel__view-mode__option"
403
+ onClick={(): void =>
404
+ currentTabState.changeGenerationModeState(
405
+ mode.name,
406
+ ELEMENT_GENERATION_MODE.EXTERNAL_FORMAT,
407
+ )
408
+ }
409
+ >
410
+ {mode.name}
411
+ </MenuContentItem>
412
+ ))}
413
+ </div>
414
+ </div>
415
+ </>
416
+ )}
363
417
  {Boolean(generationViewModes.length) && (
364
418
  <>
365
419
  <div className="edit-panel__view-mode__option__group__separator" />
366
420
  <div className="edit-panel__view-mode__option__group edit-panel__view-mode__option__group--generation">
367
421
  <div className="edit-panel__view-mode__option__group__name">
368
- generation
422
+ file
369
423
  </div>
370
424
  <div className="edit-panel__view-mode__option__group__options">
371
425
  {generationViewModes.map((mode) => (
@@ -378,7 +432,10 @@ export const EditPanel = observer(() => {
378
432
  )
379
433
  }
380
434
  onClick={(): void =>
381
- currentTabState.setGenerationViewMode(mode.key)
435
+ currentTabState.changeGenerationModeState(
436
+ mode.key,
437
+ ELEMENT_GENERATION_MODE.FILE_GENERATION,
438
+ )
382
439
  }
383
440
  >
384
441
  {mode.label}
@@ -396,11 +453,8 @@ export const EditPanel = observer(() => {
396
453
  }}
397
454
  >
398
455
  <div className="edit-panel__view-mode__type__label">
399
- {currentTabState.generationViewMode
400
- ? editorStore.graphState.graphGenerationState.getFileGenerationConfiguration(
401
- currentTabState.generationViewMode,
402
- ).label
403
- : currentTabState.editMode}
456
+ {currentTabState.generationModeState?.label ??
457
+ currentTabState.editMode}
404
458
  </div>
405
459
  </DropdownMenu>
406
460
  )}
@@ -553,7 +553,8 @@ export const GenerationSpecificationEditor = observer(() => {
553
553
  'editor__status-bar__action editor__status-bar__generate-btn',
554
554
  {
555
555
  'local-changes__refresh-btn--loading':
556
- modelGenerationState.isClearingGenerationEntities,
556
+ modelGenerationState.clearingGenerationEntitiesState
557
+ .isInProgress,
557
558
  },
558
559
  )}
559
560
  onClick={emptyGenerationEntities}
@@ -85,6 +85,7 @@ const ModelConnectionEditor = observer(
85
85
  darkMode={true}
86
86
  formatOptionLabel={getPackageableElementOptionFormatter({
87
87
  darkMode: true,
88
+ pureModel: editorStore.graphManagerState.graph,
88
89
  })}
89
90
  />
90
91
  </div>
@@ -24,10 +24,7 @@ import {
24
24
  import type { ElementFileGenerationState } from '../../../../stores/editor-state/element-editor-state/ElementFileGenerationState.js';
25
25
  import type { ElementEditorState } from '../../../../stores/editor-state/element-editor-state/ElementEditorState.js';
26
26
  import { guaranteeType } from '@finos/legend-shared';
27
- import {
28
- GenerationResultViewer,
29
- FileGenerationConfigurationEditor,
30
- } from '../../../editor/edit-panel/element-generation-editor/FileGenerationEditor.js';
27
+ import { FileGenerationConfigurationEditor } from '../../../editor/edit-panel/element-generation-editor/FileGenerationEditor.js';
31
28
  import { flowResult } from 'mobx';
32
29
  import {
33
30
  Dialog,
@@ -39,6 +36,7 @@ import {
39
36
  } from '@finos/legend-art';
40
37
  import { useEditorStore } from '../../EditorStoreProvider.js';
41
38
  import { useApplicationStore } from '@finos/legend-application';
39
+ import { FileSystemViewer } from './FileSystemViewer.js';
42
40
 
43
41
  const NewFileGenerationModal = observer(
44
42
  (props: {
@@ -145,7 +143,7 @@ export const ElementGenerationEditor = observer(
145
143
  const applicationStore = useApplicationStore();
146
144
  const isReadOnly = currentElementState.isReadOnly;
147
145
  const leaveElementGenerationView = (): void =>
148
- currentElementState.setGenerationViewMode(undefined);
146
+ currentElementState.setGenerationModeState(undefined);
149
147
 
150
148
  useEffect(() => {
151
149
  flowResult(elementGenerationState.regenerate()).catch(
@@ -187,8 +185,8 @@ export const ElementGenerationEditor = observer(
187
185
  <ResizablePanelSplitterLine color="var(--color-dark-grey-200)" />
188
186
  </ResizablePanelSplitter>
189
187
  <ResizablePanel>
190
- <GenerationResultViewer
191
- fileGenerationState={
188
+ <FileSystemViewer
189
+ generatedFileState={
192
190
  elementGenerationState.fileGenerationState
193
191
  }
194
192
  />
@@ -0,0 +1,194 @@
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 { useApplicationStore } from '@finos/legend-application';
18
+ import {
19
+ ArrowCircleLeftIcon,
20
+ PanelContent,
21
+ RefreshIcon,
22
+ ResizablePanel,
23
+ ResizablePanelGroup,
24
+ ResizablePanelSplitter,
25
+ ResizablePanelSplitterLine,
26
+ } from '@finos/legend-art';
27
+ import type { GenerationProperty } from '@finos/legend-graph';
28
+ import { debounce } from '@finos/legend-shared';
29
+ import { flowResult } from 'mobx';
30
+ import { observer } from 'mobx-react-lite';
31
+ import { useEffect, useMemo } from 'react';
32
+ import type { ElementEditorState } from '../../../../stores/editor-state/element-editor-state/ElementEditorState.js';
33
+ import type { ElementXTSchemaGenerationState } from '../../../../stores/editor-state/element-editor-state/ElementExternalFormatGenerationState.js';
34
+ import { ModelUnitEditor } from '../external-format-editor/DSL_ExternalFormat_BindingElementEditor.js';
35
+ import { GenerationPropertyEditor } from './FileGenerationEditor.js';
36
+ import { FileSystemViewer } from './FileSystemViewer.js';
37
+
38
+ enum HIDDEN_CONFIGURATION_PROPERTIES {
39
+ FORMAT = 'format',
40
+ TARGET_SCHEMA_SET = 'targetSchemaSet',
41
+ }
42
+
43
+ export const ExternalFormatGeneratioConfigEditor = observer(
44
+ (props: {
45
+ isReadOnly: boolean;
46
+ elementEditorState: ElementEditorState;
47
+ xtState: ElementXTSchemaGenerationState;
48
+ }) => {
49
+ const { isReadOnly, xtState } = props;
50
+ const xtGenerationState = xtState.xtGenerationState;
51
+ const editorStore = xtState.editorStore;
52
+ const applicationStore = editorStore.applicationStore;
53
+ const configSpecification = xtState.xtGenerationState.configSpecification;
54
+ const schemaGenerationProperties =
55
+ xtState.description.schemaGenerationProperties;
56
+ const debouncedRegenerate = useMemo(
57
+ () =>
58
+ debounce(() => flowResult(xtState.xtGenerationState.generate()), 500),
59
+ [xtState],
60
+ );
61
+ const update = (
62
+ generationProperty: GenerationProperty,
63
+ newValue: object,
64
+ ): void => {
65
+ debouncedRegenerate.cancel();
66
+ xtGenerationState.updateFileGenerationParameters(
67
+ configSpecification,
68
+ generationProperty,
69
+ newValue,
70
+ );
71
+ debouncedRegenerate()?.catch(applicationStore.alertUnhandledError);
72
+ };
73
+ const resetDefaultConfiguration = (): void => {
74
+ debouncedRegenerate.cancel();
75
+ xtGenerationState.resetGenerator();
76
+ debouncedRegenerate()?.catch(applicationStore.alertUnhandledError);
77
+ };
78
+
79
+ const getConfigValue = (name: string): unknown | undefined =>
80
+ xtState.xtGenerationState.configSpecification.configurationProperties.find(
81
+ (e) => e.name === name,
82
+ )?.value;
83
+
84
+ return (
85
+ <div className="panel file-generation-editor__configuration">
86
+ <div className="panel__header">
87
+ <div className="panel__header__title">
88
+ <div className="panel__header__title__label">{`${xtState.description.name} configuration`}</div>
89
+ </div>
90
+ <div className="panel__header__actions">
91
+ <button
92
+ className="panel__header__action file-generation-editor__configuration__reset-btn"
93
+ tabIndex={-1}
94
+ disabled={
95
+ isReadOnly ||
96
+ !configSpecification.configurationProperties.length
97
+ }
98
+ onClick={resetDefaultConfiguration}
99
+ title="Reset to default configuration"
100
+ >
101
+ <RefreshIcon />
102
+ </button>
103
+ </div>
104
+ </div>
105
+ <PanelContent>
106
+ <div className="file-generation-editor__configuration__content">
107
+ <ModelUnitEditor
108
+ isReadOnly={isReadOnly}
109
+ modelUnit={configSpecification.modelUnit}
110
+ />
111
+ {schemaGenerationProperties
112
+
113
+ .filter(
114
+ (property) =>
115
+ !Object.values(HIDDEN_CONFIGURATION_PROPERTIES).includes(
116
+ property.name as HIDDEN_CONFIGURATION_PROPERTIES,
117
+ ),
118
+ )
119
+ .map((abstractGenerationProperty) => (
120
+ <GenerationPropertyEditor
121
+ key={
122
+ abstractGenerationProperty.name +
123
+ abstractGenerationProperty.type
124
+ }
125
+ update={update}
126
+ isReadOnly={isReadOnly}
127
+ getConfigValue={getConfigValue}
128
+ property={abstractGenerationProperty}
129
+ />
130
+ ))}
131
+ </div>
132
+ </PanelContent>
133
+ </div>
134
+ );
135
+ },
136
+ );
137
+
138
+ export const ElementXTGenerationEditor = observer(
139
+ (props: {
140
+ currentElementState: ElementEditorState;
141
+ elementXTState: ElementXTSchemaGenerationState;
142
+ }) => {
143
+ const { elementXTState, currentElementState } = props;
144
+ const xtGenerationState = elementXTState.xtGenerationState;
145
+ const applicationStore = useApplicationStore();
146
+ const leaveElementGenerationView = (): void =>
147
+ currentElementState.setGenerationModeState(undefined);
148
+ useEffect(() => {
149
+ flowResult(elementXTState.regenerate()).catch(
150
+ applicationStore.alertUnhandledError,
151
+ );
152
+ }, [applicationStore, currentElementState, elementXTState]);
153
+
154
+ return (
155
+ <div className="panel element-generation-editor">
156
+ <div className="panel__header element-generation-editor__header">
157
+ <div className="panel__header__title">
158
+ <button
159
+ className="panel__header__action element-generation-editor__leave-btn"
160
+ tabIndex={-1}
161
+ onClick={leaveElementGenerationView}
162
+ title="Leave element generation view mode"
163
+ >
164
+ <ArrowCircleLeftIcon /> exit generation view
165
+ </button>
166
+ </div>
167
+ </div>
168
+ <div className="panel__content element-generation-editor__content">
169
+ <div className="file-generation-editor">
170
+ <ResizablePanelGroup orientation="vertical">
171
+ <ResizablePanel
172
+ size={300}
173
+ minSize={300}
174
+ className="file-generation-editor__split-pane"
175
+ >
176
+ <ExternalFormatGeneratioConfigEditor
177
+ isReadOnly={currentElementState.isReadOnly}
178
+ elementEditorState={currentElementState}
179
+ xtState={elementXTState}
180
+ />
181
+ </ResizablePanel>
182
+ <ResizablePanelSplitter>
183
+ <ResizablePanelSplitterLine color="var(--color-dark-grey-200)" />
184
+ </ResizablePanelSplitter>
185
+ <ResizablePanel>
186
+ <FileSystemViewer generatedFileState={xtGenerationState} />
187
+ </ResizablePanel>
188
+ </ResizablePanelGroup>
189
+ </div>
190
+ </div>
191
+ </div>
192
+ );
193
+ },
194
+ );