@finos/legend-graph 4.0.3 → 5.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 (441) hide show
  1. package/lib/DSLMapping_Exports.d.ts +1 -0
  2. package/lib/DSLMapping_Exports.d.ts.map +1 -1
  3. package/lib/DSLMapping_Exports.js +1 -0
  4. package/lib/DSLMapping_Exports.js.map +1 -1
  5. package/lib/GraphManagerState.d.ts.map +1 -1
  6. package/lib/GraphManagerState.js +2 -1
  7. package/lib/GraphManagerState.js.map +1 -1
  8. package/lib/GraphManagerTestUtils.js +1 -1
  9. package/lib/GraphManagerTestUtils.js.map +1 -1
  10. package/lib/MetaModelConst.d.ts +2 -1
  11. package/lib/MetaModelConst.d.ts.map +1 -1
  12. package/lib/MetaModelConst.js +5 -3
  13. package/lib/MetaModelConst.js.map +1 -1
  14. package/lib/MetaModelUtils.d.ts +1 -0
  15. package/lib/MetaModelUtils.d.ts.map +1 -1
  16. package/lib/MetaModelUtils.js +1 -0
  17. package/lib/MetaModelUtils.js.map +1 -1
  18. package/lib/graph/BasicModel.d.ts +39 -24
  19. package/lib/graph/BasicModel.d.ts.map +1 -1
  20. package/lib/graph/BasicModel.js +106 -52
  21. package/lib/graph/BasicModel.js.map +1 -1
  22. package/lib/graph/DependencyManager.d.ts +22 -24
  23. package/lib/graph/DependencyManager.d.ts.map +1 -1
  24. package/lib/graph/DependencyManager.js +87 -54
  25. package/lib/graph/DependencyManager.js.map +1 -1
  26. package/lib/graph/PureGraphPlugin.d.ts +4 -0
  27. package/lib/graph/PureGraphPlugin.d.ts.map +1 -1
  28. package/lib/graph/PureGraphPlugin.js +4 -0
  29. package/lib/graph/PureGraphPlugin.js.map +1 -1
  30. package/lib/graph/PureModel.d.ts +18 -16
  31. package/lib/graph/PureModel.d.ts.map +1 -1
  32. package/lib/graph/PureModel.js +75 -108
  33. package/lib/graph/PureModel.js.map +1 -1
  34. package/lib/graphManager/AbstractPureGraphManager.d.ts +9 -5
  35. package/lib/graphManager/AbstractPureGraphManager.d.ts.map +1 -1
  36. package/lib/graphManager/AbstractPureGraphManager.js.map +1 -1
  37. package/lib/graphManager/DSLExternalFormat_GraphManagerHelper.d.ts +3 -0
  38. package/lib/graphManager/DSLExternalFormat_GraphManagerHelper.d.ts.map +1 -1
  39. package/lib/graphManager/DSLExternalFormat_GraphManagerHelper.js +4 -2
  40. package/lib/graphManager/DSLExternalFormat_GraphManagerHelper.js.map +1 -1
  41. package/lib/graphManager/PureGraphManagerPlugin.d.ts +4 -0
  42. package/lib/graphManager/PureGraphManagerPlugin.d.ts.map +1 -1
  43. package/lib/graphManager/PureGraphManagerPlugin.js +4 -0
  44. package/lib/graphManager/PureGraphManagerPlugin.js.map +1 -1
  45. package/lib/graphManager/action/TEMPORARY__AbstractEngineConfig.d.ts +4 -0
  46. package/lib/graphManager/action/TEMPORARY__AbstractEngineConfig.d.ts.map +1 -1
  47. package/lib/graphManager/action/TEMPORARY__AbstractEngineConfig.js +4 -0
  48. package/lib/graphManager/action/TEMPORARY__AbstractEngineConfig.js.map +1 -1
  49. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.d.ts.map +1 -1
  50. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.js +0 -5
  51. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.js.map +1 -1
  52. package/lib/graphManager/action/changeDetection/DomainObserverHelper.d.ts.map +1 -1
  53. package/lib/graphManager/action/changeDetection/DomainObserverHelper.js +4 -4
  54. package/lib/graphManager/action/changeDetection/DomainObserverHelper.js.map +1 -1
  55. package/lib/graphManager/action/changeDetection/GraphObserverHelper.d.ts +1 -1
  56. package/lib/graphManager/action/changeDetection/GraphObserverHelper.d.ts.map +1 -1
  57. package/lib/graphManager/action/changeDetection/GraphObserverHelper.js +3 -5
  58. package/lib/graphManager/action/changeDetection/GraphObserverHelper.js.map +1 -1
  59. package/lib/graphManager/action/changeDetection/PackageableElementObserver.d.ts +1 -1
  60. package/lib/graphManager/action/changeDetection/PackageableElementObserver.d.ts.map +1 -1
  61. package/lib/graphManager/action/changeDetection/PackageableElementObserver.js +1 -1
  62. package/lib/graphManager/action/changeDetection/PackageableElementObserver.js.map +1 -1
  63. package/lib/graphManager/action/changeDetection/RawValueSpecificationObserver.d.ts +2 -2
  64. package/lib/graphManager/action/changeDetection/RawValueSpecificationObserver.d.ts.map +1 -1
  65. package/lib/graphManager/action/changeDetection/RawValueSpecificationObserver.js +6 -5
  66. package/lib/graphManager/action/changeDetection/RawValueSpecificationObserver.js.map +1 -1
  67. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.d.ts.map +1 -1
  68. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.js +8 -10
  69. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.js.map +1 -1
  70. package/lib/graphManager/action/execution/ExecutionResult.d.ts +1 -1
  71. package/lib/graphManager/action/execution/ExecutionResult.d.ts.map +1 -1
  72. package/lib/graphManager/action/execution/ExecutionResult.js.map +1 -1
  73. package/lib/helpers/DomainHelper.d.ts +7 -3
  74. package/lib/helpers/DomainHelper.d.ts.map +1 -1
  75. package/lib/helpers/DomainHelper.js +78 -5
  76. package/lib/helpers/DomainHelper.js.map +1 -1
  77. package/lib/helpers/MappingHelper.d.ts.map +1 -1
  78. package/lib/helpers/MappingHelper.js +2 -2
  79. package/lib/helpers/MappingHelper.js.map +1 -1
  80. package/lib/index.d.ts +1 -0
  81. package/lib/index.d.ts.map +1 -1
  82. package/lib/index.js +1 -0
  83. package/lib/index.js.map +1 -1
  84. package/lib/models/metamodels/pure/packageableElements/PackageableElement.d.ts +1 -7
  85. package/lib/models/metamodels/pure/packageableElements/PackageableElement.d.ts.map +1 -1
  86. package/lib/models/metamodels/pure/packageableElements/PackageableElement.js +2 -8
  87. package/lib/models/metamodels/pure/packageableElements/PackageableElement.js.map +1 -1
  88. package/lib/models/metamodels/pure/packageableElements/domain/Class.d.ts.map +1 -1
  89. package/lib/models/metamodels/pure/packageableElements/domain/Class.js +2 -0
  90. package/lib/models/metamodels/pure/packageableElements/domain/Class.js.map +1 -1
  91. package/lib/models/metamodels/pure/packageableElements/domain/Package.d.ts +0 -7
  92. package/lib/models/metamodels/pure/packageableElements/domain/Package.d.ts.map +1 -1
  93. package/lib/models/metamodels/pure/packageableElements/domain/Package.js +1 -32
  94. package/lib/models/metamodels/pure/packageableElements/domain/Package.js.map +1 -1
  95. package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.d.ts +2 -3
  96. package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.d.ts.map +1 -1
  97. package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.js +1 -12
  98. package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.js.map +1 -1
  99. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.d.ts +2 -3
  100. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.d.ts.map +1 -1
  101. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js +0 -11
  102. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js.map +1 -1
  103. package/lib/models/metamodels/pure/packageableElements/mapping/InputData.d.ts +0 -1
  104. package/lib/models/metamodels/pure/packageableElements/mapping/InputData.d.ts.map +1 -1
  105. package/lib/models/metamodels/pure/packageableElements/mapping/InputData.js +0 -1
  106. package/lib/models/metamodels/pure/packageableElements/mapping/InputData.js.map +1 -1
  107. package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.d.ts +0 -5
  108. package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.d.ts.map +1 -1
  109. package/lib/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.d.ts +0 -1
  110. package/lib/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.d.ts.map +1 -1
  111. package/lib/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.js +0 -1
  112. package/lib/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.js.map +1 -1
  113. package/lib/models/metamodels/pure/packageableElements/mapping/OperationSetImplementation.d.ts.map +1 -1
  114. package/lib/models/metamodels/pure/packageableElements/mapping/OperationSetImplementation.js +1 -0
  115. package/lib/models/metamodels/pure/packageableElements/mapping/OperationSetImplementation.js.map +1 -1
  116. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.d.ts +7 -21
  117. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.d.ts.map +1 -1
  118. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.js +3 -37
  119. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.js.map +1 -1
  120. package/lib/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.d.ts +32 -0
  121. package/lib/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.d.ts.map +1 -0
  122. package/lib/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.js +40 -0
  123. package/lib/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.js.map +1 -0
  124. package/lib/models/metamodels/pure/packageableElements/section/Section.d.ts +1 -5
  125. package/lib/models/metamodels/pure/packageableElements/section/Section.d.ts.map +1 -1
  126. package/lib/models/metamodels/pure/packageableElements/section/Section.js +0 -5
  127. package/lib/models/metamodels/pure/packageableElements/section/Section.js.map +1 -1
  128. package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.d.ts +0 -1
  129. package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.d.ts.map +1 -1
  130. package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.js +0 -1
  131. package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.js.map +1 -1
  132. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts +4 -4
  133. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts.map +1 -1
  134. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js +3 -12
  135. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js.map +1 -1
  136. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.d.ts.map +1 -1
  137. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.js +2 -2
  138. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.js.map +1 -1
  139. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.d.ts +0 -1
  140. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.d.ts.map +1 -1
  141. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.js +0 -1
  142. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.js.map +1 -1
  143. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts +0 -1
  144. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts.map +1 -1
  145. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.js +0 -1
  146. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.js.map +1 -1
  147. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.d.ts.map +1 -1
  148. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.js +2 -0
  149. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.js.map +1 -1
  150. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts +2 -4
  151. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts.map +1 -1
  152. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.js +1 -7
  153. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.js.map +1 -1
  154. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.d.ts.map +1 -1
  155. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.js +2 -2
  156. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.js.map +1 -1
  157. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.d.ts +0 -1
  158. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.d.ts.map +1 -1
  159. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.js +0 -1
  160. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.js.map +1 -1
  161. package/lib/models/metamodels/pure/packageableElements/store/relational/model/Table.d.ts.map +1 -1
  162. package/lib/models/metamodels/pure/packageableElements/store/relational/model/Table.js +4 -2
  163. package/lib/models/metamodels/pure/packageableElements/store/relational/model/Table.js.map +1 -1
  164. package/lib/models/metamodels/pure/packageableElements/store/relational/model/View.d.ts.map +1 -1
  165. package/lib/models/metamodels/pure/packageableElements/store/relational/model/View.js +4 -2
  166. package/lib/models/metamodels/pure/packageableElements/store/relational/model/View.js.map +1 -1
  167. package/lib/models/metamodels/pure/packageableElements/store/relational/model/milestoning/Milestoning.d.ts +2 -2
  168. package/lib/models/metamodels/pure/packageableElements/store/relational/model/milestoning/Milestoning.d.ts.map +1 -1
  169. package/lib/models/metamodels/pure/packageableElements/store/relational/model/milestoning/Milestoning.js.map +1 -1
  170. package/lib/models/metamodels/pure/rawValueSpecification/{RawInstanceValue.d.ts → RawPrimitiveInstanceValue.d.ts} +2 -2
  171. package/lib/models/metamodels/pure/rawValueSpecification/RawPrimitiveInstanceValue.d.ts.map +1 -0
  172. package/lib/models/metamodels/pure/rawValueSpecification/{RawInstanceValue.js → RawPrimitiveInstanceValue.js} +3 -3
  173. package/lib/models/metamodels/pure/rawValueSpecification/RawPrimitiveInstanceValue.js.map +1 -0
  174. package/lib/models/metamodels/pure/rawValueSpecification/RawValueSpecification.d.ts +2 -2
  175. package/lib/models/metamodels/pure/rawValueSpecification/RawValueSpecification.d.ts.map +1 -1
  176. package/lib/models/metamodels/pure/rawValueSpecification/RawValueSpecification.js.map +1 -1
  177. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.d.ts.map +1 -1
  178. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js +8 -7
  179. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js.map +1 -1
  180. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts +4 -0
  181. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts.map +1 -1
  182. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.js +4 -0
  183. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.js.map +1 -1
  184. package/lib/models/protocols/pure/v1/V1_Core_SystemModels.json +2 -2
  185. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts +5 -4
  186. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
  187. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js +68 -52
  188. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js.map +1 -1
  189. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.d.ts +0 -1
  190. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.d.ts.map +1 -1
  191. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.js +1 -1
  192. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.js.map +1 -1
  193. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.d.ts +0 -9
  194. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.d.ts.map +1 -1
  195. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.js +0 -10
  196. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.js.map +1 -1
  197. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.d.ts +0 -1
  198. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.d.ts.map +1 -1
  199. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.js +0 -1
  200. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.js.map +1 -1
  201. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.d.ts +0 -1
  202. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.d.ts.map +1 -1
  203. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.js +0 -1
  204. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.js.map +1 -1
  205. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.d.ts +0 -5
  206. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.d.ts.map +1 -1
  207. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.js +0 -6
  208. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.js.map +1 -1
  209. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.d.ts +0 -1
  210. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.d.ts.map +1 -1
  211. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.js +0 -1
  212. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.js.map +1 -1
  213. package/lib/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.d.ts +0 -1
  214. package/lib/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.d.ts.map +1 -1
  215. package/lib/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.js +0 -1
  216. package/lib/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.js.map +1 -1
  217. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.d.ts +0 -1
  218. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.d.ts.map +1 -1
  219. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.js +0 -1
  220. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.js.map +1 -1
  221. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts +0 -10
  222. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts.map +1 -1
  223. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js +0 -11
  224. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js.map +1 -1
  225. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.d.ts.map +1 -1
  226. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.js +2 -0
  227. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.js.map +1 -1
  228. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.d.ts +0 -1
  229. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.d.ts.map +1 -1
  230. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.js +0 -1
  231. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.js.map +1 -1
  232. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.d.ts +0 -1
  233. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.d.ts.map +1 -1
  234. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.js +0 -1
  235. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.js.map +1 -1
  236. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.d.ts +0 -1
  237. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.d.ts.map +1 -1
  238. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.js +0 -1
  239. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.js.map +1 -1
  240. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/milestoning/V1_Milestoning.d.ts +2 -2
  241. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/milestoning/V1_Milestoning.d.ts.map +1 -1
  242. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/milestoning/V1_Milestoning.js.map +1 -1
  243. package/lib/models/protocols/pure/v1/model/rawValueSpecification/{V1_RawInstanceValue.d.ts → V1_RawPrimitiveInstanceValue.d.ts} +4 -4
  244. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawPrimitiveInstanceValue.d.ts.map +1 -0
  245. package/lib/models/protocols/pure/v1/model/rawValueSpecification/{V1_RawInstanceValue.js → V1_RawPrimitiveInstanceValue.js} +4 -4
  246. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawPrimitiveInstanceValue.js.map +1 -0
  247. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawValueSpecification.d.ts +2 -2
  248. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawValueSpecification.d.ts.map +1 -1
  249. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawValueSpecification.js.map +1 -1
  250. package/lib/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.d.ts +0 -1
  251. package/lib/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.d.ts.map +1 -1
  252. package/lib/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.js +0 -1
  253. package/lib/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.js.map +1 -1
  254. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts +2 -1
  255. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts.map +1 -1
  256. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js.map +1 -1
  257. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MilestoningTransformer.js +3 -3
  258. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MilestoningTransformer.js.map +1 -1
  259. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.d.ts +3 -42
  260. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.d.ts.map +1 -1
  261. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.js +13 -2
  262. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.js.map +1 -1
  263. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.d.ts +2 -2
  264. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.d.ts.map +1 -1
  265. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.js +7 -7
  266. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.js.map +1 -1
  267. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.d.ts.map +1 -1
  268. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js +2 -2
  269. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js.map +1 -1
  270. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.d.ts +6 -4
  271. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.d.ts.map +1 -1
  272. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.js +22 -8
  273. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.js.map +1 -1
  274. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.d.ts +29 -2
  275. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.d.ts.map +1 -1
  276. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.js +58 -12
  277. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.js.map +1 -1
  278. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.d.ts.map +1 -1
  279. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js +4 -4
  280. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js.map +1 -1
  281. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.d.ts +1 -1
  282. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.d.ts.map +1 -1
  283. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.js +4 -3
  284. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.js.map +1 -1
  285. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts +5 -2
  286. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts.map +1 -1
  287. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js +54 -48
  288. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js.map +1 -1
  289. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.d.ts +1 -1
  290. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.d.ts.map +1 -1
  291. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.js +5 -4
  292. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.js.map +1 -1
  293. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts +1 -1
  294. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts.map +1 -1
  295. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js +16 -16
  296. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js.map +1 -1
  297. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.d.ts +1 -1
  298. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.d.ts.map +1 -1
  299. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js +7 -7
  300. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js.map +1 -1
  301. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts +1 -1
  302. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts.map +1 -1
  303. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js +5 -5
  304. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js.map +1 -1
  305. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.d.ts +2 -2
  306. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.d.ts.map +1 -1
  307. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.js +3 -3
  308. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.js.map +1 -1
  309. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.js +4 -4
  310. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.js.map +1 -1
  311. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.d.ts +1 -1
  312. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.d.ts.map +1 -1
  313. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js +9 -8
  314. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js.map +1 -1
  315. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js +2 -2
  316. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js.map +1 -1
  317. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.js +4 -4
  318. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.js.map +1 -1
  319. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.d.ts +1 -1
  320. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.d.ts.map +1 -1
  321. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.js +20 -22
  322. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.js.map +1 -1
  323. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js +5 -5
  324. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js.map +1 -1
  325. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.d.ts +11 -1
  326. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.d.ts.map +1 -1
  327. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.js +39 -24
  328. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.js.map +1 -1
  329. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts +3 -38
  330. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts.map +1 -1
  331. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js +61 -40
  332. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js.map +1 -1
  333. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.d.ts.map +1 -1
  334. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js +2 -2
  335. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js.map +1 -1
  336. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.d.ts +2 -2
  337. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.d.ts.map +1 -1
  338. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.js +5 -5
  339. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.js.map +1 -1
  340. package/lib/package.json +1 -1
  341. package/package.json +4 -4
  342. package/src/DSLMapping_Exports.ts +1 -0
  343. package/src/GraphManagerState.ts +2 -1
  344. package/src/GraphManagerTestUtils.tsx +1 -1
  345. package/src/MetaModelConst.ts +6 -4
  346. package/src/MetaModelUtils.ts +8 -0
  347. package/src/graph/BasicModel.ts +187 -81
  348. package/src/graph/DependencyManager.ts +140 -81
  349. package/src/graph/PureGraphPlugin.ts +4 -0
  350. package/src/graph/PureModel.ts +105 -108
  351. package/src/graphManager/AbstractPureGraphManager.ts +9 -7
  352. package/src/graphManager/DSLExternalFormat_GraphManagerHelper.ts +15 -5
  353. package/src/graphManager/PureGraphManagerPlugin.ts +4 -0
  354. package/src/graphManager/action/TEMPORARY__AbstractEngineConfig.ts +4 -0
  355. package/src/graphManager/action/changeDetection/DSLMapping_ObserverHelper.ts +1 -6
  356. package/src/graphManager/action/changeDetection/DomainObserverHelper.ts +4 -4
  357. package/src/graphManager/action/changeDetection/GraphObserverHelper.ts +3 -5
  358. package/src/graphManager/action/changeDetection/PackageableElementObserver.ts +1 -1
  359. package/src/graphManager/action/changeDetection/RawValueSpecificationObserver.ts +10 -7
  360. package/src/graphManager/action/changeDetection/ValueSpecificationObserver.ts +19 -24
  361. package/src/graphManager/action/execution/ExecutionResult.ts +1 -1
  362. package/src/helpers/DomainHelper.ts +148 -6
  363. package/src/helpers/MappingHelper.ts +7 -5
  364. package/src/index.ts +1 -0
  365. package/src/models/metamodels/pure/packageableElements/PackageableElement.ts +3 -10
  366. package/src/models/metamodels/pure/packageableElements/domain/Class.ts +2 -0
  367. package/src/models/metamodels/pure/packageableElements/domain/Package.ts +1 -56
  368. package/src/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.ts +2 -16
  369. package/src/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.ts +2 -16
  370. package/src/models/metamodels/pure/packageableElements/mapping/InputData.ts +0 -2
  371. package/src/models/metamodels/pure/packageableElements/mapping/Mapping.ts +0 -6
  372. package/src/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.ts +0 -2
  373. package/src/models/metamodels/pure/packageableElements/mapping/OperationSetImplementation.ts +1 -0
  374. package/src/models/metamodels/pure/packageableElements/mapping/SetImplementation.ts +9 -57
  375. package/src/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.ts +51 -0
  376. package/src/models/metamodels/pure/packageableElements/section/Section.ts +1 -6
  377. package/src/models/metamodels/pure/packageableElements/service/ServiceExecution.ts +0 -2
  378. package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.ts +6 -21
  379. package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.ts +2 -5
  380. package/src/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.ts +0 -2
  381. package/src/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.ts +0 -2
  382. package/src/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.ts +2 -0
  383. package/src/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.ts +2 -10
  384. package/src/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.ts +2 -5
  385. package/src/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.ts +0 -2
  386. package/src/models/metamodels/pure/packageableElements/store/relational/model/Table.ts +4 -4
  387. package/src/models/metamodels/pure/packageableElements/store/relational/model/View.ts +4 -4
  388. package/src/models/metamodels/pure/packageableElements/store/relational/model/milestoning/Milestoning.ts +2 -2
  389. package/src/models/metamodels/pure/rawValueSpecification/{RawInstanceValue.ts → RawPrimitiveInstanceValue.ts} +2 -2
  390. package/src/models/metamodels/pure/rawValueSpecification/RawValueSpecification.ts +4 -2
  391. package/src/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.ts +12 -9
  392. package/src/models/protocols/pure/PureProtocolProcessorPlugin.ts +4 -0
  393. package/src/models/protocols/pure/v1/V1_Core_SystemModels.json +2 -2
  394. package/src/models/protocols/pure/v1/V1_PureGraphManager.ts +101 -95
  395. package/src/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.ts +1 -1
  396. package/src/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.ts +0 -10
  397. package/src/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.ts +0 -2
  398. package/src/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.ts +0 -2
  399. package/src/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.ts +0 -7
  400. package/src/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.ts +0 -2
  401. package/src/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.ts +0 -2
  402. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.ts +0 -2
  403. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.ts +0 -12
  404. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.ts +2 -0
  405. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.ts +0 -2
  406. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.ts +0 -2
  407. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.ts +0 -2
  408. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/model/milestoning/V1_Milestoning.ts +2 -2
  409. package/src/models/protocols/pure/v1/model/rawValueSpecification/{V1_RawInstanceValue.ts → V1_RawPrimitiveInstanceValue.ts} +4 -4
  410. package/src/models/protocols/pure/v1/model/rawValueSpecification/V1_RawValueSpecification.ts +4 -2
  411. package/src/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.ts +1 -3
  412. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +1 -1
  413. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MilestoningTransformer.ts +3 -3
  414. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.ts +22 -2
  415. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.ts +9 -11
  416. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.ts +2 -4
  417. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.ts +41 -11
  418. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.ts +70 -12
  419. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.ts +13 -5
  420. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.ts +9 -8
  421. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.ts +140 -153
  422. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.ts +9 -8
  423. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.ts +35 -31
  424. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.ts +16 -14
  425. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.ts +15 -9
  426. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.ts +9 -5
  427. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.ts +7 -7
  428. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.ts +22 -13
  429. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.ts +3 -3
  430. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.ts +4 -4
  431. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.ts +22 -22
  432. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.ts +9 -9
  433. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.ts +43 -28
  434. package/src/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.ts +76 -42
  435. package/src/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.ts +2 -4
  436. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.ts +7 -7
  437. package/tsconfig.json +3 -2
  438. package/lib/models/metamodels/pure/rawValueSpecification/RawInstanceValue.d.ts.map +0 -1
  439. package/lib/models/metamodels/pure/rawValueSpecification/RawInstanceValue.js.map +0 -1
  440. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawInstanceValue.d.ts.map +0 -1
  441. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawInstanceValue.js.map +0 -1
