@comunica/actor-rdf-parse-html-script 2.4.0 → 2.5.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActorRdfParseHtmlScript.js","sourceRoot":"","sources":["ActorRdfParseHtmlScript.ts"],"names":[],"mappings":";;;AAGA,qEAAiE;AAEjE,6DAA0D;AAE1D;;;;;GAKG;AACH,MAAa,uBAAwB,SAAQ,sCAAiB;IAI5D,YAAmB,IAAkC;QACnD,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,MAA2B;QAC3C,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,MAA2B;QAC1C,MAAM,cAAc,GAA2B,CAAC,MAAM,IAAI,CAAC,0BAA0B;aAClF,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;QACtE,MAAM,iBAAiB,GAAG,IAAI,uCAAkB,CAC9C,IAAI,CAAC,sBAAsB,EAC3B,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,GAAG,EACV,cAAc,EACd,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,OAAO,CACf,CAAC;QACF,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC/B,CAAC;CACF;AA3BD,0DA2BC","sourcesContent":["import type { MediatorRdfParseHandle, MediatorRdfParseMediaTypes } from '@comunica/bus-rdf-parse';\nimport type { IActionRdfParseHtml, IActorRdfParseHtmlOutput,\n IActorRdfParseHtmlArgs } from '@comunica/bus-rdf-parse-html';\nimport { ActorRdfParseHtml } from '@comunica/bus-rdf-parse-html';\nimport type { IActorTest } from '@comunica/core';\nimport { HtmlScriptListener } from './HtmlScriptListener';\n\n/**\n * A HTML script RDF Parse actor that listens on the 'rdf-parse' bus.\n *\n * It is able to extract and parse any RDF serialization from script tags in HTML files\n * and announce the presence of them by media type.\n */\nexport class ActorRdfParseHtmlScript extends ActorRdfParseHtml {\n private readonly mediatorRdfParseMediatypes: MediatorRdfParseMediaTypes;\n private readonly mediatorRdfParseHandle: MediatorRdfParseHandle;\n\n public constructor(args: IActorRdfParseHtmlScriptArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfParseHtml): Promise<IActorTest> {\n return true;\n }\n\n public async run(action: IActionRdfParseHtml): Promise<IActorRdfParseHtmlOutput> {\n const supportedTypes: Record<string, number> = (await this.mediatorRdfParseMediatypes\n .mediate({ context: action.context, mediaTypes: true })).mediaTypes;\n const htmlParseListener = new HtmlScriptListener(\n this.mediatorRdfParseHandle,\n action.emit,\n action.error,\n action.end,\n supportedTypes,\n action.context,\n action.baseIRI,\n action.headers,\n );\n return { htmlParseListener };\n }\n}\n\nexport interface IActorRdfParseHtmlScriptArgs extends IActorRdfParseHtmlArgs {\n /**\n * The RDF Parse mediator for collecting media types\n */\n mediatorRdfParseMediatypes: MediatorRdfParseMediaTypes;\n /**\n * The RDF Parse mediator for handling parsing\n */\n mediatorRdfParseHandle: MediatorRdfParseHandle;\n}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HtmlScriptListener.js","sourceRoot":"","sources":["HtmlScriptListener.ts"],"names":[],"mappings":"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","sourcesContent":["import type { MediatorRdfParseHandle } from '@comunica/bus-rdf-parse';\nimport type { IHtmlParseListener } from '@comunica/bus-rdf-parse-html';\nimport { KeysRdfParseHtmlScript } from '@comunica/context-entries';\nimport type { IActionContext } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { Readable } from 'readable-stream';\nimport { resolve as resolveIri } from 'relative-to-absolute-iri';\n\n/**\n * An HTML parse listeners that detects <script> data blocks with known RDF media types,\n * parses them, and outputs the resulting quads.\n */\nexport class HtmlScriptListener implements IHtmlParseListener {\n private readonly mediatorRdfParseHandle: MediatorRdfParseHandle;\n\n private readonly cbQuad: (quad: RDF.Quad) => void;\n private readonly cbError: (error: Error) => void;\n private readonly cbEnd: () => void;\n private readonly supportedTypes: Record<string, number>;\n private readonly context: IActionContext;\n private baseIRI: string;\n private readonly headers?: Headers;\n private readonly onlyFirstScript: boolean;\n private readonly targetScriptId: string | null;\n\n private handleMediaType?: string;\n private textChunks?: string[];\n private textChunksJsonLd: string[] = [];\n private endBarrier = 1;\n private passedScripts = 0;\n private isFinalJsonLdProcessing = false;\n\n public constructor(mediatorRdfParseHandle: MediatorRdfParseHandle,\n cbQuad: (quad: RDF.Quad) => void, cbError: (error: Error) => void, cbEnd: () => void,\n supportedTypes: Record<string, number>, context: IActionContext, baseIRI: string,\n headers: Headers | undefined) {\n this.mediatorRdfParseHandle = mediatorRdfParseHandle;\n this.cbQuad = cbQuad;\n this.cbError = cbError;\n this.cbEnd = cbEnd;\n this.supportedTypes = supportedTypes;\n this.context = context\n .set(KeysRdfParseHtmlScript.processingHtmlScript, true);\n this.baseIRI = baseIRI;\n this.headers = headers;\n this.onlyFirstScript = context.get(KeysRdfParseHtmlScript.extractAllScripts) === false;\n const fragmentPos = this.baseIRI.indexOf('#');\n this.targetScriptId = fragmentPos > 0 ? this.baseIRI.slice(fragmentPos + 1, this.baseIRI.length) : null;\n }\n\n public static newErrorCoded(message: string, code: string): Error {\n // Error codes are required by the JSON-LD spec\n const error = new Error(message);\n (<any> error).code = code;\n return error;\n }\n\n public onEnd(): void {\n if (--this.endBarrier === 0) {\n if (this.textChunksJsonLd.length > 0) {\n // First process buffered JSON-LD chunks if we have any.\n this.handleMediaType = 'application/ld+json';\n this.textChunks = this.textChunksJsonLd;\n this.textChunks.push(']');\n this.textChunksJsonLd = [];\n this.isFinalJsonLdProcessing = true;\n\n this.endBarrier++;\n\n // This will call onEnd again\n this.onTagClose();\n } else {\n // Otherwise, end processing\n if (this.passedScripts === 0 && this.targetScriptId) {\n this.cbError(HtmlScriptListener.newErrorCoded(`Failed to find targeted script id \"${this.targetScriptId}\"`,\n 'loading document failed'));\n }\n this.cbEnd();\n }\n this.isFinalJsonLdProcessing = false;\n }\n }\n\n public onTagClose(): void {\n if (this.handleMediaType) {\n if (this.requiresCustomJsonLdHandling(this.handleMediaType) && !this.isFinalJsonLdProcessing) {\n // Reset the media type and text stream\n this.handleMediaType = undefined;\n this.textChunks = undefined;\n\n this.onEnd();\n } else {\n // Create a temporary text stream for pushing all the text chunks\n const textStream = new Readable({ objectMode: true });\n textStream._read = () => {\n // Do nothing\n };\n const textChunksLocal = this.textChunks!;\n\n // Send all collected text to parser\n const parseAction = {\n context: this.context,\n handle: {\n metadata: { baseIRI: this.baseIRI },\n data: textStream,\n headers: this.headers,\n context: this.context,\n },\n handleMediaType: this.handleMediaType,\n };\n this.mediatorRdfParseHandle.mediate(parseAction)\n .then(({ handle }) => {\n // Initialize text parsing\n handle.data\n .on('error', error => this.cbError(HtmlScriptListener\n .newErrorCoded(error.message, 'invalid script element')))\n .on('data', this.cbQuad)\n .on('end', () => this.onEnd());\n\n // Push the text stream after all events have been attached\n for (const textChunk of textChunksLocal) {\n textStream.push(textChunk);\n }\n textStream.push(null);\n })\n .catch((error: Error) => {\n if (this.targetScriptId) {\n // Error if we are targeting this script tag specifically\n this.cbError(HtmlScriptListener.newErrorCoded(\n error.message,\n 'loading document failed',\n ));\n } else {\n // Ignore script tags that we don't understand\n this.onEnd();\n }\n });\n\n // Reset the media type and text stream\n this.handleMediaType = undefined;\n this.textChunks = undefined;\n }\n }\n }\n\n public onTagOpen(name: string, attributes: Record<string, string>): void {\n // Take into account baseIRI overrides\n if (name === 'base' && attributes.href) {\n this.baseIRI = resolveIri(attributes.href, this.baseIRI);\n }\n\n // Only handle script tags with a parseable content type\n // If targetScriptId is defined, only extract from script with that id\n if (name === 'script' && (!this.targetScriptId || attributes.id === this.targetScriptId)) {\n if (this.supportedTypes[attributes.type]) {\n if (this.onlyFirstScript && this.passedScripts > 0) {\n // Ignore script tag if only one should be extracted\n this.handleMediaType = undefined;\n } else {\n this.passedScripts++;\n this.handleMediaType = attributes.type;\n this.endBarrier++;\n if (this.requiresCustomJsonLdHandling(this.handleMediaType)) {\n this.textChunks = this.textChunksJsonLd;\n this.textChunks.push(this.textChunks.length === 0 ? '[' : ',');\n } else {\n this.textChunks = [];\n }\n }\n } else if (this.targetScriptId) {\n this.cbError(HtmlScriptListener.newErrorCoded(\n `Targeted script \"${this.targetScriptId}\" does not have a supported type`,\n 'loading document failed',\n ));\n }\n } else {\n this.handleMediaType = undefined;\n }\n }\n\n public onText(data: string): void {\n if (this.handleMediaType) {\n this.textChunks!.push(data);\n }\n }\n\n /**\n * If we require custom JSON-LD handling for the given media type.\n *\n * The JSON-LD spec requires JSON-LD within script tags to be seen as a single document.\n * As such, we have to buffer all JSON-LD until the end of HTML processing,\n * and encapsulate all found contents in an array.\n *\n * @param mediaType A: IActionRdfParseHtml media type.\n */\n public requiresCustomJsonLdHandling(mediaType: string): boolean {\n return !this.onlyFirstScript && !this.targetScriptId && mediaType === 'application/ld+json';\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4DAA0C","sourcesContent":["export * from './ActorRdfParseHtmlScript';\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@comunica/actor-rdf-parse-html-script",
3
- "version": "2.4.0",
3
+ "version": "2.5.0",
4
4
  "description": "A html-script rdf-parse actor",
5
5
  "lsd:module": true,
6
6
  "main": "lib/index.js",
@@ -28,14 +28,15 @@
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/bus-rdf-parse": "^2.4.0",
35
- "@comunica/bus-rdf-parse-html": "^2.4.0",
36
- "@comunica/context-entries": "^2.4.0",
37
- "@comunica/core": "^2.4.0",
38
- "@comunica/types": "^2.4.0",
35
+ "@comunica/bus-rdf-parse": "^2.5.0",
36
+ "@comunica/bus-rdf-parse-html": "^2.5.0",
37
+ "@comunica/context-entries": "^2.5.0",
38
+ "@comunica/core": "^2.5.0",
39
+ "@comunica/types": "^2.5.0",
39
40
  "@rdfjs/types": "*",
40
41
  "readable-stream": "^4.0.0",
41
42
  "relative-to-absolute-iri": "^1.0.5"
@@ -45,5 +46,5 @@
45
46
  "build:ts": "node \"../../node_modules/typescript/bin/tsc\"",
46
47
  "build:components": "componentsjs-generator"
47
48
  },
48
- "gitHead": "cb5a1560c9ab9ebaf3335888a1411a7e1654de1e"
49
+ "gitHead": "349d57f5d1e539200e980bdff96973c2e0b66caa"
49
50
  }
package/LICENSE.txt DELETED
@@ -1,22 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright © 2017–now Ruben Taelman, Joachim Van Herwegen
4
- Comunica Association and Ghent University – imec, Belgium
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in
14
- all copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22
- THE SOFTWARE.