diff --git a/package.json b/package.json index 77df67a..ec9fec5 100644 --- a/package.json +++ b/package.json @@ -104,13 +104,14 @@ "devDependencies": { "@commitlint/cli": "^19.3.0", "@commitlint/config-conventional": "^19.2.2", - "@openhps/core": ">=0.7.7", - "@openhps/rdf": ">=0.4.68", + "@comunica/config-query-sparql": "^3.1.0", + "@openhps/core": ">=0.7.8", + "@openhps/rdf": ">=0.4.69", "@types/chai": "^4.3.16", "@types/cookie-session": "^2.0.49", "@types/express": "^4.17.21", "@types/mocha": "^10.0.7", - "@types/node": "^20.14.8", + "@types/node": "^20.14.9", "@typescript-eslint/eslint-plugin": "^7.14.1", "@typescript-eslint/parser": "^7.14.1", "buffer": "^6.0.3", @@ -123,7 +124,7 @@ "eslint-plugin-jsdoc": "^48.4.0", "eslint-plugin-prettier": "^5.1.3", "husky": "^9.0.11", - "mocha": "^10.5.0", + "mocha": "^10.5.1", "mocha-junit-reporter": "^2.2.1", "node-fetch": "^3.3.2", "npm-check-updates": "^16.14.20", diff --git a/src/common/QueryEngine.ts b/src/common/QueryEngine.ts index 25b3338..c1bfa94 100644 --- a/src/common/QueryEngine.ts +++ b/src/common/QueryEngine.ts @@ -1,10 +1,13 @@ import { QueryEngineBase } from '@comunica/actor-init-query'; import type { ActorInitQueryBase } from '@comunica/actor-init-query'; +import type { IQueryContextCommon } from '@comunica/types'; /** * A Comunica SPARQL query engine. */ -export class QueryEngine extends QueryEngineBase { +export class QueryEngine< + QueryContext extends IQueryContextCommon = IQueryContextCommon, +> extends QueryEngineBase { public constructor(engine: ActorInitQueryBase) { super(engine); } diff --git a/src/common/SolidDataDriver.ts b/src/common/SolidDataDriver.ts index 0af239d..a52a9c4 100644 --- a/src/common/SolidDataDriver.ts +++ b/src/common/SolidDataDriver.ts @@ -12,7 +12,6 @@ import { } from '@openhps/rdf'; import type { QueryStringContext } from '@comunica/types'; import { QueryEngine } from './QueryEngine'; -import { object } from '@openhps/rdf/dist/types/vocab/schema'; export class SolidDataDriver extends SPARQLDataDriver { public model: Model; @@ -22,8 +21,10 @@ export class SolidDataDriver extends SPARQLDat constructor(dataType: Constructor, options?: SolidDataDriverOptions) { super(dataType, options); - this.options.engine = require('./engine-default'); // eslint-disable-line - this.engine = new QueryEngine(this.options.engine); + this.options.engine = this.options.engine ?? require('./engine-default')(); // eslint-disable-line + if (this.options.engine) { + this.engine = new QueryEngine(this.options.engine); + } this.options.lenient = true; this.options.uriPrefix = this.options.uriPrefix || '/openhps'; this.options.serialize = defaultThingSerializer; diff --git a/src/common/SolidPropertyService.ts b/src/common/SolidPropertyService.ts index f804674..06cdacf 100644 --- a/src/common/SolidPropertyService.ts +++ b/src/common/SolidPropertyService.ts @@ -1,10 +1,9 @@ import { DataService } from '@openhps/core'; -import { Property, RDFSerializer, sosa, ssn } from '@openhps/rdf'; +import { Property, RDFSerializer, dcterms, rdfs, sosa, ssn, IriString } from '@openhps/rdf'; import { SolidProfileObject } from './SolidProfileObject'; import { SolidDataDriver } from './SolidDataDriver'; import { SolidService, SolidSession } from './SolidService'; -import { IriString } from '@inrupt/solid-client'; -import { Observation } from '../models/sosa'; +import { Observation } from '@openhps/rdf/models'; export class SolidPropertyService extends DataService { protected driver: SolidDataDriver; @@ -30,23 +29,30 @@ export class SolidPropertyService extends DataService { */ fetchProperties(session: SolidSession, profile: SolidProfileObject): Promise { return new Promise((resolve, reject) => { - this.driver - .queryBindings( - ` - SELECT ?property WHERE { - ?property <${ssn.Property}> + const query = `SELECT DISTINCT ?property ?name WHERE { + ?me <${ssn.hasProperty}> ?property . + OPTIONAL { + ?property <${rdfs.label}> ?name . } - `, - session, - { - sources: [profile.webId], - lenient: true, - }, - ) + FILTER(?me = <${profile.webId}>) + }`; + this.driver + .queryBindings(query, session, { + sources: [profile.webId], + lenient: true, + }) .then((bindings) => { - console.log(bindings); const properties: Property[] = []; - + bindings.forEach((binding) => { + const url = binding.get('property').value as IriString; + const name = binding.has('name') ? binding.get('name').value : undefined; + const description = binding.has('description') ? binding.get('description').value : undefined; + const property = new Property(); + property.id = url; + property.label = name; + property.description = description; + properties.push(property); + }); resolve(properties); }) .catch(reject); @@ -62,43 +68,63 @@ export class SolidPropertyService extends DataService { createProperty(session: SolidSession, property: Property): Promise { return new Promise((resolve, reject) => { const thing = RDFSerializer.serialize(property); - this.service - .createThing(session, thing as any) - .then((dataset) => { - // Link the property to the profile - resolve(thing.value); - }) - .catch(reject); + // this.service.createThing(session, thing).then(() => { + // resolve(property.id as IriString); + // }).catch(reject); }); } /** * Add an observation to a property - * @param session - * @param property - * @param observation - * @returns + * @param session + * @param property + * @param observation + * @returns */ addObservation(session: SolidSession, property: Property, observation: Observation): Promise { - return new Promise((resolve, reject) => { - - }); + return new Promise((resolve, reject) => {}); } /** * Fetch all observations for a property - * @param session - * @param property - * @param after - * @returns + * @param session + * @param property + * @param after + * @returns */ fetchObservations(session: SolidSession, property: Property, after?: Date): Promise { return new Promise((resolve, reject) => { - const query = ` - SELECT ?observation WHERE { - ?observation <${sosa.Observation}> - } - `; + this.driver + .queryBindings( + `SELECT ?observation ?date ?result WHERE { + ?observation a <${sosa.Observation}> . + OPTIONAL { + ?observation <${sosa.resultTime}> ?date . + } + OPTIONAL { + ?observation <${dcterms.created}> ?date . + } + ?observation <${sosa.Result}> ?result . + }`, + session, + { + sources: [property.id], + lenient: true, + }, + ) + .then((bindings) => { + const observations: Observation[] = []; + bindings.forEach((binding) => { + const url = binding.get('observation').value as IriString; + const date = binding.has('date') ? new Date(binding.get('date').value) : undefined; + const result = binding.has('result') ? binding.get('result').value : undefined; + const observation = new Observation(); + observation.id = url; + observations.push(observation); + }); + resolve(observations); + }) + .catch(reject); }); } } diff --git a/src/common/engine-default.js b/src/common/engine-default.js index ec71c28..fb0eb80 100644 --- a/src/common/engine-default.js +++ b/src/common/engine-default.js @@ -5,7 +5,7 @@ function getVariableValue(name) { } return variables[name]; } -const df_477_1 = new (require('@comunica/logger-void').LoggerVoid)(); +const df_475_1 = new (require('@comunica/logger-void').LoggerVoid)(); const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_init__3_0_0_components_ActorInit_jsonld_ActorInit_default_bus = new (require('@comunica/core').Bus)({ 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-init/^3.0.0/components/ActorInit.jsonld#ActorInit_default_bus' }); @@ -27,12 +27,12 @@ const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_par const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__3_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus = new (require('@comunica/core').Bus)({ 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-result-serialize/^3.0.0/components/ActorQueryResultSerialize.jsonld#ActorQueryResultSerialize_default_bus' }); -const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_source_identify_hypermedia__3_0_0_components_ActorQuerySourceIdentifyHypermedia_jsonld_ActorQuerySourceIdentifyHypermedia_default_bus = new (require('@comunica/core').Bus)({ - 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-source-identify-hypermedia/^3.0.0/components/ActorQuerySourceIdentifyHypermedia.jsonld#ActorQuerySourceIdentifyHypermedia_default_bus' -}); const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_dereference__3_0_0_components_ActorDereference_jsonld_ActorDereference_default_bus = new (require('@comunica/core').Bus)({ 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-dereference/^3.0.0/components/ActorDereference.jsonld#ActorDereference_default_bus' }); +const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_source_identify_hypermedia__3_0_0_components_ActorQuerySourceIdentifyHypermedia_jsonld_ActorQuerySourceIdentifyHypermedia_default_bus = new (require('@comunica/core').Bus)({ + 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-source-identify-hypermedia/^3.0.0/components/ActorQuerySourceIdentifyHypermedia.jsonld#ActorQuerySourceIdentifyHypermedia_default_bus' +}); const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_dereference_rdf__3_0_0_components_ActorDereferenceRdf_jsonld_ActorDereferenceRdf_default_bus = new (require('@comunica/core').Bus)({ 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-dereference-rdf/^3.0.0/components/ActorDereferenceRdf.jsonld#ActorDereferenceRdf_default_bus' }); @@ -72,15 +72,15 @@ const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_updat const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_update_quads__3_0_0_components_ActorRdfUpdateQuads_jsonld_ActorRdfUpdateQuads_default_bus = new (require('@comunica/core').Bus)({ 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-update-quads/^3.0.0/components/ActorRdfUpdateQuads.jsonld#ActorRdfUpdateQuads_default_bus' }); -const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__3_0_0_components_ActorHttp_jsonld_ActorHttp_default_bus = new (require('@comunica/core').Bus)({ - 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-http/^3.0.0/components/ActorHttp.jsonld#ActorHttp_default_bus' -}); const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__3_0_0_components_ActorHttp_jsonld_ActorHttp_fallback_bus = new (require('@comunica/core').Bus)({ 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-http/^3.0.0/components/ActorHttp.jsonld#ActorHttp_fallback_bus' }); const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus = new (require('@comunica/bus-query-operation').BusQueryOperation)({ 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-operation/^3.0.0/components/ActorQueryOperation.jsonld#ActorQueryOperation_default_bus' }); +const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__3_0_0_components_ActorHttp_jsonld_ActorHttp_default_bus = new (require('@comunica/core').Bus)({ + 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-http/^3.0.0/components/ActorHttp.jsonld#ActorHttp_default_bus' +}); const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_process__3_0_0_components_ActorQueryProcess_jsonld_ActorQueryProcess_default_bus = new (require('@comunica/core').Bus)({ 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-process/^3.0.0/components/ActorQueryProcess.jsonld#ActorQueryProcess_default_bus' }); @@ -96,6 +96,14 @@ const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http_inva const https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_merge_bindings_context__3_0_0_components_ActorMergeBindingsContext_jsonld_ActorMergeBindingsContext_default_bus = new (require('@comunica/core').Bus)({ 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-merge-bindings-context/^3.0.0/components/ActorMergeBindingsContext.jsonld#ActorMergeBindingsContext_default_bus' }); +const urn_comunica_default_extract_links_actors_predicates_ldp = new (require('@comunica/actor-extract-links-predicates').ActorExtractLinksPredicates)({ + 'checkSubject': true, + 'predicateRegexes': [ + 'http://www.w3.org/ns/ldp#contains' +], + 'name': 'urn:comunica:default:extract-links/actors#predicates-ldp', + 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_extract_links__0_0_0_components_ActorExtractLinks_jsonld_ActorExtractLinks_default_bus +}); const urn_comunica_default_extract_links_actors_predicates_common = new (require('@comunica/actor-extract-links-predicates').ActorExtractLinksPredicates)({ 'checkSubject': false, 'predicateRegexes': [ @@ -106,14 +114,6 @@ const urn_comunica_default_extract_links_actors_predicates_common = new (require 'name': 'urn:comunica:default:extract-links/actors#predicates-common', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_extract_links__0_0_0_components_ActorExtractLinks_jsonld_ActorExtractLinks_default_bus }); -const urn_comunica_default_extract_links_actors_predicates_ldp = new (require('@comunica/actor-extract-links-predicates').ActorExtractLinksPredicates)({ - 'checkSubject': true, - 'predicateRegexes': [ - 'http://www.w3.org/ns/ldp#contains' -], - 'name': 'urn:comunica:default:extract-links/actors#predicates-ldp', - 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_extract_links__0_0_0_components_ActorExtractLinks_jsonld_ActorExtractLinks_default_bus -}); const urn_comunica_default_extract_links_actors_links_describedby = new (require('@comunica/actor-extract-links-headers').ActorExtractLinksHeaders)({ 'headersRegexes': [ 'rel="describedby"' @@ -143,13 +143,17 @@ const urn_comunica_default_extract_links_mediators_main = new (require('@comunic 'name': 'urn:comunica:default:extract-links/mediators#main', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_extract_links__0_0_0_components_ActorExtractLinks_jsonld_ActorExtractLinks_default_bus }); +const urn_comunica_default_context_preprocess_actors_set_defaults_link_traversal = new (require('@comunica/actor-context-preprocess-set-defaults-link-traversal').ActorContextPreprocessSetDefaultsLinkTraversal)({ + 'name': 'urn:comunica:default:context-preprocess/actors#set-defaults-link-traversal', + 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_context_preprocess__3_0_0_components_ActorContextPreprocess_jsonld_ActorContextPreprocess_default_bus +}); const urn_comunica_default_context_preprocess_actors_convert_shortcuts = new (require('@comunica/actor-context-preprocess-convert-shortcuts').ActorContextPreprocessConvertShortcuts)({ 'contextKeyShortcuts': {"baseIRI":"@comunica/actor-init-query:baseIRI","datetime":"@comunica/actor-http-memento:datetime","destination":"@comunica/bus-rdf-update-quads:destination","explain":"@comunica/actor-init-query:explain","extensionFunctionCreator":"@comunica/actor-init-query:extensionFunctionCreator","extensionFunctions":"@comunica/actor-init-query:extensionFunctions","fetch":"@comunica/bus-http:fetch","functionArgumentsCache":"@comunica/actor-init-query:functionArgumentsCache","httpAuth":"@comunica/bus-http:auth","httpBodyTimeout":"@comunica/bus-http:http-body-timeout","httpIncludeCredentials":"@comunica/bus-http:include-credentials","httpProxyHandler":"@comunica/actor-http-proxy:httpProxyHandler","httpRetryCount":"@comunica/bus-http:http-retry-count","httpRetryDelay":"@comunica/bus-http:http-retry-delay","httpRetryOnServerError":"@comunica/bus-http:http-retry-on-server-error","httpTimeout":"@comunica/bus-http:http-timeout","initialBindings":"@comunica/actor-init-query:initialBindings","lenient":"@comunica/actor-init-query:lenient","log":"@comunica/core:log","noCache":"@comunica/actor-init-query:noCache","queryFormat":"@comunica/actor-init-query:queryFormat","queryTimestamp":"@comunica/actor-init-query:queryTimestamp","readOnly":"@comunica/bus-query-operation:readOnly","recoverBrokenLinks":"@comunica/bus-http-wayback:recover-broken-links","sources":"@comunica/actor-init-query:querySourcesUnidentified","traverse":"@comunica/bus-query-source-identify:traverse","unionDefaultGraph":"@comunica/bus-query-operation:unionDefaultGraph"}, 'name': 'urn:comunica:default:context-preprocess/actors#convert-shortcuts', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_context_preprocess__3_0_0_components_ActorContextPreprocess_jsonld_ActorContextPreprocess_default_bus }); const urn_comunica_default_context_preprocess_actors_set_defaults = new (require('@comunica/actor-context-preprocess-set-defaults').ActorContextPreprocessSetDefaults)({ - 'logger': df_477_1, + 'logger': df_475_1, 'name': 'urn:comunica:default:context-preprocess/actors#set-defaults', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_context_preprocess__3_0_0_components_ActorContextPreprocess_jsonld_ActorContextPreprocess_default_bus }); @@ -161,10 +165,6 @@ const urn_comunica_default_context_preprocess_actors_query_source_skolemize = ne 'name': 'urn:comunica:default:context-preprocess/actors#query-source-skolemize', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_context_preprocess__3_0_0_components_ActorContextPreprocess_jsonld_ActorContextPreprocess_default_bus }); -const urn_comunica_default_context_preprocess_actors_set_defaults_link_traversal = new (require('@comunica/actor-context-preprocess-set-defaults-link-traversal').ActorContextPreprocessSetDefaultsLinkTraversal)({ - 'name': 'urn:comunica:default:context-preprocess/actors#set-defaults-link-traversal', - 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_context_preprocess__3_0_0_components_ActorContextPreprocess_jsonld_ActorContextPreprocess_default_bus -}); const urn_comunica_default_context_preprocess_mediators_main = new (require('@comunica/mediator-combine-pipeline').MediatorCombinePipeline)({ 'name': 'urn:comunica:default:context-preprocess/mediators#main', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_context_preprocess__3_0_0_components_ActorContextPreprocess_jsonld_ActorContextPreprocess_default_bus @@ -268,13 +268,6 @@ const urn_comunica_default_query_result_serialize_mediators_mediaTypeFormat = ne 'name': 'urn:comunica:default:query-result-serialize/mediators#mediaTypeFormat', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__3_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus }); -const urn_comunica_default_query_source_identify_hypermedia_mediators_main = new (require('@comunica/mediator-number').MediatorNumber)({ - 'field': 'filterFactor', - 'type': 'max', - 'ignoreErrors': true, - 'name': 'urn:comunica:default:query-source-identify-hypermedia/mediators#main', - 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_source_identify_hypermedia__3_0_0_components_ActorQuerySourceIdentifyHypermedia_jsonld_ActorQuerySourceIdentifyHypermedia_default_bus -}); const urn_comunica_default_dereference_actors_fallback = new (require('@comunica/actor-dereference-fallback').ActorDereferenceFallback)({ 'name': 'urn:comunica:default:dereference/actors#fallback', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_dereference__3_0_0_components_ActorDereference_jsonld_ActorDereference_default_bus @@ -283,6 +276,13 @@ const urn_comunica_default_dereference_mediators_main = new (require('@comunica/ 'name': 'urn:comunica:default:dereference/mediators#main', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_dereference__3_0_0_components_ActorDereference_jsonld_ActorDereference_default_bus }); +const urn_comunica_default_query_source_identify_hypermedia_mediators_main = new (require('@comunica/mediator-number').MediatorNumber)({ + 'field': 'filterFactor', + 'type': 'max', + 'ignoreErrors': true, + 'name': 'urn:comunica:default:query-source-identify-hypermedia/mediators#main', + 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_source_identify_hypermedia__3_0_0_components_ActorQuerySourceIdentifyHypermedia_jsonld_ActorQuerySourceIdentifyHypermedia_default_bus +}); const urn_comunica_default_dereference_rdf_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({ 'name': 'urn:comunica:default:dereference-rdf/mediators#main', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_dereference_rdf__3_0_0_components_ActorDereferenceRdf_jsonld_ActorDereferenceRdf_default_bus @@ -440,14 +440,14 @@ const urn_comunica_default_rdf_parse_html_actors_rdfa = new (require('@comunica/ 'name': 'urn:comunica:default:rdf-parse-html/actors#rdfa', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse_html__3_0_0_components_ActorRdfParseHtml_jsonld_ActorRdfParseHtml_default_bus }); -const urn_comunica_default_rdf_resolve_hypermedia_links_actors_traverse = new (require('@comunica/actor-rdf-resolve-hypermedia-links-traverse').ActorRdfResolveHypermediaLinksTraverse)({ - 'name': 'urn:comunica:default:rdf-resolve-hypermedia-links/actors#traverse', - 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia_links__3_0_0_components_ActorRdfResolveHypermediaLinks_jsonld_ActorRdfResolveHypermediaLinks_default_bus -}); const urn_comunica_default_rdf_resolve_hypermedia_links_actors_next = new (require('@comunica/actor-rdf-resolve-hypermedia-links-next').ActorRdfResolveHypermediaLinksNext)({ 'name': 'urn:comunica:default:rdf-resolve-hypermedia-links/actors#next', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia_links__3_0_0_components_ActorRdfResolveHypermediaLinks_jsonld_ActorRdfResolveHypermediaLinks_default_bus }); +const urn_comunica_default_rdf_resolve_hypermedia_links_actors_traverse = new (require('@comunica/actor-rdf-resolve-hypermedia-links-traverse').ActorRdfResolveHypermediaLinksTraverse)({ + 'name': 'urn:comunica:default:rdf-resolve-hypermedia-links/actors#traverse', + 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia_links__3_0_0_components_ActorRdfResolveHypermediaLinks_jsonld_ActorRdfResolveHypermediaLinks_default_bus +}); const urn_comunica_default_rdf_resolve_hypermedia_links_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({ 'name': 'urn:comunica:default:rdf-resolve-hypermedia-links/mediators#main', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia_links__3_0_0_components_ActorRdfResolveHypermediaLinks_jsonld_ActorRdfResolveHypermediaLinks_default_bus @@ -507,18 +507,6 @@ const urn_comunica_default_rdf_update_quads_mediators_main = new (require('@comu 'name': 'urn:comunica:default:rdf-update-quads/mediators#main', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_update_quads__3_0_0_components_ActorRdfUpdateQuads_jsonld_ActorRdfUpdateQuads_default_bus }); -const urn_comunica_default_http_actors_fetch = new (require('@comunica/actor-http-fetch').ActorHttpFetch)({ - 'agentOptions': {"keepAlive":true,"maxSockets":5}, - 'name': 'urn:comunica:default:http/actors#fetch', - 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__3_0_0_components_ActorHttp_jsonld_ActorHttp_default_bus -}); -const urn_comunica_default_http_mediators_no_fallback = new (require('@comunica/mediator-number').MediatorNumber)({ - 'field': 'time', - 'type': 'min', - 'ignoreErrors': true, - 'name': 'urn:comunica:default:http/mediators#no-fallback', - 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__3_0_0_components_ActorHttp_jsonld_ActorHttp_default_bus -}); const urn_comunica_default_http_mediators_main = new (require('@comunica/mediator-number').MediatorNumber)({ 'field': 'time', 'type': 'min', @@ -537,6 +525,18 @@ const urn_comunica_default_query_operation_mediators_main = new (require('@comun 'name': 'urn:comunica:default:query-operation/mediators#main', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); +const urn_comunica_default_http_actors_fetch = new (require('@comunica/actor-http-fetch').ActorHttpFetch)({ + 'agentOptions': {"keepAlive":true,"maxSockets":5}, + 'name': 'urn:comunica:default:http/actors#fetch', + 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__3_0_0_components_ActorHttp_jsonld_ActorHttp_default_bus +}); +const urn_comunica_default_http_mediators_no_fallback = new (require('@comunica/mediator-number').MediatorNumber)({ + 'field': 'time', + 'type': 'min', + 'ignoreErrors': true, + 'name': 'urn:comunica:default:http/mediators#no-fallback', + 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__3_0_0_components_ActorHttp_jsonld_ActorHttp_default_bus +}); const urn_comunica_default_query_process_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({ 'name': 'urn:comunica:default:query-process/mediators#main', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_process__3_0_0_components_ActorQueryProcess_jsonld_ActorQueryProcess_default_bus @@ -611,11 +611,6 @@ const urn_comunica_default_rdf_join_actors_inner_nested_loop = new (require('@co 'name': 'urn:comunica:default:rdf-join/actors#inner-nested-loop', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__3_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus }); -const urn_comunica_default_rdf_join_actors_optional_nested_loop = new (require('@comunica/actor-rdf-join-optional-nestedloop').ActorRdfJoinOptionalNestedLoop)({ - 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main, - 'name': 'urn:comunica:default:rdf-join/actors#optional-nested-loop', - 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__3_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus -}); const urn_comunica_default_rdf_join_actors_minus_hash = new (require('@comunica/actor-rdf-join-minus-hash').ActorRdfJoinMinusHash)({ 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main, 'name': 'urn:comunica:default:rdf-join/actors#minus-hash', @@ -626,6 +621,11 @@ const urn_comunica_default_rdf_join_actors_minus_hash_undef = new (require('@com 'name': 'urn:comunica:default:rdf-join/actors#minus-hash-undef', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__3_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus }); +const urn_comunica_default_rdf_join_actors_optional_nested_loop = new (require('@comunica/actor-rdf-join-optional-nestedloop').ActorRdfJoinOptionalNestedLoop)({ + 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main, + 'name': 'urn:comunica:default:rdf-join/actors#optional-nested-loop', + 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__3_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus +}); const urn_comunica_default_dereference_rdf_actors_parse = new (require('@comunica/actor-dereference-rdf-parse').ActorDereferenceRdfParse)({ 'mediatorDereference': urn_comunica_default_dereference_mediators_main, 'mediatorParse': urn_comunica_default_rdf_parse_mediators_parse, @@ -647,11 +647,6 @@ const urn_comunica_default_query_result_serialize_actors_rdf = new (require('@co 'name': 'urn:comunica:default:query-result-serialize/actors#rdf', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__3_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus }); -const urn_comunica_default_http_actors_wayback = new (require('@comunica/actor-http-wayback').ActorHttpWayback)({ - 'mediatorHttp': urn_comunica_default_http_mediators_no_fallback, - 'name': 'urn:comunica:default:http/actors#wayback', - 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__3_0_0_components_ActorHttp_jsonld_ActorHttp_fallback_bus -}); const urn_comunica_default_rdf_parse_actors_jsonld = new (require('@comunica/actor-rdf-parse-jsonld').ActorRdfParseJsonLd)({ 'mediatorHttp': urn_comunica_default_http_mediators_main, 'mediaTypePriorities': {"application/json":0.15,"application/ld+json":1}, @@ -684,14 +679,14 @@ const urn_comunica_default_query_operation_actors_ask = new (require('@comunica/ 'name': 'urn:comunica:default:query-operation/actors#ask', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); -const urn_comunica_default_query_operation_actors_bgp = new (require('@comunica/actor-query-operation-bgp-join').ActorQueryOperationBgpJoin)({ +const urn_comunica_default_query_operation_actors_construct = new (require('@comunica/actor-query-operation-construct').ActorQueryOperationConstruct)({ 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, - 'name': 'urn:comunica:default:query-operation/actors#bgp', + 'name': 'urn:comunica:default:query-operation/actors#construct', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); -const urn_comunica_default_query_operation_actors_construct = new (require('@comunica/actor-query-operation-construct').ActorQueryOperationConstruct)({ +const urn_comunica_default_query_operation_actors_bgp = new (require('@comunica/actor-query-operation-bgp-join').ActorQueryOperationBgpJoin)({ 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, - 'name': 'urn:comunica:default:query-operation/actors#construct', + 'name': 'urn:comunica:default:query-operation/actors#bgp', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); const urn_comunica_default_query_operation_actors_distinct = new (require('@comunica/actor-query-operation-distinct-hash').ActorQueryOperationDistinctHash)({ @@ -705,11 +700,6 @@ const urn_comunica_default_query_operation_actors_from = new (require('@comunica 'name': 'urn:comunica:default:query-operation/actors#from', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); -const urn_comunica_default_query_operation_actors_project = new (require('@comunica/actor-query-operation-project').ActorQueryOperationProject)({ - 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, - 'name': 'urn:comunica:default:query-operation/actors#project', - 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus -}); const urn_comunica_default_query_operation_actors_reduced = new (require('@comunica/actor-query-operation-reduced-hash').ActorQueryOperationReducedHash)({ 'mediatorHashBindings': urn_comunica_default_hash_bindings_mediators_main, 'cacheSize': 100, @@ -717,6 +707,11 @@ const urn_comunica_default_query_operation_actors_reduced = new (require('@comun 'name': 'urn:comunica:default:query-operation/actors#reduced', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); +const urn_comunica_default_query_operation_actors_project = new (require('@comunica/actor-query-operation-project').ActorQueryOperationProject)({ + 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, + 'name': 'urn:comunica:default:query-operation/actors#project', + 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus +}); const urn_comunica_default_query_operation_actors_slice = new (require('@comunica/actor-query-operation-slice').ActorQueryOperationSlice)({ 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, 'name': 'urn:comunica:default:query-operation/actors#slice', @@ -728,31 +723,25 @@ const urn_comunica_default_query_operation_actors_union = new (require('@comunic 'name': 'urn:comunica:default:query-operation/actors#union', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); -const urn_comunica_default_query_operation_actors_path_link = new (require('@comunica/actor-query-operation-path-link').ActorQueryOperationPathLink)({ - 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, - 'name': 'urn:comunica:default:query-operation/actors#path-link', - 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus -}); const urn_comunica_default_query_operation_actors_path_alt = new (require('@comunica/actor-query-operation-path-alt').ActorQueryOperationPathAlt)({ 'mediatorRdfMetadataAccumulate': urn_comunica_default_rdf_metadata_accumulate_mediators_main, 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, 'name': 'urn:comunica:default:query-operation/actors#path-alt', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); -const urn_comunica_default_query_operation_actors_path_nps = new (require('@comunica/actor-query-operation-path-nps').ActorQueryOperationPathNps)({ +const urn_comunica_default_query_operation_actors_path_inv = new (require('@comunica/actor-query-operation-path-inv').ActorQueryOperationPathInv)({ 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, - 'name': 'urn:comunica:default:query-operation/actors#path-nps', + 'name': 'urn:comunica:default:query-operation/actors#path-inv', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); -const urn_comunica_default_query_operation_actors_path_inv = new (require('@comunica/actor-query-operation-path-inv').ActorQueryOperationPathInv)({ +const urn_comunica_default_query_operation_actors_path_link = new (require('@comunica/actor-query-operation-path-link').ActorQueryOperationPathLink)({ 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, - 'name': 'urn:comunica:default:query-operation/actors#path-inv', + 'name': 'urn:comunica:default:query-operation/actors#path-link', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); -const urn_comunica_default_query_operation_actors_update_clear = new (require('@comunica/actor-query-operation-update-clear').ActorQueryOperationClear)({ - 'mediatorUpdateQuads': urn_comunica_default_rdf_update_quads_mediators_main, +const urn_comunica_default_query_operation_actors_path_nps = new (require('@comunica/actor-query-operation-path-nps').ActorQueryOperationPathNps)({ 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, - 'name': 'urn:comunica:default:query-operation/actors#update-clear', + 'name': 'urn:comunica:default:query-operation/actors#path-nps', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); const urn_comunica_default_query_operation_actors_update_composite = new (require('@comunica/actor-query-operation-update-compositeupdate').ActorQueryOperationUpdateCompositeUpdate)({ @@ -760,6 +749,12 @@ const urn_comunica_default_query_operation_actors_update_composite = new (requir 'name': 'urn:comunica:default:query-operation/actors#update-composite', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); +const urn_comunica_default_query_operation_actors_update_clear = new (require('@comunica/actor-query-operation-update-clear').ActorQueryOperationClear)({ + 'mediatorUpdateQuads': urn_comunica_default_rdf_update_quads_mediators_main, + 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, + 'name': 'urn:comunica:default:query-operation/actors#update-clear', + 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus +}); const urn_comunica_default_query_operation_actors_update_create = new (require('@comunica/actor-query-operation-update-create').ActorQueryOperationCreate)({ 'mediatorUpdateQuads': urn_comunica_default_rdf_update_quads_mediators_main, 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, @@ -772,6 +767,11 @@ const urn_comunica_default_query_operation_actors_update_drop = new (require('@c 'name': 'urn:comunica:default:query-operation/actors#update-drop', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); +const urn_comunica_default_http_actors_wayback = new (require('@comunica/actor-http-wayback').ActorHttpWayback)({ + 'mediatorHttp': urn_comunica_default_http_mediators_no_fallback, + 'name': 'urn:comunica:default:http/actors#wayback', + 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__3_0_0_components_ActorHttp_jsonld_ActorHttp_fallback_bus +}); const urn_comunica_default_query_operation_actors_update_load = new (require('@comunica/actor-query-operation-update-load').ActorQueryOperationLoad)({ 'mediatorUpdateQuads': urn_comunica_default_rdf_update_quads_mediators_main, 'mediatorQuerySourceIdentify': urn_comunica_default_query_source_identify_mediators_main, @@ -920,12 +920,6 @@ const urn_comunica_default_query_operation_actors_extend = new (require('@comuni 'name': 'urn:comunica:default:query-operation/actors#extend', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); -const urn_comunica_default_query_operation_actors_filter = new (require('@comunica/actor-query-operation-filter').ActorQueryOperationFilter)({ - 'mediatorMergeBindingsContext': urn_comunica_default_merge_bindings_context_mediators_main, - 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, - 'name': 'urn:comunica:default:query-operation/actors#filter', - 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus -}); const urn_comunica_default_query_operation_actors_group = new (require('@comunica/actor-query-operation-group').ActorQueryOperationGroup)({ 'mediatorHashBindings': urn_comunica_default_hash_bindings_mediators_main, 'mediatorMergeBindingsContext': urn_comunica_default_merge_bindings_context_mediators_main, @@ -933,11 +927,10 @@ const urn_comunica_default_query_operation_actors_group = new (require('@comunic 'name': 'urn:comunica:default:query-operation/actors#group', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); -const urn_comunica_default_query_operation_actors_leftjoin = new (require('@comunica/actor-query-operation-leftjoin').ActorQueryOperationLeftJoin)({ - 'mediatorJoin': urn_comunica_default_rdf_join_mediators_main, +const urn_comunica_default_query_operation_actors_filter = new (require('@comunica/actor-query-operation-filter').ActorQueryOperationFilter)({ 'mediatorMergeBindingsContext': urn_comunica_default_merge_bindings_context_mediators_main, 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, - 'name': 'urn:comunica:default:query-operation/actors#leftjoin', + 'name': 'urn:comunica:default:query-operation/actors#filter', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); const urn_comunica_default_query_operation_actors_nop = new (require('@comunica/actor-query-operation-nop').ActorQueryOperationNop)({ @@ -946,6 +939,13 @@ const urn_comunica_default_query_operation_actors_nop = new (require('@comunica/ 'name': 'urn:comunica:default:query-operation/actors#nop', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus }); +const urn_comunica_default_query_operation_actors_leftjoin = new (require('@comunica/actor-query-operation-leftjoin').ActorQueryOperationLeftJoin)({ + 'mediatorJoin': urn_comunica_default_rdf_join_mediators_main, + 'mediatorMergeBindingsContext': urn_comunica_default_merge_bindings_context_mediators_main, + 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, + 'name': 'urn:comunica:default:query-operation/actors#leftjoin', + 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__3_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus +}); const urn_comunica_default_query_operation_actors_orderby = new (require('@comunica/actor-query-operation-orderby').ActorQueryOperationOrderBy)({ 'mediatorMergeBindingsContext': urn_comunica_default_merge_bindings_context_mediators_main, 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main, @@ -999,6 +999,11 @@ const urn_comunica_default_query_process_actors_sequential = new (require('@comu 'name': 'urn:comunica:default:query-process/actors#sequential', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_process__3_0_0_components_ActorQueryProcess_jsonld_ActorQueryProcess_default_bus }); +const urn_comunica_default_query_source_identify_actors_rdfjs = new (require('@comunica/actor-query-source-identify-rdfjs').ActorQuerySourceIdentifyRdfJs)({ + 'mediatorMergeBindingsContext': urn_comunica_default_merge_bindings_context_mediators_main, + 'name': 'urn:comunica:default:query-source-identify/actors#rdfjs', + 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_source_identify__3_0_0_components_ActorQuerySourceIdentify_jsonld_ActorQuerySourceIdentify_default_bus +}); const urn_comunica_default_query_source_identify_actors_hypermedia = new (require('@comunica/actor-query-source-identify-hypermedia').ActorQuerySourceIdentifyHypermedia)({ 'cacheSize': 2048, 'maxIterators': 64, @@ -1014,11 +1019,6 @@ const urn_comunica_default_query_source_identify_actors_hypermedia = new (requir 'name': 'urn:comunica:default:query-source-identify/actors#hypermedia', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_source_identify__3_0_0_components_ActorQuerySourceIdentify_jsonld_ActorQuerySourceIdentify_default_bus }); -const urn_comunica_default_query_source_identify_actors_rdfjs = new (require('@comunica/actor-query-source-identify-rdfjs').ActorQuerySourceIdentifyRdfJs)({ - 'mediatorMergeBindingsContext': urn_comunica_default_merge_bindings_context_mediators_main, - 'name': 'urn:comunica:default:query-source-identify/actors#rdfjs', - 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_source_identify__3_0_0_components_ActorQuerySourceIdentify_jsonld_ActorQuerySourceIdentify_default_bus -}); const urn_comunica_default_rdf_join_actors_inner_none = new (require('@comunica/actor-rdf-join-inner-none').ActorRdfJoinNone)({ 'mediatorMergeBindingsContext': urn_comunica_default_merge_bindings_context_mediators_main, 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main, @@ -1074,14 +1074,14 @@ const urn_comunica_default_query_result_serialize_actors_stats = new (require('@ 'name': 'urn:comunica:default:query-result-serialize/actors#stats', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__3_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus }); -const urn_comunica_default_query_process_actors_explain_parsed = new (require('@comunica/actor-query-process-explain-parsed').ActorQueryProcessExplainParsed)({ +const urn_comunica_default_query_process_actors_explain_logical = new (require('@comunica/actor-query-process-explain-logical').ActorQueryProcessExplainLogical)({ 'queryProcessor': urn_comunica_default_query_process_actors_sequential, - 'name': 'urn:comunica:default:query-process/actors#explain-parsed', + 'name': 'urn:comunica:default:query-process/actors#explain-logical', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_process__3_0_0_components_ActorQueryProcess_jsonld_ActorQueryProcess_default_bus }); -const urn_comunica_default_query_process_actors_explain_logical = new (require('@comunica/actor-query-process-explain-logical').ActorQueryProcessExplainLogical)({ +const urn_comunica_default_query_process_actors_explain_parsed = new (require('@comunica/actor-query-process-explain-parsed').ActorQueryProcessExplainParsed)({ 'queryProcessor': urn_comunica_default_query_process_actors_sequential, - 'name': 'urn:comunica:default:query-process/actors#explain-logical', + 'name': 'urn:comunica:default:query-process/actors#explain-parsed', 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_process__3_0_0_components_ActorQueryProcess_jsonld_ActorQueryProcess_default_bus }); const urn_comunica_default_query_process_actors_explain_physical = new (require('@comunica/actor-query-process-explain-physical').ActorQueryProcessExplainPhysical)({ @@ -1155,18 +1155,18 @@ const urn_comunica_default_optimize_query_operation_actors_describe_to_construct ] }); const urn_comunica_default_Runner = (https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_init__3_0_0_components_ActorInit_jsonld_ActorInit_default_bus, [ - urn_comunica_default_extract_links_actors_predicates_common, urn_comunica_default_extract_links_actors_predicates_ldp, + urn_comunica_default_extract_links_actors_predicates_common, urn_comunica_default_extract_links_actors_links_describedby, + urn_comunica_default_extract_links_actors_solid_type_index, urn_comunica_default_extract_links_actors_predicates_solid, urn_comunica_default_extract_links_actors_quad_pattern_query, - urn_comunica_default_extract_links_actors_solid_type_index, + urn_comunica_default_context_preprocess_actors_set_defaults_link_traversal, urn_comunica_default_context_preprocess_actors_convert_shortcuts, urn_comunica_default_context_preprocess_actors_set_defaults, urn_comunica_default_context_preprocess_actors_source_to_destination, urn_comunica_default_context_preprocess_actors_query_source_identify, urn_comunica_default_context_preprocess_actors_query_source_skolemize, - urn_comunica_default_context_preprocess_actors_set_defaults_link_traversal, urn_comunica_default_hash_bindings_actors_sha1, urn_comunica_default_init_actors_query, urn_comunica_default_optimize_query_operation_actors_set_seed_sources_quadpattern_iris, @@ -1182,11 +1182,11 @@ const urn_comunica_default_Runner = (https___linkedsoftwaredependencies_org_bund urn_comunica_default_query_result_serialize_actors_stats, urn_comunica_default_query_result_serialize_actors_table, urn_comunica_default_query_result_serialize_actors_tree, + urn_comunica_default_dereference_actors_http, + urn_comunica_default_dereference_actors_fallback, urn_comunica_default_query_source_identify_hypermedia_actors_qpf, urn_comunica_default_rdf_resolve_quad_pattern_actors_sparql, urn_comunica_default_query_source_identify_hypermedia_actors_none, - urn_comunica_default_dereference_actors_http, - urn_comunica_default_dereference_actors_fallback, urn_comunica_default_dereference_rdf_actors_parse, urn_comunica_default_rdf_join_entries_sort_actors_traversal_zero_knowledge, urn_comunica_default_rdf_join_selectivity_actors_variable_counting, @@ -1214,8 +1214,8 @@ const urn_comunica_default_Runner = (https___linkedsoftwaredependencies_org_bund urn_comunica_default_rdf_parse_html_actors_microdata, urn_comunica_default_rdf_parse_html_actors_rdfa, urn_comunica_default_rdf_parse_html_actors_script, - urn_comunica_default_rdf_resolve_hypermedia_links_actors_traverse, urn_comunica_default_rdf_resolve_hypermedia_links_actors_next, + urn_comunica_default_rdf_resolve_hypermedia_links_actors_traverse, urn_comunica_default_rdf_resolve_hypermedia_links_queue_actors_fifo, urn_comunica_default_rdf_serialize_actors_n3, urn_comunica_default_rdf_serialize_actors_jsonld, @@ -1225,10 +1225,8 @@ const urn_comunica_default_Runner = (https___linkedsoftwaredependencies_org_bund urn_comunica_default_rdf_update_hypermedia_actors_sparql, urn_comunica_default_rdf_update_quads_actors_hypermedia, urn_comunica_default_rdf_update_quads_actors_rdfjs_store, - urn_comunica_default_http_actors_proxy, - urn_comunica_default_http_actors_inrupt_solid_client_authn, - urn_comunica_default_http_actors_fetch, urn_comunica_default_http_actors_wayback, + urn_comunica_default_query_operation_actors_ask, urn_comunica_default_optimize_query_operation_actors_rewrite_copy, urn_comunica_default_optimize_query_operation_actors_rewrite_move, urn_comunica_default_optimize_query_operation_actors_rewrite_add, @@ -1240,47 +1238,49 @@ const urn_comunica_default_Runner = (https___linkedsoftwaredependencies_org_bund urn_comunica_default_optimize_query_operation_actors_prune_empty_source_operations, urn_comunica_default_optimize_query_operation_actors_filter_pushdown, urn_comunica_default_optimize_query_operation_actors_group_sources, - urn_comunica_default_query_operation_actors_ask, - urn_comunica_default_query_operation_actors_bgp, + urn_comunica_default_http_actors_proxy, + urn_comunica_default_http_actors_inrupt_solid_client_authn, + urn_comunica_default_http_actors_fetch, + urn_comunica_default_query_operation_actors_extend, urn_comunica_default_query_operation_actors_construct, + urn_comunica_default_query_operation_actors_bgp, urn_comunica_default_query_operation_actors_distinct, - urn_comunica_default_query_operation_actors_extend, - urn_comunica_default_query_operation_actors_filter, urn_comunica_default_query_operation_actors_from, urn_comunica_default_query_operation_actors_group, + urn_comunica_default_query_operation_actors_filter, urn_comunica_default_query_operation_actors_join, - urn_comunica_default_query_operation_actors_leftjoin, urn_comunica_default_query_operation_actors_minus, urn_comunica_default_query_operation_actors_nop, + urn_comunica_default_query_operation_actors_leftjoin, urn_comunica_default_query_operation_actors_orderby, - urn_comunica_default_query_operation_actors_project, urn_comunica_default_query_operation_actors_reduced, + urn_comunica_default_query_operation_actors_project, urn_comunica_default_query_operation_actors_service, urn_comunica_default_query_operation_actors_slice, urn_comunica_default_query_operation_actors_source, urn_comunica_default_query_operation_actors_union, urn_comunica_default_query_operation_actors_values, - urn_comunica_default_query_operation_actors_path_link, urn_comunica_default_query_operation_actors_path_alt, + urn_comunica_default_query_operation_actors_path_inv, + urn_comunica_default_query_operation_actors_path_link, urn_comunica_default_query_operation_actors_path_nps, urn_comunica_default_query_operation_actors_path_one_or_more, - urn_comunica_default_query_operation_actors_path_inv, urn_comunica_default_query_operation_actors_path_seq, urn_comunica_default_query_operation_actors_path_zero_or_more, urn_comunica_default_query_operation_actors_path_zero_or_one, - urn_comunica_default_query_operation_actors_update_clear, urn_comunica_default_query_operation_actors_update_composite, + urn_comunica_default_query_operation_actors_update_clear, urn_comunica_default_query_operation_actors_update_create, urn_comunica_default_query_operation_actors_update_delete_insert, urn_comunica_default_query_operation_actors_update_drop, urn_comunica_default_query_operation_actors_update_load, urn_comunica_default_query_process_actors_sequential, - urn_comunica_default_query_process_actors_explain_parsed, urn_comunica_default_query_process_actors_explain_logical, + urn_comunica_default_query_process_actors_explain_parsed, urn_comunica_default_query_process_actors_explain_physical, - urn_comunica_default_query_source_identify_actors_hypermedia, urn_comunica_default_query_source_identify_actors_rdfjs, urn_comunica_default_query_source_identify_actors_serialized, + urn_comunica_default_query_source_identify_actors_hypermedia, urn_comunica_default_rdf_join_actors_inner_none, urn_comunica_default_rdf_join_actors_inner_single, urn_comunica_default_rdf_join_actors_inner_multi_bind, @@ -1290,10 +1290,10 @@ const urn_comunica_default_Runner = (https___linkedsoftwaredependencies_org_bund urn_comunica_default_rdf_join_actors_inner_nested_loop, urn_comunica_default_rdf_join_actors_inner_multi_smallest, urn_comunica_default_rdf_join_actors_inner_multi_smallest_filter_bindings, - urn_comunica_default_rdf_join_actors_optional_bind, - urn_comunica_default_rdf_join_actors_optional_nested_loop, urn_comunica_default_rdf_join_actors_minus_hash, - urn_comunica_default_rdf_join_actors_minus_hash_undef + urn_comunica_default_rdf_join_actors_minus_hash_undef, + urn_comunica_default_rdf_join_actors_optional_bind, + urn_comunica_default_rdf_join_actors_optional_nested_loop ]); return urn_comunica_default_init_actors_query; } diff --git a/src/common/index.ts b/src/common/index.ts index b650e9a..a32b5e9 100644 --- a/src/common/index.ts +++ b/src/common/index.ts @@ -6,4 +6,4 @@ export * from './SolidProfileObject'; export * from './SolidDataDriver'; export * from './SolidPropertyService'; export * from './DatasetSubscription'; -export const DefaultEngine: ActorInitQueryBase = require('./engine-default'); // eslint-disable-line \ No newline at end of file +export const DefaultEngine: ActorInitQueryBase = require('./engine-default')(); // eslint-disable-line diff --git a/src/models/ldes/EventStream.ts b/src/models/ldes/EventStream.ts index 7b5ddbf..af5fc9c 100644 --- a/src/models/ldes/EventStream.ts +++ b/src/models/ldes/EventStream.ts @@ -1,30 +1,30 @@ -import { SerializableMember, SerializableObject } from "@openhps/core"; -import { dcterms, SerializableNamedNode, SerializableThing } from "@openhps/rdf"; -import { ldes, tree } from "../../terms"; +import { SerializableMember, SerializableObject } from '@openhps/core'; +import { dcterms, SerializableNamedNode, SerializableThing } from '@openhps/rdf'; +import { ldes, tree } from '../../terms'; @SerializableObject({ rdf: { type: ldes.EventStream, - } + }, }) export class EventStream extends SerializableThing { @SerializableMember({ rdf: { - predicate: ldes.timestampPath - } + predicate: ldes.timestampPath, + }, }) protected timestampPath: SerializableNamedNode = new SerializableNamedNode(dcterms.created); @SerializableMember({ rdf: { - predicate: ldes.versionOfPath - } + predicate: ldes.versionOfPath, + }, }) protected versionOfPath: SerializableNamedNode = new SerializableNamedNode(dcterms.isVersionOf); @SerializableMember({ rdf: { - predicate: tree.view - } + predicate: tree.view, + }, }) view: SerializableNamedNode; } diff --git a/src/models/ldp/Container.ts b/src/models/ldp/Container.ts index 4a701c3..f0c3319 100644 --- a/src/models/ldp/Container.ts +++ b/src/models/ldp/Container.ts @@ -1,12 +1,10 @@ -import { SerializableObject } from "@openhps/core"; -import { ldp } from "../../terms"; -import { SerializableThing } from "@openhps/rdf"; +import { SerializableObject } from '@openhps/core'; +import { ldp } from '../../terms'; +import { SerializableThing } from '@openhps/rdf'; @SerializableObject({ rdf: { type: ldp.Container, - } + }, }) -export class Container extends SerializableThing { - -} +export class Container extends SerializableThing {} diff --git a/src/models/sosa/ActuableProperty.ts b/src/models/sosa/ActuableProperty.ts deleted file mode 100644 index b947774..0000000 --- a/src/models/sosa/ActuableProperty.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { SerializableObject } from '@openhps/core'; -import { sosa } from '@openhps/rdf'; -import { Property } from './Property'; - -@SerializableObject({ - rdf: { - type: sosa.ActuatableProperty, - }, -}) -export class ActuableProperty extends Property {} diff --git a/src/models/sosa/FeatureOfInterest.ts b/src/models/sosa/FeatureOfInterest.ts deleted file mode 100644 index 0e3b2ba..0000000 --- a/src/models/sosa/FeatureOfInterest.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { DataObject, SerializableArrayMember, SerializableMember, SerializableObject } from '@openhps/core'; -import { ActuableProperty } from './ActuableProperty'; -import { dcterms, rdfs, ssn } from '@openhps/rdf'; -import { ObservableProperty } from './ObservableProperty'; -import { Property } from './Property'; - -@SerializableObject() -export class FeatureOfInterest extends DataObject { - @SerializableArrayMember(ActuableProperty, { - rdf: { - predicate: ssn.hasProperty, - }, - }) - actuableProperties?: ActuableProperty[]; - - @SerializableArrayMember(ObservableProperty, { - rdf: { - predicate: ssn.hasProperty, - }, - }) - observableProperties?: ObservableProperty[]; - - get properties(): Property[] { - return [...(this.actuableProperties ?? []), ...(this.observableProperties ?? [])]; - } - - @SerializableMember({ - rdf: { - predicate: [rdfs.comment, dcterms.description], - language: 'en', - }, - }) - description: string; -} diff --git a/src/models/sosa/ObservableProperty.ts b/src/models/sosa/ObservableProperty.ts deleted file mode 100644 index b56ce06..0000000 --- a/src/models/sosa/ObservableProperty.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { SerializableObject } from '@openhps/core'; -import { sosa } from '@openhps/rdf'; -import { Property } from './Property'; - -@SerializableObject({ - rdf: { - type: sosa.ObservableProperty, - }, -}) -export class ObservableProperty extends Property {} diff --git a/src/models/sosa/Observation.ts b/src/models/sosa/Observation.ts deleted file mode 100644 index dacb1a1..0000000 --- a/src/models/sosa/Observation.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { SerializableArrayMember, SerializableMember, SerializableObject } from '@openhps/core'; -import { sosa } from '@openhps/rdf'; -import { FeatureOfInterest } from './FeatureOfInterest'; -import { ObservableProperty } from './ObservableProperty'; -import { IriString, Thing } from '@openhps/rdf'; -import { SerializableThing } from '@openhps/rdf'; -import { xsd } from '@openhps/rdf'; -import { DataFactory } from 'n3'; - -@SerializableObject({ - rdf: { - type: sosa.Observation, - }, -}) -export class Observation extends SerializableThing { - @SerializableMember({ - rdf: { - predicate: sosa.resultTime, - datatype: xsd.dateTime, - }, - }) - resultTime: Date; - - @SerializableArrayMember(FeatureOfInterest, { - rdf: { - predicate: sosa.hasFeatureOfInterest, - }, - }) - featuresOfInterest: FeatureOfInterest[] = []; - - @SerializableArrayMember(ObservableProperty, { - rdf: { - predicate: sosa.observedProperty, - }, - }) - observedProperties: ObservableProperty[] = []; - - // eslint-disable-next-line - @SerializableArrayMember(Object, { - rdf: { - predicate: sosa.hasResult, - }, - }) - results: Object[] = []; // eslint-disable-line - - @SerializableArrayMember(String, { - rdf: { - predicate: sosa.usedProcedure, - serializer: (value: string) => DataFactory.namedNode(value), - deserializer: (thing: Thing) => thing.value, - }, - }) - usedProcedures: IriString[] = []; -} diff --git a/src/models/sosa/Procedure.ts b/src/models/sosa/Procedure.ts deleted file mode 100644 index 2c996ae..0000000 --- a/src/models/sosa/Procedure.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { Node, SerializableMember, SerializableObject } from '@openhps/core'; -import { sosa, rdfs } from '@openhps/rdf'; -import { SerializableThing } from '@openhps/rdf'; - -@SerializableObject({ - rdf: { - type: sosa.Procedure, - }, -}) -export class Procedure extends SerializableThing { // eslint-disable-line - @SerializableMember({ - rdf: { - predicate: rdfs.label, - language: 'en', - }, - }) - label?: string; - - @SerializableMember({ - rdf: { - predicate: rdfs.comment, - language: 'en', - }, - }) - comment?: string; -} -export interface Procedure extends SerializableThing, Node {} // eslint-disable-line - diff --git a/src/models/sosa/Property.ts b/src/models/sosa/Property.ts deleted file mode 100644 index 1ea74d1..0000000 --- a/src/models/sosa/Property.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { SerializableMember, SerializableObject } from '@openhps/core'; -import { rdfs, ssn, dcterms } from '@openhps/rdf'; -import { DataFactory } from 'n3'; -import { IriString, Thing } from '@openhps/rdf'; -import { SerializableThing } from '@openhps/rdf'; - -@SerializableObject({ - rdf: { - type: ssn.Property, - }, -}) -export class Property extends SerializableThing { - @SerializableMember({ - rdf: { - predicate: rdfs.label, - language: 'en', - }, - }) - label?: string; - - @SerializableMember({ - rdf: { - predicate: [rdfs.comment, dcterms.description], - language: 'en', - }, - }) - description?: string; - - @SerializableMember({ - rdf: { - predicate: ssn.isPropertyOf, - serializer: (value: string) => DataFactory.namedNode(value), - deserializer: (thing: Thing) => thing.value, - }, - }) - featureOfInterest?: IriString; -} diff --git a/src/models/sosa/PropertyAccuracy.ts b/src/models/sosa/PropertyAccuracy.ts deleted file mode 100644 index b00ba3f..0000000 --- a/src/models/sosa/PropertyAccuracy.ts +++ /dev/null @@ -1,55 +0,0 @@ -import { SerializableMember, SerializableObject, Unit } from '@openhps/core'; -import { schema, ssn, ssns, rdfs } from '@openhps/rdf'; -import { ObservableProperty } from './ObservableProperty'; -import { SerializableThing } from '@openhps/rdf'; - -@SerializableObject({ - rdf: { - type: ssns.Accuracy, - }, -}) -export class PropertyAccuracy extends SerializableThing { - @SerializableMember({ - rdf: { - predicate: rdfs.label, - language: 'en', - }, - }) - label?: string; - - @SerializableMember({ - rdf: { - predicate: rdfs.comment, - language: 'en', - }, - }) - comment?: string; - - @SerializableMember({ - rdf: { - predicate: ssn.forProperty, - }, - }) - forProperty: ObservableProperty; - - @SerializableMember({ - rdf: { - predicate: schema.minValue, - }, - }) - minValue: number; - - @SerializableMember({ - rdf: { - predicate: schema.maxValue, - }, - }) - maxValue: number; - - @SerializableMember({ - rdf: { - predicate: schema.unitCode, - }, - }) - unit: Unit; -} diff --git a/src/models/sosa/System.ts b/src/models/sosa/System.ts deleted file mode 100644 index caabbf0..0000000 --- a/src/models/sosa/System.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { Model, SerializableArrayMember, SerializableMember, SerializableObject } from '@openhps/core'; -import { rdfs, ssn } from '../../vocab'; -import { Procedure } from './Procedure'; -import { Deployment } from './Deployment'; -import { ModelGraph } from '@openhps/core/internal'; -import { applyMixins } from '../utils'; -import { SerializableThing } from '../SerializableThing'; - -@SerializableObject({ - rdf: { - type: ssn.System, - }, -}) -export class System extends SerializableThing { // eslint-disable-line - @SerializableMember({ - rdf: { - predicate: rdfs.label, - language: 'en', - }, - }) - label?: string; - - @SerializableMember({ - rdf: { - predicate: rdfs.comment, - language: 'en', - }, - }) - comment?: string; - - @SerializableMember({ - rdf: { - predicate: ssn.hasDeployment, - language: 'en', - }, - }) - deployment?: Deployment; - - @SerializableArrayMember(System, { - rdf: { - predicate: ssn.hasSubSystem, - }, - }) - subSystems?: System[] = []; - - @SerializableArrayMember(Procedure, { - rdf: { - predicate: ssn._implements, - }, - }) - procedures?: Procedure[] = []; -} -export interface System extends SerializableThing, Model {} // eslint-disable-line -applyMixins(System, [ModelGraph]); diff --git a/src/models/sosa/index.ts b/src/models/sosa/index.ts deleted file mode 100644 index be45f5d..0000000 --- a/src/models/sosa/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -export * from './ObservableProperty'; -export * from './Property'; -export * from './ActuableProperty'; -export * from './PropertyAccuracy'; -export * from './Observation'; -export * from './FeatureOfInterest'; -export * from './Deployment'; -export * from './System'; -export * from './Procedure'; diff --git a/src/models/tree/Collection.ts b/src/models/tree/Collection.ts index 18b4fcf..31e5d3d 100644 --- a/src/models/tree/Collection.ts +++ b/src/models/tree/Collection.ts @@ -1,12 +1,10 @@ -import { SerializableObject } from "@openhps/core"; -import { tree } from "../../terms"; -import { SerializableThing } from "@openhps/rdf"; +import { SerializableObject } from '@openhps/core'; +import { tree } from '../../terms'; +import { SerializableThing } from '@openhps/rdf'; @SerializableObject({ rdf: { type: tree.Collection, - } + }, }) -export class Collection extends SerializableThing { - -} +export class Collection extends SerializableThing {} diff --git a/src/models/tree/Node.ts b/src/models/tree/Node.ts index fa33138..8a646a5 100644 --- a/src/models/tree/Node.ts +++ b/src/models/tree/Node.ts @@ -1,12 +1,12 @@ -import { SerializableArrayMember, SerializableObject } from "@openhps/core"; -import { tree } from "../../terms"; -import { SerializableThing } from "@openhps/rdf"; -import { Relation } from "./Relation"; +import { SerializableArrayMember, SerializableObject } from '@openhps/core'; +import { tree } from '../../terms'; +import { SerializableThing } from '@openhps/rdf'; +import { Relation } from './Relation'; @SerializableObject({ rdf: { type: tree.Node, - } + }, }) export class Node extends SerializableThing { @SerializableArrayMember(Relation, { diff --git a/src/models/tree/Relation.ts b/src/models/tree/Relation.ts index bdd646b..12e7bb3 100644 --- a/src/models/tree/Relation.ts +++ b/src/models/tree/Relation.ts @@ -1,68 +1,59 @@ -import { SerializableMember, SerializableObject } from "@openhps/core"; -import { tree } from "../../terms"; -import { SerializableNamedNode } from "@openhps/rdf"; +import { SerializableMember, SerializableObject } from '@openhps/core'; +import { tree } from '../../terms'; +import { SerializableNamedNode } from '@openhps/rdf'; @SerializableObject({ rdf: { - type: tree.Relation - } + type: tree.Relation, + }, }) export class Relation { @SerializableMember({ rdf: { - predicate: tree.node - } + predicate: tree.node, + }, }) node?: Node; @SerializableMember({ rdf: { - predicate: tree.path - } + predicate: tree.path, + }, }) path?: SerializableNamedNode; @SerializableMember({ rdf: { - predicate: tree.value - } + predicate: tree.value, + }, }) value: Object; } @SerializableObject({ rdf: { - type: tree.GreaterThanOrEqualToRelation - } + type: tree.GreaterThanOrEqualToRelation, + }, }) -export class GreaterThanOrEqualToRelation extends Relation { - -} - +export class GreaterThanOrEqualToRelation extends Relation {} @SerializableObject({ rdf: { - type: tree.GreaterThanRelation - } + type: tree.GreaterThanRelation, + }, }) -export class GreaterThanRelation extends Relation { - -} +export class GreaterThanRelation extends Relation {} @SerializableObject({ rdf: { - type: tree.LessThanOrEqualToRelation - } + type: tree.LessThanOrEqualToRelation, + }, }) -export class LessThanOrEqualToRelation extends Relation { - -} +export class LessThanOrEqualToRelation extends Relation {} @SerializableObject({ rdf: { - type: tree.LessThanRelation - } + type: tree.LessThanRelation, + }, }) -export class LessThanRelation extends Relation { - -} +export class LessThanRelation extends Relation {} diff --git a/src/terms/index.ts b/src/terms/index.ts index fc67f7d..da3b559 100644 --- a/src/terms/index.ts +++ b/src/terms/index.ts @@ -1,3 +1,6 @@ -import * as ldesImport from './ldes'; export const ldes = ldesImport; -import * as ldpImport from './ldp'; export const ldp = ldpImport; -import * as treeImport from './tree'; export const tree = treeImport; \ No newline at end of file +import * as ldesImport from './ldes'; +export const ldes = ldesImport; +import * as ldpImport from './ldp'; +export const ldp = ldpImport; +import * as treeImport from './tree'; +export const tree = treeImport; diff --git a/src/terms/ldes.ts b/src/terms/ldes.ts index ca5794c..b1523d2 100644 --- a/src/terms/ldes.ts +++ b/src/terms/ldes.ts @@ -14,7 +14,7 @@ type OtherIndividual = IriString; // eslint-disable-line /** * has retention policy - * + * * Links to a retention policy. * * https://w3id.org/ldes#retentionPolicy @@ -23,7 +23,7 @@ export const retentionPolicy: Property = 'https://w3id.org/ldes#retentionPolicy' /** * amount - * + * * Amount of versions to keep. * * https://w3id.org/ldes#amount @@ -32,7 +32,7 @@ export const amount: Property = 'https://w3id.org/ldes#amount'; /** * point in time - * + * * After this point in time members are kept. * * https://w3id.org/ldes#pointInTime @@ -41,7 +41,7 @@ export const pointInTime: Property = 'https://w3id.org/ldes#pointInTime'; /** * version key - * + * * A list of SHACL property paths to compose a version key. * * https://w3id.org/ldes#versionKey @@ -50,7 +50,7 @@ export const versionKey: Property = 'https://w3id.org/ldes#versionKey'; /** * versionOf Path - * + * * SHACL property path to the non-versioned identifier of the entity. * * https://w3id.org/ldes#versionOfPath @@ -59,7 +59,7 @@ export const versionOfPath: Property = 'https://w3id.org/ldes#versionOfPath'; /** * Timestamp Path - * + * * SHACL property path to the timestamp when the version object entered the event stream. * * https://w3id.org/ldes#timestampPath @@ -68,7 +68,7 @@ export const timestampPath: Property = 'https://w3id.org/ldes#timestampPath'; /** * Version Materialization Of - * + * * Links to the original LDES * * https://w3id.org/ldes#versionMaterializationOf @@ -77,7 +77,7 @@ export const versionMaterializationOf: Property = 'https://w3id.org/ldes#version /** * Version Materialization Until - * + * * Timestamp until versions were processed * * https://w3id.org/ldes#versionMaterializationUntil @@ -86,7 +86,7 @@ export const versionMaterializationUntil: Property = 'https://w3id.org/ldes#vers /** * Event Stream - * + * * An Event Stream is a tree:Collection containing immutable members. * * https://w3id.org/ldes#EventStream @@ -95,7 +95,7 @@ export const EventStream: Class = 'https://w3id.org/ldes#EventStream'; /** * The Linked Data Event Streams specification - * + * * A hypermedia specification for maintaining a collection with immutable members. * * https://w3id.org/ldes#Vocabulary @@ -104,7 +104,7 @@ export const Vocabulary: OtherIndividual = 'https://w3id.org/ldes#Vocabulary'; /** * Retention Policy - * + * * The abstract concept of a retention policy. * * https://w3id.org/ldes#RetentionPolicy @@ -112,4 +112,4 @@ export const Vocabulary: OtherIndividual = 'https://w3id.org/ldes#Vocabulary'; export const RetentionPolicy: OtherIndividual = 'https://w3id.org/ldes#RetentionPolicy'; export const _BASE: IriString = 'https://w3id.org/ldes#'; -export const _PREFIX: string = 'ldes'; \ No newline at end of file +export const _PREFIX: string = 'ldes'; diff --git a/src/terms/ldp.ts b/src/terms/ldp.ts index c518f30..dc37632 100644 --- a/src/terms/ldp.ts +++ b/src/terms/ldp.ts @@ -13,265 +13,265 @@ type HydraVariableRepresentation = IriString; // eslint-disable-line type OtherIndividual = IriString; // eslint-disable-line /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#hasMemberRelation */ export const hasMemberRelation: Property = 'http://www.w3.org/ns/ldp#hasMemberRelation'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#isMemberOfRelation */ export const isMemberOfRelation: Property = 'http://www.w3.org/ns/ldp#isMemberOfRelation'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#membershipResource */ export const membershipResource: Property = 'http://www.w3.org/ns/ldp#membershipResource'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#insertedContentRelation */ export const insertedContentRelation: Property = 'http://www.w3.org/ns/ldp#insertedContentRelation'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#member */ export const member: Property = 'http://www.w3.org/ns/ldp#member'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#contains */ export const contains: Property = 'http://www.w3.org/ns/ldp#contains'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#constrainedBy */ export const constrainedBy: Property = 'http://www.w3.org/ns/ldp#constrainedBy'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#pageSortCriteria */ export const pageSortCriteria: Property = 'http://www.w3.org/ns/ldp#pageSortCriteria'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#pageSortPredicate */ export const pageSortPredicate: Property = 'http://www.w3.org/ns/ldp#pageSortPredicate'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#pageSortOrder */ export const pageSortOrder: Property = 'http://www.w3.org/ns/ldp#pageSortOrder'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#pageSortCollation */ export const pageSortCollation: Property = 'http://www.w3.org/ns/ldp#pageSortCollation'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#pageSequence */ export const pageSequence: Property = 'http://www.w3.org/ns/ldp#pageSequence'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#inbox */ export const inbox: Property = 'http://www.w3.org/ns/ldp#inbox'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#Resource */ export const Resource: Class = 'http://www.w3.org/ns/ldp#Resource'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#RDFSource */ export const RDFSource: Class = 'http://www.w3.org/ns/ldp#RDFSource'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#NonRDFSource */ export const NonRDFSource: Class = 'http://www.w3.org/ns/ldp#NonRDFSource'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#Container */ export const Container: Class = 'http://www.w3.org/ns/ldp#Container'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#BasicContainer */ export const BasicContainer: Class = 'http://www.w3.org/ns/ldp#BasicContainer'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#DirectContainer */ export const DirectContainer: Class = 'http://www.w3.org/ns/ldp#DirectContainer'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#IndirectContainer */ export const IndirectContainer: Class = 'http://www.w3.org/ns/ldp#IndirectContainer'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#Page */ export const Page: Class = 'http://www.w3.org/ns/ldp#Page'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#PageSortCriterion */ export const PageSortCriterion: Class = 'http://www.w3.org/ns/ldp#PageSortCriterion'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#MemberSubject */ export const MemberSubject: OtherIndividual = 'http://www.w3.org/ns/ldp#MemberSubject'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#PreferContainment */ export const PreferContainment: OtherIndividual = 'http://www.w3.org/ns/ldp#PreferContainment'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#PreferMembership */ export const PreferMembership: OtherIndividual = 'http://www.w3.org/ns/ldp#PreferMembership'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#PreferEmptyContainer */ export const PreferEmptyContainer: OtherIndividual = 'http://www.w3.org/ns/ldp#PreferEmptyContainer'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#PreferMinimalContainer */ export const PreferMinimalContainer: OtherIndividual = 'http://www.w3.org/ns/ldp#PreferMinimalContainer'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#Ascending */ export const Ascending: OtherIndividual = 'http://www.w3.org/ns/ldp#Ascending'; /** - * - * - * + * + * + * * * http://www.w3.org/ns/ldp#Descending */ export const Descending: OtherIndividual = 'http://www.w3.org/ns/ldp#Descending'; export const _BASE: IriString = 'http://www.w3.org/ns/ldp#'; -export const _PREFIX: string = 'ldp'; \ No newline at end of file +export const _PREFIX: string = 'ldp'; diff --git a/src/terms/tree.ts b/src/terms/tree.ts index 2644b1a..78ef839 100644 --- a/src/terms/tree.ts +++ b/src/terms/tree.ts @@ -13,8 +13,8 @@ type HydraVariableRepresentation = IriString; // eslint-disable-line type OtherIndividual = IriString; // eslint-disable-line /** - * - * + * + * * Links together a tree:Node with its description of this TREE structure * * https://w3id.org/tree#viewDescription @@ -23,7 +23,7 @@ export const viewDescription: Property = 'https://w3id.org/tree#viewDescription' /** * Relation - * + * * Links a node with another through a Relation class * * https://w3id.org/tree#relation @@ -32,7 +32,7 @@ export const relation: Property = 'https://w3id.org/tree#relation'; /** * Remaining Items - * + * * Total number of items of this node and its children * * https://w3id.org/tree#remainingItems @@ -41,7 +41,7 @@ export const remainingItems: Property = 'https://w3id.org/tree#remainingItems'; /** * Has node - * + * * The URL to follow when this Node cannot be pruned * * https://w3id.org/tree#node @@ -50,7 +50,7 @@ export const node: Property = 'https://w3id.org/tree#node'; /** * Value - * + * * The value the node linked in the node relation is compared to * * https://w3id.org/tree#value @@ -59,7 +59,7 @@ export const value: Property = 'https://w3id.org/tree#value'; /** * Path - * + * * A property path, as defined by shacl, that indicates what resource the tree:value affects. * * https://w3id.org/tree#path @@ -68,7 +68,7 @@ export const path: Property = 'https://w3id.org/tree#path'; /** * View - * + * * Links the collection to the current page. * * https://w3id.org/tree#view @@ -77,7 +77,7 @@ export const view: Property = 'https://w3id.org/tree#view'; /** * Member - * + * * The collection has a member. * * https://w3id.org/tree#member @@ -86,7 +86,7 @@ export const member: Property = 'https://w3id.org/tree#member'; /** * Search - * + * * The Node can be searched for child nodes. * * https://w3id.org/tree#search @@ -95,7 +95,7 @@ export const search: Property = 'https://w3id.org/tree#search'; /** * Shape - * + * * The SHACL shape the members of the collection adhere to. * * https://w3id.org/tree#shape @@ -104,7 +104,7 @@ export const shape: Property = 'https://w3id.org/tree#shape'; /** * Import - * + * * Imports a file in order being able to evaluate a tree:path correctly or comply fully to the tree:shape defined in the Collection * Note that `import` is a reserved Javascript keyword, and is therefore suffixed by `__workaround`. * For a list of reserved keywords, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Keywords. @@ -115,7 +115,7 @@ export const import__workaround: Property = 'https://w3id.org/tree#import'; /** * Import conditionally - * + * * Imports a file in order being able to evaluate a tree:path correctly * * https://w3id.org/tree#conditionalImport @@ -124,7 +124,7 @@ export const conditionalImport: Property = 'https://w3id.org/tree#conditionalImp /** * Zoom level - * + * * The zoom level of the tile cfr. OSM convention * * https://w3id.org/tree#zoom @@ -133,7 +133,7 @@ export const zoom: Property = 'https://w3id.org/tree#zoom'; /** * The X tile number - * + * * The X tile number from longitude cfr. OSM convention * * https://w3id.org/tree#longitudeTile @@ -142,7 +142,7 @@ export const longitudeTile: Property = 'https://w3id.org/tree#longitudeTile'; /** * The Y tile number - * + * * The Y tile number from latitude cfr. OSM convention * * https://w3id.org/tree#latitudeTile @@ -151,7 +151,7 @@ export const latitudeTile: Property = 'https://w3id.org/tree#latitudeTile'; /** * Time Query - * + * * Will search for elements starting from a certain timestamp * * https://w3id.org/tree#timeQuery @@ -160,7 +160,7 @@ export const timeQuery: Property = 'https://w3id.org/tree#timeQuery'; /** * Collection - * + * * A tree:Collection is a collection containing members. The members may be spread across multiple tree:Nodes. * * https://w3id.org/tree#Collection @@ -169,7 +169,7 @@ export const Collection: Class = 'https://w3id.org/tree#Collection'; /** * View Description - * + * * Describes a specific TREE structure on top of the tree:Collection * * https://w3id.org/tree#ViewDescription @@ -178,7 +178,7 @@ export const ViewDescription: Class = 'https://w3id.org/tree#ViewDescription'; /** * Node - * + * * A tree:Node is a node that may contain relations to other nodes. * * https://w3id.org/tree#Node @@ -187,7 +187,7 @@ export const Node: Class = 'https://w3id.org/tree#Node'; /** * Relation - * + * * A class describing the relation between two nodes * * https://w3id.org/tree#Relation @@ -196,7 +196,7 @@ export const Relation: Class = 'https://w3id.org/tree#Relation'; /** * Conditional Import - * + * * Import a page when the tree:path is interesting for the client * * https://w3id.org/tree#ConditionalImport @@ -205,7 +205,7 @@ export const ConditionalImport: Class = 'https://w3id.org/tree#ConditionalImport /** * Prefix Relation - * + * * All members of this related node start with this prefix * * https://w3id.org/tree#PrefixRelation @@ -214,7 +214,7 @@ export const PrefixRelation: Class = 'https://w3id.org/tree#PrefixRelation'; /** * Substring Relation - * + * * All members of this related node contain this substring * * https://w3id.org/tree#SubstringRelation @@ -223,7 +223,7 @@ export const SubstringRelation: Class = 'https://w3id.org/tree#SubstringRelation /** * Suffix Relation - * + * * All members of this related node end with this suffix * * https://w3id.org/tree#SuffixRelation @@ -232,7 +232,7 @@ export const SuffixRelation: Class = 'https://w3id.org/tree#SuffixRelation'; /** * Greater Than Relation - * + * * All members of this related node are greater than the value * * https://w3id.org/tree#GreaterThanRelation @@ -241,7 +241,7 @@ export const GreaterThanRelation: Class = 'https://w3id.org/tree#GreaterThanRela /** * Greater than or equal to relation - * + * * All members of this related node are greater than or equal to the value * * https://w3id.org/tree#GreaterThanOrEqualToRelation @@ -250,8 +250,8 @@ export const GreaterThanOrEqualToRelation: Class = 'https://w3id.org/tree#Greate /** * Less Than Relation - * - * + * + * * * https://w3id.org/tree#LessThanRelation */ @@ -259,8 +259,8 @@ export const LessThanRelation: Class = 'https://w3id.org/tree#LessThanRelation'; /** * Less than or equal to Relation - * - * + * + * * * https://w3id.org/tree#LessThanOrEqualToRelation */ @@ -268,8 +268,8 @@ export const LessThanOrEqualToRelation: Class = 'https://w3id.org/tree#LessThanO /** * Equal To Relation - * - * + * + * * * https://w3id.org/tree#EqualToRelation */ @@ -277,8 +277,8 @@ export const EqualToRelation: Class = 'https://w3id.org/tree#EqualToRelation'; /** * Not equal To Relation - * - * + * + * * * https://w3id.org/tree#NotEqualToRelation */ @@ -286,7 +286,7 @@ export const NotEqualToRelation: Class = 'https://w3id.org/tree#NotEqualToRelati /** * Geospatially Contains Relation - * + * * All further members are geospatially contained within the WKT string of the tree:value. * * https://w3id.org/tree#GeospatiallyContainsRelation @@ -295,7 +295,7 @@ export const GeospatiallyContainsRelation: Class = 'https://w3id.org/tree#Geospa /** * In Between Relation - * + * * For comparing intervals: all further members are in-between the given interval * * https://w3id.org/tree#InBetweenRelation @@ -304,7 +304,7 @@ export const InBetweenRelation: Class = 'https://w3id.org/tree#InBetweenRelation /** * TREE - * + * * A hypermedia specification for fragmenting collections. * * https://w3id.org/tree#Ontology @@ -312,4 +312,4 @@ export const InBetweenRelation: Class = 'https://w3id.org/tree#InBetweenRelation export const Ontology: OtherIndividual = 'https://w3id.org/tree#Ontology'; export const _BASE: IriString = 'https://w3id.org/tree#'; -export const _PREFIX: string = 'tree'; \ No newline at end of file +export const _PREFIX: string = 'tree'; diff --git a/test/specs/solid.property.service.spec.ts b/test/specs/solid.property.service.spec.ts index 3dde9ef..f8b4041 100644 --- a/test/specs/solid.property.service.spec.ts +++ b/test/specs/solid.property.service.spec.ts @@ -27,7 +27,19 @@ describe('SolidPropertyService', () => { it('should fetch properties from a profile', (done) => { const profile = new SolidProfileObject("https://maximvdw.solidweb.org/profile/card#me"); service.fetchProperties(session, profile).then(properties => { - expect(properties).to.have.lengthOf(0); + expect(properties).to.have.lengthOf(3); + done(); + }).catch(done); + }); + }); + + describe('fetching observations', () => { + it('should fetch observations from a property', (done) => { + const profile = new SolidProfileObject("https://maximvdw.solidweb.org/profile/card#me"); + service.fetchProperties(session, profile).then(properties => { + return service.fetchObservations(session, properties[1]); + }).then(observations => { + console.log(observations); done(); }).catch(done); }); @@ -35,10 +47,11 @@ describe('SolidPropertyService', () => { describe('creating properties', () => { it('should create a new property', (done) => { - // service.createProperty(session, new Property()).then(property => { - // expect(property).to.be.a('string'); - // done(); - // }).catch(done); + const property = new Property(); + service.createProperty(session, new Property()).then(property => { + expect(property).to.be.a('string'); + done(); + }).catch(done); }); }); }); diff --git a/yarn.lock b/yarn.lock index 1e09e5a..7e1ddb0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3795,10 +3795,10 @@ read-package-json-fast "^3.0.0" which "^3.0.0" -"@openhps/core@>=0.7.7": - version "0.7.7" - resolved "https://registry.yarnpkg.com/@openhps/core/-/core-0.7.7.tgz#7e4926a8db970b0b9c458726c82d5be1fdd1d9e0" - integrity sha512-gST/THTgHm3qSqW5ETpc9zAhYZ1neEcKzjYCVAoLE6IOCxbijHWNM1O2vuDJINJlkfFcK25gc4xMdV8quiNpSg== +"@openhps/core@>=0.7.8": + version "0.7.8" + resolved "https://registry.yarnpkg.com/@openhps/core/-/core-0.7.8.tgz#8d5858cff60a7d22c40382131bee1a77f635a8c2" + integrity sha512-CL8xSFYCvcuB5NoBrj8pyrlvVC4LOZaeuAWD+lvxw23fuDykkhuN/H7yKE0PDEx7NXUpMVu7O+SOnkDh4uatOA== dependencies: lodash.clonedeep "^4.5.0" reflect-metadata ">=0.2.2" @@ -3823,10 +3823,10 @@ robust-predicates "^3.0.2" wkt "^0.1.1" -"@openhps/rdf@>=0.4.68": - version "0.4.68" - resolved "https://registry.yarnpkg.com/@openhps/rdf/-/rdf-0.4.68.tgz#f3b829567fece5d7f6cb611bde2ae07d8f1273de" - integrity sha512-yrcP3lEaXQnbCSQmwEnPRhlKgK3Yo1Cwy7abunxHQ8PJFgL2p7jDGnEqeSYCYZQJPHmVa2DgMVqsTVGiQ/ygNg== +"@openhps/rdf@>=0.4.69": + version "0.4.69" + resolved "https://registry.yarnpkg.com/@openhps/rdf/-/rdf-0.4.69.tgz#8e46eaf354860e0bd7e5d1d05bcfd79b3b784cfb" + integrity sha512-UScTODqlK+Ghv/jhMVDbs2xk05fIUFp/oVV8SZtolL5ympw2QiXDgXecJByOcYwDqkmJ9Aalxt3UiFLitAMJYA== dependencies: "@comunica/query-sparql" "^3.1.2" "@inquirer/prompts" "^5.0.6" @@ -4246,7 +4246,7 @@ "@rdfjs/types" "^1.1.0" "@types/node" "*" -"@types/node@*", "@types/node@^20.14.6", "@types/node@^20.14.8": +"@types/node@*", "@types/node@^20.14.6": version "20.14.8" resolved "https://registry.yarnpkg.com/@types/node/-/node-20.14.8.tgz#45c26a2a5de26c3534a9504530ddb3b27ce031ac" integrity sha512-DO+2/jZinXfROG7j7WKFn/3C6nFwxy2lLpgLjEXJz+0XKphZlTLJ14mo8Vfg8X5BWN6XjyESXq+LcYdT7tR3bA== @@ -4265,6 +4265,13 @@ dependencies: undici-types "~5.26.4" +"@types/node@^20.14.9": + version "20.14.9" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.14.9.tgz#12e8e765ab27f8c421a1820c99f5f313a933b420" + integrity sha512-06OCtnTXtWOZBJlRApleWndH4JsRVs1pDCc8dLSQp+7PpUpX3ePdHyeNSFTeSe7FtKyQkrlPvHwJOW3SLd8Oyg== + dependencies: + undici-types "~5.26.4" + "@types/node@^8.0.0": version "8.10.66" resolved "https://registry.yarnpkg.com/@types/node/-/node-8.10.66.tgz#dd035d409df322acc83dff62a602f12a5783bbb3" @@ -8846,10 +8853,10 @@ mocha-junit-reporter@^2.2.1: strip-ansi "^6.0.1" xml "^1.0.1" -mocha@^10.5.0: - version "10.5.0" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.5.0.tgz#a8872b2404883792102d78f584ad0e10b35d900d" - integrity sha512-KoCXMKfW2OMsvCbaJJFPdzg36lI9+tMH7yyXCoKh6PpFo7BAC/xqG7Ct/aitJDrGbIGcN2IT3cx3bZ6PDGaXmA== +mocha@^10.5.1: + version "10.5.1" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.5.1.tgz#54cfa5212ffc9e04ee68b27aa0f36519919ae877" + integrity sha512-eq5tEnaz2kM9ade8cuGJBMh5fBb9Ih/TB+ddlmPR+wLQmwLhUwa0ovqDlg7OTfKquW0BI7NUcNWX7DH8sC+3gw== dependencies: ansi-colors "4.1.1" browser-stdout "1.3.1"