@finos/legend-graph 10.1.2 → 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 (338) 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/GraphManagerState.d.ts +21 -18
  10. package/lib/GraphManagerState.d.ts.map +1 -1
  11. package/lib/GraphManagerState.js +68 -59
  12. package/lib/GraphManagerState.js.map +1 -1
  13. package/lib/GraphManagerTestUtils.js.map +1 -1
  14. package/lib/MetaModelConst.d.ts +44 -42
  15. package/lib/MetaModelConst.d.ts.map +1 -1
  16. package/lib/MetaModelConst.js +52 -50
  17. package/lib/MetaModelConst.js.map +1 -1
  18. package/lib/graph/BasicModel.d.ts +1 -1
  19. package/lib/graph/BasicModel.d.ts.map +1 -1
  20. package/lib/graph/BasicModel.js +4 -4
  21. package/lib/graph/BasicModel.js.map +1 -1
  22. package/lib/graph/DependencyManager.d.ts +1 -1
  23. package/lib/graph/DependencyManager.d.ts.map +1 -1
  24. package/lib/graph/DependencyManager.js +2 -2
  25. package/lib/graph/DependencyManager.js.map +1 -1
  26. package/lib/graph/PureModel.d.ts +8 -2
  27. package/lib/graph/PureModel.d.ts.map +1 -1
  28. package/lib/graph/PureModel.js +8 -2
  29. package/lib/graph/PureModel.js.map +1 -1
  30. package/lib/graphManager/AbstractPureGraphManager.d.ts +21 -16
  31. package/lib/graphManager/AbstractPureGraphManager.d.ts.map +1 -1
  32. package/lib/graphManager/AbstractPureGraphManager.js +15 -0
  33. package/lib/graphManager/AbstractPureGraphManager.js.map +1 -1
  34. package/lib/graphManager/GraphManagerEvent.d.ts +1 -0
  35. package/lib/graphManager/GraphManagerEvent.d.ts.map +1 -1
  36. package/lib/graphManager/GraphManagerEvent.js +1 -0
  37. package/lib/graphManager/GraphManagerEvent.js.map +1 -1
  38. package/lib/graphManager/action/analytics/{MappingAnalytics.d.ts → MappingModelCoverageAnalysis.d.ts} +3 -3
  39. package/lib/graphManager/action/analytics/MappingModelCoverageAnalysis.d.ts.map +1 -0
  40. package/lib/graphManager/action/analytics/{MappingAnalytics.js → MappingModelCoverageAnalysis.js} +5 -7
  41. package/lib/graphManager/action/analytics/MappingModelCoverageAnalysis.js.map +1 -0
  42. package/lib/graphManager/action/changeDetection/CoreObserverHelper.d.ts +1 -2
  43. package/lib/graphManager/action/changeDetection/CoreObserverHelper.d.ts.map +1 -1
  44. package/lib/graphManager/action/changeDetection/CoreObserverHelper.js +0 -4
  45. package/lib/graphManager/action/changeDetection/CoreObserverHelper.js.map +1 -1
  46. package/lib/graphManager/action/changeDetection/DSLExternalFormat_ObserverHelper.d.ts.map +1 -1
  47. package/lib/graphManager/action/changeDetection/DSLExternalFormat_ObserverHelper.js +4 -2
  48. package/lib/graphManager/action/changeDetection/DSLExternalFormat_ObserverHelper.js.map +1 -1
  49. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.d.ts +2 -2
  50. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.d.ts.map +1 -1
  51. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.js +16 -8
  52. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.js.map +1 -1
  53. package/lib/graphManager/action/changeDetection/GraphObserverHelper.js +1 -1
  54. package/lib/graphManager/action/changeDetection/GraphObserverHelper.js.map +1 -1
  55. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.d.ts.map +1 -1
  56. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.js +4 -2
  57. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.js.map +1 -1
  58. package/lib/helpers/DSLMapping_Helper.js +1 -1
  59. package/lib/helpers/DSLMapping_Helper.js.map +1 -1
  60. package/lib/helpers/DomainHelper.d.ts +2 -0
  61. package/lib/helpers/DomainHelper.d.ts.map +1 -1
  62. package/lib/helpers/DomainHelper.js +5 -1
  63. package/lib/helpers/DomainHelper.js.map +1 -1
  64. package/lib/index.d.ts +3 -9
  65. package/lib/index.d.ts.map +1 -1
  66. package/lib/index.js +3 -9
  67. package/lib/index.js.map +1 -1
  68. package/lib/models/metamodels/pure/Reference.d.ts +16 -19
  69. package/lib/models/metamodels/pure/Reference.d.ts.map +1 -1
  70. package/lib/models/metamodels/pure/Reference.js +14 -19
  71. package/lib/models/metamodels/pure/Reference.js.map +1 -1
  72. package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.d.ts +2 -27
  73. package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.d.ts.map +1 -1
  74. package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.js +2 -73
  75. package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.js.map +1 -1
  76. package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.d.ts +2 -2
  77. package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.d.ts.map +1 -1
  78. package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.js +4 -1
  79. package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.js.map +1 -1
  80. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.d.ts +3 -3
  81. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.d.ts.map +1 -1
  82. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js +3 -3
  83. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js.map +1 -1
  84. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.d.ts +10 -10
  85. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.d.ts.map +1 -1
  86. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.js +7 -7
  87. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.js.map +1 -1
  88. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.d.ts +18 -14
  89. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.d.ts.map +1 -1
  90. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.js +17 -13
  91. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.js.map +1 -1
  92. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.d.ts +8 -19
  93. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.d.ts.map +1 -1
  94. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.js +13 -34
  95. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.js.map +1 -1
  96. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts +4 -3
  97. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts.map +1 -1
  98. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js +1 -1
  99. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js.map +1 -1
  100. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.d.ts +4 -4
  101. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.d.ts.map +1 -1
  102. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.js +2 -3
  103. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.js.map +1 -1
  104. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.d.ts +3 -3
  105. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.d.ts.map +1 -1
  106. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.js +1 -1
  107. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.js.map +1 -1
  108. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.d.ts +4 -4
  109. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.d.ts.map +1 -1
  110. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.js +2 -3
  111. package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.js.map +1 -1
  112. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts +3 -2
  113. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts.map +1 -1
  114. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.js.map +1 -1
  115. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.d.ts +2 -2
  116. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.d.ts.map +1 -1
  117. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.js +2 -3
  118. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.js.map +1 -1
  119. package/lib/models/metamodels/pure/valueSpecification/GraphFetchTree.d.ts +3 -3
  120. package/lib/models/metamodels/pure/valueSpecification/GraphFetchTree.d.ts.map +1 -1
  121. package/lib/models/metamodels/pure/valueSpecification/GraphFetchTree.js +2 -5
  122. package/lib/models/metamodels/pure/valueSpecification/GraphFetchTree.js.map +1 -1
  123. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.d.ts.map +1 -1
  124. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js +4 -4
  125. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js.map +1 -1
  126. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts +4 -8
  127. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts.map +1 -1
  128. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.js.map +1 -1
  129. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts +35 -17
  130. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
  131. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js +153 -146
  132. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js.map +1 -1
  133. package/lib/models/protocols/pure/v1/engine/V1_Engine.d.ts +4 -2
  134. package/lib/models/protocols/pure/v1/engine/V1_Engine.d.ts.map +1 -1
  135. package/lib/models/protocols/pure/v1/engine/V1_Engine.js +5 -3
  136. package/lib/models/protocols/pure/v1/engine/V1_Engine.js.map +1 -1
  137. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.d.ts +2 -2
  138. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.d.ts.map +1 -1
  139. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.js +52 -52
  140. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.js.map +1 -1
  141. package/lib/models/protocols/pure/v1/engine/analytics/{V1_MappingAnalytics.d.ts → V1_MappingModelCoverageAnalysis.d.ts} +2 -2
  142. package/lib/models/protocols/pure/v1/engine/analytics/V1_MappingModelCoverageAnalysis.d.ts.map +1 -0
  143. package/lib/models/protocols/pure/v1/engine/analytics/{V1_MappingAnalytics.js → V1_MappingModelCoverageAnalysis.js} +2 -2
  144. package/lib/models/protocols/pure/v1/engine/analytics/V1_MappingModelCoverageAnalysis.js.map +1 -0
  145. package/lib/models/protocols/pure/v1/helper/V1_DomainHelper.d.ts +18 -0
  146. package/lib/models/protocols/pure/v1/helper/V1_DomainHelper.d.ts.map +1 -0
  147. package/lib/models/protocols/pure/v1/helper/V1_DomainHelper.js +35 -0
  148. package/lib/models/protocols/pure/v1/helper/V1_DomainHelper.js.map +1 -0
  149. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.d.ts +17 -0
  150. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.d.ts.map +1 -1
  151. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.js +18 -5
  152. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.js.map +1 -1
  153. package/lib/models/protocols/pure/v1/model/packageableElements/runtime/V1_Runtime.d.ts.map +1 -1
  154. package/lib/models/protocols/pure/v1/model/packageableElements/runtime/V1_Runtime.js +1 -1
  155. package/lib/models/protocols/pure/v1/model/packageableElements/runtime/V1_Runtime.js.map +1 -1
  156. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts.map +1 -1
  157. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js +50 -86
  158. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js.map +1 -1
  159. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js +1 -1
  160. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js.map +1 -1
  161. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingFirstPassBuilder.d.ts → V1_ClassMappingFirstPassBuilder.d.ts} +3 -3
  162. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ClassMappingFirstPassBuilder.d.ts.map +1 -0
  163. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js → V1_ClassMappingFirstPassBuilder.js} +6 -7
  164. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ClassMappingFirstPassBuilder.js.map +1 -0
  165. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingSecondPassBuilder.d.ts → V1_ClassMappingSecondPassBuilder.d.ts} +2 -2
  166. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ClassMappingSecondPassBuilder.d.ts.map +1 -0
  167. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingSecondPassBuilder.js → V1_ClassMappingSecondPassBuilder.js} +13 -14
  168. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ClassMappingSecondPassBuilder.js.map +1 -0
  169. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFifthPassBuilder.d.ts → V1_ElementFifthPassBuilder.d.ts} +2 -2
  170. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.d.ts.map +1 -0
  171. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFifthPassBuilder.js → V1_ElementFifthPassBuilder.js} +2 -2
  172. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.js.map +1 -0
  173. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts → V1_ElementFirstPassBuilder.d.ts} +2 -2
  174. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.d.ts.map +1 -0
  175. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFirstPassBuilder.js → V1_ElementFirstPassBuilder.js} +2 -2
  176. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.js.map +1 -0
  177. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFourthPassBuilder.d.ts → V1_ElementFourthPassBuilder.d.ts} +2 -2
  178. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.d.ts.map +1 -0
  179. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFourthPassBuilder.js → V1_ElementFourthPassBuilder.js} +4 -4
  180. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.js.map +1 -0
  181. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts → V1_ElementSecondPassBuilder.d.ts} +3 -3
  182. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.d.ts.map +1 -0
  183. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphSecondPassBuilder.js → V1_ElementSecondPassBuilder.js} +16 -17
  184. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.js.map +1 -0
  185. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphThirdPassBuilder.d.ts → V1_ElementThirdPassBuilder.d.ts} +3 -3
  186. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.d.ts.map +1 -0
  187. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphThirdPassBuilder.js → V1_ElementThirdPassBuilder.js} +7 -7
  188. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.js.map +1 -0
  189. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.d.ts.map +1 -1
  190. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js +2 -2
  191. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js.map +1 -1
  192. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts → V1_PropertyMappingBuilder.d.ts} +4 -4
  193. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.d.ts.map +1 -0
  194. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelPropertyMappingBuilder.js → V1_PropertyMappingBuilder.js} +50 -34
  195. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.js.map +1 -0
  196. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelRawValueSpecificationBuilder.d.ts → V1_RawValueSpecificationBuilder.d.ts} +3 -3
  197. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_RawValueSpecificationBuilder.d.ts.map +1 -0
  198. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelRawValueSpecificationBuilder.js → V1_RawValueSpecificationBuilder.js} +2 -2
  199. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_RawValueSpecificationBuilder.js.map +1 -0
  200. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.d.ts.map +1 -1
  201. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.js +2 -2
  202. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.js.map +1 -1
  203. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AssociationMappingHelper.js +3 -3
  204. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AssociationMappingHelper.js.map +1 -1
  205. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.d.ts +22 -0
  206. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.d.ts.map +1 -0
  207. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelConnectionBuilder.js → helpers/V1_ConnectionBuilderHelper.js} +16 -15
  208. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.js.map +1 -0
  209. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.d.ts +2 -11
  210. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.d.ts.map +1 -1
  211. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.js +2 -1
  212. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.js.map +1 -1
  213. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.d.ts +1 -1
  214. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.d.ts.map +1 -1
  215. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.js +12 -12
  216. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.js.map +1 -1
  217. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js +1 -1
  218. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js.map +1 -1
  219. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.d.ts.map +1 -1
  220. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js +5 -6
  221. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js.map +1 -1
  222. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.js +4 -4
  223. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.js.map +1 -1
  224. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.d.ts.map +1 -1
  225. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.js +7 -8
  226. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.js.map +1 -1
  227. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.d.ts +1 -1
  228. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.d.ts.map +1 -1
  229. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.js +4 -4
  230. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.js.map +1 -1
  231. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.d.ts.map +1 -1
  232. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.js +2 -2
  233. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.js.map +1 -1
  234. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.d.ts.map +1 -1
  235. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js +2 -2
  236. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js.map +1 -1
  237. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.d.ts.map +1 -1
  238. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.js +3 -3
  239. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.js.map +1 -1
  240. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.d.ts.map +1 -1
  241. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.js +3 -4
  242. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.js.map +1 -1
  243. package/lib/package.json +5 -5
  244. package/package.json +8 -8
  245. package/src/DSLData_Exports.ts +1 -1
  246. package/src/DSLMapping_Exports.ts +20 -6
  247. package/src/GraphManagerState.ts +104 -91
  248. package/src/GraphManagerTestUtils.tsx +4 -4
  249. package/src/MetaModelConst.ts +59 -56
  250. package/src/graph/BasicModel.ts +4 -4
  251. package/src/graph/DependencyManager.ts +2 -2
  252. package/src/graph/PureModel.ts +10 -2
  253. package/src/graphManager/AbstractPureGraphManager.ts +54 -31
  254. package/src/graphManager/GraphManagerEvent.ts +1 -0
  255. package/src/graphManager/action/analytics/{MappingAnalytics.ts → MappingModelCoverageAnalysis.ts} +8 -6
  256. package/src/graphManager/action/changeDetection/CoreObserverHelper.ts +1 -14
  257. package/src/graphManager/action/changeDetection/DSLExternalFormat_ObserverHelper.ts +3 -2
  258. package/src/graphManager/action/changeDetection/DSLMapping_ObserverHelper.ts +17 -12
  259. package/src/graphManager/action/changeDetection/GraphObserverHelper.ts +2 -2
  260. package/src/graphManager/action/changeDetection/ValueSpecificationObserver.ts +3 -2
  261. package/src/helpers/DSLMapping_Helper.ts +1 -1
  262. package/src/helpers/DomainHelper.ts +14 -0
  263. package/src/index.ts +6 -17
  264. package/src/models/metamodels/pure/Reference.ts +17 -26
  265. package/src/models/metamodels/pure/packageableElements/PackageableElementReference.ts +2 -131
  266. package/src/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.ts +6 -3
  267. package/src/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.ts +10 -9
  268. package/src/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.ts +18 -18
  269. package/src/models/metamodels/pure/packageableElements/mapping/PropertyMapping.ts +21 -17
  270. package/src/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.ts +17 -66
  271. package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.ts +5 -7
  272. package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.ts +6 -6
  273. package/src/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.ts +4 -7
  274. package/src/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.ts +6 -6
  275. package/src/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.ts +4 -6
  276. package/src/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.ts +3 -3
  277. package/src/models/metamodels/pure/valueSpecification/GraphFetchTree.ts +4 -10
  278. package/src/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.ts +5 -10
  279. package/src/models/protocols/pure/PureProtocolProcessorPlugin.ts +8 -8
  280. package/src/models/protocols/pure/v1/V1_PureGraphManager.ts +243 -232
  281. package/src/models/protocols/pure/v1/engine/V1_Engine.ts +7 -2
  282. package/src/models/protocols/pure/v1/engine/V1_EngineServerClient.ts +34 -32
  283. package/src/models/protocols/pure/v1/engine/analytics/{V1_MappingAnalytics.ts → V1_MappingModelCoverageAnalysis.ts} +1 -1
  284. package/src/models/protocols/pure/v1/helper/V1_DomainHelper.ts +51 -0
  285. package/src/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.ts +18 -5
  286. package/src/models/protocols/pure/v1/model/packageableElements/runtime/V1_Runtime.ts +1 -1
  287. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +32 -86
  288. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.ts +1 -1
  289. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingFirstPassBuilder.ts → V1_ClassMappingFirstPassBuilder.ts} +6 -10
  290. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingSecondPassBuilder.ts → V1_ClassMappingSecondPassBuilder.ts} +12 -19
  291. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFifthPassBuilder.ts → V1_ElementFifthPassBuilder.ts} +1 -1
  292. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFirstPassBuilder.ts → V1_ElementFirstPassBuilder.ts} +1 -1
  293. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFourthPassBuilder.ts → V1_ElementFourthPassBuilder.ts} +3 -6
  294. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphSecondPassBuilder.ts → V1_ElementSecondPassBuilder.ts} +18 -20
  295. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphThirdPassBuilder.ts → V1_ElementThirdPassBuilder.ts} +6 -9
  296. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.ts +2 -4
  297. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelPropertyMappingBuilder.ts → V1_PropertyMappingBuilder.ts} +105 -40
  298. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelRawValueSpecificationBuilder.ts → V1_RawValueSpecificationBuilder.ts} +2 -2
  299. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.ts +2 -5
  300. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AssociationMappingHelper.ts +3 -3
  301. package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelConnectionBuilder.ts → helpers/V1_ConnectionBuilderHelper.ts} +33 -26
  302. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.ts +7 -3
  303. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.ts +14 -12
  304. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.ts +1 -1
  305. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.ts +6 -9
  306. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.ts +4 -4
  307. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.ts +7 -8
  308. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.ts +5 -5
  309. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.ts +6 -5
  310. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.ts +2 -4
  311. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.ts +3 -7
  312. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.ts +3 -6
  313. package/tsconfig.json +13 -12
  314. package/lib/graphManager/action/analytics/MappingAnalytics.d.ts.map +0 -1
  315. package/lib/graphManager/action/analytics/MappingAnalytics.js.map +0 -1
  316. package/lib/models/protocols/pure/v1/engine/analytics/V1_MappingAnalytics.d.ts.map +0 -1
  317. package/lib/models/protocols/pure/v1/engine/analytics/V1_MappingAnalytics.js.map +0 -1
  318. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.d.ts.map +0 -1
  319. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js.map +0 -1
  320. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.d.ts.map +0 -1
  321. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.js.map +0 -1
  322. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.d.ts +0 -40
  323. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.d.ts.map +0 -1
  324. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.js.map +0 -1
  325. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.d.ts.map +0 -1
  326. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.js.map +0 -1
  327. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts.map +0 -1
  328. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js.map +0 -1
  329. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.d.ts.map +0 -1
  330. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.js.map +0 -1
  331. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts.map +0 -1
  332. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js.map +0 -1
  333. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.d.ts.map +0 -1
  334. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js.map +0 -1
  335. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts.map +0 -1
  336. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js.map +0 -1
  337. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.d.ts.map +0 -1
  338. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.js.map +0 -1
