@hydrofoil/talos 0.3.12 → 0.4.3

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 CHANGED
@@ -1,5 +1,45 @@
1
1
  # @hydrofoil/talos
2
2
 
3
+ ## 0.4.3
4
+
5
+ ### Patch Changes
6
+
7
+ - 804bd2e: Per-resource option to merge with existing resource graph
8
+
9
+ ## 0.4.2
10
+
11
+ ### Patch Changes
12
+
13
+ - f6ffb3c: build(deps): bump @tpluscode/sparql-builder from 0.3.14 to 0.3.18
14
+ - Updated dependencies [d1fe287]
15
+ - Updated dependencies [f6ffb3c]
16
+ - Updated dependencies [d289cd9]
17
+ - Updated dependencies [4ecd90a]
18
+ - @hydrofoil/knossos@0.6.0
19
+
20
+ ## 0.4.1
21
+
22
+ ### Patch Changes
23
+
24
+ - fadb644: build(deps): bump sparql-http-client from 2.2.3 to 2.4.0
25
+ - 1692ad1: build(deps): bump @tpluscode/rdf-ns-builders from 1.0.0 to 1.1.0
26
+ - Updated dependencies [fdc6d68]
27
+ - Updated dependencies [fadb644]
28
+ - Updated dependencies [ff74df9]
29
+ - Updated dependencies [1692ad1]
30
+ - @hydrofoil/knossos@0.5.2
31
+
32
+ ## 0.4.0
33
+
34
+ ### Minor Changes
35
+
36
+ - c226b3b: Update @hydrofoil/vocabularies
37
+
38
+ ### Patch Changes
39
+
40
+ - Updated dependencies [c226b3b]
41
+ - @hydrofoil/knossos@0.5.0
42
+
3
43
  ## 0.3.12
4
44
 
5
45
  ### Patch Changes
package/lib/bootstrap.js CHANGED
@@ -13,6 +13,7 @@ const store_1 = require("@hydrofoil/knossos/lib/store");
13
13
  const strict_1 = require("@tpluscode/rdf-ns-builders/strict");
14
14
  const fileStream_1 = require("./fileStream");
15
15
  const log_1 = require("./log");
