@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.
- package/lib/DSLData_Exports.d.ts +1 -1
- package/lib/DSLData_Exports.d.ts.map +1 -1
- package/lib/DSLData_Exports.js +1 -1
- package/lib/DSLData_Exports.js.map +1 -1
- package/lib/DSLMapping_Exports.d.ts +6 -2
- package/lib/DSLMapping_Exports.d.ts.map +1 -1
- package/lib/DSLMapping_Exports.js +6 -2
- package/lib/DSLMapping_Exports.js.map +1 -1
- package/lib/DSLService_Exports.d.ts +1 -0
- package/lib/DSLService_Exports.d.ts.map +1 -1
- package/lib/DSLService_Exports.js +1 -0
- package/lib/DSLService_Exports.js.map +1 -1
- package/lib/GraphManagerState.d.ts +21 -18
- package/lib/GraphManagerState.d.ts.map +1 -1
- package/lib/GraphManagerState.js +68 -59
- package/lib/GraphManagerState.js.map +1 -1
- package/lib/GraphManagerTestUtils.js.map +1 -1
- package/lib/MetaModelConst.d.ts +44 -42
- package/lib/MetaModelConst.d.ts.map +1 -1
- package/lib/MetaModelConst.js +52 -50
- package/lib/MetaModelConst.js.map +1 -1
- package/lib/graph/BasicModel.d.ts +1 -1
- package/lib/graph/BasicModel.d.ts.map +1 -1
- package/lib/graph/BasicModel.js +4 -4
- package/lib/graph/BasicModel.js.map +1 -1
- package/lib/graph/DependencyManager.d.ts +1 -1
- package/lib/graph/DependencyManager.d.ts.map +1 -1
- package/lib/graph/DependencyManager.js +2 -2
- package/lib/graph/DependencyManager.js.map +1 -1
- package/lib/graph/PureModel.d.ts +8 -2
- package/lib/graph/PureModel.d.ts.map +1 -1
- package/lib/graph/PureModel.js +8 -2
- package/lib/graph/PureModel.js.map +1 -1
- package/lib/graphManager/AbstractPureGraphManager.d.ts +21 -21
- package/lib/graphManager/AbstractPureGraphManager.d.ts.map +1 -1
- package/lib/graphManager/AbstractPureGraphManager.js +15 -0
- package/lib/graphManager/AbstractPureGraphManager.js.map +1 -1
- package/lib/graphManager/GraphManagerEvent.d.ts +1 -0
- package/lib/graphManager/GraphManagerEvent.d.ts.map +1 -1
- package/lib/graphManager/GraphManagerEvent.js +1 -0
- package/lib/graphManager/GraphManagerEvent.js.map +1 -1
- package/lib/graphManager/action/analytics/{MappingAnalytics.d.ts → MappingModelCoverageAnalysis.d.ts} +3 -3
- package/lib/graphManager/action/analytics/MappingModelCoverageAnalysis.d.ts.map +1 -0
- package/lib/graphManager/action/analytics/{MappingAnalytics.js → MappingModelCoverageAnalysis.js} +5 -7
- package/lib/graphManager/action/analytics/MappingModelCoverageAnalysis.js.map +1 -0
- package/lib/graphManager/action/changeDetection/CoreObserverHelper.d.ts +1 -2
- package/lib/graphManager/action/changeDetection/CoreObserverHelper.d.ts.map +1 -1
- package/lib/graphManager/action/changeDetection/CoreObserverHelper.js +0 -4
- package/lib/graphManager/action/changeDetection/CoreObserverHelper.js.map +1 -1
- package/lib/graphManager/action/changeDetection/DSLExternalFormat_ObserverHelper.d.ts.map +1 -1
- package/lib/graphManager/action/changeDetection/DSLExternalFormat_ObserverHelper.js +4 -2
- package/lib/graphManager/action/changeDetection/DSLExternalFormat_ObserverHelper.js.map +1 -1
- package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.d.ts +2 -2
- package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.d.ts.map +1 -1
- package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.js +16 -8
- package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.js.map +1 -1
- package/lib/graphManager/action/changeDetection/GraphObserverHelper.js +1 -1
- package/lib/graphManager/action/changeDetection/GraphObserverHelper.js.map +1 -1
- package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.d.ts.map +1 -1
- package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.js +4 -2
- package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.js.map +1 -1
- package/lib/graphManager/action/validation/DSLService_ValidationHelper.d.ts +3 -2
- package/lib/graphManager/action/validation/DSLService_ValidationHelper.d.ts.map +1 -1
- package/lib/graphManager/action/validation/DSLService_ValidationHelper.js +1 -1
- package/lib/graphManager/action/validation/DSLService_ValidationHelper.js.map +1 -1
- package/lib/helpers/DSLMapping_Helper.js +1 -1
- package/lib/helpers/DSLMapping_Helper.js.map +1 -1
- package/lib/helpers/DomainHelper.d.ts +2 -0
- package/lib/helpers/DomainHelper.d.ts.map +1 -1
- package/lib/helpers/DomainHelper.js +5 -1
- package/lib/helpers/DomainHelper.js.map +1 -1
- package/lib/index.d.ts +7 -11
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +8 -11
- package/lib/index.js.map +1 -1
- package/lib/models/metamodels/pure/Reference.d.ts +16 -19
- package/lib/models/metamodels/pure/Reference.d.ts.map +1 -1
- package/lib/models/metamodels/pure/Reference.js +14 -19
- package/lib/models/metamodels/pure/Reference.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.d.ts +2 -27
- package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.js +2 -73
- package/lib/models/metamodels/pure/packageableElements/PackageableElementReference.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.d.ts +2 -2
- package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.js +4 -1
- package/lib/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.d.ts +3 -3
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js +3 -3
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.d.ts +10 -10
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.js +7 -7
- package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.d.ts +18 -14
- package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.js +17 -13
- package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.d.ts +8 -19
- package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.js +13 -34
- package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/service/MultiExecutionServiceTestResult.d.ts +20 -0
- package/lib/models/metamodels/pure/packageableElements/service/MultiExecutionServiceTestResult.d.ts.map +1 -0
- package/lib/models/metamodels/pure/packageableElements/service/MultiExecutionServiceTestResult.js +20 -0
- package/lib/models/metamodels/pure/packageableElements/service/MultiExecutionServiceTestResult.js.map +1 -0
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts +4 -3
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.d.ts +4 -4
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.js +2 -3
- package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.d.ts +3 -3
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.js +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.d.ts +4 -4
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.js +2 -3
- package/lib/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts +3 -2
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.d.ts +2 -2
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.js +2 -3
- package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.js.map +1 -1
- package/lib/models/metamodels/pure/valueSpecification/GraphFetchTree.d.ts +3 -3
- package/lib/models/metamodels/pure/valueSpecification/GraphFetchTree.d.ts.map +1 -1
- package/lib/models/metamodels/pure/valueSpecification/GraphFetchTree.js +2 -5
- package/lib/models/metamodels/pure/valueSpecification/GraphFetchTree.js.map +1 -1
- package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.d.ts.map +1 -1
- package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js +4 -4
- package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js.map +1 -1
- package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts +4 -8
- package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts.map +1 -1
- package/lib/models/protocols/pure/PureProtocolProcessorPlugin.js.map +1 -1
- package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts +35 -19
- package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/V1_PureGraphManager.js +159 -158
- package/lib/models/protocols/pure/v1/V1_PureGraphManager.js.map +1 -1
- package/lib/models/protocols/pure/v1/engine/V1_Engine.d.ts +4 -4
- package/lib/models/protocols/pure/v1/engine/V1_Engine.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/engine/V1_Engine.js +5 -7
- package/lib/models/protocols/pure/v1/engine/V1_Engine.js.map +1 -1
- package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.d.ts +2 -4
- package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.js +52 -53
- package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.js.map +1 -1
- package/lib/models/protocols/pure/v1/engine/analytics/{V1_MappingAnalytics.d.ts → V1_MappingModelCoverageAnalysis.d.ts} +2 -2
- package/lib/models/protocols/pure/v1/engine/analytics/V1_MappingModelCoverageAnalysis.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/engine/analytics/{V1_MappingAnalytics.js → V1_MappingModelCoverageAnalysis.js} +2 -2
- package/lib/models/protocols/pure/v1/engine/analytics/V1_MappingModelCoverageAnalysis.js.map +1 -0
- package/lib/models/protocols/pure/v1/helper/V1_DomainHelper.d.ts +18 -0
- package/lib/models/protocols/pure/v1/helper/V1_DomainHelper.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/helper/V1_DomainHelper.js +35 -0
- package/lib/models/protocols/pure/v1/helper/V1_DomainHelper.js.map +1 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.d.ts +17 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.js +18 -5
- package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/runtime/V1_Runtime.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/runtime/V1_Runtime.js +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/runtime/V1_Runtime.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_MultiExecutionServiceTestResult.d.ts +20 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_MultiExecutionServiceTestResult.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_MultiExecutionServiceTestResult.js +20 -0
- package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_MultiExecutionServiceTestResult.js.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js +50 -86
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingFirstPassBuilder.d.ts → V1_ClassMappingFirstPassBuilder.d.ts} +3 -3
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ClassMappingFirstPassBuilder.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js → V1_ClassMappingFirstPassBuilder.js} +6 -7
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ClassMappingFirstPassBuilder.js.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingSecondPassBuilder.d.ts → V1_ClassMappingSecondPassBuilder.d.ts} +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ClassMappingSecondPassBuilder.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingSecondPassBuilder.js → V1_ClassMappingSecondPassBuilder.js} +13 -14
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ClassMappingSecondPassBuilder.js.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFifthPassBuilder.d.ts → V1_ElementFifthPassBuilder.d.ts} +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFifthPassBuilder.js → V1_ElementFifthPassBuilder.js} +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFifthPassBuilder.js.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts → V1_ElementFirstPassBuilder.d.ts} +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFirstPassBuilder.js → V1_ElementFirstPassBuilder.js} +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFirstPassBuilder.js.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFourthPassBuilder.d.ts → V1_ElementFourthPassBuilder.d.ts} +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFourthPassBuilder.js → V1_ElementFourthPassBuilder.js} +4 -4
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementFourthPassBuilder.js.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts → V1_ElementSecondPassBuilder.d.ts} +3 -3
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphSecondPassBuilder.js → V1_ElementSecondPassBuilder.js} +16 -17
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.js.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphThirdPassBuilder.d.ts → V1_ElementThirdPassBuilder.d.ts} +3 -3
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphThirdPassBuilder.js → V1_ElementThirdPassBuilder.js} +7 -7
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementThirdPassBuilder.js.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts → V1_PropertyMappingBuilder.d.ts} +4 -4
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelPropertyMappingBuilder.js → V1_PropertyMappingBuilder.js} +50 -34
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_PropertyMappingBuilder.js.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelRawValueSpecificationBuilder.d.ts → V1_RawValueSpecificationBuilder.d.ts} +3 -3
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_RawValueSpecificationBuilder.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelRawValueSpecificationBuilder.js → V1_RawValueSpecificationBuilder.js} +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_RawValueSpecificationBuilder.js.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.js +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AssociationMappingHelper.js +3 -3
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AssociationMappingHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.d.ts +22 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.d.ts.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelConnectionBuilder.js → helpers/V1_ConnectionBuilderHelper.js} +16 -15
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.js.map +1 -0
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.d.ts +2 -11
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.js +2 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.d.ts +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.js +12 -12
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js +5 -6
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.js +4 -4
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.js +7 -8
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.d.ts +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.js +4 -4
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.js +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js +2 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.js +3 -3
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.d.ts +5 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.js +17 -2
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.js +3 -4
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.d.ts +3 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.js +16 -4
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.js.map +1 -1
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.js +9 -9
- package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.js.map +1 -1
- package/lib/package.json +5 -5
- package/package.json +8 -8
- package/src/DSLData_Exports.ts +1 -1
- package/src/DSLMapping_Exports.ts +20 -6
- package/src/DSLService_Exports.ts +1 -0
- package/src/GraphManagerState.ts +104 -91
- package/src/GraphManagerTestUtils.tsx +4 -4
- package/src/MetaModelConst.ts +59 -56
- package/src/graph/BasicModel.ts +4 -4
- package/src/graph/DependencyManager.ts +2 -2
- package/src/graph/PureModel.ts +10 -2
- package/src/graphManager/AbstractPureGraphManager.ts +54 -40
- package/src/graphManager/GraphManagerEvent.ts +1 -0
- package/src/graphManager/action/analytics/{MappingAnalytics.ts → MappingModelCoverageAnalysis.ts} +8 -6
- package/src/graphManager/action/changeDetection/CoreObserverHelper.ts +1 -14
- package/src/graphManager/action/changeDetection/DSLExternalFormat_ObserverHelper.ts +3 -2
- package/src/graphManager/action/changeDetection/DSLMapping_ObserverHelper.ts +17 -12
- package/src/graphManager/action/changeDetection/GraphObserverHelper.ts +2 -2
- package/src/graphManager/action/changeDetection/ValueSpecificationObserver.ts +3 -2
- package/src/graphManager/action/validation/DSLService_ValidationHelper.ts +4 -7
- package/src/helpers/DSLMapping_Helper.ts +1 -1
- package/src/helpers/DomainHelper.ts +14 -0
- package/src/index.ts +14 -18
- package/src/models/metamodels/pure/Reference.ts +17 -26
- package/src/models/metamodels/pure/packageableElements/PackageableElementReference.ts +2 -131
- package/src/models/metamodels/pure/packageableElements/externalFormat/store/DSLExternalFormat_Binding.ts +6 -3
- package/src/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.ts +10 -9
- package/src/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.ts +18 -18
- package/src/models/metamodels/pure/packageableElements/mapping/PropertyMapping.ts +21 -17
- package/src/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.ts +17 -66
- package/src/models/metamodels/pure/packageableElements/service/MultiExecutionServiceTestResult.ts +21 -0
- package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.ts +5 -7
- package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataPropertyMapping.ts +6 -6
- package/src/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PureInstanceSetImplementation.ts +4 -7
- package/src/models/metamodels/pure/packageableElements/store/modelToModel/mapping/PurePropertyMapping.ts +6 -6
- package/src/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.ts +4 -6
- package/src/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalPropertyMapping.ts +3 -3
- package/src/models/metamodels/pure/valueSpecification/GraphFetchTree.ts +4 -10
- package/src/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.ts +5 -10
- package/src/models/protocols/pure/PureProtocolProcessorPlugin.ts +8 -8
- package/src/models/protocols/pure/v1/V1_PureGraphManager.ts +248 -255
- package/src/models/protocols/pure/v1/engine/V1_Engine.ts +7 -13
- package/src/models/protocols/pure/v1/engine/V1_EngineServerClient.ts +34 -45
- package/src/models/protocols/pure/v1/engine/analytics/{V1_MappingAnalytics.ts → V1_MappingModelCoverageAnalysis.ts} +1 -1
- package/src/models/protocols/pure/v1/helper/V1_DomainHelper.ts +51 -0
- package/src/models/protocols/pure/v1/model/packageableElements/mapping/V1_PropertyMapping.ts +18 -5
- package/src/models/protocols/pure/v1/model/packageableElements/runtime/V1_Runtime.ts +1 -1
- package/src/models/protocols/pure/v1/model/packageableElements/service/V1_MultiExecutionServiceTestResult.ts +21 -0
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +32 -86
- package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.ts +1 -1
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingFirstPassBuilder.ts → V1_ClassMappingFirstPassBuilder.ts} +6 -10
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelClassMappingSecondPassBuilder.ts → V1_ClassMappingSecondPassBuilder.ts} +12 -19
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFifthPassBuilder.ts → V1_ElementFifthPassBuilder.ts} +1 -1
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFirstPassBuilder.ts → V1_ElementFirstPassBuilder.ts} +1 -1
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphFourthPassBuilder.ts → V1_ElementFourthPassBuilder.ts} +3 -6
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphSecondPassBuilder.ts → V1_ElementSecondPassBuilder.ts} +18 -20
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelGraphThirdPassBuilder.ts → V1_ElementThirdPassBuilder.ts} +6 -9
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ExecutionPlanBuilder.ts +2 -4
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelPropertyMappingBuilder.ts → V1_PropertyMappingBuilder.ts} +105 -40
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelRawValueSpecificationBuilder.ts → V1_RawValueSpecificationBuilder.ts} +2 -2
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.ts +2 -5
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AssociationMappingHelper.ts +3 -3
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/{V1_ProtocolToMetaModelConnectionBuilder.ts → helpers/V1_ConnectionBuilderHelper.ts} +33 -26
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.ts +7 -3
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.ts +14 -12
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.ts +1 -1
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.ts +6 -9
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.ts +4 -4
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ProcessingContext.ts +7 -8
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.ts +5 -5
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RuntimeBuilderHelper.ts +6 -5
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.ts +2 -4
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.ts +3 -7
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.ts +25 -4
- package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.ts +3 -6
- package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.ts +29 -3
- package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ValueSpecificationSerializer.ts +9 -9
- package/tsconfig.json +15 -12
- package/lib/graphManager/action/analytics/MappingAnalytics.d.ts.map +0 -1
- package/lib/graphManager/action/analytics/MappingAnalytics.js.map +0 -1
- package/lib/models/protocols/pure/v1/engine/analytics/V1_MappingAnalytics.d.ts.map +0 -1
- package/lib/models/protocols/pure/v1/engine/analytics/V1_MappingAnalytics.js.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.d.ts.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.d.ts.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingSecondPassBuilder.js.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.d.ts +0 -40
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.d.ts.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelConnectionBuilder.js.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.d.ts.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.js.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.d.ts.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.js.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.d.ts.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.d.ts.map +0 -1
- package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.js.map +0 -1
|
@@ -14,14 +14,13 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
import { assertType } from '@finos/legend-shared';
|
|
18
17
|
import type { PackageableElement } from './PackageableElement.js';
|
|
19
18
|
import type { Section } from './section/Section.js';
|
|
20
|
-
import {
|
|
19
|
+
import { Reference } from '../Reference.js';
|
|
21
20
|
|
|
22
21
|
export abstract class PackageableElementReference<
|
|
23
22
|
T extends PackageableElement,
|
|
24
|
-
> extends
|
|
23
|
+
> extends Reference {
|
|
25
24
|
value: T;
|
|
26
25
|
|
|
27
26
|
protected constructor(value: T) {
|
|
@@ -141,131 +140,3 @@ export class PackageableElementImplicitReference<
|
|
|
141
140
|
return currentElementPath;
|
|
142
141
|
}
|
|
143
142
|
}
|
|
144
|
-
|
|
145
|
-
export abstract class OptionalPackageableElementReference<
|
|
146
|
-
T extends PackageableElement,
|
|
147
|
-
> extends OptionalReference {
|
|
148
|
-
value?: T | undefined;
|
|
149
|
-
|
|
150
|
-
protected constructor(value: T | undefined) {
|
|
151
|
-
super();
|
|
152
|
-
this.value = value;
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
abstract get valueForSerialization(): string | undefined;
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
export class OptionalPackageableElementExplicitReference<
|
|
159
|
-
T extends PackageableElement,
|
|
160
|
-
> extends OptionalPackageableElementReference<T> {
|
|
161
|
-
private constructor(value: T | undefined) {
|
|
162
|
-
super(value);
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
static create<V extends PackageableElement>(
|
|
166
|
-
value: V | undefined,
|
|
167
|
-
): OptionalPackageableElementExplicitReference<V> {
|
|
168
|
-
return new OptionalPackageableElementExplicitReference(value);
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
get valueForSerialization(): string | undefined {
|
|
172
|
-
return this.value?.path;
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
export class OptionalPackageableElementImplicitReference<
|
|
177
|
-
T extends PackageableElement,
|
|
178
|
-
> extends OptionalPackageableElementReference<T> {
|
|
179
|
-
readonly initialResolvedPath?: string | undefined;
|
|
180
|
-
readonly input?: string | undefined;
|
|
181
|
-
readonly parentSection?: Section | undefined;
|
|
182
|
-
readonly skipSectionCheck?: boolean | undefined;
|
|
183
|
-
|
|
184
|
-
private constructor(
|
|
185
|
-
value: T | undefined,
|
|
186
|
-
input: string | undefined,
|
|
187
|
-
parentSection: Section | undefined,
|
|
188
|
-
skipSectionCheck: boolean | undefined,
|
|
189
|
-
) {
|
|
190
|
-
super(value);
|
|
191
|
-
this.initialResolvedPath = value?.path;
|
|
192
|
-
this.input = input;
|
|
193
|
-
this.parentSection = parentSection;
|
|
194
|
-
this.skipSectionCheck = skipSectionCheck;
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
static create<V extends PackageableElement>(
|
|
198
|
-
value: V | undefined,
|
|
199
|
-
input: string | undefined,
|
|
200
|
-
): OptionalPackageableElementImplicitReference<V> {
|
|
201
|
-
return new OptionalPackageableElementImplicitReference(
|
|
202
|
-
value,
|
|
203
|
-
input,
|
|
204
|
-
undefined,
|
|
205
|
-
true,
|
|
206
|
-
);
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
/**
|
|
210
|
-
* Use this creator method when the reference is created by
|
|
211
|
-
* resolving imports using section majorly when building the graph.
|
|
212
|
-
*/
|
|
213
|
-
static resolveFromSection<V extends PackageableElement>(
|
|
214
|
-
value: V | undefined,
|
|
215
|
-
input: string | undefined,
|
|
216
|
-
parentSection: Section | undefined,
|
|
217
|
-
): OptionalPackageableElementImplicitReference<V> {
|
|
218
|
-
return new OptionalPackageableElementImplicitReference(
|
|
219
|
-
value,
|
|
220
|
-
input,
|
|
221
|
-
parentSection,
|
|
222
|
-
false,
|
|
223
|
-
);
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
get valueForSerialization(): string | undefined {
|
|
227
|
-
const currentElementPath = this.value?.path;
|
|
228
|
-
// NOTE: `skipSectionCheck` flag's effect should only kick in if the value
|
|
229
|
-
// is not different than the original value
|
|
230
|
-
if (
|
|
231
|
-
this.skipSectionCheck &&
|
|
232
|
-
this.initialResolvedPath === currentElementPath
|
|
233
|
-
) {
|
|
234
|
-
return this.input;
|
|
235
|
-
}
|
|
236
|
-
// when the parent section does not exist or has been deleted
|
|
237
|
-
if (
|
|
238
|
-
this.parentSection === undefined ||
|
|
239
|
-
this.parentSection._OWNER.isDeleted
|
|
240
|
-
) {
|
|
241
|
-
return currentElementPath;
|
|
242
|
-
}
|
|
243
|
-
// the current element is the same as the inferred one
|
|
244
|
-
if (this.initialResolvedPath === currentElementPath) {
|
|
245
|
-
return this.input;
|
|
246
|
-
}
|
|
247
|
-
return currentElementPath;
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
export const optionalizePackageableElementReference = <
|
|
252
|
-
V extends PackageableElement,
|
|
253
|
-
>(
|
|
254
|
-
reference: PackageableElementReference<V> | undefined,
|
|
255
|
-
): OptionalPackageableElementReference<V> => {
|
|
256
|
-
if (!reference || reference instanceof PackageableElementExplicitReference) {
|
|
257
|
-
return OptionalPackageableElementExplicitReference.create(reference?.value);
|
|
258
|
-
}
|
|
259
|
-
assertType(reference, PackageableElementImplicitReference);
|
|
260
|
-
if (reference.skipSectionCheck) {
|
|
261
|
-
return OptionalPackageableElementImplicitReference.create(
|
|
262
|
-
reference.value,
|
|
263
|
-
reference.input,
|
|
264
|
-
);
|
|
265
|
-
}
|
|
266
|
-
return OptionalPackageableElementImplicitReference.resolveFromSection(
|
|
267
|
-
reference.value,
|
|
268
|
-
reference.input,
|
|
269
|
-
reference.parentSection,
|
|
270
|
-
);
|
|
271
|
-
};
|
|
@@ -17,13 +17,16 @@
|
|
|
17
17
|
import { hashArray, type Hashable } from '@finos/legend-shared';
|
|
18
18
|
import type { SchemaSet } from '../schemaSet/DSLExternalFormat_SchemaSet.js';
|
|
19
19
|
import { Store } from '../../store/Store.js';
|
|
20
|
-
import type { OptionalPackageableElementReference } from '../../PackageableElementReference.js';
|
|
21
20
|
import type { ModelUnit } from './DSLExternalFormat_ModelUnit.js';
|
|
22
21
|
import type { PackageableElementVisitor } from '../../PackageableElement.js';
|
|
23
22
|
import { DSL_EXTERNAL_FORMAT_HASH_STRUCTURE } from '../../../../../DSLExternalFormat_ModelUtils.js';
|
|
23
|
+
import type { PackageableElementReference } from '../../PackageableElementReference.js';
|
|
24
24
|
|
|
25
|
+
// NOTE: in the metamodel, `Binding` extends `ModelStore`, we could consider doing the same
|
|
26
|
+
// although this might not be trivial as we have a fair amount of logic around the special
|
|
27
|
+
// handling of `ModelStore`
|
|
25
28
|
export class Binding extends Store implements Hashable {
|
|
26
|
-
schemaSet
|
|
29
|
+
schemaSet?: PackageableElementReference<SchemaSet> | undefined;
|
|
27
30
|
schemaId?: string | undefined;
|
|
28
31
|
contentType!: string;
|
|
29
32
|
modelUnit!: ModelUnit;
|
|
@@ -32,7 +35,7 @@ export class Binding extends Store implements Hashable {
|
|
|
32
35
|
return hashArray([
|
|
33
36
|
DSL_EXTERNAL_FORMAT_HASH_STRUCTURE.BINDING,
|
|
34
37
|
this.path,
|
|
35
|
-
this.schemaSet
|
|
38
|
+
this.schemaSet?.valueForSerialization ?? '',
|
|
36
39
|
this.schemaId ?? '',
|
|
37
40
|
this.contentType,
|
|
38
41
|
this.modelUnit,
|
|
@@ -16,10 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
import { hashArray, isNonNullable, type Hashable } from '@finos/legend-shared';
|
|
18
18
|
import { CORE_HASH_STRUCTURE } from '../../../../../MetaModelConst.js';
|
|
19
|
-
import type {
|
|
20
|
-
PackageableElementReference,
|
|
21
|
-
OptionalPackageableElementReference,
|
|
22
|
-
} from '../PackageableElementReference.js';
|
|
19
|
+
import type { PackageableElementReference } from '../PackageableElementReference.js';
|
|
23
20
|
import type { Mapping } from './Mapping.js';
|
|
24
21
|
import type { Enumeration } from '../domain/Enumeration.js';
|
|
25
22
|
import type { EnumValueMapping } from './EnumValueMapping.js';
|
|
@@ -31,14 +28,14 @@ export class EnumerationMapping implements Hashable {
|
|
|
31
28
|
|
|
32
29
|
enumeration: PackageableElementReference<Enumeration>;
|
|
33
30
|
id: InferableMappingElementIdValue;
|
|
34
|
-
sourceType
|
|
31
|
+
sourceType?: PackageableElementReference<Type> | undefined;
|
|
35
32
|
enumValueMappings: EnumValueMapping[] = [];
|
|
36
33
|
|
|
37
34
|
constructor(
|
|
38
35
|
id: InferableMappingElementIdValue,
|
|
39
36
|
enumeration: PackageableElementReference<Enumeration>,
|
|
40
37
|
parent: Mapping,
|
|
41
|
-
sourceType:
|
|
38
|
+
sourceType: PackageableElementReference<Type> | undefined,
|
|
42
39
|
) {
|
|
43
40
|
this.id = id;
|
|
44
41
|
this.enumeration = enumeration;
|
|
@@ -55,15 +52,19 @@ export class EnumerationMapping implements Hashable {
|
|
|
55
52
|
this.enumValueMappings.filter(
|
|
56
53
|
// TODO: use `isStubbed_EnumValueMapping` when we refactor hashing
|
|
57
54
|
(enumValueMapping) =>
|
|
58
|
-
enumValueMapping.sourceValues.filter(
|
|
55
|
+
enumValueMapping.sourceValues.filter((sourceValue) =>
|
|
56
|
+
isNonNullable(sourceValue.value),
|
|
57
|
+
).length,
|
|
59
58
|
).length
|
|
60
|
-
? this.sourceType
|
|
59
|
+
? this.sourceType?.valueForSerialization ?? ''
|
|
61
60
|
: '', // default source value when there is no element
|
|
62
61
|
hashArray(
|
|
63
62
|
this.enumValueMappings.filter(
|
|
64
63
|
// TODO: use `isStubbed_EnumValueMapping` when we refactor hashing
|
|
65
64
|
(enumValueMapping) =>
|
|
66
|
-
enumValueMapping.sourceValues.filter(
|
|
65
|
+
enumValueMapping.sourceValues.filter((sourceValue) =>
|
|
66
|
+
isNonNullable(sourceValue.value),
|
|
67
|
+
).length,
|
|
67
68
|
),
|
|
68
69
|
),
|
|
69
70
|
]);
|
package/src/models/metamodels/pure/packageableElements/mapping/EnumerationMappingReference.ts
CHANGED
|
@@ -15,20 +15,20 @@
|
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
17
|
import {
|
|
18
|
-
type
|
|
19
|
-
|
|
18
|
+
type PackageableElementReference,
|
|
19
|
+
PackageableElementExplicitReference,
|
|
20
20
|
} from '../PackageableElementReference.js';
|
|
21
21
|
import type { Mapping } from './Mapping.js';
|
|
22
22
|
import type { EnumerationMapping } from './EnumerationMapping.js';
|
|
23
|
-
import {
|
|
23
|
+
import { ReferenceWithOwner } from '../../Reference.js';
|
|
24
24
|
|
|
25
|
-
export abstract class
|
|
26
|
-
override readonly ownerReference:
|
|
27
|
-
value
|
|
25
|
+
export abstract class EnumerationMappingReference extends ReferenceWithOwner {
|
|
26
|
+
override readonly ownerReference: PackageableElementReference<Mapping>;
|
|
27
|
+
value: EnumerationMapping;
|
|
28
28
|
|
|
29
29
|
protected constructor(
|
|
30
|
-
ownerReference:
|
|
31
|
-
value: EnumerationMapping
|
|
30
|
+
ownerReference: PackageableElementReference<Mapping>,
|
|
31
|
+
value: EnumerationMapping,
|
|
32
32
|
) {
|
|
33
33
|
super(ownerReference);
|
|
34
34
|
this.ownerReference = ownerReference;
|
|
@@ -38,24 +38,24 @@ export abstract class OptionalEnumerationMappingReference extends OptionalRefere
|
|
|
38
38
|
abstract get valueForSerialization(): string | undefined;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
export class
|
|
42
|
-
override readonly ownerReference:
|
|
41
|
+
export class EnumerationMappingExplicitReference extends EnumerationMappingReference {
|
|
42
|
+
override readonly ownerReference: PackageableElementReference<Mapping>;
|
|
43
43
|
|
|
44
|
-
private constructor(value: EnumerationMapping
|
|
45
|
-
const ownerReference =
|
|
46
|
-
value
|
|
44
|
+
private constructor(value: EnumerationMapping) {
|
|
45
|
+
const ownerReference = PackageableElementExplicitReference.create(
|
|
46
|
+
value._PARENT,
|
|
47
47
|
);
|
|
48
48
|
super(ownerReference, value);
|
|
49
49
|
this.ownerReference = ownerReference;
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
static create(
|
|
53
|
-
value: EnumerationMapping
|
|
54
|
-
):
|
|
55
|
-
return new
|
|
53
|
+
value: EnumerationMapping,
|
|
54
|
+
): EnumerationMappingExplicitReference {
|
|
55
|
+
return new EnumerationMappingExplicitReference(value);
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
get valueForSerialization(): string
|
|
59
|
-
return this.value
|
|
58
|
+
get valueForSerialization(): string {
|
|
59
|
+
return this.value.id.value;
|
|
60
60
|
}
|
|
61
61
|
}
|
|
@@ -18,7 +18,6 @@ import { hashArray, type Hashable } from '@finos/legend-shared';
|
|
|
18
18
|
import { CORE_HASH_STRUCTURE } from '../../../../../MetaModelConst.js';
|
|
19
19
|
import type { PropertyReference } from '../domain/PropertyReference.js';
|
|
20
20
|
import type { PropertyMappingsImplementation } from './PropertyMappingsImplementation.js';
|
|
21
|
-
import type { SetImplementation } from './SetImplementation.js';
|
|
22
21
|
import type { PurePropertyMapping } from '../store/modelToModel/mapping/PurePropertyMapping.js';
|
|
23
22
|
import type { FlatDataPropertyMapping } from '../store/flatData/mapping/FlatDataPropertyMapping.js';
|
|
24
23
|
import type { EmbeddedFlatDataPropertyMapping } from '../store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js';
|
|
@@ -29,6 +28,7 @@ import type { InlineEmbeddedRelationalInstanceSetImplementation } from '../store
|
|
|
29
28
|
import type { AggregationAwarePropertyMapping } from './aggregationAware/AggregationAwarePropertyMapping.js';
|
|
30
29
|
import type { XStorePropertyMapping } from './xStore/XStorePropertyMapping.js';
|
|
31
30
|
import type { LocalMappingPropertyInfo } from './LocalMappingPropertyInfo.js';
|
|
31
|
+
import type { SetImplementationReference } from './SetImplementationReference.js';
|
|
32
32
|
|
|
33
33
|
export interface PropertyMappingVisitor<T> {
|
|
34
34
|
visit_PropertyMapping(propertyMapping: PropertyMapping): T;
|
|
@@ -64,41 +64,45 @@ export abstract class PropertyMapping implements Hashable {
|
|
|
64
64
|
|
|
65
65
|
property: PropertyReference;
|
|
66
66
|
/**
|
|
67
|
-
*
|
|
68
|
-
* that
|
|
69
|
-
*
|
|
67
|
+
* In Pure, these fields are defined as string and not properly resolved, perhaps because of
|
|
68
|
+
* the fact that in Pure, we allow mappings which contain class mapping IDs pointing at
|
|
69
|
+
* another mapping's class mappings. In Pure/Engine, we let this pass compilation phase.
|
|
70
|
+
* In Studio, we disallow this. This makes it hard for users to migrate to Studio.
|
|
71
|
+
* We should think of a strategy to make things loadable in Studio, but disallow users
|
|
72
|
+
* to make changes if they have this kind of error in their graph.
|
|
70
73
|
*
|
|
71
|
-
*
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
*
|
|
74
|
+
* See https://github.com/finos/legend-studio/issues/880
|
|
75
|
+
*
|
|
76
|
+
* NOTE: We might not be able to resolve `targetSetImplementation` for all `target` IDs hence
|
|
77
|
+
* defined as optional for now. We might need to come back and re-visit this decision. Note that
|
|
78
|
+
* one quirky thing is that the metamodel in Pure has these fields as string pointers, even
|
|
79
|
+
* when these are not resolvable, the field is set to empty string. We should solidify our
|
|
80
|
+
* understand about these fields.
|
|
78
81
|
*
|
|
79
|
-
*
|
|
82
|
+
* @discrepancy model
|
|
80
83
|
*/
|
|
81
|
-
|
|
84
|
+
sourceSetImplementation: SetImplementationReference;
|
|
85
|
+
targetSetImplementation?: SetImplementationReference | undefined;
|
|
82
86
|
localMappingProperty?: LocalMappingPropertyInfo | undefined;
|
|
83
87
|
// store?: Store | undefined;
|
|
84
88
|
|
|
85
89
|
constructor(
|
|
86
90
|
owner: PropertyMappingsImplementation,
|
|
87
91
|
property: PropertyReference,
|
|
88
|
-
source:
|
|
89
|
-
target
|
|
92
|
+
source: SetImplementationReference,
|
|
93
|
+
target: SetImplementationReference | undefined,
|
|
90
94
|
) {
|
|
91
95
|
this._OWNER = owner;
|
|
92
96
|
this.sourceSetImplementation = source;
|
|
93
|
-
this.targetSetImplementation = target;
|
|
94
97
|
this.property = property;
|
|
98
|
+
this.targetSetImplementation = target;
|
|
95
99
|
}
|
|
96
100
|
|
|
97
101
|
get hashCode(): string {
|
|
98
102
|
return hashArray([
|
|
99
103
|
CORE_HASH_STRUCTURE.PROPERTY_MAPPING,
|
|
100
104
|
this.property.pointerHashCode,
|
|
101
|
-
this.targetSetImplementation?.id.value ?? '',
|
|
105
|
+
this.targetSetImplementation?.value.id.value ?? '',
|
|
102
106
|
this.localMappingProperty ?? '',
|
|
103
107
|
]);
|
|
104
108
|
}
|
package/src/models/metamodels/pure/packageableElements/mapping/SetImplementationReference.ts
CHANGED
|
@@ -15,19 +15,12 @@
|
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
17
|
import {
|
|
18
|
-
type PackageableElementImplicitReference,
|
|
19
|
-
type OptionalPackageableElementImplicitReference,
|
|
20
18
|
type PackageableElementReference,
|
|
21
|
-
type OptionalPackageableElementReference,
|
|
22
19
|
PackageableElementExplicitReference,
|
|
23
|
-
OptionalPackageableElementExplicitReference,
|
|
24
20
|
} from '../PackageableElementReference.js';
|
|
25
21
|
import type { Mapping } from './Mapping.js';
|
|
26
22
|
import type { SetImplementation } from './SetImplementation.js';
|
|
27
|
-
import {
|
|
28
|
-
OptionalReferenceWithOwner,
|
|
29
|
-
ReferenceWithOwner,
|
|
30
|
-
} from '../../Reference.js';
|
|
23
|
+
import { ReferenceWithOwner } from '../../Reference.js';
|
|
31
24
|
|
|
32
25
|
export abstract class SetImplementationReference extends ReferenceWithOwner {
|
|
33
26
|
override readonly ownerReference: PackageableElementReference<Mapping>;
|
|
@@ -41,6 +34,8 @@ export abstract class SetImplementationReference extends ReferenceWithOwner {
|
|
|
41
34
|
this.ownerReference = ownerReference;
|
|
42
35
|
this.value = value;
|
|
43
36
|
}
|
|
37
|
+
|
|
38
|
+
abstract get valueForSerialization(): string | undefined;
|
|
44
39
|
}
|
|
45
40
|
|
|
46
41
|
export class SetImplementationExplicitReference extends SetImplementationReference {
|
|
@@ -57,77 +52,33 @@ export class SetImplementationExplicitReference extends SetImplementationReferen
|
|
|
57
52
|
static create(value: SetImplementation): SetImplementationExplicitReference {
|
|
58
53
|
return new SetImplementationExplicitReference(value);
|
|
59
54
|
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
export class SetImplementationImplicitReference extends SetImplementationReference {
|
|
63
|
-
override readonly ownerReference: PackageableElementImplicitReference<Mapping>;
|
|
64
55
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
value: SetImplementation,
|
|
68
|
-
) {
|
|
69
|
-
super(ownerReference, value);
|
|
70
|
-
this.ownerReference = ownerReference;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
static create(
|
|
74
|
-
ownerReference: PackageableElementImplicitReference<Mapping>,
|
|
75
|
-
value: SetImplementation,
|
|
76
|
-
): SetImplementationImplicitReference {
|
|
77
|
-
return new SetImplementationImplicitReference(ownerReference, value);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
export abstract class OptionalSetImplementationReference extends OptionalReferenceWithOwner {
|
|
82
|
-
override readonly ownerReference: OptionalPackageableElementReference<Mapping>;
|
|
83
|
-
value?: SetImplementation | undefined;
|
|
84
|
-
|
|
85
|
-
protected constructor(
|
|
86
|
-
ownerReference: OptionalPackageableElementReference<Mapping>,
|
|
87
|
-
value: SetImplementation | undefined,
|
|
88
|
-
) {
|
|
89
|
-
super(ownerReference);
|
|
90
|
-
this.ownerReference = ownerReference;
|
|
91
|
-
this.value = value;
|
|
56
|
+
get valueForSerialization(): string | undefined {
|
|
57
|
+
return this.value.id.value;
|
|
92
58
|
}
|
|
93
59
|
}
|
|
94
60
|
|
|
95
|
-
export class
|
|
96
|
-
override readonly ownerReference:
|
|
61
|
+
export class SetImplementationImplicitReference extends SetImplementationReference {
|
|
62
|
+
override readonly ownerReference: PackageableElementReference<Mapping>;
|
|
63
|
+
readonly input?: string | undefined;
|
|
97
64
|
|
|
98
|
-
private constructor(value: SetImplementation | undefined) {
|
|
99
|
-
const ownerReference =
|
|
100
|
-
value
|
|
65
|
+
private constructor(value: SetImplementation, input: string | undefined) {
|
|
66
|
+
const ownerReference = PackageableElementExplicitReference.create(
|
|
67
|
+
value._PARENT,
|
|
101
68
|
);
|
|
102
69
|
super(ownerReference, value);
|
|
103
70
|
this.ownerReference = ownerReference;
|
|
71
|
+
this.input = input;
|
|
104
72
|
}
|
|
105
73
|
|
|
106
74
|
static create(
|
|
107
75
|
value: SetImplementation,
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
export class OptionalSetImplementationImplicitReference extends OptionalSetImplementationReference {
|
|
114
|
-
override readonly ownerReference: OptionalPackageableElementReference<Mapping>;
|
|
115
|
-
|
|
116
|
-
private constructor(
|
|
117
|
-
ownerReference: OptionalPackageableElementImplicitReference<Mapping>,
|
|
118
|
-
value: SetImplementation | undefined,
|
|
119
|
-
) {
|
|
120
|
-
super(ownerReference, value);
|
|
121
|
-
this.ownerReference = ownerReference;
|
|
76
|
+
input: string | undefined,
|
|
77
|
+
): SetImplementationImplicitReference {
|
|
78
|
+
return new SetImplementationImplicitReference(value, input);
|
|
122
79
|
}
|
|
123
80
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
value: SetImplementation,
|
|
127
|
-
): OptionalSetImplementationImplicitReference {
|
|
128
|
-
return new OptionalSetImplementationImplicitReference(
|
|
129
|
-
ownerReference,
|
|
130
|
-
value,
|
|
131
|
-
);
|
|
81
|
+
get valueForSerialization(): string | undefined {
|
|
82
|
+
return this.input;
|
|
132
83
|
}
|
|
133
84
|
}
|
package/src/models/metamodels/pure/packageableElements/service/MultiExecutionServiceTestResult.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { TestResult } from '../../test/result/TestResult.js';
|
|
18
|
+
|
|
19
|
+
export class MultiExecutionServiceTestResult extends TestResult {
|
|
20
|
+
keyIndexedTestResults: Map<string, TestResult> = new Map();
|
|
21
|
+
}
|
|
@@ -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
|
-
*
|
|
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:
|
|
66
|
+
source: SetImplementationReference,
|
|
69
67
|
_class: PackageableElementReference<Class>,
|
|
70
68
|
id: InferableMappingElementIdValue,
|
|
71
|
-
target
|
|
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 {
|
|
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
|
|
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:
|
|
44
|
-
target
|
|
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
|
|
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
|
|
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:
|
|
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
|
|
57
|
+
this.srcClass?.valueForSerialization ?? '',
|
|
61
58
|
this.filter ?? '',
|
|
62
59
|
hashArray(
|
|
63
60
|
this.propertyMappings.filter(
|