@@ -22,10 +22,7 @@ import type {
22
22
  PropertyMapping,
23
23
  PropertyMappingVisitor,
24
24
  } from '../../../mapping/PropertyMapping.js';
25
- import type {
26
- SetImplementationVisitor,
27
- SetImplementation,
28
- } from '../../../mapping/SetImplementation.js';
25
+ import type { SetImplementationVisitor } from '../../../mapping/SetImplementation.js';
29
26
  import type { Class } from '../../../domain/Class.js';
30
27
  import type { InstanceSetImplementation } from '../../../mapping/InstanceSetImplementation.js';
31
28
  import type { PropertyMappingsImplementation } from '../../../mapping/PropertyMappingsImplementation.js';
@@ -35,6 +32,7 @@ import type { PackageableElementReference } from '../../../PackageableElementRef
35
32
  import { InferableMappingElementRootExplicitValue } from '../../../mapping/InferableMappingElementRoot.js';
36
33
  import type { MappingClass } from '../../../mapping/MappingClass.js';
37
34
  import { FlatDataPropertyMapping } from './FlatDataPropertyMapping.js';
35
+ import type { SetImplementationReference } from '../../../mapping/SetImplementationReference.js';
38
36
 
39
37
  /**
40
38
  * We can think of embedded property mappings as a 'gateway' from one set of property mappings to another. They are in a sense
@@ -45,7 +43,7 @@ import { FlatDataPropertyMapping } from './FlatDataPropertyMapping.js';
45
43
  * 1. Javascript only support single inheritance unlike Pure
46
44
  * 2. In the general mental model, it is more sensible to think of embedded property mapping as a property mapping rather than a class mapping because
47
45
  * despite the fact that it has the shape similar to a class mapping and it can contain multiple property mappings, it itselt is not a class mapping, it must
48
- * exsit "embedded" within a property mapping.
46
+ * exist "embedded" within a property mapping.
49
47
  */
