@manonero/chat-client-sdk 1.0.0-beta.3 → 1.0.0-beta.4
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 +196 -27
- package/dist/ChatClient.d.ts +67 -8
- package/dist/ChatClient.d.ts.map +1 -1
- package/dist/ChatClient.js +82 -9
- package/dist/ChatClient.js.map +1 -1
- package/dist/http/ConversationApi.d.ts +18 -1
- package/dist/http/ConversationApi.d.ts.map +1 -1
- package/dist/http/ConversationApi.js +23 -0
- package/dist/http/ConversationApi.js.map +1 -1
- package/dist/http/HttpClient.d.ts +18 -1
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +64 -13
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/MessageApi.d.ts.map +1 -1
- package/dist/http/MessageApi.js +13 -2
- package/dist/http/MessageApi.js.map +1 -1
- package/dist/http/ProxyApi.d.ts +6 -5
- package/dist/http/ProxyApi.d.ts.map +1 -1
- package/dist/http/ProxyApi.js +15 -11
- package/dist/http/ProxyApi.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/realtime/ChatHubClient.d.ts +58 -1
- package/dist/realtime/ChatHubClient.d.ts.map +1 -1
- package/dist/realtime/ChatHubClient.js +202 -15
- package/dist/realtime/ChatHubClient.js.map +1 -1
- package/dist/realtime/NotificationHubClient.d.ts +40 -0
- package/dist/realtime/NotificationHubClient.d.ts.map +1 -1
- package/dist/realtime/NotificationHubClient.js +131 -29
- package/dist/realtime/NotificationHubClient.js.map +1 -1
- package/dist/realtime/ReconnectionManager.d.ts +2 -1
- package/dist/realtime/ReconnectionManager.d.ts.map +1 -1
- package/dist/realtime/ReconnectionManager.js +13 -3
- package/dist/realtime/ReconnectionManager.js.map +1 -1
- package/dist/types/block.d.ts +17 -2
- package/dist/types/block.d.ts.map +1 -1
- package/dist/types/block.js +30 -0
- package/dist/types/block.js.map +1 -1
- package/dist/types/chat-events.d.ts +23 -3
- package/dist/types/chat-events.d.ts.map +1 -1
- package/dist/types/conversation.d.ts +52 -3
- package/dist/types/conversation.d.ts.map +1 -1
- package/dist/types/message.d.ts +5 -6
- package/dist/types/message.d.ts.map +1 -1
- package/dist/types/notification-events.d.ts +10 -7
- package/dist/types/notification-events.d.ts.map +1 -1
- package/dist/types/signalr.d.ts +2 -1
- package/dist/types/signalr.d.ts.map +1 -1
- package/package.json +4 -2
package/dist/ChatClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatClient.js","sourceRoot":"","sources":["../src/ChatClient.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatClient.js","sourceRoot":"","sources":["../src/ChatClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { HttpClient } from './HttpClient.js';
|
|
2
|
-
import type { ConversationDto, ConversationListItemDto, ConversationParticipantDto, CreateConversationRequest, UpdateConversationRequest, AddParticipantRequest } from '../types/conversation.js';
|
|
2
|
+
import type { ConversationDto, ConversationListItemDto, ConversationMediaItemDto, ConversationMediaKindFilter, ConversationParticipantDto, CreateConversationRequest, UpdateConversationRequest, AddParticipantRequest } from '../types/conversation.js';
|
|
3
3
|
import type { CursorPaginatedResult } from '../types/common.js';
|
|
4
4
|
/**
|
|
5
5
|
* Conversation API client.
|
|
@@ -90,5 +90,22 @@ export declare class ConversationApi {
|
|
|
90
90
|
* Mark the conversation as unread (user-initiated).
|
|
91
91
|
*/
|
|
92
92
|
markAsUnread(id: string): Promise<void>;
|
|
93
|
+
/**
|
|
94
|
+
* GET /api/conversations/{id}/media?kind={kind}&limit={limit}&cursor={cursor}
|
|
95
|
+
*
|
|
96
|
+
* List every media/link item that has appeared in the conversation, newest first.
|
|
97
|
+
*
|
|
98
|
+
* - `kind` — `all` (default), `attachment`, or `link` (case-insensitive on the wire).
|
|
99
|
+
* - `limit` — 1..100, default 50.
|
|
100
|
+
* - `cursor` — opaque `nextCursor` from a prior page.
|
|
101
|
+
*
|
|
102
|
+
* Participants only see items from messages created after they joined the
|
|
103
|
+
* conversation. Returns 403 if the caller is not a participant.
|
|
104
|
+
*/
|
|
105
|
+
getMedia(conversationId: string, params?: {
|
|
106
|
+
kind?: ConversationMediaKindFilter;
|
|
107
|
+
limit?: number;
|
|
108
|
+
cursor?: string;
|
|
109
|
+
}): Promise<CursorPaginatedResult<ConversationMediaItemDto>>;
|
|
93
110
|
}
|
|
94
111
|
//# sourceMappingURL=ConversationApi.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConversationApi.d.ts","sourceRoot":"","sources":["../../src/http/ConversationApi.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAEhE;;;GAGG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;gBAEtB,IAAI,EAAE,UAAU;IAI5B;;;;;;;;;;OAUG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE;QACZ,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,CAAC;IAU3D,8BAA8B;IAC9B,MAAM,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,eAAe,CAAC;IAIpE;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAMzE,kCAAkC;IAClC,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAI7C;;;OAGG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,eAAe,CAAC;IAIhF;;;;;OAKG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjC;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrC;;;;OAIG;IACH,YAAY,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAMzE;;;;OAIG;IACH,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOrF;;;OAGG;IACH,iBAAiB,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM/E;;;OAGG;IACH,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,EAAE,CAAC;IAM9E,uCAAuC;IACvC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9B,yCAAyC;IACzC,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhC;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD;;;OAGG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"ConversationApi.d.ts","sourceRoot":"","sources":["../../src/http/ConversationApi.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACxB,2BAA2B,EAC3B,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAEhE;;;GAGG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;gBAEtB,IAAI,EAAE,UAAU;IAI5B;;;;;;;;;;OAUG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE;QACZ,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,CAAC;IAU3D,8BAA8B;IAC9B,MAAM,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,eAAe,CAAC;IAIpE;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAMzE,kCAAkC;IAClC,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAI7C;;;OAGG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,eAAe,CAAC;IAIhF;;;;;OAKG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjC;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrC;;;;OAIG;IACH,YAAY,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAMzE;;;;OAIG;IACH,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOrF;;;OAGG;IACH,iBAAiB,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM/E;;;OAGG;IACH,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,EAAE,CAAC;IAM9E,uCAAuC;IACvC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9B,yCAAyC;IACzC,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhC;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD;;;OAGG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvC;;;;;;;;;;;OAWG;IACH,QAAQ,CACN,cAAc,EAAE,MAAM,EACtB,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,2BAA2B,CAAC;QACnC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GACA,OAAO,CAAC,qBAAqB,CAAC,wBAAwB,CAAC,CAAC;CAU5D"}
|
|
@@ -126,5 +126,28 @@ export class ConversationApi {
|
|
|
126
126
|
markAsUnread(id) {
|
|
127
127
|
return this.http.delete(`/api/conversations/${encodeURIComponent(id)}/read`);
|
|
128
128
|
}
|
|
129
|
+
/**
|
|
130
|
+
* GET /api/conversations/{id}/media?kind={kind}&limit={limit}&cursor={cursor}
|
|
131
|
+
*
|
|
132
|
+
* List every media/link item that has appeared in the conversation, newest first.
|
|
133
|
+
*
|
|
134
|
+
* - `kind` — `all` (default), `attachment`, or `link` (case-insensitive on the wire).
|
|
135
|
+
* - `limit` — 1..100, default 50.
|
|
136
|
+
* - `cursor` — opaque `nextCursor` from a prior page.
|
|
137
|
+
*
|
|
138
|
+
* Participants only see items from messages created after they joined the
|
|
139
|
+
* conversation. Returns 403 if the caller is not a participant.
|
|
140
|
+
*/
|
|
141
|
+
getMedia(conversationId, params) {
|
|
142
|
+
const qs = new URLSearchParams();
|
|
143
|
+
if (params?.kind !== undefined)
|
|
144
|
+
qs.set('kind', params.kind);
|
|
145
|
+
if (params?.limit !== undefined)
|
|
146
|
+
qs.set('limit', String(params.limit));
|
|
147
|
+
if (params?.cursor !== undefined)
|
|
148
|
+
qs.set('cursor', params.cursor);
|
|
149
|
+
const q = qs.toString();
|
|
150
|
+
return this.http.get(`/api/conversations/${encodeURIComponent(conversationId)}/media${q ? `?${q}` : ''}`);
|
|
151
|
+
}
|
|
129
152
|
}
|
|
130
153
|
//# sourceMappingURL=ConversationApi.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConversationApi.js","sourceRoot":"","sources":["../../src/http/ConversationApi.ts"],"names":[],"mappings":"AAAA,yDAAyD;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"ConversationApi.js","sourceRoot":"","sources":["../../src/http/ConversationApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
import type { UploadProgressCallback } from '../types/common.js';
|
|
2
|
+
/** Default per-request timeout (ms) when none is supplied. */
|
|
3
|
+
export declare const DEFAULT_REQUEST_TIMEOUT_MS = 30000;
|
|
2
4
|
export interface HttpClientOptions {
|
|
3
5
|
baseUrl: string;
|
|
4
6
|
/** Returns the current JWT token, or null if not authenticated */
|
|
5
7
|
tokenProvider?: () => string | null;
|
|
8
|
+
/**
|
|
9
|
+
* Per-request timeout in milliseconds. Default 30000.
|
|
10
|
+
* Pass `null` to disable the timeout (uploads of large files may need this).
|
|
11
|
+
*/
|
|
12
|
+
requestTimeoutMs?: number | null;
|
|
6
13
|
}
|
|
7
14
|
/**
|
|
8
15
|
* Base HTTP client wrapping the Fetch API.
|
|
@@ -11,12 +18,15 @@ export interface HttpClientOptions {
|
|
|
11
18
|
* - Automatic Authorization: Bearer token injection via tokenProvider
|
|
12
19
|
* - JSON request/response serialization
|
|
13
20
|
* - Throws ChatApiError on non-OK responses
|
|
14
|
-
* - Handles empty responses (204 No Content, 200 with no body)
|
|
21
|
+
* - Handles empty responses (204 No Content, 200 with no body) — the SDK
|
|
22
|
+
* convention is to type T as `null` or `void` for empty-body endpoints
|
|
15
23
|
* - Multipart file upload with optional XHR-based upload progress
|
|
24
|
+
* - Per-request timeout via AbortController (configurable, default 30s)
|
|
16
25
|
*/
|
|
17
26
|
export declare class HttpClient {
|
|
18
27
|
readonly baseUrl: string;
|
|
19
28
|
private readonly tokenProvider;
|
|
29
|
+
private readonly requestTimeoutMs;
|
|
20
30
|
constructor(options: HttpClientOptions);
|
|
21
31
|
private buildUrl;
|
|
22
32
|
private buildHeaders;
|
|
@@ -24,9 +34,16 @@ export declare class HttpClient {
|
|
|
24
34
|
/**
|
|
25
35
|
* Parse response body safely.
|
|
26
36
|
* Returns null for 204 No Content or empty bodies.
|
|
37
|
+
* Wraps JSON parse failures in ChatApiError for consistency with the XHR path.
|
|
27
38
|
*/
|
|
28
39
|
private parseBody;
|
|
29
40
|
private handleResponse;
|
|
41
|
+
/**
|
|
42
|
+
* Run a fetch with an AbortController-based timeout.
|
|
43
|
+
* Throws ChatApiError(0, 'Timeout', ...) when the timeout fires before the
|
|
44
|
+
* response arrives. If `requestTimeoutMs` is null, fetch is used directly.
|
|
45
|
+
*/
|
|
46
|
+
private fetchWithTimeout;
|
|
30
47
|
get<T>(path: string, headers?: Record<string, string>): Promise<T>;
|
|
31
48
|
/**
|
|
32
49
|
* GET a plain-text response (e.g. /health/live which returns "Healthy").
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpClient.d.ts","sourceRoot":"","sources":["../../src/http/HttpClient.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"HttpClient.d.ts","sourceRoot":"","sources":["../../src/http/HttpClient.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,8DAA8D;AAC9D,eAAO,MAAM,0BAA0B,QAAS,CAAC;AAEjD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACpC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,UAAU;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgB;gBAErC,OAAO,EAAE,iBAAiB;IAYtC,OAAO,CAAC,QAAQ;IAUhB,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,eAAe;IAQvB;;;;OAIG;YACW,SAAS;YAaT,cAAc;IAW5B;;;;OAIG;YACW,gBAAgB;IA6BxB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAQxE;;;OAGG;IACG,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAWtC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IASnF,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IASpF,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IASlF,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAQ3E;;;OAGG;IACG,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC;IASnE;;;;OAIG;IACH,wBAAwB,CAAC,CAAC,EACxB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,QAAQ,EAClB,UAAU,CAAC,EAAE,sBAAsB,GAClC,OAAO,CAAC,CAAC,CAAC;CA2Dd"}
|
package/dist/http/HttpClient.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
// HttpClient.ts — Base HTTP client (fetch wrapper)
|
|
2
2
|
import { ChatApiError } from '../errors/ChatApiError.js';
|
|
3
|
+
/** Default per-request timeout (ms) when none is supplied. */
|
|
4
|
+
export const DEFAULT_REQUEST_TIMEOUT_MS = 30000;
|
|
3
5
|
/**
|
|
4
6
|
* Base HTTP client wrapping the Fetch API.
|
|
5
7
|
*
|
|
@@ -7,14 +9,18 @@ import { ChatApiError } from '../errors/ChatApiError.js';
|
|
|
7
9
|
* - Automatic Authorization: Bearer token injection via tokenProvider
|
|
8
10
|
* - JSON request/response serialization
|
|
9
11
|
* - Throws ChatApiError on non-OK responses
|
|
10
|
-
* - Handles empty responses (204 No Content, 200 with no body)
|
|
12
|
+
* - Handles empty responses (204 No Content, 200 with no body) — the SDK
|
|
13
|
+
* convention is to type T as `null` or `void` for empty-body endpoints
|
|
11
14
|
* - Multipart file upload with optional XHR-based upload progress
|
|
15
|
+
* - Per-request timeout via AbortController (configurable, default 30s)
|
|
12
16
|
*/
|
|
13
17
|
export class HttpClient {
|
|
14
18
|
constructor(options) {
|
|
15
19
|
// Strip trailing slash for consistent URL joining
|
|
16
20
|
this.baseUrl = options.baseUrl.replace(/\/$/, '');
|
|
17
21
|
this.tokenProvider = options.tokenProvider ?? (() => null);
|
|
22
|
+
this.requestTimeoutMs =
|
|
23
|
+
options.requestTimeoutMs === undefined ? DEFAULT_REQUEST_TIMEOUT_MS : options.requestTimeoutMs;
|
|
18
24
|
}
|
|
19
25
|
// ---------------------------------------------------------------------------
|
|
20
26
|
// Private helpers
|
|
@@ -49,6 +55,7 @@ export class HttpClient {
|
|
|
49
55
|
/**
|
|
50
56
|
* Parse response body safely.
|
|
51
57
|
* Returns null for 204 No Content or empty bodies.
|
|
58
|
+
* Wraps JSON parse failures in ChatApiError for consistency with the XHR path.
|
|
52
59
|
*/
|
|
53
60
|
async parseBody(response) {
|
|
54
61
|
if (response.status === 204)
|
|
@@ -56,21 +63,59 @@ export class HttpClient {
|
|
|
56
63
|
const text = await response.text();
|
|
57
64
|
if (!text || text.trim() === '')
|
|
58
65
|
return null;
|
|
59
|
-
|
|
66
|
+
try {
|
|
67
|
+
return JSON.parse(text);
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
throw new ChatApiError(response.status, 'Parse Error', 'Failed to parse response JSON');
|
|
71
|
+
}
|
|
60
72
|
}
|
|
61
73
|
async handleResponse(response) {
|
|
62
74
|
if (!response.ok) {
|
|
63
75
|
throw await ChatApiError.fromResponse(response);
|
|
64
76
|
}
|
|
65
|
-
//
|
|
77
|
+
// Empty bodies (204 / empty 200) resolve as `null` cast to T. Public methods
|
|
78
|
+
// keep the `Promise<T>` signature; callers expecting an empty body should
|
|
79
|
+
// type T as `null` or `void` (see HttpClient.test.ts for the convention).
|
|
66
80
|
const result = await this.parseBody(response);
|
|
67
81
|
return result;
|
|
68
82
|
}
|
|
83
|
+
/**
|
|
84
|
+
* Run a fetch with an AbortController-based timeout.
|
|
85
|
+
* Throws ChatApiError(0, 'Timeout', ...) when the timeout fires before the
|
|
86
|
+
* response arrives. If `requestTimeoutMs` is null, fetch is used directly.
|
|
87
|
+
*/
|
|
88
|
+
async fetchWithTimeout(input, init) {
|
|
89
|
+
const timeoutMs = this.requestTimeoutMs;
|
|
90
|
+
if (timeoutMs === null) {
|
|
91
|
+
return fetch(input, init);
|
|
92
|
+
}
|
|
93
|
+
const controller = new AbortController();
|
|
94
|
+
// Use an explicit flag instead of `controller.signal.aborted` so a network
|
|
95
|
+
// error that races with the timer firing is not misclassified as a timeout.
|
|
96
|
+
let timedOut = false;
|
|
97
|
+
const timer = setTimeout(() => {
|
|
98
|
+
timedOut = true;
|
|
99
|
+
controller.abort();
|
|
100
|
+
}, timeoutMs);
|
|
101
|
+
try {
|
|
102
|
+
return await fetch(input, { ...init, signal: controller.signal });
|
|
103
|
+
}
|
|
104
|
+
catch (err) {
|
|
105
|
+
if (timedOut) {
|
|
106
|
+
throw new ChatApiError(0, 'Timeout', `Request timed out after ${timeoutMs}ms`);
|
|
107
|
+
}
|
|
108
|
+
throw err;
|
|
109
|
+
}
|
|
110
|
+
finally {
|
|
111
|
+
clearTimeout(timer);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
69
114
|
// ---------------------------------------------------------------------------
|
|
70
115
|
// Public methods
|
|
71
116
|
// ---------------------------------------------------------------------------
|
|
72
117
|
async get(path, headers) {
|
|
73
|
-
const response = await
|
|
118
|
+
const response = await this.fetchWithTimeout(this.buildUrl(path), {
|
|
74
119
|
method: 'GET',
|
|
75
120
|
headers: { ...this.buildAuthHeader(), ...headers },
|
|
76
121
|
});
|
|
@@ -81,7 +126,7 @@ export class HttpClient {
|
|
|
81
126
|
* Unlike get<T>(), this does not attempt JSON parsing.
|
|
82
127
|
*/
|
|
83
128
|
async getText(path) {
|
|
84
|
-
const response = await
|
|
129
|
+
const response = await this.fetchWithTimeout(this.buildUrl(path), {
|
|
85
130
|
method: 'GET',
|
|
86
131
|
headers: { ...this.buildAuthHeader() },
|
|
87
132
|
});
|
|
@@ -91,7 +136,7 @@ export class HttpClient {
|
|
|
91
136
|
return response.text();
|
|
92
137
|
}
|
|
93
138
|
async post(path, body, headers) {
|
|
94
|
-
const response = await
|
|
139
|
+
const response = await this.fetchWithTimeout(this.buildUrl(path), {
|
|
95
140
|
method: 'POST',
|
|
96
141
|
headers: { ...this.buildHeaders(headers) },
|
|
97
142
|
body: body !== undefined ? JSON.stringify(body) : undefined,
|
|
@@ -99,7 +144,7 @@ export class HttpClient {
|
|
|
99
144
|
return this.handleResponse(response);
|
|
100
145
|
}
|
|
101
146
|
async patch(path, body, headers) {
|
|
102
|
-
const response = await
|
|
147
|
+
const response = await this.fetchWithTimeout(this.buildUrl(path), {
|
|
103
148
|
method: 'PATCH',
|
|
104
149
|
headers: { ...this.buildHeaders(headers) },
|
|
105
150
|
body: body !== undefined ? JSON.stringify(body) : undefined,
|
|
@@ -107,7 +152,7 @@ export class HttpClient {
|
|
|
107
152
|
return this.handleResponse(response);
|
|
108
153
|
}
|
|
109
154
|
async put(path, body, headers) {
|
|
110
|
-
const response = await
|
|
155
|
+
const response = await this.fetchWithTimeout(this.buildUrl(path), {
|
|
111
156
|
method: 'PUT',
|
|
112
157
|
headers: { ...this.buildHeaders(headers) },
|
|
113
158
|
body: body !== undefined ? JSON.stringify(body) : undefined,
|
|
@@ -115,7 +160,7 @@ export class HttpClient {
|
|
|
115
160
|
return this.handleResponse(response);
|
|
116
161
|
}
|
|
117
162
|
async delete(path, headers) {
|
|
118
|
-
const response = await
|
|
163
|
+
const response = await this.fetchWithTimeout(this.buildUrl(path), {
|
|
119
164
|
method: 'DELETE',
|
|
120
165
|
headers: { ...this.buildAuthHeader(), ...headers },
|
|
121
166
|
});
|
|
@@ -126,7 +171,7 @@ export class HttpClient {
|
|
|
126
171
|
* (browser sets it with the boundary automatically).
|
|
127
172
|
*/
|
|
128
173
|
async postFormData(path, formData) {
|
|
129
|
-
const response = await
|
|
174
|
+
const response = await this.fetchWithTimeout(this.buildUrl(path), {
|
|
130
175
|
method: 'POST',
|
|
131
176
|
headers: { ...this.buildAuthHeader() },
|
|
132
177
|
body: formData,
|
|
@@ -142,6 +187,10 @@ export class HttpClient {
|
|
|
142
187
|
return new Promise((resolve, reject) => {
|
|
143
188
|
const xhr = new XMLHttpRequest();
|
|
144
189
|
xhr.open('POST', this.buildUrl(path));
|
|
190
|
+
// Apply per-request timeout (null disables it)
|
|
191
|
+
if (this.requestTimeoutMs !== null) {
|
|
192
|
+
xhr.timeout = this.requestTimeoutMs;
|
|
193
|
+
}
|
|
145
194
|
const token = this.tokenProvider();
|
|
146
195
|
if (token) {
|
|
147
196
|
xhr.setRequestHeader('Authorization', `Bearer ${token}`);
|
|
@@ -156,6 +205,7 @@ export class HttpClient {
|
|
|
156
205
|
xhr.onload = () => {
|
|
157
206
|
if (xhr.status >= 200 && xhr.status < 300) {
|
|
158
207
|
if (xhr.status === 204 || !xhr.responseText || xhr.responseText.trim() === '') {
|
|
208
|
+
// Empty body — same convention as fetch path: cast null to T.
|
|
159
209
|
resolve(null);
|
|
160
210
|
}
|
|
161
211
|
else {
|
|
@@ -168,20 +218,21 @@ export class HttpClient {
|
|
|
168
218
|
}
|
|
169
219
|
}
|
|
170
220
|
else {
|
|
171
|
-
// Build a minimal Response-like object to reuse ChatApiError.fromResponse
|
|
221
|
+
// Build a minimal Response-like object to reuse ChatApiError.fromResponse.
|
|
222
|
+
// Use `.then(reject, reject)` so a thrown error from the parser is also surfaced.
|
|
172
223
|
const syntheticResponse = new Response(xhr.responseText, {
|
|
173
224
|
status: xhr.status,
|
|
174
225
|
statusText: xhr.statusText,
|
|
175
226
|
headers: { 'Content-Type': 'application/json' },
|
|
176
227
|
});
|
|
177
|
-
ChatApiError.fromResponse(syntheticResponse).then(reject
|
|
228
|
+
ChatApiError.fromResponse(syntheticResponse).then(reject, reject);
|
|
178
229
|
}
|
|
179
230
|
};
|
|
180
231
|
xhr.onerror = () => {
|
|
181
232
|
reject(new ChatApiError(0, 'Network Error', 'Request failed due to a network error'));
|
|
182
233
|
};
|
|
183
234
|
xhr.ontimeout = () => {
|
|
184
|
-
reject(new ChatApiError(0, 'Timeout',
|
|
235
|
+
reject(new ChatApiError(0, 'Timeout', `Request timed out after ${xhr.timeout}ms`));
|
|
185
236
|
};
|
|
186
237
|
xhr.send(formData);
|
|
187
238
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpClient.js","sourceRoot":"","sources":["../../src/http/HttpClient.ts"],"names":[],"mappings":"AAAA,mDAAmD;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"HttpClient.js","sourceRoot":"","sources":["../../src/http/HttpClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageApi.d.ts","sourceRoot":"","sources":["../../src/http/MessageApi.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"MessageApi.d.ts","sourceRoot":"","sources":["../../src/http/MessageApi.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAGhE;;;GAGG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;gBAEtB,IAAI,EAAE,UAAU;IAI5B;;;OAGG;IACH,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC;IAa9E;;;;;;;OAOG;IACH,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;KAAE,GAC1E,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAW7C;;;OAGG;IACH,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAQpF,oCAAoC;IACpC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI/C;;;;OAIG;IACH,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC;IAWzE;;;OAGG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAM5E;;;;OAIG;IACH,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC;;;OAGG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5D;;;;OAIG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAKhE"}
|
package/dist/http/MessageApi.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// MessageApi.ts — Message operation endpoints
|
|
2
2
|
import { HttpClient } from './HttpClient.js';
|
|
3
|
+
import { normalizeBlocksForSend } from '../types/block.js';
|
|
3
4
|
/**
|
|
4
5
|
* Message API client.
|
|
5
6
|
* All endpoints require JWT Bearer token.
|
|
@@ -13,7 +14,13 @@ export class MessageApi {
|
|
|
13
14
|
* Send a new message. Returns 201 Created with the full MessageDto.
|
|
14
15
|
*/
|
|
15
16
|
send(conversationId, request) {
|
|
16
|
-
|
|
17
|
+
// Spec §6: `$type` must be the first property in each block when sent to
|
|
18
|
+
// the server, otherwise the polymorphic deserializer rejects the payload.
|
|
19
|
+
const normalized = {
|
|
20
|
+
...request,
|
|
21
|
+
blocks: normalizeBlocksForSend(request.blocks),
|
|
22
|
+
};
|
|
23
|
+
return this.http.post(`/api/conversations/${encodeURIComponent(conversationId)}/messages`, normalized);
|
|
17
24
|
}
|
|
18
25
|
/**
|
|
19
26
|
* GET /api/conversations/{conversationId}/messages?limit={limit}&cursor={cursor}&direction={direction}
|
|
@@ -54,7 +61,11 @@ export class MessageApi {
|
|
|
54
61
|
* NOTE: REST uses { blocks, mentions } — different from SignalR ChatEditMessageRequest.
|
|
55
62
|
*/
|
|
56
63
|
edit(messageId, request) {
|
|
57
|
-
|
|
64
|
+
const normalized = {
|
|
65
|
+
...request,
|
|
66
|
+
blocks: normalizeBlocksForSend(request.blocks),
|
|
67
|
+
};
|
|
68
|
+
return this.http.patch(`/api/messages/${encodeURIComponent(messageId)}`, normalized);
|
|
58
69
|
}
|
|
59
70
|
/**
|
|
60
71
|
* DELETE /api/messages/{messageId}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageApi.js","sourceRoot":"","sources":["../../src/http/MessageApi.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAE9C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"MessageApi.js","sourceRoot":"","sources":["../../src/http/MessageApi.ts"],"names":[],"mappings":"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"}
|
package/dist/http/ProxyApi.d.ts
CHANGED
|
@@ -31,26 +31,27 @@ export declare class ProxyApi {
|
|
|
31
31
|
* GET /api/proxy/{target}/{url}
|
|
32
32
|
* Forward a GET request to the target service.
|
|
33
33
|
*/
|
|
34
|
-
get<T>(target: string, url: string): Promise<T>;
|
|
34
|
+
get<T>(target: string, url: string, headers?: Record<string, string>): Promise<T>;
|
|
35
35
|
/**
|
|
36
36
|
* POST /api/proxy/{target}/{url}
|
|
37
37
|
* Forward a POST request with an optional JSON body to the target service.
|
|
38
38
|
*/
|
|
39
|
-
post<T>(target: string, url: string, body?: unknown): Promise<T>;
|
|
39
|
+
post<T>(target: string, url: string, body?: unknown, headers?: Record<string, string>): Promise<T>;
|
|
40
40
|
/**
|
|
41
41
|
* PUT /api/proxy/{target}/{url}
|
|
42
42
|
* Forward a PUT request with an optional JSON body to the target service.
|
|
43
43
|
*/
|
|
44
|
-
put<T>(target: string, url: string, body?: unknown): Promise<T>;
|
|
44
|
+
put<T>(target: string, url: string, body?: unknown, headers?: Record<string, string>): Promise<T>;
|
|
45
45
|
/**
|
|
46
46
|
* PATCH /api/proxy/{target}/{url}
|
|
47
47
|
* Forward a PATCH request with an optional JSON body to the target service.
|
|
48
48
|
*/
|
|
49
|
-
patch<T>(target: string, url: string, body?: unknown): Promise<T>;
|
|
49
|
+
patch<T>(target: string, url: string, body?: unknown, headers?: Record<string, string>): Promise<T>;
|
|
50
50
|
/**
|
|
51
51
|
* DELETE /api/proxy/{target}/{url}
|
|
52
52
|
* Forward a DELETE request to the target service.
|
|
53
53
|
*/
|
|
54
|
-
delete<T>(target: string, url: string): Promise<T>;
|
|
54
|
+
delete<T>(target: string, url: string, headers?: Record<string, string>): Promise<T>;
|
|
55
|
+
private buildPath;
|
|
55
56
|
}
|
|
56
57
|
//# sourceMappingURL=ProxyApi.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProxyApi.d.ts","sourceRoot":"","sources":["../../src/http/ProxyApi.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;;;;;;;;;GAUG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;gBAEtB,IAAI,EAAE,UAAU;IAI5B;;;;;;;;OAQG;IACH,OAAO,CAAC,CAAC,EACP,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAClC,GACA,OAAO,CAAC,CAAC,CAAC;IAkBb;;;OAGG;IACH,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ProxyApi.d.ts","sourceRoot":"","sources":["../../src/http/ProxyApi.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;;;;;;;;;GAUG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;gBAEtB,IAAI,EAAE,UAAU;IAI5B;;;;;;;;OAQG;IACH,OAAO,CAAC,CAAC,EACP,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAClC,GACA,OAAO,CAAC,CAAC,CAAC;IAkBb;;;OAGG;IACH,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAIjF;;;OAGG;IACH,IAAI,CAAC,CAAC,EACJ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IAIb;;;OAGG;IACH,GAAG,CAAC,CAAC,EACH,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IAIb;;;OAGG;IACH,KAAK,CAAC,CAAC,EACL,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IAIb;;;OAGG;IACH,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAIpF,OAAO,CAAC,SAAS;CAIlB"}
|
package/dist/http/ProxyApi.js
CHANGED
|
@@ -26,7 +26,7 @@ export class ProxyApi {
|
|
|
26
26
|
*/
|
|
27
27
|
request(target, url, options) {
|
|
28
28
|
const method = (options?.method ?? 'GET').toUpperCase();
|
|
29
|
-
const path =
|
|
29
|
+
const path = this.buildPath(target, url);
|
|
30
30
|
switch (method) {
|
|
31
31
|
case 'POST':
|
|
32
32
|
return this.http.post(path, options?.body, options?.headers);
|
|
@@ -45,36 +45,40 @@ export class ProxyApi {
|
|
|
45
45
|
* GET /api/proxy/{target}/{url}
|
|
46
46
|
* Forward a GET request to the target service.
|
|
47
47
|
*/
|
|
48
|
-
get(target, url) {
|
|
49
|
-
return this.http.get(
|
|
48
|
+
get(target, url, headers) {
|
|
49
|
+
return this.http.get(this.buildPath(target, url), headers);
|
|
50
50
|
}
|
|
51
51
|
/**
|
|
52
52
|
* POST /api/proxy/{target}/{url}
|
|
53
53
|
* Forward a POST request with an optional JSON body to the target service.
|
|
54
54
|
*/
|
|
55
|
-
post(target, url, body) {
|
|
56
|
-
return this.http.post(
|
|
55
|
+
post(target, url, body, headers) {
|
|
56
|
+
return this.http.post(this.buildPath(target, url), body, headers);
|
|
57
57
|
}
|
|
58
58
|
/**
|
|
59
59
|
* PUT /api/proxy/{target}/{url}
|
|
60
60
|
* Forward a PUT request with an optional JSON body to the target service.
|
|
61
61
|
*/
|
|
62
|
-
put(target, url, body) {
|
|
63
|
-
return this.http.put(
|
|
62
|
+
put(target, url, body, headers) {
|
|
63
|
+
return this.http.put(this.buildPath(target, url), body, headers);
|
|
64
64
|
}
|
|
65
65
|
/**
|
|
66
66
|
* PATCH /api/proxy/{target}/{url}
|
|
67
67
|
* Forward a PATCH request with an optional JSON body to the target service.
|
|
68
68
|
*/
|
|
69
|
-
patch(target, url, body) {
|
|
70
|
-
return this.http.patch(
|
|
69
|
+
patch(target, url, body, headers) {
|
|
70
|
+
return this.http.patch(this.buildPath(target, url), body, headers);
|
|
71
71
|
}
|
|
72
72
|
/**
|
|
73
73
|
* DELETE /api/proxy/{target}/{url}
|
|
74
74
|
* Forward a DELETE request to the target service.
|
|
75
75
|
*/
|
|
76
|
-
delete(target, url) {
|
|
77
|
-
return this.http.delete(
|
|
76
|
+
delete(target, url, headers) {
|
|
77
|
+
return this.http.delete(this.buildPath(target, url), headers);
|
|
78
|
+
}
|
|
79
|
+
buildPath(target, url) {
|
|
80
|
+
const trimmed = url.replace(/^\/+/, '');
|
|
81
|
+
return `/api/proxy/${encodeURIComponent(target)}/${trimmed}`;
|
|
78
82
|
}
|
|
79
83
|
}
|
|
80
84
|
//# sourceMappingURL=ProxyApi.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProxyApi.js","sourceRoot":"","sources":["../../src/http/ProxyApi.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;;;;;;;;;GAUG;AACH,MAAM,OAAO,QAAQ;IAGnB,YAAY,IAAgB;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED;;;;;;;;OAQG;IACH,OAAO,CACL,MAAc,EACd,GAAW,EACX,OAIC;QAED,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,
|
|
1
|
+
{"version":3,"file":"ProxyApi.js","sourceRoot":"","sources":["../../src/http/ProxyApi.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;;;;;;;;;GAUG;AACH,MAAM,OAAO,QAAQ;IAGnB,YAAY,IAAgB;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED;;;;;;;;OAQG;IACH,OAAO,CACL,MAAc,EACd,GAAW,EACX,OAIC;QAED,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACzC,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAI,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAClE,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAI,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACjE,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAI,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACnE,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAI,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACrD;gBACE,+CAA+C;gBAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAI,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,GAAG,CAAI,MAAc,EAAE,GAAW,EAAE,OAAgC;QAClE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;;OAGG;IACH,IAAI,CACF,MAAc,EACd,GAAW,EACX,IAAc,EACd,OAAgC;QAEhC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IAED;;;OAGG;IACH,GAAG,CACD,MAAc,EACd,GAAW,EACX,IAAc,EACd,OAAgC;QAEhC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IAED;;;OAGG;IACH,KAAK,CACH,MAAc,EACd,GAAW,EACX,IAAc,EACd,OAAgC;QAEhC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACxE,CAAC;IAED;;;OAGG;IACH,MAAM,CAAI,MAAc,EAAE,GAAW,EAAE,OAAgC;QACrE,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAEO,SAAS,CAAC,MAAc,EAAE,GAAW;QAC3C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACxC,OAAO,cAAc,kBAAkB,CAAC,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;IAC/D,CAAC;CACF"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
export type { CursorPaginatedResult, PagedResult, MediaReference, ProblemDetails, UploadProgressCallback, HealthStatus, HealthCheckResult, } from './types/common.js';
|
|
2
2
|
export type { GoogleLoginRequest, DsAccountLoginRequest, DevLoginRequest, LoginRequest, AuthResponse, AuthUserInfo } from './types/auth.js';
|
|
3
3
|
export type { ParticipantDto, CreateOrUpdateParticipantRequest } from './types/participant.js';
|
|
4
|
-
export type { ConversationType, ConversationParticipantDto, ConversationDto, ConversationListItemDto, CreateConversationRequest, UpdateConversationRequest, AddParticipantRequest, } from './types/conversation.js';
|
|
4
|
+
export type { ConversationType, ConversationParticipantDto, ConversationDto, ConversationListItemDto, ConversationMediaKindFilter, ConversationMediaKind, ConversationMediaBlockType, ConversationMediaItemDto, CreateConversationRequest, UpdateConversationRequest, AddParticipantRequest, } from './types/conversation.js';
|
|
5
5
|
export type { SenderType, SystemEventType, SystemEventInfo, ReactionGroup, ReactionSummary, MessageDto, SendMessageRequest, EditMessageRequest, MarkAsReadRequest, } from './types/message.js';
|
|
6
6
|
export type { TextFormat, ButtonAction, ButtonStyle, ChoiceMode, QuickReplyAction, MentionType, TextBlock, ImageBlock, VideoBlock, AudioBlock, FileBlock, LinkPreviewBlock, EmbedBlock, LocationBlock, ContactBlock, ChoiceOption, ChoiceBlock, CardField, ActionButton, CardBlock, CarouselBlock, DividerBlock, CustomBlock, Block, QuickReply, Mention, } from './types/block.js';
|
|
7
|
-
export { isTextBlock, isImageBlock, isVideoBlock, isAudioBlock, isFileBlock, isLinkPreviewBlock, isEmbedBlock, isLocationBlock, isContactBlock, isChoiceBlock, isCardBlock, isCarouselBlock, isDividerBlock, isCustomBlock, } from './types/block.js';
|
|
7
|
+
export { isTextBlock, isImageBlock, isVideoBlock, isAudioBlock, isFileBlock, isLinkPreviewBlock, isEmbedBlock, isLocationBlock, isContactBlock, isChoiceBlock, isCardBlock, isCarouselBlock, isDividerBlock, isCustomBlock, withTypeFirst, normalizeBlocksForSend, } from './types/block.js';
|
|
8
8
|
export type { CreateUploadUrlRequest, CreateUploadUrlResponse, UploadResponse } from './types/file.js';
|
|
9
9
|
export type { BotDto, CreateBotRequest, UpdateBotRequest, RegenerateKeyResponse } from './types/bot.js';
|
|
10
|
-
export type { SystemEventDto, ReactionGroupDto, ChatMessageDto, MessageUpdatedDto, DeleteType, MessageDeletedDto, ReactionAddedDto, ReactionRemovedDto, TypingDto, ReadReceiptUpdatedDto, StreamStartedDto, StreamStatusUpdatedDto, StreamChunkReceivedDto, StreamCompletedDto, StreamAbortedDto, } from './types/chat-events.js';
|
|
10
|
+
export type { SystemEventDto, ReactionGroupDto, ChatMessageDto, MessageUpdatedDto, DeleteType, MessageDeletedDto, ReactionAddedDto, ReactionRemovedDto, TypingDto, ReadReceiptUpdatedDto, MessageThumbnailDto, MessageThumbnailsReadyDto, StreamStartedDto, StreamStatusUpdatedDto, StreamChunkReceivedDto, StreamCompletedDto, StreamAbortedDto, } from './types/chat-events.js';
|
|
11
11
|
export type { PresenceStateItem, PresenceChangedDto, NewMessageNotificationDto, MentionedNotificationDto, UnreadCountChangedDto, ConversationCreatedDto, ConversationUpdatedDto, ParticipantJoinedDto, ParticipantLeftDto, ConversationPinnedDto, ConversationUnpinnedDto, ReadStatusChangedDto, ConversationDeletedDto, ConversationRestoredDto, } from './types/notification-events.js';
|
|
12
12
|
export type { ChatSendMessageRequest, ChatEditMessageRequest, ChatDeleteMessageRequest, ChatRecoverMessageRequest, ChatAddReactionRequest, ChatRemoveReactionRequest, SendMessageAck, EditMessageAck, DeleteMessageAck, RecoverMessageAck, ReactionAck, MarkAsReadAck, HubErrorDto, } from './types/signalr.js';
|
|
13
13
|
export { ChatApiError } from './errors/ChatApiError.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,YAAY,EACV,qBAAqB,EACrB,WAAW,EACX,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,YAAY,EACZ,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG5I,YAAY,EAAE,cAAc,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAG/F,YAAY,EACV,gBAAgB,EAChB,0BAA0B,EAC1B,eAAe,EACf,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AAGjC,YAAY,EACV,UAAU,EACV,eAAe,EACf,eAAe,EACf,aAAa,EACb,eAAe,EACf,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EACV,UAAU,EACV,YAAY,EACZ,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,SAAS,EACT,UAAU,EACV,UAAU,EACV,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,SAAS,EACT,YAAY,EACZ,SAAS,EACT,aAAa,EACb,YAAY,EACZ,WAAW,EACX,KAAK,EACL,UAAU,EACV,OAAO,GACR,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,cAAc,EACd,aAAa,EACb,WAAW,EACX,eAAe,EACf,cAAc,EACd,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|