@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
@@ -14,8 +14,8 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import { GRAPH_MANAGER_EVENT } from '../../../../graphManager/GraphManagerEvent.js';
17
- import { CORE_PURE_PATH, ELEMENT_PATH_DELIMITER, PackageableElementPointerType, } from '../../../../MetaModelConst.js';
18
- import { TracerService, LogEvent, getClass, guaranteeNonNullable, UnsupportedOperationError, assertTrue, assertErrorThrown, promisify, StopWatch, filterByType, isNonNullable, addUniqueEntry, uuid, deleteEntry, assertType, uniq, } from '@finos/legend-shared';
17
+ import { CORE_PURE_PATH, PackageableElementPointerType, } from '../../../../MetaModelConst.js';
18
+ import { TracerService, LogEvent, getClass, guaranteeNonNullable, UnsupportedOperationError, assertTrue, assertErrorThrown, promisify, StopWatch, isNonNullable, addUniqueEntry, uuid, deleteEntry, assertType, uniq, IllegalStateError, } from '@finos/legend-shared';
19
19
  import { AbstractPureGraphManager, } from '../../../../graphManager/AbstractPureGraphManager.js';
20
20
  import { PureModel, } from '../../../../graph/PureModel.js';
21
21
  import { RawLambda } from '../../../metamodels/pure/rawValueSpecification/RawLambda.js';
@@ -28,12 +28,12 @@ import { V1_serializePackageableElement } from './transformation/pureProtocol/V1
28
28
  import { V1_entitiesToPureModelContextData, V1_serializePureModelContext, V1_deserializePureModelContextData, V1_setupPureModelContextDataSerialization, } from './transformation/pureProtocol/V1_PureProtocolSerialization.js';
29
29
  import { V1_PureModelContextData } from './model/context/V1_PureModelContextData.js';
30
30
  import { V1_PackageableElementPointer, } from './model/packageableElements/V1_PackageableElement.js';
31
- import { V1_ProtocolToMetaModelGraphFirstPassBuilder } from './transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js';
32
- import { V1_ProtocolToMetaModelGraphSecondPassBuilder } from './transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js';
33
- import { V1_ProtocolToMetaModelGraphThirdPassBuilder } from './transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js';
34
- import { V1_ProtocolToMetaModelGraphFourthPassBuilder } from './transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.js';
35
- import { V1_ProtocolToMetaModelGraphFifthPassBuilder } from './transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.js';
36
- import { V1_ProtocolToMetaModelRawValueSpecificationBuilder } from './transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.js';
31
+ import { V1_ElementFirstPassBuilder } from './transformation/pureGraph/to/V1_ElementFirstPassBuilder.js';
32
+ import { V1_ElementSecondPassBuilder } from './transformation/pureGraph/to/V1_ElementSecondPassBuilder.js';
33
+ import { V1_ElementThirdPassBuilder } from './transformation/pureGraph/to/V1_ElementThirdPassBuilder.js';
34
+ import { V1_ElementFourthPassBuilder } from './transformation/pureGraph/to/V1_ElementFourthPassBuilder.js';
35
+ import { V1_ElementFifthPassBuilder } from './transformation/pureGraph/to/V1_ElementFifthPassBuilder.js';
36
+ import { V1_RawValueSpecificationBuilder } from './transformation/pureGraph/to/V1_RawValueSpecificationBuilder.js';
37
37
  import { V1_RawBaseExecutionContext } from './model/rawValueSpecification/V1_RawExecutionContext.js';
38
38
  import { V1_GraphBuilderContextBuilder, } from './transformation/pureGraph/to/V1_GraphBuilderContext.js';
39
39
  import { V1_PureModelContextPointer } from './model/context/V1_PureModelContextPointer.js';
@@ -72,7 +72,7 @@ import { V1_GraphTransformerContextBuilder } from './transformation/pureGraph/fr
72
72
  import { V1_transformExecutionNode, V1_transformExecutionPlan, } from './transformation/pureGraph/from/executionPlan/V1_ExecutionPlanTransformer.js';
73
73
  import { V1_deserializeExecutionPlan, V1_serializeExecutionNode, V1_serializeExecutionPlan, } from './transformation/pureProtocol/serializationHelpers/executionPlan/V1_ExecutionPlanSerializationHelper.js';
74
74
  import { V1_buildExecutionPlan } from './transformation/pureGraph/to/V1_ExecutionPlanBuilder.js';
75
- import { V1_buildQuery, V1_buildLegacyServiceTestResult, V1_buildServiceRegistrationResult, V1_transformQuery, V1_buildGenerationOutput, V1_buildLightQuery, V1_transformQuerySearchSpecification, } from './engine/V1_EngineHelper.js';
75
+ import { V1_buildQuery, V1_buildServiceRegistrationResult, V1_transformQuery, V1_buildGenerationOutput, V1_buildLightQuery, V1_transformQuerySearchSpecification, } from './engine/V1_EngineHelper.js';
76
76
  import { V1_buildExecutionResult } from './engine/execution/V1_ExecutionHelper.js';
77
77
  import { ENTITY_PATH_DELIMITER, } from '@finos/legend-model-storage';
