@finos/legend-graph 4.0.1 → 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 (470) 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 -25
  19. package/lib/graph/BasicModel.d.ts.map +1 -1
  20. package/lib/graph/BasicModel.js +107 -54
  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 +88 -55
  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 +1 -1
  53. package/lib/graphManager/action/changeDetection/DomainObserverHelper.d.ts.map +1 -1
  54. package/lib/graphManager/action/changeDetection/DomainObserverHelper.js +9 -8
  55. package/lib/graphManager/action/changeDetection/DomainObserverHelper.js.map +1 -1
  56. package/lib/graphManager/action/changeDetection/GraphObserverHelper.d.ts +1 -1
  57. package/lib/graphManager/action/changeDetection/GraphObserverHelper.d.ts.map +1 -1
  58. package/lib/graphManager/action/changeDetection/GraphObserverHelper.js +3 -5
  59. package/lib/graphManager/action/changeDetection/GraphObserverHelper.js.map +1 -1
  60. package/lib/graphManager/action/changeDetection/PackageableElementObserver.d.ts +1 -1
  61. package/lib/graphManager/action/changeDetection/PackageableElementObserver.d.ts.map +1 -1
  62. package/lib/graphManager/action/changeDetection/PackageableElementObserver.js +1 -1
  63. package/lib/graphManager/action/changeDetection/PackageableElementObserver.js.map +1 -1
  64. package/lib/graphManager/action/changeDetection/RawValueSpecificationObserver.d.ts +2 -2
  65. package/lib/graphManager/action/changeDetection/RawValueSpecificationObserver.d.ts.map +1 -1
  66. package/lib/graphManager/action/changeDetection/RawValueSpecificationObserver.js +6 -5
  67. package/lib/graphManager/action/changeDetection/RawValueSpecificationObserver.js.map +1 -1
  68. package/lib/graphManager/action/changeDetection/StoreFlatData_ObserverHelper.d.ts.map +1 -1
  69. package/lib/graphManager/action/changeDetection/StoreFlatData_ObserverHelper.js +2 -6
  70. package/lib/graphManager/action/changeDetection/StoreFlatData_ObserverHelper.js.map +1 -1
  71. package/lib/graphManager/action/changeDetection/StoreRelational_ObserverHelper.d.ts.map +1 -1
  72. package/lib/graphManager/action/changeDetection/StoreRelational_ObserverHelper.js +0 -2
  73. package/lib/graphManager/action/changeDetection/StoreRelational_ObserverHelper.js.map +1 -1
  74. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.d.ts +7 -6
  75. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.d.ts.map +1 -1
  76. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.js +153 -32
  77. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.js.map +1 -1
  78. package/lib/graphManager/action/execution/ExecutionResult.d.ts +1 -1
  79. package/lib/graphManager/action/execution/ExecutionResult.d.ts.map +1 -1
  80. package/lib/graphManager/action/execution/ExecutionResult.js.map +1 -1
  81. package/lib/helpers/DomainHelper.d.ts +7 -3
  82. package/lib/helpers/DomainHelper.d.ts.map +1 -1
  83. package/lib/helpers/DomainHelper.js +78 -5
  84. package/lib/helpers/DomainHelper.js.map +1 -1
  85. package/lib/helpers/MappingHelper.d.ts.map +1 -1
  86. package/lib/helpers/MappingHelper.js +2 -2
  87. package/lib/helpers/MappingHelper.js.map +1 -1
  88. package/lib/index.d.ts +5 -0
  89. package/lib/index.d.ts.map +1 -1
  90. package/lib/index.js +5 -0
  91. package/lib/index.js.map +1 -1
  92. package/lib/models/metamodels/pure/packageableElements/PackageableElement.d.ts +1 -7
  93. package/lib/models/metamodels/pure/packageableElements/PackageableElement.d.ts.map +1 -1
  94. package/lib/models/metamodels/pure/packageableElements/PackageableElement.js +2 -8
  95. package/lib/models/metamodels/pure/packageableElements/PackageableElement.js.map +1 -1
  96. package/lib/models/metamodels/pure/packageableElements/domain/Association.d.ts +3 -3
  97. package/lib/models/metamodels/pure/packageableElements/domain/Association.js +3 -3
  98. package/lib/models/metamodels/pure/packageableElements/domain/Class.d.ts.map +1 -1
  99. package/lib/models/metamodels/pure/packageableElements/domain/Class.js +2 -0
  100. package/lib/models/metamodels/pure/packageableElements/domain/Class.js.map +1 -1
  101. package/lib/models/metamodels/pure/packageableElements/domain/Package.d.ts +0 -7
  102. package/lib/models/metamodels/pure/packageableElements/domain/Package.d.ts.map +1 -1
  103. package/lib/models/metamodels/pure/packageableElements/domain/Package.js +1 -32
  104. package/lib/models/metamodels/pure/packageableElements/domain/Package.js.map +1 -1
  105. package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.d.ts +2 -3
  106. package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.d.ts.map +1 -1
  107. package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.js +1 -12
  108. package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.js.map +1 -1
  109. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.d.ts +2 -3
  110. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.d.ts.map +1 -1
  111. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js +0 -11
  112. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js.map +1 -1
  113. package/lib/models/metamodels/pure/packageableElements/mapping/InputData.d.ts +0 -1
  114. package/lib/models/metamodels/pure/packageableElements/mapping/InputData.d.ts.map +1 -1
  115. package/lib/models/metamodels/pure/packageableElements/mapping/InputData.js +0 -1
  116. package/lib/models/metamodels/pure/packageableElements/mapping/InputData.js.map +1 -1
  117. package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.d.ts +0 -5
  118. package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.d.ts.map +1 -1
  119. package/lib/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.d.ts +0 -1
  120. package/lib/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.d.ts.map +1 -1
  121. package/lib/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.js +0 -1
  122. package/lib/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.js.map +1 -1
  123. package/lib/models/metamodels/pure/packageableElements/mapping/OperationSetImplementation.d.ts.map +1 -1
  124. package/lib/models/metamodels/pure/packageableElements/mapping/OperationSetImplementation.js +1 -0
  125. package/lib/models/metamodels/pure/packageableElements/mapping/OperationSetImplementation.js.map +1 -1
  126. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.d.ts +7 -21
  127. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.d.ts.map +1 -1
  128. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.js +3 -37
  129. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.js.map +1 -1
  130. package/lib/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.d.ts +32 -0
  131. package/lib/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.d.ts.map +1 -0
  132. package/lib/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.js +40 -0
  133. package/lib/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.js.map +1 -0
  134. package/lib/models/metamodels/pure/packageableElements/section/Section.d.ts +1 -5
  135. package/lib/models/metamodels/pure/packageableElements/section/Section.d.ts.map +1 -1
  136. package/lib/models/metamodels/pure/packageableElements/section/Section.js +0 -5
  137. package/lib/models/metamodels/pure/packageableElements/section/Section.js.map +1 -1
  138. package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.d.ts +0 -1
  139. package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.d.ts.map +1 -1
  140. package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.js +0 -1
  141. package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.js.map +1 -1
  142. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts +4 -4
  143. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts.map +1 -1
  144. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js +3 -12
  145. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js.map +1 -1
  146. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.d.ts.map +1 -1
  147. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.js +2 -2
  148. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.js.map +1 -1
  149. package/lib/models/metamodels/pure/packageableElements/store/flatData/model/FlatDataDataType.d.ts +1 -1
  150. package/lib/models/metamodels/pure/packageableElements/store/flatData/model/FlatDataDataType.js +1 -1
  151. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.d.ts +0 -1
  152. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.d.ts.map +1 -1
  153. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.js +0 -1
  154. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.js.map +1 -1
  155. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts +0 -1
  156. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts.map +1 -1
  157. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.js +0 -1
  158. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.js.map +1 -1
  159. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.d.ts.map +1 -1
  160. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.js +2 -0
  161. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.js.map +1 -1
  162. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts +4 -4
  163. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts.map +1 -1
  164. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.js +2 -7
  165. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.js.map +1 -1
  166. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.d.ts.map +1 -1
  167. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.js +2 -2
  168. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.js.map +1 -1
  169. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.d.ts +0 -1
  170. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.d.ts.map +1 -1
  171. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.js +1 -3
  172. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.js.map +1 -1
  173. package/lib/models/metamodels/pure/packageableElements/store/relational/model/Table.d.ts.map +1 -1
  174. package/lib/models/metamodels/pure/packageableElements/store/relational/model/Table.js +4 -2
  175. package/lib/models/metamodels/pure/packageableElements/store/relational/model/Table.js.map +1 -1
  176. package/lib/models/metamodels/pure/packageableElements/store/relational/model/View.d.ts.map +1 -1
  177. package/lib/models/metamodels/pure/packageableElements/store/relational/model/View.js +4 -2
  178. package/lib/models/metamodels/pure/packageableElements/store/relational/model/View.js.map +1 -1
  179. package/lib/models/metamodels/pure/packageableElements/store/relational/model/milestoning/Milestoning.d.ts +2 -2
  180. package/lib/models/metamodels/pure/packageableElements/store/relational/model/milestoning/Milestoning.d.ts.map +1 -1
  181. package/lib/models/metamodels/pure/packageableElements/store/relational/model/milestoning/Milestoning.js.map +1 -1
  182. package/lib/models/metamodels/pure/rawValueSpecification/{RawInstanceValue.d.ts → RawPrimitiveInstanceValue.d.ts} +2 -2
  183. package/lib/models/metamodels/pure/rawValueSpecification/RawPrimitiveInstanceValue.d.ts.map +1 -0
  184. package/lib/models/metamodels/pure/rawValueSpecification/{RawInstanceValue.js → RawPrimitiveInstanceValue.js} +3 -3
  185. package/lib/models/metamodels/pure/rawValueSpecification/RawPrimitiveInstanceValue.js.map +1 -0
  186. package/lib/models/metamodels/pure/rawValueSpecification/RawValueSpecification.d.ts +2 -2
  187. package/lib/models/metamodels/pure/rawValueSpecification/RawValueSpecification.d.ts.map +1 -1
  188. package/lib/models/metamodels/pure/rawValueSpecification/RawValueSpecification.js.map +1 -1
  189. package/lib/models/metamodels/pure/valueSpecification/InstanceValue.js +2 -2
  190. package/lib/models/metamodels/pure/valueSpecification/InstanceValue.js.map +1 -1
  191. package/lib/models/metamodels/pure/valueSpecification/ValueSpecification.d.ts +1 -1
  192. package/lib/models/metamodels/pure/valueSpecification/ValueSpecification.d.ts.map +1 -1
  193. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.d.ts.map +1 -1
  194. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js +8 -7
  195. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js.map +1 -1
  196. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts +4 -0
  197. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts.map +1 -1
  198. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.js +4 -0
  199. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.js.map +1 -1
  200. package/lib/models/protocols/pure/v1/V1_Core_SystemModels.json +2 -2
  201. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts +5 -4
  202. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
  203. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js +74 -52
  204. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js.map +1 -1
  205. package/lib/models/protocols/pure/v1/engine/V1_Engine.js +3 -3
  206. package/lib/models/protocols/pure/v1/engine/V1_Engine.js.map +1 -1
  207. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.d.ts.map +1 -1
  208. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.d.ts +0 -1
  209. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.d.ts.map +1 -1
  210. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.js +1 -1
  211. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.js.map +1 -1
  212. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.d.ts +0 -9
  213. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.d.ts.map +1 -1
  214. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.js +0 -10
  215. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.js.map +1 -1
  216. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.d.ts +0 -1
  217. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.d.ts.map +1 -1
  218. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.js +0 -1
  219. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.js.map +1 -1
  220. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.d.ts +0 -1
  221. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.d.ts.map +1 -1
  222. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.js +0 -1
  223. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.js.map +1 -1
  224. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.d.ts +0 -5
  225. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.d.ts.map +1 -1
  226. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.js +0 -6
  227. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.js.map +1 -1
  228. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.d.ts +0 -1
  229. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.d.ts.map +1 -1
  230. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.js +0 -1
  231. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.js.map +1 -1
  232. package/lib/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.d.ts +0 -1
  233. package/lib/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.d.ts.map +1 -1
  234. package/lib/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.js +0 -1
  235. package/lib/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.js.map +1 -1
  236. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.d.ts +0 -1
  237. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.d.ts.map +1 -1
  238. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.js +0 -1
  239. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.js.map +1 -1
  240. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts +0 -10
  241. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts.map +1 -1
  242. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js +0 -11
  243. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js.map +1 -1
  244. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.d.ts.map +1 -1
  245. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.js +2 -0
  246. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.js.map +1 -1
  247. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.d.ts +0 -1
  248. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.d.ts.map +1 -1
  249. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.js +0 -1
  250. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.js.map +1 -1
  251. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.d.ts +0 -1
  252. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.d.ts.map +1 -1
  253. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.js +0 -1
  254. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.js.map +1 -1
  255. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.d.ts +0 -1
  256. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.d.ts.map +1 -1
  257. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.js +0 -1
  258. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.js.map +1 -1
  259. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/milestoning/V1_Milestoning.d.ts +2 -2
  260. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/milestoning/V1_Milestoning.d.ts.map +1 -1
  261. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/milestoning/V1_Milestoning.js.map +1 -1
  262. package/lib/models/protocols/pure/v1/model/rawValueSpecification/{V1_RawInstanceValue.d.ts → V1_RawPrimitiveInstanceValue.d.ts} +4 -4
  263. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawPrimitiveInstanceValue.d.ts.map +1 -0
  264. package/lib/models/protocols/pure/v1/model/rawValueSpecification/{V1_RawInstanceValue.js → V1_RawPrimitiveInstanceValue.js} +4 -4
  265. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawPrimitiveInstanceValue.js.map +1 -0
  266. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawValueSpecification.d.ts +2 -2
  267. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawValueSpecification.d.ts.map +1 -1
  268. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawValueSpecification.js.map +1 -1
  269. package/lib/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.d.ts +0 -1
  270. package/lib/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.d.ts.map +1 -1
  271. package/lib/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.js +0 -1
  272. package/lib/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.js.map +1 -1
  273. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_DatabaseTransformer.js +2 -2
  274. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_DatabaseTransformer.js.map +1 -1
  275. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts +2 -1
  276. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts.map +1 -1
  277. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js.map +1 -1
  278. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MilestoningTransformer.js +3 -3
  279. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MilestoningTransformer.js.map +1 -1
  280. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.d.ts +3 -42
  281. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.d.ts.map +1 -1
  282. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.js +13 -2
  283. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.js.map +1 -1
  284. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.d.ts +2 -2
  285. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.d.ts.map +1 -1
  286. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.js +7 -7
  287. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.js.map +1 -1
  288. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.d.ts.map +1 -1
  289. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js +3 -3
  290. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js.map +1 -1
  291. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.d.ts +6 -4
  292. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.d.ts.map +1 -1
  293. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.js +22 -8
  294. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.js.map +1 -1
  295. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.d.ts +29 -2
  296. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.d.ts.map +1 -1
  297. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.js +58 -12
  298. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.js.map +1 -1
  299. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.d.ts.map +1 -1
  300. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js +4 -4
  301. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js.map +1 -1
  302. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.d.ts +1 -1
  303. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.d.ts.map +1 -1
  304. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.js +4 -3
  305. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.js.map +1 -1
  306. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts +5 -2
  307. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts.map +1 -1
  308. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js +54 -48
  309. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js.map +1 -1
  310. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.d.ts +1 -1
  311. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.d.ts.map +1 -1
  312. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.js +5 -4
  313. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.js.map +1 -1
  314. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts +1 -1
  315. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts.map +1 -1
  316. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js +16 -16
  317. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js.map +1 -1
  318. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.d.ts +1 -1
  319. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.d.ts.map +1 -1
  320. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js +7 -7
  321. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js.map +1 -1
  322. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts +1 -1
  323. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts.map +1 -1
  324. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js +5 -5
  325. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js.map +1 -1
  326. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.d.ts +2 -2
  327. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.d.ts.map +1 -1
  328. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.js +3 -3
  329. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.js.map +1 -1
  330. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.js +4 -4
  331. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.js.map +1 -1
  332. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.d.ts +1 -1
  333. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.d.ts.map +1 -1
  334. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js +9 -8
  335. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js.map +1 -1
  336. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js +2 -2
  337. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js.map +1 -1
  338. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.js +4 -4
  339. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.js.map +1 -1
  340. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.d.ts +1 -1
  341. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.d.ts.map +1 -1
  342. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.js +20 -22
  343. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.js.map +1 -1
  344. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js +5 -5
  345. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js.map +1 -1
  346. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.d.ts +11 -1
  347. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.d.ts.map +1 -1
  348. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.js +39 -24
  349. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.js.map +1 -1
  350. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts +3 -38
  351. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts.map +1 -1
  352. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js +61 -40
  353. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js.map +1 -1
  354. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.d.ts.map +1 -1
  355. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js +2 -2
  356. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js.map +1 -1
  357. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.d.ts +2 -2
  358. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.d.ts.map +1 -1
  359. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.js +5 -5
  360. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.js.map +1 -1
  361. package/lib/package.json +1 -1
  362. package/package.json +4 -4
  363. package/src/DSLMapping_Exports.ts +1 -0
  364. package/src/GraphManagerState.ts +2 -1
  365. package/src/GraphManagerTestUtils.tsx +1 -1
  366. package/src/MetaModelConst.ts +6 -4
  367. package/src/MetaModelUtils.ts +8 -0
  368. package/src/graph/BasicModel.ts +188 -83
  369. package/src/graph/DependencyManager.ts +141 -82
  370. package/src/graph/PureGraphPlugin.ts +4 -0
  371. package/src/graph/PureModel.ts +105 -108
  372. package/src/graphManager/AbstractPureGraphManager.ts +9 -7
  373. package/src/graphManager/DSLExternalFormat_GraphManagerHelper.ts +15 -5
  374. package/src/graphManager/PureGraphManagerPlugin.ts +4 -0
  375. package/src/graphManager/action/TEMPORARY__AbstractEngineConfig.ts +4 -0
  376. package/src/graphManager/action/changeDetection/DSLMapping_ObserverHelper.ts +1 -6
  377. package/src/graphManager/action/changeDetection/DomainObserverHelper.ts +13 -12
  378. package/src/graphManager/action/changeDetection/GraphObserverHelper.ts +3 -5
  379. package/src/graphManager/action/changeDetection/PackageableElementObserver.ts +1 -1
  380. package/src/graphManager/action/changeDetection/RawValueSpecificationObserver.ts +10 -7
  381. package/src/graphManager/action/changeDetection/StoreFlatData_ObserverHelper.ts +4 -5
  382. package/src/graphManager/action/changeDetection/StoreRelational_ObserverHelper.ts +0 -2
  383. package/src/graphManager/action/changeDetection/ValueSpecificationObserver.ts +269 -55
  384. package/src/graphManager/action/execution/ExecutionResult.ts +1 -1
  385. package/src/helpers/DomainHelper.ts +148 -6
  386. package/src/helpers/MappingHelper.ts +7 -5
  387. package/src/index.ts +8 -0
  388. package/src/models/metamodels/pure/packageableElements/PackageableElement.ts +3 -10
  389. package/src/models/metamodels/pure/packageableElements/domain/Association.ts +3 -3
  390. package/src/models/metamodels/pure/packageableElements/domain/Class.ts +2 -0
  391. package/src/models/metamodels/pure/packageableElements/domain/Package.ts +1 -56
  392. package/src/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.ts +2 -16
  393. package/src/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.ts +2 -16
  394. package/src/models/metamodels/pure/packageableElements/mapping/InputData.ts +0 -2
  395. package/src/models/metamodels/pure/packageableElements/mapping/Mapping.ts +0 -6
  396. package/src/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.ts +0 -2
  397. package/src/models/metamodels/pure/packageableElements/mapping/OperationSetImplementation.ts +1 -0
  398. package/src/models/metamodels/pure/packageableElements/mapping/SetImplementation.ts +9 -57
  399. package/src/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.ts +51 -0
  400. package/src/models/metamodels/pure/packageableElements/section/Section.ts +1 -6
  401. package/src/models/metamodels/pure/packageableElements/service/ServiceExecution.ts +0 -2
  402. package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.ts +6 -21
  403. package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.ts +2 -5
  404. package/src/models/metamodels/pure/packageableElements/store/flatData/model/FlatDataDataType.ts +1 -1
  405. package/src/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.ts +0 -2
  406. package/src/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.ts +0 -2
  407. package/src/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.ts +2 -0
  408. package/src/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.ts +4 -10
  409. package/src/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.ts +2 -5
  410. package/src/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.ts +1 -4
  411. package/src/models/metamodels/pure/packageableElements/store/relational/model/Table.ts +4 -4
  412. package/src/models/metamodels/pure/packageableElements/store/relational/model/View.ts +4 -4
  413. package/src/models/metamodels/pure/packageableElements/store/relational/model/milestoning/Milestoning.ts +2 -2
  414. package/src/models/metamodels/pure/rawValueSpecification/{RawInstanceValue.ts → RawPrimitiveInstanceValue.ts} +2 -2
  415. package/src/models/metamodels/pure/rawValueSpecification/RawValueSpecification.ts +4 -2
  416. package/src/models/metamodels/pure/valueSpecification/InstanceValue.ts +2 -2
  417. package/src/models/metamodels/pure/valueSpecification/ValueSpecification.ts +1 -1
  418. package/src/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.ts +12 -9
  419. package/src/models/protocols/pure/PureProtocolProcessorPlugin.ts +4 -0
  420. package/src/models/protocols/pure/v1/V1_Core_SystemModels.json +2 -2
  421. package/src/models/protocols/pure/v1/V1_PureGraphManager.ts +112 -95
  422. package/src/models/protocols/pure/v1/engine/V1_Engine.ts +3 -3
  423. package/src/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.ts +1 -1
  424. package/src/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.ts +0 -10
  425. package/src/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.ts +0 -2
  426. package/src/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.ts +0 -2
  427. package/src/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.ts +0 -7
  428. package/src/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.ts +0 -2
  429. package/src/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.ts +0 -2
  430. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.ts +0 -2
  431. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.ts +0 -12
  432. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.ts +2 -0
  433. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.ts +0 -2
  434. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.ts +0 -2
  435. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.ts +0 -2
  436. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/model/milestoning/V1_Milestoning.ts +2 -2
  437. package/src/models/protocols/pure/v1/model/rawValueSpecification/{V1_RawInstanceValue.ts → V1_RawPrimitiveInstanceValue.ts} +4 -4
  438. package/src/models/protocols/pure/v1/model/rawValueSpecification/V1_RawValueSpecification.ts +4 -2
  439. package/src/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.ts +1 -3
  440. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_DatabaseTransformer.ts +2 -2
  441. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +1 -1
  442. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MilestoningTransformer.ts +3 -3
  443. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.ts +22 -2
  444. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.ts +9 -11
  445. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.ts +3 -5
  446. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.ts +41 -11
  447. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.ts +70 -12
  448. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.ts +13 -5
  449. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.ts +9 -8
  450. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.ts +140 -153
  451. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.ts +9 -8
  452. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.ts +35 -31
  453. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.ts +16 -14
  454. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.ts +15 -9
  455. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.ts +9 -5
  456. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.ts +7 -7
  457. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.ts +22 -13
  458. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.ts +3 -3
  459. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.ts +4 -4
  460. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.ts +22 -22
  461. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.ts +9 -9
  462. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.ts +43 -28
  463. package/src/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.ts +76 -42
  464. package/src/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.ts +2 -4
  465. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.ts +7 -7
  466. package/tsconfig.json +3 -2
  467. package/lib/models/metamodels/pure/rawValueSpecification/RawInstanceValue.d.ts.map +0 -1
  468. package/lib/models/metamodels/pure/rawValueSpecification/RawInstanceValue.js.map +0 -1
  469. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawInstanceValue.d.ts.map +0 -1
  470. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawInstanceValue.js.map +0 -1
