@shaclmate/compiler 3.0.3 → 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.
Files changed (581) hide show
  1. package/dist/Compiler.d.ts +2 -3
  2. package/dist/Compiler.js +5 -8
  3. package/dist/Eithers.d.ts +14 -0
  4. package/dist/Eithers.js +67 -0
  5. package/dist/ShapesGraphToAstTransformer.d.ts +3 -8
  6. package/dist/ShapesGraphToAstTransformer.js +22 -23
  7. package/dist/_ShapesGraphToAstTransformer/CurieFactory.d.ts +16 -0
  8. package/dist/_ShapesGraphToAstTransformer/CurieFactory.js +45 -0
  9. package/dist/_ShapesGraphToAstTransformer/ShapeStack.d.ts +1 -1
  10. package/dist/_ShapesGraphToAstTransformer/ShapeStack.js +1 -2
  11. package/dist/_ShapesGraphToAstTransformer/index.d.ts +1 -5
  12. package/dist/_ShapesGraphToAstTransformer/index.js +1 -5
  13. package/dist/_ShapesGraphToAstTransformer/nodeShapeIdentifierMintingStrategy.d.ts +5 -0
  14. package/dist/_ShapesGraphToAstTransformer/nodeShapeIdentifierMintingStrategy.js +28 -0
  15. package/dist/_ShapesGraphToAstTransformer/nodeShapeTsFeatures.d.ts +5 -0
  16. package/dist/_ShapesGraphToAstTransformer/nodeShapeTsFeatures.js +8 -0
  17. package/dist/_ShapesGraphToAstTransformer/shapeIdentifier.d.ts +5 -0
  18. package/dist/_ShapesGraphToAstTransformer/shapeIdentifier.js +9 -0
  19. package/dist/_ShapesGraphToAstTransformer/shapeNodeKinds.d.ts +8 -0
  20. package/dist/_ShapesGraphToAstTransformer/shapeNodeKinds.js +175 -0
  21. package/dist/_ShapesGraphToAstTransformer/transformNodeShapeToAstType.d.ts +3 -3
  22. package/dist/_ShapesGraphToAstTransformer/transformNodeShapeToAstType.js +302 -231
  23. package/dist/_ShapesGraphToAstTransformer/transformPropertyShapeToAstObjectTypeProperty.d.ts +6 -3
  24. package/dist/_ShapesGraphToAstTransformer/transformPropertyShapeToAstObjectTypeProperty.js +168 -170
  25. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstAbstractTypeProperties.d.ts +12 -0
  26. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstAbstractTypeProperties.js +31 -0
  27. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstCompoundType.d.ts +10 -0
  28. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstCompoundType.js +141 -0
  29. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstTermType.d.ts +5 -5
  30. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstTermType.js +92 -11
  31. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstType.d.ts +3 -3
  32. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstType.js +8 -4
  33. package/dist/ast/AbstractCollectionType.d.ts +20 -0
  34. package/dist/ast/AbstractCollectionType.js +27 -0
  35. package/dist/ast/AbstractCompoundType.d.ts +23 -0
  36. package/dist/ast/AbstractCompoundType.js +39 -0
  37. package/dist/ast/AbstractContainerType.d.ts +36 -0
  38. package/dist/ast/AbstractContainerType.js +58 -0
  39. package/dist/ast/AbstractLazyObjectType.d.ts +25 -0
  40. package/dist/ast/AbstractLazyObjectType.js +30 -0
  41. package/dist/ast/AbstractObjectCompoundType.d.ts +45 -0
  42. package/dist/ast/AbstractObjectCompoundType.js +180 -0
  43. package/dist/ast/AbstractTermType.d.ts +24 -0
  44. package/dist/ast/AbstractTermType.js +41 -0
  45. package/dist/ast/AbstractType.d.ts +21 -0
  46. package/dist/ast/AbstractType.js +29 -0
  47. package/dist/ast/BlankNodeType.d.ts +11 -0
  48. package/dist/ast/BlankNodeType.js +17 -0
  49. package/dist/ast/Curie.d.ts +10 -3
  50. package/dist/ast/Curie.js +14 -6
  51. package/dist/ast/DefaultValueType.d.ts +26 -0
  52. package/dist/ast/DefaultValueType.js +41 -0
  53. package/dist/ast/IdentifierType.d.ts +5 -4
  54. package/dist/ast/IdentifierType.js +19 -1
  55. package/dist/ast/IntersectionType.d.ts +3 -3
  56. package/dist/ast/IntersectionType.js +7 -1
  57. package/dist/ast/IriType.d.ts +10 -0
  58. package/dist/ast/IriType.js +10 -0
  59. package/dist/ast/LazyObjectOptionType.d.ts +6 -0
  60. package/dist/ast/LazyObjectOptionType.js +5 -0
  61. package/dist/ast/LazyObjectSetType.d.ts +6 -0
  62. package/dist/ast/LazyObjectSetType.js +5 -0
  63. package/dist/ast/LazyObjectType.d.ts +5 -0
  64. package/dist/ast/LazyObjectType.js +5 -0
  65. package/dist/ast/ListType.d.ts +28 -24
  66. package/dist/ast/ListType.js +68 -1
  67. package/dist/ast/LiteralType.d.ts +13 -4
  68. package/dist/ast/LiteralType.js +24 -1
  69. package/dist/ast/ObjectIntersectionType.d.ts +3 -3
  70. package/dist/ast/ObjectIntersectionType.js +7 -1
  71. package/dist/ast/ObjectType.d.ts +79 -72
  72. package/dist/ast/ObjectType.js +402 -9
  73. package/dist/ast/ObjectUnionType.d.ts +3 -3
  74. package/dist/ast/ObjectUnionType.js +7 -1
  75. package/dist/ast/OptionType.d.ts +9 -4
  76. package/dist/ast/OptionType.js +17 -1
  77. package/dist/ast/PlaceholderType.d.ts +10 -2
  78. package/dist/ast/PlaceholderType.js +18 -1
  79. package/dist/ast/SetType.d.ts +12 -9
  80. package/dist/ast/SetType.js +32 -1
  81. package/dist/ast/TermType.d.ts +8 -13
  82. package/dist/ast/TermType.js +15 -1
  83. package/dist/ast/Type.d.ts +10 -4
  84. package/dist/ast/Type.js +47 -1
  85. package/dist/ast/UnionType.d.ts +7 -3
  86. package/dist/ast/UnionType.js +12 -1
  87. package/dist/ast/equals.d.ts +12 -0
  88. package/dist/ast/equals.js +65 -0
  89. package/dist/ast/index.d.ts +10 -2
  90. package/dist/ast/index.js +10 -2
  91. package/dist/generators/json/AstJsonGenerator.js +53 -49
  92. package/dist/generators/ts/AbstractCollectionType.d.ts +47 -0
  93. package/dist/generators/ts/AbstractCollectionType.js +235 -0
  94. package/dist/generators/ts/AbstractContainerType.d.ts +51 -0
  95. package/dist/generators/ts/AbstractContainerType.js +72 -0
  96. package/dist/generators/ts/AbstractDateType.d.ts +31 -0
  97. package/dist/generators/ts/AbstractDateType.js +71 -0
  98. package/dist/generators/ts/AbstractDeclaredType.d.ts +23 -0
  99. package/dist/generators/ts/AbstractDeclaredType.js +17 -0
  100. package/dist/generators/ts/AbstractIdentifierType.d.ts +14 -0
  101. package/dist/generators/ts/AbstractIdentifierType.js +38 -0
  102. package/dist/generators/ts/AbstractLazyObjectType.d.ts +63 -0
  103. package/dist/generators/ts/AbstractLazyObjectType.js +140 -0
  104. package/dist/generators/ts/AbstractLiteralType.d.ts +24 -0
  105. package/dist/generators/ts/AbstractLiteralType.js +36 -0
  106. package/dist/generators/ts/AbstractNumericType.d.ts +32 -0
  107. package/dist/generators/ts/AbstractNumericType.js +85 -0
  108. package/dist/generators/ts/AbstractPrimitiveType.d.ts +30 -0
  109. package/dist/generators/ts/AbstractPrimitiveType.js +60 -0
  110. package/dist/generators/ts/AbstractTermType.d.ts +60 -0
  111. package/dist/generators/ts/AbstractTermType.js +171 -0
  112. package/dist/generators/ts/AbstractType.d.ts +267 -0
  113. package/dist/generators/ts/AbstractType.js +85 -0
  114. package/dist/generators/ts/BigDecimalType.d.ts +21 -0
  115. package/dist/generators/ts/BigDecimalType.js +91 -0
  116. package/dist/generators/ts/BigIntType.d.ts +15 -0
  117. package/dist/generators/ts/BigIntType.js +49 -0
  118. package/dist/generators/ts/BlankNodeType.d.ts +26 -0
  119. package/dist/generators/ts/BlankNodeType.js +61 -0
  120. package/dist/generators/ts/BooleanType.d.ts +18 -10
  121. package/dist/generators/ts/BooleanType.js +28 -51
  122. package/dist/generators/ts/DateTimeType.d.ts +8 -22
  123. package/dist/generators/ts/DateTimeType.js +10 -89
  124. package/dist/generators/ts/DateType.d.ts +7 -8
  125. package/dist/generators/ts/DateType.js +11 -18
  126. package/dist/generators/ts/DefaultValueType.d.ts +48 -0
  127. package/dist/generators/ts/DefaultValueType.js +178 -0
  128. package/dist/generators/ts/FloatType.d.ts +9 -4
  129. package/dist/generators/ts/FloatType.js +13 -15
  130. package/dist/generators/ts/IdentifierType.d.ts +18 -16
  131. package/dist/generators/ts/IdentifierType.js +45 -172
  132. package/dist/generators/ts/IntType.d.ts +9 -4
  133. package/dist/generators/ts/IntType.js +13 -15
  134. package/dist/generators/ts/IriType.d.ts +24 -0
  135. package/dist/generators/ts/IriType.js +106 -0
  136. package/dist/generators/ts/LazyObjectOptionType.d.ts +31 -0
  137. package/dist/generators/ts/LazyObjectOptionType.js +87 -0
  138. package/dist/generators/ts/LazyObjectSetType.d.ts +15 -0
  139. package/dist/generators/ts/LazyObjectSetType.js +78 -0
  140. package/dist/generators/ts/LazyObjectType.d.ts +14 -0
  141. package/dist/generators/ts/LazyObjectType.js +59 -0
  142. package/dist/generators/ts/ListType.d.ts +33 -31
  143. package/dist/generators/ts/ListType.js +76 -271
  144. package/dist/generators/ts/LiteralType.d.ts +16 -18
  145. package/dist/generators/ts/LiteralType.js +35 -114
  146. package/dist/generators/ts/ObjectType.d.ts +60 -66
  147. package/dist/generators/ts/ObjectType.js +151 -190
  148. package/dist/generators/ts/ObjectUnionType.d.ts +38 -74
  149. package/dist/generators/ts/ObjectUnionType.js +144 -559
  150. package/dist/generators/ts/OptionType.d.ts +33 -27
  151. package/dist/generators/ts/OptionType.js +93 -83
  152. package/dist/generators/ts/SetType.d.ts +13 -32
  153. package/dist/generators/ts/SetType.js +27 -160
  154. package/dist/generators/ts/StringType.d.ts +19 -11
  155. package/dist/generators/ts/StringType.js +33 -53
  156. package/dist/generators/ts/TermType.d.ts +22 -56
  157. package/dist/generators/ts/TermType.js +67 -219
  158. package/dist/generators/ts/TsGenerator.d.ts +0 -1
  159. package/dist/generators/ts/TsGenerator.js +30 -87
  160. package/dist/generators/ts/Type.d.ts +24 -245
  161. package/dist/generators/ts/Type.js +1 -121
  162. package/dist/generators/ts/TypeFactory.d.ts +24 -15
  163. package/dist/generators/ts/TypeFactory.js +330 -400
  164. package/dist/generators/ts/Typeof.d.ts +2 -0
  165. package/dist/generators/ts/Typeof.js +2 -0
  166. package/dist/generators/ts/UnionType.d.ts +32 -28
  167. package/dist/generators/ts/UnionType.js +299 -230
  168. package/dist/generators/ts/_ObjectType/AbstractProperty.d.ts +191 -0
  169. package/dist/generators/ts/_ObjectType/AbstractProperty.js +49 -0
  170. package/dist/generators/ts/_ObjectType/IdentifierPrefixProperty.d.ts +22 -25
  171. package/dist/generators/ts/_ObjectType/IdentifierPrefixProperty.js +34 -56
  172. package/dist/generators/ts/_ObjectType/IdentifierProperty.d.ts +38 -36
  173. package/dist/generators/ts/_ObjectType/IdentifierProperty.js +238 -191
  174. package/dist/generators/ts/_ObjectType/ObjectType_classDeclaration.d.ts +4 -0
  175. package/dist/generators/ts/_ObjectType/ObjectType_classDeclaration.js +69 -0
  176. package/dist/generators/ts/_ObjectType/ObjectType_createFunctionDeclaration.d.ts +5 -0
  177. package/dist/generators/ts/_ObjectType/ObjectType_createFunctionDeclaration.js +52 -0
  178. package/dist/generators/ts/_ObjectType/ObjectType_equalsFunctionOrMethodDeclaration.d.ts +5 -0
  179. package/dist/generators/ts/_ObjectType/ObjectType_equalsFunctionOrMethodDeclaration.js +51 -0
  180. package/dist/generators/ts/_ObjectType/ObjectType_filterFunctionDeclaration.d.ts +4 -0
  181. package/dist/generators/ts/_ObjectType/ObjectType_filterFunctionDeclaration.js +21 -0
  182. package/dist/generators/ts/_ObjectType/ObjectType_filterTypeDeclaration.d.ts +4 -0
  183. package/dist/generators/ts/_ObjectType/ObjectType_filterTypeDeclaration.js +22 -0
  184. package/dist/generators/ts/_ObjectType/ObjectType_fromRdfTypeVariableStatement.d.ts +5 -0
  185. package/dist/generators/ts/_ObjectType/ObjectType_fromRdfTypeVariableStatement.js +13 -0
  186. package/dist/generators/ts/_ObjectType/ObjectType_graphqlTypeVariableStatement.d.ts +5 -0
  187. package/dist/generators/ts/_ObjectType/ObjectType_graphqlTypeVariableStatement.js +35 -0
  188. package/dist/generators/ts/_ObjectType/ObjectType_hashFunctionOrMethodDeclarations.d.ts +4 -0
  189. package/dist/generators/ts/_ObjectType/ObjectType_hashFunctionOrMethodDeclarations.js +73 -0
  190. package/dist/generators/ts/_ObjectType/ObjectType_interfaceDeclaration.d.ts +4 -0
  191. package/dist/generators/ts/_ObjectType/ObjectType_interfaceDeclaration.js +16 -0
  192. package/dist/generators/ts/_ObjectType/ObjectType_isTypeFunctionDeclaration.d.ts +4 -0
  193. package/dist/generators/ts/_ObjectType/ObjectType_isTypeFunctionDeclaration.js +14 -0
  194. package/dist/generators/ts/_ObjectType/ObjectType_jsonFunctionDeclarations.d.ts +4 -0
  195. package/dist/generators/ts/_ObjectType/ObjectType_jsonFunctionDeclarations.js +122 -0
  196. package/dist/generators/ts/_ObjectType/ObjectType_jsonTypeAliasDeclaration.d.ts +5 -0
  197. package/dist/generators/ts/_ObjectType/ObjectType_jsonTypeAliasDeclaration.js +17 -0
  198. package/dist/generators/ts/_ObjectType/ObjectType_objectSetMethodNames.d.ts +9 -0
  199. package/dist/generators/ts/_ObjectType/{objectSetMethodNames.js → ObjectType_objectSetMethodNames.js} +3 -3
  200. package/dist/generators/ts/_ObjectType/ObjectType_rdfFunctionDeclarations.d.ts +4 -0
  201. package/dist/generators/ts/_ObjectType/ObjectType_rdfFunctionDeclarations.js +132 -0
  202. package/dist/generators/ts/_ObjectType/ObjectType_schemaVariableStatement.d.ts +4 -0
  203. package/dist/generators/ts/_ObjectType/ObjectType_schemaVariableStatement.js +10 -0
  204. package/dist/generators/ts/_ObjectType/ObjectType_sparqlConstructQueryFunctionDeclaration.d.ts +6 -0
  205. package/dist/generators/ts/_ObjectType/ObjectType_sparqlConstructQueryFunctionDeclaration.js +12 -0
  206. package/dist/generators/ts/_ObjectType/ObjectType_sparqlConstructQueryStringFunctionDeclaration.d.ts +6 -0
  207. package/dist/generators/ts/_ObjectType/ObjectType_sparqlConstructQueryStringFunctionDeclaration.js +10 -0
  208. package/dist/generators/ts/_ObjectType/ObjectType_sparqlFunctionDeclarations.d.ts +4 -0
  209. package/dist/generators/ts/_ObjectType/ObjectType_sparqlFunctionDeclarations.js +143 -0
  210. package/dist/generators/ts/_ObjectType/ObjectType_toJsonFunctionOrMethodDeclaration.d.ts +5 -0
  211. package/dist/generators/ts/_ObjectType/{toJsonFunctionOrMethodDeclaration.js → ObjectType_toJsonFunctionOrMethodDeclaration.js} +18 -18
  212. package/dist/generators/ts/_ObjectType/ObjectType_toRdfFunctionOrMethodDeclaration.d.ts +5 -0
  213. package/dist/generators/ts/_ObjectType/ObjectType_toRdfFunctionOrMethodDeclaration.js +65 -0
  214. package/dist/generators/ts/_ObjectType/Property.d.ts +5 -168
  215. package/dist/generators/ts/_ObjectType/Property.js +1 -32
  216. package/dist/generators/ts/_ObjectType/ShaclProperty.d.ts +41 -32
  217. package/dist/generators/ts/_ObjectType/ShaclProperty.js +178 -134
  218. package/dist/generators/ts/_ObjectType/TypeDiscriminantProperty.d.ts +48 -0
  219. package/dist/generators/ts/_ObjectType/TypeDiscriminantProperty.js +142 -0
  220. package/dist/generators/ts/_ObjectType/identifierTypeDeclarations.d.ts +2 -5
  221. package/dist/generators/ts/_ObjectType/identifierTypeDeclarations.js +9 -44
  222. package/dist/generators/ts/_ObjectUnionType/MemberType.d.ts +34 -0
  223. package/dist/generators/ts/_ObjectUnionType/MemberType.js +105 -0
  224. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_equalsFunctionDeclaration.d.ts +5 -0
  225. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_equalsFunctionDeclaration.js +29 -0
  226. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_filterFunctionDeclaration.d.ts +4 -0
  227. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_filterFunctionDeclaration.js +19 -0
  228. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_filterTypeDeclaration.d.ts +4 -0
  229. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_filterTypeDeclaration.js +10 -0
  230. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_graphqlTypeVariableStatement.d.ts +5 -0
  231. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_graphqlTypeVariableStatement.js +18 -0
  232. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_hashFunctionDeclaration.d.ts +5 -0
  233. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_hashFunctionDeclaration.js +28 -0
  234. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_identifierTypeDeclarations.d.ts +4 -0
  235. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_identifierTypeDeclarations.js +9 -0
  236. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_isTypeFunctionDeclaration.d.ts +5 -0
  237. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_isTypeFunctionDeclaration.js +13 -0
  238. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_jsonFunctionDeclarations.d.ts +4 -0
  239. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_jsonFunctionDeclarations.js +50 -0
  240. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_jsonTypeAliasDeclaration.d.ts +5 -0
  241. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_jsonTypeAliasDeclaration.js +10 -0
  242. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_rdfFunctionDeclarations.d.ts +4 -0
  243. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_rdfFunctionDeclarations.js +60 -0
  244. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_schemaVariableStatement.d.ts +4 -0
  245. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_schemaVariableStatement.js +37 -0
  246. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_sparqlFunctionDeclarations.d.ts +4 -0
  247. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_sparqlFunctionDeclarations.js +45 -0
  248. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_typeAliasDeclaration.d.ts +4 -0
  249. package/dist/generators/ts/_ObjectUnionType/ObjectUnionType_typeAliasDeclaration.js +10 -0
  250. package/dist/generators/ts/_snippets/snippets_BlankNodeFilter.d.ts +2 -0
  251. package/dist/generators/ts/_snippets/snippets_BlankNodeFilter.js +6 -0
  252. package/dist/generators/ts/_snippets/snippets_BlankNodeSchema.d.ts +2 -0
  253. package/dist/generators/ts/_snippets/snippets_BlankNodeSchema.js +7 -0
  254. package/dist/generators/ts/_snippets/snippets_BooleanFilter.d.ts +2 -0
  255. package/dist/generators/ts/_snippets/snippets_BooleanFilter.js +7 -0
  256. package/dist/generators/ts/_snippets/snippets_BooleanSchema.d.ts +2 -0
  257. package/dist/generators/ts/_snippets/snippets_BooleanSchema.js +8 -0
  258. package/dist/generators/ts/_snippets/snippets_CollectionFilter.d.ts +2 -0
  259. package/dist/generators/ts/_snippets/snippets_CollectionFilter.js +8 -0
  260. package/dist/generators/ts/_snippets/snippets_CollectionSchema.d.ts +2 -0
  261. package/dist/generators/ts/_snippets/snippets_CollectionSchema.js +9 -0
  262. package/dist/generators/ts/_snippets/snippets_DateFilter.d.ts +2 -0
  263. package/dist/generators/ts/_snippets/snippets_DateFilter.js +11 -0
  264. package/dist/generators/ts/_snippets/snippets_DateSchema.d.ts +2 -0
  265. package/dist/generators/ts/_snippets/snippets_DateSchema.js +8 -0
  266. package/dist/generators/ts/_snippets/snippets_DefaultValueSchema.d.ts +2 -0
  267. package/dist/generators/ts/_snippets/snippets_DefaultValueSchema.js +10 -0
  268. package/dist/generators/ts/_snippets/snippets_EqualsResult.d.ts +2 -0
  269. package/dist/generators/ts/_snippets/snippets_EqualsResult.js +65 -0
  270. package/dist/generators/ts/_snippets/snippets_FromRdfOptions.d.ts +2 -0
  271. package/dist/generators/ts/_snippets/snippets_FromRdfOptions.js +5 -0
  272. package/dist/generators/ts/_snippets/snippets_Hasher.d.ts +2 -0
  273. package/dist/generators/ts/_snippets/snippets_Hasher.js +4 -0
  274. package/dist/generators/ts/_snippets/snippets_IdentifierFilter.d.ts +2 -0
  275. package/dist/generators/ts/_snippets/snippets_IdentifierFilter.js +9 -0
  276. package/dist/generators/ts/_snippets/snippets_IdentifierSchema.d.ts +2 -0
  277. package/dist/generators/ts/_snippets/snippets_IdentifierSchema.js +7 -0
  278. package/dist/generators/ts/_snippets/snippets_IdentifierSet.d.ts +2 -0
  279. package/dist/generators/ts/_snippets/snippets_IdentifierSet.js +29 -0
  280. package/dist/generators/ts/_snippets/snippets_IriFilter.d.ts +2 -0
  281. package/dist/generators/ts/_snippets/snippets_IriFilter.js +8 -0
  282. package/dist/generators/ts/_snippets/snippets_IriSchema.d.ts +2 -0
  283. package/dist/generators/ts/_snippets/snippets_IriSchema.js +9 -0
  284. package/dist/generators/ts/_snippets/snippets_LazyObject.d.ts +2 -0
  285. package/dist/generators/ts/_snippets/snippets_LazyObject.js +24 -0
  286. package/dist/generators/ts/_snippets/snippets_LazyObjectOption.d.ts +2 -0
  287. package/dist/generators/ts/_snippets/snippets_LazyObjectOption.js +27 -0
  288. package/dist/generators/ts/_snippets/snippets_LazyObjectSet.d.ts +2 -0
  289. package/dist/generators/ts/_snippets/snippets_LazyObjectSet.js +42 -0
  290. package/dist/generators/ts/_snippets/snippets_LiteralFilter.d.ts +2 -0
  291. package/dist/generators/ts/_snippets/snippets_LiteralFilter.js +9 -0
  292. package/dist/generators/ts/_snippets/snippets_LiteralSchema.d.ts +2 -0
  293. package/dist/generators/ts/_snippets/snippets_LiteralSchema.js +10 -0
  294. package/dist/generators/ts/_snippets/snippets_MaybeFilter.d.ts +2 -0
  295. package/dist/generators/ts/_snippets/snippets_MaybeFilter.js +5 -0
  296. package/dist/generators/ts/_snippets/snippets_MaybeSchema.d.ts +2 -0
  297. package/dist/generators/ts/_snippets/snippets_MaybeSchema.js +8 -0
  298. package/dist/generators/ts/_snippets/snippets_NumericFilter.d.ts +2 -0
  299. package/dist/generators/ts/_snippets/snippets_NumericFilter.js +11 -0
  300. package/dist/generators/ts/_snippets/snippets_NumericSchema.d.ts +2 -0
  301. package/dist/generators/ts/_snippets/snippets_NumericSchema.js +8 -0
  302. package/dist/generators/ts/_snippets/snippets_PropertiesFromRdfParameters.d.ts +2 -0
  303. package/dist/generators/ts/_snippets/snippets_PropertiesFromRdfParameters.js +5 -0
  304. package/dist/generators/ts/_snippets/snippets_RdfVocabularies.d.ts +2 -0
  305. package/dist/generators/ts/_snippets/snippets_RdfVocabularies.js +42 -0
  306. package/dist/generators/ts/_snippets/snippets_ShaclPropertySchema.d.ts +2 -0
  307. package/dist/generators/ts/_snippets/snippets_ShaclPropertySchema.js +10 -0
  308. package/dist/generators/ts/_snippets/snippets_SparqlConstructTriplesFunction.d.ts +2 -0
  309. package/dist/generators/ts/_snippets/snippets_SparqlConstructTriplesFunction.js +6 -0
  310. package/dist/generators/ts/_snippets/snippets_SparqlConstructTriplesFunctionParameters.d.ts +2 -0
  311. package/dist/generators/ts/_snippets/snippets_SparqlConstructTriplesFunctionParameters.js +12 -0
  312. package/dist/generators/ts/_snippets/snippets_SparqlFilterPattern.d.ts +2 -0
  313. package/dist/generators/ts/_snippets/snippets_SparqlFilterPattern.js +5 -0
  314. package/dist/generators/ts/_snippets/snippets_SparqlPattern.d.ts +2 -0
  315. package/dist/generators/ts/_snippets/snippets_SparqlPattern.js +6 -0
  316. package/dist/generators/ts/_snippets/snippets_SparqlPattern_isSolutionGenerating.d.ts +2 -0
  317. package/dist/generators/ts/_snippets/snippets_SparqlPattern_isSolutionGenerating.js +32 -0
  318. package/dist/generators/ts/_snippets/snippets_SparqlWherePatternsFunction.d.ts +2 -0
  319. package/dist/generators/ts/_snippets/snippets_SparqlWherePatternsFunction.js +6 -0
  320. package/dist/generators/ts/_snippets/snippets_SparqlWherePatternsFunctionParameters.d.ts +2 -0
  321. package/dist/generators/ts/_snippets/snippets_SparqlWherePatternsFunctionParameters.js +15 -0
  322. package/dist/generators/ts/_snippets/snippets_StringFilter.d.ts +2 -0
  323. package/dist/generators/ts/_snippets/snippets_StringFilter.js +9 -0
  324. package/dist/generators/ts/_snippets/snippets_StringSchema.d.ts +2 -0
  325. package/dist/generators/ts/_snippets/snippets_StringSchema.js +8 -0
  326. package/dist/generators/ts/_snippets/snippets_TermFilter.d.ts +2 -0
  327. package/dist/generators/ts/_snippets/snippets_TermFilter.js +11 -0
  328. package/dist/generators/ts/_snippets/snippets_TermSchema.d.ts +2 -0
  329. package/dist/generators/ts/_snippets/snippets_TermSchema.js +9 -0
  330. package/dist/generators/ts/_snippets/snippets_UnwrapR.d.ts +2 -0
  331. package/dist/generators/ts/_snippets/snippets_UnwrapR.js +6 -0
  332. package/dist/generators/ts/_snippets/snippets_arrayEquals.d.ts +2 -0
  333. package/dist/generators/ts/_snippets/snippets_arrayEquals.js +71 -0
  334. package/dist/generators/ts/_snippets/snippets_arrayIntersection.d.ts +2 -0
  335. package/dist/generators/ts/_snippets/snippets_arrayIntersection.js +30 -0
  336. package/dist/generators/ts/_snippets/snippets_bigDecimalLiteral.d.ts +2 -0
  337. package/dist/generators/ts/_snippets/snippets_bigDecimalLiteral.js +12 -0
  338. package/dist/generators/ts/_snippets/snippets_bigDecimalSparqlWherePatterns.d.ts +2 -0
  339. package/dist/generators/ts/_snippets/snippets_bigDecimalSparqlWherePatterns.js +91 -0
  340. package/dist/generators/ts/_snippets/snippets_blankNodeFromString.d.ts +2 -0
  341. package/dist/generators/ts/_snippets/snippets_blankNodeFromString.js +11 -0
  342. package/dist/generators/ts/_snippets/snippets_blankNodeSparqlWherePatterns.d.ts +2 -0
  343. package/dist/generators/ts/_snippets/snippets_blankNodeSparqlWherePatterns.js +9 -0
  344. package/dist/generators/ts/_snippets/snippets_booleanEquals.d.ts +2 -0
  345. package/dist/generators/ts/_snippets/snippets_booleanEquals.js +18 -0
  346. package/dist/generators/ts/_snippets/snippets_booleanSparqlWherePatterns.d.ts +2 -0
  347. package/dist/generators/ts/_snippets/snippets_booleanSparqlWherePatterns.js +22 -0
  348. package/dist/generators/ts/_snippets/snippets_dateEquals.d.ts +2 -0
  349. package/dist/generators/ts/_snippets/snippets_dateEquals.js +15 -0
  350. package/dist/generators/ts/_snippets/snippets_dateSparqlWherePatterns.d.ts +2 -0
  351. package/dist/generators/ts/_snippets/snippets_dateSparqlWherePatterns.js +79 -0
  352. package/dist/generators/ts/_snippets/snippets_decodeBigDecimalLiteral.d.ts +2 -0
  353. package/dist/generators/ts/_snippets/snippets_decodeBigDecimalLiteral.js +11 -0
  354. package/dist/generators/ts/_snippets/snippets_deduplicateSparqlPatterns.d.ts +2 -0
  355. package/dist/generators/ts/_snippets/snippets_deduplicateSparqlPatterns.js +21 -0
  356. package/dist/generators/ts/_snippets/snippets_defaultValueSparqlWherePatterns.d.ts +2 -0
  357. package/dist/generators/ts/_snippets/snippets_defaultValueSparqlWherePatterns.js +13 -0
  358. package/dist/generators/ts/_snippets/snippets_filterArray.d.ts +2 -0
  359. package/dist/generators/ts/_snippets/snippets_filterArray.js +24 -0
  360. package/dist/generators/ts/_snippets/snippets_filterBigDecimal.d.ts +2 -0
  361. package/dist/generators/ts/_snippets/snippets_filterBigDecimal.js +29 -0
  362. package/dist/generators/ts/_snippets/snippets_filterBlankNode.d.ts +2 -0
  363. package/dist/generators/ts/_snippets/snippets_filterBlankNode.js +9 -0
  364. package/dist/generators/ts/_snippets/snippets_filterBoolean.d.ts +2 -0
  365. package/dist/generators/ts/_snippets/snippets_filterBoolean.js +12 -0
  366. package/dist/generators/ts/_snippets/snippets_filterDate.d.ts +2 -0
  367. package/dist/generators/ts/_snippets/snippets_filterDate.js +28 -0
  368. package/dist/generators/ts/_snippets/snippets_filterIdentifier.d.ts +2 -0
  369. package/dist/generators/ts/_snippets/snippets_filterIdentifier.js +17 -0
  370. package/dist/generators/ts/_snippets/snippets_filterIri.d.ts +2 -0
  371. package/dist/generators/ts/_snippets/snippets_filterIri.js +13 -0
  372. package/dist/generators/ts/_snippets/snippets_filterLiteral.d.ts +2 -0
  373. package/dist/generators/ts/_snippets/snippets_filterLiteral.js +10 -0
  374. package/dist/generators/ts/_snippets/snippets_filterMaybe.d.ts +2 -0
  375. package/dist/generators/ts/_snippets/snippets_filterMaybe.js +25 -0
  376. package/dist/generators/ts/_snippets/snippets_filterNumeric.d.ts +2 -0
  377. package/dist/generators/ts/_snippets/snippets_filterNumeric.js +28 -0
  378. package/dist/generators/ts/_snippets/snippets_filterString.d.ts +2 -0
  379. package/dist/generators/ts/_snippets/snippets_filterString.js +20 -0
  380. package/dist/generators/ts/_snippets/snippets_filterTerm.d.ts +2 -0
  381. package/dist/generators/ts/_snippets/snippets_filterTerm.js +26 -0
  382. package/dist/generators/ts/_snippets/snippets_fromRdfLanguageIn.d.ts +2 -0
  383. package/dist/generators/ts/_snippets/snippets_fromRdfLanguageIn.js +17 -0
  384. package/dist/generators/ts/_snippets/snippets_fromRdfPreferredLanguages.d.ts +2 -0
  385. package/dist/generators/ts/_snippets/snippets_fromRdfPreferredLanguages.js +25 -0
  386. package/dist/generators/ts/_snippets/snippets_identifierFromString.d.ts +2 -0
  387. package/dist/generators/ts/_snippets/snippets_identifierFromString.js +8 -0
  388. package/dist/generators/ts/_snippets/snippets_identifierSparqlWherePatterns.d.ts +2 -0
  389. package/dist/generators/ts/_snippets/snippets_identifierSparqlWherePatterns.js +36 -0
  390. package/dist/generators/ts/_snippets/snippets_iriSparqlWherePatterns.d.ts +2 -0
  391. package/dist/generators/ts/_snippets/snippets_iriSparqlWherePatterns.js +20 -0
  392. package/dist/generators/ts/_snippets/snippets_isReadonlyBigIntArray.d.ts +2 -0
  393. package/dist/generators/ts/_snippets/snippets_isReadonlyBigIntArray.js +7 -0
  394. package/dist/generators/ts/_snippets/snippets_isReadonlyBooleanArray.d.ts +2 -0
  395. package/dist/generators/ts/_snippets/snippets_isReadonlyBooleanArray.js +7 -0
  396. package/dist/generators/ts/_snippets/snippets_isReadonlyNumberArray.d.ts +2 -0
  397. package/dist/generators/ts/_snippets/snippets_isReadonlyNumberArray.js +7 -0
  398. package/dist/generators/ts/_snippets/snippets_isReadonlyObjectArray.d.ts +2 -0
  399. package/dist/generators/ts/_snippets/snippets_isReadonlyObjectArray.js +7 -0
  400. package/dist/generators/ts/_snippets/snippets_isReadonlyStringArray.d.ts +2 -0
  401. package/dist/generators/ts/_snippets/snippets_isReadonlyStringArray.js +7 -0
  402. package/dist/generators/ts/_snippets/snippets_liftSparqlPatterns.d.ts +2 -0
  403. package/dist/generators/ts/_snippets/snippets_liftSparqlPatterns.js +18 -0
  404. package/dist/generators/ts/_snippets/snippets_listSparqlConstructTriples.d.ts +2 -0
  405. package/dist/generators/ts/_snippets/snippets_listSparqlConstructTriples.js +43 -0
  406. package/dist/generators/ts/_snippets/snippets_listSparqlWherePatterns.d.ts +2 -0
  407. package/dist/generators/ts/_snippets/snippets_listSparqlWherePatterns.js +121 -0
  408. package/dist/generators/ts/_snippets/snippets_literalFactory.d.ts +2 -0
  409. package/dist/generators/ts/_snippets/snippets_literalFactory.js +5 -0
  410. package/dist/generators/ts/_snippets/snippets_literalSchemaSparqlPatterns.d.ts +2 -0
  411. package/dist/generators/ts/_snippets/snippets_literalSchemaSparqlPatterns.js +45 -0
  412. package/dist/generators/ts/_snippets/snippets_literalSparqlWherePatterns.d.ts +2 -0
  413. package/dist/generators/ts/_snippets/snippets_literalSparqlWherePatterns.js +10 -0
  414. package/dist/generators/ts/_snippets/snippets_maybeEquals.d.ts +2 -0
  415. package/dist/generators/ts/_snippets/snippets_maybeEquals.js +34 -0
  416. package/dist/generators/ts/_snippets/snippets_maybeSparqlConstructTriples.d.ts +2 -0
  417. package/dist/generators/ts/_snippets/snippets_maybeSparqlConstructTriples.js +10 -0
  418. package/dist/generators/ts/_snippets/snippets_maybeSparqlWherePatterns.d.ts +2 -0
  419. package/dist/generators/ts/_snippets/snippets_maybeSparqlWherePatterns.js +26 -0
  420. package/dist/generators/ts/_snippets/snippets_normalizeSparqlWherePatterns.d.ts +2 -0
  421. package/dist/generators/ts/_snippets/snippets_normalizeSparqlWherePatterns.js +97 -0
  422. package/dist/generators/ts/_snippets/snippets_numericSparqlWherePatterns.d.ts +2 -0
  423. package/dist/generators/ts/_snippets/snippets_numericSparqlWherePatterns.js +71 -0
  424. package/dist/generators/ts/_snippets/snippets_setSparqlConstructTriples.d.ts +2 -0
  425. package/dist/generators/ts/_snippets/snippets_setSparqlConstructTriples.js +10 -0
  426. package/dist/generators/ts/_snippets/snippets_setSparqlWherePatterns.d.ts +2 -0
  427. package/dist/generators/ts/_snippets/snippets_setSparqlWherePatterns.js +22 -0
  428. package/dist/generators/ts/_snippets/snippets_shaclPropertyFromRdf.d.ts +2 -0
  429. package/dist/generators/ts/_snippets/snippets_shaclPropertyFromRdf.js +14 -0
  430. package/dist/generators/ts/_snippets/snippets_shaclPropertySparqlConstructTriples.d.ts +2 -0
  431. package/dist/generators/ts/_snippets/snippets_shaclPropertySparqlConstructTriples.js +94 -0
  432. package/dist/generators/ts/_snippets/snippets_shaclPropertySparqlWherePatterns.d.ts +2 -0
  433. package/dist/generators/ts/_snippets/snippets_shaclPropertySparqlWherePatterns.js +92 -0
  434. package/dist/generators/ts/_snippets/snippets_sortSparqlPatterns.d.ts +2 -0
  435. package/dist/generators/ts/_snippets/snippets_sortSparqlPatterns.js +26 -0
  436. package/dist/generators/ts/_snippets/snippets_sparqlInstancesOfPattern.d.ts +2 -0
  437. package/dist/generators/ts/_snippets/snippets_sparqlInstancesOfPattern.js +32 -0
  438. package/dist/generators/ts/_snippets/snippets_sparqlPropertyPath.d.ts +2 -0
  439. package/dist/generators/ts/_snippets/snippets_sparqlPropertyPath.js +61 -0
  440. package/dist/generators/ts/_snippets/snippets_sparqlValueInPattern.d.ts +2 -0
  441. package/dist/generators/ts/_snippets/snippets_sparqlValueInPattern.js +27 -0
  442. package/dist/generators/ts/_snippets/snippets_strictEquals.d.ts +2 -0
  443. package/dist/generators/ts/_snippets/snippets_strictEquals.js +14 -0
  444. package/dist/generators/ts/_snippets/snippets_stringSparqlWherePatterns.d.ts +2 -0
  445. package/dist/generators/ts/_snippets/snippets_stringSparqlWherePatterns.js +47 -0
  446. package/dist/generators/ts/_snippets/snippets_termFilterSparqlPatterns.d.ts +2 -0
  447. package/dist/generators/ts/_snippets/snippets_termFilterSparqlPatterns.js +98 -0
  448. package/dist/generators/ts/_snippets/snippets_termSchemaSparqlPatterns.d.ts +2 -0
  449. package/dist/generators/ts/_snippets/snippets_termSchemaSparqlPatterns.js +29 -0
  450. package/dist/generators/ts/_snippets/snippets_termSparqlWherePatterns.d.ts +2 -0
  451. package/dist/generators/ts/_snippets/snippets_termSparqlWherePatterns.js +11 -0
  452. package/dist/generators/ts/codeEquals.d.ts +3 -0
  453. package/dist/generators/ts/codeEquals.js +7 -0
  454. package/dist/generators/ts/graphqlSchemaVariableStatement.d.ts +2 -2
  455. package/dist/generators/ts/graphqlSchemaVariableStatement.js +56 -60
  456. package/dist/generators/ts/imports.d.ts +40 -0
  457. package/dist/generators/ts/imports.js +41 -0
  458. package/dist/generators/ts/objectSetDeclarations.d.ts +2 -2
  459. package/dist/generators/ts/objectSetDeclarations.js +5 -7
  460. package/dist/generators/ts/objectSetInterfaceDeclaration.d.ts +2 -2
  461. package/dist/generators/ts/objectSetInterfaceDeclaration.js +19 -41
  462. package/dist/generators/ts/objectSetMethodSignatures.d.ts +9 -3
  463. package/dist/generators/ts/objectSetMethodSignatures.js +14 -34
  464. package/dist/generators/ts/rdfjsDatasetObjectSetClassDeclaration.d.ts +2 -2
  465. package/dist/generators/ts/rdfjsDatasetObjectSetClassDeclaration.js +279 -359
  466. package/dist/generators/ts/rdfjsTermExpression.d.ts +2 -1
  467. package/dist/generators/ts/rdfjsTermExpression.js +28 -10
  468. package/dist/generators/ts/removeUndefined.d.ts +2 -0
  469. package/dist/generators/ts/removeUndefined.js +17 -0
  470. package/dist/generators/ts/snippets.d.ts +104 -0
  471. package/dist/generators/ts/snippets.js +205 -0
  472. package/dist/generators/ts/sparqlObjectSetClassDeclaration.d.ts +2 -2
  473. package/dist/generators/ts/sparqlObjectSetClassDeclaration.js +209 -388
  474. package/dist/generators/ts/synthesizeUberObjectUnionType.d.ts +9 -0
  475. package/dist/generators/ts/synthesizeUberObjectUnionType.js +59 -0
  476. package/dist/generators/ts/ts-poet-wrapper.d.ts +5 -0
  477. package/dist/generators/ts/ts-poet-wrapper.js +13 -0
  478. package/dist/generators/ts/tsName.d.ts +11 -2
  479. package/dist/generators/ts/tsName.js +25 -28
  480. package/dist/generators/ts/unsupportedObjectSetMethodDeclarations.d.ts +4 -3
  481. package/dist/generators/ts/unsupportedObjectSetMethodDeclarations.js +18 -15
  482. package/dist/index.d.ts +6 -1
  483. package/dist/index.js +5 -1
  484. package/dist/input/NodeShape.d.ts +14 -11
  485. package/dist/input/NodeShape.js +87 -80
  486. package/dist/input/Ontology.d.ts +1 -1
  487. package/dist/input/Ontology.js +13 -0
  488. package/dist/input/PropertyShape.d.ts +8 -5
  489. package/dist/input/PropertyShape.js +46 -9
  490. package/dist/input/ShapesGraph.d.ts +23 -6
  491. package/dist/input/ShapesGraph.js +58 -39
  492. package/dist/input/ancestorClassIris.js +4 -1
  493. package/dist/input/descendantClassIris.js +8 -2
  494. package/dist/input/generated.d.ts +3032 -1042
  495. package/dist/input/generated.js +3595 -2730
  496. package/dist/input/index.d.ts +1 -1
  497. package/dist/input/index.js +1 -1
  498. package/dist/input/tsFeatures.d.ts +1 -1
  499. package/package.json +40 -34
  500. package/dist/_ShapesGraphToAstTransformer/InheritableShapeConstraints.d.ts +0 -2
  501. package/dist/_ShapesGraphToAstTransformer/InheritableShapeConstraints.js +0 -2
  502. package/dist/_ShapesGraphToAstTransformer/flattenAstObjectCompositeTypeMemberTypes.d.ts +0 -13
  503. package/dist/_ShapesGraphToAstTransformer/flattenAstObjectCompositeTypeMemberTypes.js +0 -51
  504. package/dist/_ShapesGraphToAstTransformer/pickLiteral.d.ts +0 -4
  505. package/dist/_ShapesGraphToAstTransformer/pickLiteral.js +0 -18
  506. package/dist/_ShapesGraphToAstTransformer/propertyShapeNodeKinds.d.ts +0 -4
  507. package/dist/_ShapesGraphToAstTransformer/propertyShapeNodeKinds.js +0 -26
  508. package/dist/_ShapesGraphToAstTransformer/shapeAstName.d.ts +0 -5
  509. package/dist/_ShapesGraphToAstTransformer/shapeAstName.js +0 -69
  510. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstCompositeType.d.ts +0 -10
  511. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstCompositeType.js +0 -185
  512. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstIdentifierType.d.ts +0 -10
  513. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstIdentifierType.js +0 -32
  514. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstLiteralType.d.ts +0 -10
  515. package/dist/_ShapesGraphToAstTransformer/transformShapeToAstLiteralType.js +0 -46
  516. package/dist/ast/CompositeType.d.ts +0 -13
  517. package/dist/ast/CompositeType.js +0 -2
  518. package/dist/ast/Name.d.ts +0 -49
  519. package/dist/ast/Name.js +0 -2
  520. package/dist/ast/ObjectCompositeType.d.ts +0 -33
  521. package/dist/ast/ObjectCompositeType.js +0 -2
  522. package/dist/generators/ts/DeclaredType.d.ts +0 -17
  523. package/dist/generators/ts/DeclaredType.js +0 -13
  524. package/dist/generators/ts/Import.d.ts +0 -20
  525. package/dist/generators/ts/Import.js +0 -69
  526. package/dist/generators/ts/NumberType.d.ts +0 -13
  527. package/dist/generators/ts/NumberType.js +0 -71
  528. package/dist/generators/ts/PrimitiveType.d.ts +0 -21
  529. package/dist/generators/ts/PrimitiveType.js +0 -57
  530. package/dist/generators/ts/SnippetDeclarations.d.ts +0 -17
  531. package/dist/generators/ts/SnippetDeclarations.js +0 -367
  532. package/dist/generators/ts/_ObjectType/EagerShaclProperty.d.ts +0 -12
  533. package/dist/generators/ts/_ObjectType/EagerShaclProperty.js +0 -31
  534. package/dist/generators/ts/_ObjectType/LazyShaclProperty.d.ts +0 -100
  535. package/dist/generators/ts/_ObjectType/LazyShaclProperty.js +0 -315
  536. package/dist/generators/ts/_ObjectType/TypeDiscriminatorProperty.d.ts +0 -51
  537. package/dist/generators/ts/_ObjectType/TypeDiscriminatorProperty.js +0 -138
  538. package/dist/generators/ts/_ObjectType/classDeclaration.d.ts +0 -5
  539. package/dist/generators/ts/_ObjectType/classDeclaration.js +0 -122
  540. package/dist/generators/ts/_ObjectType/createFunctionDeclaration.d.ts +0 -5
  541. package/dist/generators/ts/_ObjectType/createFunctionDeclaration.js +0 -73
  542. package/dist/generators/ts/_ObjectType/equalsFunctionDeclaration.d.ts +0 -5
  543. package/dist/generators/ts/_ObjectType/equalsFunctionDeclaration.js +0 -19
  544. package/dist/generators/ts/_ObjectType/equalsFunctionOrMethodDeclaration.d.ts +0 -11
  545. package/dist/generators/ts/_ObjectType/equalsFunctionOrMethodDeclaration.js +0 -73
  546. package/dist/generators/ts/_ObjectType/fromRdfTypeVariableStatement.d.ts +0 -5
  547. package/dist/generators/ts/_ObjectType/fromRdfTypeVariableStatement.js +0 -28
  548. package/dist/generators/ts/_ObjectType/graphqlTypeVariableStatement.d.ts +0 -5
  549. package/dist/generators/ts/_ObjectType/graphqlTypeVariableStatement.js +0 -49
  550. package/dist/generators/ts/_ObjectType/hashFunctionDeclarations.d.ts +0 -4
  551. package/dist/generators/ts/_ObjectType/hashFunctionDeclarations.js +0 -18
  552. package/dist/generators/ts/_ObjectType/hashFunctionOrMethodDeclarations.d.ts +0 -13
  553. package/dist/generators/ts/_ObjectType/hashFunctionOrMethodDeclarations.js +0 -96
  554. package/dist/generators/ts/_ObjectType/index.d.ts +0 -22
  555. package/dist/generators/ts/_ObjectType/index.js +0 -22
  556. package/dist/generators/ts/_ObjectType/interfaceDeclaration.d.ts +0 -5
  557. package/dist/generators/ts/_ObjectType/interfaceDeclaration.js +0 -21
  558. package/dist/generators/ts/_ObjectType/jsonFunctionDeclarations.d.ts +0 -4
  559. package/dist/generators/ts/_ObjectType/jsonFunctionDeclarations.js +0 -189
  560. package/dist/generators/ts/_ObjectType/jsonTypeAliasDeclaration.d.ts +0 -5
  561. package/dist/generators/ts/_ObjectType/jsonTypeAliasDeclaration.js +0 -28
  562. package/dist/generators/ts/_ObjectType/objectSetMethodNames.d.ts +0 -9
  563. package/dist/generators/ts/_ObjectType/propertiesVariableStatement.d.ts +0 -5
  564. package/dist/generators/ts/_ObjectType/propertiesVariableStatement.js +0 -37
  565. package/dist/generators/ts/_ObjectType/rdfFunctionDeclarations.d.ts +0 -4
  566. package/dist/generators/ts/_ObjectType/rdfFunctionDeclarations.js +0 -169
  567. package/dist/generators/ts/_ObjectType/sparqlConstructQueryFunctionDeclaration.d.ts +0 -5
  568. package/dist/generators/ts/_ObjectType/sparqlConstructQueryFunctionDeclaration.js +0 -22
  569. package/dist/generators/ts/_ObjectType/sparqlConstructQueryStringFunctionDeclaration.d.ts +0 -5
  570. package/dist/generators/ts/_ObjectType/sparqlConstructQueryStringFunctionDeclaration.js +0 -21
  571. package/dist/generators/ts/_ObjectType/sparqlFunctionDeclarations.d.ts +0 -4
  572. package/dist/generators/ts/_ObjectType/sparqlFunctionDeclarations.js +0 -166
  573. package/dist/generators/ts/_ObjectType/toJsonFunctionOrMethodDeclaration.d.ts +0 -10
  574. package/dist/generators/ts/_ObjectType/toRdfFunctionOrMethodDeclaration.d.ts +0 -10
  575. package/dist/generators/ts/_ObjectType/toRdfFunctionOrMethodDeclaration.js +0 -76
  576. package/dist/generators/ts/forwardingObjectSetClassDeclaration.d.ts +0 -8
  577. package/dist/generators/ts/forwardingObjectSetClassDeclaration.js +0 -29
  578. package/dist/generators/ts/objectInitializer.d.ts +0 -2
  579. package/dist/generators/ts/objectInitializer.js +0 -14
  580. package/dist/input/PropertyPath.d.ts +0 -41
  581. package/dist/input/PropertyPath.js +0 -95
