@lde/search-pipeline 0.13.0 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/search-index-writer.d.ts +1 -1
- package/dist/search-index-writer.d.ts.map +1 -1
- package/dist/search-index-writer.js +1 -1
- package/dist/search-indexer-pipeline.d.ts +7 -3
- package/dist/search-indexer-pipeline.d.ts.map +1 -1
- package/dist/search-indexer-pipeline.js +2 -1
- package/package.json +3 -3
|
@@ -23,7 +23,7 @@ export interface SearchIndexWriterOptions {
|
|
|
23
23
|
* own collection, alias and cross-pod lock. The per-collection fan-out is this
|
|
24
24
|
* writer’s job.
|
|
25
25
|
*/
|
|
26
|
-
writerFor: (searchType: RootType) => Writer<SearchDocument>;
|
|
26
|
+
writerFor: (searchType: RootType, schema: SearchSchema) => Writer<SearchDocument>;
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
29
|
* The single terminal of a search-indexing pipeline: an engine-agnostic router
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-index-writer.d.ts","sourceRoot":"","sources":["../src/search-index-writer.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,KAAK,MAAM,EACZ,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,6CAA6C;AAC7C,MAAM,WAAW,wBAAwB;IACvC;;;;;OAKG;IACH,MAAM,EAAE,YAAY,CAAC;IACrB;;;;;;;;;;;;OAYG;IACH,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"search-index-writer.d.ts","sourceRoot":"","sources":["../src/search-index-writer.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,KAAK,MAAM,EACZ,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,6CAA6C;AAC7C,MAAM,WAAW,wBAAwB;IACvC;;;;;OAKG;IACH,MAAM,EAAE,YAAY,CAAC;IACrB;;;;;;;;;;;;OAYG;IACH,SAAS,EAAE,CACT,UAAU,EAAE,QAAQ,EACpB,MAAM,EAAE,YAAY,KACjB,MAAM,CAAC,cAAc,CAAC,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,wBAAwB,GAChC,MAAM,CAAC,mBAAmB,CAAC,CAoI7B"}
|
|
@@ -36,7 +36,7 @@ export function searchIndexWriter(options) {
|
|
|
36
36
|
// by the type IRI, which is also how a paired document names its type.
|
|
37
37
|
const writers = new Map([...schema.values()].map((searchType) => [
|
|
38
38
|
searchType.class,
|
|
39
|
-
writerFor(searchType),
|
|
39
|
+
writerFor(searchType, schema),
|
|
40
40
|
]));
|
|
41
41
|
return {
|
|
42
42
|
async openRun(context) {
|
|
@@ -29,9 +29,12 @@ export interface SearchIndexerPipelineOptions {
|
|
|
29
29
|
/**
|
|
30
30
|
* The engine writer that owns a given root type’s collection – e.g. a
|
|
31
31
|
* `@lde/search-typesense` `InPlaceRebuild` or `BlueGreenRebuild` bound to
|
|
32
|
-
* that type. Called once per {@link RootType} in the schema
|
|
32
|
+
* that type. Called once per {@link RootType} in the schema, with the schema
|
|
33
|
+
* itself: an engine that stores a surfaced inline reference as a nested
|
|
34
|
+
* document needs it to declare the nesting, and it is the pipeline that holds
|
|
35
|
+
* it.
|
|
33
36
|
*/
|
|
34
|
-
writerFor: (searchType: RootType) => Writer<SearchDocument>;
|
|
37
|
+
writerFor: (searchType: RootType, schema: SearchSchema) => Writer<SearchDocument>;
|
|
35
38
|
/**
|
|
36
39
|
* Optional per-dataset processing memory: skip a dataset whose source
|
|
37
40
|
* fingerprint and {@link pipelineVersion} both match the stored record.
|
|
@@ -71,7 +74,8 @@ export interface SearchIndexerPipelineOptions {
|
|
|
71
74
|
* ...createQlever({ mode: 'docker', image: 'adfreiburg/qlever:latest' }),
|
|
72
75
|
* strategy: 'import',
|
|
73
76
|
* }),
|
|
74
|
-
* writerFor: (searchType) =>
|
|
77
|
+
* writerFor: (searchType, schema) =>
|
|
78
|
+
* new InPlaceRebuild(typesenseClient, searchType, { schema }),
|
|
75
79
|
* });
|
|
76
80
|
* await pipeline.run();
|
|
77
81
|
* ```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-indexer-pipeline.d.ts","sourceRoot":"","sources":["../src/search-indexer-pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAEL,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,MAAM,EACZ,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,iDAAiD;AACjD,MAAM,WAAW,4BAA4B;IAC3C;;;;OAIG;IACH,MAAM,EAAE,YAAY,CAAC;IACrB;;;;OAIG;IACH,QAAQ,EAAE,OAAO,EAAE,GAAG,eAAe,CAAC;IACtC;;;;;;;;OAQG;IACH,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C
|
|
1
|
+
{"version":3,"file":"search-indexer-pipeline.d.ts","sourceRoot":"","sources":["../src/search-indexer-pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAEL,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,MAAM,EACZ,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,iDAAiD;AACjD,MAAM,WAAW,4BAA4B;IAC3C;;;;OAIG;IACH,MAAM,EAAE,YAAY,CAAC;IACrB;;;;OAIG;IACH,QAAQ,EAAE,OAAO,EAAE,GAAG,eAAe,CAAC;IACtC;;;;;;;;OAQG;IACH,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C;;;;;;;OAOG;IACH,SAAS,EAAE,CACT,UAAU,EAAE,QAAQ,EACpB,MAAM,EAAE,YAAY,KACjB,MAAM,CAAC,cAAc,CAAC,CAAC;IAC5B;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,gBAAgB,GAAG,SAAS,gBAAgB,EAAE,CAAC;CAC3D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,4BAA4B,GACpC,QAAQ,CAAC,mBAAmB,CAAC,CAoB/B"}
|
|
@@ -22,7 +22,8 @@ import { searchStages, selectByClass } from './search-stages.js';
|
|
|
22
22
|
* ...createQlever({ mode: 'docker', image: 'adfreiburg/qlever:latest' }),
|
|
23
23
|
* strategy: 'import',
|
|
24
24
|
* }),
|
|
25
|
-
* writerFor: (searchType) =>
|
|
25
|
+
* writerFor: (searchType, schema) =>
|
|
26
|
+
* new InPlaceRebuild(typesenseClient, searchType, { schema }),
|
|
26
27
|
* });
|
|
27
28
|
* await pipeline.run();
|
|
28
29
|
* ```
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lde/search-pipeline",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.15.0",
|
|
4
4
|
"description": "Search indexing as an @lde/pipeline instance: a Writer<Quad> that applies the @lde/search projection to extracted RDF and fans each document out to the transactional engine writer for its type's collection. Glue between the pipeline quad world and the search-engine document world; owns no projection or engine logic itself.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"url": "git+https://github.com/ldelements/lde.git",
|
|
@@ -25,14 +25,14 @@
|
|
|
25
25
|
"!**/*.tsbuildinfo"
|
|
26
26
|
],
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@lde/search": "^0.
|
|
28
|
+
"@lde/search": "^0.15.0",
|
|
29
29
|
"@traqula/generator-sparql-1-1": "^1.1.8",
|
|
30
30
|
"@traqula/parser-sparql-1-1": "^1.1.5",
|
|
31
31
|
"@traqula/rules-sparql-1-1": "^1.1.0",
|
|
32
32
|
"tslib": "^2.3.0"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@lde/search-typesense": "^0.
|
|
35
|
+
"@lde/search-typesense": "^0.18.0",
|
|
36
36
|
"@rdfjs/types": "^2.0.1",
|
|
37
37
|
"n3": "^2.1.1",
|
|
38
38
|
"testcontainers": "^12.0.3",
|