@hydrofoil/talos 0.6.3 → 0.6.5
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/bin/talos.d.ts +3 -0
- package/bin/talos.js +4 -2
- package/index.js +2 -2
- package/lib/bootstrap.d.ts +3 -4
- package/lib/bootstrap.js +16 -16
- package/lib/command/extraVocabs.d.ts +1 -1
- package/lib/command/put-vocabs.d.ts +1 -1
- package/lib/command/put-vocabs.js +3 -3
- package/lib/command/put.d.ts +1 -1
- package/lib/command/put.js +5 -5
- package/lib/deleteApi.js +2 -2
- package/lib/insertVocabs.js +5 -5
- package/lib/log.d.ts +2 -3
- package/lib/log.js +3 -5
- package/package.json +21 -80
- package/CHANGELOG.md +0 -374
- package/lib/fileStream.d.ts +0 -3
- package/lib/fileStream.js +0 -61
- package/lib/ns.d.ts +0 -3
- package/lib/ns.js +0 -3
- package/lib/prefixHandler.d.ts +0 -2
- package/lib/prefixHandler.js +0 -11
- package/lib/resources.d.ts +0 -2
- package/lib/resources.js +0 -88
- package/readme.md +0 -3
package/bin/talos.d.ts
ADDED
package/bin/talos.js
CHANGED
|
@@ -1,2 +1,4 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import '
|
|
1
|
+
#!/usr/bin/env ts-node
|
|
2
|
+
import 'anylogger-debug';
|
|
3
|
+
import '../index.js';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFsb3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0YWxvcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxpQkFBaUIsQ0FBQTtBQUN4QixPQUFPLGFBQWEsQ0FBQSJ9
|
package/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { program } from 'commander';
|
|
2
2
|
import { put, putVocabs } from './lib/command/index.js';
|
|
3
3
|
import { parseExtraVocabs } from './lib/command/extraVocabs.js';
|
|
4
|
-
import
|
|
4
|
+
import log from './lib/log.js';
|
|
5
5
|
program.command('put [dirs...]')
|
|
6
6
|
.description('Initializes the database from local resource files')
|
|
7
7
|
.requiredOption('--api <api>')
|
|
@@ -34,4 +34,4 @@ program.command('put-vocabs')
|
|
|
34
34
|
});
|
|
35
35
|
});
|
|
36
36
|
program.parse(process.argv);
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ25DLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDL0QsT0FBTyxHQUFHLE1BQU0sY0FBYyxDQUFBO0FBRTlCLE9BQU8sQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDO0tBQzdCLFdBQVcsQ0FBQyxvREFBb0QsQ0FBQztLQUNqRSxjQUFjLENBQUMsYUFBYSxDQUFDO0tBQzdCLGNBQWMsQ0FBQyx1QkFBdUIsQ0FBQztLQUN2QyxNQUFNLENBQUMsbUNBQW1DLENBQUM7S0FDM0MsTUFBTSxDQUFDLGlCQUFpQixFQUFFLDZCQUE2QixDQUFDO0tBQ3hELE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQztLQUMzQixNQUFNLENBQUMsMkJBQTJCLENBQUM7S0FDbkMsTUFBTSxDQUFDLHFCQUFxQixFQUFFLDRDQUE0QyxFQUFFLE1BQU0sQ0FBQztLQUNuRixNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRTtJQUMxQixHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxFQUFFLEdBQUcsQ0FBQztTQUMzQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNYLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNOLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDakIsQ0FBQyxDQUFDLENBQUE7QUFDTixDQUFDLENBQUMsQ0FBQTtBQUVKLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDO0tBQzFCLFdBQVcsQ0FBQyw2Q0FBNkMsQ0FBQztLQUMxRCxNQUFNLENBQUMsbUJBQW1CLENBQUM7S0FDM0IsY0FBYyxDQUFDLHVCQUF1QixDQUFDO0tBQ3ZDLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSw2QkFBNkIsQ0FBQztLQUN4RCxNQUFNLENBQUMsbUJBQW1CLENBQUM7S0FDM0IsTUFBTSxDQUFDLDJCQUEyQixDQUFDO0tBQ25DLE1BQU0sQ0FBQywrQkFBK0IsRUFBRSx3REFBd0QsRUFBRSxnQkFBZ0IsQ0FBQztLQUNuSCxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtJQUNkLFNBQVMsQ0FBQyxHQUFHLENBQUM7U0FDWCxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNYLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNOLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDakIsQ0FBQyxDQUFDLENBQUE7QUFDTixDQUFDLENBQUMsQ0FBQTtBQUVKLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBIn0=
|
package/lib/bootstrap.d.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { NamedNode } from 'rdf-js';
|
|
2
|
-
import type
|
|
3
|
-
import type { ResourceStore } from '@hydrofoil/knossos/lib/store.js';
|
|
1
|
+
import { NamedNode, DatasetCore } from 'rdf-js';
|
|
2
|
+
import type { ResourceStore } from '@hydrofoil/resource-store';
|
|
4
3
|
type Bootstrap = {
|
|
5
4
|
store: ResourceStore;
|
|
6
|
-
dataset:
|
|
5
|
+
dataset: DatasetCore;
|
|
7
6
|
apiUri: NamedNode;
|
|
8
7
|
};
|
|
9
8
|
export declare function bootstrap({ dataset, apiUri, store }: Bootstrap): Promise<void>;
|
package/lib/bootstrap.js
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
import clownface from 'clownface';
|
|
2
|
-
import { hydra } from '@tpluscode/rdf-ns-builders';
|
|
3
1
|
import { isNamedNode } from 'is-graph-pointer';
|
|
4
|
-
import $rdf from '
|
|
5
|
-
import
|
|
6
|
-
import
|
|
2
|
+
import $rdf from '@hydrofoil/talos-core/env.js';
|
|
3
|
+
import addAll from 'rdf-dataset-ext/addAll.js';
|
|
4
|
+
import log from './log.js';
|
|
7
5
|
export async function bootstrap({ dataset, apiUri, store }) {
|
|
8
|
-
const graph = clownface({ dataset, graph:
|
|
9
|
-
const resources = graph.has(
|
|
6
|
+
const graph = $rdf.clownface({ dataset, graph: $rdf.ns.talos.resources });
|
|
7
|
+
const resources = graph.has($rdf.ns.talos.action);
|
|
10
8
|
for (const resource of resources.toArray().filter(isNamedNode)) {
|
|
11
|
-
const resourceData = dataset.match(null, null, null, resource.term)
|
|
9
|
+
const resourceData = [...dataset.match(null, null, null, resource.term)]
|
|
12
10
|
.map(({ subject, predicate, object }) => $rdf.quad(subject, predicate, object));
|
|
13
|
-
const pointer = clownface({
|
|
14
|
-
.
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
const pointer = $rdf.clownface({
|
|
12
|
+
dataset: $rdf.dataset(resourceData),
|
|
13
|
+
})
|
|
14
|
+
.namedNode(resource.term)
|
|
15
|
+
.addOut($rdf.ns.hydra.apiDocumentation, apiUri);
|
|
16
|
+
const action = resource.out($rdf.ns.talos.action).term;
|
|
17
17
|
const exists = await store.exists(pointer.term);
|
|
18
|
-
if (exists &&
|
|
18
|
+
if (exists && $rdf.ns.talos.skip.equals(action)) {
|
|
19
19
|
log(`Skipping resource ${resource}`);
|
|
20
20
|
continue;
|
|
21
21
|
}
|
|
22
22
|
if (exists) {
|
|
23
|
-
if (
|
|
23
|
+
if ($rdf.ns.talos.merge.equals(action)) {
|
|
24
24
|
log(`Merging existing resource ${resource}`);
|
|
25
25
|
const current = await store.load(pointer.term);
|
|
26
|
-
pointer.dataset
|
|
26
|
+
addAll(pointer.dataset, current.dataset);
|
|
27
27
|
}
|
|
28
28
|
else {
|
|
29
29
|
log(`Replacing resource ${resource}`);
|
|
@@ -35,4 +35,4 @@ export async function bootstrap({ dataset, apiUri, store }) {
|
|
|
35
35
|
await store.save(pointer);
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYm9vdHN0cmFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUM5QyxPQUFPLElBQUksTUFBTSw4QkFBOEIsQ0FBQTtBQUMvQyxPQUFPLE1BQU0sTUFBTSwyQkFBMkIsQ0FBQTtBQUM5QyxPQUFPLEdBQUcsTUFBTSxVQUFVLENBQUE7QUFRMUIsTUFBTSxDQUFDLEtBQUssVUFBVSxTQUFTLENBQUMsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYTtJQUNuRSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFBO0lBQ3pFLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDakQsS0FBSyxNQUFNLFFBQVEsSUFBSSxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFO1FBQzlELE1BQU0sWUFBWSxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNyRSxHQUFHLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFBO1FBQ2pGLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDN0IsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDO1NBQ3BDLENBQUM7YUFDQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQzthQUN4QixNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFFakQsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUE7UUFDdEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUMvQyxJQUFJLE1BQU0sSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQy9DLEdBQUcsQ0FBQyxxQkFBcUIsUUFBUSxFQUFFLENBQUMsQ0FBQTtZQUNwQyxTQUFRO1NBQ1Q7UUFFRCxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDdEMsR0FBRyxDQUFDLDZCQUE2QixRQUFRLEVBQUUsQ0FBQyxDQUFBO2dCQUM1QyxNQUFNLE9BQU8sR0FBRyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO2dCQUM5QyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUE7YUFDekM7aUJBQU07Z0JBQ0wsR0FBRyxDQUFDLHNCQUFzQixRQUFRLEVBQUUsQ0FBQyxDQUFBO2FBQ3RDO1NBQ0Y7YUFBTTtZQUNMLEdBQUcsQ0FBQyxxQkFBcUIsUUFBUSxFQUFFLENBQUMsQ0FBQTtTQUNyQztRQUVELE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtLQUMxQjtBQUNILENBQUMifQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ExtraVocab } from '../insertVocabs';
|
|
1
|
+
import { ExtraVocab } from '../insertVocabs.js';
|
|
2
2
|
export declare function parseExtraVocabs(value: string, vocabs?: ExtraVocab[]): ExtraVocab[];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import $rdf from '
|
|
1
|
+
import $rdf from '@hydrofoil/talos-core/env.js';
|
|
2
2
|
import { insertVocabs } from '../insertVocabs.js';
|
|
3
3
|
import { deleteApi } from '../deleteApi.js';
|
|
4
|
-
import
|
|
4
|
+
import log from '../log.js';
|
|
5
5
|
export async function putVocabs({ token, endpoint, user, password, extraVocabs, apiDoc }) {
|
|
6
6
|
await insertVocabs({
|
|
7
7
|
endpointUrl: endpoint,
|
|
@@ -18,4 +18,4 @@ export async function putVocabs({ token, endpoint, user, password, extraVocabs,
|
|
|
18
18
|
});
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHV0LXZvY2Ficy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInB1dC12b2NhYnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sOEJBQThCLENBQUE7QUFDL0MsT0FBTyxFQUFjLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUMzQyxPQUFPLEdBQUcsTUFBTSxXQUFXLENBQUE7QUFRM0IsTUFBTSxDQUFDLEtBQUssVUFBVSxTQUFTLENBQUMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBYTtJQUNqRyxNQUFNLFlBQVksQ0FBQztRQUNqQixXQUFXLEVBQUUsUUFBUTtRQUNyQixTQUFTLEVBQUUsUUFBUTtRQUNuQixJQUFJO1FBQ0osUUFBUTtLQUNULEVBQUU7UUFDRCxXQUFXO0tBQ1osQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFBO0lBRTNDLElBQUksTUFBTSxFQUFFO1FBQ1YsTUFBTSxTQUFTLENBQUM7WUFDZCxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUM7WUFDOUIsS0FBSztTQUNOLENBQUMsQ0FBQTtLQUNIO0FBQ0gsQ0FBQyJ9
|
package/lib/command/put.d.ts
CHANGED
package/lib/command/put.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import $rdf from '
|
|
2
|
-
import { ResourcePerGraphStore } from '@hydrofoil/
|
|
1
|
+
import $rdf from '@hydrofoil/talos-core/env.js';
|
|
2
|
+
import { ResourcePerGraphStore } from '@hydrofoil/resource-store';
|
|
3
3
|
import StreamClient from 'sparql-http-client';
|
|
4
|
+
import { fromDirectories } from '@hydrofoil/talos-core';
|
|
4
5
|
import { bootstrap } from '../bootstrap.js';
|
|
5
6
|
import { deleteApi } from '../deleteApi.js';
|
|
6
|
-
import { fromDirectories } from '../resources.js';
|
|
7
7
|
export async function put(directories, { token, api, endpoint, updateEndpoint, user, password, apiPath = '/api', fetch }) {
|
|
8
8
|
const apiUri = $rdf.namedNode(`${api}${apiPath}`);
|
|
9
9
|
const dataset = await fromDirectories(directories, api);
|
|
@@ -15,8 +15,8 @@ export async function put(directories, { token, api, endpoint, updateEndpoint, u
|
|
|
15
15
|
updateUrl: updateEndpoint || endpoint,
|
|
16
16
|
user,
|
|
17
17
|
password,
|
|
18
|
-
})),
|
|
18
|
+
}), $rdf),
|
|
19
19
|
});
|
|
20
20
|
await deleteApi({ apiUri, token, fetch });
|
|
21
21
|
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sSUFBSSxNQUFNLDhCQUE4QixDQUFBO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQ2pFLE9BQU8sWUFBWSxNQUFNLG9CQUFvQixDQUFBO0FBRTdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBUzNDLE1BQU0sQ0FBQyxLQUFLLFVBQVUsR0FBRyxDQUFDLFdBQXFCLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLEdBQUcsTUFBTSxFQUFFLEtBQUssRUFBTztJQUNySSxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsR0FBRyxHQUFHLE9BQU8sRUFBRSxDQUFDLENBQUE7SUFFakQsTUFBTSxPQUFPLEdBQUcsTUFBTSxlQUFlLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFBO0lBRXZELE1BQU0sU0FBUyxDQUFDO1FBQ2QsT0FBTztRQUNQLE1BQU07UUFDTixLQUFLLEVBQUUsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLFlBQVksQ0FBQztZQUNoRCxXQUFXLEVBQUUsUUFBUTtZQUNyQixTQUFTLEVBQUUsY0FBYyxJQUFJLFFBQVE7WUFDckMsSUFBSTtZQUNKLFFBQVE7U0FDVCxDQUFDLEVBQUUsSUFBSSxDQUFDO0tBQ1YsQ0FBQyxDQUFBO0lBRUYsTUFBTSxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUE7QUFDM0MsQ0FBQyJ9
|
package/lib/deleteApi.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import nodeFetch from 'node-fetch';
|
|
2
|
-
import
|
|
2
|
+
import log from './log.js';
|
|
3
3
|
export async function deleteApi({ apiUri, token, fetch = nodeFetch }) {
|
|
4
4
|
if (token) {
|
|
5
5
|
const res = await fetch(apiUri.value, {
|
|
@@ -19,4 +19,4 @@ export async function deleteApi({ apiUri, token, fetch = nodeFetch }) {
|
|
|
19
19
|
log('No System token provided. API restart may be necessary for changes to be applied');
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlQXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZGVsZXRlQXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQTtBQUNsQyxPQUFPLEdBQUcsTUFBTSxVQUFVLENBQUE7QUFRMUIsTUFBTSxDQUFDLEtBQUssVUFBVSxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssR0FBRyxTQUFTLEVBQWM7SUFDOUUsSUFBSSxLQUFLLEVBQUU7UUFDVCxNQUFNLEdBQUcsR0FBRyxNQUFNLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFO1lBQ3BDLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLE9BQU8sRUFBRTtnQkFDUCxhQUFhLEVBQUUsVUFBVSxLQUFLLEVBQUU7YUFDakM7U0FDRixDQUFDLENBQUE7UUFFRixJQUFJLEdBQUcsQ0FBQyxFQUFFLEVBQUU7WUFDVixHQUFHLENBQUMsOEJBQThCLENBQUMsQ0FBQTtTQUNwQzthQUFNO1lBQ0wsR0FBRyxDQUFDLDRDQUE0QyxFQUFFLE1BQU0sR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUE7U0FDcEU7S0FDRjtTQUFNO1FBQ0wsR0FBRyxDQUFDLGtGQUFrRixDQUFDLENBQUE7S0FDeEY7QUFDSCxDQUFDIn0=
|
package/lib/insertVocabs.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import StreamClient from 'sparql-http-client';
|
|
2
|
-
import { prefixes, vocabularies as coreVocabularies } from '@zazuko/
|
|
2
|
+
import { prefixes, vocabularies as coreVocabularies } from '@zazuko/vocabularies';
|
|
3
3
|
import { prefixes as hydrofoilPrefixes, vocabularies as hydrofoilVocabularies } from '@hydrofoil/vocabularies';
|
|
4
4
|
import { INSERT } from '@tpluscode/sparql-builder';
|
|
5
5
|
import { sparql } from '@tpluscode/rdf-string';
|
|
6
|
-
import $rdf from '
|
|
7
|
-
import
|
|
6
|
+
import $rdf from '@hydrofoil/talos-core/env.js';
|
|
7
|
+
import log from './log.js';
|
|
8
8
|
function toTriple({ subject, predicate, object }) {
|
|
9
9
|
return $rdf.quad(subject, predicate, object);
|
|
10
10
|
}
|
|
@@ -25,7 +25,7 @@ function insertVocab(client, allPrefixes) {
|
|
|
25
25
|
return;
|
|
26
26
|
const namespace = $rdf.namedNode(allPrefixes[prefix]);
|
|
27
27
|
const insert = INSERT.DATA `GRAPH <${namespace.value}> {
|
|
28
|
-
${vocab.map(toTriple)
|
|
28
|
+
${[...vocab].map(toTriple)}
|
|
29
29
|
}`;
|
|
30
30
|
const query = sparql `DROP SILENT GRAPH <${namespace.value}>;\n${insert}`.toString();
|
|
31
31
|
log('Inserting vocab %s', namespace.value);
|
|
@@ -42,4 +42,4 @@ export async function insertVocabs(options, { extraVocabs = [] }) {
|
|
|
42
42
|
};
|
|
43
43
|
await Promise.all(Object.entries(datasets).map(insertVocab(client, allPrefixes)));
|
|
44
44
|
}
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0Vm9jYWJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiaW5zZXJ0Vm9jYWJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sWUFBcUMsTUFBTSxvQkFBb0IsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsUUFBUSxFQUFFLFlBQVksSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ2pGLE9BQU8sRUFBRSxRQUFRLElBQUksaUJBQWlCLEVBQUUsWUFBWSxJQUFJLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDOUcsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUM5QyxPQUFPLElBQUksTUFBTSw4QkFBOEIsQ0FBQTtBQUMvQyxPQUFPLEdBQUcsTUFBTSxVQUFVLENBQUE7QUFPMUIsU0FBUyxRQUFRLENBQUMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBUTtJQUNwRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQTtBQUM5QyxDQUFDO0FBRUQsU0FBUyxlQUFlLENBQUMsTUFBb0IsRUFBRSxXQUE0QjtJQUN6RSxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRTtRQUM3QyxNQUFNLFFBQVEsR0FBRyxNQUFNLFFBQVEsQ0FBQTtRQUMvQixNQUFNLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsR0FBRyxNQUFNLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUE7UUFFN0UsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLENBQUE7UUFFekMsT0FBTztZQUNMLEdBQUcsUUFBUTtZQUNYLEdBQUcsTUFBTSxZQUFZLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ2hELENBQUE7SUFDSCxDQUFDLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBOEIsRUFBRSxDQUFDLENBQUMsQ0FBQTtBQUN0RCxDQUFDO0FBRUQsU0FBUyxXQUFXLENBQUMsTUFBb0IsRUFBRSxXQUE0QjtJQUNyRSxPQUFPLEtBQUssRUFBRSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQW9DLEVBQWlCLEVBQUU7UUFDakYsSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFNO1FBRWxCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUE7UUFFckQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQSxVQUFVLFNBQVMsQ0FBQyxLQUFLO1FBQy9DLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO01BQzFCLENBQUE7UUFDRixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUEsc0JBQXNCLFNBQVMsQ0FBQyxLQUFLLE9BQU8sTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUE7UUFFbkYsR0FBRyxDQUFDLG9CQUFvQixFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUMxQyxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ25DLENBQUMsQ0FBQTtBQUNILENBQUM7QUFFRCxNQUFNLENBQUMsS0FBSyxVQUFVLFlBQVksQ0FBQyxPQUE0QixFQUFFLEVBQUUsV0FBVyxHQUFHLEVBQUUsRUFBa0M7SUFDbkgsTUFBTSxNQUFNLEdBQUcsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUE7SUFFeEMsTUFBTSxXQUFXLEdBQW9CLEVBQUUsR0FBRyxRQUFRLEVBQUUsR0FBRyxpQkFBaUIsRUFBRSxDQUFBO0lBRTFFLE1BQU0sUUFBUSxHQUFHO1FBQ2YsR0FBRyxNQUFNLGdCQUFnQixDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ2hGLEdBQUcsTUFBTSxxQkFBcUIsRUFBRTtRQUNoQyxHQUFHLE1BQU0sZUFBZSxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUM7S0FDbkQsQ0FBQTtJQUVELE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUNuRixDQUFDIn0=
|
package/lib/log.d.ts
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
export
|
|
3
|
-
export declare const debug: Debugger.Debugger;
|
|
1
|
+
declare const _default: import("anylogger").Logger;
|
|
2
|
+
export default _default;
|
package/lib/log.js
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import Debugger from '
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
export const debug = log.extend('debug');
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sUUFBUSxNQUFNLE9BQU8sQ0FBQTtBQUU1QixNQUFNLENBQUMsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFBO0FBQ3BDLEdBQUcsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFBO0FBRWxCLE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFBIn0=
|
|
1
|
+
import Debugger from 'anylogger';
|
|
2
|
+
export default Debugger('talos');
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sUUFBUSxNQUFNLFdBQVcsQ0FBQTtBQUVoQyxlQUFlLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQSJ9
|
package/package.json
CHANGED
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hydrofoil/talos",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.5",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"talos": "bin/talos.js"
|
|
8
8
|
},
|
|
9
9
|
"scripts": {
|
|
10
|
-
"prepare": "husky install",
|
|
11
10
|
"prepublishOnly": "tsc",
|
|
12
|
-
"
|
|
13
|
-
"test": "c8 --all --reporter=lcov mocha --recursive --extension ts test",
|
|
14
|
-
"release": "changeset publish"
|
|
11
|
+
"test": "mocha --package ../../package.json test"
|
|
15
12
|
},
|
|
16
13
|
"files": [
|
|
17
14
|
"lib/**/*.js",
|
|
@@ -20,88 +17,32 @@
|
|
|
20
17
|
],
|
|
21
18
|
"repository": {
|
|
22
19
|
"type": "git",
|
|
23
|
-
"url": "https://github.com/hypermedia-app/talos"
|
|
20
|
+
"url": "https://github.com/hypermedia-app/talos",
|
|
21
|
+
"directory": "packages/cli"
|
|
22
|
+
},
|
|
23
|
+
"bugs": {
|
|
24
|
+
"url": "https://github.com/hypermedia-app/talos/issues"
|
|
24
25
|
},
|
|
25
26
|
"dependencies": {
|
|
26
|
-
"@
|
|
27
|
-
"@hydrofoil/
|
|
28
|
-
"@hydrofoil/vocabularies": "^
|
|
29
|
-
"@
|
|
30
|
-
"@
|
|
31
|
-
"@
|
|
32
|
-
"@
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"@zazuko/rdf-vocabularies": ">=2022.11.25",
|
|
37
|
-
"clownface": "^1.5.1",
|
|
38
|
-
"commander": "^9.4.0",
|
|
27
|
+
"@hydrofoil/resource-store": "^0.2.1",
|
|
28
|
+
"@hydrofoil/talos-core": "^0.1.1",
|
|
29
|
+
"@hydrofoil/vocabularies": "^2.1.1",
|
|
30
|
+
"@tpluscode/rdf-string": "^1.3.0",
|
|
31
|
+
"@tpluscode/sparql-builder": "^2.0.2",
|
|
32
|
+
"@zazuko/vocabularies": "^2.1.0",
|
|
33
|
+
"@zazuko/vocabulary-extras": "^2.0.6",
|
|
34
|
+
"anylogger": "^1.1.0-beta.5",
|
|
35
|
+
"anylogger-debug": "^1.1.0-beta.5",
|
|
36
|
+
"commander": "^12",
|
|
39
37
|
"debug": "^4.3.4",
|
|
40
|
-
"is-
|
|
41
|
-
"is-graph-pointer": "^1.2.2",
|
|
42
|
-
"mime-types": "^2.1.35",
|
|
38
|
+
"is-graph-pointer": "^2.1.0",
|
|
43
39
|
"node-fetch": "^3.3.0",
|
|
44
40
|
"rdf-dataset-ext": "^1.0.1",
|
|
45
|
-
"
|
|
46
|
-
"replacestream": "^4.0.3",
|
|
47
|
-
"sparql-http-client": "^2.4.1"
|
|
41
|
+
"sparql-http-client": "^3.0.0"
|
|
48
42
|
},
|
|
49
43
|
"devDependencies": {
|
|
50
|
-
"@
|
|
51
|
-
"@babel/preset-env": "^7.18.10",
|
|
52
|
-
"@babel/preset-typescript": "^7.18.6",
|
|
53
|
-
"@babel/register": "^7.18.9",
|
|
54
|
-
"@changesets/cli": "^2.25.0",
|
|
55
|
-
"@tpluscode/eslint-config": "^0.3.3",
|
|
56
|
-
"@types/chai": "^4.3.4",
|
|
57
|
-
"@types/chai-as-promised": "^7.1.5",
|
|
58
|
-
"@types/chai-snapshot-matcher": "^1.0.1",
|
|
59
|
-
"@types/deep-equal-in-any-order": "^1.0.1",
|
|
60
|
-
"@types/fcostarodrigo__walk": "^5.0.0",
|
|
61
|
-
"@types/mime-types": "^2.1.1",
|
|
62
|
-
"@types/mocha": "^10.0.1",
|
|
63
|
-
"@types/rdf-dataset-ext": "^1.0.2",
|
|
64
|
-
"@types/rdfjs__term-set": "^2",
|
|
65
|
-
"@types/replacestream": "^4.0.1",
|
|
66
|
-
"@types/sinon": "^10.0.13",
|
|
67
|
-
"@types/sinon-chai": "^3.2.9",
|
|
68
|
-
"@types/sparql-http-client": "^2.2.8",
|
|
69
|
-
"@typescript-eslint/eslint-plugin": "^5.43.0",
|
|
70
|
-
"@typescript-eslint/parser": "^5.43.0",
|
|
71
|
-
"@wikibus/vocabularies": "^0.2.3",
|
|
72
|
-
"c8": "^7.12.0",
|
|
44
|
+
"@tpluscode/rdf-ns-builders": "^4.1.0",
|
|
73
45
|
"chai": "^4.3.6",
|
|
74
|
-
"
|
|
75
|
-
"chai-quantifiers": "^1.0.17",
|
|
76
|
-
"chai-snapshot-matcher": "^2.0.3",
|
|
77
|
-
"deep-equal-in-any-order": "^2.0.0",
|
|
78
|
-
"eslint": "^8.28.0",
|
|
79
|
-
"eslint-config-standard": "^17.0.0",
|
|
80
|
-
"eslint-import-resolver-typescript": "^3.5.2",
|
|
81
|
-
"eslint-plugin-import": "^2.26.0",
|
|
82
|
-
"eslint-plugin-n": "^15.5.1",
|
|
83
|
-
"eslint-plugin-node": "^11.1.0",
|
|
84
|
-
"eslint-plugin-promise": "^6.1.1",
|
|
85
|
-
"get-stream": "^5",
|
|
86
|
-
"husky": "^8.0.2",
|
|
87
|
-
"into-stream": "^7.0.0",
|
|
88
|
-
"mocha": "^10.0.0",
|
|
89
|
-
"rdf-dataset-ext": "^1.0.1",
|
|
90
|
-
"sinon": "^15",
|
|
91
|
-
"sinon-chai": "^3.7.0",
|
|
92
|
-
"standard": "^17.0.0",
|
|
93
|
-
"ts-node": "^10.9.1",
|
|
94
|
-
"typescript": "^4.9.3"
|
|
95
|
-
},
|
|
96
|
-
"mocha": {
|
|
97
|
-
"loader": "ts-node/esm/transpile-only",
|
|
98
|
-
"require": [
|
|
99
|
-
"mocha-setup.cjs"
|
|
100
|
-
]
|
|
101
|
-
},
|
|
102
|
-
"lint-staged": {
|
|
103
|
-
"*.{js,ts}": [
|
|
104
|
-
"eslint --fix --quiet"
|
|
105
|
-
]
|
|
46
|
+
"sinon": "^17"
|
|
106
47
|
}
|
|
107
48
|
}
|
package/CHANGELOG.md
DELETED
|
@@ -1,374 +0,0 @@
|
|
|
1
|
-
# @hydrofoil/talos
|
|
2
|
-
|
|
3
|
-
## 0.6.3
|
|
4
|
-
|
|
5
|
-
### Patch Changes
|
|
6
|
-
|
|
7
|
-
- 9c1642f: Remove patch-package from postinstall script
|
|
8
|
-
|
|
9
|
-
## 0.6.2
|
|
10
|
-
|
|
11
|
-
### Patch Changes
|
|
12
|
-
|
|
13
|
-
- cd66114: The CLI did not actually work because it called `require`
|
|
14
|
-
|
|
15
|
-
## 0.6.1
|
|
16
|
-
|
|
17
|
-
### Patch Changes
|
|
18
|
-
|
|
19
|
-
- e728756: The `--extraVocab` option stopped working in ESM
|
|
20
|
-
- a3d5b38: Updated `@zazuko/rdf-vocabularies`
|
|
21
|
-
- c3f365e: Slightly relax knossos dependency
|
|
22
|
-
|
|
23
|
-
## 0.6.0
|
|
24
|
-
|
|
25
|
-
### Minor Changes
|
|
26
|
-
|
|
27
|
-
- ae4c9d8: Switch to ES Modules
|
|
28
|
-
|
|
29
|
-
### Patch Changes
|
|
30
|
-
|
|
31
|
-
- 565a088: Blank nodes using same label would be merged as separate nodes
|
|
32
|
-
|
|
33
|
-
## 0.5.1
|
|
34
|
-
|
|
35
|
-
### Patch Changes
|
|
36
|
-
|
|
37
|
-
- bf1280d: Regression: existing resources would have been merged instead of rewritten
|
|
38
|
-
|
|
39
|
-
## 0.5.0
|
|
40
|
-
|
|
41
|
-
### Minor Changes
|
|
42
|
-
|
|
43
|
-
- 7f52095: Resources across multiple source directories are now merged in memory and saved as a whole (resolves #271)
|
|
44
|
-
|
|
45
|
-
## 0.4.17
|
|
46
|
-
|
|
47
|
-
### Patch Changes
|
|
48
|
-
|
|
49
|
-
- 0792046: Option to skip resources which already exist
|
|
50
|
-
- Updated dependencies [dd368d1]
|
|
51
|
-
- @hydrofoil/knossos@0.9.7
|
|
52
|
-
|
|
53
|
-
## 0.4.16
|
|
54
|
-
|
|
55
|
-
### Patch Changes
|
|
56
|
-
|
|
57
|
-
- 03d7bcb: build(deps): bump @tpluscode/sparql-builder from 0.3.22 to 0.3.23
|
|
58
|
-
- 323edb2: Missing package metadata
|
|
59
|
-
- Updated dependencies [278f654]
|
|
60
|
-
- Updated dependencies [03d7bcb]
|
|
61
|
-
- Updated dependencies [323edb2]
|
|
62
|
-
- @hydrofoil/knossos@0.9.4
|
|
63
|
-
|
|
64
|
-
## 0.4.15
|
|
65
|
-
|
|
66
|
-
### Patch Changes
|
|
67
|
-
|
|
68
|
-
- 6870988: build(deps): bump sparql-http-client from 2.4.0 to 2.4.1
|
|
69
|
-
- 6ab0d14: build(deps): bump commander from 9.3.0 to 9.4.0
|
|
70
|
-
- Updated dependencies [6870988]
|
|
71
|
-
- Updated dependencies [6ab0d14]
|
|
72
|
-
- @hydrofoil/knossos@0.9.3
|
|
73
|
-
|
|
74
|
-
## 0.4.14
|
|
75
|
-
|
|
76
|
-
### Patch Changes
|
|
77
|
-
|
|
78
|
-
- Updated dependencies [ce82f9c]
|
|
79
|
-
- @hydrofoil/knossos@0.9.0
|
|
80
|
-
|
|
81
|
-
## 0.4.13
|
|
82
|
-
|
|
83
|
-
### Patch Changes
|
|
84
|
-
|
|
85
|
-
- Updated dependencies [0ec3dde]
|
|
86
|
-
- Updated dependencies [0ec3dde]
|
|
87
|
-
- @hydrofoil/knossos@0.8.0
|
|
88
|
-
|
|
89
|
-
## 0.4.12
|
|
90
|
-
|
|
91
|
-
### Patch Changes
|
|
92
|
-
|
|
93
|
-
- ab4c5c3: build(deps): bump mime-types from 2.1.34 to 2.1.35
|
|
94
|
-
- ddbc61b: Update `@tpluscode/rdf-ns-builders` to v2
|
|
95
|
-
- Updated dependencies [a024e38]
|
|
96
|
-
- Updated dependencies [ddbc61b]
|
|
97
|
-
- @hydrofoil/knossos@0.7.2
|
|
98
|
-
|
|
99
|
-
## 0.4.11
|
|
100
|
-
|
|
101
|
-
### Patch Changes
|
|
102
|
-
|
|
103
|
-
- 0d5fb28: build(deps): bump commander from 9.2.0 to 9.3.0
|
|
104
|
-
- d2051ea: PUT: support trig sources with multiple resources (closes #92)
|
|
105
|
-
- Updated dependencies [0d5fb28]
|
|
106
|
-
- Updated dependencies [017d95b]
|
|
107
|
-
- Updated dependencies [3f945d2]
|
|
108
|
-
- @hydrofoil/knossos@0.7.1
|
|
109
|
-
|
|
110
|
-
## 0.4.10
|
|
111
|
-
|
|
112
|
-
### Patch Changes
|
|
113
|
-
|
|
114
|
-
- Updated dependencies [dbbe731]
|
|
115
|
-
- Updated dependencies [5f8fc38]
|
|
116
|
-
- Updated dependencies [ee2dfdd]
|
|
117
|
-
- Updated dependencies [00713ae]
|
|
118
|
-
- @hydrofoil/knossos@0.7.0
|
|
119
|
-
|
|
120
|
-
## 0.4.9
|
|
121
|
-
|
|
122
|
-
### Patch Changes
|
|
123
|
-
|
|
124
|
-
- b022341: build(deps): bump commander from 9.0.0 to 9.2.0
|
|
125
|
-
- d338aec: Separate option for SPARQL Update endpoint
|
|
126
|
-
- Updated dependencies [b022341]
|
|
127
|
-
- @hydrofoil/knossos@0.6.12
|
|
128
|
-
|
|
129
|
-
## 0.4.8
|
|
130
|
-
|
|
131
|
-
### Patch Changes
|
|
132
|
-
|
|
133
|
-
- 6d8f891: build(deps): bump clownface from 1.4.0 to 1.5.1
|
|
134
|
-
- 4caf075: build(deps): bump @tpluscode/sparql-builder from 0.3.18 to 0.3.21
|
|
135
|
-
- Updated dependencies [d0720ea]
|
|
136
|
-
- Updated dependencies [6d8f891]
|
|
137
|
-
- Updated dependencies [4caf075]
|
|
138
|
-
- @hydrofoil/knossos@0.6.11
|
|
139
|
-
|
|
140
|
-
## 0.4.7
|
|
141
|
-
|
|
142
|
-
### Patch Changes
|
|
143
|
-
|
|
144
|
-
- Updated dependencies [2fbddfc]
|
|
145
|
-
- Updated dependencies [6eb5d10]
|
|
146
|
-
- @hydrofoil/knossos@0.6.7
|
|
147
|
-
|
|
148
|
-
## 0.4.7-queues.0
|
|
149
|
-
|
|
150
|
-
### Patch Changes
|
|
151
|
-
|
|
152
|
-
- Updated dependencies [2fbddfc]
|
|
153
|
-
- @hydrofoil/knossos@0.6.7-queues.0
|
|
154
|
-
|
|
155
|
-
## 0.4.6
|
|
156
|
-
|
|
157
|
-
### Patch Changes
|
|
158
|
-
|
|
159
|
-
- 593b209: build(deps): bump debug from 4.3.3 to 4.3.4
|
|
160
|
-
- Updated dependencies [593b209]
|
|
161
|
-
- Updated dependencies [2dee5cd]
|
|
162
|
-
- Updated dependencies [b1b5f81]
|
|
163
|
-
- @hydrofoil/knossos@0.6.5
|
|
164
|
-
|
|
165
|
-
## 0.4.5
|
|
166
|
-
|
|
167
|
-
### Patch Changes
|
|
168
|
-
|
|
169
|
-
- 95bc5f9: HTML tags inside string literals would be modified as if they were URI references
|
|
170
|
-
- Updated dependencies [c41a049]
|
|
171
|
-
- Updated dependencies [f62fe40]
|
|
172
|
-
- Updated dependencies [722af56]
|
|
173
|
-
- Updated dependencies [3d1af89]
|
|
174
|
-
- @hydrofoil/knossos@0.6.2
|
|
175
|
-
|
|
176
|
-
## 0.4.4
|
|
177
|
-
|
|
178
|
-
### Patch Changes
|
|
179
|
-
|
|
180
|
-
- 8b7192c: build(deps): bump commander from 7.2.0 to 9.0.0
|
|
181
|
-
- 2fc5612: Bump node-fetch to 2.6.7
|
|
182
|
-
- 9d61d92: `--apiDoc` option should be optional
|
|
183
|
-
- Updated dependencies [2fd978f]
|
|
184
|
-
- Updated dependencies [8b7192c]
|
|
185
|
-
- Updated dependencies [09b0f72]
|
|
186
|
-
- @hydrofoil/knossos@0.6.1
|
|
187
|
-
|
|
188
|
-
## 0.4.4-alpha.0
|
|
189
|
-
|
|
190
|
-
### Patch Changes
|
|
191
|
-
|
|
192
|
-
- @hydrofoil/knossos@0.6.1-alpha.0
|
|
193
|
-
|
|
194
|
-
## 0.4.3
|
|
195
|
-
|
|
196
|
-
### Patch Changes
|
|
197
|
-
|
|
198
|
-
- 804bd2e: Per-resource option to merge with existing resource graph
|
|
199
|
-
|
|
200
|
-
## 0.4.2
|
|
201
|
-
|
|
202
|
-
### Patch Changes
|
|
203
|
-
|
|
204
|
-
- f6ffb3c: build(deps): bump @tpluscode/sparql-builder from 0.3.14 to 0.3.18
|
|
205
|
-
- Updated dependencies [d1fe287]
|
|
206
|
-
- Updated dependencies [f6ffb3c]
|
|
207
|
-
- Updated dependencies [d289cd9]
|
|
208
|
-
- Updated dependencies [4ecd90a]
|
|
209
|
-
- @hydrofoil/knossos@0.6.0
|
|
210
|
-
|
|
211
|
-
## 0.4.1
|
|
212
|
-
|
|
213
|
-
### Patch Changes
|
|
214
|
-
|
|
215
|
-
- fadb644: build(deps): bump sparql-http-client from 2.2.3 to 2.4.0
|
|
216
|
-
- 1692ad1: build(deps): bump @tpluscode/rdf-ns-builders from 1.0.0 to 1.1.0
|
|
217
|
-
- Updated dependencies [fdc6d68]
|
|
218
|
-
- Updated dependencies [fadb644]
|
|
219
|
-
- Updated dependencies [ff74df9]
|
|
220
|
-
- Updated dependencies [1692ad1]
|
|
221
|
-
- @hydrofoil/knossos@0.5.2
|
|
222
|
-
|
|
223
|
-
## 0.4.0
|
|
224
|
-
|
|
225
|
-
### Minor Changes
|
|
226
|
-
|
|
227
|
-
- c226b3b: Update @hydrofoil/vocabularies
|
|
228
|
-
|
|
229
|
-
### Patch Changes
|
|
230
|
-
|
|
231
|
-
- Updated dependencies [c226b3b]
|
|
232
|
-
- @hydrofoil/knossos@0.5.0
|
|
233
|
-
|
|
234
|
-
## 0.3.12
|
|
235
|
-
|
|
236
|
-
### Patch Changes
|
|
237
|
-
|
|
238
|
-
- 9905aae: Update `@tpluscode/rdf-string`
|
|
239
|
-
- Updated dependencies [be2ad8d]
|
|
240
|
-
- Updated dependencies [c95cfeb]
|
|
241
|
-
- Updated dependencies [9905aae]
|
|
242
|
-
- Updated dependencies [30417b2]
|
|
243
|
-
- @hydrofoil/knossos@0.4.6
|
|
244
|
-
|
|
245
|
-
## 0.3.11
|
|
246
|
-
|
|
247
|
-
### Patch Changes
|
|
248
|
-
|
|
249
|
-
- 3f2d7e3: build(deps): bump rdf-ext from 1.3.1 to 1.3.5
|
|
250
|
-
- Updated dependencies [3f2d7e3]
|
|
251
|
-
- Updated dependencies [f1860ff]
|
|
252
|
-
- Updated dependencies [4e070c4]
|
|
253
|
-
- @hydrofoil/knossos@0.4.3
|
|
254
|
-
|
|
255
|
-
## 0.3.10
|
|
256
|
-
|
|
257
|
-
### Patch Changes
|
|
258
|
-
|
|
259
|
-
- b51f8bf: Improvements in resolving relative paths in resources
|
|
260
|
-
|
|
261
|
-
## 0.3.9
|
|
262
|
-
|
|
263
|
-
### Patch Changes
|
|
264
|
-
|
|
265
|
-
- f83a915: `index.ttl` in root resource directory would add a trailing slash to resource URI
|
|
266
|
-
|
|
267
|
-
## 0.3.8
|
|
268
|
-
|
|
269
|
-
### Patch Changes
|
|
270
|
-
|
|
271
|
-
- 3066a74: Only first occurrence of an absolute path URI would hve been correctly rebased
|
|
272
|
-
|
|
273
|
-
## 0.3.7
|
|
274
|
-
|
|
275
|
-
### Patch Changes
|
|
276
|
-
|
|
277
|
-
- 4287aa7: Absolute paths were not correctly resolved when base URL had a path
|
|
278
|
-
|
|
279
|
-
## 0.3.6
|
|
280
|
-
|
|
281
|
-
### Patch Changes
|
|
282
|
-
|
|
283
|
-
- Updated dependencies [86e8950]
|
|
284
|
-
- Updated dependencies [76e5881]
|
|
285
|
-
- @hydrofoil/knossos@0.4.0
|
|
286
|
-
|
|
287
|
-
## 0.3.5
|
|
288
|
-
|
|
289
|
-
### Patch Changes
|
|
290
|
-
|
|
291
|
-
- Updated dependencies [26f731b]
|
|
292
|
-
- Updated dependencies [384cf21]
|
|
293
|
-
- Updated dependencies [26f731b]
|
|
294
|
-
- Updated dependencies [178f7fc]
|
|
295
|
-
- @hydrofoil/knossos@0.3.0
|
|
296
|
-
|
|
297
|
-
## 0.3.4
|
|
298
|
-
|
|
299
|
-
### Patch Changes
|
|
300
|
-
|
|
301
|
-
- 432ec61: `put`: skip invalid directories with warning
|
|
302
|
-
|
|
303
|
-
## 0.3.3
|
|
304
|
-
|
|
305
|
-
### Patch Changes
|
|
306
|
-
|
|
307
|
-
- bd43f68: Dots in resource path caused the URI to be cut short
|
|
308
|
-
|
|
309
|
-
## 0.3.2
|
|
310
|
-
|
|
311
|
-
### Patch Changes
|
|
312
|
-
|
|
313
|
-
- 6d68a5d: Resource paths were not encoded which caused Bad Request on SPARQL Update if they contained spaces or other characters not allowed in URLs
|
|
314
|
-
|
|
315
|
-
## 0.3.1
|
|
316
|
-
|
|
317
|
-
### Patch Changes
|
|
318
|
-
|
|
319
|
-
- b3e24eb: Upgrade `@hydrofoil/vocabularies`
|
|
320
|
-
- Updated dependencies [b3e24eb]
|
|
321
|
-
- @hydrofoil/knossos@0.2.3
|
|
322
|
-
|
|
323
|
-
## 0.3.0
|
|
324
|
-
|
|
325
|
-
### Minor Changes
|
|
326
|
-
|
|
327
|
-
- 2883c1c: Split `put --resources` and `put --vocabs` into separate commands
|
|
328
|
-
|
|
329
|
-
## 0.2.1
|
|
330
|
-
|
|
331
|
-
### Patch Changes
|
|
332
|
-
|
|
333
|
-
- ad1932f: Add option to put additional vocabs from compatible packages
|
|
334
|
-
|
|
335
|
-
## 0.2.0
|
|
336
|
-
|
|
337
|
-
### Minor Changes
|
|
338
|
-
|
|
339
|
-
- c51aa59: Add `hydra:apiDocumentation` to bootstrapped resources
|
|
340
|
-
|
|
341
|
-
## 0.1.2
|
|
342
|
-
|
|
343
|
-
### Patch Changes
|
|
344
|
-
|
|
345
|
-
- Updated dependencies [73ca0a8]
|
|
346
|
-
- Updated dependencies [634fd08]
|
|
347
|
-
- Updated dependencies [233b408]
|
|
348
|
-
- Updated dependencies [090d840]
|
|
349
|
-
- Updated dependencies [4cf1b24]
|
|
350
|
-
- Updated dependencies [ea8c6f9]
|
|
351
|
-
- @hydrofoil/knossos@0.2.0
|
|
352
|
-
|
|
353
|
-
## 0.1.1
|
|
354
|
-
|
|
355
|
-
### Patch Changes
|
|
356
|
-
|
|
357
|
-
- 3f6cdb8: CLI command would fail on syntax error
|
|
358
|
-
- Updated dependencies [b4906f2]
|
|
359
|
-
- Updated dependencies [699c630]
|
|
360
|
-
- Updated dependencies [3f6cdb8]
|
|
361
|
-
- @hydrofoil/knossos@0.1.1
|
|
362
|
-
|
|
363
|
-
## 0.1.0
|
|
364
|
-
|
|
365
|
-
### Minor Changes
|
|
366
|
-
|
|
367
|
-
- 8df3380: First version
|
|
368
|
-
- 2a8cebf: SHACL vocabulary inserted by default
|
|
369
|
-
|
|
370
|
-
### Patch Changes
|
|
371
|
-
|
|
372
|
-
- Updated dependencies [8ca0bbf]
|
|
373
|
-
- Updated dependencies [8df3380]
|
|
374
|
-
- @hydrofoil/knossos@0.1.0
|
package/lib/fileStream.d.ts
DELETED
package/lib/fileStream.js
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import fs from 'fs';
|
|
2
|
-
import path from 'path';
|
|
3
|
-
import * as mime from 'mime-types';
|
|
4
|
-
import replaceStream from 'replacestream';
|
|
5
|
-
import { parsers } from '@rdfjs/formats-common';
|
|
6
|
-
import isAbsoluteUrl from 'is-absolute-url';
|
|
7
|
-
import { log } from './log.js';
|
|
8
|
-
function replacer(basePath, resourceUrl, s, e = s) {
|
|
9
|
-
return (_, match) => {
|
|
10
|
-
let absolute;
|
|
11
|
-
if (isAbsoluteUrl(match)) {
|
|
12
|
-
return `${s}${match}${e}`;
|
|
13
|
-
}
|
|
14
|
-
if (match.startsWith('/') && basePath !== '/') {
|
|
15
|
-
absolute = basePath + match;
|
|
16
|
-
}
|
|
17
|
-
else {
|
|
18
|
-
absolute = new URL(match, resourceUrl).toString();
|
|
19
|
-
if (!match.endsWith('/')) {
|
|
20
|
-
absolute = absolute.replace(/\/?$/, '');
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
const absoluteUrl = new URL(absolute, resourceUrl);
|
|
24
|
-
if (absoluteUrl.pathname === '/' && basePath !== '/') {
|
|
25
|
-
absoluteUrl.pathname = basePath;
|
|
26
|
-
absolute = absoluteUrl.toString();
|
|
27
|
-
}
|
|
28
|
-
return `${s}${absolute}${e}`;
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
const angleBracketTransform = (basePath, resourceUrl) => replaceStream(/<([^>]+)>(?=([^"\\]*(\\.|"([^"\\]*\\.)*[^"\\]*"))*[^"]*$)/g, replacer(basePath, resourceUrl, '<', '>'));
|
|
32
|
-
const jsonTransform = (basePath, resourceUrl) => replaceStream(/"([./][^"]+)"/g, replacer(basePath, resourceUrl, '"'));
|
|
33
|
-
const filePatchTransforms = new Map([
|
|
34
|
-
['text/turtle', angleBracketTransform],
|
|
35
|
-
['application/n-triples', angleBracketTransform],
|
|
36
|
-
['application/n-quads', angleBracketTransform],
|
|
37
|
-
['application/trig', angleBracketTransform],
|
|
38
|
-
['application/ld+json', jsonTransform],
|
|
39
|
-
]);
|
|
40
|
-
export function getPatchedStream(file, cwd, api, resourceUrl) {
|
|
41
|
-
const relative = path.relative(cwd, file);
|
|
42
|
-
const basePath = new URL(api).pathname;
|
|
43
|
-
const mediaType = mime.lookup(file);
|
|
44
|
-
if (!mediaType) {
|
|
45
|
-
log('Could not determine media type for file %s', relative);
|
|
46
|
-
return null;
|
|
47
|
-
}
|
|
48
|
-
let fileStream = fs.createReadStream(file);
|
|
49
|
-
if (filePatchTransforms.has(mediaType)) {
|
|
50
|
-
fileStream = fileStream.pipe(filePatchTransforms.get(mediaType)(basePath, resourceUrl));
|
|
51
|
-
}
|
|
52
|
-
const parserStream = parsers.import(mediaType, fileStream, {
|
|
53
|
-
baseIRI: resourceUrl,
|
|
54
|
-
blankNodePrefix: '',
|
|
55
|
-
});
|
|
56
|
-
if (!parserStream) {
|
|
57
|
-
log('Unsupported media type %s from %s', mediaType, relative);
|
|
58
|
-
}
|
|
59
|
-
return parserStream;
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZVN0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZpbGVTdHJlYW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFBO0FBRW5CLE9BQU8sSUFBSSxNQUFNLE1BQU0sQ0FBQTtBQUN2QixPQUFPLEtBQUssSUFBSSxNQUFNLFlBQVksQ0FBQTtBQUNsQyxPQUFPLGFBQWEsTUFBTSxlQUFlLENBQUE7QUFDekMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQy9DLE9BQU8sYUFBYSxNQUFNLGlCQUFpQixDQUFBO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFOUIsU0FBUyxRQUFRLENBQUMsUUFBZ0IsRUFBRSxXQUFtQixFQUFFLENBQVMsRUFBRSxDQUFDLEdBQUcsQ0FBQztJQUN2RSxPQUFPLENBQUMsQ0FBVSxFQUFFLEtBQWEsRUFBRSxFQUFFO1FBQ25DLElBQUksUUFBZ0IsQ0FBQTtRQUNwQixJQUFJLGFBQWEsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4QixPQUFPLEdBQUcsQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQTtTQUMxQjtRQUVELElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxRQUFRLEtBQUssR0FBRyxFQUFFO1lBQzdDLFFBQVEsR0FBRyxRQUFRLEdBQUcsS0FBSyxDQUFBO1NBQzVCO2FBQU07WUFDTCxRQUFRLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFBO1lBQ2pELElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUN4QixRQUFRLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUE7YUFDeEM7U0FDRjtRQUVELE1BQU0sV0FBVyxHQUFHLElB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
|
package/lib/ns.d.ts
DELETED
package/lib/ns.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import namespace from '@rdfjs/namespace';
|
|
2
|
-
export const talosNs = namespace('urn:talos:');
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFNBQVMsTUFBTSxrQkFBa0IsQ0FBQTtBQVl4QyxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFhLFlBQVksQ0FBQyxDQUFBIn0=
|
package/lib/prefixHandler.d.ts
DELETED
package/lib/prefixHandler.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export function optionsFromPrefixes(options) {
|
|
2
|
-
return (prefix, namespace) => {
|
|
3
|
-
if (prefix === 'talos') {
|
|
4
|
-
const [key, value] = namespace.value.split(':');
|
|
5
|
-
if (key && value) {
|
|
6
|
-
options[key] = decodeURIComponent(value);
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZml4SGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInByZWZpeEhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLG1CQUFtQixDQUFDLE9BQTRCO0lBQzlELE9BQU8sQ0FBQyxNQUFjLEVBQUUsU0FBb0IsRUFBRSxFQUFFO1FBQzlDLElBQUksTUFBTSxLQUFLLE9BQU8sRUFBRTtZQUN0QixNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1lBQy9DLElBQUksR0FBRyxJQUFJLEtBQUssRUFBRTtnQkFDaEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFBO2FBQ3pDO1NBQ0Y7SUFDSCxDQUFDLENBQUE7QUFDSCxDQUFDIn0=
|
package/lib/resources.d.ts
DELETED
package/lib/resources.js
DELETED
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import path from 'path';
|
|
2
|
-
import fs from 'fs';
|
|
3
|
-
import walk from '@fcostarodrigo/walk';
|
|
4
|
-
import $rdf from 'rdf-ext';
|
|
5
|
-
import TermSet from '@rdfjs/term-set';
|
|
6
|
-
import clownface from 'clownface';
|
|
7
|
-
import deleteMatch from 'rdf-dataset-ext/deleteMatch.js';
|
|
8
|
-
import { log, debug } from './log.js';
|
|
9
|
-
import { getPatchedStream } from './fileStream.js';
|
|
10
|
-
import { optionsFromPrefixes } from './prefixHandler.js';
|
|
11
|
-
import { talosNs } from './ns.js';
|
|
12
|
-
export async function fromDirectories(directories, api) {
|
|
13
|
-
const validDirs = directories.filter(isValidDir);
|
|
14
|
-
const dataset = await validDirs.reduce(toGraphs(api), Promise.resolve($rdf.dataset()));
|
|
15
|
-
setDefaultAction(dataset);
|
|
16
|
-
return dataset;
|
|
17
|
-
}
|
|
18
|
-
function setDefaultAction(dataset) {
|
|
19
|
-
clownface({ dataset, graph: talosNs.resources })
|
|
20
|
-
.has(talosNs.action, talosNs.default)
|
|
21
|
-
.deleteOut(talosNs.action, talosNs.default)
|
|
22
|
-
.addOut(talosNs.action, talosNs.overwrite);
|
|
23
|
-
}
|
|
24
|
-
function toGraphs(api) {
|
|
25
|
-
return async function (previousPromise, dir) {
|
|
26
|
-
let previous = await previousPromise;
|
|
27
|
-
const dataset = $rdf.dataset();
|
|
28
|
-
debug('Processing dir %s', dir);
|
|
29
|
-
for await (const file of walk(dir)) {
|
|
30
|
-
const relative = path.relative(dir, file);
|
|
31
|
-
const resourcePath = path.relative(dir, file)
|
|
32
|
-
.replace(/\.[^.]+$/, '')
|
|
33
|
-
.replace(/\/?index$/, '');
|
|
34
|
-
const url = resourcePath === ''
|
|
35
|
-
? encodeURI(api)
|
|
36
|
-
: encodeURI(`${api}/${resourcePath}`);
|
|
37
|
-
const parserStream = getPatchedStream(file, dir, api, url);
|
|
38
|
-
if (!parserStream) {
|
|
39
|
-
continue;
|
|
40
|
-
}
|
|
41
|
-
debug('Parsing %s', relative);
|
|
42
|
-
const parsedResourceOptions = {};
|
|
43
|
-
parserStream.on('prefix', optionsFromPrefixes(parsedResourceOptions));
|
|
44
|
-
const resources = new TermSet();
|
|
45
|
-
const resourceOptions = clownface({ dataset: previous, graph: talosNs.resources });
|
|
46
|
-
try {
|
|
47
|
-
for await (const { subject, predicate, object, ...quad } of parserStream) {
|
|
48
|
-
const graph = quad.graph.equals($rdf.defaultGraph()) ? $rdf.namedNode(url) : quad.graph;
|
|
49
|
-
if (!resources.has(graph)) {
|
|
50
|
-
debug('Parsed resource %s', graph.value);
|
|
51
|
-
}
|
|
52
|
-
resources.add(graph);
|
|
53
|
-
dataset.add($rdf.quad(subject, predicate, object, graph));
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
catch (e) {
|
|
57
|
-
log('Failed to parse %s: %s', relative, e.message);
|
|
58
|
-
}
|
|
59
|
-
resources.forEach(id => {
|
|
60
|
-
const action = parsedResourceOptions.existingResource || 'default';
|
|
61
|
-
const environmentRepresentation = parsedResourceOptions.environmentRepresentation || 'default';
|
|
62
|
-
const options = resourceOptions.node(id);
|
|
63
|
-
options
|
|
64
|
-
.deleteOut(talosNs.action, talosNs.default)
|
|
65
|
-
.addOut(talosNs.action, talosNs(action))
|
|
66
|
-
.deleteOut(talosNs.environmentRepresentation, talosNs.default)
|
|
67
|
-
.addOut(talosNs.environmentRepresentation, talosNs(environmentRepresentation));
|
|
68
|
-
if (options.has(talosNs.environmentRepresentation, talosNs.replace).terms.length) {
|
|
69
|
-
previous = deleteMatch(previous, undefined, undefined, undefined, id);
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
previous.addAll(dataset);
|
|
74
|
-
return previous;
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
function isValidDir(dir) {
|
|
78
|
-
if (!fs.existsSync(dir)) {
|
|
79
|
-
log('Skipping path %s which does not exist', dir);
|
|
80
|
-
return false;
|
|
81
|
-
}
|
|
82
|
-
if (!fs.statSync(dir).isDirectory()) {
|
|
83
|
-
log('Skipping path %s which is not a directory', dir);
|
|
84
|
-
return false;
|
|
85
|
-
}
|
|
86
|
-
return true;
|
|
87
|
-
}
|
|
88
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicmVzb3VyY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sSUFBSSxNQUFNLE1BQU0sQ0FBQTtBQUN2QixPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUE7QUFFbkIsT0FBTyxJQUFJLE1BQU0scUJBQXFCLENBQUE7QUFDdEMsT0FBTyxJQUFJLE1BQU0sU0FBUyxDQUFBO0FBRTFCLE9BQU8sT0FBTyxNQUFNLGlCQUFpQixDQUFBO0FBQ3JDLE9BQU8sU0FBUyxNQUFNLFdBQVcsQ0FBQTtBQUNqQyxPQUFPLFdBQVcsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUNyQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sU0FBUyxDQUFBO0FBT2pDLE1BQU0sQ0FBQyxLQUFLLFVBQVUsZUFBZSxDQUFDLFdBQXFCLEVBQUUsR0FBVztJQUN0RSxNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ2hELE1BQU0sT0FBTyxHQUFHLE1BQU0sU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBRXRGLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBRXpCLE9BQU8sT0FBTyxDQUFBO0FBQ2hCLENBQUM7QUFFRCxTQUFTLGdCQUFnQixDQUFDLE9BQW9CO0lBQzVDLFNBQVMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO1NB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
|
package/readme.md
DELETED