mezon-js 2.8.2 → 2.8.5

Sign up to get free protection for your applications and to get access to all the features.
package/api.gen.ts CHANGED
@@ -6,11 +6,13 @@ import { encode } from 'js-base64';
6
6
 
7
7
  /** A single user-role pair. */
8
8
  export interface ChannelUserListChannelUser {
9
- //
10
- clan_nick?: string;
11
9
  //
12
10
  clan_avatar?: string;
13
11
  //
12
+ clan_id?: string;
13
+ //
14
+ clan_nick?: string;
15
+ //
14
16
  id?: string;
15
17
  //Their relationship to the role.
16
18
  role_id?: Array<string>;
@@ -22,6 +24,8 @@ export interface ChannelUserListChannelUser {
22
24
 
23
25
  /** A single user-role pair. */
24
26
  export interface ClanUserListClanUser {
27
+ //from the `avatar_url` field in the `clan_desc_profile` table.
28
+ clan_avatar?: string;
25
29
  //from the `nick_name` field in the `clan_desc_profile` table.
26
30
  clan_nick?: string;
27
31
  //Their relationship to the role.
@@ -469,6 +473,8 @@ export interface ApiChannelMessageHeader {
469
473
  export interface ApiChannelMessageList {
470
474
  //
471
475
  last_seen_message?: ApiChannelMessageHeader;
476
+ //
477
+ last_sent_message?: ApiChannelMessageHeader;
472
478
  //A list of messages.
473
479
  messages?: Array<ApiChannelMessage>;
474
480
  }
@@ -540,6 +546,8 @@ export interface ApiClanEmojiCreateRequest {
540
546
  //
541
547
  clan_id?: string;
542
548
  //
549
+ id?: string;
550
+ //
543
551
  shortname?: string;
544
552
  //
545
553
  source?: string;
@@ -602,6 +610,8 @@ export interface ApiClanStickerAddRequest {
602
610
  //
603
611
  clan_id?: string;
604
612
  //
613
+ id?: string;
614
+ //
605
615
  shortname?: string;
606
616
  //
607
617
  source?: string;
@@ -725,16 +735,6 @@ export interface ApiCreateRoleRequest {
725
735
  title?: string;
726
736
  }
727
737
 
728
- /** */
729
- export interface ApiCreateWebhookRequest {
730
- //
731
- channel_id?: string;
732
- //
733
- clan_id?: string;
734
- //
735
- hook_name?: string;
736
- }
737
-
738
738
  /** Delete a channel the user has access to. */
739
739
  export interface ApiDeleteChannelDescRequest {
740
740
  //The id of a channel.
@@ -1588,16 +1588,6 @@ export interface ApiWebhookListResponse {
1588
1588
  webhooks?: Array<ApiWebhook>;
1589
1589
  }
1590
1590
 
1591
- /** */
1592
- export interface ApiWebhookResponse {
1593
- //
1594
- channel_id?: string;
1595
- //
1596
- hook_name?: string;
1597
- //
1598
- hook_url?: string;
1599
- }
1600
-
1601
1591
  /** The object to store. */
1602
1592
  export interface ApiWriteStorageObject {
1603
1593
  //The collection to store the object.
@@ -3978,6 +3968,7 @@ export class MezonApi {
3978
3968
  /** Delete a emoji by ID. */
3979
3969
  deleteByIdClanEmoji(bearerToken: string,
3980
3970
  id:string,
3971
+ clanId?:string,
3981
3972
  options: any = {}): Promise<any> {
3982
3973
 
3983
3974
  if (id === null || id === undefined) {
@@ -3986,6 +3977,7 @@ export class MezonApi {
3986
3977
  const urlPath = "/v2/emoji/{id}"
3987
3978
  .replace("{id}", encodeURIComponent(String(id)));
3988
3979
  const queryParams = new Map<string, any>();
3980
+ queryParams.set("clan_id", clanId);
3989
3981
 
3990
3982
  let bodyJson : string = "";
3991
3983
 
@@ -5937,6 +5929,7 @@ export class MezonApi {
5937
5929
  /** Delete a sticker by ID */
5938
5930
  deleteClanStickerById(bearerToken: string,
5939
5931
  id:string,
5932
+ clanId?:string,
5940
5933
  options: any = {}): Promise<any> {
5941
5934
 
5942
5935
  if (id === null || id === undefined) {
@@ -5945,6 +5938,7 @@ export class MezonApi {
5945
5938
  const urlPath = "/v2/sticker/{id}"
5946
5939
  .replace("{id}", encodeURIComponent(String(id)));
5947
5940
  const queryParams = new Map<string, any>();
5941
+ queryParams.set("clan_id", clanId);
5948
5942
 
5949
5943
  let bodyJson : string = "";
5950
5944
 
@@ -6428,42 +6422,6 @@ export class MezonApi {
6428
6422
  ]);
6429
6423
  }
6430
6424
 
6431
- /** Create webhook */
6432
- createWebhookLink(bearerToken: string,
6433
- body:ApiCreateWebhookRequest,
6434
- options: any = {}): Promise<ApiWebhookResponse> {
6435
-
6436
- if (body === null || body === undefined) {
6437
- throw new Error("'body' is a required parameter but is null or undefined.");
6438
- }
6439
- const urlPath = "/v2/webhook/create";
6440
- const queryParams = new Map<string, any>();
6441
-
6442
- let bodyJson : string = "";
6443
- bodyJson = JSON.stringify(body || {});
6444
-
6445
- const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
6446
- const fetchOptions = buildFetchOptions("POST", options, bodyJson);
6447
- if (bearerToken) {
6448
- fetchOptions.headers["Authorization"] = "Bearer " + bearerToken;
6449
- }
6450
-
6451
- return Promise.race([
6452
- fetch(fullUrl, fetchOptions).then((response) => {
6453
- if (response.status == 204) {
6454
- return response;
6455
- } else if (response.status >= 200 && response.status < 300) {
6456
- return response.json();
6457
- } else {
6458
- throw response;
6459
- }
6460
- }),
6461
- new Promise((_, reject) =>
6462
- setTimeout(reject, this.timeoutMs, "Request timed out.")
6463
- ),
6464
- ]);
6465
- }
6466
-
6467
6425
  /** create webhook */
6468
6426
  generateWebhook(bearerToken: string,
6469
6427
  body:ApiWebhookCreateRequest,
@@ -6544,6 +6502,7 @@ export class MezonApi {
6544
6502
  /** list webhook belong to the channel */
6545
6503
  listWebhookByChannelId(bearerToken: string,
6546
6504
  channelId:string,
6505
+ clanId?:string,
6547
6506
  options: any = {}): Promise<ApiWebhookListResponse> {
6548
6507
 
6549
6508
  if (channelId === null || channelId === undefined) {
@@ -6552,6 +6511,7 @@ export class MezonApi {
6552
6511
  const urlPath = "/v2/webhooks/{channelId}"
6553
6512
  .replace("{channelId}", encodeURIComponent(String(channelId)));
6554
6513
  const queryParams = new Map<string, any>();
6514
+ queryParams.set("clan_id", clanId);
6555
6515
 
6556
6516
  let bodyJson : string = "";
6557
6517
 
package/client.ts CHANGED
@@ -90,8 +90,6 @@ import {
90
90
  ApiSearchMessageResponse,
91
91
  ApiPinMessageRequest,
92
92
  ApiPinMessagesList,
93
- ApiCreateWebhookRequest,
94
- ApiWebhookResponse,
95
93
  ApiDeleteChannelDescRequest,
96
94
  ApiChangeChannelPrivateRequest,
97
95
  ApiClanEmojiList,
@@ -255,6 +253,8 @@ export interface ChannelMessageList {
255
253
  cacheable_cursor?: string;
256
254
  /**last seen message from user on channel */
257
255
  last_seen_message?: ApiChannelMessageHeader;
256
+ /**last sent message from channel */
257
+ last_sent_message?: ApiChannelMessageHeader;
258
258
  /** A list of messages. */
259
259
  messages?: Array<ChannelMessage>;
260
260
  /** The cursor to send when retireving the next page, if any. */
@@ -792,18 +792,7 @@ export class Client {
792
792
  });
793
793
  }
794
794
 
795
- /** Create a new event for clan. */
796
- async createWebhook(session: Session, request: ApiCreateWebhookRequest): Promise<ApiWebhookResponse> {
797
- if (this.autoRefreshSession && session.refresh_token &&
798
- session.isexpired((Date.now() + this.expiredTimespanMs)/1000)) {
799
- await this.sessionRefresh(session);
800
- }
801
-
802
- return this.apiClient.createWebhookLink(session.token, request).then((response: ApiWebhookResponse) => {
803
- return Promise.resolve(response);
804
- });
805
- }
806
-
795
+
807
796
  /** add role for channel. */
808
797
  async addRolesChannelDesc(session: Session, request: ApiAddRoleChannelDescRequest): Promise<boolean> {
809
798
  if (this.autoRefreshSession && session.refresh_token &&
@@ -1062,7 +1051,8 @@ export class Client {
1062
1051
  return this.apiClient.listChannelMessages(session.token, channelId, messageId, direction, limit).then((response: ApiChannelMessageList) => {
1063
1052
  var result: ChannelMessageList = {
1064
1053
  messages: [],
1065
- last_seen_message: response.last_seen_message
1054
+ last_seen_message: response.last_seen_message,
1055
+ last_sent_message: response.last_sent_message
1066
1056
  };
1067
1057
 
1068
1058
  if (response.messages == null) {
@@ -2294,13 +2284,13 @@ async updateClanEmojiById(session: Session, id: string, request: MezonUpdateClan
2294
2284
  }
2295
2285
 
2296
2286
  //**delete clan emoji by id */
2297
- async deleteByIdClanEmoji(session: Session, id: string) {
2287
+ async deleteByIdClanEmoji(session: Session, id: string, clan_id: string) {
2298
2288
  if (this.autoRefreshSession && session.refresh_token &&
2299
2289
  session.isexpired((Date.now() + this.expiredTimespanMs)/1000)) {
2300
2290
  await this.sessionRefresh(session);
2301
2291
  }
2302
2292
 
2303
- return this.apiClient.deleteByIdClanEmoji(session.token, id).then((response: any) => {
2293
+ return this.apiClient.deleteByIdClanEmoji(session.token, id, clan_id).then((response: any) => {
2304
2294
  return response !== undefined;
2305
2295
  });
2306
2296
  }
@@ -2318,13 +2308,13 @@ async generateWebhookLink(session: Session, request: ApiWebhookCreateRequest): P
2318
2308
  }
2319
2309
 
2320
2310
  //**list webhook belong to the channel */
2321
- async listWebhookByChannelId(session: Session, channel_id: string): Promise<ApiWebhookListResponse> {
2311
+ async listWebhookByChannelId(session: Session, channel_id: string, clan_id: string): Promise<ApiWebhookListResponse> {
2322
2312
  if (this.autoRefreshSession && session.refresh_token &&
2323
2313
  session.isexpired((Date.now() + this.expiredTimespanMs)/1000)) {
2324
2314
  await this.sessionRefresh(session);
2325
2315
  }
2326
2316
 
2327
- return this.apiClient.listWebhookByChannelId(session.token, channel_id).then((response: ApiWebhookListResponse) => {
2317
+ return this.apiClient.listWebhookByChannelId(session.token, channel_id, clan_id).then((response: ApiWebhookListResponse) => {
2328
2318
  return Promise.resolve(response);
2329
2319
  })
2330
2320
  }
@@ -2366,7 +2356,7 @@ async checkDuplicateClanName(session: Session, clan_name: string): Promise<ApiCh
2366
2356
  }
2367
2357
 
2368
2358
  //**Add a new sticker */
2369
- async addClanSticker(session: Session,request: ApiClanStickerAddRequest) {
2359
+ async addClanSticker(session: Session, request: ApiClanStickerAddRequest) {
2370
2360
  if (this.autoRefreshSession && session.refresh_token &&
2371
2361
  session.isexpired((Date.now() + this.expiredTimespanMs)/1000)) {
2372
2362
  await this.sessionRefresh(session);
@@ -2378,7 +2368,7 @@ async addClanSticker(session: Session,request: ApiClanStickerAddRequest) {
2378
2368
  }
2379
2369
 
2380
2370
  //**List stickers by clan ID */
2381
- async listClanStickersByClanId(session: Session,id: string): Promise<ApiClanStickerListByClanIdResponse> {
2371
+ async listClanStickersByClanId(session: Session, id: string): Promise<ApiClanStickerListByClanIdResponse> {
2382
2372
  if (this.autoRefreshSession && session.refresh_token &&
2383
2373
  session.isexpired((Date.now() + this.expiredTimespanMs)/1000)) {
2384
2374
  await this.sessionRefresh(session);
@@ -2390,19 +2380,19 @@ async listClanStickersByClanId(session: Session,id: string): Promise<ApiClanStic
2390
2380
  }
2391
2381
 
2392
2382
  //**Delete a sticker by ID*/
2393
- async deleteClanStickerById(session: Session,id: string) {
2383
+ async deleteClanStickerById(session: Session, id: string, clan_id: string) {
2394
2384
  if (this.autoRefreshSession && session.refresh_token &&
2395
2385
  session.isexpired((Date.now() + this.expiredTimespanMs)/1000)) {
2396
2386
  await this.sessionRefresh(session);
2397
2387
  }
2398
2388
 
2399
- return this.apiClient.deleteClanStickerById(session.token, id).then((response: any) => {
2389
+ return this.apiClient.deleteClanStickerById(session.token, id, clan_id).then((response: any) => {
2400
2390
  return response !== undefined;
2401
2391
  })
2402
2392
  }
2403
2393
 
2404
2394
  //**Update a sticker by ID*/
2405
- async updateClanStickerById(session: Session,id: string,request: MezonUpdateClanStickerByIdBody){
2395
+ async updateClanStickerById(session: Session, id: string, request: MezonUpdateClanStickerByIdBody){
2406
2396
  if (this.autoRefreshSession && session.refresh_token &&
2407
2397
  session.isexpired((Date.now() + this.expiredTimespanMs)/1000)) {
2408
2398
  await this.sessionRefresh(session);
@@ -2414,7 +2404,7 @@ async updateClanStickerById(session: Session,id: string,request: MezonUpdateClan
2414
2404
  }
2415
2405
 
2416
2406
  //** update the category of a channel */
2417
- async changeChannelCategory(session: Session,id: string,request: MezonChangeChannelCategoryBody) {
2407
+ async changeChannelCategory(session: Session, id: string, request: MezonChangeChannelCategoryBody) {
2418
2408
  if (this.autoRefreshSession && session.refresh_token &&
2419
2409
  session.isexpired((Date.now() + this.expiredTimespanMs)/1000)) {
2420
2410
  await this.sessionRefresh(session);
package/dist/api.gen.d.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  /** A single user-role pair. */
2
2
  export interface ChannelUserListChannelUser {
3
- clan_nick?: string;
4
3
  clan_avatar?: string;
4
+ clan_id?: string;
5
+ clan_nick?: string;
5
6
  id?: string;
6
7
  role_id?: Array<string>;
7
8
  thread_id?: string;
@@ -9,6 +10,7 @@ export interface ChannelUserListChannelUser {
9
10
  }
10
11
  /** A single user-role pair. */
11
12
  export interface ClanUserListClanUser {
13
+ clan_avatar?: string;
12
14
  clan_nick?: string;
13
15
  role_id?: string;
14
16
  user?: ApiUser;
@@ -266,6 +268,7 @@ export interface ApiChannelMessageHeader {
266
268
  /** A list of channel messages, usually a result of a list operation. */
267
269
  export interface ApiChannelMessageList {
268
270
  last_seen_message?: ApiChannelMessageHeader;
271
+ last_sent_message?: ApiChannelMessageHeader;
269
272
  messages?: Array<ApiChannelMessage>;
270
273
  }
271
274
  /** A list of users belonging to a channel, along with their role. */
@@ -308,6 +311,7 @@ export interface ApiClanDescProfile {
308
311
  export interface ApiClanEmojiCreateRequest {
309
312
  category?: string;
310
313
  clan_id?: string;
314
+ id?: string;
311
315
  shortname?: string;
312
316
  source?: string;
313
317
  }
@@ -344,6 +348,7 @@ export interface ApiClanSticker {
344
348
  export interface ApiClanStickerAddRequest {
345
349
  category?: string;
346
350
  clan_id?: string;
351
+ id?: string;
347
352
  shortname?: string;
348
353
  source?: string;
349
354
  }
@@ -414,12 +419,6 @@ export interface ApiCreateRoleRequest {
414
419
  role_icon?: string;
415
420
  title?: string;
416
421
  }
417
- /** */
418
- export interface ApiCreateWebhookRequest {
419
- channel_id?: string;
420
- clan_id?: string;
421
- hook_name?: string;
422
- }
423
422
  /** Delete a channel the user has access to. */
424
423
  export interface ApiDeleteChannelDescRequest {
425
424
  channel_id?: string;
@@ -915,12 +914,6 @@ export interface ApiWebhookGenerateResponse {
915
914
  export interface ApiWebhookListResponse {
916
915
  webhooks?: Array<ApiWebhook>;
917
916
  }
918
- /** */
919
- export interface ApiWebhookResponse {
920
- channel_id?: string;
921
- hook_name?: string;
922
- hook_url?: string;
923
- }
924
917
  /** The object to store. */
925
918
  export interface ApiWriteStorageObject {
926
919
  collection?: string;
@@ -1075,7 +1068,7 @@ export declare class MezonApi {
1075
1068
  /** Get emoji list by clan id */
1076
1069
  listClanEmojiByClanId(bearerToken: string, clanId: string, options?: any): Promise<ApiClanEmojiList>;
1077
1070
  /** Delete a emoji by ID. */
1078
- deleteByIdClanEmoji(bearerToken: string, id: string, options?: any): Promise<any>;
1071
+ deleteByIdClanEmoji(bearerToken: string, id: string, clanId?: string, options?: any): Promise<any>;
1079
1072
  /** Update ClanEmoj By id */
1080
1073
  updateClanEmojiById(bearerToken: string, id: string, body: MezonUpdateClanEmojiByIdBody, options?: any): Promise<any>;
1081
1074
  /** Search message from elasticsearch service. */
@@ -1183,7 +1176,7 @@ export declare class MezonApi {
1183
1176
  /** List stickers by clan ID */
1184
1177
  listClanStickersByClanId(bearerToken: string, clanId: string, options?: any): Promise<ApiClanStickerListByClanIdResponse>;
1185
1178
  /** Delete a sticker by ID */
1186
- deleteClanStickerById(bearerToken: string, id: string, options?: any): Promise<any>;
1179
+ deleteClanStickerById(bearerToken: string, id: string, clanId?: string, options?: any): Promise<any>;
1187
1180
  /** Update a sticker by ID */
1188
1181
  updateClanStickerById(bearerToken: string, id: string, body: MezonUpdateClanStickerByIdBody, options?: any): Promise<any>;
1189
1182
  /** Get storage objects. */
@@ -1208,14 +1201,12 @@ export declare class MezonApi {
1208
1201
  getUsers(bearerToken: string, ids?: Array<string>, usernames?: Array<string>, facebookIds?: Array<string>, options?: any): Promise<ApiUsers>;
1209
1202
  /** */
1210
1203
  updateUser(bearerToken: string, body: ApiUpdateUsersRequest, options?: any): Promise<any>;
1211
- /** Create webhook */
1212
- createWebhookLink(bearerToken: string, body: ApiCreateWebhookRequest, options?: any): Promise<ApiWebhookResponse>;
1213
1204
  /** create webhook */
1214
1205
  generateWebhook(bearerToken: string, body: ApiWebhookCreateRequest, options?: any): Promise<any>;
1215
1206
  /** update webhook name by id */
1216
1207
  updateWebhookById(bearerToken: string, id: string, body: MezonUpdateWebhookByIdBody, options?: any): Promise<any>;
1217
1208
  /** list webhook belong to the channel */
1218
- listWebhookByChannelId(bearerToken: string, channelId: string, options?: any): Promise<ApiWebhookListResponse>;
1209
+ listWebhookByChannelId(bearerToken: string, channelId: string, clanId?: string, options?: any): Promise<ApiWebhookListResponse>;
1219
1210
  /** disabled webhook */
1220
1211
  deleteWebhookById(bearerToken: string, id: string, options?: any): Promise<any>;
1221
1212
  buildFullUrl(basePath: string, fragment: string, queryParams: Map<string, any>): string;
package/dist/client.d.ts CHANGED
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { ApiAccount, ApiAccountCustom, ApiAccountDevice, ApiAccountEmail, ApiAccountFacebook, ApiAccountFacebookInstantGame, ApiAccountGoogle, ApiAccountGameCenter, ApiAccountSteam, ApiChannelDescList, ApiChannelDescription, ApiCreateChannelDescRequest, ApiDeleteRoleRequest, ApiClanDescList, ApiCreateClanDescRequest, ApiClanDesc, ApiCategoryDesc, ApiCategoryDescList, ApiRoleList, ApiPermissionList, ApiRoleUserList, ApiRole, ApiCreateRoleRequest, ApiAddRoleChannelDescRequest, ApiCreateCategoryDescRequest, ApiUpdateCategoryDescRequest, ApiDeleteStorageObjectsRequest, ApiEvent, ApiReadStorageObjectsRequest, ApiStorageObjectAcks, ApiUpdateAccountRequest, ApiAccountApple, ApiLinkSteamRequest, ApiClanDescProfile, ApiClanProfile, ApiChannelUserList, ApiClanUserList, ApiLinkInviteUserRequest, ApiUpdateEventRequest, ApiLinkInviteUser, ApiInviteUserRes, ApiUploadAttachmentRequest, ApiUploadAttachment, ApiMessageReaction, ApiMessageMention, ApiMessageAttachment, ApiMessageRef, ApiChannelMessageHeader, ApiVoiceChannelUserList, ApiChannelAttachmentList, ApiCreateEventRequest, ApiEventManagement, ApiEventList, ApiDeleteEventRequest, ApiNotificationChannelCategoySettingsList, ApiNotificationSetting, ApiSetDefaultNotificationRequest, ApiNotificationUserChannel, ApiSetNotificationRequest, ApiNotifiReactMessage, ApiSetMuteNotificationRequest, ApiSearchMessageRequest, ApiSearchMessageResponse, ApiPinMessageRequest, ApiPinMessagesList, ApiCreateWebhookRequest, ApiWebhookResponse, ApiDeleteChannelDescRequest, ApiChangeChannelPrivateRequest, ApiClanEmojiList, ApiClanEmojiCreateRequest, ApiChannelVoiceList, MezonUpdateClanEmojiByIdBody, ApiWebhookCreateRequest, ApiWebhookListResponse, MezonUpdateWebhookByIdBody, ApiWebhookGenerateResponse, ApiCheckDuplicateClanNameResponse, ApiClanStickerAddRequest, ApiClanStickerListByClanIdResponse, MezonUpdateClanStickerByIdBody, MezonChangeChannelCategoryBody } from "./api.gen";
16
+ import { ApiAccount, ApiAccountCustom, ApiAccountDevice, ApiAccountEmail, ApiAccountFacebook, ApiAccountFacebookInstantGame, ApiAccountGoogle, ApiAccountGameCenter, ApiAccountSteam, ApiChannelDescList, ApiChannelDescription, ApiCreateChannelDescRequest, ApiDeleteRoleRequest, ApiClanDescList, ApiCreateClanDescRequest, ApiClanDesc, ApiCategoryDesc, ApiCategoryDescList, ApiRoleList, ApiPermissionList, ApiRoleUserList, ApiRole, ApiCreateRoleRequest, ApiAddRoleChannelDescRequest, ApiCreateCategoryDescRequest, ApiUpdateCategoryDescRequest, ApiDeleteStorageObjectsRequest, ApiEvent, ApiReadStorageObjectsRequest, ApiStorageObjectAcks, ApiUpdateAccountRequest, ApiAccountApple, ApiLinkSteamRequest, ApiClanDescProfile, ApiClanProfile, ApiChannelUserList, ApiClanUserList, ApiLinkInviteUserRequest, ApiUpdateEventRequest, ApiLinkInviteUser, ApiInviteUserRes, ApiUploadAttachmentRequest, ApiUploadAttachment, ApiMessageReaction, ApiMessageMention, ApiMessageAttachment, ApiMessageRef, ApiChannelMessageHeader, ApiVoiceChannelUserList, ApiChannelAttachmentList, ApiCreateEventRequest, ApiEventManagement, ApiEventList, ApiDeleteEventRequest, ApiNotificationChannelCategoySettingsList, ApiNotificationSetting, ApiSetDefaultNotificationRequest, ApiNotificationUserChannel, ApiSetNotificationRequest, ApiNotifiReactMessage, ApiSetMuteNotificationRequest, ApiSearchMessageRequest, ApiSearchMessageResponse, ApiPinMessageRequest, ApiPinMessagesList, ApiDeleteChannelDescRequest, ApiChangeChannelPrivateRequest, ApiClanEmojiList, ApiClanEmojiCreateRequest, ApiChannelVoiceList, MezonUpdateClanEmojiByIdBody, ApiWebhookCreateRequest, ApiWebhookListResponse, MezonUpdateWebhookByIdBody, ApiWebhookGenerateResponse, ApiCheckDuplicateClanNameResponse, ApiClanStickerAddRequest, ApiClanStickerListByClanIdResponse, MezonUpdateClanStickerByIdBody, MezonChangeChannelCategoryBody } from "./api.gen";
17
17
  import { Session } from "./session";
18
18
  import { Socket } from "./socket";
19
19
  import { WebSocketAdapter } from "./web_socket_adapter";
@@ -122,6 +122,8 @@ export interface ChannelMessageList {
122
122
  cacheable_cursor?: string;
123
123
  /**last seen message from user on channel */
124
124
  last_seen_message?: ApiChannelMessageHeader;
125
+ /**last sent message from channel */
126
+ last_sent_message?: ApiChannelMessageHeader;
125
127
  /** A list of messages. */
126
128
  messages?: Array<ChannelMessage>;
127
129
  /** The cursor to send when retireving the next page, if any. */
@@ -400,8 +402,6 @@ export declare class Client {
400
402
  createRole(session: Session, request: ApiCreateRoleRequest): Promise<ApiRole>;
401
403
  /** Create a new event for clan. */
402
404
  createEvent(session: Session, request: ApiCreateEventRequest): Promise<ApiEventManagement>;
403
- /** Create a new event for clan. */
404
- createWebhook(session: Session, request: ApiCreateWebhookRequest): Promise<ApiWebhookResponse>;
405
405
  /** add role for channel. */
406
406
  addRolesChannelDesc(session: Session, request: ApiAddRoleChannelDescRequest): Promise<boolean>;
407
407
  /** Update action role when delete role */
@@ -587,15 +587,15 @@ export declare class Client {
587
587
  /** create clan emoji */
588
588
  createClanEmoji(session: Session, request: ApiClanEmojiCreateRequest): Promise<boolean>;
589
589
  updateClanEmojiById(session: Session, id: string, request: MezonUpdateClanEmojiByIdBody): Promise<boolean>;
590
- deleteByIdClanEmoji(session: Session, id: string): Promise<boolean>;
590
+ deleteByIdClanEmoji(session: Session, id: string, clan_id: string): Promise<boolean>;
591
591
  generateWebhookLink(session: Session, request: ApiWebhookCreateRequest): Promise<ApiWebhookGenerateResponse>;
592
- listWebhookByChannelId(session: Session, channel_id: string): Promise<ApiWebhookListResponse>;
592
+ listWebhookByChannelId(session: Session, channel_id: string, clan_id: string): Promise<ApiWebhookListResponse>;
593
593
  updateWebhookById(session: Session, id: string, request: MezonUpdateWebhookByIdBody): Promise<boolean>;
594
594
  deleteWebhookById(session: Session, id: string): Promise<boolean>;
595
595
  checkDuplicateClanName(session: Session, clan_name: string): Promise<ApiCheckDuplicateClanNameResponse>;
596
596
  addClanSticker(session: Session, request: ApiClanStickerAddRequest): Promise<boolean>;
597
597
  listClanStickersByClanId(session: Session, id: string): Promise<ApiClanStickerListByClanIdResponse>;
598
- deleteClanStickerById(session: Session, id: string): Promise<boolean>;
598
+ deleteClanStickerById(session: Session, id: string, clan_id: string): Promise<boolean>;
599
599
  updateClanStickerById(session: Session, id: string, request: MezonUpdateClanStickerByIdBody): Promise<boolean>;
600
600
  changeChannelCategory(session: Session, id: string, request: MezonChangeChannelCategoryBody): Promise<boolean>;
601
601
  }
@@ -2473,12 +2473,13 @@ var MezonApi = class {
2473
2473
  ]);
2474
2474
  }
2475
2475
  /** Delete a emoji by ID. */
2476
- deleteByIdClanEmoji(bearerToken, id, options = {}) {
2476
+ deleteByIdClanEmoji(bearerToken, id, clanId, options = {}) {
2477
2477
  if (id === null || id === void 0) {
2478
2478
  throw new Error("'id' is a required parameter but is null or undefined.");
2479
2479
  }
2480
2480
  const urlPath = "/v2/emoji/{id}".replace("{id}", encodeURIComponent(String(id)));
2481
2481
  const queryParams = /* @__PURE__ */ new Map();
2482
+ queryParams.set("clan_id", clanId);
2482
2483
  let bodyJson = "";
2483
2484
  const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
2484
2485
  const fetchOptions = buildFetchOptions("DELETE", options, bodyJson);
@@ -4012,12 +4013,13 @@ var MezonApi = class {
4012
4013
  ]);
4013
4014
  }
4014
4015
  /** Delete a sticker by ID */
4015
- deleteClanStickerById(bearerToken, id, options = {}) {
4016
+ deleteClanStickerById(bearerToken, id, clanId, options = {}) {
4016
4017
  if (id === null || id === void 0) {
4017
4018
  throw new Error("'id' is a required parameter but is null or undefined.");
4018
4019
  }
4019
4020
  const urlPath = "/v2/sticker/{id}".replace("{id}", encodeURIComponent(String(id)));
4020
4021
  const queryParams = /* @__PURE__ */ new Map();
4022
+ queryParams.set("clan_id", clanId);
4021
4023
  let bodyJson = "";
4022
4024
  const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
4023
4025
  const fetchOptions = buildFetchOptions("DELETE", options, bodyJson);
@@ -4398,35 +4400,6 @@ var MezonApi = class {
4398
4400
  )
4399
4401
  ]);
4400
4402
  }
4401
- /** Create webhook */
4402
- createWebhookLink(bearerToken, body, options = {}) {
4403
- if (body === null || body === void 0) {
4404
- throw new Error("'body' is a required parameter but is null or undefined.");
4405
- }
4406
- const urlPath = "/v2/webhook/create";
4407
- const queryParams = /* @__PURE__ */ new Map();
4408
- let bodyJson = "";
4409
- bodyJson = JSON.stringify(body || {});
4410
- const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
4411
- const fetchOptions = buildFetchOptions("POST", options, bodyJson);
4412
- if (bearerToken) {
4413
- fetchOptions.headers["Authorization"] = "Bearer " + bearerToken;
4414
- }
4415
- return Promise.race([
4416
- fetch(fullUrl, fetchOptions).then((response) => {
4417
- if (response.status == 204) {
4418
- return response;
4419
- } else if (response.status >= 200 && response.status < 300) {
4420
- return response.json();
4421
- } else {
4422
- throw response;
4423
- }
4424
- }),
4425
- new Promise(
4426
- (_, reject) => setTimeout(reject, this.timeoutMs, "Request timed out.")
4427
- )
4428
- ]);
4429
- }
4430
4403
  /** create webhook */
4431
4404
  generateWebhook(bearerToken, body, options = {}) {
4432
4405
  if (body === null || body === void 0) {
@@ -4489,12 +4462,13 @@ var MezonApi = class {
4489
4462
  ]);
4490
4463
  }
4491
4464
  /** list webhook belong to the channel */
4492
- listWebhookByChannelId(bearerToken, channelId, options = {}) {
4465
+ listWebhookByChannelId(bearerToken, channelId, clanId, options = {}) {
4493
4466
  if (channelId === null || channelId === void 0) {
4494
4467
  throw new Error("'channelId' is a required parameter but is null or undefined.");
4495
4468
  }
4496
4469
  const urlPath = "/v2/webhooks/{channelId}".replace("{channelId}", encodeURIComponent(String(channelId)));
4497
4470
  const queryParams = /* @__PURE__ */ new Map();
4471
+ queryParams.set("clan_id", clanId);
4498
4472
  let bodyJson = "";
4499
4473
  const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
4500
4474
  const fetchOptions = buildFetchOptions("GET", options, bodyJson);
@@ -4822,7 +4796,9 @@ var _DefaultSocket = class _DefaultSocket {
4822
4796
  this.oncustomstatus(message.custom_status_event);
4823
4797
  } else if (message.user_channel_added_event) {
4824
4798
  this.onuserchanneladded(message.user_channel_added_event);
4825
- } else if (message.user_channel_removed_event) {
4799
+ } else if (message.user_channel_added_event) {
4800
+ this.onuserprofileupdate(message.user_profile_updated_event);
4801
+ } else if (message.user_profile_updated_event) {
4826
4802
  this.onuserchannelremoved(message.user_channel_removed_event);
4827
4803
  } else if (message.user_clan_removed_event) {
4828
4804
  this.onuserclanremoved(message.user_clan_removed_event);
@@ -4913,6 +4889,11 @@ var _DefaultSocket = class _DefaultSocket {
4913
4889
  console.log(user);
4914
4890
  }
4915
4891
  }
4892
+ onuserprofileupdate(user) {
4893
+ if (this.verbose && window && window.console) {
4894
+ console.log(user);
4895
+ }
4896
+ }
4916
4897
  onuserchannelremoved(user) {
4917
4898
  if (this.verbose && window && window.console) {
4918
4899
  console.log(user);
@@ -5454,17 +5435,6 @@ var Client = class {
5454
5435
  });
5455
5436
  });
5456
5437
  }
5457
- /** Create a new event for clan. */
5458
- createWebhook(session, request) {
5459
- return __async(this, null, function* () {
5460
- if (this.autoRefreshSession && session.refresh_token && session.isexpired((Date.now() + this.expiredTimespanMs) / 1e3)) {
5461
- yield this.sessionRefresh(session);
5462
- }
5463
- return this.apiClient.createWebhookLink(session.token, request).then((response) => {
5464
- return Promise.resolve(response);
5465
- });
5466
- });
5467
- }
5468
5438
  /** add role for channel. */
5469
5439
  addRolesChannelDesc(session, request) {
5470
5440
  return __async(this, null, function* () {
@@ -5700,7 +5670,8 @@ var Client = class {
5700
5670
  return this.apiClient.listChannelMessages(session.token, channelId, messageId, direction, limit).then((response) => {
5701
5671
  var result = {
5702
5672
  messages: [],
5703
- last_seen_message: response.last_seen_message
5673
+ last_seen_message: response.last_seen_message,
5674
+ last_sent_message: response.last_sent_message
5704
5675
  };
5705
5676
  if (response.messages == null) {
5706
5677
  return Promise.resolve(result);
@@ -6824,12 +6795,12 @@ var Client = class {
6824
6795
  });
6825
6796
  }
6826
6797
  //**delete clan emoji by id */
6827
- deleteByIdClanEmoji(session, id) {
6798
+ deleteByIdClanEmoji(session, id, clan_id) {
6828
6799
  return __async(this, null, function* () {
6829
6800
  if (this.autoRefreshSession && session.refresh_token && session.isexpired((Date.now() + this.expiredTimespanMs) / 1e3)) {
6830
6801
  yield this.sessionRefresh(session);
6831
6802
  }
6832
- return this.apiClient.deleteByIdClanEmoji(session.token, id).then((response) => {
6803
+ return this.apiClient.deleteByIdClanEmoji(session.token, id, clan_id).then((response) => {
6833
6804
  return response !== void 0;
6834
6805
  });
6835
6806
  });
@@ -6846,12 +6817,12 @@ var Client = class {
6846
6817
  });
6847
6818
  }
6848
6819
  //**list webhook belong to the channel */
6849
- listWebhookByChannelId(session, channel_id) {
6820
+ listWebhookByChannelId(session, channel_id, clan_id) {
6850
6821
  return __async(this, null, function* () {
6851
6822
  if (this.autoRefreshSession && session.refresh_token && session.isexpired((Date.now() + this.expiredTimespanMs) / 1e3)) {
6852
6823
  yield this.sessionRefresh(session);
6853
6824
  }
6854
- return this.apiClient.listWebhookByChannelId(session.token, channel_id).then((response) => {
6825
+ return this.apiClient.listWebhookByChannelId(session.token, channel_id, clan_id).then((response) => {
6855
6826
  return Promise.resolve(response);
6856
6827
  });
6857
6828
  });
@@ -6912,12 +6883,12 @@ var Client = class {
6912
6883
  });
6913
6884
  }
6914
6885
  //**Delete a sticker by ID*/
6915
- deleteClanStickerById(session, id) {
6886
+ deleteClanStickerById(session, id, clan_id) {
6916
6887
  return __async(this, null, function* () {
6917
6888
  if (this.autoRefreshSession && session.refresh_token && session.isexpired((Date.now() + this.expiredTimespanMs) / 1e3)) {
6918
6889
  yield this.sessionRefresh(session);
6919
6890
  }
6920
- return this.apiClient.deleteClanStickerById(session.token, id).then((response) => {
6891
+ return this.apiClient.deleteClanStickerById(session.token, id, clan_id).then((response) => {
6921
6892
  return response !== void 0;
6922
6893
  });
6923
6894
  });
@@ -2444,12 +2444,13 @@ var MezonApi = class {
2444
2444
  ]);
2445
2445
  }
2446
2446
  /** Delete a emoji by ID. */
2447
- deleteByIdClanEmoji(bearerToken, id, options = {}) {
2447
+ deleteByIdClanEmoji(bearerToken, id, clanId, options = {}) {
2448
2448
  if (id === null || id === void 0) {
2449
2449
  throw new Error("'id' is a required parameter but is null or undefined.");
2450
2450
  }
2451
2451
  const urlPath = "/v2/emoji/{id}".replace("{id}", encodeURIComponent(String(id)));
2452
2452
  const queryParams = /* @__PURE__ */ new Map();
2453
+ queryParams.set("clan_id", clanId);
2453
2454
  let bodyJson = "";
2454
2455
  const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
2455
2456
  const fetchOptions = buildFetchOptions("DELETE", options, bodyJson);
@@ -3983,12 +3984,13 @@ var MezonApi = class {
3983
3984
  ]);
3984
3985
  }
3985
3986
  /** Delete a sticker by ID */
3986
- deleteClanStickerById(bearerToken, id, options = {}) {
3987
+ deleteClanStickerById(bearerToken, id, clanId, options = {}) {
3987
3988
  if (id === null || id === void 0) {
3988
3989
  throw new Error("'id' is a required parameter but is null or undefined.");
3989
3990
  }
3990
3991
  const urlPath = "/v2/sticker/{id}".replace("{id}", encodeURIComponent(String(id)));
3991
3992
  const queryParams = /* @__PURE__ */ new Map();
3993
+ queryParams.set("clan_id", clanId);
3992
3994
  let bodyJson = "";
3993
3995
  const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
3994
3996
  const fetchOptions = buildFetchOptions("DELETE", options, bodyJson);
@@ -4369,35 +4371,6 @@ var MezonApi = class {
4369
4371
  )
4370
4372
  ]);
4371
4373
  }
4372
- /** Create webhook */
4373
- createWebhookLink(bearerToken, body, options = {}) {
4374
- if (body === null || body === void 0) {
4375
- throw new Error("'body' is a required parameter but is null or undefined.");
4376
- }
4377
- const urlPath = "/v2/webhook/create";
4378
- const queryParams = /* @__PURE__ */ new Map();
4379
- let bodyJson = "";
4380
- bodyJson = JSON.stringify(body || {});
4381
- const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
4382
- const fetchOptions = buildFetchOptions("POST", options, bodyJson);
4383
- if (bearerToken) {
4384
- fetchOptions.headers["Authorization"] = "Bearer " + bearerToken;
4385
- }
4386
- return Promise.race([
4387
- fetch(fullUrl, fetchOptions).then((response) => {
4388
- if (response.status == 204) {
4389
- return response;
4390
- } else if (response.status >= 200 && response.status < 300) {
4391
- return response.json();
4392
- } else {
4393
- throw response;
4394
- }
4395
- }),
4396
- new Promise(
4397
- (_, reject) => setTimeout(reject, this.timeoutMs, "Request timed out.")
4398
- )
4399
- ]);
4400
- }
4401
4374
  /** create webhook */
4402
4375
  generateWebhook(bearerToken, body, options = {}) {
4403
4376
  if (body === null || body === void 0) {
@@ -4460,12 +4433,13 @@ var MezonApi = class {
4460
4433
  ]);
4461
4434
  }
4462
4435
  /** list webhook belong to the channel */
4463
- listWebhookByChannelId(bearerToken, channelId, options = {}) {
4436
+ listWebhookByChannelId(bearerToken, channelId, clanId, options = {}) {
4464
4437
  if (channelId === null || channelId === void 0) {
4465
4438
  throw new Error("'channelId' is a required parameter but is null or undefined.");
4466
4439
  }
4467
4440
  const urlPath = "/v2/webhooks/{channelId}".replace("{channelId}", encodeURIComponent(String(channelId)));
4468
4441
  const queryParams = /* @__PURE__ */ new Map();
4442
+ queryParams.set("clan_id", clanId);
4469
4443
  let bodyJson = "";
4470
4444
  const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
4471
4445
  const fetchOptions = buildFetchOptions("GET", options, bodyJson);
@@ -4793,7 +4767,9 @@ var _DefaultSocket = class _DefaultSocket {
4793
4767
  this.oncustomstatus(message.custom_status_event);
4794
4768
  } else if (message.user_channel_added_event) {
4795
4769
  this.onuserchanneladded(message.user_channel_added_event);
4796
- } else if (message.user_channel_removed_event) {
4770
+ } else if (message.user_channel_added_event) {
4771
+ this.onuserprofileupdate(message.user_profile_updated_event);
4772
+ } else if (message.user_profile_updated_event) {
4797
4773
  this.onuserchannelremoved(message.user_channel_removed_event);
4798
4774
  } else if (message.user_clan_removed_event) {
4799
4775
  this.onuserclanremoved(message.user_clan_removed_event);
@@ -4884,6 +4860,11 @@ var _DefaultSocket = class _DefaultSocket {
4884
4860
  console.log(user);
4885
4861
  }
4886
4862
  }
4863
+ onuserprofileupdate(user) {
4864
+ if (this.verbose && window && window.console) {
4865
+ console.log(user);
4866
+ }
4867
+ }
4887
4868
  onuserchannelremoved(user) {
4888
4869
  if (this.verbose && window && window.console) {
4889
4870
  console.log(user);
@@ -5425,17 +5406,6 @@ var Client = class {
5425
5406
  });
5426
5407
  });
5427
5408
  }
5428
- /** Create a new event for clan. */
5429
- createWebhook(session, request) {
5430
- return __async(this, null, function* () {
5431
- if (this.autoRefreshSession && session.refresh_token && session.isexpired((Date.now() + this.expiredTimespanMs) / 1e3)) {
5432
- yield this.sessionRefresh(session);
5433
- }
5434
- return this.apiClient.createWebhookLink(session.token, request).then((response) => {
5435
- return Promise.resolve(response);
5436
- });
5437
- });
5438
- }
5439
5409
  /** add role for channel. */
5440
5410
  addRolesChannelDesc(session, request) {
5441
5411
  return __async(this, null, function* () {
@@ -5671,7 +5641,8 @@ var Client = class {
5671
5641
  return this.apiClient.listChannelMessages(session.token, channelId, messageId, direction, limit).then((response) => {
5672
5642
  var result = {
5673
5643
  messages: [],
5674
- last_seen_message: response.last_seen_message
5644
+ last_seen_message: response.last_seen_message,
5645
+ last_sent_message: response.last_sent_message
5675
5646
  };
5676
5647
  if (response.messages == null) {
5677
5648
  return Promise.resolve(result);
@@ -6795,12 +6766,12 @@ var Client = class {
6795
6766
  });
6796
6767
  }
6797
6768
  //**delete clan emoji by id */
6798
- deleteByIdClanEmoji(session, id) {
6769
+ deleteByIdClanEmoji(session, id, clan_id) {
6799
6770
  return __async(this, null, function* () {
6800
6771
  if (this.autoRefreshSession && session.refresh_token && session.isexpired((Date.now() + this.expiredTimespanMs) / 1e3)) {
6801
6772
  yield this.sessionRefresh(session);
6802
6773
  }
6803
- return this.apiClient.deleteByIdClanEmoji(session.token, id).then((response) => {
6774
+ return this.apiClient.deleteByIdClanEmoji(session.token, id, clan_id).then((response) => {
6804
6775
  return response !== void 0;
6805
6776
  });
6806
6777
  });
@@ -6817,12 +6788,12 @@ var Client = class {
6817
6788
  });
6818
6789
  }
6819
6790
  //**list webhook belong to the channel */
6820
- listWebhookByChannelId(session, channel_id) {
6791
+ listWebhookByChannelId(session, channel_id, clan_id) {
6821
6792
  return __async(this, null, function* () {
6822
6793
  if (this.autoRefreshSession && session.refresh_token && session.isexpired((Date.now() + this.expiredTimespanMs) / 1e3)) {
6823
6794
  yield this.sessionRefresh(session);
6824
6795
  }
6825
- return this.apiClient.listWebhookByChannelId(session.token, channel_id).then((response) => {
6796
+ return this.apiClient.listWebhookByChannelId(session.token, channel_id, clan_id).then((response) => {
6826
6797
  return Promise.resolve(response);
6827
6798
  });
6828
6799
  });
@@ -6883,12 +6854,12 @@ var Client = class {
6883
6854
  });
6884
6855
  }
6885
6856
  //**Delete a sticker by ID*/
6886
- deleteClanStickerById(session, id) {
6857
+ deleteClanStickerById(session, id, clan_id) {
6887
6858
  return __async(this, null, function* () {
6888
6859
  if (this.autoRefreshSession && session.refresh_token && session.isexpired((Date.now() + this.expiredTimespanMs) / 1e3)) {
6889
6860
  yield this.sessionRefresh(session);
6890
6861
  }
6891
- return this.apiClient.deleteClanStickerById(session.token, id).then((response) => {
6862
+ return this.apiClient.deleteClanStickerById(session.token, id, clan_id).then((response) => {
6892
6863
  return response !== void 0;
6893
6864
  });
6894
6865
  });
package/dist/socket.d.ts CHANGED
@@ -184,6 +184,14 @@ export interface MessageTypingEvent {
184
184
  /** Message sender, usually a user ID. */
185
185
  sender_id: string;
186
186
  }
187
+ export interface UserProfileUpdatedEvent {
188
+ user_id: string;
189
+ display_name: string;
190
+ avatar: string;
191
+ about_me: string;
192
+ channel_id: string;
193
+ clan_id: string;
194
+ }
187
195
  /** An incoming message on a realtime chat channel. */
188
196
  export interface ChannelMessageEvent {
189
197
  avatar?: string;
@@ -351,6 +359,7 @@ export interface ClanProfileUpdatedEvent {
351
359
  user_id: string;
352
360
  clan_nick: string;
353
361
  clan_avatar: string;
362
+ clan_id: string;
354
363
  }
355
364
  /** Stream identifier */
356
365
  export interface StreamId {
@@ -497,6 +506,8 @@ export interface Socket {
497
506
  onpinmessage: (pin: LastPinMessageEvent) => void;
498
507
  /** Receive added user event */
499
508
  onuserchanneladded: (user: UserChannelAddedEvent) => void;
509
+ /** Receive update user event */
510
+ onuserprofileupdate: (user: UserProfileUpdatedEvent) => void;
500
511
  /** Receive channel removed user event */
501
512
  onuserchannelremoved: (user: UserChannelRemovedEvent) => void;
502
513
  /** Receive clan removed user event */
@@ -548,6 +559,7 @@ export declare class DefaultSocket implements Socket {
548
559
  onchannelmessage(channelMessage: ChannelMessageEvent): void;
549
560
  onchannelpresence(channelPresence: ChannelPresenceEvent): void;
550
561
  onuserchanneladded(user: UserChannelAddedEvent): void;
562
+ onuserprofileupdate(user: UserProfileUpdatedEvent): void;
551
563
  onuserchannelremoved(user: UserChannelRemovedEvent): void;
552
564
  onuserclanremoved(user: UserClanRemovedEvent): void;
553
565
  onnotification(notification: Notification): void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mezon-js",
3
- "version": "2.8.2",
3
+ "version": "2.8.5",
4
4
  "scripts": {
5
5
  "build": "npx tsc && npx rollup -c --bundleConfigAsCjs && node build.mjs"
6
6
  },
package/socket.ts CHANGED
@@ -251,6 +251,22 @@ export interface MessageTypingEvent {
251
251
  sender_id: string;
252
252
  }
253
253
 
254
+ // user profile updated event
255
+ export interface UserProfileUpdatedEvent{
256
+ // the user id
257
+ user_id: string;
258
+ // the display_name
259
+ display_name: string;
260
+ // the avatar
261
+ avatar: string;
262
+ // the about_me
263
+ about_me: string;
264
+ // the channel_id
265
+ channel_id: string;
266
+ // the clan_id
267
+ clan_id: string;
268
+ }
269
+
254
270
  /** An incoming message on a realtime chat channel. */
255
271
  export interface ChannelMessageEvent {
256
272
  avatar?: string;
@@ -517,6 +533,8 @@ export interface ClanProfileUpdatedEvent {
517
533
  clan_nick: string;
518
534
  // the avatar
519
535
  clan_avatar: string;
536
+ // the clan_id
537
+ clan_id: string;
520
538
  }
521
539
 
522
540
  /** Stream identifier */
@@ -703,6 +721,9 @@ export interface Socket {
703
721
  /** Receive added user event */
704
722
  onuserchanneladded: (user: UserChannelAddedEvent) => void;
705
723
 
724
+ /** Receive update user event */
725
+ onuserprofileupdate: (user: UserProfileUpdatedEvent) => void;
726
+
706
727
  /** Receive channel removed user event */
707
728
  onuserchannelremoved: (user: UserChannelRemovedEvent) => void;
708
729
 
@@ -883,7 +904,9 @@ export class DefaultSocket implements Socket {
883
904
  this.oncustomstatus(<CustomStatusEvent>message.custom_status_event);
884
905
  } else if (message.user_channel_added_event) {
885
906
  this.onuserchanneladded(<UserChannelAddedEvent>message.user_channel_added_event);
886
- } else if (message.user_channel_removed_event) {
907
+ } else if (message.user_channel_added_event) {
908
+ this.onuserprofileupdate(<UserProfileUpdatedEvent>message.user_profile_updated_event);
909
+ } else if (message.user_profile_updated_event) {
887
910
  this.onuserchannelremoved(<UserChannelRemovedEvent>message.user_channel_removed_event);
888
911
  } else if (message.user_clan_removed_event) {
889
912
  this.onuserclanremoved(<UserClanRemovedEvent>message.user_clan_removed_event);
@@ -989,7 +1012,11 @@ export class DefaultSocket implements Socket {
989
1012
  console.log(user);
990
1013
  }
991
1014
  }
992
-
1015
+ onuserprofileupdate(user: UserProfileUpdatedEvent) {
1016
+ if (this.verbose && window && window.console) {
1017
+ console.log(user);
1018
+ }
1019
+ }
993
1020
  onuserchannelremoved(user: UserChannelRemovedEvent) {
994
1021
  if (this.verbose && window && window.console) {
995
1022
  console.log(user);