@vertesia/api-fetch-client 0.80.0-dev.20251121 → 0.80.1

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.
Files changed (52) hide show
  1. package/README.md +270 -1
  2. package/package.json +4 -3
  3. package/lib/cjs/base.js +0 -190
  4. package/lib/cjs/base.js.map +0 -1
  5. package/lib/cjs/client.js +0 -107
  6. package/lib/cjs/client.js.map +0 -1
  7. package/lib/cjs/errors.js +0 -57
  8. package/lib/cjs/errors.js.map +0 -1
  9. package/lib/cjs/index.js +0 -21
  10. package/lib/cjs/index.js.map +0 -1
  11. package/lib/cjs/package.json +0 -3
  12. package/lib/cjs/sse/EventSourceParserStream.js +0 -41
  13. package/lib/cjs/sse/EventSourceParserStream.js.map +0 -1
  14. package/lib/cjs/sse/TextDecoderStream.js +0 -51
  15. package/lib/cjs/sse/TextDecoderStream.js.map +0 -1
  16. package/lib/cjs/sse/index.js +0 -27
  17. package/lib/cjs/sse/index.js.map +0 -1
  18. package/lib/cjs/utils.js +0 -38
  19. package/lib/cjs/utils.js.map +0 -1
  20. package/lib/esm/base.js +0 -185
  21. package/lib/esm/base.js.map +0 -1
  22. package/lib/esm/client.js +0 -101
  23. package/lib/esm/client.js.map +0 -1
  24. package/lib/esm/errors.js +0 -51
  25. package/lib/esm/errors.js.map +0 -1
  26. package/lib/esm/index.js +0 -5
  27. package/lib/esm/index.js.map +0 -1
  28. package/lib/esm/sse/EventSourceParserStream.js +0 -37
  29. package/lib/esm/sse/EventSourceParserStream.js.map +0 -1
  30. package/lib/esm/sse/TextDecoderStream.js +0 -49
  31. package/lib/esm/sse/TextDecoderStream.js.map +0 -1
  32. package/lib/esm/sse/index.js +0 -24
  33. package/lib/esm/sse/index.js.map +0 -1
  34. package/lib/esm/utils.js +0 -33
  35. package/lib/esm/utils.js.map +0 -1
  36. package/lib/tsconfig.tsbuildinfo +0 -1
  37. package/lib/types/base.d.ts +0 -67
  38. package/lib/types/base.d.ts.map +0 -1
  39. package/lib/types/client.d.ts +0 -36
  40. package/lib/types/client.d.ts.map +0 -1
  41. package/lib/types/errors.d.ts +0 -18
  42. package/lib/types/errors.d.ts.map +0 -1
  43. package/lib/types/index.d.ts +0 -5
  44. package/lib/types/index.d.ts.map +0 -1
  45. package/lib/types/sse/EventSourceParserStream.d.ts +0 -23
  46. package/lib/types/sse/EventSourceParserStream.d.ts.map +0 -1
  47. package/lib/types/sse/TextDecoderStream.d.ts +0 -8
  48. package/lib/types/sse/TextDecoderStream.d.ts.map +0 -1
  49. package/lib/types/sse/index.d.ts +0 -13
  50. package/lib/types/sse/index.d.ts.map +0 -1
  51. package/lib/types/utils.d.ts +0 -4
  52. package/lib/types/utils.d.ts.map +0 -1
