@_linked/core 2.4.0 → 2.4.1-next.20260406160450
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/lib/cjs/queries/FieldSet.js +4 -0
- package/lib/cjs/queries/FieldSet.js.map +1 -1
- package/lib/cjs/queries/QueryBuilder.d.ts +17 -5
- package/lib/cjs/queries/QueryBuilder.js +123 -66
- package/lib/cjs/queries/QueryBuilder.js.map +1 -1
- package/lib/cjs/queries/QueryBuilderSerialization.d.ts +95 -0
- package/lib/cjs/queries/QueryBuilderSerialization.js +332 -0
- package/lib/cjs/queries/QueryBuilderSerialization.js.map +1 -0
- package/lib/cjs/sparql/irToAlgebra.js +89 -16
- package/lib/cjs/sparql/irToAlgebra.js.map +1 -1
- package/lib/cjs/test-helpers/query-fixtures.d.ts +7 -0
- package/lib/cjs/test-helpers/query-fixtures.js +2 -0
- package/lib/cjs/test-helpers/query-fixtures.js.map +1 -1
- package/lib/esm/queries/FieldSet.js +4 -0
- package/lib/esm/queries/FieldSet.js.map +1 -1
- package/lib/esm/queries/QueryBuilder.d.ts +17 -5
- package/lib/esm/queries/QueryBuilder.js +123 -66
- package/lib/esm/queries/QueryBuilder.js.map +1 -1
- package/lib/esm/queries/QueryBuilderSerialization.d.ts +95 -0
- package/lib/esm/queries/QueryBuilderSerialization.js +289 -0
- package/lib/esm/queries/QueryBuilderSerialization.js.map +1 -0
- package/lib/esm/sparql/irToAlgebra.js +89 -16
- package/lib/esm/sparql/irToAlgebra.js.map +1 -1
- package/lib/esm/test-helpers/query-fixtures.d.ts +7 -0
- package/lib/esm/test-helpers/query-fixtures.js +2 -0
- package/lib/esm/test-helpers/query-fixtures.js.map +1 -1
- package/package.json +1 -1
|
@@ -6,6 +6,7 @@ import { resolveUriOrThrow } from '../utils/NodeReference.js';
|
|
|
6
6
|
import { FieldSet } from './FieldSet.js';
|
|
7
7
|
import { PendingQueryContext } from './QueryContext.js';
|
|
8
8
|
import { createProxiedPathBuilder } from './ProxiedPathBuilder.js';
|
|
9
|
+
import { serializeWherePath, serializeSortByPath, serializeRawMinusEntry, deserializeWherePath, deserializeSortByPath, deserializeRawMinusEntry, } from './QueryBuilderSerialization.js';
|
|
9
10
|
/**
|
|
10
11
|
* An immutable, fluent query builder for select queries.
|
|
11
12
|
*
|
|
@@ -37,10 +38,13 @@ export class QueryBuilder {
|
|
|
37
38
|
this._minusEntries = init.minusEntries;
|
|
38
39
|
this._nullSubject = init._nullSubject;
|
|
39
40
|
this._pendingContextName = init._pendingContextName;
|
|
41
|
+
this._where = init._where;
|
|
42
|
+
this._sortBy = init._sortBy;
|
|
43
|
+
this._rawMinusEntries = init._rawMinusEntries;
|
|
40
44
|
}
|
|
41
45
|
/** Create a shallow clone with overrides. */
|
|
42
46
|
clone(overrides = {}) {
|
|
43
|
-
return new QueryBuilder(Object.assign({ shape: this._shape, selectFn: this._selectFn, whereFn: this._whereFn, sortByFn: this._sortByFn, sortDirection: this._sortDirection, limit: this._limit, offset: this._offset, subject: this._subject, subjects: this._subjects, singleResult: this._singleResult, selectAllLabels: this._selectAllLabels, fieldSet: this._fieldSet, preloads: this._preloads, minusEntries: this._minusEntries, _nullSubject: this._nullSubject, _pendingContextName: this._pendingContextName }, overrides));
|
|
47
|
+
return new QueryBuilder(Object.assign({ shape: this._shape, selectFn: this._selectFn, whereFn: this._whereFn, sortByFn: this._sortByFn, sortDirection: this._sortDirection, limit: this._limit, offset: this._offset, subject: this._subject, subjects: this._subjects, singleResult: this._singleResult, selectAllLabels: this._selectAllLabels, fieldSet: this._fieldSet, preloads: this._preloads, minusEntries: this._minusEntries, _nullSubject: this._nullSubject, _pendingContextName: this._pendingContextName, _where: this._where, _sortBy: this._sortBy, _rawMinusEntries: this._rawMinusEntries }, overrides));
|
|
44
48
|
}
|
|
45
49
|
// ---------------------------------------------------------------------------
|
|
46
50
|
// Static constructors
|
|
@@ -201,6 +205,55 @@ export class QueryBuilder {
|
|
|
201
205
|
return undefined;
|
|
202
206
|
}
|
|
203
207
|
// ---------------------------------------------------------------------------
|
|
208
|
+
// Internal helpers
|
|
209
|
+
// ---------------------------------------------------------------------------
|
|
210
|
+
/** Return the FieldSet with preload entries merged in (if any). */
|
|
211
|
+
_fieldsWithPreloads() {
|
|
212
|
+
let fs = this.fields();
|
|
213
|
+
if (this._preloads && this._preloads.length > 0) {
|
|
214
|
+
const preloadFn = (p) => {
|
|
215
|
+
return this._preloads.map((entry) => p[entry.path].preloadFor(entry.component));
|
|
216
|
+
};
|
|
217
|
+
const preloadFs = FieldSet.for(this._shape, preloadFn);
|
|
218
|
+
if (fs) {
|
|
219
|
+
fs = FieldSet.createFromEntries(fs.shape, [
|
|
220
|
+
...fs.entries,
|
|
221
|
+
...preloadFs.entries,
|
|
222
|
+
]);
|
|
223
|
+
}
|
|
224
|
+
else {
|
|
225
|
+
fs = preloadFs;
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
return fs;
|
|
229
|
+
}
|
|
230
|
+
/** Evaluate minus entry callbacks into RawMinusEntry[] (plain data). */
|
|
231
|
+
_evaluateMinusEntries() {
|
|
232
|
+
const proxy = createProxiedPathBuilder(this._shape);
|
|
233
|
+
return this._minusEntries.map((entry) => {
|
|
234
|
+
if (entry.shapeId) {
|
|
235
|
+
return { shapeId: entry.shapeId };
|
|
236
|
+
}
|
|
237
|
+
if (entry.whereFn) {
|
|
238
|
+
const result = entry.whereFn(proxy);
|
|
239
|
+
if (Array.isArray(result)) {
|
|
240
|
+
const propertyPaths = result.map((item) => {
|
|
241
|
+
const segments = FieldSet.collectPropertySegments(item);
|
|
242
|
+
return segments.map((seg) => ({ propertyShapeId: seg.id }));
|
|
243
|
+
});
|
|
244
|
+
return { propertyPaths };
|
|
245
|
+
}
|
|
246
|
+
if (result && typeof result === 'object' && 'property' in result && 'subject' in result) {
|
|
247
|
+
const segments = FieldSet.collectPropertySegments(result);
|
|
248
|
+
return { propertyPaths: [segments.map((seg) => ({ propertyShapeId: seg.id }))] };
|
|
249
|
+
}
|
|
250
|
+
// WHERE-based exclusion
|
|
251
|
+
return { where: processWhereClause(entry.whereFn, this._shape) };
|
|
252
|
+
}
|
|
253
|
+
return {};
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
// ---------------------------------------------------------------------------
|
|
204
257
|
// Serialization
|
|
205
258
|
// ---------------------------------------------------------------------------
|
|
206
259
|
/**
|
|
@@ -210,8 +263,9 @@ export class QueryBuilder {
|
|
|
210
263
|
* string[], selectAll, or callback). Callback-based selections are eagerly
|
|
211
264
|
* evaluated through the proxy to produce a FieldSet.
|
|
212
265
|
*
|
|
213
|
-
*
|
|
214
|
-
*
|
|
266
|
+
* Where, orderBy, and minus clauses are evaluated through the proxy and
|
|
267
|
+
* serialized as plain data structures. Preloads are merged into the FieldSet
|
|
268
|
+
* as subSelect entries, producing identical IR on deserialization.
|
|
215
269
|
*/
|
|
216
270
|
toJSON() {
|
|
217
271
|
var _a;
|
|
@@ -219,9 +273,7 @@ export class QueryBuilder {
|
|
|
219
273
|
const json = {
|
|
220
274
|
shape: shapeId,
|
|
221
275
|
};
|
|
222
|
-
|
|
223
|
-
// no separate branch is needed (T1: dead else-if removed).
|
|
224
|
-
const fs = this.fields();
|
|
276
|
+
const fs = this._fieldsWithPreloads();
|
|
225
277
|
if (fs) {
|
|
226
278
|
json.fields = fs.toJSON().fields;
|
|
227
279
|
}
|
|
@@ -243,6 +295,30 @@ export class QueryBuilder {
|
|
|
243
295
|
if (this._sortDirection) {
|
|
244
296
|
json.orderDirection = this._sortDirection;
|
|
245
297
|
}
|
|
298
|
+
if (this._whereFn) {
|
|
299
|
+
json.where = serializeWherePath(processWhereClause(this._whereFn, this._shape));
|
|
300
|
+
}
|
|
301
|
+
else if (this._where) {
|
|
302
|
+
json.where = serializeWherePath(this._where);
|
|
303
|
+
}
|
|
304
|
+
if (this._sortByFn) {
|
|
305
|
+
json.sortBy = serializeSortByPath(evaluateSortCallback(this._shape, this._sortByFn, this._sortDirection || 'ASC'));
|
|
306
|
+
}
|
|
307
|
+
else if (this._sortBy) {
|
|
308
|
+
json.sortBy = serializeSortByPath(this._sortBy);
|
|
309
|
+
}
|
|
310
|
+
if (this._minusEntries && this._minusEntries.length > 0) {
|
|
311
|
+
json.minusEntries = this._evaluateMinusEntries().map(serializeRawMinusEntry);
|
|
312
|
+
}
|
|
313
|
+
else if (this._rawMinusEntries && this._rawMinusEntries.length > 0) {
|
|
314
|
+
json.minusEntries = this._rawMinusEntries.map(serializeRawMinusEntry);
|
|
315
|
+
}
|
|
316
|
+
if (this._nullSubject) {
|
|
317
|
+
json.nullSubject = true;
|
|
318
|
+
}
|
|
319
|
+
if (this._pendingContextName) {
|
|
320
|
+
json.pendingContextName = this._pendingContextName;
|
|
321
|
+
}
|
|
246
322
|
return json;
|
|
247
323
|
}
|
|
248
324
|
/**
|
|
@@ -273,12 +349,35 @@ export class QueryBuilder {
|
|
|
273
349
|
if (json.singleResult && !json.subject) {
|
|
274
350
|
builder = builder.one();
|
|
275
351
|
}
|
|
276
|
-
// Restore
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
352
|
+
// Restore pre-evaluated data via clone — safe because fromJSON is in the same class.
|
|
353
|
+
const overrides = {};
|
|
354
|
+
const nodeShape = builder._shape.shape;
|
|
355
|
+
// Restore where clause
|
|
356
|
+
if (json.where && nodeShape) {
|
|
357
|
+
overrides._where = deserializeWherePath(nodeShape, json.where);
|
|
358
|
+
}
|
|
359
|
+
// Restore sort key + direction
|
|
360
|
+
if (json.sortBy && nodeShape) {
|
|
361
|
+
overrides._sortBy = deserializeSortByPath(nodeShape, json.sortBy);
|
|
362
|
+
overrides.sortDirection = json.sortBy.direction;
|
|
363
|
+
}
|
|
364
|
+
else if (json.orderDirection) {
|
|
365
|
+
overrides.sortDirection = json.orderDirection;
|
|
366
|
+
}
|
|
367
|
+
// Restore minus entries
|
|
368
|
+
if (json.minusEntries && json.minusEntries.length > 0 && nodeShape) {
|
|
369
|
+
overrides._rawMinusEntries = json.minusEntries.map((e) => deserializeRawMinusEntry(nodeShape, e));
|
|
370
|
+
}
|
|
371
|
+
// Restore nullSubject flag
|
|
372
|
+
if (json.nullSubject) {
|
|
373
|
+
overrides._nullSubject = true;
|
|
374
|
+
}
|
|
375
|
+
// Restore pending context name
|
|
376
|
+
if (json.pendingContextName) {
|
|
377
|
+
overrides._pendingContextName = json.pendingContextName;
|
|
378
|
+
}
|
|
379
|
+
if (Object.keys(overrides).length > 0) {
|
|
380
|
+
builder = builder.clone(overrides);
|
|
282
381
|
}
|
|
283
382
|
return builder;
|
|
284
383
|
}
|
|
@@ -293,42 +392,24 @@ export class QueryBuilder {
|
|
|
293
392
|
toRawInput() {
|
|
294
393
|
return this._buildDirectRawInput();
|
|
295
394
|
}
|
|
296
|
-
/**
|
|
297
|
-
* Build RawSelectInput directly from FieldSet entries.
|
|
298
|
-
*/
|
|
395
|
+
/** Build RawSelectInput directly from FieldSet entries. */
|
|
299
396
|
_buildDirectRawInput() {
|
|
300
|
-
|
|
301
|
-
// When preloads exist, trace them through the proxy and merge with the FieldSet.
|
|
302
|
-
if (this._preloads && this._preloads.length > 0) {
|
|
303
|
-
const preloadFn = (p) => {
|
|
304
|
-
const results = [];
|
|
305
|
-
for (const entry of this._preloads) {
|
|
306
|
-
results.push(p[entry.path].preloadFor(entry.component));
|
|
307
|
-
}
|
|
308
|
-
return results;
|
|
309
|
-
};
|
|
310
|
-
const preloadFs = FieldSet.for(this._shape, preloadFn);
|
|
311
|
-
if (fs) {
|
|
312
|
-
fs = FieldSet.createFromEntries(fs.shape, [
|
|
313
|
-
...fs.entries,
|
|
314
|
-
...preloadFs.entries,
|
|
315
|
-
]);
|
|
316
|
-
}
|
|
317
|
-
else {
|
|
318
|
-
fs = preloadFs;
|
|
319
|
-
}
|
|
320
|
-
}
|
|
397
|
+
const fs = this._fieldsWithPreloads();
|
|
321
398
|
const entries = fs ? fs.entries : [];
|
|
322
|
-
// Evaluate where callback
|
|
323
399
|
let where;
|
|
324
400
|
if (this._whereFn) {
|
|
325
401
|
where = processWhereClause(this._whereFn, this._shape);
|
|
326
402
|
}
|
|
327
|
-
|
|
403
|
+
else if (this._where) {
|
|
404
|
+
where = this._where;
|
|
405
|
+
}
|
|
328
406
|
let sortBy;
|
|
329
407
|
if (this._sortByFn) {
|
|
330
408
|
sortBy = evaluateSortCallback(this._shape, this._sortByFn, this._sortDirection || 'ASC');
|
|
331
409
|
}
|
|
410
|
+
else if (this._sortBy) {
|
|
411
|
+
sortBy = this._sortBy;
|
|
412
|
+
}
|
|
332
413
|
const input = {
|
|
333
414
|
entries,
|
|
334
415
|
subject: this._subject,
|
|
@@ -347,35 +428,11 @@ export class QueryBuilder {
|
|
|
347
428
|
if (this._subjects && this._subjects.length > 0) {
|
|
348
429
|
input.subjects = this._subjects;
|
|
349
430
|
}
|
|
350
|
-
// Process minus entries → convert callbacks to WherePaths or property paths
|
|
351
431
|
if (this._minusEntries && this._minusEntries.length > 0) {
|
|
352
|
-
input.minusEntries = this.
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
if (entry.whereFn) {
|
|
357
|
-
// Call the callback through the proxy and inspect the result type
|
|
358
|
-
const proxy = createProxiedPathBuilder(this._shape);
|
|
359
|
-
const result = entry.whereFn(proxy);
|
|
360
|
-
// Array of QBOs → property existence paths
|
|
361
|
-
if (Array.isArray(result)) {
|
|
362
|
-
const propertyPaths = result.map((item) => {
|
|
363
|
-
const segments = FieldSet.collectPropertySegments(item);
|
|
364
|
-
return segments.map((seg) => ({ propertyShapeId: seg.id }));
|
|
365
|
-
});
|
|
366
|
-
return { propertyPaths };
|
|
367
|
-
}
|
|
368
|
-
// Single QBO (has .property field) → single property existence path
|
|
369
|
-
if (result && typeof result === 'object' && 'property' in result && 'subject' in result) {
|
|
370
|
-
const segments = FieldSet.collectPropertySegments(result);
|
|
371
|
-
const propertyPaths = [segments.map((seg) => ({ propertyShapeId: seg.id }))];
|
|
372
|
-
return { propertyPaths };
|
|
373
|
-
}
|
|
374
|
-
// Evaluation → existing WHERE-based path
|
|
375
|
-
return { where: processWhereClause(entry.whereFn, this._shape) };
|
|
376
|
-
}
|
|
377
|
-
return {};
|
|
378
|
-
});
|
|
432
|
+
input.minusEntries = this._evaluateMinusEntries();
|
|
433
|
+
}
|
|
434
|
+
else if (this._rawMinusEntries && this._rawMinusEntries.length > 0) {
|
|
435
|
+
input.minusEntries = this._rawMinusEntries;
|
|
379
436
|
}
|
|
380
437
|
return input;
|
|
381
438
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryBuilder.js","sourceRoot":"","sources":["../../../src/queries/QueryBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"QueryBuilder.js","sourceRoot":"","sources":["../../../src/queries/QueryBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Serialization and deserialization helpers for QueryBuilder fields that contain
|
|
3
|
+
* live object references (PropertyShape, ExpressionNode, etc.).
|
|
4
|
+
*
|
|
5
|
+
* These convert between runtime WherePath / SortByPath / RawMinusEntry structures
|
|
6
|
+
* and plain JSON-safe representations that can round-trip through JSON.stringify/parse.
|
|
7
|
+
*/
|
|
8
|
+
import type { NodeShape } from '../shapes/SHACL.js';
|
|
9
|
+
import type { WherePath, QueryPropertyPath, SortByPath } from './SelectQuery.js';
|
|
10
|
+
import type { IRExpression } from './IntermediateRepresentation.js';
|
|
11
|
+
import type { RawMinusEntry } from './IRDesugar.js';
|
|
12
|
+
export type QueryStepJSON = {
|
|
13
|
+
kind: 'property';
|
|
14
|
+
label: string;
|
|
15
|
+
where?: WherePathJSON;
|
|
16
|
+
} | {
|
|
17
|
+
kind: 'size';
|
|
18
|
+
count: QueryStepJSON[];
|
|
19
|
+
label?: string;
|
|
20
|
+
} | {
|
|
21
|
+
kind: 'shapeRef';
|
|
22
|
+
id: string;
|
|
23
|
+
shapeId: string;
|
|
24
|
+
};
|
|
25
|
+
export type ExistsConditionJSON = {
|
|
26
|
+
kind: 'exists';
|
|
27
|
+
pathSegmentIds: string[];
|
|
28
|
+
predicate: {
|
|
29
|
+
ir: IRExpression;
|
|
30
|
+
refs?: Record<string, string[]>;
|
|
31
|
+
};
|
|
32
|
+
negated: boolean;
|
|
33
|
+
chain: {
|
|
34
|
+
op: 'and' | 'or';
|
|
35
|
+
condition: ExistsConditionJSON | {
|
|
36
|
+
kind: 'expression';
|
|
37
|
+
ir: IRExpression;
|
|
38
|
+
refs?: Record<string, string[]>;
|
|
39
|
+
};
|
|
40
|
+
}[];
|
|
41
|
+
};
|
|
42
|
+
export type WherePathJSON = {
|
|
43
|
+
kind: 'evaluation';
|
|
44
|
+
path: QueryStepJSON[];
|
|
45
|
+
method: string;
|
|
46
|
+
args: QueryArgJSON[];
|
|
47
|
+
} | {
|
|
48
|
+
kind: 'andOr';
|
|
49
|
+
firstPath: WherePathJSON;
|
|
50
|
+
andOr: {
|
|
51
|
+
and?: WherePathJSON;
|
|
52
|
+
or?: WherePathJSON;
|
|
53
|
+
}[];
|
|
54
|
+
} | {
|
|
55
|
+
kind: 'expression';
|
|
56
|
+
ir: IRExpression;
|
|
57
|
+
refs?: Record<string, string[]>;
|
|
58
|
+
} | ExistsConditionJSON;
|
|
59
|
+
export type QueryArgJSON = {
|
|
60
|
+
kind: 'nodeRef';
|
|
61
|
+
id: string;
|
|
62
|
+
} | {
|
|
63
|
+
kind: 'primitive';
|
|
64
|
+
value: string | number | boolean;
|
|
65
|
+
} | {
|
|
66
|
+
kind: 'date';
|
|
67
|
+
value: string;
|
|
68
|
+
} | {
|
|
69
|
+
kind: 'argPath';
|
|
70
|
+
path: QueryStepJSON[];
|
|
71
|
+
subject: {
|
|
72
|
+
id: string;
|
|
73
|
+
shapeId: string;
|
|
74
|
+
};
|
|
75
|
+
} | {
|
|
76
|
+
kind: 'where';
|
|
77
|
+
where: WherePathJSON;
|
|
78
|
+
};
|
|
79
|
+
export type SortByPathJSON = {
|
|
80
|
+
paths: string[];
|
|
81
|
+
direction: 'ASC' | 'DESC';
|
|
82
|
+
};
|
|
83
|
+
export type RawMinusEntryJSON = {
|
|
84
|
+
shapeId?: string;
|
|
85
|
+
where?: WherePathJSON;
|
|
86
|
+
propertyPaths?: string[][];
|
|
87
|
+
};
|
|
88
|
+
export declare function serializeQueryPropertyPath(path: QueryPropertyPath): QueryStepJSON[];
|
|
89
|
+
export declare function serializeWherePath(where: WherePath): WherePathJSON;
|
|
90
|
+
export declare function serializeSortByPath(sort: SortByPath): SortByPathJSON;
|
|
91
|
+
export declare function serializeRawMinusEntry(entry: RawMinusEntry): RawMinusEntryJSON;
|
|
92
|
+
export declare function deserializeQueryPropertyPath(shape: NodeShape, steps: QueryStepJSON[]): QueryPropertyPath;
|
|
93
|
+
export declare function deserializeWherePath(shape: NodeShape, json: WherePathJSON): WherePath;
|
|
94
|
+
export declare function deserializeSortByPath(shape: NodeShape, json: SortByPathJSON): SortByPath;
|
|
95
|
+
export declare function deserializeRawMinusEntry(shape: NodeShape, json: RawMinusEntryJSON): RawMinusEntry;
|