16
+ const prefixHandler_1 = require("./prefixHandler");
16
17
  async function bootstrap({ api, apiUri, cwd, ...options }) {
17
18
  const store = new store_1.ResourcePerGraphStore(new sparql_http_client_1.default(options));
18
19
  for await (const file of (0, walk_1.default)(cwd)) {
@@ -27,6 +28,10 @@ async function bootstrap({ api, apiUri, cwd, ...options }) {
27
28
  if (!parserStream) {
28
29
  continue;
29
30
  }
31
+ const resourceOptions = {
32
+ existingResource: 'overwrite',
33
+ };
34
+ parserStream.on('prefix', (0, prefixHandler_1.optionsFromPrefixes)(resourceOptions));
30
35
  const dataset = rdf_ext_1.default.dataset();
31
36
  try {
32
37
  for await (const quad of parserStream) {
@@ -41,7 +46,14 @@ async function bootstrap({ api, apiUri, cwd, ...options }) {
41
46
  .namedNode(url)
42
47
  .addOut(strict_1.hydra.apiDocumentation, apiUri);
43
48
  if (await store.exists(pointer.term)) {
44
- (0, log_1.log)(`Replacing resource ${url}`);
49
+ if (resourceOptions.existingResource === 'overwrite') {
50
+ (0, log_1.log)(`Replacing resource ${url}`);
51
+ }
52
+ else {
53
+ (0, log_1.log)(`Merging existing resource ${url}`);
54
+ const current = await store.load(pointer.term);
55
+ pointer.dataset.addAll(current.dataset);
56
+ }
45
57
  }
46
58
  else {
47
59
  (0, log_1.log)(`Creating resource ${url}`);
@@ -50,4 +62,4 @@ async function bootstrap({ api, apiUri, cwd, ...options }) {
50
62
  }
51
63
  }
52
64
  exports.bootstrap = bootstrap;
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYm9vdHN0cmFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGdEQUF1QjtBQUV2QiwrREFBc0M7QUFDdEMsNEVBQXNFO0FBQ3RFLHNEQUEwQjtBQUMxQiwwREFBaUM7QUFDakMsd0RBQW9FO0FBQ3BFLDhEQUF5RDtBQUN6RCw2Q0FBK0M7QUFDL0MsK0JBQTJCO0FBUXBCLEtBQUssVUFBVSxTQUFTLENBQUMsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLE9BQU8sRUFBVztJQUN2RSxNQUFNLEtBQUssR0FBRyxJQUFJLDZCQUFxQixDQUFDLElBQUksNEJBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFBO0lBRWxFLElBQUksS0FBSyxFQUFFLE1BQU0sSUFBSSxJQUFJLElBQUEsY0FBSSxFQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ2xDLE1BQU0sUUFBUSxHQUFHLGNBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFBO1FBQ3pDLE1BQU0sWUFBWSxHQUFHLGNBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQzthQUMxQyxPQUFPLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQzthQUN2QixPQUFPLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFBO1FBRTNCLE1BQU0sR0FBRyxHQUFHLFlBQVksS0FBSyxFQUFFO1lBQzdCLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDO1lBQ2hCLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUMsQ0FBQTtRQUV2QyxNQUFNLFlBQVksR0FBRyxJQUFBLDZCQUFnQixFQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFBO1FBQzFELElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDakIsU0FBUTtTQUNUO1FBRUQsTUFBTSxPQUFPLEdBQWdCLGlCQUFJLENBQUMsT0FBTyxFQUFFLENBQUE7UUFDM0MsSUFBSTtZQUNGLElBQUksS0FBSyxFQUFFLE1BQU0sSUFBSSxJQUFJLFlBQVksRUFBRTtnQkFDckMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQTthQUNsQjtTQUNGO1FBQUMsT0FBTyxDQUFNLEVBQUU7WUFDZixJQUFBLFNBQUcsRUFBQyx3QkFBd0IsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1lBQ2xELFNBQVE7U0FDVDtRQUVELE1BQU0sT0FBTyxHQUFHLElBQUEsbUJBQVMsRUFBQyxFQUFFLE9BQU8sRUFBRSxDQUFDO2FBQ25DLFNBQVMsQ0FBQyxHQUFHLENBQUM7YUFDZCxNQUFNLENBQUMsY0FBSyxDQUFDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxDQUFBO1FBRXpDLElBQUksTUFBTSxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNwQyxJQUFBLFNBQUcsRUFBQyxzQkFBc0IsR0FBRyxFQUFFLENBQUMsQ0FBQTtTQUNqQzthQUFNO1lBQ0wsSUFBQSxTQUFHLEVBQUMscUJBQXFCLEdBQUcsRUFBRSxDQUFDLENBQUE7U0FDaEM7UUFFRCxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7S0FDMUI7QUFDSCxDQUFDO0FBeENELDhCQXdDQyJ9
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYm9vdHN0cmFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGdEQUF1QjtBQUV2QiwrREFBc0M7QUFDdEMsNEVBQXNFO0FBQ3RFLHNEQUEwQjtBQUMxQiwwREFBaUM7QUFDakMsd0RBQW9FO0FBQ3BFLDhEQUF5RDtBQUN6RCw2Q0FBK0M7QUFDL0MsK0JBQTJCO0FBQzNCLG1EQUFxRDtBQVk5QyxLQUFLLFVBQVUsU0FBUyxDQUFDLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxPQUFPLEVBQVc7SUFDdkUsTUFBTSxLQUFLLEdBQUcsSUFBSSw2QkFBcUIsQ0FBQyxJQUFJLDRCQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQTtJQUVsRSxJQUFJLEtBQUssRUFBRSxNQUFNLElBQUksSUFBSSxJQUFBLGNBQUksRUFBQyxHQUFHLENBQUMsRUFBRTtRQUNsQyxNQUFNLFFBQVEsR0FBRyxjQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUN6QyxNQUFNLFlBQVksR0FBRyxjQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUM7YUFDMUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7YUFDdkIsT0FBTyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUUzQixNQUFNLEdBQUcsR0FBRyxZQUFZLEtBQUssRUFBRTtZQUM3QixDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQztZQUNoQixDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDLENBQUE7UUFFdkMsTUFBTSxZQUFZLEdBQUcsSUFBQSw2QkFBZ0IsRUFBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQTtRQUMxRCxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ2pCLFNBQVE7U0FDVDtRQUVELE1BQU0sZUFBZSxHQUFvQjtZQUN2QyxnQkFBZ0IsRUFBRSxXQUFXO1NBQzlCLENBQUE7UUFDRCxZQUFZLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxJQUFBLG1DQUFtQixFQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUE7UUFDL0QsTUFBTSxPQUFPLEdBQUcsaUJBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUM5QixJQUFJO1lBQ0YsSUFBSSxLQUFLLEVBQUUsTUFBTSxJQUFJLElBQUksWUFBWSxFQUFFO2dCQUNyQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO2FBQ2xCO1NBQ0Y7UUFBQyxPQUFPLENBQU0sRUFBRTtZQUNmLElBQUEsU0FBRyxFQUFDLHdCQUF3QixFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUE7WUFDbEQsU0FBUTtTQUNUO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBQSxtQkFBUyxFQUFDLEVBQUUsT0FBTyxFQUFFLENBQUM7YUFDbkMsU0FBUyxDQUFDLEdBQUcsQ0FBQzthQUNkLE1BQU0sQ0FBQyxjQUFLLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFFekMsSUFBSSxNQUFNLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3BDLElBQUksZUFBZSxDQUFDLGdCQUFnQixLQUFLLFdBQVcsRUFBRTtnQkFDcEQsSUFBQSxTQUFHLEVBQUMsc0JBQXNCLEdBQUcsRUFBRSxDQUFDLENBQUE7YUFDakM7aUJBQU07Z0JBQ0wsSUFBQSxTQUFHLEVBQUMsNkJBQTZCLEdBQUcsRUFBRSxDQUFDLENBQUE7Z0JBQ3ZDLE1BQU0sT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7Z0JBQzlDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQTthQUN4QztTQUNGO2FBQU07WUFDTCxJQUFBLFNBQUcsRUFBQyxxQkFBcUIsR0FBRyxFQUFFLENBQUMsQ0FBQTtTQUNoQztRQUVELE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtLQUMxQjtBQUNILENBQUM7QUFsREQsOEJBa0RDIn0=
@@ -0,0 +1,2 @@
1
+ import { NamedNode } from 'rdf-js';
2
+ export declare function optionsFromPrefixes(options: Record<string, any>): (prefix: string, namespace: NamedNode) => void;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.optionsFromPrefixes = void 0;
4
+ function optionsFromPrefixes(options) {
5
+ return (prefix, namespace) => {
6
+ if (prefix === 'talos') {
7
+ const [key, value] = namespace.value.split(':');
8
+ if (key && value) {
9
+ options[key] = decodeURIComponent(value);
10
+ }
11
+ }
12
+ };
13
+ }
14
+ exports.optionsFromPrefixes = optionsFromPrefixes;
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZml4SGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInByZWZpeEhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsU0FBZ0IsbUJBQW1CLENBQUMsT0FBNEI7SUFDOUQsT0FBTyxDQUFDLE1BQWMsRUFBRSxTQUFvQixFQUFFLEVBQUU7UUFDOUMsSUFBSSxNQUFNLEtBQUssT0FBTyxFQUFFO1lBQ3RCLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7WUFDL0MsSUFBSSxHQUFHLElBQUksS0FBSyxFQUFFO2dCQUNoQixPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUE7YUFDekM7U0FDRjtJQUNILENBQUMsQ0FBQTtBQUNILENBQUM7QUFURCxrREFTQyJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hydrofoil/talos",
3
- "version": "0.3.12",
3
+ "version": "0.4.3",
4
4
  "main": "index.js",
5
5
  "bin": {
6
6
  "talos": "bin/talos.js"
@@ -15,30 +15,32 @@
15
15
  ],
16
16
  "dependencies": {
17
17
  "@fcostarodrigo/walk": "^5.0.1",
18
- "@hydrofoil/knossos": "^0.4.6",
19
- "@hydrofoil/vocabularies": "^0.2.0",
18
+ "@hydrofoil/knossos": "^0.6.0",
19
+ "@hydrofoil/vocabularies": "^0.3",
20
20
  "@rdfjs/formats-common": "^2.2.0",
21
- "@tpluscode/rdf-ns-builders": "^1.0.0",
21
+ "@tpluscode/rdf-ns-builders": "^1.1.0",
22
22
  "@tpluscode/rdf-string": "^0.2.25",
23
- "@tpluscode/sparql-builder": "^0.3.12",
23
+ "@tpluscode/sparql-builder": "^0.3.18",
24
24
  "@zazuko/rdf-vocabularies": "*",
25
- "clownface": "^1.2.0",
25
+ "clownface": "^1.4.0",
26
26
  "commander": "^6.1.0",
27
27
  "debug": "^4.3.1",
28
28
  "is-absolute-url": "^3",
29
29
  "mime-types": "^2.1.33",
30
- "node-fetch": "^2.6.1",
30
+ "node-fetch": "^2.6.7",
31
31
  "rdf-ext": "^1.3.5",
32
32
  "replacestream": "^4.0.3",
33
- "sparql-http-client": "^2.2.3"
33
+ "sparql-http-client": "^2.4.0"
34
34
  },
35
35
  "devDependencies": {
36
36
  "@rdfjs/namespace": "^1.1.0",
37
37
  "@types/mime-types": "^2.1.1",
38
38
  "@types/replacestream": "^4.0.1",
39
- "@wikibus/vocabularies": "^0.2.1",
39
+ "@wikibus/vocabularies": "^0.2.2",
40
40
  "chai": "^4.3.4",
41
- "mocha": "^9.1.3",
41
+ "get-stream": "^5",
42
+ "into-stream": "^6.0.0",
43
+ "mocha": "^9.1.4",
42
44
  "rdf-ext": "^1.3.5",
43
45
  "sinon": "^11"
44
46
  }