package/README.md CHANGED
@@ -1 +1,270 @@
1
- # api-fetch-client
1
+ # @vertesia/api-fetch-client
2
+
3
+ A lightweight HTTP client that wraps the Fetch API and simplifies building REST API clients. Works in both browser and Node.js environments.
4
+
5
+ ## Features
6
+
7
+ - Fluent API for building HTTP clients
8
+ - Works in browser and Node.js
9
+ - Server-Sent Events (SSE) support out of the box
10
+ - Customizable authentication via callbacks
11
+ - Request/response interceptors
12
+ - Custom error handling
13
+ - TypeScript support with full type definitions
14
+
15
+ ## Installation
16
+
17
+ ```bash
18
+ npm install @vertesia/api-fetch-client
19
+ # or
20
+ pnpm add @vertesia/api-fetch-client
21
+ ```
22
+
23
+ ## Basic Usage
24
+
25
+ ```typescript
26
+ import { FetchClient } from '@vertesia/api-fetch-client';
27
+
28
+ const client = new FetchClient('https://api.example.com/v1');
29
+
30
+ // GET request
31
+ const data = await client.get('/users');
32
+
33
+ // POST request with payload
34
+ const newUser = await client.post('/users', {
35
+ payload: { name: 'John', email: 'john@example.com' }
36
+ });
37
+
38
+ // PUT request
39
+ await client.put('/users/123', {
40
+ payload: { name: 'John Updated' }
41
+ });
42
+
43
+ // DELETE request
44
+ await client.delete('/users/123');
45
+ ```
46
+
47
+ ## Authentication
48
+
49
+ Use the `withAuthCallback` method to set up dynamic authentication:
50
+
51
+ ```typescript
52
+ const client = new FetchClient('https://api.example.com')
53
+ .withAuthCallback(async () => {
54
+ const token = await getAccessToken();
55
+ return `Bearer ${token}`;
56
+ });
57
+ ```
58
+
59
+ Or set headers directly:
60
+
61
+ ```typescript
62
+ const client = new FetchClient('https://api.example.com')
63
+ .withHeaders({
64
+ 'Authorization': 'Bearer my-token'
65
+ });
66
+ ```
67
+
68
+ ## Query Parameters
69
+
70
+ Pass query parameters using the `query` option:
71
+
72
+ ```typescript
73
+ const results = await client.get('/search', {
74
+ query: { q: 'search term', page: 1, limit: 10 }
75
+ });
76
+ // Request: GET /search?q=search%20term&page=1&limit=10
77
+ ```
78
+
79
+ ## Custom Headers
80
+
81
+ Add headers per-request or globally:
82
+
83
+ ```typescript
84
+ // Global headers
85
+ const client = new FetchClient('https://api.example.com')
86
+ .withHeaders({ 'X-Custom-Header': 'value' });
87
+
88
+ // Per-request headers
89
+ await client.get('/endpoint', {
90
+ headers: { 'X-Request-Id': '12345' }
91
+ });
92
+ ```
93
+
94
+ ## Server-Sent Events (SSE)
95
+
96
+ Stream server-sent events using the built-in SSE reader:
97
+
98
+ ```typescript
99
+ const stream = await client.get('/events', { reader: 'sse' });
100
+
101
+ for await (const event of stream) {
102
+ if (event.type === 'event') {
103
+ console.log('Event:', event.event, event.data);
104
+ }
105
+ }
106
+ ```
107
+
108
+ ## Custom Response Readers
109
+
110
+ Provide a custom reader function for non-JSON responses:
111
+
112
+ ```typescript
113
+ // Read as text
114
+ const text = await client.get('/file.txt', {
115
+ reader: (response) => response.text()
116
+ });
117
+
118
+ // Read as blob
119
+ const blob = await client.get('/image.png', {
120
+ reader: (response) => response.blob()
121
+ });
122
+ ```
123
+
124
+ ## Error Handling
125
+
126
+ The client throws typed errors for different failure scenarios:
127
+
128
+ ```typescript
129
+ import { RequestError, ServerError, ConnectionError } from '@vertesia/api-fetch-client';
130
+
131
+ try {
132
+ await client.get('/protected');
133
+ } catch (error) {
134
+ if (error instanceof ServerError) {
135
+ console.log('Server error:', error.status, error.message);
136
+ console.log('Response payload:', error.payload);
137
+ } else if (error instanceof ConnectionError) {
138
+ console.log('Connection failed:', error.message);
139
+ }
140
+ }
141
+ ```
142
+
143
+ ### Custom Error Factory
144
+
145
+ Transform errors before they're thrown:
146
+
147
+ ```typescript
148
+ const client = new FetchClient('https://api.example.com')
149
+ .withErrorFactory((err) => {
150
+ if (err.status === 401) {
151
+ return new UnauthorizedError('Please log in');
152
+ }
153
+ return err;
154
+ });
155
+ ```
156
+
157
+ ## Request/Response Interceptors
158
+
159
+ Hook into requests and responses for logging or modification:
160
+
161
+ ```typescript
162
+ const client = new FetchClient('https://api.example.com');
163
+
164
+ client.onRequest = (request) => {
165
+ console.log('Sending:', request.method, request.url);
166
+ };
167
+
168
+ client.onResponse = (response, request) => {
169
+ console.log('Received:', response.status, 'for', request.url);
170
+ };
171
+ ```
172
+
173
+ ## Building API Clients with ApiTopic
174
+
175
+ Create organized API clients by extending `ApiTopic`:
176
+
177
+ ```typescript
178
+ import { AbstractFetchClient, ApiTopic } from '@vertesia/api-fetch-client';
179
+
180
+ class UsersApi extends ApiTopic {
181
+ list() {
182
+ return this.get('/');
183
+ }
184
+
185
+ getById(id: string) {
186
+ return this.get(`/${id}`);
187
+ }
188
+
189
+ create(data: CreateUserInput) {
190
+ return this.post('/', { payload: data });
191
+ }
192
+ }
193
+
194
+ class MyApiClient extends AbstractFetchClient<MyApiClient> {
195
+ readonly users: UsersApi;
196
+
197
+ constructor(baseUrl: string) {
198
+ super(baseUrl);
199
+ this.users = new UsersApi(this, '/users');
200
+ }
201
+ }
202
+
203
+ // Usage
204
+ const api = new MyApiClient('https://api.example.com');
205
+ const users = await api.users.list();
206
+ const user = await api.users.getById('123');
207
+ ```
208
+
209
+ ## Non-JSON Payloads
210
+
211
+ Disable automatic JSON serialization for form data or other formats:
212
+
213
+ ```typescript
214
+ const formData = new FormData();
215
+ formData.append('file', fileBlob);
216
+
217
+ await client.post('/upload', {
218
+ payload: formData,
219
+ jsonPayload: false
220
+ });
221
+ ```
222
+
223
+ ## Access Last Response
224
+
225
+ Inspect the last response for headers or status:
226
+
227
+ ```typescript
228
+ await client.get('/endpoint');
229
+ console.log('Status:', client.response?.status);
230
+ console.log('Headers:', client.response?.headers.get('X-Custom-Header'));
231
+ ```
232
+
233
+ ## API Reference
234
+
235
+ ### FetchClient
236
+
237
+ The main client class for making HTTP requests.
238
+
239
+ | Method | Description |
240
+ |--------|-------------|
241
+ | `get(path, params?)` | Make a GET request |
242
+ | `post(path, params?)` | Make a POST request |
243
+ | `put(path, params?)` | Make a PUT request |
244
+ | `delete(path, params?)` | Make a DELETE request |
245
+ | `withAuthCallback(cb)` | Set authentication callback |
246
+ | `withHeaders(headers)` | Add default headers |
247
+ | `withLang(locale)` | Set Accept-Language header |
248
+ | `withErrorFactory(factory)` | Set custom error factory |
249
+
250
+ ### Request Parameters
251
+
252
+ | Option | Type | Description |
253
+ |--------|------|-------------|
254
+ | `query` | `Record<string, primitive>` | Query string parameters |
255
+ | `headers` | `Record<string, string>` | Request headers |
256
+ | `payload` | `object \| BodyInit` | Request body |
257
+ | `reader` | `'sse' \| function` | Custom response reader |
258
+ | `jsonPayload` | `boolean` | Auto-serialize payload as JSON (default: true) |
259
+
260
+ ### Error Classes
261
+
262
+ | Class | Description |
263
+ |-------|-------------|
264
+ | `RequestError` | Base class for all request errors |
265
+ | `ServerError` | HTTP error responses (4xx, 5xx) |
266
+ | `ConnectionError` | Network/connection failures |
267
+
268
+ ## License
269
+
270
+ Apache-2.0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vertesia/api-fetch-client",
3
- "version": "0.80.0-dev.20251121",
3
+ "version": "0.80.1",
4
4
  "description": "HTTP client which wraps a fetch implementation and simplify the creation of REST API clients. Works both in browser and in node.",