@@ -37,6 +37,7 @@ import {
37
37
  type ActionState,
38
38
  StopWatch,
39
39
  assertNonEmptyString,
40
+ filterByType,
40
41
  } from '@finos/legend-shared';
41
42
  import type { TEMPORARY__AbstractEngineConfig } from '../../../../graphManager/action/TEMPORARY__AbstractEngineConfig';
42
43
  import {
@@ -91,7 +92,7 @@ import {
91
92
  V1_deserializeValueSpecification,
92
93
  } from './transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer';
93
94
  import V1_CORE_SYSTEM_MODELS from './V1_Core_SystemModels.json';
94
- import { V1_PackageableElementSerializer } from './transformation/pureProtocol/V1_PackageableElementSerialization';
95
+ import { V1_serializePackageableElement } from './transformation/pureProtocol/V1_PackageableElementSerialization';
95
96
  import {
96
97
  V1_entitiesToPureModelContextData,
97
98
  V1_serializePureModelContext,
@@ -118,7 +119,7 @@ import {
118
119
  } from './transformation/pureGraph/to/V1_GraphBuilderContext';
119
120
  import { V1_PureModelContextPointer } from './model/context/V1_PureModelContextPointer';
120
121
  import { V1_Engine } from './engine/V1_Engine';
121
- import { V1_PackageableElementTransformer } from './transformation/pureGraph/from/V1_PackageableElementTransformer';
122
+ import { V1_transformPackageableElement } from './transformation/pureGraph/from/V1_PackageableElementTransformer';
122
123
  import {
123
124
  V1_transformRawLambda,
124
125
  V1_RawValueSpecificationTransformer,
@@ -233,6 +234,7 @@ import { V1_SERVICE_ELEMENT_PROTOCOL_TYPE } from './transformation/pureProtocol/
233
234
  import { MappingInclude } from '../../../metamodels/pure/packageableElements/mapping/MappingInclude';
234
235
  import type { ModelGenerationConfiguration } from '../../../ModelGenerationConfiguration';
235
236
  import type { MappingGeneration_PureProtocolProcessorPlugin_Extension } from '../MappingGeneration_PureProtocolProcessorPlugin_Extension';
237
+ import type { Package } from '../../../metamodels/pure/packageableElements/domain/Package';
236
238
 
237
239
  const V1_FUNCTION_SUFFIX_MULTIPLICITY_INFINITE = 'MANY';
238
240
 
@@ -527,6 +529,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
527
529
  graphBuilderState.fail();
528
530
  this.log.error(
529
531
  LogEvent.create(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_FAILURE),
532
+ error,
530
533
  );
531
534
  throw new SystemGraphBuilderError(error);
532
535
  } finally {
@@ -581,12 +584,12 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
581
584
  const buildInputs: V1_GraphBuilderInput[] = Array.from(
582
585
  dependencyDataMap.entries(),
583
586
  ).map(([dependencyKey, dependencyData]) => ({
587
+ model: graph.dependencyManager.getModel(dependencyKey),
584
588
  data: indexPureModelContextData(
585
589
  report,
586
590
  dependencyData,
587
591
  this.extensions,
588
592
  ),
589
- model: graph.dependencyManager.getModel(dependencyKey),
590
593
  }));
591
594
 
592
595
  // build
@@ -610,6 +613,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
610
613
  assertErrorThrown(error);
611
614
  this.log.error(
612
615
  LogEvent.create(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_FAILURE),
616
+ error,
613
617
  );
614
618
  graphBuilderState.fail();
615
619
  throw new DependencyGraphBuilderError(error);
@@ -662,7 +666,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
662
666
  * but when we write (serialize) we write only resolved paths. In the future once the issue with dependency is solved we will
663
667
  * perserve the element path both resolved and unresolved
664
668
  */
665
- if (!options?.TEMPORARY__keepSectionIndex) {
669
+ if (!options?.TEMPORARY__preserveSectionIndex) {
666
670
  graph.TEMPORARY__deleteOwnSectionIndex();
667
671
  }
668
672
 
@@ -676,6 +680,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
676
680
  assertErrorThrown(error);
677
681
  this.log.error(
678
682
  LogEvent.create(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_FAILURE),
683
+ error,
679
684
  );
680
685
  graphBuilderState.fail();
681
686
  /**
@@ -721,17 +726,12 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
721
726
  stopWatch.record(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_ELEMENTS_DESERIALIZED);
722
727
 
723
728
  // prepare build inputs
724
- const buildInputs = Array.from(generatedDataMap.entries()).map(
725
- ([generationParentPath, generatedData]) => ({
726
- parentElementPath: generationParentPath,
727
- data: indexPureModelContextData(
728
- report,
729
- generatedData,
730
- this.extensions,
731
- ),
732
- model: generatedModel,
733
- }),
734
- );
729
+ const buildInputs: V1_GraphBuilderInput[] = Array.from(
730
+ generatedDataMap.entries(),
731
+ ).map(([generationParentPath, generatedData]) => ({
732
+ model: generatedModel,
733
+ data: indexPureModelContextData(report, generatedData, this.extensions),
734
+ }));
735
735
 
736
736
  // build
737
737
  await this.buildGraphFromInputs(
@@ -754,6 +754,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
754
754
  assertErrorThrown(error);
755
755
  this.log.error(
756
756
  LogEvent.create(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_FAILURE),
757
+ error,
757
758
  );
758
759
  graphBuilderState.fail();
759
760
  /**
@@ -853,25 +854,37 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
853
854
  inputs: V1_GraphBuilderInput[],
854
855
  options?: GraphBuilderOptions,
855
856
  ): Promise<void> {
857
+ // create the element path cache for faster duplication check
858
+ // NOTE: We base on the assumption here that our graph building is cascading, i.e.
859
+ // it first builds core, system, dependencies, graph, and generation.
860
+ // this way, as we build the a graph, we know the next step's duplication check
861
+ // has path cache consisting of all element from its base graphs
862
+ const elementPathCache = new Set<string>(
863
+ graph.allElements.map((el) => el.path),
864
+ );
865
+
856
866
  await Promise.all(
857
- inputs.flatMap((input) =>
858
- input.data.nativeElements.map((element) =>
859
- this.visitWithErrorHandling(
860
- element,
861
- new V1_ProtocolToMetaModelGraphFirstPassBuilder(
862
- this.getBuilderContext(graph, input.model, element, options),
867
+ inputs.flatMap(async (input) => {
868
+ // create the package cache
869
+ const packageCache = new Map<string, Package>();
870
+
871
+ await Promise.all(
872
+ input.data.nativeElements.map((element) =>
873
+ this.visitWithGraphBuilderErrorHandling(
874
+ element,
875
+ new V1_ProtocolToMetaModelGraphFirstPassBuilder(
876
+ this.getBuilderContext(graph, input.model, element, options),
877
+ packageCache,
878
+ elementPathCache,
879
+ ),
863
880
  ),
864
881
  ),
865
- ),
866
- ),
867
- );
868
- await Promise.all(
869
- this.extensions.sortedExtraElementBuilders.map(async (builder) => {
882
+ );
870
883
  await Promise.all(
871
- inputs.flatMap((input) =>
884
+ this.extensions.sortedExtraElementBuilders.flatMap(async (builder) =>
872
885
  (input.data.otherElementsByBuilder.get(builder) ?? []).map(
873
886
  (element) =>
874
- this.visitWithErrorHandling(
887
+ this.visitWithGraphBuilderErrorHandling(
875
888
  element,
876
889
  new V1_ProtocolToMetaModelGraphFirstPassBuilder(
877
890
  this.getBuilderContext(
@@ -880,6 +893,8 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
880
893
  element,
881
894
  options,
882
895
  ),
896
+ packageCache,
897
+ elementPathCache,
883
898
  ),
884
899
  ),
885
900
  ),
@@ -898,7 +913,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
898
913
  await Promise.all(
899
914
  inputs.flatMap((input) =>
900
915
  input.data.profiles.map((element) =>
901
- this.visitWithErrorHandling(
916
+ this.visitWithGraphBuilderErrorHandling(
902
917
  element,
903
918
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
904
919
  this.getBuilderContext(graph, input.model, element, options),
@@ -910,7 +925,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
910
925
  await Promise.all(
911
926
  inputs.flatMap((input) =>
912
927
  input.data.classes.map((element) =>
913
- this.visitWithErrorHandling(
928
+ this.visitWithGraphBuilderErrorHandling(
914
929
  element,
915
930
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
916
931
  this.getBuilderContext(graph, input.model, element, options),
@@ -922,7 +937,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
922
937
  await Promise.all(
923
938
  inputs.flatMap((input) =>
924
939
  input.data.enumerations.map((element) =>
925
- this.visitWithErrorHandling(
940
+ this.visitWithGraphBuilderErrorHandling(
926
941
  element,
927
942
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
928
943
  this.getBuilderContext(graph, input.model, element, options),
@@ -934,7 +949,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
934
949
  await Promise.all(
935
950
  inputs.flatMap((input) =>
936
951
  input.data.measures.map((element) =>
937
- this.visitWithErrorHandling(
952
+ this.visitWithGraphBuilderErrorHandling(
938
953
  element,
939
954
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
940
955
  this.getBuilderContext(graph, input.model, element, options),
@@ -946,7 +961,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
946
961
  await Promise.all(
947
962
  inputs.flatMap((input) =>
948
963
  input.data.functions.map((element) =>
949
- this.visitWithErrorHandling(
964
+ this.visitWithGraphBuilderErrorHandling(
950
965
  element,
951
966
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
952
967
  this.getBuilderContext(graph, input.model, element, options),
@@ -959,7 +974,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
959
974
  await Promise.all(
960
975
  inputs.flatMap((input) =>
961
976
  input.data.classes.map((element) =>
962
- this.visitWithErrorHandling(
977
+ this.visitWithGraphBuilderErrorHandling(
963
978
  element,
964
979
  new V1_ProtocolToMetaModelGraphThirdPassBuilder(
965
980
  this.getBuilderContext(graph, input.model, element, options),
@@ -971,7 +986,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
971
986
  await Promise.all(
972
987
  inputs.flatMap((input) =>
973
988
  input.data.associations.map((element) =>
974
- this.visitWithErrorHandling(
989
+ this.visitWithGraphBuilderErrorHandling(
975
990
  element,
976
991
  new V1_ProtocolToMetaModelGraphThirdPassBuilder(
977
992
  this.getBuilderContext(graph, input.model, element, options),
@@ -984,7 +999,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
984
999
  await Promise.all(
985
1000
  inputs.flatMap((input) =>
986
1001
  input.data.classes.map((element) =>
987
- this.visitWithErrorHandling(
1002
+ this.visitWithGraphBuilderErrorHandling(
988
1003
  element,
989
1004
  new V1_ProtocolToMetaModelGraphFifthPassBuilder(
990
1005
  this.getBuilderContext(graph, input.model, element, options),
@@ -1003,7 +1018,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1003
1018
  await Promise.all(
1004
1019
  inputs.flatMap((input) =>
1005
1020
  input.data.stores.map((element) =>
1006
- this.visitWithErrorHandling(
1021
+ this.visitWithGraphBuilderErrorHandling(
1007
1022
  element,
1008
1023
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1009
1024
  this.getBuilderContext(graph, input.model, element, options),
@@ -1015,7 +1030,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1015
1030
  await Promise.all(
1016
1031
  inputs.flatMap((input) =>
1017
1032
  input.data.stores.map((element) =>
1018
- this.visitWithErrorHandling(
1033
+ this.visitWithGraphBuilderErrorHandling(
1019
1034
  element,
1020
1035
  new V1_ProtocolToMetaModelGraphThirdPassBuilder(
1021
1036
  this.getBuilderContext(graph, input.model, element, options),
@@ -1027,7 +1042,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1027
1042
  await Promise.all(
1028
1043
  inputs.flatMap((input) =>
1029
1044
  input.data.stores.map((element) =>
1030
- this.visitWithErrorHandling(
1045
+ this.visitWithGraphBuilderErrorHandling(
1031
1046
  element,
1032
1047
  new V1_ProtocolToMetaModelGraphFourthPassBuilder(
1033
1048
  this.getBuilderContext(graph, input.model, element, options),
@@ -1039,7 +1054,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1039
1054
  await Promise.all(
1040
1055
  inputs.flatMap((input) =>
1041
1056
  input.data.stores.map((element) =>
1042
- this.visitWithErrorHandling(
1057
+ this.visitWithGraphBuilderErrorHandling(
1043
1058
  element,
1044
1059
  new V1_ProtocolToMetaModelGraphFifthPassBuilder(
1045
1060
  this.getBuilderContext(graph, input.model, element, options),
@@ -1058,7 +1073,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1058
1073
  await Promise.all(
1059
1074
  inputs.flatMap((input) =>
1060
1075
  input.data.mappings.map((element) =>
1061
- this.visitWithErrorHandling(
1076
+ this.visitWithGraphBuilderErrorHandling(
1062
1077
  element,
1063
1078
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1064
1079
  this.getBuilderContext(graph, input.model, element, options),
@@ -1070,7 +1085,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1070
1085
  await Promise.all(
1071
1086
  inputs.flatMap((input) =>
1072
1087
  input.data.mappings.map((element) =>
1073
- this.visitWithErrorHandling(
1088
+ this.visitWithGraphBuilderErrorHandling(
1074
1089
  element,
1075
1090
  new V1_ProtocolToMetaModelGraphThirdPassBuilder(
1076
1091
  this.getBuilderContext(graph, input.model, element, options),
@@ -1082,7 +1097,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1082
1097
  await Promise.all(
1083
1098
  inputs.flatMap((input) =>
1084
1099
  input.data.mappings.map((element) =>
1085
- this.visitWithErrorHandling(
1100
+ this.visitWithGraphBuilderErrorHandling(
1086
1101
  element,
1087
1102
  new V1_ProtocolToMetaModelGraphFourthPassBuilder(
1088
1103
  this.getBuilderContext(graph, input.model, element, options),
@@ -1102,7 +1117,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1102
1117
  await Promise.all(
1103
1118
  inputs.flatMap((input) =>
1104
1119
  input.data.connections.map((element) =>
1105
- this.visitWithErrorHandling(
1120
+ this.visitWithGraphBuilderErrorHandling(
1106
1121
  element,
1107
1122
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1108
1123
  this.getBuilderContext(graph, input.model, element, options),
@@ -1114,7 +1129,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1114
1129
  await Promise.all(
1115
1130
  inputs.flatMap((input) =>
1116
1131
  input.data.runtimes.map((element) =>
1117
- this.visitWithErrorHandling(
1132
+ this.visitWithGraphBuilderErrorHandling(
1118
1133
  element,
1119
1134
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1120
1135
  this.getBuilderContext(graph, input.model, element, options),
@@ -1133,7 +1148,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1133
1148
  await Promise.all(
1134
1149
  inputs.flatMap((input) =>
1135
1150
  input.data.services.map((element) =>
1136
- this.visitWithErrorHandling(
1151
+ this.visitWithGraphBuilderErrorHandling(
1137
1152
  element,
1138
1153
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1139
1154
  this.getBuilderContext(graph, input.model, element, options),
@@ -1152,7 +1167,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1152
1167
  await Promise.all(
1153
1168
  inputs.flatMap((input) =>
1154
1169
  input.data.fileGenerations.map((element) =>
1155
- this.visitWithErrorHandling(
1170
+ this.visitWithGraphBuilderErrorHandling(
1156
1171
  element,
1157
1172
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1158
1173
  this.getBuilderContext(graph, input.model, element, options),
@@ -1171,7 +1186,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1171
1186
  await Promise.all(
1172
1187
  inputs.flatMap((input) =>
1173
1188
  input.data.generationSpecifications.map((element) =>
1174
- this.visitWithErrorHandling(
1189
+ this.visitWithGraphBuilderErrorHandling(
1175
1190
  element,
1176
1191
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1177
1192
  this.getBuilderContext(graph, input.model, element, options),
@@ -1190,7 +1205,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1190
1205
  await Promise.all(
1191
1206
  inputs.flatMap((input) =>
1192
1207
  input.data.sectionIndices.map((element) =>
1193
- this.visitWithErrorHandling(
1208
+ this.visitWithGraphBuilderErrorHandling(
1194
1209
  element,
1195
1210
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1196
1211
  this.getBuilderContext(graph, input.model, element, options),
@@ -1212,7 +1227,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1212
1227
  inputs.flatMap((input) =>
1213
1228
  (input.data.otherElementsByBuilder.get(builder) ?? []).map(
1214
1229
  (element) =>
1215
- this.visitWithErrorHandling(
1230
+ this.visitWithGraphBuilderErrorHandling(
1216
1231
  element,
1217
1232
  new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1218
1233
  this.getBuilderContext(
@@ -1230,7 +1245,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1230
1245
  inputs.flatMap((input) =>
1231
1246
  (input.data.otherElementsByBuilder.get(builder) ?? []).map(
1232
1247
  (element) =>
1233
- this.visitWithErrorHandling(
1248
+ this.visitWithGraphBuilderErrorHandling(
1234
1249
  element,
1235
1250
  new V1_ProtocolToMetaModelGraphThirdPassBuilder(
1236
1251
  this.getBuilderContext(
@@ -1248,7 +1263,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1248
1263
  inputs.flatMap((input) =>
1249
1264
  (input.data.otherElementsByBuilder.get(builder) ?? []).map(
1250
1265
  (element) =>
1251
- this.visitWithErrorHandling(
1266
+ this.visitWithGraphBuilderErrorHandling(
1252
1267
  element,
1253
1268
  new V1_ProtocolToMetaModelGraphFourthPassBuilder(
1254
1269
  this.getBuilderContext(
@@ -1266,7 +1281,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1266
1281
  inputs.flatMap((input) =>
1267
1282
  (input.data.otherElementsByBuilder.get(builder) ?? []).map(
1268
1283
  (element) =>
1269
- this.visitWithErrorHandling(
1284
+ this.visitWithGraphBuilderErrorHandling(
1270
1285
  element,
1271
1286
  new V1_ProtocolToMetaModelGraphFifthPassBuilder(
1272
1287
  this.getBuilderContext(
@@ -1284,7 +1299,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1284
1299
  );
1285
1300
  }
1286
1301
 
1287
- private visitWithErrorHandling<T>(
1302
+ private visitWithGraphBuilderErrorHandling<T>(
1288
1303
  element: V1_PackageableElement,
1289
1304
  visitor: V1_PackageableElementVisitor<T>,
1290
1305
  ): Promise<T> {
@@ -1294,7 +1309,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1294
1309
  assertErrorThrown(err);
1295
1310
  const error =
1296
1311
  err instanceof GraphBuilderError ? err : new GraphBuilderError(err);
1297
- error.message = `Error processing element '${element.path}': ${err.message}`;
1312
+ error.message = `Can't build element '${element.path}': ${err.message}`;
1298
1313
  throw error;
1299
1314
  }
1300
1315
  }
@@ -1854,10 +1869,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1854
1869
  const protocolGraph = this.getFullGraphModelData(graph);
1855
1870
  const targetService = guaranteeNonNullable(
1856
1871
  protocolGraph.elements
1857
- .filter(
1858
- (element: V1_PackageableElement): element is V1_Service =>
1859
- element instanceof V1_Service,
1860
- )
1872
+ .filter(filterByType(V1_Service))
1861
1873
  .find((element) => element.path === service.path),
1862
1874
  `Can't run service test: service '${service.path}' not found`,
1863
1875
  );
@@ -1901,6 +1913,8 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1901
1913
  data.origin = new V1_PureModelContextPointer(protocol);
1902
1914
  data.elements = [this.elementToProtocol<V1_Service>(service)];
1903
1915
  // SDLC info
1916
+ // TODO: We may need to add `runtime` pointers if the runtime defned in the service is a packageable runtime
1917
+ // and not embedded.
1904
1918
  const execution = service.execution;
1905
1919
  if (execution instanceof PureSingleExecution) {
1906
1920
  sdlcInfo.packageableElementPointers = [
@@ -1909,6 +1923,15 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1909
1923
  execution.mapping.value.path,
1910
1924
  ),
1911
1925
  ];
1926
+ } else if (execution instanceof PureMultiExecution) {
1927
+ sdlcInfo.packageableElementPointers =
1928
+ execution.executionParameters.map(
1929
+ (e) =>
1930
+ new V1_PackageableElementPointer(
1931
+ V1_PackageableElementPointerType.MAPPING,
1932
+ e.mapping.value.path,
1933
+ ),
1934
+ );
1912
1935
  } else {
1913
1936
  throw new UnsupportedOperationError(
1914
1937
  `Can't register service with the specified execution`,
@@ -2077,12 +2100,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2077
2100
  ...graph.dependencyManager.mappings,
2078
2101
  ];
2079
2102
  const v1Mappings = graphBuilderInput
2080
- .map((e) =>
2081
- e.data.elements.filter(
2082
- (type: V1_PackageableElement): type is V1_Mapping =>
2083
- type instanceof V1_Mapping,
2084
- ),
2085
- )
2103
+ .map((e) => e.data.elements.filter(filterByType(V1_Mapping)))
2086
2104
  .flat();
2087
2105
  const context = new V1_GraphBuilderContextBuilder(
2088
2106
  graph,
@@ -2112,12 +2130,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2112
2130
  ...graph.dependencyManager.runtimes,
2113
2131
  ];
2114
2132
  const v1Runtimes = graphBuilderInput
2115
- .map((e) =>
2116
- e.data.elements.filter(
2117
- (type: V1_PackageableElement): type is V1_PackageableRuntime =>
2118
- type instanceof V1_PackageableRuntime,
2119
- ),
2120
- )
2133
+ .map((e) => e.data.elements.filter(filterByType(V1_PackageableRuntime)))
2121
2134
  .flat();
2122
2135
  v1Runtimes.forEach((element) => {
2123
2136
  const runtime = runtimes.find((e) => e.path === element.path);
@@ -2165,12 +2178,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2165
2178
  ...graph.dependencyManager.services,
2166
2179
  ];
2167
2180
  const v1Services = graphBuilderInput
2168
- .map((e) =>
2169
- e.data.elements.filter(
2170
- (type: V1_PackageableElement): type is V1_Service =>
2171
- type instanceof V1_Service,
2172
- ),
2173
- )
2181
+ .map((e) => e.data.elements.filter(filterByType(V1_Service)))
2174
2182
  .flat();
2175
2183
  // build service multi execution keys
2176
2184
  v1Services.forEach((element) => {
@@ -2357,17 +2365,14 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2357
2365
  element: PackageableElement,
2358
2366
  options?: { keepSourceInformation?: boolean | undefined } | undefined,
2359
2367
  ): T =>
2360
- element.accept_PackageableElementVisitor(
2361
- new V1_PackageableElementTransformer(
2368
+ V1_transformPackageableElement(
2369
+ element,
2370
+ this.pluginManager.getPureProtocolProcessorPlugins(),
2371
+ new V1_GraphTransformerContextBuilder(
2362
2372
  this.pluginManager.getPureProtocolProcessorPlugins(),
2363
- new V1_GraphTransformerContextBuilder(
2364
- this.pluginManager.getPureProtocolProcessorPlugins(),
2365
- )
2366
- .withKeepSourceInformationFlag(
2367
- Boolean(options?.keepSourceInformation),
2368
- )
2369
- .build(),
2370
- ),
2373
+ )
2374
+ .withKeepSourceInformationFlag(Boolean(options?.keepSourceInformation))
2375
+ .build(),
2371
2376
  ) as T;
2372
2377
 
2373
2378
  private pureModelContextDataToEntities = (
@@ -2381,10 +2386,9 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2381
2386
  elementProtocol: V1_PackageableElement,
2382
2387
  ): Entity => ({
2383
2388
  path: this.getElementPath(elementProtocol),
2384
- content: elementProtocol.accept_PackageableElementVisitor(
2385
- new V1_PackageableElementSerializer(
2386
- this.pluginManager.getPureProtocolProcessorPlugins(),
2387
- ),
2389
+ content: V1_serializePackageableElement(
2390
+ elementProtocol,
2391
+ this.pluginManager.getPureProtocolProcessorPlugins(),
2388
2392
  ),
2389
2393
  classifierPath: this.getElementClassiferPath(elementProtocol),
2390
2394
  });
@@ -2486,7 +2490,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2486
2490
  const dependencyManager = graph.dependencyManager;
2487
2491
  const generatedModel = graph.generationModel;
2488
2492
  graphData.elements = [
2489
- ...dependencyManager.allElements,
2493
+ ...dependencyManager.allOwnElements,
2490
2494
  ...generatedModel.allOwnElements,
2491
2495
  ].map((element) => this.elementToProtocol(element));
2492
2496
  this.log.info(
@@ -2534,7 +2538,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2534
2538
 
2535
2539
  // --------------------------------------------- HACKY ---------------------------------------------
2536
2540
 
2537
- HACKY_createGetAllLambda(_class: Class): RawLambda {
2541
+ HACKY__createGetAllLambda(_class: Class): RawLambda {
2538
2542
  return new RawLambda(
2539
2543
  [],
2540
2544
  [
@@ -2552,7 +2556,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2552
2556
  );
2553
2557
  }
2554
2558
 
2555
- HACKY_createServiceTestAssertLambda(assertData: string): RawLambda {
2559
+ HACKY__createServiceTestAssertLambda(assertData: string): RawLambda {
2556
2560
  return new RawLambda(
2557
2561
  [
2558
2562
  {
@@ -2603,7 +2607,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2603
2607
  );
2604
2608
  }
2605
2609
 
2606
- HACKY_extractServiceTestAssertionData(query: RawLambda): string | undefined {
2610
+ HACKY__extractServiceTestAssertionData(query: RawLambda): string | undefined {
2607
2611
  let json: string | undefined;
2608
2612
  try {
2609
2613
  json = (
@@ -2628,4 +2632,17 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2628
2632
  }
2629
2633
  return json;
2630
2634
  }
2635
+
2636
+ HACKY__createDefaultBlankLambda(): RawLambda {
2637
+ return new RawLambda(
2638
+ [{ _type: 'var', name: 'x' }],
2639
+ [
2640
+ {
2641
+ _type: 'string',
2642
+ multiplicity: { lowerBound: 1, upperBound: 1 },
2643
+ values: [''],
2644
+ },
2645
+ ],
2646
+ );
2647
+ }
2631
2648
  }
@@ -510,7 +510,7 @@ export class V1_Engine {
510
510
  new V1_GenerateFileInput(textModel, configs),
511
511
  ),
512
512
  )
513
- ).map((output) => V1_GenerationOutput.serialization.fromJson(output));
513
+ ).map(V1_GenerationOutput.serialization.fromJson);
514
514
  }
515
515
  // ------------------------------------------- External Format -----------------------------------------
516
516
 
@@ -587,7 +587,7 @@ export class V1_Engine {
587
587
  await this.engineServerClient.runServiceTests(
588
588
  V1_serializePureModelContextData(model),
589
589
  )
590
- ).map((result) => V1_ServiceTestResult.serialization.fromJson(result));
590
+ ).map(V1_ServiceTestResult.serialization.fromJson);
591
591
  }
592
592
 
593
593
  async registerService(
@@ -639,7 +639,7 @@ export class V1_Engine {
639
639
  await this.engineServerClient.searchQueries(
640
640
  V1_QuerySearchSpecification.serialization.toJson(searchSpecification),
641
641
  )
642
- ).map((query) => V1_LightQuery.serialization.fromJson(query));
642
+ ).map(V1_LightQuery.serialization.fromJson);
643
643
  }
644
644
 
645
645
  async getQuery(queryId: string): Promise<V1_Query> {
@@ -58,7 +58,6 @@ export interface V1_PackageableElementVisitor<T> {
58
58
  export abstract class V1_PackageableElement implements Hashable {
59
59
  package!: string;
60
60
  name!: string;
61
- parentSection?: string | undefined;
62
61
 
63
62
  get path(): string {
64
63
  return `${this.package}${ELEMENT_PATH_DELIMITER}${this.name}`;
@@ -73,6 +72,7 @@ export abstract class V1_PackageableElement implements Hashable {
73
72
  ): T;
74
73
  }
75
74
 
75
+ // TODO: to be moved out of metamodel
76
76
  export enum V1_PackageableElementPointerType {
77
77
  STORE = 'STORE',
78
78
  MAPPING = 'MAPPING',
@@ -22,16 +22,6 @@ import type { V1_XmlModelConnection } from '../../../model/packageableElements/s
22
22
  import type { V1_FlatDataConnection } from '../../../model/packageableElements/store/flatData/connection/V1_FlatDataConnection';
23
23
  import type { V1_ConnectionPointer } from './V1_ConnectionPointer';
24
24
 
25
- export enum V1_ConnectionType {
26
- CONNECTION_POINTER = 'connectionPointer',
27
- MODEL_CONNECTION = 'ModelConnection',
28
- MODEL_CHAIN_CONNECTION = 'ModelChainConnection',
29
- JSON_MODEL_CONNECTION = 'JsonModelConnection',
30
- XML_MODEL_CONNECTION = 'XmlModelConnection',
31
- FLAT_DATA_CONNECTION = 'FlatDataConnection',
32
- RELATIONAL_DATABASE_CONNECTION = 'RelationalDatabaseConnection',
33
- }
34
-
35
25
  export interface V1_ConnectionVisitor<T> {
36
26
  visit_Connection(connection: V1_Connection): T;
37
27
  visit_ConnectionPointer(connection: V1_ConnectionPointer): T;
@@ -17,7 +17,5 @@
17
17
  import type { Hashable } from '@finos/legend-shared';
18
18
 
19
19
  export abstract class V1_InputData implements Hashable {
20
- private readonly _$nominalTypeBrand!: 'V1_InputData';
21
-
22
20
  abstract get hashCode(): string;
23
21
  }
@@ -17,7 +17,5 @@
17
17
  import type { Hashable } from '@finos/legend-shared';
18
18
 
19
19
  export abstract class V1_MappingTestAssert implements Hashable {
20
- private readonly _$nominalTypeBrand!: 'V1_MappingTestAssert';
21
-
22
20
  abstract get hashCode(): string;
23
21
  }
@@ -19,14 +19,7 @@ import { CORE_HASH_STRUCTURE } from '../../../../../../../MetaModelConst';
19
19
  import type { V1_Runtime } from '../../../model/packageableElements/runtime/V1_Runtime';
20
20
  import type { V1_RawLambda } from '../../../model/rawValueSpecification/V1_RawLambda';
21
21
 
22
- export enum V1_ServiceExecutionType {
23
- PURE_SINGLE_EXECUTION = 'pureSingleExecution',
24
- PURE_MULTI_EXECUTION = 'pureMultiExecution',
25
- }
26
-
27
22
  export abstract class V1_ServiceExecution implements Hashable {
28
- private readonly _$nominalTypeBrand!: 'V1_ServiceExecution';
29
-
30
23
  abstract get hashCode(): string;
31
24
  }
32
25
 
@@ -19,8 +19,6 @@ import { CORE_HASH_STRUCTURE } from '../../../../../../../MetaModelConst';
19
19
  import type { V1_RawLambda } from '../../../model/rawValueSpecification/V1_RawLambda';
20
20
 
21
21
  export abstract class V1_ServiceTest implements Hashable {
22
- private readonly _$nominalTypeBrand!: 'V1_ServiceTest';
23
-
24
22
  abstract get hashCode(): string;
25
23
  }
26
24