@shaclmate/compiler 2.0.14 → 2.0.15

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 (50) hide show
  1. package/_ShapesGraphToAstTransformer/transformNodeShapeToAstType.js +17 -4
  2. package/_ShapesGraphToAstTransformer/transformPropertyShapeToAstCompositeType.js +3 -1
  3. package/generators/ts/DateTimeType.d.ts +3 -1
  4. package/generators/ts/DateTimeType.js +9 -1
  5. package/generators/ts/Import.d.ts +0 -1
  6. package/generators/ts/Import.js +0 -5
  7. package/generators/ts/ListType.d.ts +3 -2
  8. package/generators/ts/ListType.js +17 -9
  9. package/generators/ts/ObjectType.d.ts +3 -2
  10. package/generators/ts/ObjectType.js +20 -9
  11. package/generators/ts/ObjectUnionType.d.ts +1 -1
  12. package/generators/ts/ObjectUnionType.js +16 -47
  13. package/generators/ts/OptionType.d.ts +3 -1
  14. package/generators/ts/OptionType.js +12 -11
  15. package/generators/ts/PrimitiveType.d.ts +2 -2
  16. package/generators/ts/PrimitiveType.js +9 -4
  17. package/generators/ts/SetType.d.ts +3 -1
  18. package/generators/ts/SetType.js +12 -8
  19. package/generators/ts/SnippetDeclarations.d.ts +11 -0
  20. package/generators/ts/SnippetDeclarations.js +215 -0
  21. package/generators/ts/TermType.d.ts +3 -1
  22. package/generators/ts/TermType.js +16 -8
  23. package/generators/ts/TsGenerator.js +15 -1
  24. package/generators/ts/Type.d.ts +15 -5
  25. package/generators/ts/Type.js +17 -0
  26. package/generators/ts/TypeFactory.js +14 -4
  27. package/generators/ts/UnionType.d.ts +2 -1
  28. package/generators/ts/UnionType.js +3 -3
  29. package/generators/ts/_ObjectType/IdentifierProperty.d.ts +4 -5
  30. package/generators/ts/_ObjectType/IdentifierProperty.js +16 -7
  31. package/generators/ts/_ObjectType/Property.d.ts +17 -3
  32. package/generators/ts/_ObjectType/Property.js +2 -1
  33. package/generators/ts/_ObjectType/ShaclProperty.d.ts +1 -0
  34. package/generators/ts/_ObjectType/ShaclProperty.js +4 -1
  35. package/generators/ts/_ObjectType/TypeDiscriminatorProperty.d.ts +3 -5
  36. package/generators/ts/_ObjectType/TypeDiscriminatorProperty.js +11 -4
  37. package/generators/ts/_ObjectType/equalsFunctionOrMethodDeclaration.js +1 -1
  38. package/generators/ts/_ObjectType/fromJsonFunctionDeclarations.js +1 -1
  39. package/generators/ts/_ObjectType/fromRdfFunctionDeclarations.js +1 -1
  40. package/generators/ts/_ObjectType/sparqlConstructQueryFunctionDeclaration.d.ts +5 -0
  41. package/generators/ts/_ObjectType/sparqlConstructQueryFunctionDeclaration.js +21 -0
  42. package/generators/ts/_ObjectType/sparqlConstructQueryStringFunctionDeclaration.d.ts +5 -0
  43. package/generators/ts/_ObjectType/sparqlConstructQueryStringFunctionDeclaration.js +20 -0
  44. package/generators/ts/_ObjectType/sparqlFunctionDeclarations.js +35 -58
  45. package/generators/ts/_ObjectType/toJsonFunctionOrMethodDeclaration.js +1 -1
  46. package/input/generated.d.ts +15 -14
  47. package/input/generated.js +20 -4
  48. package/input/tsFeatures.d.ts +1 -1
  49. package/input/tsFeatures.js +17 -13
  50. package/package.json +4 -4
@@ -818,10 +818,14 @@ export var ShaclmateOntology;
818
818
  return purify.Either.of(iri);
819
819
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash":
820
820
  return purify.Either.of(iri);
821
+ case "http://minorg.github.io/shaclmate/ns#_TsFeature_Json":
822
+ return purify.Either.of(iri);
821
823
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema":
822
824
  return purify.Either.of(iri);
823
825
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema":
824
826
  return purify.Either.of(iri);
827
+ case "http://minorg.github.io/shaclmate/ns#_TsFeature_Rdf":
828
+ return purify.Either.of(iri);
825
829
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql":
826
830
  return purify.Either.of(iri);
827
831
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson":
@@ -831,7 +835,7 @@ export var ShaclmateOntology;
831
835
  default:
