@comunica/actor-query-operation-slice 3.0.1-alpha.45.0 → 3.0.1-alpha.46.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.
package/README.md CHANGED
@@ -22,7 +22,7 @@ After installing, this package can be added to your engine's configuration as fo
22
22
  {
23
23
  "@context": [
24
24
  ...
25
- "https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-operation-slice/^3.0.0/components/context.jsonld"
25
+ "https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-operation-slice/^3.0.0/components/context.jsonld"
26
26
  ],
27
27
  "actors": [
28
28
  ...
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "@context": [
3
- "https://linkedsoftwaredependencies.org/bundles/npm/componentsjs/^5.0.0/components/context.jsonld",
3
+ "https://linkedsoftwaredependencies.org/bundles/npm/componentsjs/^6.0.0/components/context.jsonld",
4
4
  {
5
5
  "npmd": "https://linkedsoftwaredependencies.org/bundles/npm/",
6
6
  "caqos": "npmd:@comunica/actor-query-operation-slice/^3.0.0/",
@@ -8,7 +8,7 @@ import type { Algebra } from 'sparqlalgebrajs';
8
8
  */
9
9
  export declare class ActorQueryOperationSlice extends ActorQueryOperationTypedMediated<Algebra.Slice> {
10
10
  constructor(args: IActorQueryOperationTypedMediatedArgs);
11
- testOperation(operation: Algebra.Slice, context: IActionContext): Promise<IActorTest>;
11
+ testOperation(_operation: Algebra.Slice, _context: IActionContext): Promise<IActorTest>;
12
12
  runOperation(operation: Algebra.Slice, context: IActionContext): Promise<IQueryOperationResult>;
13
13
  private sliceStream;
14
14
  private sliceMetadata;
@@ -10,7 +10,7 @@ class ActorQueryOperationSlice extends bus_query_operation_1.ActorQueryOperation
10
10
  constructor(args) {
11
11
  super(args, 'slice');
12
12
  }
13
- async testOperation(operation, context) {
13
+ async testOperation(_operation, _context) {
14
14
  return true;
15
15
  }
16
16
  async runOperation(operation, context) {
@@ -53,7 +53,7 @@ class ActorQueryOperationSlice extends bus_query_operation_1.ActorQueryOperation
53
53
  // eslint-disable-next-line unicorn/explicit-length-check
54
54
  const hasLength = Boolean(pattern.length) || pattern.length === 0;
55
55
  return () => output.metadata()
56
- .then(subMetadata => {
56
+ .then((subMetadata) => {
57
57
  const cardinality = { ...subMetadata.cardinality };
58
58
  if (Number.isFinite(cardinality.value)) {
59
59
  cardinality.value = Math.max(0, cardinality.value - pattern.start);
@@ -1 +1 @@
1
- {"version":3,"file":"ActorQueryOperationSlice.js","sourceRoot":"","sources":["ActorQueryOperationSlice.ts"],"names":[],"mappings":"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","sourcesContent":["import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport { KeysQueryOperation } from '@comunica/context-entries';\nimport type { IActorTest } from '@comunica/core';\nimport type {\n IQueryOperationResult,\n IQueryOperationResultBindings,\n IQueryOperationResultQuads,\n IQueryOperationResultStream, IMetadata, IActionContext,\n} from '@comunica/types';\nimport type { AsyncIterator } from 'asynciterator';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Slice Query Operation Actor.\n */\nexport class ActorQueryOperationSlice extends ActorQueryOperationTypedMediated<Algebra.Slice> {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'slice');\n }\n\n public async testOperation(operation: Algebra.Slice, context: IActionContext): Promise<IActorTest> {\n return true;\n }\n\n public async runOperation(operation: Algebra.Slice, context: IActionContext):\n Promise<IQueryOperationResult> {\n // Add limit indicator to the context, which can be used for query planning\n // eslint-disable-next-line unicorn/explicit-length-check\n if (operation.length) {\n context = context.set(KeysQueryOperation.limitIndicator, operation.length);\n }\n\n // Resolve the input\n const output: IQueryOperationResult = await this.mediatorQueryOperation\n .mediate({ operation: operation.input, context });\n\n if (output.type === 'bindings') {\n const bindingsStream = this.sliceStream(output.bindingsStream, operation);\n return <IQueryOperationResultBindings> {\n type: 'bindings',\n bindingsStream,\n metadata: this.sliceMetadata(output, operation),\n };\n }\n\n if (output.type === 'quads') {\n const quadStream = this.sliceStream(output.quadStream, operation);\n return <IQueryOperationResultQuads> {\n type: 'quads',\n quadStream,\n metadata: this.sliceMetadata(output, operation),\n };\n }\n\n throw new Error(`Invalid query output type: Expected 'bindings' or 'quads' but got '${output.type}'`);\n }\n\n // Slice the stream based on the pattern values\n private sliceStream(stream: AsyncIterator<any>, pattern: Algebra.Slice): AsyncIterator<any> {\n // eslint-disable-next-line unicorn/explicit-length-check\n const hasLength: boolean = Boolean(pattern.length) || pattern.length === 0;\n const { start } = pattern;\n const end = hasLength ? pattern.start + pattern.length! - 1 : Number.POSITIVE_INFINITY;\n return stream.transform({ offset: start, limit: Math.max(end - start + 1, 0), autoStart: false });\n }\n\n // If we find metadata, apply slicing on the total number of items\n private sliceMetadata(\n output: IQueryOperationResultStream<any, any>,\n pattern: Algebra.Slice,\n ): () => Promise<IMetadata<any>> {\n // eslint-disable-next-line unicorn/explicit-length-check\n const hasLength: boolean = Boolean(pattern.length) || pattern.length === 0;\n return () => (<() => Promise<IMetadata<any>>>output.metadata)()\n .then(subMetadata => {\n const cardinality = { ...subMetadata.cardinality };\n if (Number.isFinite(cardinality.value)) {\n cardinality.value = Math.max(0, cardinality.value - pattern.start);\n if (hasLength) {\n cardinality.value = Math.min(cardinality.value, pattern.length!);\n }\n }\n return { ...subMetadata, cardinality };\n });\n }\n}\n"]}
1
+ {"version":3,"file":"ActorQueryOperationSlice.js","sourceRoot":"","sources":["ActorQueryOperationSlice.ts"],"names":[],"mappings":"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","sourcesContent":["import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport { KeysQueryOperation } from '@comunica/context-entries';\nimport type { IActorTest } from '@comunica/core';\nimport type {\n IQueryOperationResult,\n IQueryOperationResultBindings,\n IQueryOperationResultQuads,\n IQueryOperationResultStream,\n IMetadata,\n IActionContext,\n} from '@comunica/types';\nimport type { AsyncIterator } from 'asynciterator';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Slice Query Operation Actor.\n */\nexport class ActorQueryOperationSlice extends ActorQueryOperationTypedMediated<Algebra.Slice> {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'slice');\n }\n\n public async testOperation(_operation: Algebra.Slice, _context: IActionContext): Promise<IActorTest> {\n return true;\n }\n\n public async runOperation(operation: Algebra.Slice, context: IActionContext):\n Promise<IQueryOperationResult> {\n // Add limit indicator to the context, which can be used for query planning\n // eslint-disable-next-line unicorn/explicit-length-check\n if (operation.length) {\n context = context.set(KeysQueryOperation.limitIndicator, operation.length);\n }\n\n // Resolve the input\n const output: IQueryOperationResult = await this.mediatorQueryOperation\n .mediate({ operation: operation.input, context });\n\n if (output.type === 'bindings') {\n const bindingsStream = this.sliceStream(output.bindingsStream, operation);\n return <IQueryOperationResultBindings> {\n type: 'bindings',\n bindingsStream,\n metadata: this.sliceMetadata(output, operation),\n };\n }\n\n if (output.type === 'quads') {\n const quadStream = this.sliceStream(output.quadStream, operation);\n return <IQueryOperationResultQuads> {\n type: 'quads',\n quadStream,\n metadata: this.sliceMetadata(output, operation),\n };\n }\n\n throw new Error(`Invalid query output type: Expected 'bindings' or 'quads' but got '${output.type}'`);\n }\n\n // Slice the stream based on the pattern values\n private sliceStream(stream: AsyncIterator<any>, pattern: Algebra.Slice): AsyncIterator<any> {\n // eslint-disable-next-line unicorn/explicit-length-check\n const hasLength: boolean = Boolean(pattern.length) || pattern.length === 0;\n const { start } = pattern;\n const end = hasLength ? pattern.start + pattern.length! - 1 : Number.POSITIVE_INFINITY;\n return stream.transform({ offset: start, limit: Math.max(end - start + 1, 0), autoStart: false });\n }\n\n // If we find metadata, apply slicing on the total number of items\n private sliceMetadata(\n output: IQueryOperationResultStream<any, any>,\n pattern: Algebra.Slice,\n ): () => Promise<IMetadata<any>> {\n // eslint-disable-next-line unicorn/explicit-length-check\n const hasLength: boolean = Boolean(pattern.length) || pattern.length === 0;\n return () => (<() => Promise<IMetadata<any>>>output.metadata)()\n .then((subMetadata) => {\n const cardinality = { ...subMetadata.cardinality };\n if (Number.isFinite(cardinality.value)) {\n cardinality.value = Math.max(0, cardinality.value - pattern.start);\n if (hasLength) {\n cardinality.value = Math.min(cardinality.value, pattern.length!);\n }\n }\n return { ...subMetadata, cardinality };\n });\n }\n}\n"]}
package/package.json CHANGED
@@ -1,47 +1,47 @@
1
1
  {
2
2
  "name": "@comunica/actor-query-operation-slice",
3
- "version": "3.0.1-alpha.45.0",
3
+ "version": "3.0.1-alpha.46.0",
4
4
  "description": "A slice query-operation actor",
5
5
  "lsd:module": true,
6
- "main": "lib/index.js",
7
- "typings": "lib/index",
6
+ "license": "MIT",
7
+ "homepage": "https://comunica.dev/",
8
8
  "repository": {
9
9
  "type": "git",
10
10
  "url": "https://github.com/comunica/comunica.git",
11
11
  "directory": "packages/actor-query-operation-slice"
12
12
  },
13
- "publishConfig": {
14
- "access": "public"
13
+ "bugs": {
14
+ "url": "https://github.com/comunica/comunica/issues"
15
15
  },
16
- "sideEffects": false,
17
16
  "keywords": [
18
17
  "comunica",
19
18
  "actor",
20
19
  "query-operation",
21
20
  "slice"
22
21
  ],
23
- "license": "MIT",
24
- "bugs": {
25
- "url": "https://github.com/comunica/comunica/issues"
22
+ "sideEffects": false,
23
+ "main": "lib/index.js",
24
+ "typings": "lib/index",
25
+ "publishConfig": {
26
+ "access": "public"
26
27
  },
27
- "homepage": "https://comunica.dev/",
28
28
  "files": [
29
29
  "components",
30
30
  "lib/**/*.d.ts",
31
31
  "lib/**/*.js",
32
32
  "lib/**/*.js.map"
33
33
  ],
34
- "dependencies": {
35
- "@comunica/bus-query-operation": "3.0.1-alpha.45.0",
36
- "@comunica/context-entries": "3.0.1-alpha.45.0",
37
- "@comunica/core": "3.0.1-alpha.45.0",
38
- "@comunica/types": "3.0.1-alpha.45.0",
39
- "sparqlalgebrajs": "^4.3.3"
40
- },
41
34
  "scripts": {
42
35
  "build": "npm run build:ts && npm run build:components",
43
36
  "build:ts": "node \"../../node_modules/typescript/bin/tsc\"",
44
37
  "build:components": "componentsjs-generator"
45
38
  },
46
- "gitHead": "b5a3900c24e29fa7b3243ab50bc9745d286fbce8"
39
+ "dependencies": {
40
+ "@comunica/bus-query-operation": "3.0.1-alpha.46.0",
41
+ "@comunica/context-entries": "3.0.1-alpha.46.0",
42
+ "@comunica/core": "3.0.1-alpha.46.0",
43
+ "@comunica/types": "3.0.1-alpha.46.0",
44
+ "sparqlalgebrajs": "^4.3.3"
45
+ },
46
+ "gitHead": "c115712ec55d79c83712e7046a387d5e3a177023"
47
47
  }