@@ -0,0 +1,59 @@
1
+ import { Maybe } from "purify-ts";
2
+ import { BlankNodeType } from "./BlankNodeType.js";
3
+ import { IdentifierType } from "./IdentifierType.js";
4
+ import { IriType } from "./IriType.js";
5
+ import { ObjectUnionType } from "./ObjectUnionType.js";
6
+ import { syntheticNamePrefix } from "./syntheticNamePrefix.js";
7
+ /**
8
+ * Synthesize the $Object union.
9
+ */
10
+ export function synthesizeUberObjectUnionType(parameters) {
11
+ const objectTypes = parameters.objectTypes.filter((objectType) => !objectType.extern);
12
+ const nodeKinds = objectTypes.reduce((nodeKinds, objectType) => {
13
+ for (const nodeKind of objectType.identifierType.nodeKinds) {
14
+ nodeKinds.add(nodeKind);
15
+ }
16
+ return nodeKinds;
17
+ }, new Set());
18
+ let identifierType;
19
+ if (nodeKinds.size === 2) {
20
+ identifierType = new IdentifierType({
21
+ comment: Maybe.empty(),
22
+ label: Maybe.empty(),
23
+ });
24
+ }
25
+ else {
26
+ switch ([...nodeKinds][0]) {
27
+ case "BlankNode":
28
+ identifierType = new BlankNodeType({
29
+ comment: Maybe.empty(),
30
+ label: Maybe.empty(),
31
+ });
32
+ break;
33
+ case "IRI":
34
+ identifierType = new IriType({
35
+ comment: Maybe.empty(),
36
+ hasValues: [],
37
+ in_: [],
38
+ label: Maybe.empty(),
39
+ });
40
+ break;
41
+ }
42
+ }
43
+ return new ObjectUnionType({
44
+ comment: Maybe.empty(),
45
+ export_: true,
46
+ features: objectTypes.reduce((features, objectType) => {
47
+ for (const feature of objectType.features) {
48
+ features.add(feature);
49
+ }
50
+ features.delete("graphql");
51
+ return features;
52
+ }, new Set()),
53
+ identifierType,
54
+ label: Maybe.empty(),
55
+ memberTypes: objectTypes,
56
+ name: `${syntheticNamePrefix}Object`,
57
+ });
58
+ }
59
+ //# sourceMappingURL=synthesizeUberObjectUnionType.js.map
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Wrapper around ts-poet, enabled during debugging to throw errors on Code.toString.
3
+ */
4
+ export * from "ts-poet";
5
+ //# sourceMappingURL=ts-poet-wrapper.d.ts.map
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Wrapper around ts-poet, enabled during debugging to throw errors on Code.toString.
3
+ */
4
+ export * from "ts-poet";
5
+ import { Code } from "ts-poet";
6
+ const originalCodeToString = Code.prototype.toString;
7
+ Code.prototype.toString = function (opts) {
8
+ if (!opts) {
9
+ throw new Error("Code.toString should not be called without opts");
10
+ }
11
+ return originalCodeToString.call(this, opts);
12
+ };
13
+ //# sourceMappingURL=ts-poet-wrapper.js.map
@@ -1,3 +1,12 @@
1
- import type * as ast from "../../ast/index.js";
2
- export declare function tsName(astName: ast.Name): string;
1
+ import type { BlankNode, NamedNode } from "@rdfjs/types";
2
+ import type { Maybe } from "purify-ts";
3
+ import { type PropertyPath } from "rdfjs-resource";
4
+ import * as ast from "../../ast/index.js";
5
+ export declare function tsName(astConstruct: {
6
+ label: Maybe<string>;
7
+ name: Maybe<string>;
8
+ path?: ast.Curie | PropertyPath;
9
+ synthetic?: boolean;
10
+ shapeIdentifier: BlankNode | NamedNode;
11
+ }): string;
3
12
  //# sourceMappingURL=tsName.d.ts.map
