@finos/legend-graph 10.1.0 → 11.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 (371) hide show
  1. package/lib/DSLData_Exports.d.ts +1 -1
  2. package/lib/DSLData_Exports.d.ts.map +1 -1
  3. package/lib/DSLData_Exports.js +1 -1
  4. package/lib/DSLData_Exports.js.map +1 -1
  5. package/lib/DSLMapping_Exports.d.ts +6 -2
  6. package/lib/DSLMapping_Exports.d.ts.map +1 -1
  7. package/lib/DSLMapping_Exports.js +6 -2
  8. package/lib/DSLMapping_Exports.js.map +1 -1
  9. package/lib/DSLService_Exports.d.ts +1 -0
  10. package/lib/DSLService_Exports.d.ts.map +1 -1
  11. package/lib/DSLService_Exports.js +1 -0
  12. package/lib/DSLService_Exports.js.map +1 -1
  13. package/lib/GraphManagerState.d.ts +21 -18
  14. package/lib/GraphManagerState.d.ts.map +1 -1
  15. package/lib/GraphManagerState.js +68 -59
  16. package/lib/GraphManagerState.js.map +1 -1
  17. package/lib/GraphManagerTestUtils.js.map +1 -1
  18. package/lib/MetaModelConst.d.ts +44 -42
  19. package/lib/MetaModelConst.d.ts.map +1 -1
  20. package/lib/MetaModelConst.js +52 -50
  21. package/lib/MetaModelConst.js.map +1 -1
  22. package/lib/graph/BasicModel.d.ts +1 -1
  23. package/lib/graph/BasicModel.d.ts.map +1 -1
  24. package/lib/graph/BasicModel.js +4 -4
  25. package/lib/graph/BasicModel.js.map +1 -1
  26. package/lib/graph/DependencyManager.d.ts +1 -1
  27. package/lib/graph/DependencyManager.d.ts.map +1 -1
  28. package/lib/graph/DependencyManager.js +2 -2
  29. package/lib/graph/DependencyManager.js.map +1 -1
  30. package/lib/graph/PureModel.d.ts +8 -2
  31. package/lib/graph/PureModel.d.ts.map +1 -1
  32. package/lib/graph/PureModel.js +8 -2
  33. package/lib/graph/PureModel.js.map +1 -1
  34. package/lib/graphManager/AbstractPureGraphManager.d.ts +21 -21
  35. package/lib/graphManager/AbstractPureGraphManager.d.ts.map +1 -1
  36. package/lib/graphManager/AbstractPureGraphManager.js +15 -0
  37. package/lib/graphManager/AbstractPureGraphManager.js.map +1 -1
  38. package/lib/graphManager/GraphManagerEvent.d.ts +1 -0
  39. package/lib/graphManager/GraphManagerEvent.d.ts.map +1 -1
  40. package/lib/graphManager/GraphManagerEvent.js +1 -0
  41. package/lib/graphManager/GraphManagerEvent.js.map +1 -1
  42. package/lib/graphManager/action/analytics/{MappingAnalytics.d.ts → MappingModelCoverageAnalysis.d.ts} +3 -3
  43. package/lib/graphManager/action/analytics/MappingModelCoverageAnalysis.d.ts.map +1 -0
  44. package/lib/graphManager/action/analytics/{MappingAnalytics.js → MappingModelCoverageAnalysis.js} +5 -7
  45. package/lib/graphManager/action/analytics/MappingModelCoverageAnalysis.js.map +1 -0
  46. package/lib/graphManager/action/changeDetection/CoreObserverHelper.d.ts +1 -2
  47. package/lib/graphManager/action/changeDetection/CoreObserverHelper.d.ts.map +1 -1
  48. package/lib/graphManager/action/changeDetection/CoreObserverHelper.js +0 -4
  49. package/lib/graphManager/action/changeDetection/CoreObserverHelper.js.map +1 -1
  50. package/lib/graphManager/action/changeDetection/DSLExternalFormat_ObserverHelper.d.ts.map +1 -1
  51. package/lib/graphManager/action/changeDetection/DSLExternalFormat_ObserverHelper.js +4 -2
  52. package/lib/graphManager/action/changeDetection/DSLExternalFormat_ObserverHelper.js.map +1 -1
  53. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.d.ts +2 -2
  54. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.d.ts.map +1 -1
  55. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.js +16 -8
  56. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.js.map +1 -1
  57. package/lib/graphManager/action/changeDetection/GraphObserverHelper.js +1 -1
  58. package/lib/graphManager/action/changeDetection/GraphObserverHelper.js.map +1 -1
  59. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.d.ts.map +1 -1
  60. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.js +4 -2
  61. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.js.map +1 -1
  62. package/lib/graphManager/action/validation/DSLService_ValidationHelper.d.ts +3 -2
  63. package/lib/graphManager/action/validation/DSLService_ValidationHelper.d.ts.map +1 -1
  64. package/lib/graphManager/action/validation/DSLService_ValidationHelper.js +1 -1
  65. package/lib/graphManager/action/validation/DSLService_ValidationHelper.js.map +1 -1
  66. package/lib/helpers/DSLMapping_Helper.js +1 -1
  67. package/lib/helpers/DSLMapping_Helper.js.map +1 -1
  68. package/lib/helpers/DomainHelper.d.ts +2 -0
  69. package/lib/helpers/DomainHelper.d.ts.map +1 -1
  70. package/lib/helpers/DomainHelper.js +5 -1
  71. package/lib/helpers/DomainHelper.js.map +1 -1
  72. package/lib/index.d.ts +7 -11
  73. package/lib/index.d.ts.map +1 -1
  74. package/lib/index.js +8 -11
  75. package/lib/index.js.map +1 -1
  76. package/lib/models/metamodels/pure/Reference.d.ts +16 -19
  77. package/lib/models/metamodels/pure/Reference.d.ts.map +1 -1
  78. package/lib/models/metamodels/pure/Reference.js +14 -19
  79. package/lib/models/metamodels/pure/Reference.js.map +1 -1
  80. package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.d.ts +2 -27
  81. package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.d.ts.map +1 -1
  82. package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.js +2 -73
  83. package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.js.map +1 -1
  84. package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.d.ts +2 -2
  85. package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.d.ts.map +1 -1
  86. package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.js +4 -1
  87. package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.js.map +1 -1
  88. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.d.ts +3 -3
  89. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.d.ts.map +1 -1
  90. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js +3 -3
  91. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js.map +1 -1
  92. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.d.ts +10 -10
  93. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.d.ts.map +1 -1
  94. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.js +7 -7
  95. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.js.map +1 -1
  96. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.d.ts +18 -14
  97. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.d.ts.map +1 -1
  98. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.js +17 -13
  99. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.js.map +1 -1
  100. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.d.ts +8 -19
  101. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.d.ts.map +1 -1
  102. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.js +13 -34
  103. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.js.map +1 -1
  104. package/lib/models/metamodels/pure/packageableElements/service/MultiExecutionServiceTestResult.d.ts +20 -0
  105. package/lib/models/metamodels/pure/packageableElements/service/MultiExecutionServiceTestResult.d.ts.map +1 -0
  106. package/lib/models/metamodels/pure/packageableElements/service/MultiExecutionServiceTestResult.js +20 -0
  107. package/lib/models/metamodels/pure/packageableElements/service/MultiExecutionServiceTestResult.js.map +1 -0
  108. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts +4 -3
  109. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts.map +1 -1
  110. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js +1 -1
  111. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js.map +1 -1
  112. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.d.ts +4 -4
  113. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.d.ts.map +1 -1
  114. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.js +2 -3
  115. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.js.map +1 -1
  116. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.d.ts +3 -3
  117. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.d.ts.map +1 -1
  118. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.js +1 -1
  119. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.js.map +1 -1
  120. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.d.ts +4 -4
  121. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.d.ts.map +1 -1
  122. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.js +2 -3
  123. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.js.map +1 -1
  124. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts +3 -2
  125. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts.map +1 -1
  126. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.js.map +1 -1
  127. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.d.ts +2 -2
  128. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.d.ts.map +1 -1
  129. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.js +2 -3
  130. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.js.map +1 -1
  131. package/lib/models/metamodels/pure/valueSpecification/GraphFetchTree.d.ts +3 -3
  132. package/lib/models/metamodels/pure/valueSpecification/GraphFetchTree.d.ts.map +1 -1
  133. package/lib/models/metamodels/pure/valueSpecification/GraphFetchTree.js +2 -5
  134. package/lib/models/metamodels/pure/valueSpecification/GraphFetchTree.js.map +1 -1
  135. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.d.ts.map +1 -1
  136. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js +4 -4
  137. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js.map +1 -1
  138. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts +4 -8
  139. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts.map +1 -1
  140. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.js.map +1 -1
  141. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts +35 -19
  142. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
  143. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js +159 -158
  144. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js.map +1 -1
  145. package/lib/models/protocols/pure/v1/engine/V1_Engine.d.ts +4 -4
  146. package/lib/models/protocols/pure/v1/engine/V1_Engine.d.ts.map +1 -1
  147. package/lib/models/protocols/pure/v1/engine/V1_Engine.js +5 -7
  148. package/lib/models/protocols/pure/v1/engine/V1_Engine.js.map +1 -1
  149. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.d.ts +2 -4
  150. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.d.ts.map +1 -1
  151. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.js +52 -53
  152. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.js.map +1 -1
  153. package/lib/models/protocols/pure/v1/engine/analytics/{V1_MappingAnalytics.d.ts → V1_MappingModelCoverageAnalysis.d.ts} +2 -2
  154. package/lib/models/protocols/pure/v1/engine/analytics/V1_MappingModelCoverageAnalysis.d.ts.map +1 -0
  155. package/lib/models/protocols/pure/v1/engine/analytics/{V1_MappingAnalytics.js → V1_MappingModelCoverageAnalysis.js} +2 -2
  156. package/lib/models/protocols/pure/v1/engine/analytics/V1_MappingModelCoverageAnalysis.js.map +1 -0
  157. package/lib/models/protocols/pure/v1/helper/V1_DomainHelper.d.ts +18 -0
  158. package/lib/models/protocols/pure/v1/helper/V1_DomainHelper.d.ts.map +1 -0
  159. package/lib/models/protocols/pure/v1/helper/V1_DomainHelper.js +35 -0
  160. package/lib/models/protocols/pure/v1/helper/V1_DomainHelper.js.map +1 -0
  161. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.d.ts +17 -0
  162. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.d.ts.map +1 -1
  163. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.js +18 -5
  164. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.js.map +1 -1
  165. package/lib/models/protocols/pure/v1/model/packageableElements/runtime/V1_Runtime.d.ts.map +1 -1
  166. package/lib/models/protocols/pure/v1/model/packageableElements/runtime/V1_Runtime.js +1 -1
  167. package/lib/models/protocols/pure/v1/model/packageableElements/runtime/V1_Runtime.js.map +1 -1
  168. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_MultiExecutionServiceTestResult.d.ts +20 -0
  169. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_MultiExecutionServiceTestResult.d.ts.map +1 -0
  170. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_MultiExecutionServiceTestResult.js +20 -0
  171. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_MultiExecutionServiceTestResult.js.map +1 -0
  172. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts.map +1 -1
  173. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js +50 -86
  174. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js.map +1 -1
  175. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js +1 -1
  176. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js.map +1 -1
  177. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingFirstPassBuilder.d.ts → V1_ClassMappingFirstPassBuilder.d.ts} +3 -3
  178. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ClassMappingFirstPassBuilder.d.ts.map +1 -0
  179. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js → V1_ClassMappingFirstPassBuilder.js} +6 -7
  180. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ClassMappingFirstPassBuilder.js.map +1 -0
  181. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingSecondPassBuilder.d.ts → V1_ClassMappingSecondPassBuilder.d.ts} +2 -2
  182. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ClassMappingSecondPassBuilder.d.ts.map +1 -0
  183. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingSecondPassBuilder.js → V1_ClassMappingSecondPassBuilder.js} +13 -14
  184. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ClassMappingSecondPassBuilder.js.map +1 -0
  185. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFifthPassBuilder.d.ts → V1_ElementFifthPassBuilder.d.ts} +2 -2
  186. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.d.ts.map +1 -0
  187. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFifthPassBuilder.js → V1_ElementFifthPassBuilder.js} +2 -2
  188. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.js.map +1 -0
  189. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts → V1_ElementFirstPassBuilder.d.ts} +2 -2
  190. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.d.ts.map +1 -0
  191. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFirstPassBuilder.js → V1_ElementFirstPassBuilder.js} +2 -2
  192. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.js.map +1 -0
  193. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFourthPassBuilder.d.ts → V1_ElementFourthPassBuilder.d.ts} +2 -2
  194. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.d.ts.map +1 -0
  195. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFourthPassBuilder.js → V1_ElementFourthPassBuilder.js} +4 -4
  196. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.js.map +1 -0
  197. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts → V1_ElementSecondPassBuilder.d.ts} +3 -3
  198. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.d.ts.map +1 -0
  199. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphSecondPassBuilder.js → V1_ElementSecondPassBuilder.js} +16 -17
  200. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.js.map +1 -0
  201. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphThirdPassBuilder.d.ts → V1_ElementThirdPassBuilder.d.ts} +3 -3
  202. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.d.ts.map +1 -0
  203. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphThirdPassBuilder.js → V1_ElementThirdPassBuilder.js} +7 -7
  204. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.js.map +1 -0
  205. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.d.ts.map +1 -1
  206. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js +2 -2
  207. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js.map +1 -1
  208. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts → V1_PropertyMappingBuilder.d.ts} +4 -4
  209. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.d.ts.map +1 -0
  210. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelPropertyMappingBuilder.js → V1_PropertyMappingBuilder.js} +50 -34
  211. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.js.map +1 -0
  212. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelRawValueSpecificationBuilder.d.ts → V1_RawValueSpecificationBuilder.d.ts} +3 -3
  213. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_RawValueSpecificationBuilder.d.ts.map +1 -0
  214. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelRawValueSpecificationBuilder.js → V1_RawValueSpecificationBuilder.js} +2 -2
  215. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_RawValueSpecificationBuilder.js.map +1 -0
  216. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.d.ts.map +1 -1
  217. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.js +2 -2
  218. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.js.map +1 -1
  219. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AssociationMappingHelper.js +3 -3
  220. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AssociationMappingHelper.js.map +1 -1
  221. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.d.ts +22 -0
  222. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.d.ts.map +1 -0
  223. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelConnectionBuilder.js → helpers/V1_ConnectionBuilderHelper.js} +16 -15
  224. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.js.map +1 -0
  225. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.d.ts +2 -11
  226. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.d.ts.map +1 -1
  227. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.js +2 -1
  228. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.js.map +1 -1
  229. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.d.ts +1 -1
  230. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.d.ts.map +1 -1
  231. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.js +12 -12
  232. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.js.map +1 -1
  233. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js +1 -1
  234. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js.map +1 -1
  235. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.d.ts.map +1 -1
  236. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js +5 -6
  237. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js.map +1 -1
  238. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.js +4 -4
  239. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.js.map +1 -1
  240. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.d.ts.map +1 -1
  241. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.js +7 -8
  242. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.js.map +1 -1
  243. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.d.ts +1 -1
  244. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.d.ts.map +1 -1
  245. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.js +4 -4
  246. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.js.map +1 -1
  247. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.d.ts.map +1 -1
  248. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.js +2 -2
  249. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.js.map +1 -1
  250. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.d.ts.map +1 -1
  251. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js +2 -2
  252. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js.map +1 -1
  253. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.d.ts.map +1 -1
  254. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.js +3 -3
  255. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.js.map +1 -1
  256. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.d.ts +5 -2
  257. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.d.ts.map +1 -1
  258. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.js +17 -2
  259. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.js.map +1 -1
  260. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.d.ts.map +1 -1
  261. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.js +3 -4
  262. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.js.map +1 -1
  263. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.d.ts +3 -1
  264. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.d.ts.map +1 -1
  265. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.js +16 -4
  266. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.js.map +1 -1
  267. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.js +9 -9
  268. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.js.map +1 -1
  269. package/lib/package.json +5 -5
  270. package/package.json +8 -8
  271. package/src/DSLData_Exports.ts +1 -1
  272. package/src/DSLMapping_Exports.ts +20 -6
  273. package/src/DSLService_Exports.ts +1 -0
  274. package/src/GraphManagerState.ts +104 -91
  275. package/src/GraphManagerTestUtils.tsx +4 -4
  276. package/src/MetaModelConst.ts +59 -56
  277. package/src/graph/BasicModel.ts +4 -4
  278. package/src/graph/DependencyManager.ts +2 -2
  279. package/src/graph/PureModel.ts +10 -2
  280. package/src/graphManager/AbstractPureGraphManager.ts +54 -40
  281. package/src/graphManager/GraphManagerEvent.ts +1 -0
  282. package/src/graphManager/action/analytics/{MappingAnalytics.ts → MappingModelCoverageAnalysis.ts} +8 -6
  283. package/src/graphManager/action/changeDetection/CoreObserverHelper.ts +1 -14
  284. package/src/graphManager/action/changeDetection/DSLExternalFormat_ObserverHelper.ts +3 -2
  285. package/src/graphManager/action/changeDetection/DSLMapping_ObserverHelper.ts +17 -12
  286. package/src/graphManager/action/changeDetection/GraphObserverHelper.ts +2 -2
  287. package/src/graphManager/action/changeDetection/ValueSpecificationObserver.ts +3 -2
  288. package/src/graphManager/action/validation/DSLService_ValidationHelper.ts +4 -7
  289. package/src/helpers/DSLMapping_Helper.ts +1 -1
  290. package/src/helpers/DomainHelper.ts +14 -0
  291. package/src/index.ts +14 -18
  292. package/src/models/metamodels/pure/Reference.ts +17 -26
  293. package/src/models/metamodels/pure/packageableElements/PackageableElementReference.ts +2 -131
  294. package/src/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.ts +6 -3
  295. package/src/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.ts +10 -9
  296. package/src/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.ts +18 -18
  297. package/src/models/metamodels/pure/packageableElements/mapping/PropertyMapping.ts +21 -17
  298. package/src/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.ts +17 -66
  299. package/src/models/metamodels/pure/packageableElements/service/MultiExecutionServiceTestResult.ts +21 -0
  300. package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.ts +5 -7
  301. package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.ts +6 -6
  302. package/src/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.ts +4 -7
  303. package/src/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.ts +6 -6
  304. package/src/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.ts +4 -6
  305. package/src/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.ts +3 -3
  306. package/src/models/metamodels/pure/valueSpecification/GraphFetchTree.ts +4 -10
  307. package/src/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.ts +5 -10
  308. package/src/models/protocols/pure/PureProtocolProcessorPlugin.ts +8 -8
  309. package/src/models/protocols/pure/v1/V1_PureGraphManager.ts +248 -255
  310. package/src/models/protocols/pure/v1/engine/V1_Engine.ts +7 -13
  311. package/src/models/protocols/pure/v1/engine/V1_EngineServerClient.ts +34 -45
  312. package/src/models/protocols/pure/v1/engine/analytics/{V1_MappingAnalytics.ts → V1_MappingModelCoverageAnalysis.ts} +1 -1
  313. package/src/models/protocols/pure/v1/helper/V1_DomainHelper.ts +51 -0
  314. package/src/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.ts +18 -5
  315. package/src/models/protocols/pure/v1/model/packageableElements/runtime/V1_Runtime.ts +1 -1
  316. package/src/models/protocols/pure/v1/model/packageableElements/service/V1_MultiExecutionServiceTestResult.ts +21 -0
  317. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +32 -86
  318. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.ts +1 -1
  319. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingFirstPassBuilder.ts → V1_ClassMappingFirstPassBuilder.ts} +6 -10
  320. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingSecondPassBuilder.ts → V1_ClassMappingSecondPassBuilder.ts} +12 -19
  321. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFifthPassBuilder.ts → V1_ElementFifthPassBuilder.ts} +1 -1
  322. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFirstPassBuilder.ts → V1_ElementFirstPassBuilder.ts} +1 -1
  323. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFourthPassBuilder.ts → V1_ElementFourthPassBuilder.ts} +3 -6
  324. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphSecondPassBuilder.ts → V1_ElementSecondPassBuilder.ts} +18 -20
  325. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphThirdPassBuilder.ts → V1_ElementThirdPassBuilder.ts} +6 -9
  326. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.ts +2 -4
  327. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelPropertyMappingBuilder.ts → V1_PropertyMappingBuilder.ts} +105 -40
  328. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelRawValueSpecificationBuilder.ts → V1_RawValueSpecificationBuilder.ts} +2 -2
  329. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.ts +2 -5
  330. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AssociationMappingHelper.ts +3 -3
  331. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelConnectionBuilder.ts → helpers/V1_ConnectionBuilderHelper.ts} +33 -26
  332. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.ts +7 -3
  333. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.ts +14 -12
  334. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.ts +1 -1
  335. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.ts +6 -9
  336. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.ts +4 -4
  337. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.ts +7 -8
  338. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.ts +5 -5
  339. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.ts +6 -5
  340. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.ts +2 -4
  341. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.ts +3 -7
  342. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.ts +25 -4
  343. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.ts +3 -6
  344. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.ts +29 -3
  345. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.ts +9 -9
  346. package/tsconfig.json +15 -12
  347. package/lib/graphManager/action/analytics/MappingAnalytics.d.ts.map +0 -1
  348. package/lib/graphManager/action/analytics/MappingAnalytics.js.map +0 -1
  349. package/lib/models/protocols/pure/v1/engine/analytics/V1_MappingAnalytics.d.ts.map +0 -1
  350. package/lib/models/protocols/pure/v1/engine/analytics/V1_MappingAnalytics.js.map +0 -1
  351. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.d.ts.map +0 -1
  352. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js.map +0 -1
  353. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.d.ts.map +0 -1
  354. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.js.map +0 -1
  355. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.d.ts +0 -40
  356. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.d.ts.map +0 -1
  357. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.js.map +0 -1
  358. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.d.ts.map +0 -1
  359. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.js.map +0 -1
  360. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts.map +0 -1
  361. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js.map +0 -1
  362. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.d.ts.map +0 -1
  363. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.js.map +0 -1
  364. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts.map +0 -1
  365. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js.map +0 -1
  366. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.d.ts.map +0 -1
  367. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js.map +0 -1
  368. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts.map +0 -1
  369. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js.map +0 -1
  370. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.d.ts.map +0 -1
  371. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.js.map +0 -1
