@comake/skl-js-engine 0.15.5 → 0.16.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 (38) hide show
  1. package/dist/SklEngine.d.ts +4 -2
  2. package/dist/SklEngine.js +23 -27
  3. package/dist/SklEngine.js.map +1 -1
  4. package/dist/SklEngineOptions.d.ts +3 -5
  5. package/dist/index.d.ts +7 -8
  6. package/dist/index.js +7 -9
  7. package/dist/index.js.map +1 -1
  8. package/dist/storage/query-adapter/QueryAdapter.d.ts +86 -0
  9. package/dist/storage/query-adapter/QueryAdapter.js +3 -0
  10. package/dist/storage/query-adapter/QueryAdapter.js.map +1 -0
  11. package/dist/storage/query-adapter/sparql/SparqlQueryAdapter.d.ts +35 -0
  12. package/dist/storage/query-adapter/sparql/SparqlQueryAdapter.js +152 -0
  13. package/dist/storage/query-adapter/sparql/SparqlQueryAdapter.js.map +1 -0
  14. package/dist/storage/query-adapter/sparql/SparqlQueryAdapterOptions.d.ts +33 -0
  15. package/dist/storage/query-adapter/sparql/SparqlQueryAdapterOptions.js +3 -0
  16. package/dist/storage/query-adapter/sparql/SparqlQueryAdapterOptions.js.map +1 -0
  17. package/dist/storage/query-adapter/sparql/SparqlQueryBuilder.d.ts +68 -0
  18. package/dist/storage/query-adapter/sparql/SparqlQueryBuilder.js +667 -0
  19. package/dist/storage/query-adapter/sparql/SparqlQueryBuilder.js.map +1 -0
  20. package/dist/storage/query-adapter/sparql/SparqlUpdateBuilder.d.ts +38 -0
  21. package/dist/storage/query-adapter/sparql/SparqlUpdateBuilder.js +246 -0
  22. package/dist/storage/query-adapter/sparql/SparqlUpdateBuilder.js.map +1 -0
  23. package/dist/storage/query-adapter/sparql/VariableGenerator.d.ts +4 -0
  24. package/dist/storage/query-adapter/sparql/VariableGenerator.js +14 -0
  25. package/dist/storage/query-adapter/sparql/VariableGenerator.js.map +1 -0
  26. package/dist/storage/query-adapter/sparql/query-executor/InMemorySparqlQueryExecutor.d.ts +15 -0
  27. package/dist/storage/query-adapter/sparql/query-executor/InMemorySparqlQueryExecutor.js +74 -0
  28. package/dist/storage/query-adapter/sparql/query-executor/InMemorySparqlQueryExecutor.js.map +1 -0
  29. package/dist/storage/query-adapter/sparql/query-executor/SparqlEndpointQueryExecutor.d.ts +23 -0
  30. package/dist/storage/query-adapter/sparql/query-executor/SparqlEndpointQueryExecutor.js +63 -0
  31. package/dist/storage/query-adapter/sparql/query-executor/SparqlEndpointQueryExecutor.js.map +1 -0
  32. package/dist/storage/query-adapter/sparql/query-executor/SparqlQueryExecutor.d.ts +25 -0
  33. package/dist/storage/query-adapter/sparql/query-executor/SparqlQueryExecutor.js +3 -0
  34. package/dist/storage/query-adapter/sparql/query-executor/SparqlQueryExecutor.js.map +1 -0
  35. package/dist/util/SparqlUtil.d.ts +2 -2
  36. package/dist/util/SparqlUtil.js.map +1 -1
  37. package/dist/util/Types.d.ts +10 -1
  38. package/package.json +8 -3