832
836
  return purify.Left(new rdfjsResource.Resource.MistypedValueError({
833
837
  actualValue: iri,
834
- expectedValueType: 'rdfjs.NamedNode<"http://minorg.github.io/shaclmate/ns#_TsFeature_Create" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Equals" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToRdf">',
838
+ expectedValueType: 'rdfjs.NamedNode<"http://minorg.github.io/shaclmate/ns#_TsFeature_Create" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Equals" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Json" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Rdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToRdf">',
835
839
  focusResource: _resource,
836
840
  predicate: dataFactory.namedNode("http://minorg.github.io/shaclmate/ns#tsFeatureExclude"),
837
841
  }));
@@ -860,12 +864,16 @@ export var ShaclmateOntology;
860
864
  return purify.Either.of(iri);
861
865
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf":
862
866
  return purify.Either.of(iri);
867
+ case "http://minorg.github.io/shaclmate/ns#_TsFeature_Json":
868
+ return purify.Either.of(iri);
863
869
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash":
864
870
  return purify.Either.of(iri);
865
871
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema":
866
872
  return purify.Either.of(iri);
867
873
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema":
868
874
  return purify.Either.of(iri);
875
+ case "http://minorg.github.io/shaclmate/ns#_TsFeature_Rdf":
876
+ return purify.Either.of(iri);
869
877
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql":
870
878
  return purify.Either.of(iri);
871
879
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson":
@@ -875,7 +883,7 @@ export var ShaclmateOntology;
875
883
  default:
876
884
  return purify.Left(new rdfjsResource.Resource.MistypedValueError({
877
885
  actualValue: iri,
878
- expectedValueType: 'rdfjs.NamedNode<"http://minorg.github.io/shaclmate/ns#_TsFeature_Create" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Equals" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToRdf">',
886
+ expectedValueType: 'rdfjs.NamedNode<"http://minorg.github.io/shaclmate/ns#_TsFeature_Create" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Equals" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Json" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Rdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToRdf">',
879
887
  focusResource: _resource,
880
888
  predicate: dataFactory.namedNode("http://minorg.github.io/shaclmate/ns#tsFeatureInclude"),
881
889
  }));
@@ -1178,10 +1186,14 @@ export var ShaclmateNodeShape;
1178
1186
  return purify.Either.of(iri);
1179
1187
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash":
1180
1188
  return purify.Either.of(iri);
1189
+ case "http://minorg.github.io/shaclmate/ns#_TsFeature_Json":
1190
+ return purify.Either.of(iri);
1181
1191
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema":
1182
1192
  return purify.Either.of(iri);
1183
1193
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema":
1184
1194
  return purify.Either.of(iri);
1195
+ case "http://minorg.github.io/shaclmate/ns#_TsFeature_Rdf":
1196
+ return purify.Either.of(iri);
1185
1197
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql":
1186
1198
  return purify.Either.of(iri);
1187
1199
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson":
@@ -1191,7 +1203,7 @@ export var ShaclmateNodeShape;
1191
1203
  default:
1192
1204
  return purify.Left(new rdfjsResource.Resource.MistypedValueError({
1193
1205
  actualValue: iri,
1194
- expectedValueType: 'rdfjs.NamedNode<"http://minorg.github.io/shaclmate/ns#_TsFeature_Create" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Equals" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToRdf">',
1206
+ expectedValueType: 'rdfjs.NamedNode<"http://minorg.github.io/shaclmate/ns#_TsFeature_Create" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Equals" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Json" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Rdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToRdf">',
1195
1207
  focusResource: _resource,
1196
1208
  predicate: dataFactory.namedNode("http://minorg.github.io/shaclmate/ns#tsFeatureExclude"),
1197
1209
  }));
@@ -1220,12 +1232,16 @@ export var ShaclmateNodeShape;
1220
1232
  return purify.Either.of(iri);
1221
1233
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf":
1222
1234
  return purify.Either.of(iri);
1235
+ case "http://minorg.github.io/shaclmate/ns#_TsFeature_Json":
1236
+ return purify.Either.of(iri);
1223
1237
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash":
1224
1238
  return purify.Either.of(iri);
1225
1239
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema":
1226
1240
  return purify.Either.of(iri);
1227
1241
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema":
1228
1242
  return purify.Either.of(iri);
1243
+ case "http://minorg.github.io/shaclmate/ns#_TsFeature_Rdf":
1244
+ return purify.Either.of(iri);
1229
1245
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql":
1230
1246
  return purify.Either.of(iri);
1231
1247
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson":
@@ -1235,7 +1251,7 @@ export var ShaclmateNodeShape;
1235
1251
  default:
1236
1252
  return purify.Left(new rdfjsResource.Resource.MistypedValueError({
1237
1253
  actualValue: iri,
1238
- expectedValueType: 'rdfjs.NamedNode<"http://minorg.github.io/shaclmate/ns#_TsFeature_Create" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Equals" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToRdf">',
1254
+ expectedValueType: 'rdfjs.NamedNode<"http://minorg.github.io/shaclmate/ns#_TsFeature_Create" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Equals" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Json" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Rdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToRdf">',
1239
1255
  focusResource: _resource,
1240
1256
  predicate: dataFactory.namedNode("http://minorg.github.io/shaclmate/ns#tsFeatureInclude"),
1241
1257
  }));