@@ -25,38 +25,38 @@ import {
25
25
  guaranteeNonNullable,
26
26
  guaranteeType,
27
27
  returnUndefOnError,
28
- getClass,
29
28
  IllegalStateError,
30
29
  } from '@finos/legend-shared';
31
30
  import { PrimitiveType } from '../models/metamodels/pure/packageableElements/domain/PrimitiveType';
32
31
  import { Enumeration } from '../models/metamodels/pure/packageableElements/domain/Enumeration';
33
32
  import { Multiplicity } from '../models/metamodels/pure/packageableElements/domain/Multiplicity';
34
- import { Association } from '../models/metamodels/pure/packageableElements/domain/Association';
33
+ import type { Association } from '../models/metamodels/pure/packageableElements/domain/Association';
35
34
  import { Package } from '../models/metamodels/pure/packageableElements/domain/Package';
36
- import { Type } from '../models/metamodels/pure/packageableElements/domain/Type';
35
+ import type { Type } from '../models/metamodels/pure/packageableElements/domain/Type';
37
36
  import { Class } from '../models/metamodels/pure/packageableElements/domain/Class';
38
- import { Mapping } from '../models/metamodels/pure/packageableElements/mapping/Mapping';
39
- import { Profile } from '../models/metamodels/pure/packageableElements/domain/Profile';
37
+ import type { Mapping } from '../models/metamodels/pure/packageableElements/mapping/Mapping';
38
+ import type { Profile } from '../models/metamodels/pure/packageableElements/domain/Profile';
40
39
  import type { Stereotype } from '../models/metamodels/pure/packageableElements/domain/Stereotype';
