@stream-io/node-sdk 0.4.18 → 0.4.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +118 -97
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.mjs +118 -97
- package/dist/index.es.mjs.map +1 -1
- package/dist/src/BaseApi.d.ts +1 -0
- package/dist/src/StreamClient.d.ts +7 -0
- package/dist/src/gen/chat/ChannelApi.d.ts +9 -1
- package/dist/src/gen/chat/ChatApi.d.ts +17 -1
- package/dist/src/gen/models/index.d.ts +128 -117
- package/dist/src/gen/moderation/ModerationApi.d.ts +1 -11
- package/dist/src/types.d.ts +3 -0
- package/package.json +2 -1
- package/src/BaseApi.ts +9 -1
- package/src/StreamClient.ts +18 -1
- package/src/gen/chat/ChannelApi.ts +29 -0
- package/src/gen/chat/ChatApi.ts +89 -1
- package/src/gen/model-decoders/index.ts +56 -63
- package/src/gen/models/index.ts +232 -203
- package/src/gen/moderation/ModerationApi.ts +0 -93
- package/src/types.ts +4 -0
package/dist/index.es.mjs
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import jwt from 'jsonwebtoken';
|
|
2
2
|
import { v4 } from 'uuid';
|
|
3
3
|
import crypto from 'crypto';
|
|
4
|
+
import { Agent } from 'undici';
|
|
4
5
|
|
|
5
6
|
const ChannelOwnCapability = {
|
|
6
7
|
BAN_CHANNEL_MEMBERS: 'ban-channel-members',
|
|
@@ -138,7 +139,7 @@ class BaseApi {
|
|
|
138
139
|
Authorization: this.apiConfig.token,
|
|
139
140
|
'stream-auth-type': 'jwt',
|
|
140
141
|
'Content-Type': 'application/json',
|
|
141
|
-
'X-Stream-Client': 'stream-node-' + "0.4.
|
|
142
|
+
'X-Stream-Client': 'stream-node-' + "0.4.20",
|
|
142
143
|
'Accept-Encoding': 'gzip',
|
|
143
144
|
'x-client-request-id': clientRequestId,
|
|
144
145
|
};
|
|
@@ -149,6 +150,8 @@ class BaseApi {
|
|
|
149
150
|
method,
|
|
150
151
|
body: JSON.stringify(body),
|
|
151
152
|
headers,
|
|
153
|
+
/** @ts-expect-error we get types from DOM here, but we should use node types */
|
|
154
|
+
dispatcher: this.dispatcher,
|
|
152
155
|
});
|
|
153
156
|
const responseHeaders = response.headers;
|
|
154
157
|
const metadata = {
|
|
@@ -209,6 +212,7 @@ class BaseApi {
|
|
|
209
212
|
}
|
|
210
213
|
return newParams.join('&');
|
|
211
214
|
};
|
|
215
|
+
this.dispatcher = this.apiConfig.agent;
|
|
212
216
|
}
|
|
213
217
|
}
|
|
214
218
|
|
|
@@ -512,6 +516,7 @@ decoders.ChannelStateResponse = (input) => {
|
|
|
512
516
|
read: { type: 'ReadStateResponse', isSingle: false },
|
|
513
517
|
watchers: { type: 'UserResponse', isSingle: false },
|
|
514
518
|
channel: { type: 'ChannelResponse', isSingle: true },
|
|
519
|
+
draft: { type: 'DraftResponse', isSingle: true },
|
|
515
520
|
membership: { type: 'ChannelMember', isSingle: true },
|
|
516
521
|
push_preferences: { type: 'ChannelPushPreferences', isSingle: true },
|
|
517
522
|
};
|
|
@@ -528,6 +533,7 @@ decoders.ChannelStateResponseFields = (input) => {
|
|
|
528
533
|
read: { type: 'ReadStateResponse', isSingle: false },
|
|
529
534
|
watchers: { type: 'UserResponse', isSingle: false },
|
|
530
535
|
channel: { type: 'ChannelResponse', isSingle: true },
|
|
536
|
+
draft: { type: 'DraftResponse', isSingle: true },
|
|
531
537
|
membership: { type: 'ChannelMember', isSingle: true },
|
|
532
538
|
push_preferences: { type: 'ChannelPushPreferences', isSingle: true },
|
|
533
539
|
};
|
|
@@ -654,6 +660,22 @@ decoders.DeviceResponse = (input) => {
|
|
|
654
660
|
};
|
|
655
661
|
return decode(typeMappings, input);
|
|
656
662
|
};
|
|
663
|
+
decoders.DraftPayloadResponse = (input) => {
|
|
664
|
+
const typeMappings = {
|
|
665
|
+
mentioned_users: { type: 'UserResponse', isSingle: false },
|
|
666
|
+
};
|
|
667
|
+
return decode(typeMappings, input);
|
|
668
|
+
};
|
|
669
|
+
decoders.DraftResponse = (input) => {
|
|
670
|
+
const typeMappings = {
|
|
671
|
+
created_at: { type: 'DatetimeType', isSingle: true },
|
|
672
|
+
message: { type: 'DraftPayloadResponse', isSingle: true },
|
|
673
|
+
channel: { type: 'ChannelResponse', isSingle: true },
|
|
674
|
+
parent_message: { type: 'MessageResponse', isSingle: true },
|
|
675
|
+
quoted_message: { type: 'MessageResponse', isSingle: true },
|
|
676
|
+
};
|
|
677
|
+
return decode(typeMappings, input);
|
|
678
|
+
};
|
|
657
679
|
decoders.EgressRTMPResponse = (input) => {
|
|
658
680
|
const typeMappings = {
|
|
659
681
|
started_at: { type: 'DatetimeType', isSingle: true },
|
|
@@ -704,7 +726,7 @@ decoders.ExportUserResponse = (input) => {
|
|
|
704
726
|
};
|
|
705
727
|
return decode(typeMappings, input);
|
|
706
728
|
};
|
|
707
|
-
decoders.
|
|
729
|
+
decoders.Flag = (input) => {
|
|
708
730
|
const typeMappings = {
|
|
709
731
|
created_at: { type: 'DatetimeType', isSingle: true },
|
|
710
732
|
updated_at: { type: 'DatetimeType', isSingle: true },
|
|
@@ -712,14 +734,6 @@ decoders.Flag2 = (input) => {
|
|
|
712
734
|
};
|
|
713
735
|
return decode(typeMappings, input);
|
|
714
736
|
};
|
|
715
|
-
decoders.Flag2Response = (input) => {
|
|
716
|
-
const typeMappings = {
|
|
717
|
-
created_at: { type: 'DatetimeType', isSingle: true },
|
|
718
|
-
updated_at: { type: 'DatetimeType', isSingle: true },
|
|
719
|
-
user: { type: 'UserResponse', isSingle: true },
|
|
720
|
-
};
|
|
721
|
-
return decode(typeMappings, input);
|
|
722
|
-
};
|
|
723
737
|
decoders.FlagDetails = (input) => {
|
|
724
738
|
const typeMappings = {
|
|
725
739
|
automod: { type: 'AutomodDetails', isSingle: true },
|
|
@@ -739,6 +753,7 @@ decoders.FullUserResponse = (input) => {
|
|
|
739
753
|
channel_mutes: { type: 'ChannelMute', isSingle: false },
|
|
740
754
|
devices: { type: 'DeviceResponse', isSingle: false },
|
|
741
755
|
mutes: { type: 'UserMuteResponse', isSingle: false },
|
|
756
|
+
ban_expires: { type: 'DatetimeType', isSingle: true },
|
|
742
757
|
deactivated_at: { type: 'DatetimeType', isSingle: true },
|
|
743
758
|
deleted_at: { type: 'DatetimeType', isSingle: true },
|
|
744
759
|
last_active: { type: 'DatetimeType', isSingle: true },
|
|
@@ -778,12 +793,6 @@ decoders.GetCallTypeResponse = (input) => {
|
|
|
778
793
|
};
|
|
779
794
|
return decode(typeMappings, input);
|
|
780
795
|
};
|
|
781
|
-
decoders.GetCampaignResponse = (input) => {
|
|
782
|
-
const typeMappings = {
|
|
783
|
-
campaign: { type: 'CampaignResponse', isSingle: true },
|
|
784
|
-
};
|
|
785
|
-
return decode(typeMappings, input);
|
|
786
|
-
};
|
|
787
796
|
decoders.GetChannelTypeResponse = (input) => {
|
|
788
797
|
const typeMappings = {
|
|
789
798
|
created_at: { type: 'DatetimeType', isSingle: true },
|
|
@@ -805,6 +814,12 @@ decoders.GetConfigResponse = (input) => {
|
|
|
805
814
|
};
|
|
806
815
|
return decode(typeMappings, input);
|
|
807
816
|
};
|
|
817
|
+
decoders.GetDraftResponse = (input) => {
|
|
818
|
+
const typeMappings = {
|
|
819
|
+
draft: { type: 'DraftResponse', isSingle: true },
|
|
820
|
+
};
|
|
821
|
+
return decode(typeMappings, input);
|
|
822
|
+
};
|
|
808
823
|
decoders.GetImportResponse = (input) => {
|
|
809
824
|
const typeMappings = {
|
|
810
825
|
import_task: { type: 'ImportTask', isSingle: true },
|
|
@@ -868,14 +883,6 @@ decoders.GetThreadResponse = (input) => {
|
|
|
868
883
|
};
|
|
869
884
|
return decode(typeMappings, input);
|
|
870
885
|
};
|
|
871
|
-
decoders.GetUserModerationReportResponse = (input) => {
|
|
872
|
-
const typeMappings = {
|
|
873
|
-
user_blocks: { type: 'UserBlock', isSingle: false },
|
|
874
|
-
user_mutes: { type: 'UserMute', isSingle: false },
|
|
875
|
-
user: { type: 'UserResponse', isSingle: true },
|
|
876
|
-
};
|
|
877
|
-
return decode(typeMappings, input);
|
|
878
|
-
};
|
|
879
886
|
decoders.GoLiveResponse = (input) => {
|
|
880
887
|
const typeMappings = {
|
|
881
888
|
call: { type: 'CallResponse', isSingle: true },
|
|
@@ -1048,6 +1055,7 @@ decoders.MessageResponse = (input) => {
|
|
|
1048
1055
|
pin_expires: { type: 'DatetimeType', isSingle: true },
|
|
1049
1056
|
pinned_at: { type: 'DatetimeType', isSingle: true },
|
|
1050
1057
|
thread_participants: { type: 'UserResponse', isSingle: false },
|
|
1058
|
+
draft: { type: 'DraftResponse', isSingle: true },
|
|
1051
1059
|
pinned_by: { type: 'UserResponse', isSingle: true },
|
|
1052
1060
|
poll: { type: 'PollResponseData', isSingle: true },
|
|
1053
1061
|
quoted_message: { type: 'MessageResponse', isSingle: true },
|
|
@@ -1069,6 +1077,7 @@ decoders.MessageWithChannelResponse = (input) => {
|
|
|
1069
1077
|
pin_expires: { type: 'DatetimeType', isSingle: true },
|
|
1070
1078
|
pinned_at: { type: 'DatetimeType', isSingle: true },
|
|
1071
1079
|
thread_participants: { type: 'UserResponse', isSingle: false },
|
|
1080
|
+
draft: { type: 'DraftResponse', isSingle: true },
|
|
1072
1081
|
pinned_by: { type: 'UserResponse', isSingle: true },
|
|
1073
1082
|
poll: { type: 'PollResponseData', isSingle: true },
|
|
1074
1083
|
quoted_message: { type: 'MessageResponse', isSingle: true },
|
|
@@ -1076,13 +1085,6 @@ decoders.MessageWithChannelResponse = (input) => {
|
|
|
1076
1085
|
};
|
|
1077
1086
|
return decode(typeMappings, input);
|
|
1078
1087
|
};
|
|
1079
|
-
decoders.ModerationUsageStats = (input) => {
|
|
1080
|
-
const typeMappings = {
|
|
1081
|
-
reference_date: { type: 'DatetimeType', isSingle: true },
|
|
1082
|
-
updated_at: { type: 'DatetimeType', isSingle: true },
|
|
1083
|
-
};
|
|
1084
|
-
return decode(typeMappings, input);
|
|
1085
|
-
};
|
|
1086
1088
|
decoders.MuteChannelResponse = (input) => {
|
|
1087
1089
|
const typeMappings = {
|
|
1088
1090
|
channel_mutes: { type: 'ChannelMute', isSingle: false },
|
|
@@ -1260,6 +1262,12 @@ decoders.QueryChannelsResponse = (input) => {
|
|
|
1260
1262
|
};
|
|
1261
1263
|
return decode(typeMappings, input);
|
|
1262
1264
|
};
|
|
1265
|
+
decoders.QueryDraftsResponse = (input) => {
|
|
1266
|
+
const typeMappings = {
|
|
1267
|
+
drafts: { type: 'DraftResponse', isSingle: false },
|
|
1268
|
+
};
|
|
1269
|
+
return decode(typeMappings, input);
|
|
1270
|
+
};
|
|
1263
1271
|
decoders.QueryFeedModerationTemplate = (input) => {
|
|
1264
1272
|
const typeMappings = {
|
|
1265
1273
|
created_at: { type: 'DatetimeType', isSingle: true },
|
|
@@ -1333,12 +1341,6 @@ decoders.QueryThreadsResponse = (input) => {
|
|
|
1333
1341
|
};
|
|
1334
1342
|
return decode(typeMappings, input);
|
|
1335
1343
|
};
|
|
1336
|
-
decoders.QueryUsageStatsResponse = (input) => {
|
|
1337
|
-
const typeMappings = {
|
|
1338
|
-
items: { type: 'ModerationUsageStats', isSingle: false },
|
|
1339
|
-
};
|
|
1340
|
-
return decode(typeMappings, input);
|
|
1341
|
-
};
|
|
1342
1344
|
decoders.QueryUsersResponse = (input) => {
|
|
1343
1345
|
const typeMappings = {
|
|
1344
1346
|
users: { type: 'FullUserResponse', isSingle: false },
|
|
@@ -1387,11 +1389,12 @@ decoders.ReviewQueueItem = (input) => {
|
|
|
1387
1389
|
updated_at: { type: 'DatetimeType', isSingle: true },
|
|
1388
1390
|
actions: { type: 'ActionLog', isSingle: false },
|
|
1389
1391
|
bans: { type: 'Ban', isSingle: false },
|
|
1390
|
-
flags: { type: '
|
|
1392
|
+
flags: { type: 'Flag', isSingle: false },
|
|
1391
1393
|
assigned_to: { type: 'User', isSingle: true },
|
|
1392
1394
|
entity_creator: { type: 'EntityCreator', isSingle: true },
|
|
1393
1395
|
feeds_v2_reaction: { type: 'Reaction', isSingle: true },
|
|
1394
1396
|
message: { type: 'Message', isSingle: true },
|
|
1397
|
+
reaction: { type: 'Reaction', isSingle: true },
|
|
1395
1398
|
};
|
|
1396
1399
|
return decode(typeMappings, input);
|
|
1397
1400
|
};
|
|
@@ -1401,13 +1404,13 @@ decoders.ReviewQueueItemResponse = (input) => {
|
|
|
1401
1404
|
updated_at: { type: 'DatetimeType', isSingle: true },
|
|
1402
1405
|
actions: { type: 'ActionLogResponse', isSingle: false },
|
|
1403
1406
|
bans: { type: 'Ban', isSingle: false },
|
|
1404
|
-
flags: { type: 'Flag2Response', isSingle: false },
|
|
1405
1407
|
completed_at: { type: 'DatetimeType', isSingle: true },
|
|
1406
1408
|
reviewed_at: { type: 'DatetimeType', isSingle: true },
|
|
1407
1409
|
assigned_to: { type: 'UserResponse', isSingle: true },
|
|
1408
1410
|
entity_creator: { type: 'EntityCreatorResponse', isSingle: true },
|
|
1409
1411
|
feeds_v2_reaction: { type: 'Reaction', isSingle: true },
|
|
1410
1412
|
message: { type: 'MessageResponse', isSingle: true },
|
|
1413
|
+
reaction: { type: 'Reaction', isSingle: true },
|
|
1411
1414
|
};
|
|
1412
1415
|
return decode(typeMappings, input);
|
|
1413
1416
|
};
|
|
@@ -1438,6 +1441,7 @@ decoders.SearchResultMessage = (input) => {
|
|
|
1438
1441
|
pinned_at: { type: 'DatetimeType', isSingle: true },
|
|
1439
1442
|
thread_participants: { type: 'UserResponse', isSingle: false },
|
|
1440
1443
|
channel: { type: 'ChannelResponse', isSingle: true },
|
|
1444
|
+
draft: { type: 'DraftResponse', isSingle: true },
|
|
1441
1445
|
pinned_by: { type: 'UserResponse', isSingle: true },
|
|
1442
1446
|
poll: { type: 'PollResponseData', isSingle: true },
|
|
1443
1447
|
quoted_message: { type: 'MessageResponse', isSingle: true },
|
|
@@ -1480,12 +1484,6 @@ decoders.SendReactionResponse = (input) => {
|
|
|
1480
1484
|
};
|
|
1481
1485
|
return decode(typeMappings, input);
|
|
1482
1486
|
};
|
|
1483
|
-
decoders.StartCampaignResponse = (input) => {
|
|
1484
|
-
const typeMappings = {
|
|
1485
|
-
campaign: { type: 'CampaignResponse', isSingle: true },
|
|
1486
|
-
};
|
|
1487
|
-
return decode(typeMappings, input);
|
|
1488
|
-
};
|
|
1489
1487
|
decoders.StopLiveResponse = (input) => {
|
|
1490
1488
|
const typeMappings = {
|
|
1491
1489
|
call: { type: 'CallResponse', isSingle: true },
|
|
@@ -1532,6 +1530,7 @@ decoders.ThreadStateResponse = (input) => {
|
|
|
1532
1530
|
thread_participants: { type: 'ThreadParticipant', isSingle: false },
|
|
1533
1531
|
channel: { type: 'ChannelResponse', isSingle: true },
|
|
1534
1532
|
created_by: { type: 'UserResponse', isSingle: true },
|
|
1533
|
+
draft: { type: 'DraftResponse', isSingle: true },
|
|
1535
1534
|
parent_message: { type: 'MessageResponse', isSingle: true },
|
|
1536
1535
|
};
|
|
1537
1536
|
return decode(typeMappings, input);
|
|
@@ -1690,12 +1689,6 @@ decoders.User = (input) => {
|
|
|
1690
1689
|
};
|
|
1691
1690
|
return decode(typeMappings, input);
|
|
1692
1691
|
};
|
|
1693
|
-
decoders.UserBlock = (input) => {
|
|
1694
|
-
const typeMappings = {
|
|
1695
|
-
created_at: { type: 'DatetimeType', isSingle: true },
|
|
1696
|
-
};
|
|
1697
|
-
return decode(typeMappings, input);
|
|
1698
|
-
};
|
|
1699
1692
|
decoders.UserMute = (input) => {
|
|
1700
1693
|
const typeMappings = {
|
|
1701
1694
|
created_at: { type: 'DatetimeType', isSingle: true },
|
|
@@ -3083,6 +3076,7 @@ class ChatApi extends BaseApi {
|
|
|
3083
3076
|
limit: request?.limit,
|
|
3084
3077
|
next: request?.next,
|
|
3085
3078
|
prev: request?.prev,
|
|
3079
|
+
user_limit: request?.user_limit,
|
|
3086
3080
|
sort: request?.sort,
|
|
3087
3081
|
filter: request?.filter,
|
|
3088
3082
|
};
|
|
@@ -3091,10 +3085,15 @@ class ChatApi extends BaseApi {
|
|
|
3091
3085
|
return { ...response.body, metadata: response.metadata };
|
|
3092
3086
|
};
|
|
3093
3087
|
this.getCampaign = async (request) => {
|
|
3088
|
+
const queryParams = {
|
|
3089
|
+
prev: request?.prev,
|
|
3090
|
+
next: request?.next,
|
|
3091
|
+
limit: request?.limit,
|
|
3092
|
+
};
|
|
3094
3093
|
const pathParams = {
|
|
3095
3094
|
id: request?.id,
|
|
3096
3095
|
};
|
|
3097
|
-
const response = await this.sendRequest('GET', '/api/v2/chat/campaigns/{id}', pathParams,
|
|
3096
|
+
const response = await this.sendRequest('GET', '/api/v2/chat/campaigns/{id}', pathParams, queryParams);
|
|
3098
3097
|
decoders.GetCampaignResponse?.(response.body);
|
|
3099
3098
|
return { ...response.body, metadata: response.metadata };
|
|
3100
3099
|
};
|
|
@@ -3224,6 +3223,32 @@ class ChatApi extends BaseApi {
|
|
|
3224
3223
|
decoders.UpdateChannelResponse?.(response.body);
|
|
3225
3224
|
return { ...response.body, metadata: response.metadata };
|
|
3226
3225
|
};
|
|
3226
|
+
this.deleteDraft = async (request) => {
|
|
3227
|
+
const queryParams = {
|
|
3228
|
+
parent_id: request?.parent_id,
|
|
3229
|
+
user_id: request?.user_id,
|
|
3230
|
+
};
|
|
3231
|
+
const pathParams = {
|
|
3232
|
+
type: request?.type,
|
|
3233
|
+
id: request?.id,
|
|
3234
|
+
};
|
|
3235
|
+
const response = await this.sendRequest('DELETE', '/api/v2/chat/channels/{type}/{id}/draft', pathParams, queryParams);
|
|
3236
|
+
decoders.Response?.(response.body);
|
|
3237
|
+
return { ...response.body, metadata: response.metadata };
|
|
3238
|
+
};
|
|
3239
|
+
this.getDraft = async (request) => {
|
|
3240
|
+
const queryParams = {
|
|
3241
|
+
parent_id: request?.parent_id,
|
|
3242
|
+
user_id: request?.user_id,
|
|
3243
|
+
};
|
|
3244
|
+
const pathParams = {
|
|
3245
|
+
type: request?.type,
|
|
3246
|
+
id: request?.id,
|
|
3247
|
+
};
|
|
3248
|
+
const response = await this.sendRequest('GET', '/api/v2/chat/channels/{type}/{id}/draft', pathParams, queryParams);
|
|
3249
|
+
decoders.GetDraftResponse?.(response.body);
|
|
3250
|
+
return { ...response.body, metadata: response.metadata };
|
|
3251
|
+
};
|
|
3227
3252
|
this.sendEvent = async (request) => {
|
|
3228
3253
|
const pathParams = {
|
|
3229
3254
|
type: request?.type,
|
|
@@ -3562,6 +3587,20 @@ class ChatApi extends BaseApi {
|
|
|
3562
3587
|
decoders.UpdateCommandResponse?.(response.body);
|
|
3563
3588
|
return { ...response.body, metadata: response.metadata };
|
|
3564
3589
|
};
|
|
3590
|
+
this.queryDrafts = async (request) => {
|
|
3591
|
+
const body = {
|
|
3592
|
+
limit: request?.limit,
|
|
3593
|
+
next: request?.next,
|
|
3594
|
+
prev: request?.prev,
|
|
3595
|
+
user_id: request?.user_id,
|
|
3596
|
+
sort: request?.sort,
|
|
3597
|
+
filter: request?.filter,
|
|
3598
|
+
user: request?.user,
|
|
3599
|
+
};
|
|
3600
|
+
const response = await this.sendRequest('POST', '/api/v2/chat/drafts/query', undefined, undefined, body);
|
|
3601
|
+
decoders.QueryDraftsResponse?.(response.body);
|
|
3602
|
+
return { ...response.body, metadata: response.metadata };
|
|
3603
|
+
};
|
|
3565
3604
|
this.exportChannels = async (request) => {
|
|
3566
3605
|
const body = {
|
|
3567
3606
|
channels: request?.channels,
|
|
@@ -4178,6 +4217,22 @@ class ChannelApi {
|
|
|
4178
4217
|
...request,
|
|
4179
4218
|
});
|
|
4180
4219
|
};
|
|
4220
|
+
this.deleteDraft = (request) => {
|
|
4221
|
+
if (!this.id) {
|
|
4222
|
+
throw new Error(`Channel isn't yet created, call getOrCreateDistinctChannel() before this operation`);
|
|
4223
|
+
}
|
|
4224
|
+
return this.chatApi.deleteDraft({
|
|
4225
|
+
id: this.id,
|
|
4226
|
+
type: this.type,
|
|
4227
|
+
...request,
|
|
4228
|
+
});
|
|
4229
|
+
};
|
|
4230
|
+
this.getDraft = (request) => {
|
|
4231
|
+
if (!this.id) {
|
|
4232
|
+
throw new Error(`Channel isn't yet created, call getOrCreateDistinctChannel() before this operation`);
|
|
4233
|
+
}
|
|
4234
|
+
return this.chatApi.getDraft({ id: this.id, type: this.type, ...request });
|
|
4235
|
+
};
|
|
4181
4236
|
this.sendEvent = (request) => {
|
|
4182
4237
|
if (!this.id) {
|
|
4183
4238
|
throw new Error(`Channel isn't yet created, call getOrCreateDistinctChannel() before this operation`);
|
|
@@ -4363,15 +4418,6 @@ class StreamChatClient extends ChatApi {
|
|
|
4363
4418
|
class ModerationApi extends BaseApi {
|
|
4364
4419
|
constructor() {
|
|
4365
4420
|
super(...arguments);
|
|
4366
|
-
this.getModerationAnalytics = async (request) => {
|
|
4367
|
-
const body = {
|
|
4368
|
-
end_date: request?.end_date,
|
|
4369
|
-
start_date: request?.start_date,
|
|
4370
|
-
};
|
|
4371
|
-
const response = await this.sendRequest('POST', '/api/v2/moderation/analytics', undefined, undefined, body);
|
|
4372
|
-
decoders.GetModerationAnalyticsResponse?.(response.body);
|
|
4373
|
-
return { ...response.body, metadata: response.metadata };
|
|
4374
|
-
};
|
|
4375
4421
|
this.ban = async (request) => {
|
|
4376
4422
|
const body = {
|
|
4377
4423
|
target_user_id: request?.target_user_id,
|
|
@@ -4525,11 +4571,6 @@ class ModerationApi extends BaseApi {
|
|
|
4525
4571
|
decoders.QueryModerationLogsResponse?.(response.body);
|
|
4526
4572
|
return { ...response.body, metadata: response.metadata };
|
|
4527
4573
|
};
|
|
4528
|
-
this.getModeratorStats = async () => {
|
|
4529
|
-
const response = await this.sendRequest('GET', '/api/v2/moderation/moderator_stats', undefined, undefined);
|
|
4530
|
-
decoders.ModeratorStatsResponse?.(response.body);
|
|
4531
|
-
return { ...response.body, metadata: response.metadata };
|
|
4532
|
-
};
|
|
4533
4574
|
this.mute = async (request) => {
|
|
4534
4575
|
const body = {
|
|
4535
4576
|
target_ids: request?.target_ids,
|
|
@@ -4541,11 +4582,6 @@ class ModerationApi extends BaseApi {
|
|
|
4541
4582
|
decoders.MuteResponse?.(response.body);
|
|
4542
4583
|
return { ...response.body, metadata: response.metadata };
|
|
4543
4584
|
};
|
|
4544
|
-
this.getQueueStats = async () => {
|
|
4545
|
-
const response = await this.sendRequest('GET', '/api/v2/moderation/queue_stats', undefined, undefined);
|
|
4546
|
-
decoders.QueueStatsResponse?.(response.body);
|
|
4547
|
-
return { ...response.body, metadata: response.metadata };
|
|
4548
|
-
};
|
|
4549
4585
|
this.queryReviewQueue = async (request) => {
|
|
4550
4586
|
const body = {
|
|
4551
4587
|
limit: request?.limit,
|
|
@@ -4615,31 +4651,6 @@ class ModerationApi extends BaseApi {
|
|
|
4615
4651
|
decoders.UnmuteResponse?.(response.body);
|
|
4616
4652
|
return { ...response.body, metadata: response.metadata };
|
|
4617
4653
|
};
|
|
4618
|
-
this.queryUsageStats = async (request) => {
|
|
4619
|
-
const body = {
|
|
4620
|
-
limit: request?.limit,
|
|
4621
|
-
next: request?.next,
|
|
4622
|
-
prev: request?.prev,
|
|
4623
|
-
user_id: request?.user_id,
|
|
4624
|
-
sort: request?.sort,
|
|
4625
|
-
filter: request?.filter,
|
|
4626
|
-
user: request?.user,
|
|
4627
|
-
};
|
|
4628
|
-
const response = await this.sendRequest('POST', '/api/v2/moderation/usage_stats', undefined, undefined, body);
|
|
4629
|
-
decoders.QueryUsageStatsResponse?.(response.body);
|
|
4630
|
-
return { ...response.body, metadata: response.metadata };
|
|
4631
|
-
};
|
|
4632
|
-
this.getUserReport = async (request) => {
|
|
4633
|
-
const queryParams = {
|
|
4634
|
-
user_id: request?.user_id,
|
|
4635
|
-
create_user_if_not_exists: request?.create_user_if_not_exists,
|
|
4636
|
-
include_user_mutes: request?.include_user_mutes,
|
|
4637
|
-
include_user_blocks: request?.include_user_blocks,
|
|
4638
|
-
};
|
|
4639
|
-
const response = await this.sendRequest('GET', '/api/v2/moderation/user_report', undefined, queryParams);
|
|
4640
|
-
decoders.GetUserModerationReportResponse?.(response.body);
|
|
4641
|
-
return { ...response.body, metadata: response.metadata };
|
|
4642
|
-
};
|
|
4643
4654
|
}
|
|
4644
4655
|
}
|
|
4645
4656
|
|
|
@@ -4656,9 +4667,15 @@ class StreamClient extends CommonApi {
|
|
|
4656
4667
|
constructor(apiKey, secret, config) {
|
|
4657
4668
|
const token = JWTServerToken(secret);
|
|
4658
4669
|
const timeout = config?.timeout ?? StreamClient.DEFAULT_TIMEOUT;
|
|
4670
|
+
const agent = config?.agent ??
|
|
4671
|
+
new Agent({
|
|
4672
|
+
connections: config?.maxConnections === undefined
|
|
4673
|
+
? StreamClient.MAX_CONNECTIONS
|
|
4674
|
+
: config.maxConnections,
|
|
4675
|
+
});
|
|
4659
4676
|
const chatBaseUrl = config?.basePath ?? 'https://chat.stream-io-api.com';
|
|
4660
4677
|
const videoBaseUrl = config?.basePath ?? 'https://video.stream-io-api.com';
|
|
4661
|
-
super({ apiKey, token, timeout, baseUrl: chatBaseUrl });
|
|
4678
|
+
super({ apiKey, token, timeout, baseUrl: chatBaseUrl, agent });
|
|
4662
4679
|
this.apiKey = apiKey;
|
|
4663
4680
|
this.secret = secret;
|
|
4664
4681
|
this.config = config;
|
|
@@ -4759,22 +4776,26 @@ class StreamClient extends CommonApi {
|
|
|
4759
4776
|
token,
|
|
4760
4777
|
timeout,
|
|
4761
4778
|
baseUrl: videoBaseUrl,
|
|
4779
|
+
agent,
|
|
4762
4780
|
});
|
|
4763
4781
|
this.chat = new StreamChatClient({
|
|
4764
4782
|
apiKey,
|
|
4765
4783
|
token,
|
|
4766
4784
|
timeout,
|
|
4767
4785
|
baseUrl: chatBaseUrl,
|
|
4786
|
+
agent,
|
|
4768
4787
|
});
|
|
4769
4788
|
this.moderation = new StreamModerationClient({
|
|
4770
4789
|
apiKey,
|
|
4771
4790
|
token,
|
|
4772
4791
|
timeout,
|
|
4773
4792
|
baseUrl: chatBaseUrl,
|
|
4793
|
+
agent,
|
|
4774
4794
|
});
|
|
4775
4795
|
}
|
|
4776
4796
|
}
|
|
4777
4797
|
StreamClient.DEFAULT_TIMEOUT = 3000;
|
|
4798
|
+
StreamClient.MAX_CONNECTIONS = 100;
|
|
4778
4799
|
|
|
4779
4800
|
export { ChannelOwnCapability, OwnCapability, StreamCall, StreamChannel, StreamChatClient, StreamClient, StreamVideoClient };
|
|
4780
4801
|
//# sourceMappingURL=index.es.mjs.map
|