@@ -1,7 +1,7 @@
1
1
  import type * as rdfjs from "@rdfjs/types";
2
2
  import { Maybe } from "purify-ts";
3
3
  import { TsFeature } from "../enums/index.js";
4
- type TsFeatureIri = rdfjs.NamedNode<"http://minorg.github.io/shaclmate/ns#_TsFeature_Create" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Equals" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToRdf">;
4
+ type TsFeatureIri = rdfjs.NamedNode<"http://minorg.github.io/shaclmate/ns#_TsFeature_Create" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Equals" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Json" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Rdf" | "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson" | "http://minorg.github.io/shaclmate/ns#_TsFeature_ToRdf">;
5
5
  export declare function tsFeatures(generated: {
6
6
  readonly tsFeatureExcludes: readonly TsFeatureIri[];
7
7
  readonly tsFeatureIncludes: readonly TsFeatureIri[];
@@ -1,32 +1,36 @@
1
1
  import { Maybe } from "purify-ts";
2
2
  import { TsFeature } from "../enums/index.js";
3
- function iriToTsFeature(iri) {
3
+ function iriToTsFeatures(iri) {
4
4
  switch (iri.value) {
5
5
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_Create":
6
- return "create";
6
+ return ["create"];
7
7
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_Equals":
8
- return "equals";
8
+ return ["equals"];
9
9
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_FromJson":
10
- return "fromJson";
10
+ return ["fromJson"];
11
11
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_FromRdf":
12
- return "fromRdf";
12
+ return ["fromRdf"];
13
13
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_Hash":
14
- return "hash";
14
+ return ["hash"];
15
+ case "http://minorg.github.io/shaclmate/ns#_TsFeature_Json":
16
+ return ["fromJson", "jsonSchema", "jsonUiSchema", "toJson"];
15
17
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonSchema":
16
- return "jsonSchema";
18
+ return ["jsonSchema"];
17
19
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_JsonUiSchema":
18
- return "jsonUiSchema";
20
+ return ["jsonUiSchema"];
19
21
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_Sparql":
20
- return "sparql";
22
+ return ["sparql"];
23
+ case "http://minorg.github.io/shaclmate/ns#_TsFeature_Rdf":
24
+ return ["fromRdf", "toRdf"];
21
25
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_ToJson":
22
- return "toJson";
26
+ return ["toJson"];
23
27
  case "http://minorg.github.io/shaclmate/ns#_TsFeature_ToRdf":
24
- return "toRdf";
28
+ return ["toRdf"];
25
29
  }
26
30
  }
27
31
  export function tsFeatures(generated) {
28
- const tsFeatureIncludes = generated.tsFeatureIncludes.map(iriToTsFeature);
29
- const tsFeatureExcludes = generated.tsFeatureExcludes.map(iriToTsFeature);
32
+ const tsFeatureIncludes = generated.tsFeatureIncludes.flatMap(iriToTsFeatures);
33
+ const tsFeatureExcludes = generated.tsFeatureExcludes.flatMap(iriToTsFeatures);
30
34
  if (tsFeatureIncludes.length > 0) {
31
35
  return Maybe.of(new Set(tsFeatureIncludes));
32
36
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "dependencies": {
3
- "@shaclmate/shacl-ast": "2.0.14",
3
+ "@shaclmate/shacl-ast": "2.0.15",
4
4
  "@rdfjs/prefix-map": "^0.1.2",
5
5
  "@rdfjs/term-map": "^2.0.2",
6
6
  "@rdfjs/term-set": "^2.0.3",
@@ -20,7 +20,7 @@
20
20
  "typescript-memoize": "^1.1.1"
21
21
  },
22
22
  "devDependencies": {
23
- "@shaclmate/runtime": "2.0.14",
23
+ "@shaclmate/runtime": "2.0.15",
24
24
  "oxigraph": "^0.4.0"
25
25
  },
26
26
  "files": [
@@ -56,7 +56,7 @@
56
56
  "format:write": "biome format --write",
57
57
  "format:write:unsafe": "biome format --write --unsafe",
58
58
  "rebuild": "run-s clean build",
59
- "link-dependencies": "npm link purify-ts-helpers rdfjs-resource",
59
+ "link-dependencies": "npm link rdfjs-resource",
60
60
  "lint": "biome lint",
61
61
  "lint:write": "biome lint --write",
62
62
  "lint:write:unsafe": "biome lint --write --unsafe",
@@ -73,5 +73,5 @@
73
73
  },
74
74
  "type": "module",
75
75
  "types": "index.d.ts",
76
- "version": "2.0.14"
76
+ "version": "2.0.15"
77
77
  }