78
78
  import { DependencyGraphBuilderError, GraphBuilderError, PureClientVersion, SystemGraphBuilderError, } from '../../../../graphManager/GraphManagerUtils.js';
@@ -83,29 +83,13 @@ import { V1_DataElement } from './model/packageableElements/data/V1_DataElement.
83
83
  import { V1_RunTestsInput, V1_RunTestsTestableInput, } from './engine/test/V1_RunTestsInput.js';
84
84
  import { V1_AtomicTestId } from './model/test/V1_AtomicTestId.js';
85
85
  import { V1_buildTestsResult } from './engine/test/V1_RunTestsResult.js';
86
- import { TestFailed, } from '../../../metamodels/pure/test/result/TestResult.js';
86
+ import { TestFailed, TestError, } from '../../../metamodels/pure/test/result/TestResult.js';
87
87
  import { getNullableIDFromTestable, getNullableTestable, } from '../../../../helpers/Testable_Helper.js';
88
88
  import { TestSuite, } from '../../../metamodels/pure/test/Test.js';
89
89
  import { pruneSourceInformation } from '../../../../MetaModelUtils.js';
90
- import { V1_buildModelCoverageAnalysisResult, V1_MappingModelCoverageAnalysisInput, V1_MappingModelCoverageAnalysisResult, } from './engine/analytics/V1_MappingAnalytics.js';
90
+ import { V1_buildModelCoverageAnalysisResult, V1_MappingModelCoverageAnalysisInput, V1_MappingModelCoverageAnalysisResult, } from './engine/analytics/V1_MappingModelCoverageAnalysis.js';
91
91
  import { deserialize } from 'serializr';
92
- const V1_FUNCTION_SUFFIX_MULTIPLICITY_INFINITE = 'MANY';
93
- const getMultiplicitySuffix = (multiplicity) => {
94
- if (multiplicity.lowerBound === multiplicity.upperBound) {
95
- return multiplicity.lowerBound.toString();
96
- }
97
- else if (multiplicity.lowerBound === 0 &&
98
- multiplicity.upperBound === undefined) {
99
- return V1_FUNCTION_SUFFIX_MULTIPLICITY_INFINITE;
100
- }
101
- return `$${multiplicity.lowerBound}_${multiplicity.upperBound ?? V1_FUNCTION_SUFFIX_MULTIPLICITY_INFINITE}$`;
102
- };
103
- const getVariableSuffix = (variable) => `${variable.class
104
- .split(ELEMENT_PATH_DELIMITER)
105
- .pop()}_${getMultiplicitySuffix(variable.multiplicity)}_`;
106
- const getFunctionSuffix = (fn) => `${fn.parameters.map((p) => getVariableSuffix(p)).join('_')}_${fn.returnType
107
- .split(ELEMENT_PATH_DELIMITER)
108
- .pop()}_${getMultiplicitySuffix(fn.returnMultiplicity)}_`;
92
+ import { V1_getFunctionSuffix } from './helper/V1_DomainHelper.js';
109
93
  class V1_PureModelContextDataIndex {
110
94
  elements = [];
111
95
  nativeElements = [];
@@ -135,7 +119,7 @@ const mergePureModelContextData = (...data) => {
135
119
  }
136
120
  return mergedData;
137
121
  };
138
- const indexPureModelContextData = (report, data, extensions) => {
122
+ export const V1_indexPureModelContextData = (report, data, extensions) => {
139
123
  const index = new V1_PureModelContextDataIndex();
140
124
  index.elements = data.elements;
141
125
  const otherElementsByClass = new Map();
@@ -288,7 +272,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
288
272
  const buildInputs = [
289
273
  {
290
274
  model: systemModel,
291
- data: indexPureModelContextData(report, systemData, this.graphBuilderExtensions),
275
+ data: V1_indexPureModelContextData(report, systemData, this.graphBuilderExtensions),
292
276
  },
293
277
  ];
294
278
  // build
@@ -310,7 +294,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
310
294
  buildState.setMessage(undefined);
311
295
  }
312
296
  }