41
40
  import type { Tag } from '../models/metamodels/pure/packageableElements/domain/Tag';
42
41
  import type { PackageableElement } from '../models/metamodels/pure/packageableElements/PackageableElement';
43
- import { Store } from '../models/metamodels/pure/packageableElements/store/Store';
42
+ import type { Store } from '../models/metamodels/pure/packageableElements/store/Store';
44
43
  import { DependencyManager } from '../graph/DependencyManager';
45
44
  import { ConcreteFunctionDefinition } from '../models/metamodels/pure/packageableElements/domain/ConcreteFunctionDefinition';
46
- import { Service } from '../models/metamodels/pure/packageableElements/service/Service';
45
+ import type { Service } from '../models/metamodels/pure/packageableElements/service/Service';
47
46
  import { BasicModel } from './BasicModel';
48
47
  import { FlatData } from '../models/metamodels/pure/packageableElements/store/flatData/model/FlatData';
49
48
  import { Database } from '../models/metamodels/pure/packageableElements/store/relational/model/Database';
50
- import { PackageableConnection } from '../models/metamodels/pure/packageableElements/connection/PackageableConnection';
51
- import { PackageableRuntime } from '../models/metamodels/pure/packageableElements/runtime/PackageableRuntime';
52
- import { FileGenerationSpecification } from '../models/metamodels/pure/packageableElements/fileGeneration/FileGenerationSpecification';
49
+ import type { PackageableConnection } from '../models/metamodels/pure/packageableElements/connection/PackageableConnection';
50
+ import type { PackageableRuntime } from '../models/metamodels/pure/packageableElements/runtime/PackageableRuntime';
51
+ import type { FileGenerationSpecification } from '../models/metamodels/pure/packageableElements/fileGeneration/FileGenerationSpecification';
53
52
  import { ModelStore } from '../models/metamodels/pure/packageableElements/store/modelToModel/model/ModelStore';
