@s2-dev/streamstore 0.19.5 → 0.21.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/LICENSE +21 -201
- package/README.md +60 -10
- package/dist/cjs/accessTokens.d.ts +27 -14
- package/dist/cjs/accessTokens.d.ts.map +1 -1
- package/dist/cjs/accessTokens.js +72 -8
- package/dist/cjs/accessTokens.js.map +1 -1
- package/dist/cjs/basins.d.ts +29 -19
- package/dist/cjs/basins.d.ts.map +1 -1
- package/dist/cjs/basins.js +119 -9
- package/dist/cjs/basins.js.map +1 -1
- package/dist/cjs/batch-transform.d.ts +12 -16
- package/dist/cjs/batch-transform.d.ts.map +1 -1
- package/dist/cjs/batch-transform.js +17 -21
- package/dist/cjs/batch-transform.js.map +1 -1
- package/dist/cjs/common.d.ts +31 -24
- package/dist/cjs/common.d.ts.map +1 -1
- package/dist/cjs/common.js +22 -0
- package/dist/cjs/common.js.map +1 -1
- package/dist/cjs/endpoints.d.ts +63 -0
- package/dist/cjs/endpoints.d.ts.map +1 -0
- package/dist/cjs/endpoints.js +120 -0
- package/dist/cjs/endpoints.js.map +1 -0
- package/dist/cjs/error.d.ts.map +1 -1
- package/dist/cjs/error.js +11 -0
- package/dist/cjs/error.js.map +1 -1
- package/dist/cjs/generated/types.gen.d.ts +11 -20
- package/dist/cjs/generated/types.gen.d.ts.map +1 -1
- package/dist/cjs/index.d.ts +30 -46
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +50 -26
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal/case-transform.d.ts +59 -0
- package/dist/cjs/internal/case-transform.d.ts.map +1 -0
- package/dist/cjs/internal/case-transform.js +80 -0
- package/dist/cjs/internal/case-transform.js.map +1 -0
- package/dist/cjs/internal/mappers.d.ts +51 -0
- package/dist/cjs/internal/mappers.d.ts.map +1 -0
- package/dist/cjs/internal/mappers.js +225 -0
- package/dist/cjs/internal/mappers.js.map +1 -0
- package/dist/cjs/internal/sdk-types.d.ts +127 -0
- package/dist/cjs/internal/sdk-types.d.ts.map +1 -0
- package/dist/cjs/internal/sdk-types.js +9 -0
- package/dist/cjs/internal/sdk-types.js.map +1 -0
- package/dist/cjs/lib/base64.d.ts +8 -0
- package/dist/cjs/lib/base64.d.ts.map +1 -1
- package/dist/cjs/lib/base64.js +32 -12
- package/dist/cjs/lib/base64.js.map +1 -1
- package/dist/cjs/lib/event-stream.d.ts.map +1 -1
- package/dist/cjs/lib/event-stream.js +2 -1
- package/dist/cjs/lib/event-stream.js.map +1 -1
- package/dist/cjs/lib/paginate.d.ts +57 -0
- package/dist/cjs/lib/paginate.d.ts.map +1 -0
- package/dist/cjs/lib/paginate.js +51 -0
- package/dist/cjs/lib/paginate.js.map +1 -0
- package/dist/cjs/lib/result.d.ts +1 -1
- package/dist/cjs/lib/result.d.ts.map +1 -1
- package/dist/cjs/lib/retry.d.ts +47 -31
- package/dist/cjs/lib/retry.d.ts.map +1 -1
- package/dist/cjs/lib/retry.js +302 -201
- package/dist/cjs/lib/retry.js.map +1 -1
- package/dist/cjs/lib/stream/runtime.d.ts +1 -1
- package/dist/cjs/lib/stream/transport/fetch/index.d.ts +7 -9
- package/dist/cjs/lib/stream/transport/fetch/index.d.ts.map +1 -1
- package/dist/cjs/lib/stream/transport/fetch/index.js +38 -39
- package/dist/cjs/lib/stream/transport/fetch/index.js.map +1 -1
- package/dist/cjs/lib/stream/transport/fetch/shared.d.ts +7 -2
- package/dist/cjs/lib/stream/transport/fetch/shared.d.ts.map +1 -1
- package/dist/cjs/lib/stream/transport/fetch/shared.js +56 -110
- package/dist/cjs/lib/stream/transport/fetch/shared.js.map +1 -1
- package/dist/cjs/lib/stream/transport/proto.d.ts +9 -0
- package/dist/cjs/lib/stream/transport/proto.d.ts.map +1 -0
- package/dist/cjs/lib/stream/transport/proto.js +118 -0
- package/dist/cjs/lib/stream/transport/proto.js.map +1 -0
- package/dist/cjs/lib/stream/transport/s2s/index.d.ts +3 -3
- package/dist/cjs/lib/stream/transport/s2s/index.d.ts.map +1 -1
- package/dist/cjs/lib/stream/transport/s2s/index.js +115 -82
- package/dist/cjs/lib/stream/transport/s2s/index.js.map +1 -1
- package/dist/cjs/lib/stream/types.d.ts +81 -36
- package/dist/cjs/lib/stream/types.d.ts.map +1 -1
- package/dist/cjs/lib/stream/types.js +18 -0
- package/dist/cjs/lib/stream/types.js.map +1 -1
- package/dist/cjs/metrics.d.ts +18 -17
- package/dist/cjs/metrics.d.ts.map +1 -1
- package/dist/cjs/metrics.js +67 -12
- package/dist/cjs/metrics.js.map +1 -1
- package/dist/cjs/producer.d.ts +82 -0
- package/dist/cjs/producer.d.ts.map +1 -0
- package/dist/cjs/producer.js +305 -0
- package/dist/cjs/producer.js.map +1 -0
- package/dist/cjs/s2.d.ts +1 -2
- package/dist/cjs/s2.d.ts.map +1 -1
- package/dist/cjs/s2.js +11 -15
- package/dist/cjs/s2.js.map +1 -1
- package/dist/cjs/stream.d.ts +26 -12
- package/dist/cjs/stream.d.ts.map +1 -1
- package/dist/cjs/stream.js +77 -13
- package/dist/cjs/stream.js.map +1 -1
- package/dist/cjs/streams.d.ts +29 -19
- package/dist/cjs/streams.d.ts.map +1 -1
- package/dist/cjs/streams.js +120 -9
- package/dist/cjs/streams.js.map +1 -1
- package/dist/cjs/types.d.ts +624 -0
- package/dist/cjs/types.d.ts.map +1 -0
- package/dist/cjs/types.js +129 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/cjs/utils.d.ts +1 -22
- package/dist/cjs/utils.d.ts.map +1 -1
- package/dist/cjs/utils.js +0 -42
- package/dist/cjs/utils.js.map +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/accessTokens.d.ts +27 -14
- package/dist/esm/accessTokens.d.ts.map +1 -1
- package/dist/esm/accessTokens.js +73 -9
- package/dist/esm/accessTokens.js.map +1 -1
- package/dist/esm/basins.d.ts +29 -19
- package/dist/esm/basins.d.ts.map +1 -1
- package/dist/esm/basins.js +119 -9
- package/dist/esm/basins.js.map +1 -1
- package/dist/esm/batch-transform.d.ts +12 -16
- package/dist/esm/batch-transform.d.ts.map +1 -1
- package/dist/esm/batch-transform.js +18 -22
- package/dist/esm/batch-transform.js.map +1 -1
- package/dist/esm/common.d.ts +31 -24
- package/dist/esm/common.d.ts.map +1 -1
- package/dist/esm/common.js +20 -1
- package/dist/esm/common.js.map +1 -1
- package/dist/esm/endpoints.d.ts +63 -0
- package/dist/esm/endpoints.d.ts.map +1 -0
- package/dist/esm/endpoints.js +115 -0
- package/dist/esm/endpoints.js.map +1 -0
- package/dist/esm/error.d.ts.map +1 -1
- package/dist/esm/error.js +11 -0
- package/dist/esm/error.js.map +1 -1
- package/dist/esm/generated/types.gen.d.ts +11 -20
- package/dist/esm/generated/types.gen.d.ts.map +1 -1
- package/dist/esm/index.d.ts +30 -46
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +33 -19
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/case-transform.d.ts +59 -0
- package/dist/esm/internal/case-transform.d.ts.map +1 -0
- package/dist/esm/internal/case-transform.js +76 -0
- package/dist/esm/internal/case-transform.js.map +1 -0
- package/dist/esm/internal/mappers.d.ts +51 -0
- package/dist/esm/internal/mappers.d.ts.map +1 -0
- package/dist/esm/internal/mappers.js +218 -0
- package/dist/esm/internal/mappers.js.map +1 -0
- package/dist/esm/internal/sdk-types.d.ts +127 -0
- package/dist/esm/internal/sdk-types.d.ts.map +1 -0
- package/dist/esm/internal/sdk-types.js +8 -0
- package/dist/esm/internal/sdk-types.js.map +1 -0
- package/dist/esm/lib/base64.d.ts +8 -0
- package/dist/esm/lib/base64.d.ts.map +1 -1
- package/dist/esm/lib/base64.js +30 -11
- package/dist/esm/lib/base64.js.map +1 -1
- package/dist/esm/lib/event-stream.d.ts.map +1 -1
- package/dist/esm/lib/event-stream.js +2 -1
- package/dist/esm/lib/event-stream.js.map +1 -1
- package/dist/esm/lib/paginate.d.ts +57 -0
- package/dist/esm/lib/paginate.d.ts.map +1 -0
- package/dist/esm/lib/paginate.js +48 -0
- package/dist/esm/lib/paginate.js.map +1 -0
- package/dist/esm/lib/result.d.ts +1 -1
- package/dist/esm/lib/result.d.ts.map +1 -1
- package/dist/esm/lib/retry.d.ts +47 -31
- package/dist/esm/lib/retry.d.ts.map +1 -1
- package/dist/esm/lib/retry.js +303 -201
- package/dist/esm/lib/retry.js.map +1 -1
- package/dist/esm/lib/stream/runtime.d.ts +1 -1
- package/dist/esm/lib/stream/transport/fetch/index.d.ts +7 -9
- package/dist/esm/lib/stream/transport/fetch/index.d.ts.map +1 -1
- package/dist/esm/lib/stream/transport/fetch/index.js +40 -41
- package/dist/esm/lib/stream/transport/fetch/index.js.map +1 -1
- package/dist/esm/lib/stream/transport/fetch/shared.d.ts +7 -2
- package/dist/esm/lib/stream/transport/fetch/shared.d.ts.map +1 -1
- package/dist/esm/lib/stream/transport/fetch/shared.js +58 -112
- package/dist/esm/lib/stream/transport/fetch/shared.js.map +1 -1
- package/dist/esm/lib/stream/transport/proto.d.ts +9 -0
- package/dist/esm/lib/stream/transport/proto.d.ts.map +1 -0
- package/dist/esm/lib/stream/transport/proto.js +110 -0
- package/dist/esm/lib/stream/transport/proto.js.map +1 -0
- package/dist/esm/lib/stream/transport/s2s/index.d.ts +3 -3
- package/dist/esm/lib/stream/transport/s2s/index.d.ts.map +1 -1
- package/dist/esm/lib/stream/transport/s2s/index.js +116 -82
- package/dist/esm/lib/stream/transport/s2s/index.js.map +1 -1
- package/dist/esm/lib/stream/types.d.ts +81 -36
- package/dist/esm/lib/stream/types.d.ts.map +1 -1
- package/dist/esm/lib/stream/types.js +17 -1
- package/dist/esm/lib/stream/types.js.map +1 -1
- package/dist/esm/metrics.d.ts +18 -17
- package/dist/esm/metrics.d.ts.map +1 -1
- package/dist/esm/metrics.js +66 -12
- package/dist/esm/metrics.js.map +1 -1
- package/dist/esm/producer.d.ts +82 -0
- package/dist/esm/producer.d.ts.map +1 -0
- package/dist/esm/producer.js +300 -0
- package/dist/esm/producer.js.map +1 -0
- package/dist/esm/s2.d.ts +1 -2
- package/dist/esm/s2.d.ts.map +1 -1
- package/dist/esm/s2.js +12 -16
- package/dist/esm/s2.js.map +1 -1
- package/dist/esm/stream.d.ts +26 -12
- package/dist/esm/stream.d.ts.map +1 -1
- package/dist/esm/stream.js +79 -15
- package/dist/esm/stream.js.map +1 -1
- package/dist/esm/streams.d.ts +29 -19
- package/dist/esm/streams.d.ts.map +1 -1
- package/dist/esm/streams.js +120 -9
- package/dist/esm/streams.js.map +1 -1
- package/dist/esm/types.d.ts +624 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +126 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utils.d.ts +1 -22
- package/dist/esm/utils.d.ts.map +1 -1
- package/dist/esm/utils.js +0 -41
- package/dist/esm/utils.js.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/package.json +4 -3
|
@@ -4,10 +4,12 @@ exports.streamRead = streamRead;
|
|
|
4
4
|
exports.streamAppend = streamAppend;
|
|
5
5
|
const error_js_1 = require("../../../../error.js");
|
|
6
6
|
const index_js_1 = require("../../../../generated/index.js");
|
|
7
|
+
const mappers_js_1 = require("../../../../internal/mappers.js");
|
|
7
8
|
const utils_js_1 = require("../../../../utils.js");
|
|
8
|
-
const
|
|
9
|
+
const proto_js_1 = require("../proto.js");
|
|
9
10
|
async function streamRead(stream, client, args, options) {
|
|
10
11
|
const { as, ...queryParams } = args ?? {};
|
|
12
|
+
const wantsBytes = (as ?? "string") === "bytes";
|
|
11
13
|
let response;
|
|
12
14
|
try {
|
|
13
15
|
response = await (0, index_js_1.read)({
|
|
@@ -15,10 +17,9 @@ async function streamRead(stream, client, args, options) {
|
|
|
15
17
|
path: {
|
|
16
18
|
stream,
|
|
17
19
|
},
|
|
18
|
-
headers: {
|
|
19
|
-
...(as === "bytes" ? { "s2-format": "base64" } : {}),
|
|
20
|
-
},
|
|
20
|
+
headers: wantsBytes ? { Accept: "application/protobuf" } : undefined,
|
|
21
21
|
query: queryParams,
|
|
22
|
+
parseAs: wantsBytes ? "arrayBuffer" : undefined,
|
|
22
23
|
...options,
|
|
23
24
|
});
|
|
24
25
|
}
|
|
@@ -32,111 +33,59 @@ async function streamRead(stream, client, args, options) {
|
|
|
32
33
|
}
|
|
33
34
|
throw (0, error_js_1.makeServerError)({ status, statusText: response.response.statusText }, response.error);
|
|
34
35
|
}
|
|
35
|
-
if (
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
records: response.data.records?.map((record) => ({
|
|
39
|
-
...record,
|
|
40
|
-
body: record.body ? (0, base64_js_1.decodeFromBase64)(record.body) : undefined,
|
|
41
|
-
headers: record.headers?.map((header) => header.map((h) => (0, base64_js_1.decodeFromBase64)(h))),
|
|
42
|
-
})) ?? [],
|
|
43
|
-
};
|
|
44
|
-
return res;
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
const res = {
|
|
48
|
-
...response.data,
|
|
49
|
-
records: response.data.records?.map((record) => ({
|
|
50
|
-
...record,
|
|
51
|
-
headers: record.headers
|
|
52
|
-
? Object.fromEntries(record.headers)
|
|
53
|
-
: undefined,
|
|
54
|
-
})) ?? [],
|
|
55
|
-
};
|
|
56
|
-
return res;
|
|
36
|
+
if (wantsBytes) {
|
|
37
|
+
const batch = (0, proto_js_1.decodeProtoReadBatch)(response.data);
|
|
38
|
+
return batch;
|
|
57
39
|
}
|
|
40
|
+
const res = {
|
|
41
|
+
...response.data,
|
|
42
|
+
records: response.data.records?.map((record) => ({
|
|
43
|
+
...record,
|
|
44
|
+
headers: record.headers
|
|
45
|
+
? Object.fromEntries(record.headers)
|
|
46
|
+
: undefined,
|
|
47
|
+
})) ?? [],
|
|
48
|
+
};
|
|
49
|
+
return res;
|
|
58
50
|
}
|
|
59
|
-
async function streamAppend(stream, client,
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
const format = (0, utils_js_1.computeAppendRecordFormat)(record);
|
|
83
|
-
if (format === "bytes") {
|
|
84
|
-
hasAnyBytesRecords = true;
|
|
85
|
-
break;
|
|
51
|
+
async function streamAppend(stream, client, input, options) {
|
|
52
|
+
const { preferProtobuf, ...requestOptions } = options ?? {};
|
|
53
|
+
const hasAnyBytesRecords = input.records.some((record) => (0, utils_js_1.computeAppendRecordFormat)(record) === "bytes");
|
|
54
|
+
const useProtobuf = hasAnyBytesRecords || preferProtobuf === true;
|
|
55
|
+
let response;
|
|
56
|
+
if (useProtobuf) {
|
|
57
|
+
const protoBody = (0, proto_js_1.encodeProtoAppendInput)(input);
|
|
58
|
+
const headers = {
|
|
59
|
+
Accept: "application/protobuf",
|
|
60
|
+
"Content-Type": "application/protobuf",
|
|
61
|
+
};
|
|
62
|
+
try {
|
|
63
|
+
response = await (0, index_js_1.append)({
|
|
64
|
+
client,
|
|
65
|
+
path: {
|
|
66
|
+
stream,
|
|
67
|
+
},
|
|
68
|
+
body: protoBody,
|
|
69
|
+
bodySerializer: null,
|
|
70
|
+
parseAs: "arrayBuffer",
|
|
71
|
+
headers,
|
|
72
|
+
...requestOptions,
|
|
73
|
+
});
|
|
86
74
|
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
// Second pass: encode all records appropriately
|
|
90
|
-
for (const record of recordsArray) {
|
|
91
|
-
const format = (0, utils_js_1.computeAppendRecordFormat)(record);
|
|
92
|
-
if (format === "bytes") {
|
|
93
|
-
const formattedRecord = record;
|
|
94
|
-
const encodedRecord = {
|
|
95
|
-
...formattedRecord,
|
|
96
|
-
body: formattedRecord.body
|
|
97
|
-
? (0, base64_js_1.encodeToBase64)(formattedRecord.body)
|
|
98
|
-
: undefined,
|
|
99
|
-
headers: formattedRecord.headers?.map((header) => header.map((h) => (0, base64_js_1.encodeToBase64)(h))),
|
|
100
|
-
};
|
|
101
|
-
encodedRecords.push(encodedRecord);
|
|
75
|
+
catch (error) {
|
|
76
|
+
throw (0, error_js_1.s2Error)(error);
|
|
102
77
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
else if (Array.isArray(headers)) {
|
|
110
|
-
return headers;
|
|
111
|
-
}
|
|
112
|
-
else {
|
|
113
|
-
return Object.entries(headers);
|
|
114
|
-
}
|
|
115
|
-
};
|
|
116
|
-
const formattedRecord = record;
|
|
117
|
-
const normalizedHeaders = formattedRecord.headers
|
|
118
|
-
? normalizeHeaders(formattedRecord.headers)
|
|
119
|
-
: undefined;
|
|
120
|
-
const encodedHeaders = normalizedHeaders
|
|
121
|
-
? hasAnyBytesRecords
|
|
122
|
-
? normalizedHeaders.map(([name, value]) => [
|
|
123
|
-
(0, base64_js_1.encodeToBase64)(textEncoder.encode(name)),
|
|
124
|
-
(0, base64_js_1.encodeToBase64)(textEncoder.encode(value)),
|
|
125
|
-
])
|
|
126
|
-
: normalizedHeaders
|
|
127
|
-
: undefined;
|
|
128
|
-
// If batch has bytes records, encode string bodies as base64 too
|
|
129
|
-
const encodedRecord = {
|
|
130
|
-
...formattedRecord,
|
|
131
|
-
body: hasAnyBytesRecords && formattedRecord.body
|
|
132
|
-
? (0, base64_js_1.encodeToBase64)(textEncoder.encode(formattedRecord.body))
|
|
133
|
-
: formattedRecord.body,
|
|
134
|
-
headers: encodedHeaders,
|
|
135
|
-
};
|
|
136
|
-
encodedRecords.push(encodedRecord);
|
|
78
|
+
if (response.error) {
|
|
79
|
+
const status = response.response.status;
|
|
80
|
+
if (status === 412) {
|
|
81
|
+
throw (0, error_js_1.makeAppendPreconditionError)(status, response.error);
|
|
82
|
+
}
|
|
83
|
+
throw (0, error_js_1.makeServerError)({ status, statusText: response.response.statusText }, response.error);
|
|
137
84
|
}
|
|
85
|
+
const ack = (0, proto_js_1.decodeProtoAppendAck)(response.data);
|
|
86
|
+
return (0, proto_js_1.protoAppendAckToJson)(ack);
|
|
138
87
|
}
|
|
139
|
-
|
|
88
|
+
const encodedRecords = [...input.records].map(mappers_js_1.toAPIAppendRecord);
|
|
140
89
|
try {
|
|
141
90
|
response = await (0, index_js_1.append)({
|
|
142
91
|
client,
|
|
@@ -144,14 +93,11 @@ async function streamAppend(stream, client, records, args, options) {
|
|
|
144
93
|
stream,
|
|
145
94
|
},
|
|
146
95
|
body: {
|
|
147
|
-
fencing_token:
|
|
148
|
-
match_seq_num:
|
|
96
|
+
fencing_token: input.fencingToken,
|
|
97
|
+
match_seq_num: input.matchSeqNum,
|
|
149
98
|
records: encodedRecords,
|
|
150
99
|
},
|
|
151
|
-
|
|
152
|
-
...(hasAnyBytesRecords ? { "s2-format": "base64" } : {}),
|
|
153
|
-
},
|
|
154
|
-
...options,
|
|
100
|
+
...requestOptions,
|
|
155
101
|
});
|
|
156
102
|
}
|
|
157
103
|
catch (error) {
|
|
@@ -164,6 +110,6 @@ async function streamAppend(stream, client, records, args, options) {
|
|
|
164
110
|
}
|
|
165
111
|
throw (0, error_js_1.makeServerError)({ status, statusText: response.response.statusText }, response.error);
|
|
166
112
|
}
|
|
167
|
-
return response.data;
|
|
113
|
+
return (0, mappers_js_1.fromAPIAppendAck)(response.data);
|
|
168
114
|
}
|
|
169
115
|
//# sourceMappingURL=shared.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../../../src/lib/stream/transport/fetch/shared.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../../../src/lib/stream/transport/fetch/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as Proto from "../../../generated/proto/s2.js";
|
|
2
|
+
import type * as Types from "../../../types.js";
|
|
3
|
+
import type { ReadBatch } from "../types.js";
|
|
4
|
+
export declare const buildProtoAppendInput: (input: Types.AppendInput) => Proto.AppendInput;
|
|
5
|
+
export declare const encodeProtoAppendInput: (input: Types.AppendInput) => Uint8Array;
|
|
6
|
+
export declare const decodeProtoAppendAck: (data: ArrayBuffer | Uint8Array) => Proto.AppendAck;
|
|
7
|
+
export declare const protoAppendAckToJson: (ack: Proto.AppendAck) => Types.AppendAck;
|
|
8
|
+
export declare const decodeProtoReadBatch: (data: ArrayBuffer | Uint8Array) => ReadBatch<"bytes">;
|
|
9
|
+
//# sourceMappingURL=proto.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proto.d.ts","sourceRoot":"","sources":["../../../../../src/lib/stream/transport/proto.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,gCAAgC,CAAC;AACxD,OAAO,KAAK,KAAK,KAAK,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,aAAa,CAAC;AAwF3D,eAAO,MAAM,qBAAqB,UAC1B,KAAK,CAAC,WAAW,KACtB,KAAK,CAAC,WAUR,CAAC;AAMF,eAAO,MAAM,sBAAsB,UAC3B,KAAK,CAAC,WAAW,KACtB,UAEF,CAAC;AAEF,eAAO,MAAM,oBAAoB,SAC1B,WAAW,GAAG,UAAU,KAC5B,KAAK,CAAC,SAER,CAAC;AAEF,eAAO,MAAM,oBAAoB,QAAS,KAAK,CAAC,SAAS,KAAG,KAAK,CAAC,SAkBjE,CAAC;AAEF,eAAO,MAAM,oBAAoB,SAC1B,WAAW,GAAG,UAAU,KAC5B,SAAS,CAAC,OAAO,CAUnB,CAAC"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.decodeProtoReadBatch = exports.protoAppendAckToJson = exports.decodeProtoAppendAck = exports.encodeProtoAppendInput = exports.buildProtoAppendInput = void 0;
|
|
4
|
+
const error_js_1 = require("../../../error.js");
|
|
5
|
+
const Proto = require("../../../generated/proto/s2.js");
|
|
6
|
+
const textEncoder = new TextEncoder();
|
|
7
|
+
const MAX_SAFE_BIGINT = BigInt(Number.MAX_SAFE_INTEGER);
|
|
8
|
+
function bigintToSafeNumber(value, field) {
|
|
9
|
+
if (value > MAX_SAFE_BIGINT) {
|
|
10
|
+
throw new error_js_1.S2Error({
|
|
11
|
+
message: `${field} exceeds JavaScript Number.MAX_SAFE_INTEGER (${Number.MAX_SAFE_INTEGER}); use protobuf transport with bigint support or ensure values stay within 53-bit range`,
|
|
12
|
+
code: "UNSAFE_INTEGER",
|
|
13
|
+
status: 0,
|
|
14
|
+
origin: "sdk",
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
return Number(value);
|
|
18
|
+
}
|
|
19
|
+
const toBytes = (value) => {
|
|
20
|
+
if (value === undefined || value === null) {
|
|
21
|
+
return new Uint8Array();
|
|
22
|
+
}
|
|
23
|
+
return typeof value === "string" ? textEncoder.encode(value) : value;
|
|
24
|
+
};
|
|
25
|
+
const toProtoHeaders = (headers) => {
|
|
26
|
+
if (!headers) {
|
|
27
|
+
return [];
|
|
28
|
+
}
|
|
29
|
+
return headers.map(([name, value]) => ({
|
|
30
|
+
name: toBytes(name),
|
|
31
|
+
value: toBytes(value),
|
|
32
|
+
}));
|
|
33
|
+
};
|
|
34
|
+
const toProtoAppendRecord = (record) => {
|
|
35
|
+
let timestamp;
|
|
36
|
+
if (record.timestamp !== undefined) {
|
|
37
|
+
const ms = typeof record.timestamp === "number"
|
|
38
|
+
? record.timestamp
|
|
39
|
+
: record.timestamp.getTime();
|
|
40
|
+
timestamp = BigInt(ms);
|
|
41
|
+
}
|
|
42
|
+
return {
|
|
43
|
+
timestamp,
|
|
44
|
+
headers: toProtoHeaders(record.headers),
|
|
45
|
+
body: toBytes(record.body),
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
const fromProtoPosition = (position) => {
|
|
49
|
+
if (!position) {
|
|
50
|
+
return undefined;
|
|
51
|
+
}
|
|
52
|
+
return {
|
|
53
|
+
seq_num: bigintToSafeNumber(position.seqNum, "StreamPosition.seqNum"),
|
|
54
|
+
timestamp: Number(position.timestamp),
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
const toSDKStreamPosition = (pos) => {
|
|
58
|
+
return {
|
|
59
|
+
seqNum: pos.seq_num,
|
|
60
|
+
timestamp: new Date(pos.timestamp),
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
const fromProtoSequencedRecord = (record) => {
|
|
64
|
+
return {
|
|
65
|
+
seq_num: bigintToSafeNumber(record.seqNum, "SequencedRecord.seqNum"),
|
|
66
|
+
timestamp: Number(record.timestamp),
|
|
67
|
+
headers: record.headers?.map((header) => [header.name, header.value]) ?? [],
|
|
68
|
+
body: record.body,
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
const buildProtoAppendInput = (input) => {
|
|
72
|
+
return Proto.AppendInput.create({
|
|
73
|
+
records: [...input.records].map((record) => toProtoAppendRecord(record)),
|
|
74
|
+
fencingToken: input.fencingToken === null
|
|
75
|
+
? undefined
|
|
76
|
+
: (input.fencingToken ?? undefined),
|
|
77
|
+
matchSeqNum: input.matchSeqNum !== undefined ? BigInt(input.matchSeqNum) : undefined,
|
|
78
|
+
});
|
|
79
|
+
};
|
|
80
|
+
exports.buildProtoAppendInput = buildProtoAppendInput;
|
|
81
|
+
const ensureUint8Array = (data) => {
|
|
82
|
+
return data instanceof Uint8Array ? data : new Uint8Array(data);
|
|
83
|
+
};
|
|
84
|
+
const encodeProtoAppendInput = (input) => {
|
|
85
|
+
return Proto.AppendInput.toBinary((0, exports.buildProtoAppendInput)(input));
|
|
86
|
+
};
|
|
87
|
+
exports.encodeProtoAppendInput = encodeProtoAppendInput;
|
|
88
|
+
const decodeProtoAppendAck = (data) => {
|
|
89
|
+
return Proto.AppendAck.fromBinary(ensureUint8Array(data));
|
|
90
|
+
};
|
|
91
|
+
exports.decodeProtoAppendAck = decodeProtoAppendAck;
|
|
92
|
+
const protoAppendAckToJson = (ack) => {
|
|
93
|
+
const start = fromProtoPosition(ack.start);
|
|
94
|
+
const end = fromProtoPosition(ack.end);
|
|
95
|
+
if (!start || !end) {
|
|
96
|
+
throw new error_js_1.S2Error({
|
|
97
|
+
message: "AppendAck missing start or end positions",
|
|
98
|
+
status: 500,
|
|
99
|
+
origin: "sdk",
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
const tail = fromProtoPosition(ack.tail) ?? end;
|
|
103
|
+
return {
|
|
104
|
+
start: toSDKStreamPosition(start),
|
|
105
|
+
end: toSDKStreamPosition(end),
|
|
106
|
+
tail: toSDKStreamPosition(tail),
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
exports.protoAppendAckToJson = protoAppendAckToJson;
|
|
110
|
+
const decodeProtoReadBatch = (data) => {
|
|
111
|
+
const protoBatch = Proto.ReadBatch.fromBinary(ensureUint8Array(data));
|
|
112
|
+
return {
|
|
113
|
+
records: protoBatch.records.map((record) => fromProtoSequencedRecord(record)),
|
|
114
|
+
tail: fromProtoPosition(protoBatch.tail),
|
|
115
|
+
};
|
|
116
|
+
};
|
|
117
|
+
exports.decodeProtoReadBatch = decodeProtoReadBatch;
|
|
118
|
+
//# sourceMappingURL=proto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proto.js","sourceRoot":"","sources":["../../../../../src/lib/stream/transport/proto.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,13 +5,12 @@
|
|
|
5
5
|
* This file should only be imported in Node.js environments
|
|
6
6
|
*/
|
|
7
7
|
import type { S2RequestOptions } from "../../../../common.js";
|
|
8
|
-
import {
|
|
9
|
-
import type { AppendArgs, AppendRecord, AppendSession, AppendSessionOptions, ReadArgs, ReadSession, SessionTransport, TransportConfig } from "../../types.js";
|
|
10
|
-
export declare function buildProtoAppendInput(records: AppendRecord[], args: AppendArgs): ProtoAppendInput;
|
|
8
|
+
import type { AppendSession, AppendSessionOptions, ReadArgs, ReadSession, SessionTransport, TransportConfig } from "../../types.js";
|
|
11
9
|
export declare class S2STransport implements SessionTransport {
|
|
12
10
|
private readonly transportConfig;
|
|
13
11
|
private connection?;
|
|
14
12
|
private connectionPromise?;
|
|
13
|
+
private closingPromise?;
|
|
15
14
|
constructor(config: TransportConfig);
|
|
16
15
|
makeAppendSession(stream: string, sessionOptions?: AppendSessionOptions, requestOptions?: S2RequestOptions): Promise<AppendSession>;
|
|
17
16
|
makeReadSession<Format extends "string" | "bytes" = "string">(stream: string, args?: ReadArgs<Format>, options?: S2RequestOptions): Promise<ReadSession<Format>>;
|
|
@@ -20,5 +19,6 @@ export declare class S2STransport implements SessionTransport {
|
|
|
20
19
|
*/
|
|
21
20
|
private getConnection;
|
|
22
21
|
private createConnection;
|
|
22
|
+
close(): Promise<void>;
|
|
23
23
|
}
|
|
24
24
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/stream/transport/s2s/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/stream/transport/s2s/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAmB9D,OAAO,KAAK,EAEX,aAAa,EACb,oBAAoB,EACpB,QAAQ,EAGR,WAAW,EACX,gBAAgB,EAEhB,eAAe,EAEf,MAAM,gBAAgB,CAAC;AAqBxB,qBAAa,YAAa,YAAW,gBAAgB;IACpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,UAAU,CAAC,CAAqB;IACxC,OAAO,CAAC,iBAAiB,CAAC,CAA8B;IACxD,OAAO,CAAC,cAAc,CAAC,CAAgB;gBAE3B,MAAM,EAAE,eAAe;IAI7B,iBAAiB,CACtB,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,oBAAoB,EACrC,cAAc,CAAC,EAAE,gBAAgB,GAC/B,OAAO,CAAC,aAAa,CAAC;IAmBnB,eAAe,CAAC,MAAM,SAAS,QAAQ,GAAG,OAAO,GAAG,QAAQ,EACjE,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,EACvB,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAkB/B;;OAEG;YACW,aAAa;YAyBb,gBAAgB;IAoExB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAuB5B"}
|