50
48
  export class EmbeddedFlatDataPropertyMapping
51
49
  extends AbstractFlatDataPropertyMapping
@@ -65,10 +63,10 @@ export class EmbeddedFlatDataPropertyMapping
65
63
  owner: PropertyMappingsImplementation,
66
64
  property: PropertyReference,
67
65
  rootInstanceSetImplementation: InstanceSetImplementation,
68
- source: SetImplementation,
66
+ source: SetImplementationReference,
69
67
  _class: PackageableElementReference<Class>,
70
68
  id: InferableMappingElementIdValue,
71
- target?: SetImplementation,
69
+ target: SetImplementationReference | undefined,
72
70
  ) {
73
71
  super(owner, property, source, target);
74
72
  this.class = _class;
@@ -18,17 +18,17 @@ import { CORE_HASH_STRUCTURE } from '../../../../../../../MetaModelConst.js';
18
18
  import { hashArray, type Hashable } from '@finos/legend-shared';
19
19
  import type { RawLambda } from '../../../../rawValueSpecification/RawLambda.js';
20
20
  import { AbstractFlatDataPropertyMapping } from './AbstractFlatDataPropertyMapping.js';
21
- import type { SetImplementation } from '../../../mapping/SetImplementation.js';
22
21
  import type { PropertyMappingsImplementation } from '../../../mapping/PropertyMappingsImplementation.js';
23
22
  import type { PropertyReference } from '../../../domain/PropertyReference.js';
24
23
  import type { PropertyMappingVisitor } from '../../../mapping/PropertyMapping.js';
25
- import { OptionalEnumerationMappingExplicitReference } from '../../../mapping/EnumerationMappingReference.js';
24
+ import type { EnumerationMappingReference } from '../../../mapping/EnumerationMappingReference.js';
25
+ import type { SetImplementationReference } from '../../../mapping/SetImplementationReference.js';
26
26
 
27
27
  export class FlatDataPropertyMapping
28
28
  extends AbstractFlatDataPropertyMapping
29
29
  implements Hashable
30
30
  {
31
- transformer = OptionalEnumerationMappingExplicitReference.create(undefined);
31
+ transformer?: EnumerationMappingReference | undefined;
32
32
  /**
33
33
  * Studio does not process value specification, they are left in raw JSON form
34
34
  *
@@ -40,8 +40,8 @@ export class FlatDataPropertyMapping
40
40
  owner: PropertyMappingsImplementation,
41
41
  property: PropertyReference,
42
42
  transform: RawLambda,
43
- source: SetImplementation,
44
- target?: SetImplementation,
43
+ source: SetImplementationReference,
44
+ target: SetImplementationReference | undefined,
45
45
  ) {
46
46
  super(owner, property, source, target);
47
47
  this.transform = transform;
@@ -51,7 +51,7 @@ export class FlatDataPropertyMapping
51
51
  return hashArray([
52
52
  CORE_HASH_STRUCTURE.FLAT_DATA_PROPERTY_MAPPING,
53
53
  super.hashCode,
54
- this.transformer.valueForSerialization ?? '',
54
+ this.transformer?.valueForSerialization ?? '',
55
55
  this.transform,
56
56
  ]);
57
57
  }
@@ -21,10 +21,7 @@ import { InstanceSetImplementation } from '../../../mapping/InstanceSetImplement
21
21
  import type { PurePropertyMapping } from './PurePropertyMapping.js';
22
22
  import type { SetImplementationVisitor } from '../../../mapping/SetImplementation.js';
23
23
  import type { RawLambda } from '../../../../rawValueSpecification/RawLambda.js';
24
- import type {
25
- PackageableElementReference,
26
- OptionalPackageableElementReference,
27
- } from '../../../PackageableElementReference.js';
24
+ import type { PackageableElementReference } from '../../../PackageableElementReference.js';
28
25
  import type { InferableMappingElementIdValue } from '../../../mapping/InferableMappingElementId.js';
29
26
  import type { Mapping } from '../../../mapping/Mapping.js';
30
27
  import type { InferableMappingElementRoot } from '../../../mapping/InferableMappingElementRoot.js';
@@ -34,7 +31,7 @@ export class PureInstanceSetImplementation
34
31
  implements Hashable
35
32
  {
36
33
  declare propertyMappings: PurePropertyMapping[];
37
- srcClass: OptionalPackageableElementReference<Class>;
34
+ srcClass?: PackageableElementReference<Class> | undefined;
38
35
  /**
39
36
  * Studio does not process value specification, they are left in raw JSON form
40
37
  *
@@ -47,7 +44,7 @@ export class PureInstanceSetImplementation
47
44
  parent: Mapping,
48
45
  _class: PackageableElementReference<Class>,
49
46
  root: InferableMappingElementRoot,
50
- srcClass: OptionalPackageableElementReference<Class>,
47
+ srcClass: PackageableElementReference<Class> | undefined,
51
48
  ) {
52
49
  super(id, parent, _class, root);
53
50
  this.srcClass = srcClass;
@@ -57,7 +54,7 @@ export class PureInstanceSetImplementation
57
54
  return hashArray([
58
55
  CORE_HASH_STRUCTURE.PURE_INSTANCE_SET_IMPLEMENTATION,
59
56
  super.hashCode,
60
- this.srcClass.valueForSerialization ?? '',
57
+ this.srcClass?.valueForSerialization ?? '',
61
58
  this.filter ?? '',
62
59
  hashArray(
63
60
  this.propertyMappings.filter(
@@ -21,13 +21,13 @@ import {
21
21
  PropertyMapping,
22
22
  } from '../../../mapping/PropertyMapping.js';
23
23
  import type { PropertyReference } from '../../../domain/PropertyReference.js';
24
- import type { SetImplementation } from '../../../mapping/SetImplementation.js';
25
24
  import type { PropertyMappingsImplementation } from '../../../mapping/PropertyMappingsImplementation.js';
26
25
  import type { RawLambda } from '../../../../rawValueSpecification/RawLambda.js';
27
- import { OptionalEnumerationMappingExplicitReference } from '../../../mapping/EnumerationMappingReference.js';
26
+ import type { EnumerationMappingReference } from '../../../mapping/EnumerationMappingReference.js';
27
+ import type { SetImplementationReference } from '../../../mapping/SetImplementationReference.js';
28
28
 
29
29
  export class PurePropertyMapping extends PropertyMapping implements Hashable {
30
- transformer = OptionalEnumerationMappingExplicitReference.create(undefined);
30
+ transformer?: EnumerationMappingReference | undefined;
31
31
  /**
32
32
  * Studio does not process value specification, they are left in raw JSON form
33
33
  *
@@ -40,8 +40,8 @@ export class PurePropertyMapping extends PropertyMapping implements Hashable {
40
40
  owner: PropertyMappingsImplementation,
41
41
  property: PropertyReference,
42
42
  transform: RawLambda,
43
- source: SetImplementation,
44
- target?: SetImplementation,
43
+ source: SetImplementationReference,
44
+ target: SetImplementationReference | undefined,
45
45
  explodeProperty?: boolean,
46
46
  ) {
47
47
  super(owner, property, source, target);
@@ -53,7 +53,7 @@ export class PurePropertyMapping extends PropertyMapping implements Hashable {
53
53
  return hashArray([
54
54
  CORE_HASH_STRUCTURE.PURE_PROPERTY_MAPPING,
55
55
  super.hashCode,
56
- this.transformer.valueForSerialization ?? '',
56
+ this.transformer?.valueForSerialization ?? '',
57
57
  this.transform,
58
58
  Boolean(this.explodeProperty).toString(),
59
59
  ]);
@@ -25,10 +25,7 @@ import type { RelationalOperationElement } from '../model/RelationalOperationEle
25
25
  import type { EmbeddedSetImplementation } from '../../../mapping/EmbeddedSetImplementation.js';
26
26
  import type { Class } from '../../../domain/Class.js';
27
27
  import type { Mapping } from '../../../mapping/Mapping.js';
28
- import type {
29
- SetImplementationVisitor,
30
- SetImplementation,
31
- } from '../../../mapping/SetImplementation.js';
28
+ import type { SetImplementationVisitor } from '../../../mapping/SetImplementation.js';
32
29
  import type { PropertyMappingsImplementation } from '../../../mapping/PropertyMappingsImplementation.js';
33
30
  import {
34
31
  type PropertyMappingVisitor,
@@ -42,6 +39,7 @@ import type { RelationalInstanceSetImplementation } from './RelationalInstanceSe
42
39
  import { InferableMappingElementRootExplicitValue } from '../../../mapping/InferableMappingElementRoot.js';
43
40
  import type { MappingClass } from '../../../mapping/MappingClass.js';
44
41
  import { RelationalPropertyMapping } from './RelationalPropertyMapping.js';
42
+ import type { SetImplementationReference } from '../../../mapping/SetImplementationReference.js';
45
43
 
46
44
  export class EmbeddedRelationalInstanceSetImplementation
47
45
  extends PropertyMapping
@@ -65,10 +63,10 @@ export class EmbeddedRelationalInstanceSetImplementation
65
63
  owner: PropertyMappingsImplementation,
66
64
  property: PropertyReference,
67
65
  rootInstanceSetImplementation: RootRelationalInstanceSetImplementation,
68
- source: SetImplementation,
66
+ source: SetImplementationReference,
69
67
  _class: PackageableElementReference<Class>,
70
68
  id: InferableMappingElementIdValue,
71
- target?: SetImplementation,
69
+ target: SetImplementationReference | undefined,
72
70
  ) {
73
71
  super(owner, property, source, target);
74
72
  this.class = _class;
@@ -23,13 +23,13 @@ import {
23
23
  import { hashObjectWithoutSourceInformation } from '../../../../../../../MetaModelUtils.js';
24
24
  import type { RawRelationalOperationElement } from '../model/RawRelationalOperationElement.js';
25
25
  import type { BindingTransformer } from '../../../externalFormat/store/DSLExternalFormat_BindingTransformer.js';
26
- import { OptionalEnumerationMappingExplicitReference } from '../../../mapping/EnumerationMappingReference.js';
26
+ import type { EnumerationMappingReference } from '../../../mapping/EnumerationMappingReference.js';
27
27
 
28
28
  export class RelationalPropertyMapping
29
29
  extends PropertyMapping
30
30
  implements Hashable
31
31
  {
32
- transformer = OptionalEnumerationMappingExplicitReference.create(undefined);
32
+ transformer?: EnumerationMappingReference | undefined;
33
33
  /**
34
34
  * Studio does not process value specification, they are left in raw JSON form
35
35
  *
@@ -46,7 +46,7 @@ export class RelationalPropertyMapping
46
46
  return hashArray([
47
47
  CORE_HASH_STRUCTURE.REALTIONAL_PROPERTY_MAPPING,
48
48
  super.hashCode,
49
- this.transformer.valueForSerialization ?? '',
49
+ this.transformer?.valueForSerialization ?? '',
50
50
  this.bindingTransformer ?? '',
51
51
  hashObjectWithoutSourceInformation(this.relationalOperation),
52
52
  ]);
@@ -16,11 +16,7 @@
16
16
 
17
17
  import type { Class } from '../packageableElements/domain/Class.js';
18
18
  import type { PropertyReference } from '../packageableElements/domain/PropertyReference.js';
19
- import {
20
- OptionalPackageableElementExplicitReference,
21
- type OptionalPackageableElementReference,
22
- type PackageableElementReference,
23
- } from '../packageableElements/PackageableElementReference.js';
19
+ import type { PackageableElementReference } from '../packageableElements/PackageableElementReference.js';
24
20
  import type {
25
21
  ValueSpecification,
26
22
  ValueSpecificationVisitor,
@@ -48,17 +44,15 @@ export class PropertyGraphFetchTree extends GraphFetchTree {
48
44
  property: PropertyReference;
49
45
  alias?: string | undefined;
50
46
  parameters: ValueSpecification[] = []; //TODO
51
- subType: OptionalPackageableElementReference<Class>;
47
+ subType?: PackageableElementReference<Class> | undefined;
52
48
 
53
49
  constructor(
54
50
  property: PropertyReference,
55
- val?: OptionalPackageableElementReference<Class>,
51
+ subType: PackageableElementReference<Class> | undefined,
56
52
  ) {
57
53
  super();
58
54
  this.property = property;
59
- this.subType =
60
- val ??
61
- OptionalPackageableElementExplicitReference.create<Class>(undefined);
55
+ this.subType = subType;
62
56
  }
63
57
  }
64
58
 
@@ -31,10 +31,7 @@ import {
31
31
  import type { Connection } from '../../metamodels/pure/packageableElements/connection/Connection.js';
32
32
  import type { Mapping } from '../../metamodels/pure/packageableElements/mapping/Mapping.js';
33
33
  import type { PackageableElement } from '../../metamodels/pure/packageableElements/PackageableElement.js';
34
- import {
35
- PackageableElementReference,
36
- optionalizePackageableElementReference,
37
- } from '../../metamodels/pure/packageableElements/PackageableElementReference.js';
34
+ import { PackageableElementReference } from '../../metamodels/pure/packageableElements/PackageableElementReference.js';
38
35
  import type { Runtime } from '../../metamodels/pure/packageableElements/runtime/Runtime.js';
39
36
  import { ExternalFormatConnection } from '../../metamodels/pure/packageableElements/externalFormat/connection/DSLExternalFormat_ExternalFormatConnection.js';
40
37
  import { UrlStream } from '../../metamodels/pure/packageableElements/externalFormat/connection/DSLExternalFormat_UrlStream.js';
@@ -133,11 +130,9 @@ export class DSLExternalFormat_PureProtocolProcessorPlugin
133
130
  );
134
131
  const element = getOwnBinding(path, context.currentSubGraph);
135
132
  element.schemaId = elementProtocol.schemaId;
136
- element.schemaSet = optionalizePackageableElementReference(
137
- elementProtocol.schemaSet
138
- ? V1_resolveSchemaSet(elementProtocol.schemaSet, context)
139
- : undefined,
140
- );
133
+ element.schemaSet = elementProtocol.schemaSet
134
+ ? V1_resolveSchemaSet(elementProtocol.schemaSet, context)
135
+ : undefined;
141
136
 
142
137
  element.contentType = guaranteeNonEmptyString(
143
138
  elementProtocol.contentType,
@@ -262,7 +257,7 @@ export class DSLExternalFormat_PureProtocolProcessorPlugin
262
257
  protocol.name = metamodel.name;
263
258
  protocol.package = metamodel.package?.path ?? '';
264
259
  protocol.schemaId = metamodel.schemaId;
265
- protocol.schemaSet = metamodel.schemaSet.valueForSerialization;
260
+ protocol.schemaSet = metamodel.schemaSet?.valueForSerialization;
266
261
  protocol.contentType = metamodel.contentType;
267
262
  const modelUnit = new V1_ModelUnit();
268
263
  modelUnit.packageableElementExcludes =
@@ -70,6 +70,11 @@ export type V1_MappingModelCoverageAnalysisInputCollector = (
70
70
  protocolGraph: V1_PureModelContextData,
71
71
  ) => V1_PackageableElement[];
72
72
 
73
+ export type V1_MappingModelRuntimeCompatibilityAnalysisInputCollector = (
74
+ graph: PureModel,
75
+ protocolGraph: V1_PureModelContextData,
76
+ ) => V1_PackageableElement[];
77
+
73
78
  export type V1_PropertyExpressionTypeInferrer = (
74
79
  variable: ValueSpecification | undefined,
75
80
  ) => Type | undefined;
@@ -141,19 +146,14 @@ export abstract class PureProtocolProcessorPlugin extends AbstractPlugin {
141
146
  /**
142
147
  * Get the list of collectors of graph elements to build execution input.
143
148
  *
144
- * In particular, such collector is used to specify any additional packageable elements
145
- * added to the graph that is used when executing a query against the engine server.
146
- * We prune the graph to avoid sending the server additional elements not needed for execution.
147
- * This would provide a mechanism to add more elements in this reduced graph.
149
+ * In particular, these collectors are used to produce the minimal graph that is needed for such execution.
148
150
  */
149
151
  V1_getExtraExecutionInputCollectors?(): V1_ExecutionInputCollector[];
150
152
 
151
153
  /**
152
- * Get the list of collectors of graph elements to build mapping-model-coverage-analysis input.
154
+ * Get the list of collectors of graph elements to build the input for mapping model-coverage analysis.
153
155
  *
154
- * In particular, such collector is used to specify any additional packageable elements
155
- * added to the graph that is used when analyzing mapped properties in the mapping.
156
- * This would provide a mechanism to add more elements in this reduced graph.
156
+ * In particular, these collectors are used to produce the minimal graph that is needed for such analysis.
157
157
  */
158
158
  V1_getExtraMappingModelCoverageAnalysisInputCollectors?(): V1_MappingModelCoverageAnalysisInputCollector[];
159
159