54
- import { GenerationSpecification } from '../models/metamodels/pure/packageableElements/generationSpecification/GenerationSpecification';
53
+ import type { GenerationSpecification } from '../models/metamodels/pure/packageableElements/generationSpecification/GenerationSpecification';
55
54
  import {
56
55
  Measure,
57
56
  Unit,
58
57
  } from '../models/metamodels/pure/packageableElements/domain/Measure';
59
58
  import type { PureGraphPlugin } from './PureGraphPlugin';
59
+ import { createPath } from '../MetaModelUtils';
60
60
 
61
61
  /**
62
62
  * CoreModel holds meta models which are constant and basic building block of the graph. Since throughout the lifetime
@@ -89,6 +89,10 @@ export class CoreModel extends BasicModel {
89
89
  this.setOwnStore(this.modelStore.path, this.modelStore);
90
90
  }
91
91
 
92
+ override get allOwnElements(): PackageableElement[] {
93
+ return [...super.allOwnElements, ...this.primitiveTypes];
94
+ }
95
+
92
96
  /**
93
97
  * NOTE: primitive types are special, they are not put in any package (i.e. they are not linked to `Root` package at all)
94
98
  */
@@ -171,8 +175,8 @@ export class GenerationModel extends BasicModel {
171
175
  * The model of Pure, a.k.a the Pure graph
172
176
  */
173
177
  export class PureModel extends BasicModel {
174
- private coreModel: CoreModel;
175
- systemModel: SystemModel;
178
+ private readonly coreModel: CoreModel;
179
+ readonly systemModel: SystemModel;
176
180
  generationModel: GenerationModel;
177
181
  dependencyManager: DependencyManager; // used to manage the elements from dependency projects
178
182
  graphPlugins: PureGraphPlugin[] = [];
@@ -197,7 +201,7 @@ export class PureModel extends BasicModel {
197
201
  return this.coreModel.modelStore;
198
202
  }
199
203
 
200
- get sectionAutoImports(): Package[] {
204
+ get autoImports(): Package[] {
201
205
  return this.systemModel.autoImports;
202
206
  }
203
207
 
@@ -205,16 +209,16 @@ export class PureModel extends BasicModel {
205
209
  return this.coreModel.primitiveTypes;
206
210
  }
207
211
 
208
- getPrimitiveType = (type: PRIMITIVE_TYPE): PrimitiveType =>
209
- guaranteeNonNullable(
210
- this.coreModel.primitiveTypesIndex.get(type),
211
- `Can't find primitive type '${type}'`,
212
- );
213
- getElement = (path: string, includePackage?: boolean): PackageableElement =>
214
- guaranteeNonNullable(
215
- this.getNullableElement(path, includePackage),
216
- `Can't find element '${path}'`,
217
- );
212
+ get allElements(): PackageableElement[] {
213
+ return [
214
+ ...this.coreModel.allOwnElements,
215
+ ...this.systemModel.allOwnElements,
216
+ ...this.dependencyManager.allOwnElements,
217
+ ...this.allOwnElements,
218
+ ...this.generationModel.allOwnElements,
219
+ ];
220
+ }
221
+
218
222
  getProfileStereotype = (
219
223
  path: string,
220
224
  value: string,
@@ -229,21 +233,27 @@ export class PureModel extends BasicModel {
229
233
  path: string,
230
234
  ): FileGenerationSpecification | undefined =>
231
235
  returnUndefOnError(() => this.getFileGeneration(path));
236
+
237
+ getPrimitiveType = (type: PRIMITIVE_TYPE): PrimitiveType =>
238
+ guaranteeNonNullable(
239
+ this.coreModel.primitiveTypesIndex.get(type),
240
+ `Can't find primitive type '${type}'`,
241
+ );
232
242
  getType = (path: string): Type =>
233
243
  guaranteeNonNullable(
234
- this.getOwnType(path) ??
235
- this.generationModel.getOwnType(path) ??
236
- this.dependencyManager.getOwnType(path) ??
237
- this.systemModel.getOwnType(path) ??
238
- this.coreModel.getOwnType(path),
244
+ this.getOwnNullableType(path) ??
245
+ this.generationModel.getOwnNullableType(path) ??
246
+ this.dependencyManager.getOwnNullableType(path) ??
247
+ this.systemModel.getOwnNullableType(path) ??
248
+ this.coreModel.getOwnNullableType(path),
239
249
  `Can't find type '${path}'`,
240
250
  );
241
251
  getProfile = (path: string): Profile =>
242
252
  guaranteeNonNullable(
243
- this.getOwnProfile(path) ??
244
- this.generationModel.getOwnProfile(path) ??
245
- this.dependencyManager.getOwnProfile(path) ??
246
- this.systemModel.getOwnProfile(path),
253
+ this.getOwnNullableProfile(path) ??
254
+ this.generationModel.getOwnNullableProfile(path) ??
255
+ this.dependencyManager.getOwnNullableProfile(path) ??
256
+ this.systemModel.getOwnNullableProfile(path),
247
257
  `Can't find profile '${path}'`,
248
258
  );
249
259
  getEnumeration = (path: string): Enumeration =>
@@ -260,28 +270,28 @@ export class PureModel extends BasicModel {
260
270
  guaranteeType(this.getType(path), Class, `Can't find class '${path}'`);
261
271
  getAssociation = (path: string): Association =>
262
272
  guaranteeNonNullable(
263
- this.getOwnAssociation(path) ??
264
- this.generationModel.getOwnAssociation(path) ??
265
- this.dependencyManager.getOwnAssociation(path) ??
266
- this.systemModel.getOwnAssociation(path),
273
+ this.getOwnNullableAssociation(path) ??
274
+ this.generationModel.getOwnNullableAssociation(path) ??
275
+ this.dependencyManager.getOwnNullableAssociation(path) ??
276
+ this.systemModel.getOwnNullableAssociation(path),
267
277
  `Can't find association '${path}'`,
268
278
  );
269
279
  getFunction = (path: string): ConcreteFunctionDefinition =>
270
280
  guaranteeType(
271
- this.getOwnFunction(path) ??
272
- this.generationModel.getOwnFunction(path) ??
273
- this.dependencyManager.getOwnFunction(path) ??
274
- this.systemModel.getOwnFunction(path),
281
+ this.getOwnNullableFunction(path) ??
282
+ this.generationModel.getOwnNullableFunction(path) ??
283
+ this.dependencyManager.getOwnNullableFunction(path) ??
284
+ this.systemModel.getOwnNullableFunction(path),
275
285
  ConcreteFunctionDefinition,
276
286
  `Can't find function '${path}'`,
277
287
  );
278
288
  getStore = (path: string): Store =>
279
289
  guaranteeNonNullable(
280
- this.getOwnStore(path) ??
281
- this.generationModel.getOwnStore(path) ??
282
- this.dependencyManager.getOwnStore(path) ??
283
- this.systemModel.getOwnStore(path) ??
284
- this.coreModel.getOwnStore(path),
290
+ this.getOwnNullableStore(path) ??
291
+ this.generationModel.getOwnNullableStore(path) ??
292
+ this.dependencyManager.getOwnNullableStore(path) ??
293
+ this.systemModel.getOwnNullableStore(path) ??
294
+ this.coreModel.getOwnNullableStore(path),
285
295
  `Can't find store '${path}'`,
286
296
  );
287
297
  getFlatDataStore = (path: string): FlatData =>
@@ -298,50 +308,50 @@ export class PureModel extends BasicModel {
298
308
  );
299
309
  getMapping = (path: string): Mapping =>
300
310
  guaranteeNonNullable(
301
- this.getOwnMapping(path) ??
302
- this.generationModel.getOwnMapping(path) ??
303
- this.dependencyManager.getOwnMapping(path) ??
304
- this.systemModel.getOwnMapping(path),
311
+ this.getOwnNullableMapping(path) ??
312
+ this.generationModel.getOwnNullableMapping(path) ??
313
+ this.dependencyManager.getOwnNullableMapping(path) ??
314
+ this.systemModel.getOwnNullableMapping(path),
305
315
  `Can't find mapping '${path}'`,
306
316
  );
307
317
  getService = (path: string): Service =>
308
318
  guaranteeNonNullable(
309
- this.getOwnService(path) ??
310
- this.generationModel.getOwnService(path) ??
311
- this.dependencyManager.getOwnService(path) ??
312
- this.systemModel.getOwnService(path),
319
+ this.getOwnNullableService(path) ??
320
+ this.generationModel.getOwnNullableService(path) ??
321
+ this.dependencyManager.getOwnNullableService(path) ??
322
+ this.systemModel.getOwnNullableService(path),
313
323
  `Can't find service '${path}'`,
314
324
  );
315
325
  getConnection = (path: string): PackageableConnection =>
316
326
  guaranteeNonNullable(
317
- this.getOwnConnection(path) ??
318
- this.generationModel.getOwnConnection(path) ??
319
- this.dependencyManager.getOwnConnection(path) ??
320
- this.systemModel.getOwnConnection(path),
327
+ this.getOwnNullableConnection(path) ??
328
+ this.generationModel.getOwnNullableConnection(path) ??
329
+ this.dependencyManager.getOwnNullableConnection(path) ??
330
+ this.systemModel.getOwnNullableConnection(path),
321
331
  `Can't find connection '${path}'`,
322
332
  );
323
333
  getRuntime = (path: string): PackageableRuntime =>
324
334
  guaranteeNonNullable(
325
- this.getOwnRuntime(path) ??
326
- this.generationModel.getOwnRuntime(path) ??
327
- this.dependencyManager.getOwnRuntime(path) ??
328
- this.systemModel.getOwnRuntime(path),
335
+ this.getOwnNullableRuntime(path) ??
336
+ this.generationModel.getOwnNullableRuntime(path) ??
337
+ this.dependencyManager.getOwnNullableRuntime(path) ??
338
+ this.systemModel.getOwnNullableRuntime(path),
329
339
  `Can't find runtime '${path}'`,
330
340
  );
331
341
  getGenerationSpecification = (path: string): GenerationSpecification =>
332
342
  guaranteeNonNullable(
333
- this.getOwnGenerationSpecification(path) ??
334
- this.generationModel.getOwnGenerationSpecification(path) ??
335
- this.dependencyManager.getOwnGenerationSpecification(path) ??
336
- this.systemModel.getOwnGenerationSpecification(path),
343
+ this.getOwnNullableGenerationSpecification(path) ??
344
+ this.generationModel.getOwnNullableGenerationSpecification(path) ??
345
+ this.dependencyManager.getOwnNullableGenerationSpecification(path) ??
346
+ this.systemModel.getOwnNullableGenerationSpecification(path),
337
347
  `Can't find generation specification '${path}'`,
338
348
  );
339
349
  getFileGeneration = (path: string): FileGenerationSpecification =>
340
350
  guaranteeNonNullable(
341
- this.getOwnFileGeneration(path) ??
342
- this.generationModel.getOwnFileGeneration(path) ??
343
- this.dependencyManager.getOwnFileGeneration(path) ??
344
- this.systemModel.getOwnFileGeneration(path),
351
+ this.getOwnNullableFileGeneration(path) ??
352
+ this.generationModel.getOwnNullableFileGeneration(path) ??
353
+ this.dependencyManager.getOwnNullableFileGeneration(path) ??
354
+ this.systemModel.getOwnNullableFileGeneration(path),
345
355
  `Can't find file generation '${path}'`,
346
356
  );
347
357
 
@@ -352,19 +362,27 @@ export class PureModel extends BasicModel {
352
362
  ): T {
353
363
  // NOTE: beware that this method will favor main graph elements over those of subgraphs when resolving
354
364
  return guaranteeNonNullable(
355
- this.getOwnExtensionElement(path, extensionElementClass) ??
356
- this.generationModel.getOwnExtensionElement(
365
+ this.getOwnNullableExtensionElement(path, extensionElementClass) ??
366
+ this.generationModel.getOwnNullableExtensionElement(
357
367
  path,
358
368
  extensionElementClass,
359
369
  ) ??
360
- this.dependencyManager.getOwnExtensionElement(
370
+ this.dependencyManager.getOwnNullableExtensionElement(
361
371
  path,
362
372
  extensionElementClass,
363
373
  ) ??
364
- this.systemModel.getOwnExtensionElement(path, extensionElementClass),
374
+ this.systemModel.getOwnNullableExtensionElement(
375
+ path,
376
+ extensionElementClass,
377
+ ),
365
378
  notFoundErrorMessage ?? `Can't find element '${path}'`,
366
379
  );
367
380
  }
381
+ getElement = (path: string, includePackage?: boolean): PackageableElement =>
382
+ guaranteeNonNullable(
383
+ this.getNullableElement(path, includePackage),
384
+ `Can't find element '${path}'`,
385
+ );
368
386
 
369
387
  getNullableElement(
370
388
  path: string,
@@ -424,43 +442,21 @@ export class PureModel extends BasicModel {
424
442
  return multiplicity ?? new Multiplicity(lowerBound, upperBound);
425
443
  }
426
444
 
427
- addElement(element: PackageableElement): void {
428
- const existingElement = this.getNullableElement(element.path);
445
+ addElement(
446
+ element: PackageableElement,
447
+ packagePath: string | undefined,
448
+ ): void {
449
+ const fullPath = createPath(packagePath ?? '', element.name);
450
+
451
+ // check for duplication first, but skip package
452
+ const existingElement = this.getNullableElement(fullPath, false);
429
453
  if (existingElement) {
430
454
  throw new IllegalStateError(
431
- `Can't create element '${element.path}': another element with the same path already existed`,
455
+ `Can't create element '${fullPath}': another element with the same path already existed`,
432
456
  );
433
457
  }
434
- if (element instanceof Mapping) {
435
- this.setOwnMapping(element.path, element);
436
- } else if (element instanceof Store) {
437
- this.setOwnStore(element.path, element);
438
- } else if (element instanceof Type) {
439
- this.setOwnType(element.path, element);
440
- } else if (element instanceof Association) {
441
- this.setOwnAssociation(element.path, element);
442
- } else if (element instanceof Profile) {
443
- this.setOwnProfile(element.path, element);
444
- } else if (element instanceof ConcreteFunctionDefinition) {
445
- this.setOwnFunction(element.path, element);
446
- } else if (element instanceof Service) {
447
- this.setOwnService(element.path, element);
448
- } else if (element instanceof PackageableConnection) {
449
- this.setOwnConnection(element.path, element);
450
- } else if (element instanceof PackageableRuntime) {
451
- this.setOwnRuntime(element.path, element);
452
- } else if (element instanceof FileGenerationSpecification) {
453
- this.setOwnFileGeneration(element.path, element);
454
- } else if (element instanceof GenerationSpecification) {
455
- this.setOwnGenerationSpecification(element.path, element);
456
- } else if (element instanceof Package) {
457
- // do nothing
458
- } else {
459
- const extension = this.getExtensionForElementClass(
460
- getClass<PackageableElement>(element),
461
- );
462
- extension.setElement(element.path, element);
463
- }
458
+
459
+ super.addOwnElement(element, packagePath);
464
460
  }
465
461
 
466
462
  deleteElement(element: PackageableElement): void {
@@ -476,7 +472,8 @@ export class PureModel extends BasicModel {
476
472
  }
477
473
 
478
474
  renameElement(element: PackageableElement, newPath: string): void {
479
- const existingElement = this.getNullableElement(newPath);
475
+ // check for duplication first, but skip package
476
+ const existingElement = this.getNullableElement(newPath, false);
480
477
  if (existingElement) {
481
478
  throw new IllegalStateError(
482
479
  `Can't rename element '${element.path}' to '${newPath}': another element with the same path already existed`,
@@ -72,10 +72,11 @@ export interface TEMPORARY__EngineSetupConfig {
72
72
  }
73
73
 
74
74
  export interface GraphBuilderOptions {
75
- // the `keepSectionIndex` flag is kept until we have stable support and enable usage of section index.
76
- TEMPORARY__keepSectionIndex?: boolean;
77
- // when we change our handling of section index, we should be able to get rid of this flag.
78
- TEMPORARY__disableRawLambdaResolver?: boolean;
75
+ /**
76
+ * This flag will be kept until we have full support for section index
77
+ * See https://github.com/finos/legend-studio/issues/1067
78
+ */
79
+ TEMPORARY__preserveSectionIndex?: boolean;
79
80
  }
80
81
 
81
82
  export interface ExecutionOptions {
@@ -393,9 +394,10 @@ export abstract class AbstractPureGraphManager {
393
394
  // As the name suggested, these methods are temporary hacks since we don't handle value-specification
394
395
  // structurally in Studio
395
396
 
396
- abstract HACKY_createGetAllLambda(_class: Class): RawLambda;
397
- abstract HACKY_createServiceTestAssertLambda(assertData: string): RawLambda;
398
- abstract HACKY_extractServiceTestAssertionData(
397
+ abstract HACKY__createGetAllLambda(_class: Class): RawLambda;
398
+ abstract HACKY__createServiceTestAssertLambda(assertData: string): RawLambda;
399
+ abstract HACKY__extractServiceTestAssertionData(
399
400
  query: RawLambda,
400
401
  ): string | undefined;
402
+ abstract HACKY__createDefaultBlankLambda(): RawLambda;
401
403
  }
@@ -14,17 +14,27 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { guaranteeType } from '@finos/legend-shared';
17
+ import { guaranteeNonNullable, guaranteeType } from '@finos/legend-shared';
18
+ import type { BasicModel } from '../graph/BasicModel';
18
19
  import type { PureModel } from '../graph/PureModel';
19
20
  import { SchemaSet } from '../models/metamodels/pure/packageableElements/externalFormat/schemaSet/DSLExternalFormat_SchemaSet';
20
21
  import { Binding } from '../models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding';
21
22
 
22
23
  export const getSchemaSet = (path: string, graph: PureModel): SchemaSet =>
23
- graph.getExtensionElement(
24
- path,
25
- SchemaSet,
26
- `Can't find schema set element '${path}'`,
24
+ graph.getExtensionElement(path, SchemaSet, `Can't find schema set '${path}'`);
25
+
26
+ export const getOwnSchemaSet = (path: string, graph: BasicModel): SchemaSet =>
27
+ guaranteeNonNullable(
28
+ graph.getOwnNullableExtensionElement(path, SchemaSet),
29
+ `Can't find schema set '${path}'`,
27
30
  );
28
31
 
29
32
  export const getBinding = (path: string, graph: PureModel): Binding =>
30
33
  guaranteeType(graph.getStore(path), Binding, `Can't find binding '${path}'`);
34
+
35
+ export const getOwnBinding = (path: string, graph: BasicModel): Binding =>
36
+ guaranteeType(
37
+ graph.getOwnNullableStore(path),
38
+ Binding,
39
+ `Can't find binding '${path}'`,
40
+ );
@@ -34,6 +34,10 @@ export type ElementObserver = (
34
34
  ) => PackageableElement | undefined;
35
35
 
36
36
  export abstract class PureGraphManagerPlugin extends AbstractPlugin {
37
+ /**
38
+ * This helps to better type-checking for this empty abtract type
39
+ * See https://github.com/finos/legend-studio/blob/master/docs/technical/typescript-usage.md#understand-typescript-structual-type-system
40
+ */
37
41
  private readonly _$nominalTypeBrand!: 'PureGraphManagerPlugin';
38
42
 
39
43
  install(pluginManager: GraphPluginManager): void {
@@ -18,6 +18,10 @@ import { action, makeObservable, observable } from 'mobx';
18
18
 
19
19
  const DEFAULT_TAB_SIZE = 2;
20
20
 
21
+ /**
22
+ * When we make application config generic, we can probably remove this
23
+ * See https://github.com/finos/legend-studio/issues/407
24
+ */
21
25
  export class TEMPORARY__AbstractEngineConfig {
22
26
  env?: string | undefined;
23
27
  tabSize = DEFAULT_TAB_SIZE;
@@ -49,11 +49,11 @@ import type {
49
49
  import type {
50
50
  SetImplementation,
51
51
  SetImplementationVisitor,
52
- TEMPORARY__UnresolvedSetImplementation,
53
52
  } from '../../../models/metamodels/pure/packageableElements/mapping/SetImplementation';
54
53
  import type { SetImplementationContainer } from '../../../models/metamodels/pure/packageableElements/mapping/SetImplementationContainer';
55
54
  import type { SetImplementationReference } from '../../../models/metamodels/pure/packageableElements/mapping/SetImplementationReference';
56
55
  import type { SubstituteStore } from '../../../models/metamodels/pure/packageableElements/mapping/SubstituteStore';
56
+ import type { TEMPORARY__UnresolvedSetImplementation } from '../../../models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation';
57
57
  import type { XStorePropertyMapping } from '../../../models/metamodels/pure/packageableElements/mapping/xStore/XStorePropertyMapping';
58
58
  import type { PackageableRuntime } from '../../../models/metamodels/pure/packageableElements/runtime/PackageableRuntime';
59
59
  import {
@@ -280,8 +280,6 @@ const observe_Abstract_SetImplementation = (
280
280
  ): void => {
281
281
  makeObservable(metamodel, {
282
282
  root: observable,
283
- parent: observable,
284
- label: computed,
285
283
  });
286
284
 
287
285
  observe_PackageableElementReference(metamodel.class);
@@ -565,7 +563,6 @@ export const observe_EnumerationMapping = skipObserved(
565
563
  makeObservable(metamodel, {
566
564
  sourceType: observable,
567
565
  enumValueMappings: observable,
568
- label: computed,
569
566
  isStub: computed,
570
567
  hashCode: computed,
571
568
  });
@@ -586,10 +583,8 @@ export const observe_AssociationImplementation = skipObservedWithContext(
586
583
  ): AssociationImplementation => {
587
584
  makeObservable(metamodel, {
588
585
  id: observable,
589
- parent: observable,
590
586
  stores: observable,
591
587
  propertyMappings: observable,
592
- label: computed,
593
588
  hashCode: computed,
594
589
  });
595
590
 
@@ -14,6 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
+ import { promisify } from '@finos/legend-shared';
17
18
  import {
18
19
  computed,
19
20
  isObservable,
@@ -60,7 +61,7 @@ import {
60
61
  skipObservedWithContext,
61
62
  type ObserverContext,
62
63
  } from './CoreObserverHelper';
63
- import { observe_PackageabElement } from './PackageableElementObserver';
64
+ import { observe_PackageableElement } from './PackageableElementObserver';
64
65
  import {
65
66
  observe_RawLambda,
66
67
  observe_RawVariableExpression,
@@ -87,7 +88,7 @@ export const observe_Package = skipObservedWithContext(
87
88
  if (child instanceof Package) {
88
89
  observe_Package(child, context);
89
90
  } else {
90
- observe_PackageabElement(child, context);
91
+ observe_PackageableElement(child, context);
91
92
  }
92
93
  });
93
94
 
@@ -110,7 +111,7 @@ export const observe_PackageTree = async (
110
111
  if (child instanceof Package) {
111
112
  await observe_PackageTree(child, context);
112
113
  } else {
113
- observe_PackageabElement(child, context);
114
+ await promisify(() => observe_PackageableElement(child, context));
114
115
  }
115
116
  }),
116
117
  );
@@ -184,7 +185,6 @@ export const observe_GenericTypeReference = skipObserved(
184
185
 
185
186
  export const observe_Section = skipObserved((metamodel: Section): Section => {
186
187
  makeObservable(metamodel, {
187
- parent: observable,
188
188
  parserName: observable,
189
189
  elements: observable,
190
190
  });
@@ -73,7 +73,6 @@ const observe_Abstract_BasicModel = async (
73
73
  ownProfiles: computed,
74
74
  ownEnumerations: computed,
75
75
  ownMeasures: computed,
76
- ownUnits: computed,
77
76
  ownClasses: computed,
78
77
  ownTypes: computed,
79
78
  ownAssociations: computed,
@@ -107,12 +106,11 @@ export const observe_DependencyManager = skipObserved(
107
106
  makeObservable(metamodel, {
108
107
  root: observable,
109
108
  projectDependencyModelsIndex: observable,
110
- allElements: computed,
111
- models: computed,
109
+ allOwnElements: computed,
110
+ dependencyGraphs: computed,
112
111
  profiles: computed,
113
112
  enumerations: computed,
114
113
  measures: computed,
115
- units: computed,
116
114
  classes: computed,
117
115
  types: computed,
118
116
  associations: computed,
@@ -129,7 +127,7 @@ export const observe_DependencyManager = skipObserved(
129
127
  }),
130
128
  );
131
129
 
132
- export const observe_PureModel = async (
130
+ export const observe_Graph = async (
133
131
  metamodel: PureModel,
134
132
  context: ObserverContext,
135
133
  ): Promise<PureModel> => {
@@ -152,7 +152,7 @@ class PackageableElementObserver implements PackageableElementVisitor<void> {
152
152
  }
153
153
  }
154
154
 
155
- export const observe_PackageabElement = skipObservedWithContext(
155
+ export const observe_PackageableElement = skipObservedWithContext(
156
156
  (
157
157
  packageableElement: PackageableElement,
158
158
  context: ObserverContext,
@@ -15,7 +15,7 @@
15
15
  */
16
16
 
17
17
  import { computed, makeObservable, observable } from 'mobx';
18
- import type { RawInstanceValue } from '../../../models/metamodels/pure/rawValueSpecification/RawInstanceValue';
18
+ import type { RawPrimitiveInstanceValue } from '../../../models/metamodels/pure/rawValueSpecification/RawPrimitiveInstanceValue';
19
19
  import type { RawLambda } from '../../../models/metamodels/pure/rawValueSpecification/RawLambda';
20
20
  import type {
21
21
  RawValueSpecification,
@@ -30,12 +30,13 @@ import {
30
30
  type ObserverContext,
31
31
  } from './CoreObserverHelper';
32
32
 
33
- export const observe_RawInstanceValue = skipObserved(
34
- (metamodel: RawInstanceValue): RawInstanceValue => {
33
+ export const observe_RawPrimitiveInstanceValue = skipObserved(
34
+ (metamodel: RawPrimitiveInstanceValue): RawPrimitiveInstanceValue => {
35
35
  makeObservable(metamodel, {
36
36
  multiplicity: observable,
37
- // TODO: check if we need this
38
- // values: observable.ref,
37
+ // NOTE: we're being defensive here, technically, since the values
38
+ // are all of primitive types, it's safe to just use `observable`
39
+ values: observable.shallow,
39
40
  hashCode: computed,
40
41
  });
41
42
 
@@ -89,8 +90,10 @@ class RawValueSpecificationObserver
89
90
  observe_RawVariableExpression(valueSpecification);
90
91
  }
91
92
 
92
- visit_RawInstanceValue(valueSpecification: RawInstanceValue): void {
93
- observe_RawInstanceValue(valueSpecification);
93
+ visit_RawPrimitiveInstanceValue(
94
+ valueSpecification: RawPrimitiveInstanceValue,
95
+ ): void {
96
+ observe_RawPrimitiveInstanceValue(valueSpecification);
94
97
  }
95
98
  }
96
99