@comake/skl-js-engine 0.31.0 → 0.33.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/dist/SklEngine.d.ts +2 -0
- package/dist/SklEngine.js +15 -4
- package/dist/SklEngine.js.map +1 -1
- package/dist/util/LineDecoder.d.ts +19 -0
- package/dist/util/LineDecoder.js +87 -0
- package/dist/util/LineDecoder.js.map +1 -0
- package/dist/util/SSEDecoder.d.ts +8 -0
- package/dist/util/SSEDecoder.js +53 -0
- package/dist/util/SSEDecoder.js.map +1 -0
- package/dist/util/Types.d.ts +4 -0
- package/dist/util/iterSSEChunks.d.ts +6 -0
- package/dist/util/iterSSEChunks.js +60 -0
- package/dist/util/iterSSEChunks.js.map +1 -0
- package/dist/util/safeJsonStringify.d.ts +5 -0
- package/dist/util/safeJsonStringify.js +19 -0
- package/dist/util/safeJsonStringify.js.map +1 -0
- package/dist/util/stream.d.ts +7 -0
- package/dist/util/stream.js +39 -0
- package/dist/util/stream.js.map +1 -0
- package/package.json +4 -2
package/dist/SklEngine.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import './util/safeJsonStringify';
|
|
1
2
|
import type { GraphObject, NodeObject } from 'jsonld';
|
|
2
3
|
import type { Frame } from 'jsonld/jsonld-spec';
|
|
3
4
|
import type { SklEngineOptions } from './SklEngineOptions';
|
|
@@ -98,4 +99,5 @@ export declare class SKLEngine {
|
|
|
98
99
|
private getJsonDataFromSource;
|
|
99
100
|
private throwValidationReportError;
|
|
100
101
|
private validationReportToMessages;
|
|
102
|
+
private ifVerbStreaming;
|
|
101
103
|
}
|
package/dist/SklEngine.js
CHANGED
|
@@ -4,6 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.SKLEngine = void 0;
|
|
7
|
+
/* eslint-disable @typescript-eslint/naming-convention */
|
|
8
|
+
require("./util/safeJsonStringify");
|
|
7
9
|
const openapi_operation_executor_1 = require("@comake/openapi-operation-executor");
|
|
8
10
|
const rmlmapper_js_1 = require("@comake/rmlmapper-js");
|
|
9
11
|
const axios_1 = __importDefault(require("axios"));
|
|
@@ -508,7 +510,7 @@ class SKLEngine {
|
|
|
508
510
|
return await this.getDataFromDataSource((0, rmlmapper_js_1.getIdFromNodeObjectIfDefined)(operationInfo[Vocabularies_1.SKL.dataSource]), verbConfig);
|
|
509
511
|
}
|
|
510
512
|
if (operationInfo[Vocabularies_1.SKL.operationId]) {
|
|
511
|
-
const response = await this.performOpenapiOperationWithCredentials((0, Util_1.getValueIfDefined)(operationInfo[Vocabularies_1.SKL.operationId]), operationArgs, account);
|
|
513
|
+
const response = await this.performOpenapiOperationWithCredentials((0, Util_1.getValueIfDefined)(operationInfo[Vocabularies_1.SKL.operationId]), operationArgs, account, verbConfig);
|
|
512
514
|
return this.axiosResponseAndParamsToOperationResponse(response, operationArgs, originalArgs);
|
|
513
515
|
}
|
|
514
516
|
throw new Error('Operation not supported.');
|
|
@@ -631,7 +633,7 @@ class SKLEngine {
|
|
|
631
633
|
}
|
|
632
634
|
}
|
|
633
635
|
}
|
|
634
|
-
async performOpenapiOperationWithCredentials(operationId, operationArgs, account) {
|
|
636
|
+
async performOpenapiOperationWithCredentials(operationId, operationArgs, account, verbConfig) {
|
|
635
637
|
const integrationId = account[Vocabularies_1.SKL.integration]['@id'];
|
|
636
638
|
const openApiDescription = await this.getOpenApiDescriptionForIntegration(integrationId);
|
|
637
639
|
const openApiExecutor = await this.createOpenApiOperationExecutorWithSpec(openApiDescription);
|
|
@@ -657,21 +659,27 @@ class SKLEngine {
|
|
|
657
659
|
password: (0, Util_1.getValueIfDefined)(securityCredentials?.[Vocabularies_1.SKL.clientSecret]),
|
|
658
660
|
};
|
|
659
661
|
let response;
|
|
662
|
+
let executeOperationOptions;
|
|
660
663
|
try {
|
|
661
664
|
const additionalHeaders = this.getHeadersFromRuntimeCredentials(runtimeAuthorization);
|
|
662
|
-
let executeOperationOptions;
|
|
663
665
|
if (additionalHeaders &&
|
|
664
666
|
typeof additionalHeaders === 'object' &&
|
|
665
667
|
!Array.isArray(additionalHeaders) &&
|
|
666
668
|
Object.keys(additionalHeaders).length > 0) {
|
|
667
669
|
executeOperationOptions = { headers: additionalHeaders };
|
|
668
670
|
}
|
|
671
|
+
if (this.ifVerbStreaming(verbConfig)) {
|
|
672
|
+
executeOperationOptions = {
|
|
673
|
+
...executeOperationOptions,
|
|
674
|
+
responseType: 'stream',
|
|
675
|
+
};
|
|
676
|
+
}
|
|
669
677
|
response = await openApiExecutor.executeOperation(operationId, configuration, operationArgs, executeOperationOptions);
|
|
670
678
|
}
|
|
671
679
|
catch (error) {
|
|
672
680
|
if (axios_1.default.isAxiosError(error) && (await this.isInvalidTokenError(error, integrationId)) && securityCredentials) {
|
|
673
681
|
const refreshedConfiguration = await this.refreshSecurityCredentials(securityCredentials, integrationId, account);
|
|
674
|
-
response = await openApiExecutor.executeOperation(operationId, refreshedConfiguration, operationArgs);
|
|
682
|
+
response = await openApiExecutor.executeOperation(operationId, refreshedConfiguration, operationArgs, executeOperationOptions);
|
|
675
683
|
}
|
|
676
684
|
else {
|
|
677
685
|
throw error;
|
|
@@ -886,6 +894,9 @@ class SKLEngine {
|
|
|
886
894
|
}
|
|
887
895
|
return reportMessages;
|
|
888
896
|
}
|
|
897
|
+
ifVerbStreaming(verbConfig) {
|
|
898
|
+
return Boolean(verbConfig && 'stream' in verbConfig && verbConfig.stream);
|
|
899
|
+
}
|
|
889
900
|
}
|
|
890
901
|
exports.SKLEngine = SKLEngine;
|
|
891
902
|
//# sourceMappingURL=SklEngine.js.map
|
package/dist/SklEngine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SklEngine.js","sourceRoot":"","sources":["../src/SklEngine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SklEngine.js","sourceRoot":"","sources":["../src/SklEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
export declare type Bytes = string | ArrayBuffer | Uint8Array | Buffer | null | undefined;
|
|
3
|
+
/**
|
|
4
|
+
* A re-implementation of httpx's `LineDecoder` in Python that handles incrementally
|
|
5
|
+
* reading lines from text.
|
|
6
|
+
*
|
|
7
|
+
* https://github.com/encode/httpx/blob/920333ea98118e9cf617f246905d7b202510941c/httpx/_decoders.py#L258
|
|
8
|
+
*/
|
|
9
|
+
export declare class LineDecoder {
|
|
10
|
+
static NEWLINE_CHARS: Set<string>;
|
|
11
|
+
static NEWLINE_REGEXP: RegExp;
|
|
12
|
+
buffer: string[];
|
|
13
|
+
trailingCR: boolean;
|
|
14
|
+
textDecoder: any;
|
|
15
|
+
constructor();
|
|
16
|
+
decode(chunk: Bytes): string[];
|
|
17
|
+
decodeText(bytes: Bytes): string;
|
|
18
|
+
flush(): string[];
|
|
19
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LineDecoder = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* A re-implementation of httpx's `LineDecoder` in Python that handles incrementally
|
|
6
|
+
* reading lines from text.
|
|
7
|
+
*
|
|
8
|
+
* https://github.com/encode/httpx/blob/920333ea98118e9cf617f246905d7b202510941c/httpx/_decoders.py#L258
|
|
9
|
+
*/
|
|
10
|
+
class LineDecoder {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.buffer = [];
|
|
13
|
+
this.trailingCR = false;
|
|
14
|
+
}
|
|
15
|
+
decode(chunk) {
|
|
16
|
+
let text = this.decodeText(chunk);
|
|
17
|
+
if (this.trailingCR) {
|
|
18
|
+
text = '\r' + text;
|
|
19
|
+
this.trailingCR = false;
|
|
20
|
+
}
|
|
21
|
+
if (text.endsWith('\r')) {
|
|
22
|
+
this.trailingCR = true;
|
|
23
|
+
text = text.slice(0, -1);
|
|
24
|
+
}
|
|
25
|
+
if (!text) {
|
|
26
|
+
return [];
|
|
27
|
+
}
|
|
28
|
+
const trailingNewline = LineDecoder.NEWLINE_CHARS.has(text[text.length - 1] || '');
|
|
29
|
+
let lines = text.split(LineDecoder.NEWLINE_REGEXP);
|
|
30
|
+
// if there is a trailing new line then the last entry will be an empty
|
|
31
|
+
// string which we don't care about
|
|
32
|
+
if (trailingNewline) {
|
|
33
|
+
lines.pop();
|
|
34
|
+
}
|
|
35
|
+
if (lines.length === 1 && !trailingNewline) {
|
|
36
|
+
this.buffer.push(lines[0]);
|
|
37
|
+
return [];
|
|
38
|
+
}
|
|
39
|
+
if (this.buffer.length > 0) {
|
|
40
|
+
lines = [this.buffer.join('') + lines[0], ...lines.slice(1)];
|
|
41
|
+
this.buffer = [];
|
|
42
|
+
}
|
|
43
|
+
if (!trailingNewline) {
|
|
44
|
+
this.buffer = [lines.pop() || ''];
|
|
45
|
+
}
|
|
46
|
+
return lines;
|
|
47
|
+
}
|
|
48
|
+
decodeText(bytes) {
|
|
49
|
+
if (bytes == null)
|
|
50
|
+
return '';
|
|
51
|
+
if (typeof bytes === 'string')
|
|
52
|
+
return bytes;
|
|
53
|
+
// Node:
|
|
54
|
+
if (typeof Buffer !== 'undefined') {
|
|
55
|
+
if (bytes instanceof Buffer) {
|
|
56
|
+
return bytes.toString();
|
|
57
|
+
}
|
|
58
|
+
if (bytes instanceof Uint8Array) {
|
|
59
|
+
return Buffer.from(bytes).toString();
|
|
60
|
+
}
|
|
61
|
+
throw new Error(`Unexpected: received non-Uint8Array (${bytes.constructor.name}) stream chunk in an environment with a global "Buffer" defined, which this library assumes to be Node. Please report this error.`);
|
|
62
|
+
}
|
|
63
|
+
// Browser
|
|
64
|
+
if (typeof TextDecoder !== 'undefined') {
|
|
65
|
+
if (bytes instanceof Uint8Array || bytes instanceof ArrayBuffer) {
|
|
66
|
+
this.textDecoder ?? (this.textDecoder = new TextDecoder('utf8'));
|
|
67
|
+
return this.textDecoder.decode(bytes);
|
|
68
|
+
}
|
|
69
|
+
throw new Error(`Unexpected: received non-Uint8Array/ArrayBuffer (${bytes.constructor.name}) in a web platform. Please report this error.`);
|
|
70
|
+
}
|
|
71
|
+
throw new Error(`Unexpected: neither Buffer nor TextDecoder are available as globals. Please report this error.`);
|
|
72
|
+
}
|
|
73
|
+
flush() {
|
|
74
|
+
if (!this.buffer.length && !this.trailingCR) {
|
|
75
|
+
return [];
|
|
76
|
+
}
|
|
77
|
+
const lines = [this.buffer.join('')];
|
|
78
|
+
this.buffer = [];
|
|
79
|
+
this.trailingCR = false;
|
|
80
|
+
return lines;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
exports.LineDecoder = LineDecoder;
|
|
84
|
+
// prettier-ignore
|
|
85
|
+
LineDecoder.NEWLINE_CHARS = new Set(['\n', '\r']);
|
|
86
|
+
LineDecoder.NEWLINE_REGEXP = /\r\n|[\n\r]/g;
|
|
87
|
+
//# sourceMappingURL=LineDecoder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LineDecoder.js","sourceRoot":"","sources":["../../src/util/LineDecoder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SSEDecoder = void 0;
|
|
4
|
+
class SSEDecoder {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.event = null;
|
|
7
|
+
this.data = [];
|
|
8
|
+
this.chunks = [];
|
|
9
|
+
}
|
|
10
|
+
decode(line) {
|
|
11
|
+
if (line.endsWith('\r')) {
|
|
12
|
+
line = line.substring(0, line.length - 1);
|
|
13
|
+
}
|
|
14
|
+
if (!line) {
|
|
15
|
+
// empty line and we didn't previously encounter any messages
|
|
16
|
+
if (!this.event && !this.data.length)
|
|
17
|
+
return null;
|
|
18
|
+
const sse = {
|
|
19
|
+
event: this.event,
|
|
20
|
+
data: this.data.join('\n'),
|
|
21
|
+
raw: this.chunks,
|
|
22
|
+
};
|
|
23
|
+
this.event = null;
|
|
24
|
+
this.data = [];
|
|
25
|
+
this.chunks = [];
|
|
26
|
+
return sse;
|
|
27
|
+
}
|
|
28
|
+
this.chunks.push(line);
|
|
29
|
+
if (line.startsWith(':')) {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
let [fieldname, _, value] = partition(line, ':');
|
|
33
|
+
if (value.startsWith(' ')) {
|
|
34
|
+
value = value.substring(1);
|
|
35
|
+
}
|
|
36
|
+
if (fieldname === 'event') {
|
|
37
|
+
this.event = value;
|
|
38
|
+
}
|
|
39
|
+
else if (fieldname === 'data') {
|
|
40
|
+
this.data.push(value);
|
|
41
|
+
}
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.SSEDecoder = SSEDecoder;
|
|
46
|
+
function partition(str, delimiter) {
|
|
47
|
+
const index = str.indexOf(delimiter);
|
|
48
|
+
if (index !== -1) {
|
|
49
|
+
return [str.substring(0, index), delimiter, str.substring(index + delimiter.length)];
|
|
50
|
+
}
|
|
51
|
+
return [str, '', ''];
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=SSEDecoder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SSEDecoder.js","sourceRoot":"","sources":["../../src/util/SSEDecoder.ts"],"names":[],"mappings":";;;AAEA,MAAa,UAAU;IAKrB;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,IAAY;QACjB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YACvB,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;SAC3C;QAED,IAAI,CAAC,IAAI,EAAE;YACT,6DAA6D;YAC7D,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC;YAElD,MAAM,GAAG,GAAoB;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC1B,GAAG,EAAE,IAAI,CAAC,MAAM;aACjB,CAAC;YAEF,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;YAEjB,OAAO,GAAG,CAAC;SACZ;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEvB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YACxB,OAAO,IAAI,CAAC;SACb;QAED,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAEjD,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YACzB,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SAC5B;QAED,IAAI,SAAS,KAAK,OAAO,EAAE;YACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;SACpB;aAAM,IAAI,SAAS,KAAK,MAAM,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACvB;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AArDD,gCAqDC;AAED,SAAS,SAAS,CAAC,GAAW,EAAE,SAAiB;IAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACrC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;QAChB,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;KACtF;IAED,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACvB,CAAC"}
|
package/dist/util/Types.d.ts
CHANGED
|
@@ -167,6 +167,10 @@ export interface VerbConfig {
|
|
|
167
167
|
* Merged with the global setting. The verb config taking prededence in the case of overlapping names.
|
|
168
168
|
*/
|
|
169
169
|
readonly functions?: Record<string, (args: any | any[]) => any>;
|
|
170
|
+
/**
|
|
171
|
+
* When true, the operation will be streamed.
|
|
172
|
+
*/
|
|
173
|
+
readonly stream?: boolean;
|
|
170
174
|
}
|
|
171
175
|
export interface Callbacks {
|
|
172
176
|
/**
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Bytes } from "./LineDecoder";
|
|
2
|
+
/**
|
|
3
|
+
* Given an async iterable iterator, iterates over it and yields full
|
|
4
|
+
* SSE chunks, i.e. yields when a double new-line is encountered.
|
|
5
|
+
*/
|
|
6
|
+
export declare function iterSSEChunks(iterator: AsyncIterableIterator<Bytes>): AsyncGenerator<Uint8Array>;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.iterSSEChunks = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Given an async iterable iterator, iterates over it and yields full
|
|
6
|
+
* SSE chunks, i.e. yields when a double new-line is encountered.
|
|
7
|
+
*/
|
|
8
|
+
async function* iterSSEChunks(iterator) {
|
|
9
|
+
let data = new Uint8Array();
|
|
10
|
+
for await (const chunk of iterator) {
|
|
11
|
+
if (chunk == null) {
|
|
12
|
+
continue;
|
|
13
|
+
}
|
|
14
|
+
const binaryChunk = chunk instanceof ArrayBuffer
|
|
15
|
+
? new Uint8Array(chunk)
|
|
16
|
+
: typeof chunk === 'string'
|
|
17
|
+
? new TextEncoder().encode(chunk)
|
|
18
|
+
: chunk;
|
|
19
|
+
let newData = new Uint8Array(data.length + binaryChunk.length);
|
|
20
|
+
newData.set(data);
|
|
21
|
+
newData.set(binaryChunk, data.length);
|
|
22
|
+
data = newData;
|
|
23
|
+
let patternIndex;
|
|
24
|
+
while ((patternIndex = findDoubleNewlineIndex(data)) !== -1) {
|
|
25
|
+
yield data.slice(0, patternIndex);
|
|
26
|
+
data = data.slice(patternIndex);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
if (data.length > 0) {
|
|
30
|
+
yield data;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.iterSSEChunks = iterSSEChunks;
|
|
34
|
+
function findDoubleNewlineIndex(buffer) {
|
|
35
|
+
// This function searches the buffer for the end patterns (\r\r, \n\n, \r\n\r\n)
|
|
36
|
+
// and returns the index right after the first occurrence of any pattern,
|
|
37
|
+
// or -1 if none of the patterns are found.
|
|
38
|
+
const newline = 0x0a; // \n
|
|
39
|
+
const carriage = 0x0d; // \r
|
|
40
|
+
for (let i = 0; i < buffer.length - 2; i++) {
|
|
41
|
+
if (buffer[i] === newline && buffer[i + 1] === newline) {
|
|
42
|
+
// \n\n
|
|
43
|
+
return i + 2;
|
|
44
|
+
}
|
|
45
|
+
if (buffer[i] === carriage && buffer[i + 1] === carriage) {
|
|
46
|
+
// \r\r
|
|
47
|
+
return i + 2;
|
|
48
|
+
}
|
|
49
|
+
if (buffer[i] === carriage &&
|
|
50
|
+
buffer[i + 1] === newline &&
|
|
51
|
+
i + 3 < buffer.length &&
|
|
52
|
+
buffer[i + 2] === carriage &&
|
|
53
|
+
buffer[i + 3] === newline) {
|
|
54
|
+
// \r\n\r\n
|
|
55
|
+
return i + 4;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return -1;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=iterSSEChunks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iterSSEChunks.js","sourceRoot":"","sources":["../../src/util/iterSSEChunks.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACI,KAAK,SAAS,CAAC,CAAC,aAAa,CAAC,QAAsC;IACzE,IAAI,IAAI,GAAG,IAAI,UAAU,EAAE,CAAC;IAE5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,EAAE;QAClC,IAAI,KAAK,IAAI,IAAI,EAAE;YACjB,SAAS;SACV;QAED,MAAM,WAAW,GACf,KAAK,YAAY,WAAW;YAC1B,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC;YACvB,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ;gBAC3B,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;gBACjC,CAAC,CAAC,KAAK,CAAC;QAEZ,IAAI,OAAO,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,GAAG,OAAO,CAAC;QAEf,IAAI,YAAY,CAAC;QACjB,OAAO,CAAC,YAAY,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;YAC3D,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;YAClC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;SACjC;KACF;IAED,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;QACnB,MAAM,IAAI,CAAC;KACZ;AACH,CAAC;AA9BD,sCA8BC;AAED,SAAS,sBAAsB,CAAC,MAAkB;IAChD,gFAAgF;IAChF,yEAAyE;IACzE,2CAA2C;IAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,KAAK;IAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,KAAK;IAE5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QAC1C,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,OAAO,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,OAAO,EAAE;YACtD,OAAO;YACP,OAAO,CAAC,GAAG,CAAC,CAAC;SACd;QACD,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,QAAQ,EAAE;YACxD,OAAO;YACP,OAAO,CAAC,GAAG,CAAC,CAAC;SACd;QACD,IACE,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ;YACtB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,OAAO;YACzB,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM;YACrB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,QAAQ;YAC1B,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,OAAO,EACzB;YACA,WAAW;YACX,OAAO,CAAC,GAAG,CAAC,CAAC;SACd;KACF;IAED,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
declare const nativeJSONStringify: {
|
|
2
|
+
(value: any, replacer?: ((this: any, key: string, value: any) => any) | undefined, space?: string | number | undefined): string;
|
|
3
|
+
(value: any, replacer?: (string | number)[] | null | undefined, space?: string | number | undefined): string;
|
|
4
|
+
};
|
|
5
|
+
declare function stringifyCircular(obj: any): string;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Preserve the native JSON.stringify
|
|
3
|
+
const nativeJSONStringify = JSON.stringify;
|
|
4
|
+
function stringifyCircular(obj) {
|
|
5
|
+
const seen = new WeakSet();
|
|
6
|
+
return nativeJSONStringify(obj, (key, value) => {
|
|
7
|
+
if (value !== null && typeof value === 'object') {
|
|
8
|
+
if (seen.has(value)) {
|
|
9
|
+
// Circular reference found, discard key
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
seen.add(value);
|
|
13
|
+
}
|
|
14
|
+
return value;
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
global.JSON.stringify = stringifyCircular;
|
|
18
|
+
JSON.stringify = stringifyCircular;
|
|
19
|
+
//# sourceMappingURL=safeJsonStringify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safeJsonStringify.js","sourceRoot":"","sources":["../../src/util/safeJsonStringify.ts"],"names":[],"mappings":";AAAA,qCAAqC;AACrC,MAAM,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC;AAE3C,SAAS,iBAAiB,CAAC,GAAQ;IACjC,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;IAC3B,OAAO,mBAAmB,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QAC7C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC/C,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBACnB,wCAAwC;gBACxC,OAAO;aACR;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACjB;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC;AAC1C,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Most browsers don't yet have async iterable support for ReadableStream,
|
|
3
|
+
* and Node has a very different way of reading bytes from its "ReadableStream".
|
|
4
|
+
*
|
|
5
|
+
* This polyfill was pulled from https://github.com/MattiasBuelens/web-streams-polyfill/pull/122#issuecomment-1627354490
|
|
6
|
+
*/
|
|
7
|
+
export declare function ReadableStreamToAsyncIterable<T>(stream: any): AsyncIterableIterator<T>;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ReadableStreamToAsyncIterable = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Most browsers don't yet have async iterable support for ReadableStream,
|
|
6
|
+
* and Node has a very different way of reading bytes from its "ReadableStream".
|
|
7
|
+
*
|
|
8
|
+
* This polyfill was pulled from https://github.com/MattiasBuelens/web-streams-polyfill/pull/122#issuecomment-1627354490
|
|
9
|
+
*/
|
|
10
|
+
function ReadableStreamToAsyncIterable(stream) {
|
|
11
|
+
if (stream[Symbol.asyncIterator])
|
|
12
|
+
return stream;
|
|
13
|
+
const reader = stream.getReader();
|
|
14
|
+
return {
|
|
15
|
+
async next() {
|
|
16
|
+
try {
|
|
17
|
+
const result = await reader.read();
|
|
18
|
+
if (result?.done)
|
|
19
|
+
reader.releaseLock(); // release lock when stream becomes closed
|
|
20
|
+
return result;
|
|
21
|
+
}
|
|
22
|
+
catch (e) {
|
|
23
|
+
reader.releaseLock(); // release lock when stream becomes errored
|
|
24
|
+
throw e;
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
async return() {
|
|
28
|
+
const cancelPromise = reader.cancel();
|
|
29
|
+
reader.releaseLock();
|
|
30
|
+
await cancelPromise;
|
|
31
|
+
return { done: true, value: undefined };
|
|
32
|
+
},
|
|
33
|
+
[Symbol.asyncIterator]() {
|
|
34
|
+
return this;
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
exports.ReadableStreamToAsyncIterable = ReadableStreamToAsyncIterable;
|
|
39
|
+
//# sourceMappingURL=stream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/util/stream.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,SAAgB,6BAA6B,CAAI,MAAW;IAC1D,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC;QAAE,OAAO,MAAM,CAAC;IAEhD,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;IAClC,OAAO;QACL,KAAK,CAAC,IAAI;YACR,IAAI;gBACF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBACnC,IAAI,MAAM,EAAE,IAAI;oBAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,0CAA0C;gBAClF,OAAO,MAAM,CAAC;aACf;YAAC,OAAO,CAAC,EAAE;gBACV,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,2CAA2C;gBACjE,MAAM,CAAC,CAAC;aACT;QACH,CAAC;QACD,KAAK,CAAC,MAAM;YACV,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YACtC,MAAM,CAAC,WAAW,EAAE,CAAC;YACrB,MAAM,aAAa,CAAC;YACpB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QAC1C,CAAC;QACD,CAAC,MAAM,CAAC,aAAa,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC;AACJ,CAAC;AAzBD,sEAyBC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@comake/skl-js-engine",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.33.0",
|
|
4
4
|
"description": "Standard Knowledge Language Javascript Engine",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"skl",
|
|
@@ -29,7 +29,8 @@
|
|
|
29
29
|
"test:integration": "jest --coverageReporters text-summary -- test/integration",
|
|
30
30
|
"test:unit": "jest --config=./jest.coverage.config.js test/unit",
|
|
31
31
|
"test:package": "chmod +x test/deploy/validate-package.sh && test/deploy/validate-package.sh",
|
|
32
|
-
"prepare": "husky && npm run build"
|
|
32
|
+
"prepare": "husky && npm run build",
|
|
33
|
+
"postinstall": "patch-package"
|
|
33
34
|
},
|
|
34
35
|
"main": "./dist/index.js",
|
|
35
36
|
"types": "./dist/index.d.ts",
|
|
@@ -52,6 +53,7 @@
|
|
|
52
53
|
"memory-level": "^1.0.0",
|
|
53
54
|
"mime-types": "^2.1.35",
|
|
54
55
|
"n3": "^1.17.2",
|
|
56
|
+
"patch-package": "^8.0.0",
|
|
55
57
|
"quadstore": "13.1.1",
|
|
56
58
|
"quadstore-comunica": "^4.3.0",
|
|
57
59
|
"rdf-data-factory": "^1.1.2",
|