@s2-dev/streamstore 0.2.17 → 0.3.2
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 +19 -0
- package/index.extras.d.ts +19 -10
- package/index.extras.d.ts.map +1 -1
- package/index.extras.js +43 -35
- package/index.extras.js.map +1 -1
- package/jsr.json +1 -1
- package/lib/config.d.ts +3 -3
- package/lib/config.d.ts.map +1 -1
- package/lib/config.js +3 -3
- package/lib/config.js.map +1 -1
- package/package.json +1 -1
- package/src/index.extras.ts +108 -49
- package/src/lib/config.ts +3 -4
package/README.md
CHANGED
|
@@ -23,6 +23,7 @@ S2 API: Serverless API for streaming data backed by object storage.
|
|
|
23
23
|
* [streamstore](#streamstore)
|
|
24
24
|
* [SDK Installation](#sdk-installation)
|
|
25
25
|
* [Requirements](#requirements)
|
|
26
|
+
* [SDK Recommended Usage](#sdk-recommended-usage)
|
|
26
27
|
* [SDK Example Usage](#sdk-example-usage)
|
|
27
28
|
* [Authentication](#authentication)
|
|
28
29
|
* [Available Resources and Operations](#available-resources-and-operations)
|
|
@@ -79,6 +80,24 @@ yarn add @s2-dev/streamstore zod
|
|
|
79
80
|
For supported JavaScript runtimes, please consult [RUNTIMES.md](RUNTIMES.md).
|
|
80
81
|
<!-- End Requirements [requirements] -->
|
|
81
82
|
|
|
83
|
+
## SDK Recommended Usage
|
|
84
|
+
|
|
85
|
+
The `S2Client` class provides a lot of convenience over the generated methods and is the recommended way to interact with the SDK. If you need finer control over the internal functions, you may use [Generated functions](#available-resources-and-operations)
|
|
86
|
+
or [Standalone functions](#standalone-functions).
|
|
87
|
+
|
|
88
|
+
```typescript
|
|
89
|
+
import { ReadRequest, S2Client } from "@s2-dev/streamstore";
|
|
90
|
+
|
|
91
|
+
const s2 = new S2Client("<AUTH_TOKEN>");
|
|
92
|
+
|
|
93
|
+
async function run() {
|
|
94
|
+
await s2.account.createBasin("my-favorite-basin");
|
|
95
|
+
await s2.account.basin("my-favorite-basin").stream("test").append({ appendInput: { records: [{ body: "hello" }] } });
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
run();
|
|
99
|
+
```
|
|
100
|
+
|
|
82
101
|
<!-- Start SDK Example Usage [usage] -->
|
|
83
102
|
## SDK Example Usage
|
|
84
103
|
|
package/index.extras.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
|
-
import { BasinConfig, BasinInfo, CheckTailResponse, CreateBasinRequest, CreateStreamRequest, StreamConfig, StreamInfo } from "./models/components";
|
|
2
|
-
import { ListBasinsRequest, ListBasinsResponse, ListStreamsRequest, ListStreamsResponse } from "./models/operations";
|
|
1
|
+
import { AppendOutput, BasinConfig, BasinInfo, CheckTailResponse, CreateBasinRequest, CreateStreamRequest, Output, ReadResponse, StreamConfig, StreamInfo } from "./models/components";
|
|
2
|
+
import { ListBasinsRequest, ListBasinsResponse, ListStreamsRequest, ListStreamsResponse, ReadRequest as ReadRequestInner, AppendRequest as AppendRequestInner } from "./models/operations";
|
|
3
3
|
import { PageIterator } from "./types";
|
|
4
|
+
import { EventStream } from "./lib/event-streams";
|
|
5
|
+
export type ReadRequest = Omit<ReadRequestInner, "stream">;
|
|
6
|
+
export type AppendRequest = Omit<AppendRequestInner, "stream">;
|
|
7
|
+
export type { GetBasinConfigRequest, ListBasinsRequest, ListBasinsResponse, ListStreamsRequest, ListStreamsResponse, ReconfigureBasinRequest, } from "./models/operations";
|
|
8
|
+
export type { BasinConfig, BasinInfo, CheckTailResponse, CreateBasinRequest, CreateStreamRequest, Output, ReadResponse, StreamConfig, StreamInfo, } from "./models/components";
|
|
4
9
|
export declare function genS2RequestToken(): string;
|
|
5
10
|
export declare class S2Client {
|
|
6
11
|
private authToken;
|
|
@@ -13,10 +18,9 @@ export declare class S2Client {
|
|
|
13
18
|
declare class S2Account {
|
|
14
19
|
private _account;
|
|
15
20
|
private requestOptions;
|
|
21
|
+
private authToken;
|
|
16
22
|
constructor(authToken: string);
|
|
17
|
-
|
|
18
|
-
* List basins.
|
|
19
|
-
*/
|
|
23
|
+
basin(basinName: string): S2Basin;
|
|
20
24
|
listBasins(request?: ListBasinsRequest): Promise<PageIterator<ListBasinsResponse, {
|
|
21
25
|
cursor: string;
|
|
22
26
|
}>>;
|
|
@@ -28,26 +32,31 @@ declare class S2Account {
|
|
|
28
32
|
declare class S2Basin {
|
|
29
33
|
private _basin;
|
|
30
34
|
private _stream;
|
|
31
|
-
private readonly basinURLSuffx;
|
|
32
35
|
private requestOptions;
|
|
33
36
|
private basinName;
|
|
37
|
+
private authToken;
|
|
38
|
+
private readonly basinURLSuffx;
|
|
39
|
+
private get basinURL();
|
|
34
40
|
constructor(authToken: string, basinName: string);
|
|
35
41
|
stream(streamName: string): Stream;
|
|
36
42
|
listStreams(request: ListStreamsRequest): Promise<PageIterator<ListStreamsResponse, {
|
|
37
43
|
cursor: string;
|
|
38
44
|
}>>;
|
|
39
45
|
getStreamConfig(stream: string): Promise<StreamConfig | undefined>;
|
|
40
|
-
createStream(stream: string, request
|
|
46
|
+
createStream(stream: string, request?: CreateStreamRequest): Promise<StreamInfo | undefined>;
|
|
41
47
|
deleteStream(stream: string, if_exists?: boolean): Promise<void | undefined>;
|
|
42
48
|
reconfigureStream(stream: string, config: StreamConfig): Promise<StreamConfig | undefined>;
|
|
43
49
|
}
|
|
44
50
|
declare class Stream {
|
|
45
51
|
private _stream;
|
|
46
|
-
private streamName;
|
|
47
52
|
private basinName;
|
|
53
|
+
private streamName;
|
|
48
54
|
private readonly basinURLSuffx;
|
|
49
|
-
|
|
55
|
+
private get basinURL();
|
|
56
|
+
constructor(basinName: string, streamName: string, authToken: string);
|
|
50
57
|
checkTail(): Promise<CheckTailResponse | undefined>;
|
|
58
|
+
readStream(request: ReadRequest): Promise<EventStream<ReadResponse> | undefined>;
|
|
59
|
+
read(request: ReadRequest): Promise<Output | undefined>;
|
|
60
|
+
append(request: AppendRequest): Promise<AppendOutput | undefined>;
|
|
51
61
|
}
|
|
52
|
-
export {};
|
|
53
62
|
//# sourceMappingURL=index.extras.d.ts.map
|
package/index.extras.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.extras.d.ts","sourceRoot":"","sources":["src/index.extras.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.extras.d.ts","sourceRoot":"","sources":["src/index.extras.ts"],"names":[],"mappings":"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"}
|
package/index.extras.js
CHANGED
|
@@ -10,7 +10,7 @@ const account_1 = require("./sdk/account");
|
|
|
10
10
|
const uuid_1 = require("uuid");
|
|
11
11
|
const basinDeleteStream_1 = require("./funcs/basinDeleteStream");
|
|
12
12
|
function genS2RequestToken() {
|
|
13
|
-
return (0, uuid_1.v4)().replace(/-/g,
|
|
13
|
+
return (0, uuid_1.v4)().replace(/-/g, "");
|
|
14
14
|
}
|
|
15
15
|
class S2Client {
|
|
16
16
|
get account() {
|
|
@@ -27,10 +27,11 @@ exports.S2Client = S2Client;
|
|
|
27
27
|
class S2Account {
|
|
28
28
|
constructor(authToken) {
|
|
29
29
|
this._account = new account_1.Account({ bearerAuth: authToken });
|
|
30
|
+
this.authToken = authToken;
|
|
30
31
|
this.requestOptions = {
|
|
31
32
|
timeoutMs: 3000,
|
|
32
33
|
retries: {
|
|
33
|
-
strategy:
|
|
34
|
+
strategy: "backoff",
|
|
34
35
|
backoff: {
|
|
35
36
|
initialInterval: 100,
|
|
36
37
|
maxInterval: 3000,
|
|
@@ -39,19 +40,17 @@ class S2Account {
|
|
|
39
40
|
},
|
|
40
41
|
retryConnectionErrors: true,
|
|
41
42
|
},
|
|
42
|
-
retryCodes: [
|
|
43
|
+
retryCodes: ["500", "503", "504"],
|
|
43
44
|
};
|
|
44
45
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
basin(basinName) {
|
|
47
|
+
return new S2Basin(this.authToken, basinName);
|
|
48
|
+
}
|
|
48
49
|
async listBasins(request) {
|
|
49
50
|
return this._account.listBasins(request ?? {}, this.requestOptions);
|
|
50
51
|
}
|
|
51
52
|
async getBasinConfig(basin) {
|
|
52
|
-
const _request = {
|
|
53
|
-
basin,
|
|
54
|
-
};
|
|
53
|
+
const _request = { basin };
|
|
55
54
|
return (await this._account.getBasinConfig(_request, this.requestOptions)).basinConfig;
|
|
56
55
|
}
|
|
57
56
|
async createBasin(basin, request) {
|
|
@@ -71,22 +70,23 @@ class S2Account {
|
|
|
71
70
|
return;
|
|
72
71
|
}
|
|
73
72
|
async reconfigureBasin(basin, config) {
|
|
74
|
-
const _request = {
|
|
75
|
-
basin,
|
|
76
|
-
basinConfig: config,
|
|
77
|
-
};
|
|
73
|
+
const _request = { basin, basinConfig: config };
|
|
78
74
|
return (await this._account.reconfigureBasin(_request, this.requestOptions)).basinConfig;
|
|
79
75
|
}
|
|
80
76
|
}
|
|
81
77
|
class S2Basin {
|
|
78
|
+
get basinURL() {
|
|
79
|
+
return `https://${this.basinName}.${this.basinURLSuffx}`;
|
|
80
|
+
}
|
|
82
81
|
constructor(authToken, basinName) {
|
|
83
|
-
this.basinURLSuffx =
|
|
82
|
+
this.basinURLSuffx = "b.aws.s2.dev/v1alpha";
|
|
84
83
|
this._basin = new basin_1.Basin({ bearerAuth: authToken });
|
|
84
|
+
this.authToken = authToken;
|
|
85
85
|
this.basinName = basinName;
|
|
86
86
|
this.requestOptions = {
|
|
87
87
|
timeoutMs: 3000,
|
|
88
88
|
retries: {
|
|
89
|
-
strategy:
|
|
89
|
+
strategy: "backoff",
|
|
90
90
|
backoff: {
|
|
91
91
|
initialInterval: 100,
|
|
92
92
|
maxInterval: 3000,
|
|
@@ -95,32 +95,31 @@ class S2Basin {
|
|
|
95
95
|
},
|
|
96
96
|
retryConnectionErrors: true,
|
|
97
97
|
},
|
|
98
|
-
retryCodes: [
|
|
98
|
+
retryCodes: ["500", "503", "504"],
|
|
99
99
|
};
|
|
100
100
|
}
|
|
101
101
|
stream(streamName) {
|
|
102
|
-
return (this._stream ?? (this._stream = new Stream(streamName, this.
|
|
102
|
+
return (this._stream ?? (this._stream = new Stream(this.basinName, streamName, this.authToken)));
|
|
103
103
|
}
|
|
104
104
|
async listStreams(request) {
|
|
105
|
-
|
|
106
|
-
return this._basin.listStreams(request, { serverURL: basinURL, ...this.requestOptions });
|
|
105
|
+
return this._basin.listStreams(request, { serverURL: this.basinURL, ...this.requestOptions });
|
|
107
106
|
}
|
|
108
107
|
async getStreamConfig(stream) {
|
|
109
|
-
|
|
110
|
-
return (await this._basin.getStreamConfig({ stream }, { serverURL: basinURL, ...this.requestOptions })).streamConfig;
|
|
108
|
+
return (await this._basin.getStreamConfig({ stream }, { serverURL: this.basinURL, ...this.requestOptions })).streamConfig;
|
|
111
109
|
}
|
|
112
110
|
async createStream(stream, request) {
|
|
113
|
-
const basinURL = `${this.basinName}.${this.basinURLSuffx}`;
|
|
114
111
|
const _request = {
|
|
115
112
|
stream,
|
|
116
113
|
s2RequestToken: genS2RequestToken(),
|
|
117
|
-
createStreamRequest: request,
|
|
114
|
+
createStreamRequest: request ?? {},
|
|
118
115
|
};
|
|
119
|
-
return (await this._basin.createStream(_request, { serverURL: basinURL, ...this.requestOptions })).streamInfo;
|
|
116
|
+
return (await this._basin.createStream(_request, { serverURL: this.basinURL, ...this.requestOptions })).streamInfo;
|
|
120
117
|
}
|
|
121
118
|
async deleteStream(stream, if_exists) {
|
|
122
|
-
const
|
|
123
|
-
|
|
119
|
+
const response = await (0, basinDeleteStream_1.basinDeleteStream)(this._basin, { stream }, {
|
|
120
|
+
serverURL: this.basinURL,
|
|
121
|
+
...this.requestOptions,
|
|
122
|
+
});
|
|
124
123
|
if (if_exists && response instanceof errors_1.NotFoundError)
|
|
125
124
|
return;
|
|
126
125
|
if (response.error)
|
|
@@ -128,21 +127,30 @@ class S2Basin {
|
|
|
128
127
|
return;
|
|
129
128
|
}
|
|
130
129
|
async reconfigureStream(stream, config) {
|
|
131
|
-
|
|
132
|
-
return (await this._basin.reconfigureStream({ stream, streamConfig: config }, { serverURL: basinURL, ...this.requestOptions })).streamConfig;
|
|
130
|
+
return (await this._basin.reconfigureStream({ stream, streamConfig: config }, { serverURL: this.basinURL, ...this.requestOptions })).streamConfig;
|
|
133
131
|
}
|
|
134
132
|
}
|
|
135
133
|
class Stream {
|
|
136
|
-
|
|
137
|
-
this.basinURLSuffx
|
|
138
|
-
|
|
134
|
+
get basinURL() {
|
|
135
|
+
return `https://${this.basinName}.${this.basinURLSuffx}`;
|
|
136
|
+
}
|
|
137
|
+
constructor(basinName, streamName, authToken) {
|
|
138
|
+
this.basinURLSuffx = "b.aws.s2.dev/v1alpha";
|
|
139
139
|
this.basinName = basinName;
|
|
140
|
-
this.
|
|
140
|
+
this.streamName = streamName;
|
|
141
|
+
this._stream = new stream_1.Stream({ bearerAuth: authToken });
|
|
141
142
|
}
|
|
142
143
|
async checkTail() {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
144
|
+
return (await this._stream.checkTail({ stream: this.streamName }, { serverURL: this.basinURL })).checkTailResponse;
|
|
145
|
+
}
|
|
146
|
+
async readStream(request) {
|
|
147
|
+
return (await this._stream.read({ ...request, stream: this.streamName }, { serverURL: this.basinURL, acceptHeaderOverride: stream_1.ReadAcceptEnum.textEventStream })).readResponse;
|
|
148
|
+
}
|
|
149
|
+
async read(request) {
|
|
150
|
+
return (await this._stream.read({ ...request, stream: this.streamName }, { serverURL: this.basinURL })).output;
|
|
151
|
+
}
|
|
152
|
+
async append(request) {
|
|
153
|
+
return (await this._stream.append({ ...request, stream: this.streamName }, { serverURL: this.basinURL })).appendOutput;
|
|
146
154
|
}
|
|
147
155
|
}
|
|
148
156
|
//# sourceMappingURL=index.extras.js.map
|
package/index.extras.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.extras.js","sourceRoot":"","sources":["src/index.extras.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.extras.js","sourceRoot":"","sources":["src/index.extras.ts"],"names":[],"mappings":"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"}
|
package/jsr.json
CHANGED
package/lib/config.d.ts
CHANGED
|
@@ -27,8 +27,8 @@ export declare function serverURLFromOptions(options: SDKOptions): URL | null;
|
|
|
27
27
|
export declare const SDK_METADATA: {
|
|
28
28
|
readonly language: "typescript";
|
|
29
29
|
readonly openapiDocVersion: "1.0.0";
|
|
30
|
-
readonly sdkVersion: "0.2
|
|
31
|
-
readonly genVersion: "2.
|
|
32
|
-
readonly userAgent: "speakeasy-sdk/typescript 0.2
|
|
30
|
+
readonly sdkVersion: "0.3.2";
|
|
31
|
+
readonly genVersion: "2.505.0";
|
|
32
|
+
readonly userAgent: "speakeasy-sdk/typescript 0.3.2 2.505.0 1.0.0 @s2-dev/streamstore";
|
|
33
33
|
};
|
|
34
34
|
//# sourceMappingURL=config.d.ts.map
|
package/lib/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/lib/config.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C;;GAEG;AACH,eAAO,MAAM,UAAU,yCAEb,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE9C,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG,GAAG,IAAI,CAepE;AAED,eAAO,MAAM,YAAY;;;;;;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/lib/config.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C;;GAEG;AACH,eAAO,MAAM,UAAU,yCAEb,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE9C,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG,GAAG,IAAI,CAepE;AAED,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC"}
|
package/lib/config.js
CHANGED
|
@@ -28,8 +28,8 @@ function serverURLFromOptions(options) {
|
|
|
28
28
|
exports.SDK_METADATA = {
|
|
29
29
|
language: "typescript",
|
|
30
30
|
openapiDocVersion: "1.0.0",
|
|
31
|
-
sdkVersion: "0.2
|
|
32
|
-
genVersion: "2.
|
|
33
|
-
userAgent: "speakeasy-sdk/typescript 0.2
|
|
31
|
+
sdkVersion: "0.3.2",
|
|
32
|
+
genVersion: "2.505.0",
|
|
33
|
+
userAgent: "speakeasy-sdk/typescript 0.3.2 2.505.0 1.0.0 @s2-dev/streamstore",
|
|
34
34
|
};
|
|
35
35
|
//# sourceMappingURL=config.js.map
|
package/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/lib/config.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAkCH,oDAeC;AA5CD,qCAA8C;AAE9C;;GAEG;AACU,QAAA,UAAU,GAAG;IACxB,4BAA4B;CACpB,CAAC;AAsBX,SAAgB,oBAAoB,CAAC,OAAmB;IACtD,IAAI,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAElC,MAAM,MAAM,GAAW,EAAE,CAAC;IAE1B,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC;QACzC,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,IAAI,kBAAU,CAAC,MAAM,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,wBAAwB,SAAS,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,SAAS,GAAG,kBAAU,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,GAAG,IAAA,mBAAU,EAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAEY,QAAA,YAAY,GAAG;IAC1B,QAAQ,EAAE,YAAY;IACtB,iBAAiB,EAAE,OAAO;IAC1B,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/lib/config.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAkCH,oDAeC;AA5CD,qCAA8C;AAE9C;;GAEG;AACU,QAAA,UAAU,GAAG;IACxB,4BAA4B;CACpB,CAAC;AAsBX,SAAgB,oBAAoB,CAAC,OAAmB;IACtD,IAAI,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAElC,MAAM,MAAM,GAAW,EAAE,CAAC;IAE1B,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC;QACzC,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,IAAI,kBAAU,CAAC,MAAM,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,wBAAwB,SAAS,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,SAAS,GAAG,kBAAU,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,GAAG,IAAA,mBAAU,EAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAEY,QAAA,YAAY,GAAG;IAC1B,QAAQ,EAAE,YAAY;IACtB,iBAAiB,EAAE,OAAO;IAC1B,UAAU,EAAE,OAAO;IACnB,UAAU,EAAE,SAAS;IACrB,SAAS,EAAE,kEAAkE;CACrE,CAAC"}
|
package/package.json
CHANGED
package/src/index.extras.ts
CHANGED
|
@@ -1,8 +1,19 @@
|
|
|
1
1
|
import { accountDeleteBasin } from "./funcs/accountDeleteBasin";
|
|
2
2
|
import { RequestOptions } from "./lib/sdks";
|
|
3
|
-
import {
|
|
3
|
+
import {
|
|
4
|
+
AppendOutput,
|
|
5
|
+
BasinConfig,
|
|
6
|
+
BasinInfo,
|
|
7
|
+
CheckTailResponse,
|
|
8
|
+
CreateBasinRequest,
|
|
9
|
+
CreateStreamRequest,
|
|
10
|
+
Output,
|
|
11
|
+
ReadResponse,
|
|
12
|
+
StreamConfig,
|
|
13
|
+
StreamInfo,
|
|
14
|
+
} from "./models/components";
|
|
4
15
|
import { NotFoundError } from "./models/errors";
|
|
5
|
-
import {
|
|
16
|
+
import {
|
|
6
17
|
GetBasinConfigRequest,
|
|
7
18
|
ListBasinsRequest,
|
|
8
19
|
ListBasinsResponse,
|
|
@@ -10,19 +21,44 @@ import {
|
|
|
10
21
|
ListStreamsResponse,
|
|
11
22
|
ReconfigureBasinRequest,
|
|
12
23
|
CreateBasinRequest as CreateBasinRequestInner,
|
|
13
|
-
CreateStreamRequest as CreateStreamRequestInner
|
|
24
|
+
CreateStreamRequest as CreateStreamRequestInner,
|
|
25
|
+
ReadRequest as ReadRequestInner,
|
|
26
|
+
AppendRequest as AppendRequestInner,
|
|
14
27
|
} from "./models/operations";
|
|
15
28
|
import { PageIterator } from "./types";
|
|
16
29
|
|
|
17
|
-
import { Stream as InnerStream } from "./sdk/stream";
|
|
30
|
+
import { Stream as InnerStream, ReadAcceptEnum } from "./sdk/stream";
|
|
18
31
|
import { Basin as InnerBasin } from "./sdk/basin";
|
|
19
32
|
import { Account as InnerAccount } from "./sdk/account";
|
|
20
33
|
|
|
21
|
-
import { v4 } from
|
|
34
|
+
import { v4 } from "uuid";
|
|
22
35
|
import { basinDeleteStream } from "./funcs/basinDeleteStream";
|
|
36
|
+
import { EventStream } from "./lib/event-streams";
|
|
37
|
+
|
|
38
|
+
export type ReadRequest = Omit<ReadRequestInner, "stream">;
|
|
39
|
+
export type AppendRequest = Omit<AppendRequestInner, "stream">;
|
|
40
|
+
export type {
|
|
41
|
+
GetBasinConfigRequest,
|
|
42
|
+
ListBasinsRequest,
|
|
43
|
+
ListBasinsResponse,
|
|
44
|
+
ListStreamsRequest,
|
|
45
|
+
ListStreamsResponse,
|
|
46
|
+
ReconfigureBasinRequest,
|
|
47
|
+
} from "./models/operations";
|
|
48
|
+
export type {
|
|
49
|
+
BasinConfig,
|
|
50
|
+
BasinInfo,
|
|
51
|
+
CheckTailResponse,
|
|
52
|
+
CreateBasinRequest,
|
|
53
|
+
CreateStreamRequest,
|
|
54
|
+
Output,
|
|
55
|
+
ReadResponse,
|
|
56
|
+
StreamConfig,
|
|
57
|
+
StreamInfo,
|
|
58
|
+
} from "./models/components";
|
|
23
59
|
|
|
24
60
|
export function genS2RequestToken(): string {
|
|
25
|
-
return v4().replace(/-/g,
|
|
61
|
+
return v4().replace(/-/g, "");
|
|
26
62
|
}
|
|
27
63
|
|
|
28
64
|
export class S2Client {
|
|
@@ -45,13 +81,15 @@ export class S2Client {
|
|
|
45
81
|
class S2Account {
|
|
46
82
|
private _account: InnerAccount;
|
|
47
83
|
private requestOptions: RequestOptions;
|
|
84
|
+
private authToken: string;
|
|
48
85
|
|
|
49
86
|
constructor(authToken: string) {
|
|
50
87
|
this._account = new InnerAccount({ bearerAuth: authToken });
|
|
88
|
+
this.authToken = authToken;
|
|
51
89
|
this.requestOptions = {
|
|
52
90
|
timeoutMs: 3000,
|
|
53
91
|
retries: {
|
|
54
|
-
strategy:
|
|
92
|
+
strategy: "backoff",
|
|
55
93
|
backoff: {
|
|
56
94
|
initialInterval: 100,
|
|
57
95
|
maxInterval: 3000,
|
|
@@ -60,23 +98,22 @@ class S2Account {
|
|
|
60
98
|
},
|
|
61
99
|
retryConnectionErrors: true,
|
|
62
100
|
},
|
|
63
|
-
retryCodes: [
|
|
101
|
+
retryCodes: ["500", "503", "504"],
|
|
64
102
|
};
|
|
65
103
|
}
|
|
66
104
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
105
|
+
basin(basinName: string): S2Basin {
|
|
106
|
+
return new S2Basin(this.authToken, basinName);
|
|
107
|
+
}
|
|
108
|
+
|
|
70
109
|
async listBasins(
|
|
71
|
-
request?: ListBasinsRequest
|
|
110
|
+
request?: ListBasinsRequest
|
|
72
111
|
): Promise<PageIterator<ListBasinsResponse, { cursor: string }>> {
|
|
73
112
|
return this._account.listBasins(request ?? {}, this.requestOptions);
|
|
74
113
|
}
|
|
75
114
|
|
|
76
115
|
async getBasinConfig(basin: string): Promise<BasinConfig | undefined> {
|
|
77
|
-
const _request: GetBasinConfigRequest = {
|
|
78
|
-
basin,
|
|
79
|
-
};
|
|
116
|
+
const _request: GetBasinConfigRequest = { basin };
|
|
80
117
|
return (await this._account.getBasinConfig(_request, this.requestOptions)).basinConfig;
|
|
81
118
|
}
|
|
82
119
|
|
|
@@ -97,10 +134,7 @@ class S2Account {
|
|
|
97
134
|
}
|
|
98
135
|
|
|
99
136
|
async reconfigureBasin(basin: string, config: BasinConfig): Promise<BasinConfig | undefined> {
|
|
100
|
-
const _request: ReconfigureBasinRequest = {
|
|
101
|
-
basin,
|
|
102
|
-
basinConfig: config,
|
|
103
|
-
};
|
|
137
|
+
const _request: ReconfigureBasinRequest = { basin, basinConfig: config };
|
|
104
138
|
return (await this._account.reconfigureBasin(_request, this.requestOptions)).basinConfig;
|
|
105
139
|
}
|
|
106
140
|
}
|
|
@@ -108,17 +142,23 @@ class S2Account {
|
|
|
108
142
|
class S2Basin {
|
|
109
143
|
private _basin: InnerBasin;
|
|
110
144
|
private _stream!: Stream;
|
|
111
|
-
private readonly basinURLSuffx = 'b.aws.s2.dev/v1alpha';
|
|
112
145
|
private requestOptions: RequestOptions;
|
|
113
146
|
private basinName: string;
|
|
147
|
+
private authToken: string;
|
|
148
|
+
private readonly basinURLSuffx = "b.aws.s2.dev/v1alpha";
|
|
149
|
+
|
|
150
|
+
private get basinURL(): string {
|
|
151
|
+
return `https://${this.basinName}.${this.basinURLSuffx}`;
|
|
152
|
+
}
|
|
114
153
|
|
|
115
154
|
constructor(authToken: string, basinName: string) {
|
|
116
155
|
this._basin = new InnerBasin({ bearerAuth: authToken });
|
|
156
|
+
this.authToken = authToken;
|
|
117
157
|
this.basinName = basinName;
|
|
118
158
|
this.requestOptions = {
|
|
119
159
|
timeoutMs: 3000,
|
|
120
160
|
retries: {
|
|
121
|
-
strategy:
|
|
161
|
+
strategy: "backoff",
|
|
122
162
|
backoff: {
|
|
123
163
|
initialInterval: 100,
|
|
124
164
|
maxInterval: 3000,
|
|
@@ -127,58 +167,52 @@ class S2Basin {
|
|
|
127
167
|
},
|
|
128
168
|
retryConnectionErrors: true,
|
|
129
169
|
},
|
|
130
|
-
retryCodes: [
|
|
170
|
+
retryCodes: ["500", "503", "504"],
|
|
131
171
|
};
|
|
132
172
|
}
|
|
133
173
|
|
|
134
174
|
stream(streamName: string): Stream {
|
|
135
|
-
return (this._stream ??= new Stream(streamName, this.
|
|
175
|
+
return (this._stream ??= new Stream(this.basinName, streamName, this.authToken));
|
|
136
176
|
}
|
|
137
177
|
|
|
138
178
|
async listStreams(
|
|
139
|
-
request: ListStreamsRequest
|
|
179
|
+
request: ListStreamsRequest
|
|
140
180
|
): Promise<PageIterator<ListStreamsResponse, { cursor: string }>> {
|
|
141
|
-
|
|
142
|
-
return this._basin.listStreams(request, { serverURL: basinURL, ...this.requestOptions });
|
|
181
|
+
return this._basin.listStreams(request, { serverURL: this.basinURL, ...this.requestOptions });
|
|
143
182
|
}
|
|
144
183
|
|
|
145
184
|
async getStreamConfig(stream: string): Promise<StreamConfig | undefined> {
|
|
146
|
-
const basinURL = `${this.basinName}.${this.basinURLSuffx}`;
|
|
147
185
|
return (
|
|
148
|
-
await this._basin.getStreamConfig({ stream }, { serverURL: basinURL, ...this.requestOptions })
|
|
186
|
+
await this._basin.getStreamConfig({ stream }, { serverURL: this.basinURL, ...this.requestOptions })
|
|
149
187
|
).streamConfig;
|
|
150
188
|
}
|
|
151
189
|
|
|
152
|
-
async createStream(
|
|
153
|
-
stream: string,
|
|
154
|
-
request: CreateStreamRequest,
|
|
155
|
-
): Promise<StreamInfo | undefined> {
|
|
156
|
-
const basinURL = `${this.basinName}.${this.basinURLSuffx}`;
|
|
190
|
+
async createStream(stream: string, request?: CreateStreamRequest): Promise<StreamInfo | undefined> {
|
|
157
191
|
const _request: CreateStreamRequestInner = {
|
|
158
192
|
stream,
|
|
159
193
|
s2RequestToken: genS2RequestToken(),
|
|
160
|
-
createStreamRequest: request,
|
|
194
|
+
createStreamRequest: request ?? {},
|
|
161
195
|
};
|
|
162
|
-
|
|
163
196
|
return (
|
|
164
|
-
await this._basin.createStream(_request, { serverURL: basinURL, ...this.requestOptions })
|
|
197
|
+
await this._basin.createStream(_request, { serverURL: this.basinURL, ...this.requestOptions })
|
|
165
198
|
).streamInfo;
|
|
166
199
|
}
|
|
167
200
|
|
|
168
201
|
async deleteStream(stream: string, if_exists?: boolean): Promise<void | undefined> {
|
|
169
|
-
const
|
|
170
|
-
|
|
202
|
+
const response = await basinDeleteStream(this._basin, { stream }, {
|
|
203
|
+
serverURL: this.basinURL,
|
|
204
|
+
...this.requestOptions,
|
|
205
|
+
});
|
|
171
206
|
if (if_exists && response instanceof NotFoundError) return;
|
|
172
207
|
if (response.error) throw new Error(response.error.message);
|
|
173
|
-
return;
|
|
208
|
+
return;
|
|
174
209
|
}
|
|
175
210
|
|
|
176
211
|
async reconfigureStream(stream: string, config: StreamConfig): Promise<StreamConfig | undefined> {
|
|
177
|
-
const basinURL = `${this.basinName}.${this.basinURLSuffx}`;
|
|
178
212
|
return (
|
|
179
213
|
await this._basin.reconfigureStream(
|
|
180
214
|
{ stream, streamConfig: config },
|
|
181
|
-
{ serverURL: basinURL, ...this.requestOptions }
|
|
215
|
+
{ serverURL: this.basinURL, ...this.requestOptions }
|
|
182
216
|
)
|
|
183
217
|
).streamConfig;
|
|
184
218
|
}
|
|
@@ -186,19 +220,44 @@ class S2Basin {
|
|
|
186
220
|
|
|
187
221
|
class Stream {
|
|
188
222
|
private _stream: InnerStream;
|
|
189
|
-
private streamName: string;
|
|
190
223
|
private basinName: string;
|
|
191
|
-
private
|
|
224
|
+
private streamName: string;
|
|
225
|
+
private readonly basinURLSuffx = "b.aws.s2.dev/v1alpha";
|
|
192
226
|
|
|
193
|
-
|
|
194
|
-
this.
|
|
227
|
+
private get basinURL(): string {
|
|
228
|
+
return `https://${this.basinName}.${this.basinURLSuffx}`;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
constructor(basinName: string, streamName: string, authToken: string) {
|
|
195
232
|
this.basinName = basinName;
|
|
196
|
-
this.
|
|
233
|
+
this.streamName = streamName;
|
|
234
|
+
this._stream = new InnerStream({ bearerAuth: authToken });
|
|
197
235
|
}
|
|
198
236
|
|
|
199
237
|
async checkTail(): Promise<CheckTailResponse | undefined> {
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
238
|
+
return (
|
|
239
|
+
await this._stream.checkTail({ stream: this.streamName }, { serverURL: this.basinURL })
|
|
240
|
+
).checkTailResponse;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
async readStream(request: ReadRequest): Promise<EventStream<ReadResponse> | undefined> {
|
|
244
|
+
return (
|
|
245
|
+
await this._stream.read(
|
|
246
|
+
{ ...request, stream: this.streamName },
|
|
247
|
+
{ serverURL: this.basinURL, acceptHeaderOverride: ReadAcceptEnum.textEventStream }
|
|
248
|
+
)
|
|
249
|
+
).readResponse;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
async read(request: ReadRequest): Promise<Output | undefined> {
|
|
253
|
+
return (
|
|
254
|
+
await this._stream.read({ ...request, stream: this.streamName }, { serverURL: this.basinURL })
|
|
255
|
+
).output;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
async append(request: AppendRequest): Promise<AppendOutput | undefined> {
|
|
259
|
+
return (
|
|
260
|
+
await this._stream.append({ ...request, stream: this.streamName }, { serverURL: this.basinURL })
|
|
261
|
+
).appendOutput;
|
|
203
262
|
}
|
|
204
263
|
}
|
package/src/lib/config.ts
CHANGED
|
@@ -54,8 +54,7 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
|
|
|
54
54
|
export const SDK_METADATA = {
|
|
55
55
|
language: "typescript",
|
|
56
56
|
openapiDocVersion: "1.0.0",
|
|
57
|
-
sdkVersion: "0.2
|
|
58
|
-
genVersion: "2.
|
|
59
|
-
userAgent:
|
|
60
|
-
"speakeasy-sdk/typescript 0.2.17 2.503.2 1.0.0 @s2-dev/streamstore",
|
|
57
|
+
sdkVersion: "0.3.2",
|
|
58
|
+
genVersion: "2.505.0",
|
|
59
|
+
userAgent: "speakeasy-sdk/typescript 0.3.2 2.505.0 1.0.0 @s2-dev/streamstore",
|
|
61
60
|
} as const;
|