@comunica/actor-query-operation-path-zero-or-one 2.4.0 → 2.5.1-alpha.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,6 +4,7 @@ exports.ActorQueryOperationPathZeroOrOne = void 0;
4
4
  const actor_abstract_path_1 = require("@comunica/actor-abstract-path");
5
5
  const bindings_factory_1 = require("@comunica/bindings-factory");
6
6
  const bus_query_operation_1 = require("@comunica/bus-query-operation");
7
+ const metadata_1 = require("@comunica/metadata");
7
8
  const asynciterator_1 = require("asynciterator");
8
9
  const sparqlalgebrajs_1 = require("sparqlalgebrajs");
9
10
  const BF = new bindings_factory_1.BindingsFactory();
@@ -25,6 +26,7 @@ class ActorQueryOperationPathZeroOrOne extends actor_abstract_path_1.ActorAbstra
25
26
  type: 'bindings',
26
27
  bindingsStream: new asynciterator_1.SingletonIterator(BF.bindings()),
27
28
  metadata: () => Promise.resolve({
29
+ state: new metadata_1.MetadataValidationState(),
28
30
  cardinality: { type: 'exact', value: 1 },
29
31
  canContainUndefs: false,
30
32
  variables: [],
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActorQueryOperationPathZeroOrOne.js","sourceRoot":"","sources":["ActorQueryOperationPathZeroOrOne.ts"],"names":[],"mappings":";;;AAAA,uEAAkE;AAClE,iEAA6D;AAE7D,uEAAoE;AACpE,iDAA6D;AAE7D,iDAAkD;AAClD,qDAA0C;AAE1C,MAAM,EAAE,GAAG,IAAI,kCAAe,EAAE,CAAC;AAEjC;;GAEG;AACH,MAAa,gCAAiC,SAAQ,uCAAiB;IACrE,YAAmB,IAA2C;QAC5D,KAAK,CAAC,IAAI,EAAE,yBAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC9C,CAAC;IAEM,KAAK,CAAC,YAAY,CACvB,SAAuB,EACvB,OAAuB;QAEvB,MAAM,SAAS,GAA2B,SAAS,CAAC,SAAS,CAAC;QAE9D,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,KAAK,UAAU,CAAC;QACvD,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,KAAK,UAAU,CAAC;QAEtD,MAAM,KAAK,GAAe,EAAE,CAAC;QAE7B,wCAAwC;QACxC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;YAChE,OAAO;gBACL,IAAI,EAAE,UAAU;gBAChB,cAAc,EAAE,IAAI,iCAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;gBACpD,QAAQ,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;oBAC9B,KAAK,EAAE,IAAI,kCAAuB,EAAE;oBACpC,WAAW,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE;oBACxC,gBAAgB,EAAE,KAAK;oBACvB,SAAS,EAAE,EAAE;iBACd,CAAC;aACH,CAAC;SACH;QAED,IAAI,IAAI,IAAI,IAAI,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;SAClF;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAC9E,IAAI,QAAQ,CAAC,SAAS,EAAE;YACtB,OAAO,QAAQ,CAAC,SAAS,CAAC;SAC3B;QAED,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QAE3B,IAAI,SAAS,CAAC,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE;YAC7C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAE,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,MAAM,CAAE,CAAC,CAAC,CAAC,CAAC;SACpE;QAED,IAAI,SAAS,CAAC,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE;YAC5C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAE,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAE,CAAC,CAAC,CAAC,CAAC;SACpE;QAED,MAAM,MAAM,GAAG,yCAAmB,CAAC,eAAe,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC;YAC3F,OAAO;YACP,SAAS,EAAE,uCAAiB,CAAC,OAAO;iBACjC,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC;SACpF,CAAC,CAAC,CAAC;QAEJ,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAE5D,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,cAAc;YACd,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC;IACJ,CAAC;CACF;AA/DD,4EA+DC","sourcesContent":["import { ActorAbstractPath } from '@comunica/actor-abstract-path';\nimport { BindingsFactory } from '@comunica/bindings-factory';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation } from '@comunica/bus-query-operation';\nimport { MetadataValidationState } from '@comunica/metadata';\nimport type { Bindings, IQueryOperationResult, IActionContext } from '@comunica/types';\nimport { SingletonIterator } from 'asynciterator';\nimport { Algebra } from 'sparqlalgebrajs';\n\nconst BF = new BindingsFactory();\n\n/**\n * A comunica Path ZeroOrOne Query Operation Actor.\n */\nexport class ActorQueryOperationPathZeroOrOne extends ActorAbstractPath {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, Algebra.types.ZERO_OR_ONE_PATH);\n }\n\n public async runOperation(\n operation: Algebra.Path,\n context: IActionContext,\n ): Promise<IQueryOperationResult> {\n const predicate = <Algebra.ZeroOrOnePath> operation.predicate;\n\n const sVar = operation.subject.termType === 'Variable';\n const oVar = operation.object.termType === 'Variable';\n\n const extra: Bindings[] = [];\n\n // Both subject and object non-variables\n if (!sVar && !oVar && operation.subject.equals(operation.object)) {\n return {\n type: 'bindings',\n bindingsStream: new SingletonIterator(BF.bindings()),\n metadata: () => Promise.resolve({\n state: new MetadataValidationState(),\n cardinality: { type: 'exact', value: 1 },\n canContainUndefs: false,\n variables: [],\n }),\n };\n }\n\n if (sVar && oVar) {\n throw new Error('ZeroOrOne path expressions with 2 variables not supported yet');\n }\n\n const distinct = await this.isPathArbitraryLengthDistinct(context, operation);\n if (distinct.operation) {\n return distinct.operation;\n }\n\n context = distinct.context;\n\n if (operation.subject.termType === 'Variable') {\n extra.push(BF.bindings([[ operation.subject, operation.object ]]));\n }\n\n if (operation.object.termType === 'Variable') {\n extra.push(BF.bindings([[ operation.object, operation.subject ]]));\n }\n\n const single = ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({\n context,\n operation: ActorAbstractPath.FACTORY\n .createPath(operation.subject, predicate.path, operation.object, operation.graph),\n }));\n\n const bindingsStream = single.bindingsStream.prepend(extra);\n\n return {\n type: 'bindings',\n bindingsStream,\n metadata: single.metadata,\n };\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qEAAmD","sourcesContent":["export * from './ActorQueryOperationPathZeroOrOne';\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@comunica/actor-query-operation-path-zero-or-one",
3
- "version": "2.4.0",
3
+ "version": "2.5.1-alpha.32.0",
4
4
  "description": "A path-zero-or-one query-operation actor",
5
5
  "lsd:module": true,
6
6
  "main": "lib/index.js",
@@ -28,14 +28,16 @@
28
28
  "files": [
29
29
  "components",
30
30
  "lib/**/*.d.ts",
31
- "lib/**/*.js"
31
+ "lib/**/*.js",
32
+ "lib/**/*.js.map"
32
33
  ],
33
34
  "dependencies": {
34
- "@comunica/actor-abstract-path": "^2.4.0",
35
- "@comunica/bindings-factory": "^2.2.0",
36
- "@comunica/bus-query-operation": "^2.4.0",
37
- "@comunica/types": "^2.4.0",
38
- "asynciterator": "^3.7.0",
35
+ "@comunica/actor-abstract-path": "2.5.1-alpha.32.0",
36
+ "@comunica/bindings-factory": "2.5.1-alpha.32.0",
37
+ "@comunica/bus-query-operation": "2.5.1-alpha.32.0",
38
+ "@comunica/metadata": "2.5.1-alpha.32.0",
39
+ "@comunica/types": "2.5.1-alpha.32.0",
40
+ "asynciterator": "^3.8.0",
39
41
  "sparqlalgebrajs": "^4.0.0"
40
42
  },
41
43
  "scripts": {
@@ -43,5 +45,5 @@
43
45
  "build:ts": "node \"../../node_modules/typescript/bin/tsc\"",
44
46
  "build:components": "componentsjs-generator"
45
47
  },
46
- "gitHead": "cb5a1560c9ab9ebaf3335888a1411a7e1654de1e"
48
+ "gitHead": "3f04fbcb28737ec68227d694c127236ecf46235d"
47
49
  }