@hydrofoil/talos 0.4.2 → 0.4.4
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 +24 -0
- package/index.js +6 -9
- package/lib/bootstrap.js +14 -2
- package/lib/prefixHandler.d.ts +2 -0
- package/lib/prefixHandler.js +15 -0
- package/package.json +8 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
# @hydrofoil/talos
|
|
2
2
|
|
|
3
|
+
## 0.4.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 8b7192c: build(deps): bump commander from 7.2.0 to 9.0.0
|
|
8
|
+
- 2fc5612: Bump node-fetch to 2.6.7
|
|
9
|
+
- 9d61d92: `--apiDoc` option should be optional
|
|
10
|
+
- Updated dependencies [2fd978f]
|
|
11
|
+
- Updated dependencies [8b7192c]
|
|
12
|
+
- Updated dependencies [09b0f72]
|
|
13
|
+
- @hydrofoil/knossos@0.6.1
|
|
14
|
+
|
|
15
|
+
## 0.4.4-alpha.0
|
|
16
|
+
|
|
17
|
+
### Patch Changes
|
|
18
|
+
|
|
19
|
+
- @hydrofoil/knossos@0.6.1-alpha.0
|
|
20
|
+
|
|
21
|
+
## 0.4.3
|
|
22
|
+
|
|
23
|
+
### Patch Changes
|
|
24
|
+
|
|
25
|
+
- 804bd2e: Per-resource option to merge with existing resource graph
|
|
26
|
+
|
|
3
27
|
## 0.4.2
|
|
4
28
|
|
|
5
29
|
### Patch Changes
|
package/index.js
CHANGED
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const commander_1 =
|
|
3
|
+
const commander_1 = require("commander");
|
|
7
4
|
const command_1 = require("./lib/command");
|
|
8
5
|
const extraVocabs_1 = require("./lib/command/extraVocabs");
|
|
9
6
|
const log_1 = require("./lib/log");
|
|
10
|
-
commander_1.
|
|
7
|
+
commander_1.program.command('put [dirs...]')
|
|
11
8
|
.description('Initializes the database from local resource files')
|
|
12
9
|
.requiredOption('--api <api>')
|
|
13
10
|
.requiredOption('--endpoint <endpoint>')
|
|
@@ -22,9 +19,9 @@ commander_1.default.command('put [dirs...]')
|
|
|
22
19
|
process.exit(1);
|
|
23
20
|
});
|
|
24
21
|
});
|
|
25
|
-
commander_1.
|
|
22
|
+
commander_1.program.command('put-vocabs')
|
|
26
23
|
.description('Inserts vocabulary graphs into the database')
|
|
27
|
-
.
|
|
24
|
+
.option('--apiDoc <apiDoc>')
|
|
28
25
|
.requiredOption('--endpoint <endpoint>')
|
|
29
26
|
.option('--token <token>', 'System authentication token')
|
|
30
27
|
.option('-u, --user <user>')
|
|
@@ -37,5 +34,5 @@ commander_1.default.command('put-vocabs')
|
|
|
37
34
|
process.exit(1);
|
|
38
35
|
});
|
|
39
36
|
});
|
|
40
|
-
commander_1.
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
commander_1.program.parse(process.argv);
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHlDQUFtQztBQUNuQywyQ0FBOEM7QUFDOUMsMkRBQTREO0FBQzVELG1DQUErQjtBQUUvQixtQkFBTyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUM7S0FDN0IsV0FBVyxDQUFDLG9EQUFvRCxDQUFDO0tBQ2pFLGNBQWMsQ0FBQyxhQUFhLENBQUM7S0FDN0IsY0FBYyxDQUFDLHVCQUF1QixDQUFDO0tBQ3ZDLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSw2QkFBNkIsQ0FBQztLQUN4RCxNQUFNLENBQUMsbUJBQW1CLENBQUM7S0FDM0IsTUFBTSxDQUFDLDJCQUEyQixDQUFDO0tBQ25DLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLENBQUM7S0FDbkYsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUU7SUFDMUIsSUFBQSxhQUFHLEVBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxFQUFFLEdBQUcsQ0FBQztTQUMzQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNYLElBQUEsU0FBRyxFQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ04sT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNqQixDQUFDLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQyxDQUFBO0FBRUosbUJBQU8sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDO0tBQzFCLFdBQVcsQ0FBQyw2Q0FBNkMsQ0FBQztLQUMxRCxNQUFNLENBQUMsbUJBQW1CLENBQUM7S0FDM0IsY0FBYyxDQUFDLHVCQUF1QixDQUFDO0tBQ3ZDLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSw2QkFBNkIsQ0FBQztLQUN4RCxNQUFNLENBQUMsbUJBQW1CLENBQUM7S0FDM0IsTUFBTSxDQUFDLDJCQUEyQixDQUFDO0tBQ25DLE1BQU0sQ0FBQywrQkFBK0IsRUFBRSx3REFBd0QsRUFBRSw4QkFBZ0IsQ0FBQztLQUNuSCxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtJQUNkLElBQUEsbUJBQVMsRUFBQyxHQUFHLENBQUM7U0FDWCxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNYLElBQUEsU0FBRyxFQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ04sT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNqQixDQUFDLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQyxDQUFBO0FBRUosbUJBQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBIn0=
|
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
|
-
(
|
|
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,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYm9vdHN0cmFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGdEQUF1QjtBQUV2QiwrREFBc0M7QUFDdEMsNEVBQXNFO0FBQ3RFLHNEQUEwQjtBQUMxQiwwREFBaUM7QUFDakMsd0RBQW9FO0FBQ3BFLDhEQUF5RDtBQUN6RCw2Q0FBK0M7QUFDL0MsK0JBQTJCO0FBQzNCLG1EQUFxRDtBQVk5QyxLQUFLLFVBQVUsU0FBUyxDQUFDLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxPQUFPLEVBQVc7SUFDdkUsTUFBTSxLQUFLLEdBQUcsSUFBSSw2QkFBcUIsQ0FBQyxJQUFJLDRCQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQTtJQUVsRSxJQUFJLEtBQUssRUFBRSxNQUFNLElBQUksSUFBSSxJQUFBLGNBQUksRUFBQyxHQUFHLENBQUMsRUFBRTtRQUNsQyxNQUFNLFFBQVEsR0FBRyxjQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUN6QyxNQUFNLFlBQVksR0FBRyxjQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUM7YUFDMUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7YUFDdkIsT0FBTyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUUzQixNQUFNLEdBQUcsR0FBRyxZQUFZLEtBQUssRUFBRTtZQUM3QixDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQztZQUNoQixDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDLENBQUE7UUFFdkMsTUFBTSxZQUFZLEdBQUcsSUFBQSw2QkFBZ0IsRUFBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQTtRQUMxRCxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ2pCLFNBQVE7U0FDVDtRQUVELE1BQU0sZUFBZSxHQUFvQjtZQUN2QyxnQkFBZ0IsRUFBRSxXQUFXO1NBQzlCLENBQUE7UUFDRCxZQUFZLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxJQUFBLG1DQUFtQixFQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUE7UUFDL0QsTUFBTSxPQUFPLEdBQUcsaUJBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUM5QixJQUFJO1lBQ0YsSUFBSSxLQUFLLEVBQUUsTUFBTSxJQUFJLElBQUksWUFBWSxFQUFFO2dCQUNyQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO2FBQ2xCO1NBQ0Y7UUFBQyxPQUFPLENBQU0sRUFBRTtZQUNmLElBQUEsU0FBRyxFQUFDLHdCQUF3QixFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUE7WUFDbEQsU0FBUTtTQUNUO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBQSxtQkFBUyxFQUFDLEVBQUUsT0FBTyxFQUFFLENBQUM7YUFDbkMsU0FBUyxDQUFDLEdBQUcsQ0FBQzthQUNkLE1BQU0sQ0FBQyxjQUFLLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFFekMsSUFBSSxNQUFNLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3BDLElBQUksZUFBZSxDQUFDLGdCQUFnQixLQUFLLFdBQVcsRUFBRTtnQkFDcEQsSUFBQSxTQUFHLEVBQUMsc0JBQXNCLEdBQUcsRUFBRSxDQUFDLENBQUE7YUFDakM7aUJBQU07Z0JBQ0wsSUFBQSxTQUFHLEVBQUMsNkJBQTZCLEdBQUcsRUFBRSxDQUFDLENBQUE7Z0JBQ3ZDLE1BQU0sT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7Z0JBQzlDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQTthQUN4QztTQUNGO2FBQU07WUFDTCxJQUFBLFNBQUcsRUFBQyxxQkFBcUIsR0FBRyxFQUFFLENBQUMsQ0FBQTtTQUNoQztRQUVELE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtLQUMxQjtBQUNILENBQUM7QUFsREQsOEJBa0RDIn0=
|
|
@@ -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.4.
|
|
3
|
+
"version": "0.4.4",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"bin": {
|
|
6
6
|
"talos": "bin/talos.js"
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
],
|
|
16
16
|
"dependencies": {
|
|
17
17
|
"@fcostarodrigo/walk": "^5.0.1",
|
|
18
|
-
"@hydrofoil/knossos": "^0.6.
|
|
18
|
+
"@hydrofoil/knossos": "^0.6.1",
|
|
19
19
|
"@hydrofoil/vocabularies": "^0.3",
|
|
20
20
|
"@rdfjs/formats-common": "^2.2.0",
|
|
21
21
|
"@tpluscode/rdf-ns-builders": "^1.1.0",
|
|
@@ -23,11 +23,11 @@
|
|
|
23
23
|
"@tpluscode/sparql-builder": "^0.3.18",
|
|
24
24
|
"@zazuko/rdf-vocabularies": "*",
|
|
25
25
|
"clownface": "^1.4.0",
|
|
26
|
-
"commander": "^
|
|
26
|
+
"commander": "^9.0.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.
|
|
30
|
+
"node-fetch": "^2.6.7",
|
|
31
31
|
"rdf-ext": "^1.3.5",
|
|
32
32
|
"replacestream": "^4.0.3",
|
|
33
33
|
"sparql-http-client": "^2.4.0"
|
|
@@ -36,8 +36,10 @@
|
|
|
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.
|
|
40
|
-
"chai": "^4.3.
|
|
39
|
+
"@wikibus/vocabularies": "^0.2.2",
|
|
40
|
+
"chai": "^4.3.6",
|
|
41
|
+
"get-stream": "^5",
|
|
42
|
+
"into-stream": "^6.0.0",
|
|
41
43
|
"mocha": "^9.1.4",
|
|
42
44
|
"rdf-ext": "^1.3.5",
|
|
43
45
|
"sinon": "^11"
|