@@ -1,37 +1,34 @@
1
1
  import { Resource } from "rdfjs-resource";
2
+ import * as ast from "../../ast/index.js";
2
3
  import { stringToValidTsIdentifier } from "./stringToValidTsIdentifier.js";
3
4
  import { syntheticNamePrefix } from "./syntheticNamePrefix.js";
4
- function* tsNameAlternatives(astName) {
5
- yield astName.shaclmateName.extract();
6
- yield astName.shName.extract()?.replace(" ", "_");
7
- yield astName.label.extract()?.replace(" ", "_");
8
- yield astName.propertyPath
9
- .chain((propertyPath) => propertyPath.uniqueLocalPart())
10
- .extract();
11
- yield astName.propertyPath
12
- .chain((propertyPath) => propertyPath.curie.map((curie) => `${curie.prefix}_${curie.reference}`))
13
- .extract();
14
- if (astName.identifier.termType === "NamedNode") {
15
- yield astName.identifier.uniqueLocalPart().extract();
16
- yield astName.identifier.curie
17
- .map((curie) => `${curie.prefix}_${curie.reference}`)
18
- .extract();
5
+ export function tsName(astConstruct) {
6
+ const name = astConstruct.name.extract();
7
+ if (name) {
8
+ if (astConstruct.synthetic) {
9
+ return `${syntheticNamePrefix}${name}`;
10
+ }
11
+ return stringToValidTsIdentifier(name);
19
12
  }
20
- yield astName.propertyPath
21
- .map((propertyPath) => Resource.Identifier.toString(propertyPath))
22
- .extract();
23
- yield Resource.Identifier.toString(astName.identifier);
24
- }
25
- export function tsName(astName) {
26
- const syntheticName = astName.syntheticName.extract();
27
- if (syntheticName) {
28
- return `${syntheticNamePrefix}${syntheticName}`;
13
+ const label = astConstruct.label.extract();
14
+ if (label) {
15
+ return stringToValidTsIdentifier(label.replace(" ", "_"));
16
+ }
17
+ const path = astConstruct.path;
18
+ if (path instanceof ast.Curie) {
19
+ if (path.hasUniqueReference) {
20
+ return stringToValidTsIdentifier(path.reference);
21
+ }
22
+ return stringToValidTsIdentifier(`${path.prefix}_${path.reference}`);
29
23
  }
30
- for (const tsNameAlternative of tsNameAlternatives(astName)) {
31
- if (tsNameAlternative) {
32
- return stringToValidTsIdentifier(tsNameAlternative);
24
+ const shapeIdentifier = astConstruct.shapeIdentifier;
25
+ if (shapeIdentifier.termType === "NamedNode" &&
26
+ shapeIdentifier instanceof ast.Curie) {
27
+ if (shapeIdentifier.hasUniqueReference) {
28
+ return stringToValidTsIdentifier(shapeIdentifier.reference);
33
29
  }
30
+ return stringToValidTsIdentifier(`${shapeIdentifier.prefix}_${shapeIdentifier.reference}`);
34
31
  }
35
- throw new Error("should never reach this point");
32
+ throw new Error(`should never reach this point (shapeIdentifier=${Resource.Identifier.toString(shapeIdentifier)})`);
36
33
  }
37
34
  //# sourceMappingURL=tsName.js.map
@@ -1,10 +1,11 @@
1
- import { type MethodDeclarationStructure } from "ts-morph";
2
1
  import type { ObjectType } from "./ObjectType.js";
2
+ import { type Code } from "./ts-poet-wrapper.js";
3
3
  export declare function unsupportedObjectSetMethodDeclarations({ objectType, }: {
4
4
  objectType: {
5
- readonly identifierTypeAlias: string;
5
+ readonly filterType: Code;
6
+ readonly identifierTypeAlias: Code;
6
7
  readonly objectSetMethodNames: ObjectType.ObjectSetMethodNames;
7
8
  readonly name: string;
8
9
  };
9
- }): readonly MethodDeclarationStructure[];
10
+ }): Readonly<Record<keyof ObjectType.ObjectSetMethodNames, Code>>;
10
11
  //# sourceMappingURL=unsupportedObjectSetMethodDeclarations.d.ts.map
@@ -1,19 +1,22 @@
1
- import { StructureKind } from "ts-morph";
1
+ import { imports } from "./imports.js";
2
2
  import { objectSetMethodSignatures } from "./objectSetMethodSignatures.js";
3
+ import { code } from "./ts-poet-wrapper.js";
4
+ function unsupportedObjectSetMethodDeclaration({ name, parameters, returnType, }) {
5
+ return code `\
6
+ async ${name}(${parameters}): ${returnType} {
7
+ return ${imports.Left}(new Error("${name}: not supported")) satisfies Awaited<${returnType}>;
8
+ }`;
9
+ }
3
10
  export function unsupportedObjectSetMethodDeclarations({ objectType, }) {
4
- return Object.entries(objectSetMethodSignatures({ objectType })).map(([methodName, methodSignature]) => ({
5
- ...methodSignature,
6
- kind: StructureKind.Method,
7
- parameters: methodSignature.parameters
8
- ? methodSignature.parameters.map((parameter) => ({
9
- ...parameter,
10
- name: `_${parameter.name}`,
11
- }))
12
- : methodSignature.parameters,
13
- isAsync: true,
14
- statements: methodName === "objects"
15
- ? [`return [purify.Left(new Error("${methodName}: not supported"))];`]
16
- : [`return purify.Left(new Error("${methodName}: not supported"));`],
17
- }));
11
+ const methodSignatures = objectSetMethodSignatures({
12
+ objectType,
13
+ parameterNamePrefix: "_",
14
+ });
15
+ return {
16
+ object: unsupportedObjectSetMethodDeclaration(methodSignatures.object),
17
+ objectCount: unsupportedObjectSetMethodDeclaration(methodSignatures.objectCount),
18
+ objectIdentifiers: unsupportedObjectSetMethodDeclaration(methodSignatures.objectIdentifiers),
19
+ objects: unsupportedObjectSetMethodDeclaration(methodSignatures.objects),
20
+ };
18
21
  }
19
22
  //# sourceMappingURL=unsupportedObjectSetMethodDeclarations.js.map
package/dist/index.d.ts CHANGED
@@ -1,3 +1,8 @@
1
+ export * as ast from "./ast/index.js";
1
2
  export * from "./Compiler.js";
2
- export * as generators from "./generators/index.js";
3
+ export type { Generator } from "./generators/Generator.js";
4
+ export { AstJsonGenerator } from "./generators/json/AstJsonGenerator.js";
5
+ export { TsGenerator } from "./generators/ts/TsGenerator.js";
6
+ export * from "./input/ShapesGraph.js";
7
+ export * from "./ShapesGraphToAstTransformer.js";
3
8
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,3 +1,7 @@
1
+ export * as ast from "./ast/index.js";
1
2
  export * from "./Compiler.js";
2
- export * as generators from "./generators/index.js";
3
+ export { AstJsonGenerator } from "./generators/json/AstJsonGenerator.js";
4
+ export { TsGenerator } from "./generators/ts/TsGenerator.js";
5
+ export * from "./input/ShapesGraph.js";
6
+ export * from "./ShapesGraphToAstTransformer.js";
3
7
  //# sourceMappingURL=index.js.map
@@ -1,10 +1,10 @@
1
1
  import type { NamedNode } from "@rdfjs/types";
2
- import { type IdentifierNodeKind, NodeShape as ShaclCoreNodeShape } from "@shaclmate/shacl-ast";
3
- import { Maybe } from "purify-ts";
4
- import type * as generated from "./generated.js";
2
+ import { NodeShape as ShaclCoreNodeShape } from "@shaclmate/shacl-ast";
3
+ import { Either, type Maybe } from "purify-ts";
5
4
  import type { IdentifierMintingStrategy, TsFeature, TsObjectDeclarationType } from "../enums/index.js";
6
- import type { Shape } from "./Shape.js";
5
+ import type * as generated from "./generated.js";
7
6
  import type { Ontology, PropertyGroup, PropertyShape, ShapesGraph } from "./index.js";
7
+ import type { Shape } from "./Shape.js";
8
8
  export declare class NodeShape extends ShaclCoreNodeShape<any, Ontology, PropertyGroup, PropertyShape, Shape> {
9
9
  private readonly ancestorClassIris;
10
10
  private readonly childClassIris;
@@ -13,6 +13,7 @@ export declare class NodeShape extends ShaclCoreNodeShape<any, Ontology, Propert
13
13
  private readonly parentClassIris;
14
14
  readonly isClass: boolean;
15
15
  readonly isList: boolean;
16
+ readonly kind = "NodeShape";
16
17
  constructor({ ancestorClassIris, childClassIris, descendantClassIris, generatedShaclmateNodeShape, isClass, isList, parentClassIris, shapesGraph, }: {
17
18
  ancestorClassIris: readonly NamedNode[];
18
19
  generatedShaclmateNodeShape: generated.ShaclmateNodeShape;
@@ -24,22 +25,24 @@ export declare class NodeShape extends ShaclCoreNodeShape<any, Ontology, Propert
24
25
  shapesGraph: ShapesGraph;
25
26
  });
26
27
  get abstract(): Maybe<boolean>;
27
- get ancestorNodeShapes(): readonly NodeShape[];
28
- get childNodeShapes(): readonly NodeShape[];
29
- get descendantNodeShapes(): readonly NodeShape[];
28
+ get ancestorNodeShapes(): Either<Error, readonly NodeShape[]>;
29
+ get childNodeShapes(): Either<Error, readonly NodeShape[]>;
30
+ get comment(): Maybe<string>;
31
+ get descendantNodeShapes(): Either<Error, readonly NodeShape[]>;
32
+ get discriminantValue(): Maybe<string>;
30
33
  get export(): Maybe<boolean>;
31
34
  get extern(): Maybe<boolean>;
32
35
  get fromRdfType(): Maybe<NamedNode>;
36
+ get identifierIn(): readonly NamedNode[];
33
37
  get identifierMintingStrategy(): Maybe<IdentifierMintingStrategy>;
38
+ get label(): Maybe<string>;
34
39
  get mutable(): Maybe<boolean>;
35
- get nodeKinds(): Set<IdentifierNodeKind>;
36
- get parentNodeShapes(): readonly NodeShape[];
40
+ get parentNodeShapes(): Either<Error, readonly NodeShape[]>;
37
41
  get rdfType(): Maybe<NamedNode>;
38
42
  get shaclmateName(): Maybe<string>;
39
43
  get toRdfTypes(): readonly NamedNode[];
40
- get tsFeatures(): Maybe<Set<TsFeature>>;
44
+ get tsFeatures(): Maybe<ReadonlySet<TsFeature>>;
41
45
  get tsImports(): readonly string[];
42
46
  get tsObjectDeclarationType(): Maybe<TsObjectDeclarationType>;
43
- private get _mintingStrategy();
44
47
  }
45
48
  //# sourceMappingURL=NodeShape.d.ts.map
@@ -1,5 +1,14 @@
1
- import { NodeShape as ShaclCoreNodeShape, } from "@shaclmate/shacl-ast";
2
- import { Maybe } from "purify-ts";
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 { NodeShape as ShaclCoreNodeShape } from "@shaclmate/shacl-ast";
8
+ import { rdf } from "@tpluscode/rdf-ns-builders";
9
+ import { Either, List } from "purify-ts";
10
+ import { invariant } from "ts-invariant";
11
+ import { Memoize } from "typescript-memoize";
3
12
  import { tsFeatures } from "./tsFeatures.js";
4
13
  export class NodeShape extends ShaclCoreNodeShape {
5
14
  ancestorClassIris;
@@ -9,8 +18,16 @@ export class NodeShape extends ShaclCoreNodeShape {
9
18
  parentClassIris;
10
19
  isClass;
11
20
  isList;
21
+ kind = "NodeShape";
12
22
  constructor({ ancestorClassIris, childClassIris, descendantClassIris, generatedShaclmateNodeShape, isClass, isList, parentClassIris, shapesGraph, }) {
13
23
  super(generatedShaclmateNodeShape, shapesGraph);
24
+ if (ancestorClassIris.length > 0 ||
25
+ childClassIris.length > 0 ||
26
+ descendantClassIris.length > 0 ||
27
+ isList ||
28
+ parentClassIris.length > 0) {
29
+ invariant(isClass);
30
+ }
14
31
  this.ancestorClassIris = ancestorClassIris;
15
32
  this.childClassIris = childClassIris;
16
33
  this.descendantClassIris = descendantClassIris;
@@ -23,19 +40,21 @@ export class NodeShape extends ShaclCoreNodeShape {
23
40
  return this.generatedShaclmateNodeShape.abstract;
24
41
  }
25
42
  get ancestorNodeShapes() {
26
- return this.isClass
27
- ? this.ancestorClassIris.flatMap((classIri) => this.shapesGraph.nodeShapeByIdentifier(classIri).toList())
28
- : [];
43
+ return Either.sequence(this.ancestorClassIris
44
+ .filter((classIri) => !classIri.equals(rdf.List))
45
+ .map((classIri) => this.shapesGraph.nodeShapeByIdentifier(classIri)));
29
46
  }
30
47
  get childNodeShapes() {
31
- return this.isClass
32
- ? this.childClassIris.flatMap((classIri) => this.shapesGraph.nodeShapeByIdentifier(classIri).toList())
33
- : [];
48
+ return Either.sequence(this.childClassIris.flatMap((classIri) => this.shapesGraph.nodeShapeByIdentifier(classIri)));
49
+ }
50
+ get comment() {
51
+ return List.head(this.comments);
34
52
  }
35
53
  get descendantNodeShapes() {
36
- return this.isClass
37
- ? this.descendantClassIris.flatMap((classIri) => this.shapesGraph.nodeShapeByIdentifier(classIri).toList())
38
- : [];
54
+ return Either.sequence(this.descendantClassIris.flatMap((classIri) => this.shapesGraph.nodeShapeByIdentifier(classIri)));
55
+ }
56
+ get discriminantValue() {
57
+ return this.generatedShaclmateNodeShape.discriminantValue;
39
58
  }
40
59
  get export() {
41
60
  return this.generatedShaclmateNodeShape.export_;
@@ -46,68 +65,37 @@ export class NodeShape extends ShaclCoreNodeShape {
46
65
  get fromRdfType() {
47
66
  return this.generatedShaclmateNodeShape.fromRdfType;
48
67
  }
68
+ get identifierIn() {
69
+ return this.constraints.in_.filter((value) => value.termType === "NamedNode");
70
+ }
49
71
  get identifierMintingStrategy() {
50
- const thisMintingStrategy = this._mintingStrategy;
51
- if (thisMintingStrategy.isNothing()) {
52
- for (const ancestorNodeShape of this.ancestorNodeShapes) {
53
- const ancestorMintingStrategy = ancestorNodeShape._mintingStrategy;
54
- if (ancestorMintingStrategy.isJust()) {
55
- return ancestorMintingStrategy;
56
- }
72
+ return this.generatedShaclmateNodeShape.identifierMintingStrategy.map((iri) => {
73
+ switch (iri.value) {
74
+ case "http://purl.org/shaclmate/ontology#_IdentifierMintingStrategy_BlankNode":
75
+ return "blankNode";
76
+ case "http://purl.org/shaclmate/ontology#_IdentifierMintingStrategy_SHA256":
77
+ return "sha256";
78
+ case "http://purl.org/shaclmate/ontology#_IdentifierMintingStrategy_UUIDv4":
79
+ return "uuidv4";
80
+ default:
81
+ iri.value;
82
+ throw new RangeError(iri.value);
57
83
  }
58
- }
59
- return thisMintingStrategy.altLazy(() => this.nodeKinds.has("BlankNode") ? Maybe.of("blankNode") : Maybe.empty());
84
+ });
85
+ }
86
+ get label() {
87
+ return List.head(this.labels);
60
88
  }
61
89
  get mutable() {
62
90
  return this.generatedShaclmateNodeShape.mutable;
63
91
  }
64
- get nodeKinds() {
65
- const thisNodeKinds = new Set([...this.constraints.nodeKinds.orDefault(new Set())].filter((nodeKind) => nodeKind !== "Literal"));
66
- const parentNodeKinds = new Set();
67
- for (const parentNodeShape of this.parentNodeShapes) {
68
- for (const parentNodeKind of parentNodeShape.nodeKinds) {
69
- parentNodeKinds.add(parentNodeKind);
70
- }
71
- }
72
- if (thisNodeKinds.size === 0 && parentNodeKinds.size > 0) {
73
- // No node kinds on this shape, use the parent's
74
- return parentNodeKinds;
75
- }
76
- if (thisNodeKinds.size > 0 && parentNodeKinds.size > 0) {
77
- // Node kinds on this shape and the parent's shape
78
- // This node kinds must be a subset of parent node kinds.
79
- for (const thisNodeKind of thisNodeKinds) {
80
- if (!parentNodeKinds.has(thisNodeKind)) {
81
- throw new Error(`${this} has a nodeKind ${thisNodeKind} that is not in its parent's node kinds`);
82
- }
83
- }
84
- }
85
- if (thisNodeKinds.size === 0) {
86
- // Default: both node kinds
87
- thisNodeKinds.add("BlankNode");
88
- thisNodeKinds.add("NamedNode");
89
- }
90
- return thisNodeKinds;
91
- }
92
92
  get parentNodeShapes() {
93
- return this.isClass
94
- ? this.parentClassIris.flatMap((classIri) => this.shapesGraph.nodeShapeByIdentifier(classIri).toList())
95
- : [];
93
+ return Either.sequence(this.parentClassIris
94
+ .filter((classIri) => !classIri.equals(rdf.List))
95
+ .map((classIri) => this.shapesGraph.nodeShapeByIdentifier(classIri)));
96
96
  }
97
97
  get rdfType() {
98
- // Check for an explicit shaclmate:rdfType
99
- const rdfType = this.generatedShaclmateNodeShape.rdfType;
100
- if (rdfType.isJust()) {
101
- return rdfType;
102
- }
103
- // No explicit shaclmate:rdfType
104
- // If the shape is a class, not abstract, and identified by an IRI then use the shape IRI as the fromRdfType.
105
- if (!this.abstract.orDefault(false) &&
106
- this.isClass &&
107
- this.identifier.termType === "NamedNode") {
108
- return Maybe.of(this.identifier);
109
- }
110
- return Maybe.empty();
98
+ return this.generatedShaclmateNodeShape.rdfType;
111
99
  }
112
100
  get shaclmateName() {
113
101
  return this.generatedShaclmateNodeShape.name;
@@ -116,14 +104,13 @@ export class NodeShape extends ShaclCoreNodeShape {
116
104
  return this.generatedShaclmateNodeShape.toRdfTypes;
117
105
  }
118
106
  get tsFeatures() {
119
- return tsFeatures(this.generatedShaclmateNodeShape).altLazy(() => this.isDefinedBy.chain((ontology) => ontology.tsFeatures));
107
+ return tsFeatures(this.generatedShaclmateNodeShape);
120
108
  }
121
109
  get tsImports() {
122
110
  return this.generatedShaclmateNodeShape.tsImports;
123
111
  }
124
112
  get tsObjectDeclarationType() {
125
- return this.generatedShaclmateNodeShape.tsObjectDeclarationType
126
- .map((iri) => {
113
+ return this.generatedShaclmateNodeShape.tsObjectDeclarationType.map((iri) => {
127
114
  switch (iri.value) {
128
115
  case "http://purl.org/shaclmate/ontology#_TsObjectDeclarationType_Class":
129
116
  return "class";
@@ -132,20 +119,40 @@ export class NodeShape extends ShaclCoreNodeShape {
132
119
  default:
133
120
  throw new RangeError(iri.value);
134
121
  }
135
- })
136
- .altLazy(() => this.isDefinedBy.chain((ontology) => ontology.tsObjectDeclarationType));
137
- }
138
- get _mintingStrategy() {
139
- return this.generatedShaclmateNodeShape.identifierMintingStrategy.map((iri) => {
140
- switch (iri.value) {
141
- case "http://purl.org/shaclmate/ontology#_IdentifierMintingStrategy_BlankNode":
142
- return "blankNode";
143
- case "http://purl.org/shaclmate/ontology#_IdentifierMintingStrategy_SHA256":
144
- return "sha256";
145
- case "http://purl.org/shaclmate/ontology#_IdentifierMintingStrategy_UUIDv4":
146
- return "uuidv4";
147
- }
148
122
  });
149
123
  }
150
124
  }
125
+ __decorate([
126
+ Memoize()
127
+ ], NodeShape.prototype, "ancestorNodeShapes", null);
128
+ __decorate([
129
+ Memoize()
130
+ ], NodeShape.prototype, "childNodeShapes", null);
131
+ __decorate([
132
+ Memoize()
133
+ ], NodeShape.prototype, "comment", null);
134
+ __decorate([
135
+ Memoize()
136
+ ], NodeShape.prototype, "descendantNodeShapes", null);
137
+ __decorate([
138
+ Memoize()
139
+ ], NodeShape.prototype, "identifierIn", null);
140
+ __decorate([
141
+ Memoize()
142
+ ], NodeShape.prototype, "identifierMintingStrategy", null);
143
+ __decorate([
144
+ Memoize()
145
+ ], NodeShape.prototype, "label", null);
146
+ __decorate([
147
+ Memoize()
148
+ ], NodeShape.prototype, "parentNodeShapes", null);
149
+ __decorate([
150
+ Memoize()
151
+ ], NodeShape.prototype, "rdfType", null);
152
+ __decorate([
153
+ Memoize()
154
+ ], NodeShape.prototype, "tsFeatures", null);
155
+ __decorate([
156
+ Memoize()
157
+ ], NodeShape.prototype, "tsObjectDeclarationType", null);
151
158
  //# sourceMappingURL=NodeShape.js.map
@@ -5,7 +5,7 @@ import type * as generated from "./generated.js";
5
5
  export declare class Ontology extends OwlOntology {
6
6
  private readonly generatedShaclmateOntology;
7
7
  constructor(generatedShaclmateOntology: generated.ShaclmateOntology);
8
- get tsFeatures(): Maybe<Set<TsFeature>>;
8
+ get tsFeatures(): Maybe<ReadonlySet<TsFeature>>;
9
9
  get tsImports(): readonly string[];
10
10
  get tsObjectDeclarationType(): Maybe<TsObjectDeclarationType>;
11
11
  }
@@ -1,4 +1,11 @@
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
+ };
1
7
  import { Ontology as OwlOntology } from "@shaclmate/shacl-ast";
8
+ import { Memoize } from "typescript-memoize";
2
9
  import { tsFeatures } from "./tsFeatures.js";
3
10
  export class Ontology extends OwlOntology {
4
11
  generatedShaclmateOntology;
@@ -25,4 +32,10 @@ export class Ontology extends OwlOntology {
25
32
  });
26
33
  }
27
34
  }
35
+ __decorate([
36
+ Memoize()
37
+ ], Ontology.prototype, "tsFeatures", null);
38
+ __decorate([
39
+ Memoize()
40
+ ], Ontology.prototype, "tsObjectDeclarationType", null);
28
41
  //# sourceMappingURL=Ontology.js.map
@@ -1,17 +1,20 @@
1
1
  import { PropertyShape as ShaclCorePropertyShape } from "@shaclmate/shacl-ast";
2
- import { Maybe } from "purify-ts";
2
+ import { Either, Maybe } from "purify-ts";
3
3
  import type { PropertyVisibility } from "../enums/index.js";
4
- import type { Shape } from "./Shape.js";
5
4
  import type * as generated from "./generated.js";
6
5
  import type { NodeShape, Ontology, PropertyGroup, ShapesGraph } from "./index.js";
6
+ import type { Shape } from "./Shape.js";
7
7
  export declare class PropertyShape extends ShaclCorePropertyShape<NodeShape, Ontology, PropertyGroup, any, Shape> {
8
8
  private readonly generatedShaclmatePropertyShape;
9
+ readonly kind = "PropertyShape";
9
10
  constructor(generatedShaclmatePropertyShape: generated.ShaclmatePropertyShape, shapesGraph: ShapesGraph);
10
- get lazy(): Maybe<boolean>;
11
+ get comment(): Maybe<string>;
12
+ get description(): Maybe<string>;
13
+ get label(): Maybe<string>;
11
14
  get mutable(): Maybe<boolean>;
15
+ get name(): Maybe<string>;
16
+ get resolve(): Either<Error, Maybe<NodeShape>>;
12
17
  get shaclmateName(): Maybe<string>;
13
- get stub(): Maybe<NodeShape>;
14
18
  get visibility(): PropertyVisibility;
15
- get widen(): Maybe<boolean>;
16
19
  }
17
20
  //# sourceMappingURL=PropertyShape.d.ts.map
@@ -1,23 +1,45 @@
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
+ };
1
7
  import { PropertyShape as ShaclCorePropertyShape } from "@shaclmate/shacl-ast";
2
- import { Maybe } from "purify-ts";
8
+ import { Either, List, Maybe } from "purify-ts";
9
+ import { Memoize } from "typescript-memoize";
3
10
  export class PropertyShape extends ShaclCorePropertyShape {
4
11
  generatedShaclmatePropertyShape;
12
+ kind = "PropertyShape";
5
13
  constructor(generatedShaclmatePropertyShape, shapesGraph) {
6
14
  super({ ...generatedShaclmatePropertyShape, uniqueLang: Maybe.empty() }, shapesGraph);
7
15
  this.generatedShaclmatePropertyShape = generatedShaclmatePropertyShape;
8
16
  }
9
- get lazy() {
10
- return this.generatedShaclmatePropertyShape.lazy;
17
+ get comment() {
18
+ return List.head(this.comments);
19
+ }
20
+ get description() {
21
+ return List.head(super.descriptions);
22
+ }
23
+ get label() {
24
+ return List.head(this.labels);
11
25
  }
12
26
  get mutable() {
13
27
  return this.generatedShaclmatePropertyShape.mutable;
14
28
  }
29
+ get name() {
30
+ return List.head(this.names);
31
+ }
32
+ get resolve() {
33
+ const identifier = this.generatedShaclmatePropertyShape.resolve.extract();
34
+ return identifier
35
+ ? this.shapesGraph
36
+ .nodeShapeByIdentifier(identifier)
37
+ .map((_) => Maybe.of(_))
38
+ : Either.of(Maybe.empty());
39
+ }
15
40
  get shaclmateName() {
16
41
  return this.generatedShaclmatePropertyShape.name;
17
42
  }
18
- get stub() {
19
- return this.generatedShaclmatePropertyShape.stub.chain((identifier) => this.shapesGraph.nodeShapeByIdentifier(identifier));
20
- }
21
43
  get visibility() {
22
44
  return this.generatedShaclmatePropertyShape.visibility
23
45
  .map((iri) => {
@@ -34,8 +56,23 @@ export class PropertyShape extends ShaclCorePropertyShape {
34
56
  })
35
57
  .orDefault("public");
36
58
  }
37
- get widen() {
38
- return this.generatedShaclmatePropertyShape.widen;
39
- }
40
59
  }
60
+ __decorate([
61
+ Memoize()
62
+ ], PropertyShape.prototype, "comment", null);
63
+ __decorate([
64
+ Memoize()
65
+ ], PropertyShape.prototype, "description", null);
66
+ __decorate([
67
+ Memoize()
68
+ ], PropertyShape.prototype, "label", null);
69
+ __decorate([
70
+ Memoize()
71
+ ], PropertyShape.prototype, "name", null);
72
+ __decorate([
73
+ Memoize()
74
+ ], PropertyShape.prototype, "resolve", null);
75
+ __decorate([
76
+ Memoize()
77
+ ], PropertyShape.prototype, "visibility", null);
41
78
  //# sourceMappingURL=PropertyShape.js.map