5
5
  "type": "module",
6
6
  "types": "./lib/types/index.d.ts",
@@ -29,10 +29,11 @@
29
29
  "browser",
30
30
  "node",
31
31
  "sse",
32
- "eventsource"
32
+ "eventsource",
33
+ "vertesia"
33
34
  ],
34
35
  "author": "stefanescu.bogdan@gmail.com",
35
- "license": "MIT",
36
+ "license": "Apache-2.0",
36
37
  "bugs": {
37
38
  "url": "https://github.com/vertesia/composableai/issues"
38
39
  },
package/lib/cjs/base.js DELETED
@@ -1,190 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ClientBase = void 0;
4
- exports.fetchPromise = fetchPromise;
5
- const errors_js_1 = require("./errors.js");
6
- const index_js_1 = require("./sse/index.js");
7
- const utils_js_1 = require("./utils.js");
8
- function fetchPromise(fetchImpl) {
9
- if (fetchImpl) {
10
- return Promise.resolve(fetchImpl);
11
- }
12
- else if (typeof globalThis.fetch === 'function') {
13
- return Promise.resolve(globalThis.fetch);
14
- }
15
- else {
16
- // install an error impl
17
- return Promise.resolve(() => {
18
- throw new Error('No Fetch implementation found');
19
- });
20
- }
21
- }
22
- class ClientBase {
23
- constructor(baseUrl, fetchImpl) {
24
- this.errorFactory = (err) => err;
25
- this.verboseErrors = true;
26
- this.baseUrl = (0, utils_js_1.removeTrailingSlash)(baseUrl);
27
- this._fetch = fetchPromise(fetchImpl);
28
- }
29
- /**
30
- * Can be subclassed to map to custom errors
31
- * @param err
32
- */
33
- throwError(err) {
34
- throw this.errorFactory(err);
35
- }
36
- getUrl(path) {
37
- return (0, utils_js_1.removeTrailingSlash)((0, utils_js_1.join)(this.baseUrl, path));
38
- }
39
- get(path, params) {
40
- return this.request('GET', path, params);
41
- }
42
- del(path, params) {
43
- return this.request('DELETE', path, params);
44
- }
45
- delete(path, params) {
46
- return this.request('DELETE', path, params);
47
- }
48
- post(path, params) {
49
- return this.request('POST', path, params);
50
- }
51
- put(path, params) {
52
- return this.request('PUT', path, params);
53
- }
54
- /**
55
- * You can customize the json parser by overriding this method
56
- * @param text
57
- * @returns
58
- */
59
- jsonParse(text) {
60
- return JSON.parse(text);
61
- }
62
- /**
63
- * Can be overridden to create the request
64
- * @param fetch
65
- * @param url
66
- * @param init
67
- * @returns
68
- */
69
- createRequest(url, init) {
70
- return Promise.resolve(new Request(url, init));
71
- }
72
- createServerError(req, res, payload) {
73
- const status = res.status;
74
- let message = 'Server Error: ' + status;
75
- if (payload) {
76
- if (payload.message) {
77
- message = String(payload.message);
78
- }
79
- else if (payload.error) {
80
- if (typeof payload.error === 'string') {
81
- message = String(payload.error);
82
- }
83
- else if (typeof payload.error.message === 'string') {
84
- message = String(payload.error.message);
85
- }
86
- }
87
- }
88
- return new errors_js_1.ServerError(message, req, res.status, payload, this.verboseErrors);
89
- }
90
- async readJSONPayload(res) {
91
- return res.text().then(text => {
92
- if (!text) {
93
- return undefined;
94
- }
95
- else {
96
- try {
97
- return this.jsonParse(text);
98
- }
99
- catch (err) {
100
- return {
101
- status: res.status,
102
- error: "Not a valid JSON payload",
103
- message: err.message,
104
- text: text,
105
- };
106
- }
107
- }
108
- }).catch((err) => {
109
- return {
110
- status: res.status,
111
- error: "Unable to load response content",
112
- message: err.message,
113
- };
114
- });
115
- }
116
- /**
117
- * Subclasses You can override this to do something with the response
118
- * @param res
119
- */
120
- handleResponse(req, res, params) {
121
- res.url;
122
- if (params && params.reader) {
123
- if (params.reader === 'sse') {
124
- return (0, index_js_1.sse)(res);
125
- }
126
- else {
127
- return params.reader.call(this, res);
128
- }
129
- }
130
- else {
131
- return this.readJSONPayload(res).then((payload) => {
132
- if (res.ok) {
133
- return payload;
134
- }
135
- else {
136
- this.throwError(this.createServerError(req, res, payload));
137
- }
138
- });
139
- }
140
- }
141
- async request(method, path, params) {
142
- let url = this.getUrl(path);
143
- if (params?.query) {
144
- url += '?' + (0, utils_js_1.buildQueryString)(params.query);
145
- }
146
- const headers = this.headers ? Object.assign({}, this.headers) : {};
147
- const paramsHeaders = params?.headers;
148
- if (paramsHeaders) {
149
- for (const key in paramsHeaders) {
150
- headers[key.toLowerCase()] = paramsHeaders[key];
151
- }
152
- }
153
- let body;
154
- const payload = params?.payload;
155
- if (payload) {
156
- if (params && params.jsonPayload === false) {
157
- body = payload;
158
- }
159
- else {
160
- body = (typeof payload !== 'string') ? JSON.stringify(payload) : payload;
161
- if (!('content-type' in headers)) {
162
- headers['content-type'] = 'application/json';
163
- }
164
- }
165
- }
166
- const init = {
167
- method: method,
168
- headers: headers,
169
- body: body,
170
- };
171
- const req = await this.createRequest(url, init);
172
- return this._fetch.then(fetch => fetch(req).catch(err => {
173
- console.error(`Failed to connect to ${url}`, err);
174
- this.throwError(new errors_js_1.ConnectionError(req, err));
175
- }).then(res => {
176
- return this.handleResponse(req, res, params);
177
- }));
178
- }
179
- /**
180
- * Expose the fetch method
181
- * @param input
182
- * @param init
183
- * @returns
184
- */
185
- fetch(input, init) {
186
- return this._fetch.then(fetch => fetch(input, init));
187
- }
188
- }
189
- exports.ClientBase = ClientBase;
190
- //# sourceMappingURL=base.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/base.ts"],"names":[],"mappings":"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"}
package/lib/cjs/client.js DELETED
@@ -1,107 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ApiTopic = exports.FetchClient = exports.AbstractFetchClient = void 0;
4
- const base_js_1 = require("./base.js");
5
- function isAuthorizationHeaderSet(headers) {
6
- if (!headers)
7
- return false;
8
- return "authorization" in headers;
9
- }
10
- class AbstractFetchClient extends base_js_1.ClientBase {
11
- constructor(baseUrl, fetchImpl) {
12
- super(baseUrl, fetchImpl);
13
- this.baseUrl = baseUrl[baseUrl.length - 1] === '/' ? baseUrl.substring(0, baseUrl.length - 1) : baseUrl;
14
- this.headers = this.initialHeaders;
15
- }
16
- get initialHeaders() {
17
- return { accept: 'application/json' };
18
- }
19
- /**
20
- * Install an auth callback. If the callback is undefined or null then remove the auth callback.
21
- * @param authCb a function returning a promise that resolves to the value to use for the authorization header
22
- * @returns the client instance
23
- */
24
- withAuthCallback(authCb) {
25
- this._auth = authCb || undefined;
26
- return this;
27
- }
28
- withErrorFactory(factory) {
29
- this.errorFactory = factory;
30
- return this;
31
- }
32
- withLang(locale) {
33
- if (locale) {
34
- this.headers['accept-language'] = locale;
35
- }
36
- else {
37
- delete this.headers['accept-language'];
38
- }
39
- return this;
40
- }
41
- withHeaders(headers) {
42
- const thisHeaders = this.headers;
43
- for (const key in headers) {
44
- const value = headers[key];
45
- if (value != null) {
46
- thisHeaders[key.toLowerCase()] = value;
47
- }
48
- }
49
- return this;
50
- }
51
- setHeader(key, value) {
52
- if (!value) {
53
- delete this.headers[key.toLowerCase()];
54
- }
55
- else {
56
- this.headers[key.toLowerCase()] = value;
57
- }
58
- }
59
- async createRequest(url, init) {
60
- if (this._auth && !isAuthorizationHeaderSet(init.headers)) {
61
- const headers = (init.headers ? init.headers : {});
62
- init.headers = headers;
63
- const auth = await this._auth();
64
- if (auth) {
65
- init.headers["authorization"] = auth;
66
- }
67
- }
68
- this.response = undefined;
69
- const request = await super.createRequest(url, init);
70
- this.onRequest && this.onRequest(request);
71
- return request;
72
- }
73
- async handleResponse(req, res, params) {
74
- this.response = res; // store last response
75
- this.onResponse && this.onResponse(res, req);
76
- return super.handleResponse(req, res, params);
77
- }
78
- }
79
- exports.AbstractFetchClient = AbstractFetchClient;
80
- class FetchClient extends AbstractFetchClient {
81
- constructor(baseUrl, fetchImpl) {
82
- super(baseUrl, fetchImpl);
83
- }
84
- }
85
- exports.FetchClient = FetchClient;
86
- class ApiTopic extends base_js_1.ClientBase {
87
- constructor(client, basePath) {
88
- //TODO we should refactor the way ClientBase and ApiTopic is created
89
- // to avoid cloning all customizations
90
- super(client.getUrl(basePath), client._fetch);
91
- this.client = client;
92
- this.createServerError = client.createServerError;
93
- this.errorFactory = client.errorFactory;
94
- this.verboseErrors = client.verboseErrors;
95
- }
96
- createRequest(url, init) {
97
- return this.client.createRequest(url, init);
98
- }
99
- handleResponse(req, res, params) {
100
- return this.client.handleResponse(req, res, params);
101
- }
102
- get headers() {
103
- return this.client.headers;
104
- }
105
- }
106
- exports.ApiTopic = ApiTopic;
107
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
package/lib/cjs/errors.js DELETED
@@ -1,57 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ConnectionError = exports.ServerError = exports.RequestError = void 0;
4
- function createMessage(message, request, status, payload, displayDetails) {
5
- let msg = message;
6
- if (displayDetails) {
7
- msg += '\nRequest: ' + request.method + ' ' + request.url + ' => ' + status;
8
- const details = payload?.details || payload?.error?.details;
9
- if (details) {
10
- const detailsType = typeof details;
11
- if (detailsType === 'string') {
12
- msg += '\nDetails: ' + details;
13
- }
14
- else if (detailsType === "object") {
15
- msg += '\nDetails: ' + JSON.stringify(details, undefined, 2);
16
- }
17
- }
18
- msg += '\nStack Trace: ';
19
- }
20
- return msg;
21
- }
22
- class RequestError extends Error {
23
- constructor(message, request, status, payload, displayDetails = true) {
24
- super(createMessage(message, request, status, payload, displayDetails));
25
- this.original_message = message;
26
- this.request = request;
27
- this.status = status;
28
- this.payload = payload;
29
- this.request_info = request.method + ' ' + request.url + ' => ' + status;
30
- this.displayDetails = displayDetails;
31
- }
32
- get details() {
33
- return this.payload?.details || this.payload?.error?.details;
34
- }
35
- }
36
- exports.RequestError = RequestError;
37
- class ServerError extends RequestError {
38
- constructor(message, req, status, payload, displayDetails = true) {
39
- super(message, req, status, payload, displayDetails);
40
- }
41
- updateDetails(details) {
42
- if (details !== this.details) {
43
- return new ServerError(this.original_message, this.request, this.status, { ...this.payload, details }, this.displayDetails);
44
- }
45
- else {
46
- return this;
47
- }
48
- }
49
- }
50
- exports.ServerError = ServerError;
51
- class ConnectionError extends RequestError {
52
- constructor(req, err) {
53
- super("Failed to connect to server: " + err.message, req, 0, err);
54
- }
55
- }
56
- exports.ConnectionError = ConnectionError;
57
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":";;;AACA,SAAS,aAAa,CAAC,OAAe,EAAE,OAAgB,EAAE,MAAc,EAAE,OAAY,EAAE,cAAuB;IAC3G,IAAI,GAAG,GAAG,OAAO,CAAC;IAClB,IAAI,cAAc,EAAE,CAAC;QACjB,GAAG,IAAI,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,GAAG,GAAG,MAAM,GAAG,MAAM,CAAC;QAC5E,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC;QAC5D,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,WAAW,GAAG,OAAO,OAAO,CAAC;YACnC,IAAI,WAAW,KAAK,QAAQ,EAAE,CAAC;gBAC3B,GAAG,IAAI,aAAa,GAAG,OAAO,CAAC;YACnC,CAAC;iBAAM,IAAI,WAAW,KAAK,QAAQ,EAAE,CAAC;gBAClC,GAAG,IAAI,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACjE,CAAC;QACL,CAAC;QACD,GAAG,IAAI,iBAAiB,CAAC;IAC7B,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAED,MAAa,YAAa,SAAQ,KAAK;IAOnC,YAAY,OAAe,EAAE,OAAgB,EAAE,MAAc,EAAE,OAAY,EAAE,cAAc,GAAG,IAAI;QAC9F,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,GAAG,GAAG,MAAM,GAAG,MAAM,CAAC;QACzE,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACzC,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC;IACjE,CAAC;CAEJ;AArBD,oCAqBC;AAED,MAAa,WAAY,SAAQ,YAAY;IACzC,YAAY,OAAe,EAAE,GAAY,EAAE,MAAc,EAAE,OAAY,EAAE,cAAc,GAAG,IAAI;QAC1F,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IACzD,CAAC;IAED,aAAa,CAAC,OAAY;QACtB,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;YAC3B,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QAC/H,CAAC;aAAM,CAAC;YACJ,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;CACJ;AAZD,kCAYC;AAED,MAAa,eAAgB,SAAQ,YAAY;IAC7C,YAAY,GAAY,EAAE,GAAU;QAChC,KAAK,CAAC,+BAA+B,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IACtE,CAAC;CACJ;AAJD,0CAIC"}
package/lib/cjs/index.js DELETED
@@ -1,21 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./base.js"), exports);
18
- __exportStar(require("./client.js"), exports);
19
- __exportStar(require("./errors.js"), exports);
20
- __exportStar(require("./sse/index.js"), exports);
21
- //# sourceMappingURL=index.js.map