313
- async buildDependencies(coreModel, systemModel, dependencyManager, dependencyEntitiesMap, buildState, options) {
297
+ async buildDependencies(coreModel, systemModel, dependencyManager, dependencyEntitiesIndex, buildState, options) {
314
298
  const stopWatch = new StopWatch();
315
299
  const report = new GraphBuilderReport();
316
300
  buildState.reset();
@@ -318,25 +302,25 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
318
302
  const graph = new PureModel(coreModel, systemModel, this.pluginManager.getPureGraphPlugins());
319
303
  graph.dependencyManager = dependencyManager;
320
304
  try {
321
- dependencyManager.initialize(dependencyEntitiesMap);
305
+ dependencyManager.initialize(dependencyEntitiesIndex);
322
306
  // deserialize
323
307
  buildState.setMessage(`Partitioning and deserializing elements...`);
324
- const dependencyDataMap = new Map();
325
- await Promise.all(Array.from(dependencyEntitiesMap.entries()).map(([dependencyKey, entities]) => {
308
+ const dependencyGraphDataIndex = new Map();
309
+ await Promise.all(Array.from(dependencyEntitiesIndex.entries()).map(([dependencyKey, entities]) => {
326
310
  const projectModelData = new V1_PureModelContextData();
327
- dependencyDataMap.set(dependencyKey, projectModelData);
311
+ dependencyGraphDataIndex.set(dependencyKey, projectModelData);
328
312
  return V1_entitiesToPureModelContextData(entities, projectModelData, this.pluginManager.getPureProtocolProcessorPlugins());
329
313
  }));
330
314
  stopWatch.record(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_ELEMENTS_DESERIALIZED);
331
315
  // prepare build inputs
332
- const buildInputs = Array.from(dependencyDataMap.entries()).map(([dependencyKey, dependencyData]) => ({
316
+ const buildInputs = Array.from(dependencyGraphDataIndex.entries()).map(([dependencyKey, dependencyData]) => ({
333
317
  model: graph.dependencyManager.getModel(dependencyKey),
334
- data: indexPureModelContextData(report, dependencyData, this.graphBuilderExtensions),
318
+ data: V1_indexPureModelContextData(report, dependencyData, this.graphBuilderExtensions),
335
319
  }));
336
320
  // build
337
321
  await this.buildGraphFromInputs(graph, buildInputs, report, stopWatch, buildState, options);
338
322
  buildState.pass();
339
- report.otherStats.projectCount = dependencyEntitiesMap.size;
323
+ report.otherStats.projectCount = dependencyEntitiesIndex.size;
340
324
  report.timings = {
341
325
  ...Object.fromEntries(stopWatch.records),
342
326
  [GRAPH_MANAGER_EVENT.GRAPH_BUILDER_COMPLETED]: stopWatch.elapsed,
@@ -367,7 +351,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
367
351
  const buildInputs = [
368
352
  {
369
353
  model: graph,
370
- data: indexPureModelContextData(report, data, this.graphBuilderExtensions),
354
+ data: V1_indexPureModelContextData(report, data, this.graphBuilderExtensions),
371
355
  },
372
356
  ];
373
357
  // build
@@ -411,22 +395,22 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
411
395
  try {
412
396
  // deserialize
413
397
  buildState.setMessage(`Deserializing elements...`);
414
- const generatedDataMap = new Map();
398
+ const generationGraphDataIndex = new Map();
415
399
  await Promise.all(Array.from(generatedEntities.entries()).map(([generationParentPath, entities]) => {
416
400
  const generatedData = new V1_PureModelContextData();
417
- generatedDataMap.set(generationParentPath, generatedData);
401
+ generationGraphDataIndex.set(generationParentPath, generatedData);
418
402
  return V1_entitiesToPureModelContextData(entities, generatedData, this.pluginManager.getPureProtocolProcessorPlugins());
419
403
  }));
420
404
  stopWatch.record(GRAPH_MANAGER_EVENT.GRAPH_BUILDER_ELEMENTS_DESERIALIZED);
421
405
  // prepare build inputs
422
- const buildInputs = Array.from(generatedDataMap.entries()).map(([generationParentPath, generatedData]) => ({
406
+ const buildInputs = Array.from(generationGraphDataIndex.entries()).map(([generationParentPath, generatedData]) => ({
423
407
  model: generatedModel,
424
- data: indexPureModelContextData(report, generatedData, this.graphBuilderExtensions),
408
+ data: V1_indexPureModelContextData(report, generatedData, this.graphBuilderExtensions),
425
409
  }));
426
410
  // build
427
411
  await this.buildGraphFromInputs(graph, buildInputs, report, stopWatch, buildState, options);
428
412
  buildState.pass();
429
- report.otherStats.generationCount = generatedDataMap.size;
413
+ report.otherStats.generationCount = generationGraphDataIndex.size;
430
414
  report.timings = {
431
415
  ...Object.fromEntries(stopWatch.records),
432
416
  [GRAPH_MANAGER_EVENT.GRAPH_BUILDER_COMPLETED]: stopWatch.elapsed,
@@ -512,63 +496,63 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
512
496
  await Promise.all(inputs.flatMap(async (input) => {
513
497
  // create the package cache
514
498
  const packageCache = new Map();
515
- await Promise.all(input.data.nativeElements.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphFirstPassBuilder(this.getBuilderContext(graph, input.model, element, options), packageCache, elementPathCache))));
516
- await Promise.all(this.graphBuilderExtensions.sortedExtraElementBuilders.flatMap(async (builder) => (input.data.otherElementsByBuilder.get(builder) ?? []).map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphFirstPassBuilder(this.getBuilderContext(graph, input.model, element, options), packageCache, elementPathCache)))));
499
+ await Promise.all(input.data.nativeElements.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementFirstPassBuilder(this.getBuilderContext(graph, input.model, element, options), packageCache, elementPathCache))));
500
+ await Promise.all(this.graphBuilderExtensions.sortedExtraElementBuilders.flatMap(async (builder) => (input.data.otherElementsByBuilder.get(builder) ?? []).map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementFirstPassBuilder(this.getBuilderContext(graph, input.model, element, options), packageCache, elementPathCache)))));
517
501
  }));
518
502
  }
519
503
  async buildTypes(graph, inputs, options) {
520
504
  // Second pass
521
- await Promise.all(inputs.flatMap((input) => input.data.profiles.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
522
- await Promise.all(inputs.flatMap((input) => input.data.classes.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
523
- await Promise.all(inputs.flatMap((input) => input.data.enumerations.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
524
- await Promise.all(inputs.flatMap((input) => input.data.measures.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
525
- await Promise.all(inputs.flatMap((input) => input.data.functions.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
505
+ await Promise.all(inputs.flatMap((input) => input.data.profiles.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
506
+ await Promise.all(inputs.flatMap((input) => input.data.classes.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
507
+ await Promise.all(inputs.flatMap((input) => input.data.enumerations.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
508
+ await Promise.all(inputs.flatMap((input) => input.data.measures.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
509
+ await Promise.all(inputs.flatMap((input) => input.data.functions.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
526
510
  // Third pass
527
- await Promise.all(inputs.flatMap((input) => input.data.classes.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphThirdPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
528
- await Promise.all(inputs.flatMap((input) => input.data.associations.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphThirdPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
511
+ await Promise.all(inputs.flatMap((input) => input.data.classes.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementThirdPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
512
+ await Promise.all(inputs.flatMap((input) => input.data.associations.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementThirdPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
529
513
  // Fourth Pass
530
- await Promise.all(inputs.flatMap((input) => input.data.classes.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphFourthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
531
- await Promise.all(inputs.flatMap((input) => input.data.associations.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphFourthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
514
+ await Promise.all(inputs.flatMap((input) => input.data.classes.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementFourthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
515
+ await Promise.all(inputs.flatMap((input) => input.data.associations.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementFourthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
532
516
  // Fifth pass
533
- await Promise.all(inputs.flatMap((input) => input.data.classes.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphFifthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
517
+ await Promise.all(inputs.flatMap((input) => input.data.classes.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementFifthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
534
518
  }
535
519
  async buildStores(graph, inputs, options) {
536
- await Promise.all(inputs.flatMap((input) => input.data.stores.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
537
- await Promise.all(inputs.flatMap((input) => input.data.stores.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphThirdPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
538
- await Promise.all(inputs.flatMap((input) => input.data.stores.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphFourthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
539
- await Promise.all(inputs.flatMap((input) => input.data.stores.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphFifthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
520
+ await Promise.all(inputs.flatMap((input) => input.data.stores.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
521
+ await Promise.all(inputs.flatMap((input) => input.data.stores.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementThirdPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
522
+ await Promise.all(inputs.flatMap((input) => input.data.stores.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementFourthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
523
+ await Promise.all(inputs.flatMap((input) => input.data.stores.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementFifthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
540
524
  }
541
525
  async buildMappings(graph, inputs, options) {
542
- await Promise.all(inputs.flatMap((input) => input.data.mappings.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
543
- await Promise.all(inputs.flatMap((input) => input.data.mappings.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphThirdPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
544
- await Promise.all(inputs.flatMap((input) => input.data.mappings.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphFourthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
526
+ await Promise.all(inputs.flatMap((input) => input.data.mappings.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
527
+ await Promise.all(inputs.flatMap((input) => input.data.mappings.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementThirdPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
528
+ await Promise.all(inputs.flatMap((input) => input.data.mappings.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementFourthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
545
529
  }
546
530
  async buildConnectionsAndRuntimes(graph, inputs, options) {
547
531
  // NOTE: connections must be built before runtimes
548
- await Promise.all(inputs.flatMap((input) => input.data.connections.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
549
- await Promise.all(inputs.flatMap((input) => input.data.runtimes.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
532
+ await Promise.all(inputs.flatMap((input) => input.data.connections.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
533
+ await Promise.all(inputs.flatMap((input) => input.data.runtimes.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
550
534
  }
551
535
  async buildServices(graph, inputs, options) {
552
- await Promise.all(inputs.flatMap((input) => input.data.services.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
536
+ await Promise.all(inputs.flatMap((input) => input.data.services.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
553
537
  }
554
538
  async buildDataElements(graph, inputs, options) {
555
- await Promise.all(inputs.flatMap((input) => input.data.dataElements.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
539
+ await Promise.all(inputs.flatMap((input) => input.data.dataElements.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
556
540
  }
557
541
  async buildFileGenerations(graph, inputs, options) {
558
- await Promise.all(inputs.flatMap((input) => input.data.fileGenerations.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
542
+ await Promise.all(inputs.flatMap((input) => input.data.fileGenerations.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
559
543
  }
560
544
  async buildGenerationSpecifications(graph, inputs, options) {
561
- await Promise.all(inputs.flatMap((input) => input.data.generationSpecifications.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
545
+ await Promise.all(inputs.flatMap((input) => input.data.generationSpecifications.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
562
546
  }
563
547
  async buildSectionIndices(graph, inputs, options) {
564
- await Promise.all(inputs.flatMap((input) => input.data.sectionIndices.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
548
+ await Promise.all(inputs.flatMap((input) => input.data.sectionIndices.map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
565
549
  }
566
550
  async buildOtherElements(graph, inputs, options) {
567
551
  await Promise.all(this.graphBuilderExtensions.sortedExtraElementBuilders.map(async (builder) => {
568
- await Promise.all(inputs.flatMap((input) => (input.data.otherElementsByBuilder.get(builder) ?? []).map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
569
- await Promise.all(inputs.flatMap((input) => (input.data.otherElementsByBuilder.get(builder) ?? []).map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphThirdPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
570
- await Promise.all(inputs.flatMap((input) => (input.data.otherElementsByBuilder.get(builder) ?? []).map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphFourthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
571
- await Promise.all(inputs.flatMap((input) => (input.data.otherElementsByBuilder.get(builder) ?? []).map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ProtocolToMetaModelGraphFifthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
552
+ await Promise.all(inputs.flatMap((input) => (input.data.otherElementsByBuilder.get(builder) ?? []).map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementSecondPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
553
+ await Promise.all(inputs.flatMap((input) => (input.data.otherElementsByBuilder.get(builder) ?? []).map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementThirdPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
554
+ await Promise.all(inputs.flatMap((input) => (input.data.otherElementsByBuilder.get(builder) ?? []).map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementFourthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
555
+ await Promise.all(inputs.flatMap((input) => (input.data.otherElementsByBuilder.get(builder) ?? []).map((element) => this.visitWithGraphBuilderErrorHandling(element, new V1_ElementFifthPassBuilder(this.getBuilderContext(graph, input.model, element, options))))));
572
556
  }));
573
557
  }
574
558
  visitWithGraphBuilderErrorHandling(element, visitor) {
@@ -602,8 +586,8 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
602
586
  !(el instanceof V1_SectionIndex));
603
587
  return this.pureModelContextDataToEntities(pmcd);
604
588
  }
605
- async pureCodeToLambda(lambda, lambdaId) {
606
- const result = await this.engine.transformCodeToLambda(lambda, lambdaId);
589
+ async pureCodeToLambda(lambda, lambdaId, options) {
590
+ const result = await this.engine.transformCodeToLambda(lambda, lambdaId, options);
607
591
  return new RawLambda(result.parameters, result.body);
608
592
  }
609
593
  async lambdaToPureCode(lambda, pretty) {
@@ -727,6 +711,9 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
727
711
  const runTestsResult = await this.engine.runTests(runTestsInput);
728
712
  const results = V1_buildTestsResult(runTestsResult, (_id) => getNullableTestable(_id, graph, this.pluginManager.getPureGraphManagerPlugins()));
729
713
  const result = results[0];
714
+ if (result instanceof TestError) {
715
+ throw new IllegalStateError(result.error);
716
+ }
730
717
  assertType(result, TestFailed);
731
718
  const status = result.assertStatuses.find((e) => e.assertion === baseAssertion);
732
719
  return guaranteeNonNullable(status);
@@ -751,7 +738,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
751
738
  const json = this.serializeValueSpecification(valueSpecification);
752
739
  // deserialize json and builds metamodal raw value spec
753
740
  const rawValueSpecification = V1_deserializeRawValueSpecification(json);
754
- return rawValueSpecification.accept_RawValueSpecificationVisitor(new V1_ProtocolToMetaModelRawValueSpecificationBuilder(new V1_GraphBuilderContextBuilder(graph, graph, this.graphBuilderExtensions, this.log).build()));
741
+ return rawValueSpecification.accept_RawValueSpecificationVisitor(new V1_RawValueSpecificationBuilder(new V1_GraphBuilderContextBuilder(graph, graph, this.graphBuilderExtensions, this.log).build()));
755
742
  }
756
743
  serializeRawValueSpecification(metamodel) {
757
744
  return V1_serializeRawValueSpecification(metamodel.accept_RawValueSpecificationVisitor(new V1_RawValueSpecificationTransformer(new V1_GraphTransformerContextBuilder(this.pluginManager.getPureProtocolProcessorPlugins()).build())));
@@ -841,20 +828,20 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
841
828
  executeInput.context = new V1_RawBaseExecutionContext(); // TODO: potentially need to support more types
842
829
  return executeInput;
843
830
  };
844
- async executeMapping(graph, mapping, lambda, runtime, options) {
831
+ async executeMapping(lambda, mapping, runtime, graph, options) {
845
832
  return V1_buildExecutionResult(await this.engine.executeMapping(this.createExecutionInput(graph, mapping, lambda, runtime, V1_PureGraphManager.TARGET_PROTOCOL_VERSION), options));
846
833
  }
847
- generateExecuteTestData(graph, mapping, lambda, runtime, parameters, options) {
834
+ generateExecuteTestData(lambda, parameters, mapping, runtime, graph, options) {
848
835
  const testDataGenerationExecuteInput = new V1_TestDataGenerationExecutionInput();
849
836
  this.buildExecutionInput(graph, mapping, lambda, runtime, V1_PureGraphManager.TARGET_PROTOCOL_VERSION, testDataGenerationExecuteInput);
850
837
  testDataGenerationExecuteInput.parameters = parameters;
851
838
  testDataGenerationExecuteInput.hashStrings = Boolean(options?.anonymizeGeneratedData);
852
839
  return this.engine.generateExecuteTestData(testDataGenerationExecuteInput);
853
840
  }
854
- generateExecutionPlan(graph, mapping, lambda, runtime) {
841
+ generateExecutionPlan(lambda, mapping, runtime, graph) {
855
842
  return this.engine.generateExecutionPlan(this.createExecutionInput(graph, mapping, lambda, runtime, V1_PureGraphManager.TARGET_PROTOCOL_VERSION));
856
843
  }
857
- async debugExecutionPlanGeneration(graph, mapping, lambda, runtime) {
844
+ async debugExecutionPlanGeneration(lambda, mapping, runtime, graph) {
858
845
  const result = await this.engine.debugExecutionPlanGeneration(this.createExecutionInput(graph, mapping, lambda, runtime, V1_PureGraphManager.TARGET_PROTOCOL_VERSION));
859
846
  return {
860
847
  plan: result.plan,
@@ -871,16 +858,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
871
858
  return V1_serializeExecutionNode(V1_transformExecutionNode(executionNode, new V1_GraphTransformerContextBuilder(this.pluginManager.getPureProtocolProcessorPlugins()).build()));
872
859
  }
873
860
  // --------------------------------------------- Service ---------------------------------------------
874
- async runLegacyServiceTests(service, graph) {
875
- const protocolGraph = this.getFullGraphModelData(graph);
876
- const targetService = guaranteeNonNullable(protocolGraph.elements
877
- .filter(filterByType(V1_Service))
878
- .find((element) => element.path === service.path), `Can't run service test: service '${service.path}' not found`);
879
- protocolGraph.elements = protocolGraph.elements.filter((element) => !(element instanceof V1_Service));
880
- protocolGraph.elements.push(targetService);
881
- return (await this.engine.runLegacyServiceTests(protocolGraph)).map(V1_buildLegacyServiceTestResult);
882
- }
883
- async registerService(graph, service, groupdId, artifactId, server, executionMode, version) {
861
+ async registerService(service, graph, groupId, artifactId, version, server, executionMode) {
884
862
  const serverServiceInfo = await this.engine.getServerServiceInfo();
885
863
  // input
886
864
  let input;
@@ -893,7 +871,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
893
871
  break;
894
872
  }
895
873
  case ServiceExecutionMode.SEMI_INTERACTIVE: {
896
- const sdlcInfo = new V1_AlloySDLC(groupdId, artifactId, version);
874
+ const sdlcInfo = new V1_AlloySDLC(groupId, artifactId, version);
897
875
  const pointer = new V1_PureModelContextPointer(protocol, sdlcInfo);
898
876
  // data
899
877
  const data = new V1_PureModelContextData();
@@ -920,7 +898,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
920
898
  break;
921
899
  }
922
900
  case ServiceExecutionMode.PROD: {
923
- const sdlcInfo = new V1_AlloySDLC(groupdId, artifactId, version);
901
+ const sdlcInfo = new V1_AlloySDLC(groupId, artifactId, version);
924
902
  const pointer = new V1_PureModelContextPointer(protocol, sdlcInfo);
925
903
  sdlcInfo.packageableElementPointers = [
926
904
  new V1_PackageableElementPointer(PackageableElementPointerType.SERVICE, service.path),
@@ -952,46 +930,6 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
952
930
  async getLightQuery(queryId) {
953
931
  return V1_buildLightQuery(await this.engine.getQuery(queryId), this.engine.getCurrentUserId());
954
932
  }
955
- // TODO: we could potentially reshape this method to build light graph with just indexing
956
- // and return a slightly more complicated object instead: separating the graph and the dependencies part instead of
957
- // return a list of `V1_GraphBuilderInput`. This method would be useful for any other light graph builder algo.
958
- async indexEntitiesWithDependencyIntoGraph(graph, _entities, dependencyEntities, entityFilterFunc) {
959
- let entities = _entities;
960
- graph.dependencyManager.initialize(dependencyEntities);
961
- if (entityFilterFunc) {
962
- Array.from(dependencyEntities.entries()).forEach(([dependencyKey, dEntities]) => {
963
- dependencyEntities.set(dependencyKey, dEntities.filter(entityFilterFunc));
964
- });
965
- entities = _entities.filter(entityFilterFunc);
966
- }
967
- const report = new GraphBuilderReport();
968
- // build dependency pmcd models
969
- const dependencyDataMap = new Map();
970
- await Promise.all(Array.from(dependencyEntities.entries()).map(([dependencyKey, value]) => {
971
- const projectModelData = new V1_PureModelContextData();
972
- dependencyDataMap.set(dependencyKey, projectModelData);
973
- return V1_entitiesToPureModelContextData(value, projectModelData, this.pluginManager.getPureProtocolProcessorPlugins());
974
- }));
975
- const dependencyGraphBuilderInput = Array.from(dependencyDataMap.entries()).map(([dependencyKey, dependencyData]) => ({
976
- data: indexPureModelContextData(report, dependencyData, this.graphBuilderExtensions),
977
- model: graph.dependencyManager.getModel(dependencyKey),
978
- }));
979
- // build main pmcd
980
- const data = new V1_PureModelContextData();
981
- await V1_entitiesToPureModelContextData(entities, data, this.pluginManager.getPureProtocolProcessorPlugins());
982
- const mainGraphBuilderInput = [
983
- {
984
- model: graph,
985
- data: indexPureModelContextData(report, data, this.graphBuilderExtensions),
986
- },
987
- ];
988
- const graphBuilderInput = [
989
- ...dependencyGraphBuilderInput,
990
- ...mainGraphBuilderInput,
991
- ];
992
- await this.initializeAndIndexElements(graph, graphBuilderInput);
993
- return graphBuilderInput;
994
- }
995
933
  // --------------------------------------------- Query ------------------------------------------------------
996
934
  async getQuery(queryId, graph) {
997
935
  return V1_buildQuery(await this.engine.getQuery(queryId), graph, this.engine.getCurrentUserId());
@@ -1037,26 +975,17 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1037
975
  .concat(extraElements));
1038
976
  return prunedGraphData;
1039
977
  };
1040
- async analyzeMappingModelCoverage(graph, mapping) {
1041
- const modelCoverageAnalysisInput = new V1_MappingModelCoverageAnalysisInput();
1042
- modelCoverageAnalysisInput.clientVersion =
1043
- V1_PureGraphManager.TARGET_PROTOCOL_VERSION;
1044
- modelCoverageAnalysisInput.mapping = mapping.path;
1045
- modelCoverageAnalysisInput.model =
1046
- this.buildMappingModelCoverageAnalysisInputContextData(graph);
1047
- return V1_buildModelCoverageAnalysisResult(await this.engine.analyzeMappingModelCoverage(modelCoverageAnalysisInput));
978
+ async analyzeMappingModelCoverage(mapping, graph) {
979
+ const input = new V1_MappingModelCoverageAnalysisInput();
980
+ input.clientVersion = V1_PureGraphManager.TARGET_PROTOCOL_VERSION;
981
+ input.mapping = mapping.path;
982
+ input.model = this.buildMappingModelCoverageAnalysisInputContextData(graph);
983
+ return V1_buildModelCoverageAnalysisResult(await this.engine.analyzeMappingModelCoverage(input));
1048
984
  }
1049
985
  buildMappingModelCoverageAnalysisResult(input) {
1050
986
  return V1_buildModelCoverageAnalysisResult(deserialize(V1_MappingModelCoverageAnalysisResult, input));
1051
987
  }
1052
- // --------------------------------------------- Utilities ---------------------------------------------
1053
- elementToEntity = (element, options) => {
1054
- const entity = this.elementProtocolToEntity(this.elementToProtocol(element));
1055
- if (options?.pruneSourceInformation) {
1056
- entity.content = pruneSourceInformation(entity.content);
1057
- }
1058
- return entity;
1059
- };
988
+ // --------------------------------------------- Database ---------------------------------------------
1060
989
  async buildDatabase(input) {
1061
990
  const dbBuilderInput = new V1_DatabaseBuilderInput();
1062
991
  dbBuilderInput.connection = V1_transformRelationalDatabaseConnection(input.connection, new V1_GraphTransformerContextBuilder(this.pluginManager.getPureProtocolProcessorPlugins()).build());
@@ -1168,11 +1097,78 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1168
1097
  },
1169
1098
  ]);
1170
1099
  }
1100
+ // --------------------------------------------- Utilities ---------------------------------------------
1101
+ elementToEntity = (element, options) => {
1102
+ const entity = this.elementProtocolToEntity(this.elementToProtocol(element));
1103
+ if (options?.pruneSourceInformation) {
1104
+ entity.content = pruneSourceInformation(entity.content);
1105
+ }
1106
+ return entity;
1107
+ };
1171
1108
  // --------------------------------------------- Shared ---------------------------------------------
1172
- async entitiesToPureModelContextData(entities) {
1173
- const graphData = new V1_PureModelContextData();
1174
- await V1_entitiesToPureModelContextData(entities, graphData, this.pluginManager.getPureProtocolProcessorPlugins());
1175
- return graphData;
1109
+ /**
1110
+ * This method helps indexing the graph from graph and dependencies' entities
1111
+ * This will produce a _light_ graph with empty unprocesed elements, they are just indexed in the graph
1112
+ * and the Pure model context data which can be used to further build the graph
1113
+ *
1114
+ * There are a few simple analytics we want to do on the graph which does not necessarily
1115
+ * require us to build the full-graph, in fact, doing so would be too costly. In those scenarios,
1116
+ * we need to build the _light_ graph, hence the existence of this utility method
1117
+ *
1118
+ * TODO?: do we need to account for system elements?
1119
+ */
1120
+ async indexLightGraph(graph, entities, dependencyEntities, entityFilterFn, entityProcessorFn) {
1121
+ const report = new GraphBuilderReport();
1122
+ // build main graph builder input
1123
+ const data = new V1_PureModelContextData();
1124
+ await V1_entitiesToPureModelContextData(entities
1125
+ .filter((entity) => {
1126
+ // never exclude section index as it could be used for path resolution when building the graph later
1127
+ if (entity.classifierPath === CORE_PURE_PATH.SECTION_INDEX) {
1128
+ return true;
1129
+ }
1130
+ if (entityFilterFn) {
1131
+ return entityFilterFn(entity);
1132
+ }
1133
+ return true;
1134
+ })
1135
+ .map((entity) => entityProcessorFn ? entityProcessorFn(entity) : entity), data, this.pluginManager.getPureProtocolProcessorPlugins());
1136
+ const mainGraphBuilderInput = [
1137
+ {
1138
+ model: graph,
1139
+ data: V1_indexPureModelContextData(report, data, this.graphBuilderExtensions),
1140
+ },
1141
+ ];
1142
+ // build dependencies graph builder input
1143
+ graph.dependencyManager.initialize(dependencyEntities);
1144
+ const dependencyGraphDataIndex = new Map();
1145
+ await Promise.all(Array.from(dependencyEntities.entries()).map(([dependencyKey, value]) => {
1146
+ const projectModelData = new V1_PureModelContextData();
1147
+ dependencyGraphDataIndex.set(dependencyKey, projectModelData);
1148
+ return V1_entitiesToPureModelContextData(value
1149
+ .filter((entity) => {
1150
+ // never exclude section index as it could be used for path resolution when building the graph later
1151
+ if (entity.classifierPath === CORE_PURE_PATH.SECTION_INDEX) {
1152
+ return true;
1153
+ }
1154
+ if (entityFilterFn) {
1155
+ return entityFilterFn(entity);
1156
+ }
1157
+ return true;
1158
+ })
1159
+ .map((entity) => entityProcessorFn ? entityProcessorFn(entity) : entity), projectModelData, this.pluginManager.getPureProtocolProcessorPlugins());
1160
+ }));
1161
+ const dependencyGraphBuilderInput = Array.from(dependencyGraphDataIndex.entries()).map(([dependencyKey, dependencyData]) => ({
1162
+ data: V1_indexPureModelContextData(report, dependencyData, this.graphBuilderExtensions),
1163
+ model: graph.dependencyManager.getModel(dependencyKey),
1164
+ }));
1165
+ // index simplified graph
1166
+ const graphBuilderInput = [
1167
+ ...dependencyGraphBuilderInput,
1168
+ ...mainGraphBuilderInput,
1169
+ ];
1170
+ await this.initializeAndIndexElements(graph, graphBuilderInput);
1171
+ return graphBuilderInput;
1176
1172
  }
1177
1173
  getFullGraphModelData(graph, options) {
1178
1174
  const contextData1 = this.graphToPureModelContextData(graph, {
@@ -1185,15 +1181,20 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1185
1181
  ];
1186
1182
  return contextData1;
1187
1183
  }
1188
- elementToProtocol = (element, options) => V1_transformPackageableElement(element, this.pluginManager.getPureProtocolProcessorPlugins(), new V1_GraphTransformerContextBuilder(this.pluginManager.getPureProtocolProcessorPlugins())
1189
- .withKeepSourceInformationFlag(Boolean(options?.keepSourceInformation))
1190
- .build());
1191
- pureModelContextDataToEntities = (graphProtocol) => graphProtocol.elements.map((element) => this.elementProtocolToEntity(element));
1192
1184
  elementProtocolToEntity = (elementProtocol) => ({
1193
1185
  path: this.getElementPath(elementProtocol),
1194
1186
  content: V1_serializePackageableElement(elementProtocol, this.pluginManager.getPureProtocolProcessorPlugins()),
1195
1187
  classifierPath: this.getElementClassiferPath(elementProtocol),
1196
1188
  });
1189
+ async entitiesToPureModelContextData(entities) {
1190
+ const graphData = new V1_PureModelContextData();
1191
+ await V1_entitiesToPureModelContextData(entities, graphData, this.pluginManager.getPureProtocolProcessorPlugins());
1192
+ return graphData;
1193
+ }
1194
+ elementToProtocol = (element, options) => V1_transformPackageableElement(element, this.pluginManager.getPureProtocolProcessorPlugins(), new V1_GraphTransformerContextBuilder(this.pluginManager.getPureProtocolProcessorPlugins())
1195
+ .withKeepSourceInformationFlag(Boolean(options?.keepSourceInformation))
1196
+ .build());
1197
+ pureModelContextDataToEntities = (graphProtocol) => graphProtocol.elements.map((element) => this.elementProtocolToEntity(element));
1197
1198
  getElementPath = (elementProtocol) => {
1198
1199
  let name = elementProtocol.name;
1199
1200
  // These functions calculation the function suffix and are used to identify if an
@@ -1201,7 +1202,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1201
1202
  // if so, we will remove that suffix
1202
1203
  // TODO: to be revised when we support function overloading
1203
1204
  if (elementProtocol instanceof V1_ConcreteFunctionDefinition) {
1204
- const suffixIndex = elementProtocol.name.indexOf(getFunctionSuffix(elementProtocol));
1205
+ const suffixIndex = elementProtocol.name.indexOf(V1_getFunctionSuffix(elementProtocol));
1205
1206
  if (suffixIndex > 0) {
1206
1207
  name = elementProtocol.name.substring(0, suffixIndex - 1);
1207
1208
  }