@@ -17,7 +17,6 @@
17
17
  import { GRAPH_MANAGER_EVENT } from '../../../../graphManager/GraphManagerEvent.js';
18
18
  import {
19
19
  CORE_PURE_PATH,
20
- ELEMENT_PATH_DELIMITER,
21
20
  PackageableElementPointerType,
22
21
  } from '../../../../MetaModelConst.js';
23
22
  import {
@@ -35,13 +34,13 @@ import {
35
34
  assertErrorThrown,
36
35
  promisify,
37
36
  StopWatch,
38
- filterByType,
39
37
  isNonNullable,
40
38
  addUniqueEntry,
41
39
  uuid,
42
40
  deleteEntry,
43
41
  assertType,
44
42
  uniq,
43
+ IllegalStateError,
45
44
  } from '@finos/legend-shared';
46
45
  import type { TEMPORARY__AbstractEngineConfig } from '../../../../graphManager/action/TEMPORARY__AbstractEngineConfig.js';
47
46
  import {
@@ -72,7 +71,6 @@ import type {
72
71
  GenerationConfigurationDescription,
73
72
  GenerationMode,
74
73
  } from '../../../../graphManager/action/generation/GenerationConfigurationDescription.js';
75
- import type { DEPRECATED__ServiceTestResult } from '../../../../graphManager/action/service/DEPRECATED__ServiceTestResult.js';
76
74
  import type { ServiceRegistrationResult } from '../../../../graphManager/action/service/ServiceRegistrationResult.js';
77
75
  import type { ExecutionResult } from '../../../../graphManager/action/execution/ExecutionResult.js';
78
76
  import type { GenerationOutput } from '../../../../graphManager/action/generation/GenerationOutput.js';
@@ -104,12 +102,12 @@ import {
104
102
  type V1_PackageableElementVisitor,
105
103
  V1_PackageableElementPointer,
106
104
  } from './model/packageableElements/V1_PackageableElement.js';
107
- import { V1_ProtocolToMetaModelGraphFirstPassBuilder } from './transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js';
108
- import { V1_ProtocolToMetaModelGraphSecondPassBuilder } from './transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js';
109
- import { V1_ProtocolToMetaModelGraphThirdPassBuilder } from './transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js';
110
- import { V1_ProtocolToMetaModelGraphFourthPassBuilder } from './transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.js';
111
- import { V1_ProtocolToMetaModelGraphFifthPassBuilder } from './transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.js';
112
- import { V1_ProtocolToMetaModelRawValueSpecificationBuilder } from './transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.js';
105
+ import { V1_ElementFirstPassBuilder } from './transformation/pureGraph/to/V1_ElementFirstPassBuilder.js';
106
+ import { V1_ElementSecondPassBuilder } from './transformation/pureGraph/to/V1_ElementSecondPassBuilder.js';
107
+ import { V1_ElementThirdPassBuilder } from './transformation/pureGraph/to/V1_ElementThirdPassBuilder.js';
108
+ import { V1_ElementFourthPassBuilder } from './transformation/pureGraph/to/V1_ElementFourthPassBuilder.js';
109
+ import { V1_ElementFifthPassBuilder } from './transformation/pureGraph/to/V1_ElementFifthPassBuilder.js';
110
+ import { V1_RawValueSpecificationBuilder } from './transformation/pureGraph/to/V1_RawValueSpecificationBuilder.js';
113
111
  import { V1_RawBaseExecutionContext } from './model/rawValueSpecification/V1_RawExecutionContext.js';
114
112
  import {
115
113
  type V1_GraphBuilderContext,
@@ -165,8 +163,6 @@ import {
165
163
  import { V1_transformRelationalDatabaseConnection } from './transformation/pureGraph/from/V1_ConnectionTransformer.js';
166
164
  import { V1_FlatData } from './model/packageableElements/store/flatData/model/V1_FlatData.js';
167
165
  import { V1_Database } from './model/packageableElements/store/relational/model/V1_Database.js';
168
- import type { V1_Multiplicity } from './model/packageableElements/domain/V1_Multiplicity.js';
169
- import type { V1_RawVariable } from './model/rawValueSpecification/V1_RawVariable.js';
170
166
  import { V1_setupDatabaseSerialization } from './transformation/pureProtocol/serializationHelpers/V1_DatabaseSerializationHelper.js';
171
167
  import {
172
168
  V1_setupEngineRuntimeSerialization,
@@ -198,7 +194,6 @@ import type {
198
194
  } from '../../../../graphManager/action/query/Query.js';
199
195
  import {
200
196
  V1_buildQuery,
201
- V1_buildLegacyServiceTestResult,
202
197
  V1_buildServiceRegistrationResult,
203
198
  V1_transformQuery,
204
199
  V1_buildGenerationOutput,
@@ -237,6 +232,7 @@ import { V1_buildTestsResult } from './engine/test/V1_RunTestsResult.js';
237
232
  import {
238
233
  type TestResult,
239
234
  TestFailed,
235
+ TestError,
240
236
  } from '../../../metamodels/pure/test/result/TestResult.js';
241
237
  import type { Service } from '../../../../DSLService_Exports.js';
242
238
  import type { Testable } from '../../../metamodels/pure/test/Testable.js';
@@ -255,38 +251,13 @@ import {
255
251
  V1_buildModelCoverageAnalysisResult,
256
252
  V1_MappingModelCoverageAnalysisInput,
257
253
  V1_MappingModelCoverageAnalysisResult,
258
- } from './engine/analytics/V1_MappingAnalytics.js';
254
+ } from './engine/analytics/V1_MappingModelCoverageAnalysis.js';
259
255
  import type {
260
256
  MappingModelCoverageAnalysisResult,
261
257
  RawMappingModelCoverageAnalysisResult,
262
- } from '../../../../graphManager/action/analytics/MappingAnalytics.js';
258
+ } from '../../../../graphManager/action/analytics/MappingModelCoverageAnalysis.js';
263
259
  import { deserialize } from 'serializr';
264
-
265
- const V1_FUNCTION_SUFFIX_MULTIPLICITY_INFINITE = 'MANY';
266
-
267
- const getMultiplicitySuffix = (multiplicity: V1_Multiplicity): string => {
268
- if (multiplicity.lowerBound === multiplicity.upperBound) {
269
- return multiplicity.lowerBound.toString();
270
- } else if (
271
- multiplicity.lowerBound === 0 &&
272
- multiplicity.upperBound === undefined
273
- ) {
274
- return V1_FUNCTION_SUFFIX_MULTIPLICITY_INFINITE;
275
- }
276
- return `$${multiplicity.lowerBound}_${
277
- multiplicity.upperBound ?? V1_FUNCTION_SUFFIX_MULTIPLICITY_INFINITE
278
- }$`;
279
- };
280
-
281
- const getVariableSuffix = (variable: V1_RawVariable): string =>
282
- `${variable.class
283
- .split(ELEMENT_PATH_DELIMITER)
284
- .pop()}_${getMultiplicitySuffix(variable.multiplicity)}_`;
285
-
286
- const getFunctionSuffix = (fn: V1_ConcreteFunctionDefinition): string =>
287
- `${fn.parameters.map((p) => getVariableSuffix(p)).join('_')}_${fn.returnType
288
- .split(ELEMENT_PATH_DELIMITER)
289
- .pop()}_${getMultiplicitySuffix(fn.returnMultiplicity)}_`;
260
+ import { V1_getFunctionSuffix } from './helper/V1_DomainHelper.js';
290
261
 
291
262
  class V1_PureModelContextDataIndex {
292
263
  elements: V1_PackageableElement[] = [];
@@ -334,7 +305,7 @@ const mergePureModelContextData = (
334
305
  return mergedData;
335
306
  };
336
307
 
337
- const indexPureModelContextData = (
308
+ export const V1_indexPureModelContextData = (
338
309
  report: GraphBuilderReport,
339
310
  data: V1_PureModelContextData,
340
311
  extensions: V1_GraphBuilderExtensions,
@@ -439,7 +410,7 @@ const indexPureModelContextData = (
439
410
  // NOTE: this interface is somewhat naive since `model` is of type `BasicModel`,
440
411
  // so this can only be used for pre-processing/indexing
441
412
  // we might need to change model to PureModel in the future when we support other use case
442
- interface V1_GraphBuilderInput {
413
+ interface V1_PureGraphBuilderInput {
443
414
  model: BasicModel;
444
415
  data: V1_PureModelContextDataIndex;
445
416
  }
@@ -454,7 +425,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
454
425
  // Organizing these constants will help with configuring
455
426
  // target protocol version in the future
456
427
  // See https://github.com/finos/legend-studio/issues/475
457
- private static readonly TARGET_PROTOCOL_VERSION = PureClientVersion.VX_X_X;
428
+ static readonly TARGET_PROTOCOL_VERSION = PureClientVersion.VX_X_X;
458
429
 
459
430
  engine: V1_Engine;
460
431
  graphBuilderExtensions: V1_GraphBuilderExtensions;
@@ -544,7 +515,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
544
515
  const buildInputs = [
545
516
  {
546
517
  model: systemModel,
547
- data: indexPureModelContextData(
518
+ data: V1_indexPureModelContextData(
548
519
  report,
549
520
  systemData,
550
521
  this.graphBuilderExtensions,
@@ -585,7 +556,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
585
556
  coreModel: CoreModel,
586
557
  systemModel: SystemModel,
587
558
  dependencyManager: DependencyManager,
588
- dependencyEntitiesMap: Map<string, Entity[]>,
559
+ dependencyEntitiesIndex: Map<string, Entity[]>,
589
560
  buildState: ActionState,
590
561
  options?: GraphBuilderOptions,
591
562
  ): Promise<GraphBuilderReport> {
@@ -602,16 +573,19 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
602
573
  graph.dependencyManager = dependencyManager;
603
574
 
604
575
  try {
605
- dependencyManager.initialize(dependencyEntitiesMap);
576
+ dependencyManager.initialize(dependencyEntitiesIndex);
606
577
 
607
578
  // deserialize
608
579
  buildState.setMessage(`Partitioning and deserializing elements...`);
609
- const dependencyDataMap = new Map<string, V1_PureModelContextData>();
580
+ const dependencyGraphDataIndex = new Map<
581
+ string,
582
+ V1_PureModelContextData
583
+ >();
610
584
  await Promise.all(
611
- Array.from(dependencyEntitiesMap.entries()).map(
585
+ Array.from(dependencyEntitiesIndex.entries()).map(
612
586
  ([dependencyKey, entities]) => {
613
587
  const projectModelData = new V1_PureModelContextData();
614
- dependencyDataMap.set(dependencyKey, projectModelData);
588
+ dependencyGraphDataIndex.set(dependencyKey, projectModelData);
615
589
  return V1_entitiesToPureModelContextData(
616
590
  entities,
617
591
  projectModelData,
@@ -623,11 +597,11 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
623
597
  stopWatch.record(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_ELEMENTS_DESERIALIZED);
624
598
 
625
599
  // prepare build inputs
626
- const buildInputs: V1_GraphBuilderInput[] = Array.from(
627
- dependencyDataMap.entries(),
600
+ const buildInputs: V1_PureGraphBuilderInput[] = Array.from(
601
+ dependencyGraphDataIndex.entries(),
628
602
  ).map(([dependencyKey, dependencyData]) => ({
629
603
  model: graph.dependencyManager.getModel(dependencyKey),
630
- data: indexPureModelContextData(
604
+ data: V1_indexPureModelContextData(
631
605
  report,
632
606
  dependencyData,
633
607
  this.graphBuilderExtensions,
@@ -645,7 +619,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
645
619
  );
646
620
 
647
621
  buildState.pass();
648
- report.otherStats.projectCount = dependencyEntitiesMap.size;
622
+ report.otherStats.projectCount = dependencyEntitiesIndex.size;
649
623
  report.timings = {
650
624
  ...Object.fromEntries(stopWatch.records),
651
625
  [GRAPH_MANAGER_EVENT.GRAPH_BUILDER_COMPLETED]: stopWatch.elapsed,
@@ -686,10 +660,10 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
686
660
  stopWatch.record(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_ELEMENTS_DESERIALIZED);
687
661
 
688
662
  // prepare build inputs
689
- const buildInputs: V1_GraphBuilderInput[] = [
663
+ const buildInputs: V1_PureGraphBuilderInput[] = [
690
664
  {
691
665
  model: graph,
692
- data: indexPureModelContextData(
666
+ data: V1_indexPureModelContextData(
693
667
  report,
694
668
  data,
695
669
  this.graphBuilderExtensions,
@@ -755,12 +729,15 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
755
729
  try {
756
730
  // deserialize
757
731
  buildState.setMessage(`Deserializing elements...`);
758
- const generatedDataMap = new Map<string, V1_PureModelContextData>();
732
+ const generationGraphDataIndex = new Map<
733
+ string,
734
+ V1_PureModelContextData
735
+ >();
759
736
  await Promise.all(
760
737
  Array.from(generatedEntities.entries()).map(
761
738
  ([generationParentPath, entities]) => {
762
739
  const generatedData = new V1_PureModelContextData();
763
- generatedDataMap.set(generationParentPath, generatedData);
740
+ generationGraphDataIndex.set(generationParentPath, generatedData);
764
741
  return V1_entitiesToPureModelContextData(
765
742
  entities,
766
743
  generatedData,
@@ -772,11 +749,11 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
772
749
  stopWatch.record(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_ELEMENTS_DESERIALIZED);
773
750
 
774
751
  // prepare build inputs
775
- const buildInputs: V1_GraphBuilderInput[] = Array.from(
776
- generatedDataMap.entries(),
752
+ const buildInputs: V1_PureGraphBuilderInput[] = Array.from(
753
+ generationGraphDataIndex.entries(),
777
754
  ).map(([generationParentPath, generatedData]) => ({
778
755
  model: generatedModel,
779
- data: indexPureModelContextData(
756
+ data: V1_indexPureModelContextData(
780
757
  report,
781
758
  generatedData,
782
759
  this.graphBuilderExtensions,
@@ -794,7 +771,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
794
771
  );
795
772
 
796
773
  buildState.pass();
797
- report.otherStats.generationCount = generatedDataMap.size;
774
+ report.otherStats.generationCount = generationGraphDataIndex.size;
798
775
  report.timings = {
799
776
  ...Object.fromEntries(stopWatch.records),
800
777
  [GRAPH_MANAGER_EVENT.GRAPH_BUILDER_COMPLETED]: stopWatch.elapsed,
@@ -821,7 +798,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
821
798
 
822
799
  private async buildGraphFromInputs(
823
800
  graph: PureModel,
824
- inputs: V1_GraphBuilderInput[],
801
+ inputs: V1_PureGraphBuilderInput[],
825
802
  report: GraphBuilderReport,
826
803
  stopWatch: StopWatch,
827
804
  graphBuilderState: ActionState,
@@ -906,7 +883,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
906
883
  */
907
884
  private async initializeAndIndexElements(
908
885
  graph: PureModel,
909
- inputs: V1_GraphBuilderInput[],
886
+ inputs: V1_PureGraphBuilderInput[],
910
887
  options?: GraphBuilderOptions,
911
888
  ): Promise<void> {
912
889
  // create the element path cache for faster duplication check
@@ -927,7 +904,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
927
904
  input.data.nativeElements.map((element) =>
928
905
  this.visitWithGraphBuilderErrorHandling(
929
906
  element,
930
- new V1_ProtocolToMetaModelGraphFirstPassBuilder(
907
+ new V1_ElementFirstPassBuilder(
931
908
  this.getBuilderContext(graph, input.model, element, options),
932
909
  packageCache,
933
910
  elementPathCache,
@@ -942,7 +919,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
942
919
  (element) =>
943
920
  this.visitWithGraphBuilderErrorHandling(
944
921
  element,
945
- new V1_ProtocolToMetaModelGraphFirstPassBuilder(
922
+ new V1_ElementFirstPassBuilder(
946
923
  this.getBuilderContext(
947
924
  graph,
948
925
  input.model,
@@ -962,7 +939,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
962
939
 
963
940
  private async buildTypes(
964
941
  graph: PureModel,
965
- inputs: V1_GraphBuilderInput[],
942
+ inputs: V1_PureGraphBuilderInput[],
966
943
  options?: GraphBuilderOptions,
967
944
  ): Promise<void> {
968
945
  // Second pass
@@ -971,7 +948,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
971
948
  input.data.profiles.map((element) =>
972
949
  this.visitWithGraphBuilderErrorHandling(
973
950
  element,
974
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
951
+ new V1_ElementSecondPassBuilder(
975
952
  this.getBuilderContext(graph, input.model, element, options),
976
953
  ),
977
954
  ),
@@ -983,7 +960,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
983
960
  input.data.classes.map((element) =>
984
961
  this.visitWithGraphBuilderErrorHandling(
985
962
  element,
986
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
963
+ new V1_ElementSecondPassBuilder(
987
964
  this.getBuilderContext(graph, input.model, element, options),
988
965
  ),
989
966
  ),
@@ -995,7 +972,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
995
972
  input.data.enumerations.map((element) =>
996
973
  this.visitWithGraphBuilderErrorHandling(
997
974
  element,
998
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
975
+ new V1_ElementSecondPassBuilder(
999
976
  this.getBuilderContext(graph, input.model, element, options),
1000
977
  ),
1001
978
  ),
@@ -1007,7 +984,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1007
984
  input.data.measures.map((element) =>
1008
985
  this.visitWithGraphBuilderErrorHandling(
1009
986
  element,
1010
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
987
+ new V1_ElementSecondPassBuilder(
1011
988
  this.getBuilderContext(graph, input.model, element, options),
1012
989
  ),
1013
990
  ),
@@ -1019,7 +996,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1019
996
  input.data.functions.map((element) =>
1020
997
  this.visitWithGraphBuilderErrorHandling(
1021
998
  element,
1022
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
999
+ new V1_ElementSecondPassBuilder(
1023
1000
  this.getBuilderContext(graph, input.model, element, options),
1024
1001
  ),
1025
1002
  ),
@@ -1032,7 +1009,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1032
1009
  input.data.classes.map((element) =>
1033
1010
  this.visitWithGraphBuilderErrorHandling(
1034
1011
  element,
1035
- new V1_ProtocolToMetaModelGraphThirdPassBuilder(
1012
+ new V1_ElementThirdPassBuilder(
1036
1013
  this.getBuilderContext(graph, input.model, element, options),
1037
1014
  ),
1038
1015
  ),
@@ -1044,7 +1021,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1044
1021
  input.data.associations.map((element) =>
1045
1022
  this.visitWithGraphBuilderErrorHandling(
1046
1023
  element,
1047
- new V1_ProtocolToMetaModelGraphThirdPassBuilder(
1024
+ new V1_ElementThirdPassBuilder(
1048
1025
  this.getBuilderContext(graph, input.model, element, options),
1049
1026
  ),
1050
1027
  ),
@@ -1057,7 +1034,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1057
1034
  input.data.classes.map((element) =>
1058
1035
  this.visitWithGraphBuilderErrorHandling(
1059
1036
  element,
1060
- new V1_ProtocolToMetaModelGraphFourthPassBuilder(
1037
+ new V1_ElementFourthPassBuilder(
1061
1038
  this.getBuilderContext(graph, input.model, element, options),
1062
1039
  ),
1063
1040
  ),
@@ -1069,7 +1046,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1069
1046
  input.data.associations.map((element) =>
1070
1047
  this.visitWithGraphBuilderErrorHandling(
1071
1048
  element,
1072
- new V1_ProtocolToMetaModelGraphFourthPassBuilder(
1049
+ new V1_ElementFourthPassBuilder(
1073
1050
  this.getBuilderContext(graph, input.model, element, options),
1074
1051
  ),
1075
1052
  ),
@@ -1082,7 +1059,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1082
1059
  input.data.classes.map((element) =>
1083
1060
  this.visitWithGraphBuilderErrorHandling(
1084
1061
  element,
1085
- new V1_ProtocolToMetaModelGraphFifthPassBuilder(
1062
+ new V1_ElementFifthPassBuilder(
1086
1063
  this.getBuilderContext(graph, input.model, element, options),
1087
1064
  ),
1088
1065
  ),
@@ -1093,7 +1070,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1093
1070
 
1094
1071
  private async buildStores(
1095
1072
  graph: PureModel,
1096
- inputs: V1_GraphBuilderInput[],
1073
+ inputs: V1_PureGraphBuilderInput[],
1097
1074
  options?: GraphBuilderOptions,
1098
1075
  ): Promise<void> {
1099
1076
  await Promise.all(
@@ -1101,7 +1078,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1101
1078
  input.data.stores.map((element) =>
1102
1079
  this.visitWithGraphBuilderErrorHandling(
1103
1080
  element,
1104
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1081
+ new V1_ElementSecondPassBuilder(
1105
1082
  this.getBuilderContext(graph, input.model, element, options),
1106
1083
  ),
1107
1084
  ),
@@ -1113,7 +1090,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1113
1090
  input.data.stores.map((element) =>
1114
1091
  this.visitWithGraphBuilderErrorHandling(
1115
1092
  element,
1116
- new V1_ProtocolToMetaModelGraphThirdPassBuilder(
1093
+ new V1_ElementThirdPassBuilder(
1117
1094
  this.getBuilderContext(graph, input.model, element, options),
1118
1095
  ),
1119
1096
  ),
@@ -1125,7 +1102,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1125
1102
  input.data.stores.map((element) =>
1126
1103
  this.visitWithGraphBuilderErrorHandling(
1127
1104
  element,
1128
- new V1_ProtocolToMetaModelGraphFourthPassBuilder(
1105
+ new V1_ElementFourthPassBuilder(
1129
1106
  this.getBuilderContext(graph, input.model, element, options),
1130
1107
  ),
1131
1108
  ),
@@ -1137,7 +1114,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1137
1114
  input.data.stores.map((element) =>
1138
1115
  this.visitWithGraphBuilderErrorHandling(
1139
1116
  element,
1140
- new V1_ProtocolToMetaModelGraphFifthPassBuilder(
1117
+ new V1_ElementFifthPassBuilder(
1141
1118
  this.getBuilderContext(graph, input.model, element, options),
1142
1119
  ),
1143
1120
  ),
@@ -1148,7 +1125,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1148
1125
 
1149
1126
  private async buildMappings(
1150
1127
  graph: PureModel,
1151
- inputs: V1_GraphBuilderInput[],
1128
+ inputs: V1_PureGraphBuilderInput[],
1152
1129
  options?: GraphBuilderOptions,
1153
1130
  ): Promise<void> {
1154
1131
  await Promise.all(
@@ -1156,7 +1133,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1156
1133
  input.data.mappings.map((element) =>
1157
1134
  this.visitWithGraphBuilderErrorHandling(
1158
1135
  element,
1159
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1136
+ new V1_ElementSecondPassBuilder(
1160
1137
  this.getBuilderContext(graph, input.model, element, options),
1161
1138
  ),
1162
1139
  ),
@@ -1168,7 +1145,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1168
1145
  input.data.mappings.map((element) =>
1169
1146
  this.visitWithGraphBuilderErrorHandling(
1170
1147
  element,
1171
- new V1_ProtocolToMetaModelGraphThirdPassBuilder(
1148
+ new V1_ElementThirdPassBuilder(
1172
1149
  this.getBuilderContext(graph, input.model, element, options),
1173
1150
  ),
1174
1151
  ),
@@ -1180,7 +1157,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1180
1157
  input.data.mappings.map((element) =>
1181
1158
  this.visitWithGraphBuilderErrorHandling(
1182
1159
  element,
1183
- new V1_ProtocolToMetaModelGraphFourthPassBuilder(
1160
+ new V1_ElementFourthPassBuilder(
1184
1161
  this.getBuilderContext(graph, input.model, element, options),
1185
1162
  ),
1186
1163
  ),
@@ -1191,7 +1168,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1191
1168
 
1192
1169
  private async buildConnectionsAndRuntimes(
1193
1170
  graph: PureModel,
1194
- inputs: V1_GraphBuilderInput[],
1171
+ inputs: V1_PureGraphBuilderInput[],
1195
1172
  options?: GraphBuilderOptions,
1196
1173
  ): Promise<void> {
1197
1174
  // NOTE: connections must be built before runtimes
@@ -1200,7 +1177,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1200
1177
  input.data.connections.map((element) =>
1201
1178
  this.visitWithGraphBuilderErrorHandling(
1202
1179
  element,
1203
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1180
+ new V1_ElementSecondPassBuilder(
1204
1181
  this.getBuilderContext(graph, input.model, element, options),
1205
1182
  ),
1206
1183
  ),
@@ -1212,7 +1189,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1212
1189
  input.data.runtimes.map((element) =>
1213
1190
  this.visitWithGraphBuilderErrorHandling(
1214
1191
  element,
1215
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1192
+ new V1_ElementSecondPassBuilder(
1216
1193
  this.getBuilderContext(graph, input.model, element, options),
1217
1194
  ),
1218
1195
  ),
@@ -1223,7 +1200,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1223
1200
 
1224
1201
  private async buildServices(
1225
1202
  graph: PureModel,
1226
- inputs: V1_GraphBuilderInput[],
1203
+ inputs: V1_PureGraphBuilderInput[],
1227
1204
  options?: GraphBuilderOptions,
1228
1205
  ): Promise<void> {
1229
1206
  await Promise.all(
@@ -1231,7 +1208,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1231
1208
  input.data.services.map((element) =>
1232
1209
  this.visitWithGraphBuilderErrorHandling(
1233
1210
  element,
1234
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1211
+ new V1_ElementSecondPassBuilder(
1235
1212
  this.getBuilderContext(graph, input.model, element, options),
1236
1213
  ),
1237
1214
  ),
@@ -1242,7 +1219,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1242
1219
 
1243
1220
  private async buildDataElements(
1244
1221
  graph: PureModel,
1245
- inputs: V1_GraphBuilderInput[],
1222
+ inputs: V1_PureGraphBuilderInput[],
1246
1223
  options?: GraphBuilderOptions,
1247
1224
  ): Promise<void> {
1248
1225
  await Promise.all(
@@ -1250,7 +1227,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1250
1227
  input.data.dataElements.map((element) =>
1251
1228
  this.visitWithGraphBuilderErrorHandling(
1252
1229
  element,
1253
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1230
+ new V1_ElementSecondPassBuilder(
1254
1231
  this.getBuilderContext(graph, input.model, element, options),
1255
1232
  ),
1256
1233
  ),
@@ -1261,7 +1238,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1261
1238
 
1262
1239
  private async buildFileGenerations(
1263
1240
  graph: PureModel,
1264
- inputs: V1_GraphBuilderInput[],
1241
+ inputs: V1_PureGraphBuilderInput[],
1265
1242
  options?: GraphBuilderOptions,
1266
1243
  ): Promise<void> {
1267
1244
  await Promise.all(
@@ -1269,7 +1246,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1269
1246
  input.data.fileGenerations.map((element) =>
1270
1247
  this.visitWithGraphBuilderErrorHandling(
1271
1248
  element,
1272
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1249
+ new V1_ElementSecondPassBuilder(
1273
1250
  this.getBuilderContext(graph, input.model, element, options),
1274
1251
  ),
1275
1252
  ),
@@ -1280,7 +1257,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1280
1257
 
1281
1258
  private async buildGenerationSpecifications(
1282
1259
  graph: PureModel,
1283
- inputs: V1_GraphBuilderInput[],
1260
+ inputs: V1_PureGraphBuilderInput[],
1284
1261
  options?: GraphBuilderOptions,
1285
1262
  ): Promise<void> {
1286
1263
  await Promise.all(
@@ -1288,7 +1265,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1288
1265
  input.data.generationSpecifications.map((element) =>
1289
1266
  this.visitWithGraphBuilderErrorHandling(
1290
1267
  element,
1291
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1268
+ new V1_ElementSecondPassBuilder(
1292
1269
  this.getBuilderContext(graph, input.model, element, options),
1293
1270
  ),
1294
1271
  ),
@@ -1299,7 +1276,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1299
1276
 
1300
1277
  private async buildSectionIndices(
1301
1278
  graph: PureModel,
1302
- inputs: V1_GraphBuilderInput[],
1279
+ inputs: V1_PureGraphBuilderInput[],
1303
1280
  options?: GraphBuilderOptions,
1304
1281
  ): Promise<void> {
1305
1282
  await Promise.all(
@@ -1307,7 +1284,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1307
1284
  input.data.sectionIndices.map((element) =>
1308
1285
  this.visitWithGraphBuilderErrorHandling(
1309
1286
  element,
1310
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1287
+ new V1_ElementSecondPassBuilder(
1311
1288
  this.getBuilderContext(graph, input.model, element, options),
1312
1289
  ),
1313
1290
  ),
@@ -1318,7 +1295,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1318
1295
 
1319
1296
  private async buildOtherElements(
1320
1297
  graph: PureModel,
1321
- inputs: V1_GraphBuilderInput[],
1298
+ inputs: V1_PureGraphBuilderInput[],
1322
1299
  options?: GraphBuilderOptions,
1323
1300
  ): Promise<void> {
1324
1301
  await Promise.all(
@@ -1330,7 +1307,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1330
1307
  (element) =>
1331
1308
  this.visitWithGraphBuilderErrorHandling(
1332
1309
  element,
1333
- new V1_ProtocolToMetaModelGraphSecondPassBuilder(
1310
+ new V1_ElementSecondPassBuilder(
1334
1311
  this.getBuilderContext(
1335
1312
  graph,
1336
1313
  input.model,
@@ -1348,7 +1325,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1348
1325
  (element) =>
1349
1326
  this.visitWithGraphBuilderErrorHandling(
1350
1327
  element,
1351
- new V1_ProtocolToMetaModelGraphThirdPassBuilder(
1328
+ new V1_ElementThirdPassBuilder(
1352
1329
  this.getBuilderContext(
1353
1330
  graph,
1354
1331
  input.model,
@@ -1366,7 +1343,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1366
1343
  (element) =>
1367
1344
  this.visitWithGraphBuilderErrorHandling(
1368
1345
  element,
1369
- new V1_ProtocolToMetaModelGraphFourthPassBuilder(
1346
+ new V1_ElementFourthPassBuilder(
1370
1347
  this.getBuilderContext(
1371
1348
  graph,
1372
1349
  input.model,
@@ -1384,7 +1361,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1384
1361
  (element) =>
1385
1362
  this.visitWithGraphBuilderErrorHandling(
1386
1363
  element,
1387
- new V1_ProtocolToMetaModelGraphFifthPassBuilder(
1364
+ new V1_ElementFifthPassBuilder(
1388
1365
  this.getBuilderContext(
1389
1366
  graph,
1390
1367
  input.model,
@@ -1463,8 +1440,15 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1463
1440
  async pureCodeToLambda(
1464
1441
  lambda: string,
1465
1442
  lambdaId?: string,
1443
+ options?: {
1444
+ pruneSourceInformation?: boolean;
1445
+ },
1466
1446
  ): Promise<RawLambda> {
1467
- const result = await this.engine.transformCodeToLambda(lambda, lambdaId);
1447
+ const result = await this.engine.transformCodeToLambda(
1448
+ lambda,
1449
+ lambdaId,
1450
+ options,
1451
+ );
1468
1452
  return new RawLambda(result.parameters, result.body);
1469
1453
  }
1470
1454
 
@@ -1734,6 +1718,9 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1734
1718
  ),
1735
1719
  );
1736
1720
  const result = results[0];
1721
+ if (result instanceof TestError) {
1722
+ throw new IllegalStateError(result.error);
1723
+ }
1737
1724
  assertType(result, TestFailed);
1738
1725
  const status = result.assertStatuses.find(
1739
1726
  (e) => e.assertion === baseAssertion,
@@ -1781,7 +1768,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1781
1768
  // deserialize json and builds metamodal raw value spec
1782
1769
  const rawValueSpecification = V1_deserializeRawValueSpecification(json);
1783
1770
  return rawValueSpecification.accept_RawValueSpecificationVisitor(
1784
- new V1_ProtocolToMetaModelRawValueSpecificationBuilder(
1771
+ new V1_RawValueSpecificationBuilder(
1785
1772
  new V1_GraphBuilderContextBuilder(
1786
1773
  graph,
1787
1774
  graph,
@@ -1969,10 +1956,10 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1969
1956
  };
1970
1957
 
1971
1958
  async executeMapping(
1972
- graph: PureModel,
1973
- mapping: Mapping,
1974
1959
  lambda: RawLambda,
1960
+ mapping: Mapping,
1975
1961
  runtime: Runtime,
1962
+ graph: PureModel,
1976
1963
  options?: ExecutionOptions,
1977
1964
  ): Promise<ExecutionResult> {
1978
1965
  return V1_buildExecutionResult(
@@ -1990,11 +1977,11 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1990
1977
  }
1991
1978
 
1992
1979
  generateExecuteTestData(
1993
- graph: PureModel,
1994
- mapping: Mapping,
1995
1980
  lambda: RawLambda,
1996
- runtime: Runtime,
1997
1981
  parameters: (string | number | boolean)[],
1982
+ mapping: Mapping,
1983
+ runtime: Runtime,
1984
+ graph: PureModel,
1998
1985
  options?: {
1999
1986
  anonymizeGeneratedData?: boolean;
2000
1987
  },
@@ -2017,10 +2004,10 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2017
2004
  }
2018
2005
 
2019
2006
  generateExecutionPlan(
2020
- graph: PureModel,
2021
- mapping: Mapping,
2022
2007
  lambda: RawLambda,
2008
+ mapping: Mapping,
2023
2009
  runtime: Runtime,
2010
+ graph: PureModel,
2024
2011
  ): Promise<RawExecutionPlan> {
2025
2012
  return this.engine.generateExecutionPlan(
2026
2013
  this.createExecutionInput(
@@ -2034,10 +2021,10 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2034
2021
  }
2035
2022
 
2036
2023
  async debugExecutionPlanGeneration(
2037
- graph: PureModel,
2038
- mapping: Mapping,
2039
2024
  lambda: RawLambda,
2025
+ mapping: Mapping,
2040
2026
  runtime: Runtime,
2027
+ graph: PureModel,
2041
2028
  ): Promise<{ plan: RawExecutionPlan; debug: string }> {
2042
2029
  const result = await this.engine.debugExecutionPlanGeneration(
2043
2030
  this.createExecutionInput(
@@ -2097,34 +2084,14 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2097
2084
 
2098
2085
  // --------------------------------------------- Service ---------------------------------------------
2099
2086
 
2100
- async runLegacyServiceTests(
2101
- service: Service,
2102
- graph: PureModel,
2103
- ): Promise<DEPRECATED__ServiceTestResult[]> {
2104
- const protocolGraph = this.getFullGraphModelData(graph);
2105
- const targetService = guaranteeNonNullable(
2106
- protocolGraph.elements
2107
- .filter(filterByType(V1_Service))
2108
- .find((element) => element.path === service.path),
2109
- `Can't run service test: service '${service.path}' not found`,
2110
- );
2111
- protocolGraph.elements = protocolGraph.elements.filter(
2112
- (element) => !(element instanceof V1_Service),
2113
- );
2114
- protocolGraph.elements.push(targetService);
2115
- return (await this.engine.runLegacyServiceTests(protocolGraph)).map(
2116
- V1_buildLegacyServiceTestResult,
2117
- );
2118
- }
2119
-
2120
2087
  async registerService(
2121
- graph: PureModel,
2122
2088
  service: Service,
2123
- groupdId: string,
2089
+ graph: PureModel,
2090
+ groupId: string,
2124
2091
  artifactId: string,
2092
+ version: string | undefined,
2125
2093
  server: string,
2126
2094
  executionMode: ServiceExecutionMode,
2127
- version: string | undefined,
2128
2095
  ): Promise<ServiceRegistrationResult> {
2129
2096
  const serverServiceInfo = await this.engine.getServerServiceInfo();
2130
2097
  // input
@@ -2141,7 +2108,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2141
2108
  break;
2142
2109
  }
2143
2110
  case ServiceExecutionMode.SEMI_INTERACTIVE: {
2144
- const sdlcInfo = new V1_AlloySDLC(groupdId, artifactId, version);
2111
+ const sdlcInfo = new V1_AlloySDLC(groupId, artifactId, version);
2145
2112
  const pointer = new V1_PureModelContextPointer(protocol, sdlcInfo);
2146
2113
  // data
2147
2114
  const data = new V1_PureModelContextData();
@@ -2178,7 +2145,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2178
2145
  break;
2179
2146
  }
2180
2147
  case ServiceExecutionMode.PROD: {
2181
- const sdlcInfo = new V1_AlloySDLC(groupdId, artifactId, version);
2148
+ const sdlcInfo = new V1_AlloySDLC(groupId, artifactId, version);
2182
2149
  const pointer = new V1_PureModelContextPointer(protocol, sdlcInfo);
2183
2150
  sdlcInfo.packageableElementPointers = [
2184
2151
  new V1_PackageableElementPointer(
@@ -2245,78 +2212,6 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2245
2212
  );
2246
2213
  }
2247
2214
 
2248
- // TODO: we could potentially reshape this method to build light graph with just indexing
2249
- // and return a slightly more complicated object instead: separating the graph and the dependencies part instead of
2250
- // return a list of `V1_GraphBuilderInput`. This method would be useful for any other light graph builder algo.
2251
- async indexEntitiesWithDependencyIntoGraph(
2252
- graph: PureModel,
2253
- _entities: Entity[],
2254
- dependencyEntities: Map<string, Entity[]>,
2255
- entityFilterFunc?: (entity: Entity) => boolean,
2256
- ): Promise<V1_GraphBuilderInput[]> {
2257
- let entities = _entities;
2258
- graph.dependencyManager.initialize(dependencyEntities);
2259
- if (entityFilterFunc) {
2260
- Array.from(dependencyEntities.entries()).forEach(
2261
- ([dependencyKey, dEntities]) => {
2262
- dependencyEntities.set(
2263
- dependencyKey,
2264
- dEntities.filter(entityFilterFunc),
2265
- );
2266
- },
2267
- );
2268
- entities = _entities.filter(entityFilterFunc);
2269
- }
2270
- const report = new GraphBuilderReport();
2271
- // build dependency pmcd models
2272
- const dependencyDataMap = new Map<string, V1_PureModelContextData>();
2273
- await Promise.all(
2274
- Array.from(dependencyEntities.entries()).map(([dependencyKey, value]) => {
2275
- const projectModelData = new V1_PureModelContextData();
2276
- dependencyDataMap.set(dependencyKey, projectModelData);
2277
- return V1_entitiesToPureModelContextData(
2278
- value,
2279
- projectModelData,
2280
-
2281
- this.pluginManager.getPureProtocolProcessorPlugins(),
2282
- );
2283
- }),
2284
- );
2285
- const dependencyGraphBuilderInput: V1_GraphBuilderInput[] = Array.from(
2286
- dependencyDataMap.entries(),
2287
- ).map(([dependencyKey, dependencyData]) => ({
2288
- data: indexPureModelContextData(
2289
- report,
2290
- dependencyData,
2291
- this.graphBuilderExtensions,
2292
- ),
2293
- model: graph.dependencyManager.getModel(dependencyKey),
2294
- }));
2295
- // build main pmcd
2296
- const data = new V1_PureModelContextData();
2297
- await V1_entitiesToPureModelContextData(
2298
- entities,
2299
- data,
2300
- this.pluginManager.getPureProtocolProcessorPlugins(),
2301
- );
2302
- const mainGraphBuilderInput: V1_GraphBuilderInput[] = [
2303
- {
2304
- model: graph,
2305
- data: indexPureModelContextData(
2306
- report,
2307
- data,
2308
- this.graphBuilderExtensions,
2309
- ),
2310
- },
2311
- ];
2312
- const graphBuilderInput = [
2313
- ...dependencyGraphBuilderInput,
2314
- ...mainGraphBuilderInput,
2315
- ];
2316
- await this.initializeAndIndexElements(graph, graphBuilderInput);
2317
- return graphBuilderInput;
2318
- }
2319
-
2320
2215
  // --------------------------------------------- Query ------------------------------------------------------
2321
2216
 
2322
2217
  async getQuery(queryId: string, graph: PureModel): Promise<Query> {
@@ -2403,18 +2298,15 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2403
2298
  };
2404
2299
 
2405
2300
  async analyzeMappingModelCoverage(
2406
- graph: PureModel,
2407
2301
  mapping: Mapping,
2302
+ graph: PureModel,
2408
2303
  ): Promise<MappingModelCoverageAnalysisResult> {
2409
- const modelCoverageAnalysisInput =
2410
- new V1_MappingModelCoverageAnalysisInput();
2411
- modelCoverageAnalysisInput.clientVersion =
2412
- V1_PureGraphManager.TARGET_PROTOCOL_VERSION;
2413
- modelCoverageAnalysisInput.mapping = mapping.path;
2414
- modelCoverageAnalysisInput.model =
2415
- this.buildMappingModelCoverageAnalysisInputContextData(graph);
2304
+ const input = new V1_MappingModelCoverageAnalysisInput();
2305
+ input.clientVersion = V1_PureGraphManager.TARGET_PROTOCOL_VERSION;
2306
+ input.mapping = mapping.path;
2307
+ input.model = this.buildMappingModelCoverageAnalysisInputContextData(graph);
2416
2308
  return V1_buildModelCoverageAnalysisResult(
2417
- await this.engine.analyzeMappingModelCoverage(modelCoverageAnalysisInput),
2309
+ await this.engine.analyzeMappingModelCoverage(input),
2418
2310
  );
2419
2311
  }
2420
2312
 
@@ -2429,22 +2321,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2429
2321
  );
2430
2322
  }
2431
2323
 
2432
- // --------------------------------------------- Utilities ---------------------------------------------
2433
-
2434
- elementToEntity = (
2435
- element: PackageableElement,
2436
- options?: {
2437
- pruneSourceInformation?: boolean;
2438
- },
2439
- ): Entity => {
2440
- const entity = this.elementProtocolToEntity(
2441
- this.elementToProtocol<V1_PackageableElement>(element),
2442
- );
2443
- if (options?.pruneSourceInformation) {
2444
- entity.content = pruneSourceInformation(entity.content);
2445
- }
2446
- return entity;
2447
- };
2324
+ // --------------------------------------------- Database ---------------------------------------------
2448
2325
 
2449
2326
  async buildDatabase(input: DatabaseBuilderInput): Promise<Entity[]> {
2450
2327
  const dbBuilderInput = new V1_DatabaseBuilderInput();
@@ -2589,21 +2466,125 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2589
2466
  );
2590
2467
  }
2591
2468
 
2469
+ // --------------------------------------------- Utilities ---------------------------------------------
2470
+
2471
+ elementToEntity = (
2472
+ element: PackageableElement,
2473
+ options?: {
2474
+ pruneSourceInformation?: boolean;
2475
+ },
2476
+ ): Entity => {
2477
+ const entity = this.elementProtocolToEntity(
2478
+ this.elementToProtocol<V1_PackageableElement>(element),
2479
+ );
2480
+ if (options?.pruneSourceInformation) {
2481
+ entity.content = pruneSourceInformation(entity.content);
2482
+ }
2483
+ return entity;
2484
+ };
2485
+
2592
2486
  // --------------------------------------------- Shared ---------------------------------------------
2593
2487
 
2594
- private async entitiesToPureModelContextData(
2488
+ /**
2489
+ * This method helps indexing the graph from graph and dependencies' entities
2490
+ * This will produce a _light_ graph with empty unprocesed elements, they are just indexed in the graph
2491
+ * and the Pure model context data which can be used to further build the graph
2492
+ *
2493
+ * There are a few simple analytics we want to do on the graph which does not necessarily
2494
+ * require us to build the full-graph, in fact, doing so would be too costly. In those scenarios,
2495
+ * we need to build the _light_ graph, hence the existence of this utility method
2496
+ *
2497
+ * TODO?: do we need to account for system elements?
2498
+ */
2499
+ async indexLightGraph(
2500
+ graph: PureModel,
2595
2501
  entities: Entity[],
2596
- ): Promise<V1_PureModelContextData> {
2597
- const graphData = new V1_PureModelContextData();
2502
+ dependencyEntities: Map<string, Entity[]>,
2503
+ entityFilterFn?: ((entity: Entity) => boolean) | undefined,
2504
+ entityProcessorFn?: ((entity: Entity) => Entity) | undefined,
2505
+ ): Promise<V1_PureGraphBuilderInput[]> {
2506
+ const report = new GraphBuilderReport();
2507
+
2508
+ // build main graph builder input
2509
+ const data = new V1_PureModelContextData();
2598
2510
  await V1_entitiesToPureModelContextData(
2599
- entities,
2600
- graphData,
2511
+ entities
2512
+ .filter((entity) => {
2513
+ // never exclude section index as it could be used for path resolution when building the graph later
2514
+ if (entity.classifierPath === CORE_PURE_PATH.SECTION_INDEX) {
2515
+ return true;
2516
+ }
2517
+ if (entityFilterFn) {
2518
+ return entityFilterFn(entity);
2519
+ }
2520
+ return true;
2521
+ })
2522
+ .map((entity) =>
2523
+ entityProcessorFn ? entityProcessorFn(entity) : entity,
2524
+ ),
2525
+ data,
2601
2526
  this.pluginManager.getPureProtocolProcessorPlugins(),
2602
2527
  );
2603
- return graphData;
2528
+ const mainGraphBuilderInput: V1_PureGraphBuilderInput[] = [
2529
+ {
2530
+ model: graph,
2531
+ data: V1_indexPureModelContextData(
2532
+ report,
2533
+ data,
2534
+ this.graphBuilderExtensions,
2535
+ ),
2536
+ },
2537
+ ];
2538
+
2539
+ // build dependencies graph builder input
2540
+ graph.dependencyManager.initialize(dependencyEntities);
2541
+ const dependencyGraphDataIndex = new Map<string, V1_PureModelContextData>();
2542
+ await Promise.all(
2543
+ Array.from(dependencyEntities.entries()).map(([dependencyKey, value]) => {
2544
+ const projectModelData = new V1_PureModelContextData();
2545
+ dependencyGraphDataIndex.set(dependencyKey, projectModelData);
2546
+ return V1_entitiesToPureModelContextData(
2547
+ value
2548
+ .filter((entity) => {
2549
+ // never exclude section index as it could be used for path resolution when building the graph later
2550
+ if (entity.classifierPath === CORE_PURE_PATH.SECTION_INDEX) {
2551
+ return true;
2552
+ }
2553
+ if (entityFilterFn) {
2554
+ return entityFilterFn(entity);
2555
+ }
2556
+ return true;
2557
+ })
2558
+ .map((entity) =>
2559
+ entityProcessorFn ? entityProcessorFn(entity) : entity,
2560
+ ),
2561
+ projectModelData,
2562
+ this.pluginManager.getPureProtocolProcessorPlugins(),
2563
+ );
2564
+ }),
2565
+ );
2566
+ const dependencyGraphBuilderInput: V1_PureGraphBuilderInput[] = Array.from(
2567
+ dependencyGraphDataIndex.entries(),
2568
+ ).map(([dependencyKey, dependencyData]) => ({
2569
+ data: V1_indexPureModelContextData(
2570
+ report,
2571
+ dependencyData,
2572
+ this.graphBuilderExtensions,
2573
+ ),
2574
+ model: graph.dependencyManager.getModel(dependencyKey),
2575
+ }));
2576
+
2577
+ // index simplified graph
2578
+ const graphBuilderInput = [
2579
+ ...dependencyGraphBuilderInput,
2580
+ ...mainGraphBuilderInput,
2581
+ ];
2582
+ await this.initializeAndIndexElements(graph, graphBuilderInput);
2583
+
2584
+ return graphBuilderInput;
2604
2585
  }
2605
2586
 
2606
- private getFullGraphModelData(
2587
+ getFullGraphModelData(
2607
2588
  graph: PureModel,
2608
2589
  options?: { keepSourceInformation?: boolean | undefined } | undefined,
2609
2590
  ): V1_PureModelContextData {
@@ -2618,6 +2599,29 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2618
2599
  return contextData1;
2619
2600
  }
2620
2601
 
2602
+ elementProtocolToEntity = (
2603
+ elementProtocol: V1_PackageableElement,
2604
+ ): Entity => ({
2605
+ path: this.getElementPath(elementProtocol),
2606
+ content: V1_serializePackageableElement(
2607
+ elementProtocol,
2608
+ this.pluginManager.getPureProtocolProcessorPlugins(),
2609
+ ),
2610
+ classifierPath: this.getElementClassiferPath(elementProtocol),
2611
+ });
2612
+
2613
+ private async entitiesToPureModelContextData(
2614
+ entities: Entity[],
2615
+ ): Promise<V1_PureModelContextData> {
2616
+ const graphData = new V1_PureModelContextData();
2617
+ await V1_entitiesToPureModelContextData(
2618
+ entities,
2619
+ graphData,
2620
+ this.pluginManager.getPureProtocolProcessorPlugins(),
2621
+ );
2622
+ return graphData;
2623
+ }
2624
+
2621
2625
  private elementToProtocol = <T extends V1_PackageableElement>(
2622
2626
  element: PackageableElement,
2623
2627
  options?: { keepSourceInformation?: boolean | undefined } | undefined,
@@ -2639,17 +2643,6 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2639
2643
  this.elementProtocolToEntity(element),
2640
2644
  );
2641
2645
 
2642
- private elementProtocolToEntity = (
2643
- elementProtocol: V1_PackageableElement,
2644
- ): Entity => ({
2645
- path: this.getElementPath(elementProtocol),
2646
- content: V1_serializePackageableElement(
2647
- elementProtocol,
2648
- this.pluginManager.getPureProtocolProcessorPlugins(),
2649
- ),
2650
- classifierPath: this.getElementClassiferPath(elementProtocol),
2651
- });
2652
-
2653
2646
  private getElementPath = (elementProtocol: V1_PackageableElement): string => {
2654
2647
  let name = elementProtocol.name;
2655
2648
  // These functions calculation the function suffix and are used to identify if an
@@ -2658,7 +2651,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
2658
2651
  // TODO: to be revised when we support function overloading
2659
2652
  if (elementProtocol instanceof V1_ConcreteFunctionDefinition) {
2660
2653
  const suffixIndex = elementProtocol.name.indexOf(
2661
- getFunctionSuffix(elementProtocol),
2654
+ V1_getFunctionSuffix(elementProtocol),
2662
2655
  );
2663
2656
  if (suffixIndex > 0) {
2664
2657
  name = elementProtocol.name.substring(0, suffixIndex - 1);