@shaclmate/compiler 3.0.4 → 4.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/dist/Compiler.d.ts +2 -3
- package/dist/Compiler.js +5 -8
- package/dist/Eithers.d.ts +14 -0
- package/dist/Eithers.js +67 -0
- package/dist/ShapesGraphToAstTransformer.d.ts +3 -8
- package/dist/ShapesGraphToAstTransformer.js +22 -23
- package/dist/_ShapesGraphToAstTransformer/CurieFactory.d.ts +16 -0
- package/dist/_ShapesGraphToAstTransformer/CurieFactory.js +45 -0
- package/dist/_ShapesGraphToAstTransformer/ShapeStack.d.ts +1 -1
- package/dist/_ShapesGraphToAstTransformer/ShapeStack.js +1 -2
- package/dist/_ShapesGraphToAstTransformer/index.d.ts +1 -5
- package/dist/_ShapesGraphToAstTransformer/index.js +1 -5
- package/dist/_ShapesGraphToAstTransformer/nodeShapeIdentifierMintingStrategy.d.ts +5 -0
- package/dist/_ShapesGraphToAstTransformer/nodeShapeIdentifierMintingStrategy.js +28 -0
- package/dist/_ShapesGraphToAstTransformer/nodeShapeTsFeatures.d.ts +5 -0
- package/dist/_ShapesGraphToAstTransformer/nodeShapeTsFeatures.js +8 -0
- package/dist/_ShapesGraphToAstTransformer/shapeIdentifier.d.ts +5 -0
- package/dist/_ShapesGraphToAstTransformer/shapeIdentifier.js +9 -0
- package/dist/_ShapesGraphToAstTransformer/shapeNodeKinds.d.ts +8 -0
- package/dist/_ShapesGraphToAstTransformer/shapeNodeKinds.js +175 -0
- package/dist/_ShapesGraphToAstTransformer/transformNodeShapeToAstType.d.ts +3 -3
- package/dist/_ShapesGraphToAstTransformer/transformNodeShapeToAstType.js +302 -231
- package/dist/_ShapesGraphToAstTransformer/transformPropertyShapeToAstObjectTypeProperty.d.ts +6 -3
- package/dist/_ShapesGraphToAstTransformer/transformPropertyShapeToAstObjectTypeProperty.js +168 -170
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstAbstractTypeProperties.d.ts +12 -0
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstAbstractTypeProperties.js +31 -0
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstCompoundType.d.ts +10 -0
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstCompoundType.js +141 -0
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstTermType.d.ts +5 -5
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstTermType.js +92 -11
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstType.d.ts +3 -3
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstType.js +8 -4
- package/dist/ast/AbstractCollectionType.d.ts +20 -0
- package/dist/ast/AbstractCollectionType.js +27 -0
- package/dist/ast/AbstractCompoundType.d.ts +23 -0
- package/dist/ast/AbstractCompoundType.js +39 -0
- package/dist/ast/AbstractContainerType.d.ts +36 -0
- package/dist/ast/AbstractContainerType.js +58 -0
- package/dist/ast/AbstractLazyObjectType.d.ts +25 -0
- package/dist/ast/AbstractLazyObjectType.js +30 -0
- package/dist/ast/AbstractObjectCompoundType.d.ts +45 -0
- package/dist/ast/AbstractObjectCompoundType.js +180 -0
- package/dist/ast/AbstractTermType.d.ts +24 -0
- package/dist/ast/AbstractTermType.js +41 -0
- package/dist/ast/AbstractType.d.ts +21 -0
- package/dist/ast/AbstractType.js +29 -0
- package/dist/ast/BlankNodeType.d.ts +11 -0
- package/dist/ast/BlankNodeType.js +17 -0
- package/dist/ast/Curie.d.ts +10 -3
- package/dist/ast/Curie.js +14 -6
- package/dist/ast/DefaultValueType.d.ts +26 -0
- package/dist/ast/DefaultValueType.js +41 -0
- package/dist/ast/IdentifierType.d.ts +5 -4
- package/dist/ast/IdentifierType.js +19 -1
- package/dist/ast/IntersectionType.d.ts +3 -3
- package/dist/ast/IntersectionType.js +7 -1
- package/dist/ast/IriType.d.ts +10 -0
- package/dist/ast/IriType.js +10 -0
- package/dist/ast/LazyObjectOptionType.d.ts +6 -0
- package/dist/ast/LazyObjectOptionType.js +5 -0
- package/dist/ast/LazyObjectSetType.d.ts +6 -0
- package/dist/ast/LazyObjectSetType.js +5 -0
- package/dist/ast/LazyObjectType.d.ts +5 -0
- package/dist/ast/LazyObjectType.js +5 -0
- package/dist/ast/ListType.d.ts +28 -24
- package/dist/ast/ListType.js +68 -1
- package/dist/ast/LiteralType.d.ts +13 -4
- package/dist/ast/LiteralType.js +24 -1
- package/dist/ast/ObjectIntersectionType.d.ts +3 -3
- package/dist/ast/ObjectIntersectionType.js +7 -1
- package/dist/ast/ObjectType.d.ts +79 -72
- package/dist/ast/ObjectType.js +402 -9
- package/dist/ast/ObjectUnionType.d.ts +3 -3
- package/dist/ast/ObjectUnionType.js +7 -1
- package/dist/ast/OptionType.d.ts +9 -4
- package/dist/ast/OptionType.js +17 -1
- package/dist/ast/PlaceholderType.d.ts +10 -2
- package/dist/ast/PlaceholderType.js +18 -1
- package/dist/ast/SetType.d.ts +12 -9
- package/dist/ast/SetType.js +32 -1
- package/dist/ast/TermType.d.ts +8 -13
- package/dist/ast/TermType.js +15 -1
- package/dist/ast/Type.d.ts +10 -4
- package/dist/ast/Type.js +47 -1
- package/dist/ast/UnionType.d.ts +7 -3
- package/dist/ast/UnionType.js +12 -1
- package/dist/ast/equals.d.ts +12 -0
- package/dist/ast/equals.js +65 -0
- package/dist/ast/index.d.ts +10 -2
- package/dist/ast/index.js +10 -2
- package/dist/generators/json/AstJsonGenerator.js +53 -49
- package/dist/generators/ts/AbstractCollectionType.d.ts +47 -0
- package/dist/generators/ts/AbstractCollectionType.js +235 -0
- package/dist/generators/ts/AbstractContainerType.d.ts +51 -0
- package/dist/generators/ts/AbstractContainerType.js +72 -0
- package/dist/generators/ts/AbstractDateType.d.ts +31 -0
- package/dist/generators/ts/AbstractDateType.js +71 -0
- package/dist/generators/ts/AbstractDeclaredType.d.ts +23 -0
- package/dist/generators/ts/AbstractDeclaredType.js +17 -0
- package/dist/generators/ts/AbstractIdentifierType.d.ts +14 -0
- package/dist/generators/ts/AbstractIdentifierType.js +38 -0
- package/dist/generators/ts/AbstractLazyObjectType.d.ts +63 -0
- package/dist/generators/ts/AbstractLazyObjectType.js +140 -0
- package/dist/generators/ts/AbstractLiteralType.d.ts +24 -0
- package/dist/generators/ts/AbstractLiteralType.js +36 -0
- package/dist/generators/ts/AbstractNumericType.d.ts +32 -0
- package/dist/generators/ts/AbstractNumericType.js +85 -0
- package/dist/generators/ts/AbstractPrimitiveType.d.ts +30 -0
- package/dist/generators/ts/AbstractPrimitiveType.js +60 -0
- package/dist/generators/ts/AbstractTermType.d.ts +60 -0
- package/dist/generators/ts/AbstractTermType.js +171 -0
- package/dist/generators/ts/AbstractType.d.ts +267 -0
- package/dist/generators/ts/AbstractType.js +85 -0
- package/dist/generators/ts/BigDecimalType.d.ts +21 -0
- package/dist/generators/ts/BigDecimalType.js +91 -0
- package/dist/generators/ts/BigIntType.d.ts +15 -0
- package/dist/generators/ts/BigIntType.js +49 -0
- package/dist/generators/ts/BlankNodeType.d.ts +26 -0
- package/dist/generators/ts/BlankNodeType.js +61 -0
- package/dist/generators/ts/BooleanType.d.ts +18 -10
- package/dist/generators/ts/BooleanType.js +28 -51
- package/dist/generators/ts/DateTimeType.d.ts +8 -22
- package/dist/generators/ts/DateTimeType.js +10 -89
- package/dist/generators/ts/DateType.d.ts +7 -8
- package/dist/generators/ts/DateType.js +11 -18
- package/dist/generators/ts/DefaultValueType.d.ts +48 -0
- package/dist/generators/ts/DefaultValueType.js +178 -0
- package/dist/generators/ts/FloatType.d.ts +9 -4
- package/dist/generators/ts/FloatType.js +13 -15
- package/dist/generators/ts/IdentifierType.d.ts +18 -16
- package/dist/generators/ts/IdentifierType.js +45 -172
- package/dist/generators/ts/IntType.d.ts +9 -4
- package/dist/generators/ts/IntType.js +13 -15
- package/dist/generators/ts/IriType.d.ts +24 -0
- package/dist/generators/ts/IriType.js +106 -0
- package/dist/generators/ts/LazyObjectOptionType.d.ts +31 -0
- package/dist/generators/ts/LazyObjectOptionType.js +87 -0
- package/dist/generators/ts/LazyObjectSetType.d.ts +15 -0
- package/dist/generators/ts/LazyObjectSetType.js +78 -0
- package/dist/generators/ts/LazyObjectType.d.ts +14 -0
- package/dist/generators/ts/LazyObjectType.js +59 -0
- package/dist/generators/ts/ListType.d.ts +33 -31
- package/dist/generators/ts/ListType.js +76 -271
- package/dist/generators/ts/LiteralType.d.ts +16 -18
- package/dist/generators/ts/LiteralType.js +35 -114
- package/dist/generators/ts/ObjectType.d.ts +60 -66
- package/dist/generators/ts/ObjectType.js +151 -190
- package/dist/generators/ts/ObjectUnionType.d.ts +38 -74
- package/dist/generators/ts/ObjectUnionType.js +144 -559
- package/dist/generators/ts/OptionType.d.ts +33 -27
- package/dist/generators/ts/OptionType.js +93 -83
- package/dist/generators/ts/SetType.d.ts +13 -32
- package/dist/generators/ts/SetType.js +27 -160
- package/dist/generators/ts/StringType.d.ts +19 -11
- package/dist/generators/ts/StringType.js +33 -53
- package/dist/generators/ts/TermType.d.ts +22 -56
- package/dist/generators/ts/TermType.js +67 -219
- package/dist/generators/ts/TsGenerator.d.ts +0 -1
- package/dist/generators/ts/TsGenerator.js +30 -71
- package/dist/generators/ts/Type.d.ts +24 -245
- package/dist/generators/ts/Type.js +1 -121
- package/dist/generators/ts/TypeFactory.d.ts +24 -15
- package/dist/generators/ts/TypeFactory.js +330 -400
- package/dist/generators/ts/Typeof.d.ts +2 -0
- package/dist/generators/ts/Typeof.js +2 -0
- package/dist/generators/ts/UnionType.d.ts +32 -28
- package/dist/generators/ts/UnionType.js +299 -230
- package/dist/generators/ts/_ObjectType/AbstractProperty.d.ts +191 -0
- package/dist/generators/ts/_ObjectType/AbstractProperty.js +49 -0
- package/dist/generators/ts/_ObjectType/IdentifierPrefixProperty.d.ts +22 -25
- package/dist/generators/ts/_ObjectType/IdentifierPrefixProperty.js +34 -56
- package/dist/generators/ts/_ObjectType/IdentifierProperty.d.ts +38 -36
- package/dist/generators/ts/_ObjectType/IdentifierProperty.js +238 -191
- package/dist/generators/ts/_ObjectType/ObjectType_classDeclaration.d.ts +4 -0
- package/dist/generators/ts/_ObjectType/ObjectType_classDeclaration.js +69 -0
- package/dist/generators/ts/_ObjectType/ObjectType_createFunctionDeclaration.d.ts +5 -0
- package/dist/generators/ts/_ObjectType/ObjectType_createFunctionDeclaration.js +52 -0
- package/dist/generators/ts/_ObjectType/ObjectType_equalsFunctionOrMethodDeclaration.d.ts +5 -0
- package/dist/generators/ts/_ObjectType/ObjectType_equalsFunctionOrMethodDeclaration.js +51 -0
- package/dist/generators/ts/_ObjectType/ObjectType_filterFunctionDeclaration.d.ts +4 -0
- package/dist/generators/ts/_ObjectType/ObjectType_filterFunctionDeclaration.js +21 -0
- package/dist/generators/ts/_ObjectType/ObjectType_filterTypeDeclaration.d.ts +4 -0
- package/dist/generators/ts/_ObjectType/ObjectType_filterTypeDeclaration.js +22 -0
- package/dist/generators/ts/_ObjectType/ObjectType_fromRdfTypeVariableStatement.d.ts +5 -0
- package/dist/generators/ts/_ObjectType/ObjectType_fromRdfTypeVariableStatement.js +13 -0
- package/dist/generators/ts/_ObjectType/ObjectType_graphqlTypeVariableStatement.d.ts +5 -0
- package/dist/generators/ts/_ObjectType/ObjectType_graphqlTypeVariableStatement.js +35 -0
- package/dist/generators/ts/_ObjectType/ObjectType_hashFunctionOrMethodDeclarations.d.ts +4 -0
- package/dist/generators/ts/_ObjectType/ObjectType_hashFunctionOrMethodDeclarations.js +73 -0
- package/dist/generators/ts/_ObjectType/ObjectType_interfaceDeclaration.d.ts +4 -0
- package/dist/generators/ts/_ObjectType/ObjectType_interfaceDeclaration.js +16 -0
- package/dist/generators/ts/_ObjectType/ObjectType_isTypeFunctionDeclaration.d.ts +4 -0
- package/dist/generators/ts/_ObjectType/ObjectType_isTypeFunctionDeclaration.js +14 -0
- package/dist/generators/ts/_ObjectType/ObjectType_jsonFunctionDeclarations.d.ts +4 -0
- package/dist/generators/ts/_ObjectType/ObjectType_jsonFunctionDeclarations.js +122 -0
- package/dist/generators/ts/_ObjectType/ObjectType_jsonTypeAliasDeclaration.d.ts +5 -0
- package/dist/generators/ts/_ObjectType/ObjectType_jsonTypeAliasDeclaration.js +17 -0
- package/dist/generators/ts/_ObjectType/ObjectType_objectSetMethodNames.d.ts +9 -0
- package/dist/generators/ts/_ObjectType/{objectSetMethodNames.js → ObjectType_objectSetMethodNames.js} +3 -3
- package/dist/generators/ts/_ObjectType/ObjectType_rdfFunctionDeclarations.d.ts +4 -0
- package/dist/generators/ts/_ObjectType/ObjectType_rdfFunctionDeclarations.js +132 -0
- package/dist/generators/ts/_ObjectType/ObjectType_schemaVariableStatement.d.ts +4 -0
- package/dist/generators/ts/_ObjectType/ObjectType_schemaVariableStatement.js +10 -0
- package/dist/generators/ts/_ObjectType/ObjectType_sparqlConstructQueryFunctionDeclaration.d.ts +6 -0
- package/dist/generators/ts/_ObjectType/ObjectType_sparqlConstructQueryFunctionDeclaration.js +12 -0
- package/dist/generators/ts/_ObjectType/ObjectType_sparqlConstructQueryStringFunctionDeclaration.d.ts +6 -0
- package/dist/generators/ts/_ObjectType/ObjectType_sparqlConstructQueryStringFunctionDeclaration.js +10 -0
- package/dist/generators/ts/_ObjectType/ObjectType_sparqlFunctionDeclarations.d.ts +4 -0
- package/dist/generators/ts/_ObjectType/ObjectType_sparqlFunctionDeclarations.js +143 -0
- package/dist/generators/ts/_ObjectType/ObjectType_toJsonFunctionOrMethodDeclaration.d.ts +5 -0
- package/dist/generators/ts/_ObjectType/{toJsonFunctionOrMethodDeclaration.js → ObjectType_toJsonFunctionOrMethodDeclaration.js} +18 -18
- package/dist/generators/ts/_ObjectType/ObjectType_toRdfFunctionOrMethodDeclaration.d.ts +5 -0
- package/dist/generators/ts/_ObjectType/ObjectType_toRdfFunctionOrMethodDeclaration.js +65 -0
- package/dist/generators/ts/_ObjectType/Property.d.ts +5 -168
- package/dist/generators/ts/_ObjectType/Property.js +1 -32
- package/dist/generators/ts/_ObjectType/ShaclProperty.d.ts +41 -32
- package/dist/generators/ts/_ObjectType/ShaclProperty.js +178 -134
- package/dist/generators/ts/_ObjectType/TypeDiscriminantProperty.d.ts +48 -0
- package/dist/generators/ts/_ObjectType/TypeDiscriminantProperty.js +142 -0
- package/dist/generators/ts/_ObjectType/identifierTypeDeclarations.d.ts +2 -5
- package/dist/generators/ts/_ObjectType/identifierTypeDeclarations.js +9 -44
- package/dist/generators/ts/_ObjectUnionType/MemberType.d.ts +34 -0
- package/dist/generators/ts/_ObjectUnionType/MemberType.js +105 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_equalsFunctionDeclaration.d.ts +5 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_equalsFunctionDeclaration.js +29 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_filterFunctionDeclaration.d.ts +4 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_filterFunctionDeclaration.js +19 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_filterTypeDeclaration.d.ts +4 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_filterTypeDeclaration.js +10 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_graphqlTypeVariableStatement.d.ts +5 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_graphqlTypeVariableStatement.js +18 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_hashFunctionDeclaration.d.ts +5 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_hashFunctionDeclaration.js +28 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_identifierTypeDeclarations.d.ts +4 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_identifierTypeDeclarations.js +9 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_isTypeFunctionDeclaration.d.ts +5 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_isTypeFunctionDeclaration.js +13 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_jsonFunctionDeclarations.d.ts +4 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_jsonFunctionDeclarations.js +50 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_jsonTypeAliasDeclaration.d.ts +5 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_jsonTypeAliasDeclaration.js +10 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_rdfFunctionDeclarations.d.ts +4 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_rdfFunctionDeclarations.js +60 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_schemaVariableStatement.d.ts +4 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_schemaVariableStatement.js +37 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_sparqlFunctionDeclarations.d.ts +4 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_sparqlFunctionDeclarations.js +45 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_typeAliasDeclaration.d.ts +4 -0
- package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_typeAliasDeclaration.js +10 -0
- package/dist/generators/ts/_snippets/snippets_BlankNodeFilter.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_BlankNodeFilter.js +6 -0
- package/dist/generators/ts/_snippets/snippets_BlankNodeSchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_BlankNodeSchema.js +7 -0
- package/dist/generators/ts/_snippets/snippets_BooleanFilter.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_BooleanFilter.js +7 -0
- package/dist/generators/ts/_snippets/snippets_BooleanSchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_BooleanSchema.js +8 -0
- package/dist/generators/ts/_snippets/snippets_CollectionFilter.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_CollectionFilter.js +8 -0
- package/dist/generators/ts/_snippets/snippets_CollectionSchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_CollectionSchema.js +9 -0
- package/dist/generators/ts/_snippets/snippets_DateFilter.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_DateFilter.js +11 -0
- package/dist/generators/ts/_snippets/snippets_DateSchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_DateSchema.js +8 -0
- package/dist/generators/ts/_snippets/snippets_DefaultValueSchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_DefaultValueSchema.js +10 -0
- package/dist/generators/ts/_snippets/snippets_EqualsResult.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_EqualsResult.js +65 -0
- package/dist/generators/ts/_snippets/snippets_FromRdfOptions.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_FromRdfOptions.js +5 -0
- package/dist/generators/ts/_snippets/snippets_Hasher.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_Hasher.js +4 -0
- package/dist/generators/ts/_snippets/snippets_IdentifierFilter.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_IdentifierFilter.js +9 -0
- package/dist/generators/ts/_snippets/snippets_IdentifierSchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_IdentifierSchema.js +7 -0
- package/dist/generators/ts/_snippets/snippets_IdentifierSet.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_IdentifierSet.js +29 -0
- package/dist/generators/ts/_snippets/snippets_IriFilter.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_IriFilter.js +8 -0
- package/dist/generators/ts/_snippets/snippets_IriSchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_IriSchema.js +9 -0
- package/dist/generators/ts/_snippets/snippets_LazyObject.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_LazyObject.js +24 -0
- package/dist/generators/ts/_snippets/snippets_LazyObjectOption.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_LazyObjectOption.js +27 -0
- package/dist/generators/ts/_snippets/snippets_LazyObjectSet.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_LazyObjectSet.js +42 -0
- package/dist/generators/ts/_snippets/snippets_LiteralFilter.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_LiteralFilter.js +9 -0
- package/dist/generators/ts/_snippets/snippets_LiteralSchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_LiteralSchema.js +10 -0
- package/dist/generators/ts/_snippets/snippets_MaybeFilter.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_MaybeFilter.js +5 -0
- package/dist/generators/ts/_snippets/snippets_MaybeSchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_MaybeSchema.js +8 -0
- package/dist/generators/ts/_snippets/snippets_NumericFilter.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_NumericFilter.js +11 -0
- package/dist/generators/ts/_snippets/snippets_NumericSchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_NumericSchema.js +8 -0
- package/dist/generators/ts/_snippets/snippets_PropertiesFromRdfParameters.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_PropertiesFromRdfParameters.js +5 -0
- package/dist/generators/ts/_snippets/snippets_RdfVocabularies.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_RdfVocabularies.js +42 -0
- package/dist/generators/ts/_snippets/snippets_ShaclPropertySchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_ShaclPropertySchema.js +10 -0
- package/dist/generators/ts/_snippets/snippets_SparqlConstructTriplesFunction.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_SparqlConstructTriplesFunction.js +6 -0
- package/dist/generators/ts/_snippets/snippets_SparqlConstructTriplesFunctionParameters.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_SparqlConstructTriplesFunctionParameters.js +12 -0
- package/dist/generators/ts/_snippets/snippets_SparqlFilterPattern.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_SparqlFilterPattern.js +5 -0
- package/dist/generators/ts/_snippets/snippets_SparqlPattern.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_SparqlPattern.js +6 -0
- package/dist/generators/ts/_snippets/snippets_SparqlPattern_isSolutionGenerating.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_SparqlPattern_isSolutionGenerating.js +32 -0
- package/dist/generators/ts/_snippets/snippets_SparqlWherePatternsFunction.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_SparqlWherePatternsFunction.js +6 -0
- package/dist/generators/ts/_snippets/snippets_SparqlWherePatternsFunctionParameters.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_SparqlWherePatternsFunctionParameters.js +15 -0
- package/dist/generators/ts/_snippets/snippets_StringFilter.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_StringFilter.js +9 -0
- package/dist/generators/ts/_snippets/snippets_StringSchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_StringSchema.js +8 -0
- package/dist/generators/ts/_snippets/snippets_TermFilter.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_TermFilter.js +11 -0
- package/dist/generators/ts/_snippets/snippets_TermSchema.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_TermSchema.js +9 -0
- package/dist/generators/ts/_snippets/snippets_UnwrapR.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_UnwrapR.js +6 -0
- package/dist/generators/ts/_snippets/snippets_arrayEquals.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_arrayEquals.js +71 -0
- package/dist/generators/ts/_snippets/snippets_arrayIntersection.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_arrayIntersection.js +30 -0
- package/dist/generators/ts/_snippets/snippets_bigDecimalLiteral.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_bigDecimalLiteral.js +12 -0
- package/dist/generators/ts/_snippets/snippets_bigDecimalSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_bigDecimalSparqlWherePatterns.js +91 -0
- package/dist/generators/ts/_snippets/snippets_blankNodeFromString.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_blankNodeFromString.js +11 -0
- package/dist/generators/ts/_snippets/snippets_blankNodeSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_blankNodeSparqlWherePatterns.js +9 -0
- package/dist/generators/ts/_snippets/snippets_booleanEquals.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_booleanEquals.js +18 -0
- package/dist/generators/ts/_snippets/snippets_booleanSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_booleanSparqlWherePatterns.js +22 -0
- package/dist/generators/ts/_snippets/snippets_dateEquals.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_dateEquals.js +15 -0
- package/dist/generators/ts/_snippets/snippets_dateSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_dateSparqlWherePatterns.js +79 -0
- package/dist/generators/ts/_snippets/snippets_decodeBigDecimalLiteral.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_decodeBigDecimalLiteral.js +11 -0
- package/dist/generators/ts/_snippets/snippets_deduplicateSparqlPatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_deduplicateSparqlPatterns.js +21 -0
- package/dist/generators/ts/_snippets/snippets_defaultValueSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_defaultValueSparqlWherePatterns.js +13 -0
- package/dist/generators/ts/_snippets/snippets_filterArray.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_filterArray.js +24 -0
- package/dist/generators/ts/_snippets/snippets_filterBigDecimal.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_filterBigDecimal.js +29 -0
- package/dist/generators/ts/_snippets/snippets_filterBlankNode.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_filterBlankNode.js +9 -0
- package/dist/generators/ts/_snippets/snippets_filterBoolean.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_filterBoolean.js +12 -0
- package/dist/generators/ts/_snippets/snippets_filterDate.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_filterDate.js +28 -0
- package/dist/generators/ts/_snippets/snippets_filterIdentifier.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_filterIdentifier.js +17 -0
- package/dist/generators/ts/_snippets/snippets_filterIri.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_filterIri.js +13 -0
- package/dist/generators/ts/_snippets/snippets_filterLiteral.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_filterLiteral.js +10 -0
- package/dist/generators/ts/_snippets/snippets_filterMaybe.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_filterMaybe.js +25 -0
- package/dist/generators/ts/_snippets/snippets_filterNumeric.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_filterNumeric.js +28 -0
- package/dist/generators/ts/_snippets/snippets_filterString.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_filterString.js +20 -0
- package/dist/generators/ts/_snippets/snippets_filterTerm.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_filterTerm.js +26 -0
- package/dist/generators/ts/_snippets/snippets_fromRdfLanguageIn.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_fromRdfLanguageIn.js +17 -0
- package/dist/generators/ts/_snippets/snippets_fromRdfPreferredLanguages.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_fromRdfPreferredLanguages.js +25 -0
- package/dist/generators/ts/_snippets/snippets_identifierFromString.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_identifierFromString.js +8 -0
- package/dist/generators/ts/_snippets/snippets_identifierSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_identifierSparqlWherePatterns.js +36 -0
- package/dist/generators/ts/_snippets/snippets_iriSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_iriSparqlWherePatterns.js +20 -0
- package/dist/generators/ts/_snippets/snippets_isReadonlyBigIntArray.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_isReadonlyBigIntArray.js +7 -0
- package/dist/generators/ts/_snippets/snippets_isReadonlyBooleanArray.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_isReadonlyBooleanArray.js +7 -0
- package/dist/generators/ts/_snippets/snippets_isReadonlyNumberArray.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_isReadonlyNumberArray.js +7 -0
- package/dist/generators/ts/_snippets/snippets_isReadonlyObjectArray.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_isReadonlyObjectArray.js +7 -0
- package/dist/generators/ts/_snippets/snippets_isReadonlyStringArray.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_isReadonlyStringArray.js +7 -0
- package/dist/generators/ts/_snippets/snippets_liftSparqlPatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_liftSparqlPatterns.js +18 -0
- package/dist/generators/ts/_snippets/snippets_listSparqlConstructTriples.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_listSparqlConstructTriples.js +43 -0
- package/dist/generators/ts/_snippets/snippets_listSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_listSparqlWherePatterns.js +121 -0
- package/dist/generators/ts/_snippets/snippets_literalFactory.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_literalFactory.js +5 -0
- package/dist/generators/ts/_snippets/snippets_literalSchemaSparqlPatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_literalSchemaSparqlPatterns.js +45 -0
- package/dist/generators/ts/_snippets/snippets_literalSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_literalSparqlWherePatterns.js +10 -0
- package/dist/generators/ts/_snippets/snippets_maybeEquals.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_maybeEquals.js +34 -0
- package/dist/generators/ts/_snippets/snippets_maybeSparqlConstructTriples.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_maybeSparqlConstructTriples.js +10 -0
- package/dist/generators/ts/_snippets/snippets_maybeSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_maybeSparqlWherePatterns.js +26 -0
- package/dist/generators/ts/_snippets/snippets_normalizeSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_normalizeSparqlWherePatterns.js +97 -0
- package/dist/generators/ts/_snippets/snippets_numericSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_numericSparqlWherePatterns.js +71 -0
- package/dist/generators/ts/_snippets/snippets_setSparqlConstructTriples.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_setSparqlConstructTriples.js +10 -0
- package/dist/generators/ts/_snippets/snippets_setSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_setSparqlWherePatterns.js +22 -0
- package/dist/generators/ts/_snippets/snippets_shaclPropertyFromRdf.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_shaclPropertyFromRdf.js +14 -0
- package/dist/generators/ts/_snippets/snippets_shaclPropertySparqlConstructTriples.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_shaclPropertySparqlConstructTriples.js +94 -0
- package/dist/generators/ts/_snippets/snippets_shaclPropertySparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_shaclPropertySparqlWherePatterns.js +92 -0
- package/dist/generators/ts/_snippets/snippets_sortSparqlPatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_sortSparqlPatterns.js +26 -0
- package/dist/generators/ts/_snippets/snippets_sparqlInstancesOfPattern.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_sparqlInstancesOfPattern.js +32 -0
- package/dist/generators/ts/_snippets/snippets_sparqlPropertyPath.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_sparqlPropertyPath.js +61 -0
- package/dist/generators/ts/_snippets/snippets_sparqlValueInPattern.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_sparqlValueInPattern.js +27 -0
- package/dist/generators/ts/_snippets/snippets_strictEquals.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_strictEquals.js +14 -0
- package/dist/generators/ts/_snippets/snippets_stringSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_stringSparqlWherePatterns.js +47 -0
- package/dist/generators/ts/_snippets/snippets_termFilterSparqlPatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_termFilterSparqlPatterns.js +98 -0
- package/dist/generators/ts/_snippets/snippets_termSchemaSparqlPatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_termSchemaSparqlPatterns.js +29 -0
- package/dist/generators/ts/_snippets/snippets_termSparqlWherePatterns.d.ts +2 -0
- package/dist/generators/ts/_snippets/snippets_termSparqlWherePatterns.js +11 -0
- package/dist/generators/ts/codeEquals.d.ts +3 -0
- package/dist/generators/ts/codeEquals.js +7 -0
- package/dist/generators/ts/graphqlSchemaVariableStatement.d.ts +2 -2
- package/dist/generators/ts/graphqlSchemaVariableStatement.js +56 -60
- package/dist/generators/ts/imports.d.ts +40 -0
- package/dist/generators/ts/imports.js +41 -0
- package/dist/generators/ts/objectSetDeclarations.d.ts +2 -2
- package/dist/generators/ts/objectSetDeclarations.js +5 -7
- package/dist/generators/ts/objectSetInterfaceDeclaration.d.ts +2 -2
- package/dist/generators/ts/objectSetInterfaceDeclaration.js +19 -41
- package/dist/generators/ts/objectSetMethodSignatures.d.ts +9 -3
- package/dist/generators/ts/objectSetMethodSignatures.js +14 -34
- package/dist/generators/ts/rdfjsDatasetObjectSetClassDeclaration.d.ts +2 -2
- package/dist/generators/ts/rdfjsDatasetObjectSetClassDeclaration.js +279 -359
- package/dist/generators/ts/rdfjsTermExpression.d.ts +2 -1
- package/dist/generators/ts/rdfjsTermExpression.js +28 -10
- package/dist/generators/ts/removeUndefined.d.ts +2 -0
- package/dist/generators/ts/removeUndefined.js +17 -0
- package/dist/generators/ts/snippets.d.ts +104 -0
- package/dist/generators/ts/snippets.js +205 -0
- package/dist/generators/ts/sparqlObjectSetClassDeclaration.d.ts +2 -2
- package/dist/generators/ts/sparqlObjectSetClassDeclaration.js +209 -388
- package/dist/generators/ts/synthesizeUberObjectUnionType.d.ts +9 -0
- package/dist/generators/ts/synthesizeUberObjectUnionType.js +59 -0
- package/dist/generators/ts/ts-poet-wrapper.d.ts +5 -0
- package/dist/generators/ts/ts-poet-wrapper.js +13 -0
- package/dist/generators/ts/tsName.d.ts +11 -2
- package/dist/generators/ts/tsName.js +25 -28
- package/dist/generators/ts/unsupportedObjectSetMethodDeclarations.d.ts +4 -3
- package/dist/generators/ts/unsupportedObjectSetMethodDeclarations.js +18 -15
- package/dist/index.d.ts +6 -1
- package/dist/index.js +5 -1
- package/dist/input/NodeShape.d.ts +14 -11
- package/dist/input/NodeShape.js +87 -80
- package/dist/input/Ontology.d.ts +1 -1
- package/dist/input/Ontology.js +13 -0
- package/dist/input/PropertyShape.d.ts +8 -5
- package/dist/input/PropertyShape.js +46 -9
- package/dist/input/ShapesGraph.d.ts +23 -6
- package/dist/input/ShapesGraph.js +58 -39
- package/dist/input/ancestorClassIris.js +4 -1
- package/dist/input/descendantClassIris.js +8 -2
- package/dist/input/generated.d.ts +3032 -1044
- package/dist/input/generated.js +3595 -2734
- package/dist/input/index.d.ts +1 -1
- package/dist/input/index.js +1 -1
- package/dist/input/tsFeatures.d.ts +1 -1
- package/package.json +39 -45
- package/dist/_ShapesGraphToAstTransformer/InheritableShapeConstraints.d.ts +0 -2
- package/dist/_ShapesGraphToAstTransformer/InheritableShapeConstraints.js +0 -2
- package/dist/_ShapesGraphToAstTransformer/flattenAstObjectCompositeTypeMemberTypes.d.ts +0 -13
- package/dist/_ShapesGraphToAstTransformer/flattenAstObjectCompositeTypeMemberTypes.js +0 -51
- package/dist/_ShapesGraphToAstTransformer/pickLiteral.d.ts +0 -4
- package/dist/_ShapesGraphToAstTransformer/pickLiteral.js +0 -18
- package/dist/_ShapesGraphToAstTransformer/propertyShapeNodeKinds.d.ts +0 -4
- package/dist/_ShapesGraphToAstTransformer/propertyShapeNodeKinds.js +0 -26
- package/dist/_ShapesGraphToAstTransformer/shapeAstName.d.ts +0 -5
- package/dist/_ShapesGraphToAstTransformer/shapeAstName.js +0 -69
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstCompositeType.d.ts +0 -10
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstCompositeType.js +0 -185
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstIdentifierType.d.ts +0 -10
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstIdentifierType.js +0 -32
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstLiteralType.d.ts +0 -10
- package/dist/_ShapesGraphToAstTransformer/transformShapeToAstLiteralType.js +0 -46
- package/dist/ast/CompositeType.d.ts +0 -13
- package/dist/ast/CompositeType.js +0 -2
- package/dist/ast/Name.d.ts +0 -49
- package/dist/ast/Name.js +0 -2
- package/dist/ast/ObjectCompositeType.d.ts +0 -33
- package/dist/ast/ObjectCompositeType.js +0 -2
- package/dist/generators/ts/DeclaredType.d.ts +0 -17
- package/dist/generators/ts/DeclaredType.js +0 -13
- package/dist/generators/ts/Import.d.ts +0 -20
- package/dist/generators/ts/Import.js +0 -65
- package/dist/generators/ts/NumberType.d.ts +0 -13
- package/dist/generators/ts/NumberType.js +0 -71
- package/dist/generators/ts/PrimitiveType.d.ts +0 -21
- package/dist/generators/ts/PrimitiveType.js +0 -57
- package/dist/generators/ts/SnippetDeclarations.d.ts +0 -17
- package/dist/generators/ts/SnippetDeclarations.js +0 -367
- package/dist/generators/ts/_ObjectType/EagerShaclProperty.d.ts +0 -12
- package/dist/generators/ts/_ObjectType/EagerShaclProperty.js +0 -31
- package/dist/generators/ts/_ObjectType/LazyShaclProperty.d.ts +0 -100
- package/dist/generators/ts/_ObjectType/LazyShaclProperty.js +0 -315
- package/dist/generators/ts/_ObjectType/TypeDiscriminatorProperty.d.ts +0 -51
- package/dist/generators/ts/_ObjectType/TypeDiscriminatorProperty.js +0 -138
- package/dist/generators/ts/_ObjectType/classDeclaration.d.ts +0 -5
- package/dist/generators/ts/_ObjectType/classDeclaration.js +0 -122
- package/dist/generators/ts/_ObjectType/createFunctionDeclaration.d.ts +0 -5
- package/dist/generators/ts/_ObjectType/createFunctionDeclaration.js +0 -73
- package/dist/generators/ts/_ObjectType/equalsFunctionDeclaration.d.ts +0 -5
- package/dist/generators/ts/_ObjectType/equalsFunctionDeclaration.js +0 -19
- package/dist/generators/ts/_ObjectType/equalsFunctionOrMethodDeclaration.d.ts +0 -11
- package/dist/generators/ts/_ObjectType/equalsFunctionOrMethodDeclaration.js +0 -73
- package/dist/generators/ts/_ObjectType/fromRdfTypeVariableStatement.d.ts +0 -5
- package/dist/generators/ts/_ObjectType/fromRdfTypeVariableStatement.js +0 -28
- package/dist/generators/ts/_ObjectType/graphqlTypeVariableStatement.d.ts +0 -5
- package/dist/generators/ts/_ObjectType/graphqlTypeVariableStatement.js +0 -49
- package/dist/generators/ts/_ObjectType/hashFunctionDeclarations.d.ts +0 -4
- package/dist/generators/ts/_ObjectType/hashFunctionDeclarations.js +0 -18
- package/dist/generators/ts/_ObjectType/hashFunctionOrMethodDeclarations.d.ts +0 -13
- package/dist/generators/ts/_ObjectType/hashFunctionOrMethodDeclarations.js +0 -96
- package/dist/generators/ts/_ObjectType/index.d.ts +0 -22
- package/dist/generators/ts/_ObjectType/index.js +0 -22
- package/dist/generators/ts/_ObjectType/interfaceDeclaration.d.ts +0 -5
- package/dist/generators/ts/_ObjectType/interfaceDeclaration.js +0 -21
- package/dist/generators/ts/_ObjectType/jsonFunctionDeclarations.d.ts +0 -4
- package/dist/generators/ts/_ObjectType/jsonFunctionDeclarations.js +0 -189
- package/dist/generators/ts/_ObjectType/jsonTypeAliasDeclaration.d.ts +0 -5
- package/dist/generators/ts/_ObjectType/jsonTypeAliasDeclaration.js +0 -28
- package/dist/generators/ts/_ObjectType/objectSetMethodNames.d.ts +0 -9
- package/dist/generators/ts/_ObjectType/propertiesVariableStatement.d.ts +0 -5
- package/dist/generators/ts/_ObjectType/propertiesVariableStatement.js +0 -37
- package/dist/generators/ts/_ObjectType/rdfFunctionDeclarations.d.ts +0 -4
- package/dist/generators/ts/_ObjectType/rdfFunctionDeclarations.js +0 -169
- package/dist/generators/ts/_ObjectType/sparqlConstructQueryFunctionDeclaration.d.ts +0 -5
- package/dist/generators/ts/_ObjectType/sparqlConstructQueryFunctionDeclaration.js +0 -22
- package/dist/generators/ts/_ObjectType/sparqlConstructQueryStringFunctionDeclaration.d.ts +0 -5
- package/dist/generators/ts/_ObjectType/sparqlConstructQueryStringFunctionDeclaration.js +0 -21
- package/dist/generators/ts/_ObjectType/sparqlFunctionDeclarations.d.ts +0 -4
- package/dist/generators/ts/_ObjectType/sparqlFunctionDeclarations.js +0 -166
- package/dist/generators/ts/_ObjectType/toJsonFunctionOrMethodDeclaration.d.ts +0 -10
- package/dist/generators/ts/_ObjectType/toRdfFunctionOrMethodDeclaration.d.ts +0 -10
- package/dist/generators/ts/_ObjectType/toRdfFunctionOrMethodDeclaration.js +0 -76
- package/dist/generators/ts/forwardingObjectSetClassDeclaration.d.ts +0 -8
- package/dist/generators/ts/forwardingObjectSetClassDeclaration.js +0 -29
- package/dist/generators/ts/objectInitializer.d.ts +0 -2
- package/dist/generators/ts/objectInitializer.js +0 -14
- package/dist/input/PropertyPath.d.ts +0 -41
- package/dist/input/PropertyPath.js +0 -95
package/dist/ast/ObjectType.d.ts
CHANGED
|
@@ -1,41 +1,21 @@
|
|
|
1
|
-
import type { NamedNode } from "@rdfjs/types";
|
|
2
|
-
import type { NodeKind, PredicatePath } from "@shaclmate/shacl-ast";
|
|
1
|
+
import type { BlankNode, NamedNode } from "@rdfjs/types";
|
|
3
2
|
import type { Maybe } from "purify-ts";
|
|
3
|
+
import { PropertyPath } from "rdfjs-resource";
|
|
4
4
|
import type { IdentifierMintingStrategy, PropertyVisibility, TsFeature, TsObjectDeclarationType } from "../enums/index.js";
|
|
5
|
-
import
|
|
6
|
-
import type {
|
|
7
|
-
import type {
|
|
8
|
-
import type {
|
|
9
|
-
import type {
|
|
10
|
-
|
|
5
|
+
import { AbstractType } from "./AbstractType.js";
|
|
6
|
+
import type { BlankNodeType } from "./BlankNodeType.js";
|
|
7
|
+
import type { Curie } from "./Curie.js";
|
|
8
|
+
import type { IdentifierType } from "./IdentifierType.js";
|
|
9
|
+
import type { IriType } from "./IriType.js";
|
|
10
|
+
import { Type } from "./Type.js";
|
|
11
|
+
export declare class ObjectType extends AbstractType {
|
|
12
|
+
#private;
|
|
11
13
|
/**
|
|
12
14
|
* Classes generated from this type are abstract / cannot be instantiated themselves.
|
|
13
15
|
*
|
|
14
16
|
* Defaults to false.
|
|
15
17
|
*/
|
|
16
18
|
readonly abstract: boolean;
|
|
17
|
-
/**
|
|
18
|
-
* Ancestor (parents, their parents, ad nauseum) ObjectTypes of this ObjectType.
|
|
19
|
-
*
|
|
20
|
-
* Mutable to support cycle-handling logic in the compiler.
|
|
21
|
-
*/
|
|
22
|
-
readonly ancestorObjectTypes: ObjectType[];
|
|
23
|
-
/**
|
|
24
|
-
* Immediate child ObjectTypes of this ObjectType.
|
|
25
|
-
*
|
|
26
|
-
* Mutable to support cycle-handling logic in the compiler.
|
|
27
|
-
*/
|
|
28
|
-
readonly childObjectTypes: ObjectType[];
|
|
29
|
-
/**
|
|
30
|
-
* Documentation comment from rdfs:comment.
|
|
31
|
-
*/
|
|
32
|
-
readonly comment: Maybe<string>;
|
|
33
|
-
/**
|
|
34
|
-
* Descendant (children, their children, ad nauseum) ObjectTypes of this ObjectType.
|
|
35
|
-
*
|
|
36
|
-
* Mutable to support cycle-handling logic in the compiler.
|
|
37
|
-
*/
|
|
38
|
-
readonly descendantObjectTypes: ObjectType[];
|
|
39
19
|
/**
|
|
40
20
|
* Should generated code derived from this ObjectType be visible outside its module?
|
|
41
21
|
*
|
|
@@ -55,46 +35,26 @@ export interface ObjectType {
|
|
|
55
35
|
* class targets).
|
|
56
36
|
*/
|
|
57
37
|
readonly fromRdfType: Maybe<NamedNode>;
|
|
58
|
-
/**
|
|
59
|
-
* Instances of this ObjectType must have explicit identifiers and the identifiers must be in this list of IRIs.
|
|
60
|
-
*
|
|
61
|
-
* Mutually exclusive with minting strategies
|
|
62
|
-
*/
|
|
63
|
-
readonly identifierIn: readonly NamedNode[];
|
|
64
|
-
/**
|
|
65
|
-
* The RDF node kinds this ObjectType may be identified by.
|
|
66
|
-
*
|
|
67
|
-
* Used to associate instances with an RDF identifier.
|
|
68
|
-
*/
|
|
69
|
-
readonly identifierNodeKinds: Set<Exclude<NodeKind, "Literal">>;
|
|
70
38
|
/**
|
|
71
39
|
* Strategy for minting new object identifiers.
|
|
72
40
|
*/
|
|
73
41
|
readonly identifierMintingStrategy: Maybe<IdentifierMintingStrategy>;
|
|
74
42
|
/**
|
|
75
|
-
*
|
|
76
|
-
*/
|
|
77
|
-
readonly kind: "ObjectType";
|
|
78
|
-
/**
|
|
79
|
-
* Human-readable label from rdfs:label.
|
|
43
|
+
* Identifier type.
|
|
80
44
|
*/
|
|
81
|
-
readonly
|
|
45
|
+
readonly identifierType: BlankNodeType | IdentifierType | IriType;
|
|
82
46
|
/**
|
|
83
|
-
*
|
|
47
|
+
* Type discriminant.
|
|
84
48
|
*/
|
|
85
|
-
readonly
|
|
49
|
+
readonly kind = "ObjectType";
|
|
86
50
|
/**
|
|
87
|
-
*
|
|
88
|
-
*
|
|
89
|
-
* Mutable to support cycle-handling logic in the compiler.
|
|
51
|
+
* Name of this type, from shaclmate:name.
|
|
90
52
|
*/
|
|
91
|
-
readonly
|
|
53
|
+
readonly name: Maybe<string>;
|
|
92
54
|
/**
|
|
93
|
-
*
|
|
94
|
-
*
|
|
95
|
-
* Mutable to support cycle-handling logic in the compiler.
|
|
55
|
+
* Identifier of the shape this ObjectType was derived from.
|
|
96
56
|
*/
|
|
97
|
-
readonly
|
|
57
|
+
readonly shapeIdentifier: BlankNode | NamedNode;
|
|
98
58
|
/**
|
|
99
59
|
* Was this type synthesized or did it come from SHACL?
|
|
100
60
|
*/
|
|
@@ -109,7 +69,7 @@ export interface ObjectType {
|
|
|
109
69
|
/**
|
|
110
70
|
* TypeScript features to generate.
|
|
111
71
|
*/
|
|
112
|
-
readonly tsFeatures:
|
|
72
|
+
readonly tsFeatures: ReadonlySet<TsFeature>;
|
|
113
73
|
/**
|
|
114
74
|
* TypeScript imports to add to generated code.
|
|
115
75
|
*
|
|
@@ -123,9 +83,37 @@ export interface ObjectType {
|
|
|
123
83
|
* Whether to generate a TypeScript class or interface for this type.
|
|
124
84
|
*/
|
|
125
85
|
readonly tsObjectDeclarationType: TsObjectDeclarationType;
|
|
86
|
+
constructor({ abstract, export_, extern, fromRdfType, identifierMintingStrategy, identifierType, name, shapeIdentifier, synthetic, toRdfTypes, tsFeatures, tsImports, tsObjectDeclarationType, ...superParameters }: {
|
|
87
|
+
abstract: boolean;
|
|
88
|
+
export_: boolean;
|
|
89
|
+
extern: boolean;
|
|
90
|
+
fromRdfType: Maybe<NamedNode>;
|
|
91
|
+
identifierMintingStrategy: Maybe<IdentifierMintingStrategy>;
|
|
92
|
+
identifierType: BlankNodeType | IdentifierType | IriType;
|
|
93
|
+
name: Maybe<string>;
|
|
94
|
+
shapeIdentifier: BlankNode | Curie | NamedNode;
|
|
95
|
+
synthetic: boolean;
|
|
96
|
+
toRdfTypes: readonly NamedNode[];
|
|
97
|
+
tsFeatures: ReadonlySet<TsFeature>;
|
|
98
|
+
tsImports: readonly string[];
|
|
99
|
+
tsObjectDeclarationType: TsObjectDeclarationType;
|
|
100
|
+
} & ConstructorParameters<typeof AbstractType>[0]);
|
|
101
|
+
addAncestorObjectTypes(...ancestorObjectTypes: readonly ObjectType[]): void;
|
|
102
|
+
addChildObjectTypes(...childObjectTypes: readonly ObjectType[]): void;
|
|
103
|
+
addDescendantObjectTypes(...descendantObjectTypes: readonly ObjectType[]): void;
|
|
104
|
+
addParentObjectTypes(...parentObjectTypes: readonly ObjectType[]): void;
|
|
105
|
+
addProperties(...properties: readonly ObjectType.Property[]): void;
|
|
106
|
+
get ancestorObjectTypes(): readonly ObjectType[];
|
|
107
|
+
get childObjectTypes(): readonly ObjectType[];
|
|
108
|
+
get descendantObjectTypes(): readonly ObjectType[];
|
|
109
|
+
get parentObjectTypes(): readonly ObjectType[];
|
|
110
|
+
get properties(): readonly ObjectType.Property[];
|
|
111
|
+
equals(other: ObjectType): boolean;
|
|
112
|
+
sortProperties(): void;
|
|
113
|
+
toString(): string;
|
|
126
114
|
}
|
|
127
115
|
export declare namespace ObjectType {
|
|
128
|
-
|
|
116
|
+
class Property {
|
|
129
117
|
/**
|
|
130
118
|
* Documentation comment from rdfs:comment.
|
|
131
119
|
*/
|
|
@@ -142,11 +130,15 @@ export declare namespace ObjectType {
|
|
|
142
130
|
* The property should be mutable in generated code i.e., it should be re-assignable. The property value may or may
|
|
143
131
|
* not be mutable.
|
|
144
132
|
*/
|
|
145
|
-
readonly mutable:
|
|
133
|
+
readonly mutable: boolean;
|
|
134
|
+
/**
|
|
135
|
+
* Object type this property belongs to.
|
|
136
|
+
*/
|
|
137
|
+
readonly objectType: ObjectType;
|
|
146
138
|
/**
|
|
147
|
-
* Name of this property.
|
|
139
|
+
* Name of this property, derived from sh:name or shaclmate:name.
|
|
148
140
|
*/
|
|
149
|
-
readonly name:
|
|
141
|
+
readonly name: Maybe<string>;
|
|
150
142
|
/**
|
|
151
143
|
* Relative order of this property, derived from sh:order.
|
|
152
144
|
*/
|
|
@@ -154,17 +146,11 @@ export declare namespace ObjectType {
|
|
|
154
146
|
/**
|
|
155
147
|
* SHACL property path (https://www.w3.org/TR/shacl/#property-paths)
|
|
156
148
|
*/
|
|
157
|
-
readonly path:
|
|
149
|
+
readonly path: Curie | PropertyPath;
|
|
158
150
|
/**
|
|
159
|
-
*
|
|
151
|
+
* Identifier of the property shape.
|
|
160
152
|
*/
|
|
161
|
-
readonly
|
|
162
|
-
/**
|
|
163
|
-
* The property will be resolved lazily, with this type serving as a stub before resolution of the actual type (type).
|
|
164
|
-
*
|
|
165
|
-
* This type will mirror type: if type is an OptionType<ObjectType>, this will also be an OptionType<ObjectType>.
|
|
166
|
-
*/
|
|
167
|
-
readonly stubType: Maybe<ObjectType | ObjectUnionType | OptionType<ObjectType | ObjectUnionType> | SetType<ObjectType | ObjectUnionType>>;
|
|
153
|
+
readonly shapeIdentifier: BlankNode | NamedNode;
|
|
168
154
|
/**
|
|
169
155
|
* Type of this property.
|
|
170
156
|
*/
|
|
@@ -173,7 +159,28 @@ export declare namespace ObjectType {
|
|
|
173
159
|
* Visibility: private, protected, public.
|
|
174
160
|
*/
|
|
175
161
|
readonly visibility: PropertyVisibility;
|
|
162
|
+
constructor({ comment, description, label, mutable, name, objectType, order, path, shapeIdentifier, type, visibility, }: {
|
|
163
|
+
comment: Maybe<string>;
|
|
164
|
+
description: Maybe<string>;
|
|
165
|
+
label: Maybe<string>;
|
|
166
|
+
mutable: boolean;
|
|
167
|
+
name: Maybe<string>;
|
|
168
|
+
objectType: ObjectType;
|
|
169
|
+
order: number;
|
|
170
|
+
path: Curie | PropertyPath;
|
|
171
|
+
shapeIdentifier: BlankNode | NamedNode;
|
|
172
|
+
type: Type;
|
|
173
|
+
visibility: PropertyVisibility;
|
|
174
|
+
});
|
|
175
|
+
equals(other: Property): boolean;
|
|
176
|
+
/**
|
|
177
|
+
* Does the property directly or indirectly reference the ObjectType itself?
|
|
178
|
+
*/
|
|
179
|
+
get recursive(): boolean;
|
|
180
|
+
toString(): string;
|
|
176
181
|
}
|
|
182
|
+
}
|
|
183
|
+
export declare namespace ObjectType {
|
|
177
184
|
function toposort(objectTypes: readonly ObjectType[]): readonly ObjectType[];
|
|
178
185
|
}
|
|
179
186
|
//# sourceMappingURL=ObjectType.d.ts.map
|
package/dist/ast/ObjectType.js
CHANGED
|
@@ -1,25 +1,418 @@
|
|
|
1
|
-
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { PropertyPath, Resource } from "rdfjs-resource";
|
|
2
8
|
import genericToposort from "toposort";
|
|
3
|
-
|
|
9
|
+
import { invariant } from "ts-invariant";
|
|
10
|
+
import { Memoize } from "typescript-memoize";
|
|
11
|
+
import { AbstractType } from "./AbstractType.js";
|
|
12
|
+
import { arrayEquals } from "./equals.js";
|
|
13
|
+
import { Type } from "./Type.js";
|
|
14
|
+
export class ObjectType extends AbstractType {
|
|
15
|
+
/**
|
|
16
|
+
* Classes generated from this type are abstract / cannot be instantiated themselves.
|
|
17
|
+
*
|
|
18
|
+
* Defaults to false.
|
|
19
|
+
*/
|
|
20
|
+
abstract;
|
|
21
|
+
/**
|
|
22
|
+
* Ancestor (parents, their parents, ad nauseum) ObjectTypes of this ObjectType.
|
|
23
|
+
*
|
|
24
|
+
* Mutable to support cycle-handling logic in the compiler.
|
|
25
|
+
*/
|
|
26
|
+
#ancestorObjectTypes = [];
|
|
27
|
+
/**
|
|
28
|
+
* Immediate child ObjectTypes of this ObjectType.
|
|
29
|
+
*
|
|
30
|
+
* Mutable to support cycle-handling logic in the compiler.
|
|
31
|
+
*/
|
|
32
|
+
#childObjectTypes = [];
|
|
33
|
+
/**
|
|
34
|
+
* Descendant (children, their children, ad nauseum) ObjectTypes of this ObjectType.
|
|
35
|
+
*
|
|
36
|
+
* Mutable to support cycle-handling logic in the compiler.
|
|
37
|
+
*/
|
|
38
|
+
#descendantObjectTypes = [];
|
|
39
|
+
/**
|
|
40
|
+
* Should generated code derived from this ObjectType be visible outside its module?
|
|
41
|
+
*
|
|
42
|
+
* Defaults to true.
|
|
43
|
+
*/
|
|
44
|
+
export;
|
|
45
|
+
/**
|
|
46
|
+
* If true, the code for this ObjectType is defined externally and should not be generated.
|
|
47
|
+
*
|
|
48
|
+
* Defaults to false.
|
|
49
|
+
*/
|
|
50
|
+
extern;
|
|
51
|
+
/**
|
|
52
|
+
* The expected rdf:type of instances of this ObjectType.
|
|
53
|
+
*
|
|
54
|
+
* This is usually the identifier of an sh:NodeShape that is also an rdfs:Class (i.e., a node shape with implicit
|
|
55
|
+
* class targets).
|
|
56
|
+
*/
|
|
57
|
+
fromRdfType;
|
|
58
|
+
/**
|
|
59
|
+
* Strategy for minting new object identifiers.
|
|
60
|
+
*/
|
|
61
|
+
identifierMintingStrategy;
|
|
62
|
+
/**
|
|
63
|
+
* Identifier type.
|
|
64
|
+
*/
|
|
65
|
+
identifierType;
|
|
66
|
+
/**
|
|
67
|
+
* Type discriminant.
|
|
68
|
+
*/
|
|
69
|
+
kind = "ObjectType";
|
|
70
|
+
/**
|
|
71
|
+
* Name of this type, from shaclmate:name.
|
|
72
|
+
*/
|
|
73
|
+
name;
|
|
74
|
+
/**
|
|
75
|
+
* Immediate parent ObjectTypes of this Object types.
|
|
76
|
+
*
|
|
77
|
+
* Mutable to support cycle-handling logic in the compiler.
|
|
78
|
+
*/
|
|
79
|
+
#parentObjectTypes = [];
|
|
80
|
+
/**
|
|
81
|
+
* Properties of this ObjectType.
|
|
82
|
+
*
|
|
83
|
+
* Mutable to support cycle-handling logic in the compiler.
|
|
84
|
+
*/
|
|
85
|
+
#properties = [];
|
|
86
|
+
/**
|
|
87
|
+
* Identifier of the shape this ObjectType was derived from.
|
|
88
|
+
*/
|
|
89
|
+
shapeIdentifier;
|
|
90
|
+
/**
|
|
91
|
+
* Was this type synthesized or did it come from SHACL?
|
|
92
|
+
*/
|
|
93
|
+
synthetic;
|
|
94
|
+
/**
|
|
95
|
+
* rdf:type's that will be added to this object when it's serialized toRdf.
|
|
96
|
+
*
|
|
97
|
+
* This is usually the identifier of an sh:NodeShape that is also an rdfs:Class (i.e., a node shape with implicit
|
|
98
|
+
* class targets).
|
|
99
|
+
*/
|
|
100
|
+
toRdfTypes;
|
|
101
|
+
/**
|
|
102
|
+
* TypeScript features to generate.
|
|
103
|
+
*/
|
|
104
|
+
tsFeatures;
|
|
105
|
+
/**
|
|
106
|
+
* TypeScript imports to add to generated code.
|
|
107
|
+
*
|
|
108
|
+
* This is often used in conjunction with extern=true to import the extern'd ObjectType code in order for generated
|
|
109
|
+
* code to reference it.
|
|
110
|
+
*
|
|
111
|
+
* import { MyType } from "./MyType.js"
|
|
112
|
+
*/
|
|
113
|
+
tsImports;
|
|
114
|
+
/**
|
|
115
|
+
* Whether to generate a TypeScript class or interface for this type.
|
|
116
|
+
*/
|
|
117
|
+
tsObjectDeclarationType;
|
|
118
|
+
constructor({ abstract, export_, extern, fromRdfType, identifierMintingStrategy, identifierType, name, shapeIdentifier, synthetic, toRdfTypes, tsFeatures, tsImports, tsObjectDeclarationType, ...superParameters }) {
|
|
119
|
+
super(superParameters);
|
|
120
|
+
this.abstract = abstract;
|
|
121
|
+
this.export = export_;
|
|
122
|
+
this.extern = extern;
|
|
123
|
+
this.fromRdfType = fromRdfType;
|
|
124
|
+
this.identifierMintingStrategy = identifierMintingStrategy;
|
|
125
|
+
this.identifierType = identifierType;
|
|
126
|
+
this.name = name;
|
|
127
|
+
this.shapeIdentifier = shapeIdentifier;
|
|
128
|
+
this.synthetic = synthetic;
|
|
129
|
+
this.toRdfTypes = toRdfTypes;
|
|
130
|
+
this.tsFeatures = tsFeatures;
|
|
131
|
+
this.tsImports = tsImports;
|
|
132
|
+
this.tsObjectDeclarationType = tsObjectDeclarationType;
|
|
133
|
+
}
|
|
134
|
+
addAncestorObjectTypes(...ancestorObjectTypes) {
|
|
135
|
+
this.#ancestorObjectTypes.push(...ancestorObjectTypes);
|
|
136
|
+
}
|
|
137
|
+
addChildObjectTypes(...childObjectTypes) {
|
|
138
|
+
this.#childObjectTypes.push(...childObjectTypes);
|
|
139
|
+
}
|
|
140
|
+
addDescendantObjectTypes(...descendantObjectTypes) {
|
|
141
|
+
this.#descendantObjectTypes.push(...descendantObjectTypes);
|
|
142
|
+
}
|
|
143
|
+
addParentObjectTypes(...parentObjectTypes) {
|
|
144
|
+
this.#parentObjectTypes.push(...parentObjectTypes);
|
|
145
|
+
}
|
|
146
|
+
addProperties(...properties) {
|
|
147
|
+
this.#properties.push(...properties);
|
|
148
|
+
for (const property of properties) {
|
|
149
|
+
invariant(Object.is(property.objectType, this));
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
get ancestorObjectTypes() {
|
|
153
|
+
return this.#ancestorObjectTypes;
|
|
154
|
+
}
|
|
155
|
+
get childObjectTypes() {
|
|
156
|
+
return this.#childObjectTypes;
|
|
157
|
+
}
|
|
158
|
+
get descendantObjectTypes() {
|
|
159
|
+
return this.#descendantObjectTypes;
|
|
160
|
+
}
|
|
161
|
+
get parentObjectTypes() {
|
|
162
|
+
return this.#parentObjectTypes;
|
|
163
|
+
}
|
|
164
|
+
get properties() {
|
|
165
|
+
return this.#properties;
|
|
166
|
+
}
|
|
167
|
+
equals(other) {
|
|
168
|
+
// Don't recurse
|
|
169
|
+
return this.shapeIdentifier.equals(other.shapeIdentifier);
|
|
170
|
+
}
|
|
171
|
+
sortProperties() {
|
|
172
|
+
this.#properties.sort((left, right) => {
|
|
173
|
+
if (left.order < right.order) {
|
|
174
|
+
return -1;
|
|
175
|
+
}
|
|
176
|
+
if (left.order > right.order) {
|
|
177
|
+
return 1;
|
|
178
|
+
}
|
|
179
|
+
return 0;
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
toString() {
|
|
183
|
+
return `${this.kind}(shapeIdentifier=${Resource.Identifier.toString(this.shapeIdentifier)})`;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
(function (ObjectType) {
|
|
187
|
+
class Property {
|
|
188
|
+
/**
|
|
189
|
+
* Documentation comment from rdfs:comment.
|
|
190
|
+
*/
|
|
191
|
+
comment;
|
|
192
|
+
/**
|
|
193
|
+
* Description from sh:description.
|
|
194
|
+
*/
|
|
195
|
+
description;
|
|
196
|
+
/**
|
|
197
|
+
* Human-readable label from rdfs:label.
|
|
198
|
+
*/
|
|
199
|
+
label;
|
|
200
|
+
/**
|
|
201
|
+
* The property should be mutable in generated code i.e., it should be re-assignable. The property value may or may
|
|
202
|
+
* not be mutable.
|
|
203
|
+
*/
|
|
204
|
+
mutable;
|
|
205
|
+
/**
|
|
206
|
+
* Object type this property belongs to.
|
|
207
|
+
*/
|
|
208
|
+
objectType;
|
|
209
|
+
/**
|
|
210
|
+
* Name of this property, derived from sh:name or shaclmate:name.
|
|
211
|
+
*/
|
|
212
|
+
name;
|
|
213
|
+
/**
|
|
214
|
+
* Relative order of this property, derived from sh:order.
|
|
215
|
+
*/
|
|
216
|
+
order;
|
|
217
|
+
/**
|
|
218
|
+
* SHACL property path (https://www.w3.org/TR/shacl/#property-paths)
|
|
219
|
+
*/
|
|
220
|
+
path;
|
|
221
|
+
/**
|
|
222
|
+
* Identifier of the property shape.
|
|
223
|
+
*/
|
|
224
|
+
shapeIdentifier;
|
|
225
|
+
/**
|
|
226
|
+
* Type of this property.
|
|
227
|
+
*/
|
|
228
|
+
type;
|
|
229
|
+
/**
|
|
230
|
+
* Visibility: private, protected, public.
|
|
231
|
+
*/
|
|
232
|
+
visibility;
|
|
233
|
+
constructor({ comment, description, label, mutable, name, objectType, order, path, shapeIdentifier, type, visibility, }) {
|
|
234
|
+
this.comment = comment;
|
|
235
|
+
this.description = description;
|
|
236
|
+
this.label = label;
|
|
237
|
+
this.mutable = mutable;
|
|
238
|
+
this.name = name;
|
|
239
|
+
this.objectType = objectType;
|
|
240
|
+
this.order = order;
|
|
241
|
+
this.path = path;
|
|
242
|
+
this.shapeIdentifier = shapeIdentifier;
|
|
243
|
+
this.type = type;
|
|
244
|
+
this.visibility = visibility;
|
|
245
|
+
}
|
|
246
|
+
equals(other) {
|
|
247
|
+
return this.shapeIdentifier.equals(other.shapeIdentifier);
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Does the property directly or indirectly reference the ObjectType itself?
|
|
251
|
+
*/
|
|
252
|
+
get recursive() {
|
|
253
|
+
const DEBUG = false;
|
|
254
|
+
const rootObjectType = this.objectType;
|
|
255
|
+
const rootProperty = this;
|
|
256
|
+
function helper(stack) {
|
|
257
|
+
const currentStackFrame = stack.at(-1);
|
|
258
|
+
const { objectType, property, propertyType } = currentStackFrame;
|
|
259
|
+
if (DEBUG) {
|
|
260
|
+
process.stderr.write(`${[
|
|
261
|
+
stack.length.toString(),
|
|
262
|
+
rootObjectType,
|
|
263
|
+
rootProperty,
|
|
264
|
+
objectType,
|
|
265
|
+
property,
|
|
266
|
+
propertyType
|
|
267
|
+
? `[${propertyType.map(Type.toString).join(", ")}]`
|
|
268
|
+
: "undefined",
|
|
269
|
+
].join(",")}\n`);
|
|
270
|
+
}
|
|
271
|
+
for (const lowerStackFrame of stack.slice(0, -1)) {
|
|
272
|
+
if (!Type.equals(currentStackFrame.objectType, lowerStackFrame.objectType)) {
|
|
273
|
+
continue;
|
|
274
|
+
}
|
|
275
|
+
if (!currentStackFrame.property.equals(lowerStackFrame.property)) {
|
|
276
|
+
continue;
|
|
277
|
+
}
|
|
278
|
+
if (!arrayEquals(Type.equals)(currentStackFrame.propertyType ?? [], lowerStackFrame.propertyType ?? [])) {
|
|
279
|
+
continue;
|
|
280
|
+
}
|
|
281
|
+
// We've seen this combination before and don't want to recurse further, to avoid infinite recursion
|
|
282
|
+
if (DEBUG) {
|
|
283
|
+
process.stderr.write("recursion detected, halting");
|
|
284
|
+
}
|
|
285
|
+
return true;
|
|
286
|
+
}
|
|
287
|
+
if (!propertyType) {
|
|
288
|
+
return helper(stack.concat({
|
|
289
|
+
objectType,
|
|
290
|
+
property,
|
|
291
|
+
propertyType: [property.type],
|
|
292
|
+
}));
|
|
293
|
+
}
|
|
294
|
+
invariant(propertyType.length > 0);
|
|
295
|
+
const currentPropertyType = propertyType.at(-1);
|
|
296
|
+
switch (currentPropertyType.kind) {
|
|
297
|
+
case "BlankNodeType":
|
|
298
|
+
case "IdentifierType":
|
|
299
|
+
case "IriType":
|
|
300
|
+
case "LiteralType":
|
|
301
|
+
case "PlaceholderType":
|
|
302
|
+
case "TermType":
|
|
303
|
+
return false;
|
|
304
|
+
case "LazyObjectOptionType":
|
|
305
|
+
case "LazyObjectSetType":
|
|
306
|
+
case "LazyObjectType": {
|
|
307
|
+
if (helper(stack.concat({
|
|
308
|
+
objectType,
|
|
309
|
+
property,
|
|
310
|
+
propertyType: propertyType.concat(currentPropertyType.partialType),
|
|
311
|
+
}))) {
|
|
312
|
+
return true;
|
|
313
|
+
}
|
|
314
|
+
if (helper(stack.concat({
|
|
315
|
+
objectType,
|
|
316
|
+
property,
|
|
317
|
+
propertyType: propertyType.concat(currentPropertyType.resolveType),
|
|
318
|
+
}))) {
|
|
319
|
+
return true;
|
|
320
|
+
}
|
|
321
|
+
return false;
|
|
322
|
+
}
|
|
323
|
+
case "ObjectType": {
|
|
324
|
+
if (DEBUG) {
|
|
325
|
+
process.stderr.write(`recurse into ${currentPropertyType}`);
|
|
326
|
+
}
|
|
327
|
+
for (const property of currentPropertyType.properties) {
|
|
328
|
+
if (helper(stack.concat({
|
|
329
|
+
objectType: currentPropertyType,
|
|
330
|
+
property,
|
|
331
|
+
}))) {
|
|
332
|
+
return true;
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
return false;
|
|
336
|
+
}
|
|
337
|
+
case "IntersectionType":
|
|
338
|
+
case "UnionType": {
|
|
339
|
+
if (DEBUG) {
|
|
340
|
+
process.stderr.write(`recurse into ${currentPropertyType}`);
|
|
341
|
+
}
|
|
342
|
+
for (const memberType of currentPropertyType.memberTypes) {
|
|
343
|
+
if (helper(stack.concat({
|
|
344
|
+
objectType,
|
|
345
|
+
property,
|
|
346
|
+
propertyType: propertyType.concat(memberType),
|
|
347
|
+
}))) {
|
|
348
|
+
return true;
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
return false;
|
|
352
|
+
}
|
|
353
|
+
case "ObjectIntersectionType":
|
|
354
|
+
case "ObjectUnionType": {
|
|
355
|
+
if (DEBUG) {
|
|
356
|
+
process.stderr.write(`recurse into ${currentPropertyType}`);
|
|
357
|
+
}
|
|
358
|
+
for (const memberType of currentPropertyType.memberObjectTypes) {
|
|
359
|
+
for (const property of memberType.properties) {
|
|
360
|
+
if (helper(stack.concat({
|
|
361
|
+
objectType: memberType,
|
|
362
|
+
property,
|
|
363
|
+
}))) {
|
|
364
|
+
return true;
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
return false;
|
|
369
|
+
}
|
|
370
|
+
case "DefaultValueType":
|
|
371
|
+
case "ListType":
|
|
372
|
+
case "OptionType":
|
|
373
|
+
case "SetType":
|
|
374
|
+
return helper(stack.concat({
|
|
375
|
+
objectType,
|
|
376
|
+
property,
|
|
377
|
+
propertyType: propertyType.concat(currentPropertyType.itemType),
|
|
378
|
+
}));
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
return helper([{ objectType: rootObjectType, property: rootProperty }]);
|
|
382
|
+
}
|
|
383
|
+
toString() {
|
|
384
|
+
return `${this.name.orDefault(Resource.Identifier.toString(this.shapeIdentifier))}(path=${PropertyPath.$toString(this.path)})`;
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
__decorate([
|
|
388
|
+
Memoize()
|
|
389
|
+
], Property.prototype, "recursive", null);
|
|
390
|
+
ObjectType.Property = Property;
|
|
391
|
+
})(ObjectType || (ObjectType = {}));
|
|
4
392
|
(function (ObjectType) {
|
|
5
393
|
function toposort(objectTypes) {
|
|
6
|
-
const
|
|
394
|
+
const objectTypesByShapeIdentifier = {};
|
|
7
395
|
const objectTypeGraphNodes = [];
|
|
8
396
|
const objectTypeGraphEdges = [];
|
|
9
397
|
for (const objectType of objectTypes) {
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
398
|
+
const objectTypeShapeIdentifier = Resource.Identifier.toString(objectType.shapeIdentifier);
|
|
399
|
+
invariant(!objectTypesByShapeIdentifier[objectTypeShapeIdentifier]);
|
|
400
|
+
objectTypesByShapeIdentifier[objectTypeShapeIdentifier] = objectType;
|
|
401
|
+
objectTypeGraphNodes.push(objectTypeShapeIdentifier);
|
|
13
402
|
for (const parentAstObjectType of objectType.parentObjectTypes) {
|
|
403
|
+
// console.log(
|
|
404
|
+
// objectTypeShapeIdentifier,
|
|
405
|
+
// Resource.Identifier.toString(parentAstObjectType.shapeIdentifier),
|
|
406
|
+
// );
|
|
14
407
|
objectTypeGraphEdges.push([
|
|
15
|
-
|
|
16
|
-
Resource.Identifier.toString(parentAstObjectType.
|
|
408
|
+
objectTypeShapeIdentifier,
|
|
409
|
+
Resource.Identifier.toString(parentAstObjectType.shapeIdentifier),
|
|
17
410
|
]);
|
|
18
411
|
}
|
|
19
412
|
}
|
|
20
413
|
return genericToposort
|
|
21
414
|
.array(objectTypeGraphNodes, objectTypeGraphEdges)
|
|
22
|
-
.map((objectTypeIdentifier) =>
|
|
415
|
+
.map((objectTypeIdentifier) => objectTypesByShapeIdentifier[objectTypeIdentifier])
|
|
23
416
|
.reverse();
|
|
24
417
|
}
|
|
25
418
|
ObjectType.toposort = toposort;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { AbstractObjectCompoundType } from "./AbstractObjectCompoundType.js";
|
|
2
2
|
/**
|
|
3
3
|
* A disjunction/union of object types, corresponding to an sh:xone on a node shape.
|
|
4
4
|
*/
|
|
5
|
-
export
|
|
6
|
-
readonly kind
|
|
5
|
+
export declare class ObjectUnionType extends AbstractObjectCompoundType<ObjectUnionType> {
|
|
6
|
+
readonly kind = "ObjectUnionType";
|
|
7
7
|
}
|
|
8
8
|
//# sourceMappingURL=ObjectUnionType.d.ts.map
|
|
@@ -1,2 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
import { AbstractObjectCompoundType } from "./AbstractObjectCompoundType.js";
|
|
2
|
+
/**
|
|
3
|
+
* A disjunction/union of object types, corresponding to an sh:xone on a node shape.
|
|
4
|
+
*/
|
|
5
|
+
export class ObjectUnionType extends AbstractObjectCompoundType {
|
|
6
|
+
kind = "ObjectUnionType";
|
|
7
|
+
}
|
|
2
8
|
//# sourceMappingURL=ObjectUnionType.js.map
|