@@ -0,0 +1,33 @@
1
+ export declare type QueryAdapterType = 'memory' | 'sparql';
2
+ interface BaseQueryAdapterOptions {
3
+ /**
4
+ * Query Adapter type. This value is required.
5
+ */
6
+ readonly type: QueryAdapterType;
7
+ /**
8
+ * Whether to set Dublic Core created and modified timestamps on saved entities. Defaults to false.
9
+ */
10
+ readonly setTimestamps?: boolean;
11
+ }
12
+ interface SparqlEndpointQueryAdapterOptions extends BaseQueryAdapterOptions {
13
+ /**
14
+ * Query Adapter type.
15
+ */
16
+ readonly type: 'sparql';
17
+ /**
18
+ * The location of the SPARQL endpoint. This value is required.
19
+ */
20
+ readonly endpointUrl: string;
21
+ /**
22
+ * The location of the SPARQL update endpoint. Defaults to the value of endpointUrl if not set.
23
+ */
24
+ readonly updateUrl?: string;
25
+ }
26
+ interface MemorySparqlQueryAdapterOptions extends BaseQueryAdapterOptions {
27
+ /**
28
+ * Query Adapter type.
29
+ */
30
+ readonly type: 'memory';
31
+ }
32
+ export declare type SparqlQueryAdapterOptions = MemorySparqlQueryAdapterOptions | SparqlEndpointQueryAdapterOptions;
33
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=SparqlQueryAdapterOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SparqlQueryAdapterOptions.js","sourceRoot":"","sources":["../../../../src/storage/query-adapter/sparql/SparqlQueryAdapterOptions.ts"],"names":[],"mappings":""}
@@ -0,0 +1,68 @@
1
+ import type { Variable } from '@rdfjs/types';
2
+ import type { Triple, OperationExpression, Ordering, ValuesPattern, Pattern, ConstructQuery } from 'sparqljs';
3
+ import type { FindOptionsOrder, FindOptionsRelations, FindOptionsSelect, FindOptionsWhere } from '../../FindOptionsTypes';
4
+ export interface NonGraphWhereQueryData {
5
+ values: ValuesPattern[];
6
+ triples: Triple[];
7
+ filters: OperationExpression[];
8
+ }
9
+ export interface WhereQueryData extends NonGraphWhereQueryData {
10
+ graphValues: ValuesPattern[];
11
+ graphTriples: Triple[];
12
+ graphFilters: OperationExpression[];
13
+ serviceTriples?: Record<string, Triple[]>;
14
+ }
15
+ export interface RelationsQueryData {
16
+ patterns: Pattern[];
17
+ selectionTriples: Triple[];
18
+ }
19
+ export interface OrderQueryData {
20
+ triples: Triple[];
21
+ filters: OperationExpression[];
22
+ orders: Ordering[];
23
+ groupByParent?: boolean;
24
+ }
25
+ export interface EntitySelectQueryData {
26
+ where: Pattern[];
27
+ orders: Ordering[];
28
+ graphWhere: Pattern[];
29
+ graphSelectionTriples: Triple[];
30
+ group?: Variable;
31
+ }
32
+ export interface SparqlQueryBuilderOptions {
33
+ where?: FindOptionsWhere;
34
+ select?: FindOptionsSelect;
35
+ order?: FindOptionsOrder;
36
+ relations?: FindOptionsRelations;
37
+ }
38
+ export declare class SparqlQueryBuilder {
39
+ private readonly variableGenerator;
40
+ constructor();
41
+ buildEntitySelectPatternsFromOptions(subject: Variable, options?: SparqlQueryBuilderOptions): EntitySelectQueryData;
42
+ buildConstructFromEntitySelectQuery(graphWhere: Pattern[], graphSelectionTriples: Triple[], select?: FindOptionsSelect): ConstructQuery;
43
+ private createWhereQueryData;
44
+ private createWhereQueryDataForField;
45
+ private createWhereQueryDataForIdValue;
46
+ private createWhereQueryDataForType;
47
+ private createWhereQueryDataFromKeyValue;
48
+ private createWhereQueryDataForFindOperator;
49
+ private pathOperatorToPropertyPath;
50
+ private createWhereQueryDataForMultipleFindOperators;
51
+ private createWhereQueryDataForNestedWhere;
52
+ private createWhereQueryDataForValueObject;
53
+ private valueObjectToTerm;
54
+ private resolveFindOperatorAsExpressionWithMultipleValues;
55
+ private resolveFindOperatorAsExpressionForId;
56
+ private resolveValueToExpression;
57
+ private buildNotOperationForMultiValued;
58
+ private buildNotOperationForId;
59
+ private resolveValueToTerm;
60
+ private createOrderQueryData;
61
+ private createOrderQueryDataForProperty;
62
+ private createRelationsQueryData;
63
+ private createRelationsQueryDataForInverseRelation;
64
+ private createRelationsQueryDataForNestedRelation;
65
+ private createVariable;
66
+ private createSelectPattern;
67
+ private createWherePatternsFromQueryData;
68
+ }