mezon-js 2.12.44 → 2.12.45

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/api.gen.ts CHANGED
@@ -2700,6 +2700,8 @@ export interface ApiQuickMenuAccess {
2700
2700
  id?: string;
2701
2701
  //
2702
2702
  menu_name?: string;
2703
+ //
2704
+ menu_type?: number;
2703
2705
  }
2704
2706
 
2705
2707
  /** */
@@ -2724,6 +2726,8 @@ export interface ApiQuickMenuAccessRequest {
2724
2726
  id?: string;
2725
2727
  //
2726
2728
  menu_name?: string;
2729
+ //
2730
+ menu_type?:number;
2727
2731
  }
2728
2732
 
2729
2733
  /** */
@@ -10918,12 +10922,14 @@ export class MezonApi {
10918
10922
  listQuickMenuAccess(bearerToken: string,
10919
10923
  botId?:string,
10920
10924
  channelId?:string,
10925
+ menuType?:number,
10921
10926
  options: any = {}): Promise<ApiQuickMenuAccessList> {
10922
10927
 
10923
10928
  const urlPath = "/v2/quickmenuaccess";
10924
10929
  const queryParams = new Map<string, any>();
10925
10930
  queryParams.set("bot_id", botId);
10926
10931
  queryParams.set("channel_id", channelId);
10932
+ queryParams.set("menu_type", menuType);
10927
10933
 
10928
10934
  let bodyJson : string = "";
10929
10935
 
package/dist/api.gen.d.ts CHANGED
@@ -1543,6 +1543,7 @@ export interface ApiQuickMenuAccess {
1543
1543
  clan_id?: string;
1544
1544
  id?: string;
1545
1545
  menu_name?: string;
1546
+ menu_type?: number;
1546
1547
  }
1547
1548
  /** */
1548
1549
  export interface ApiQuickMenuAccessList {
@@ -1557,6 +1558,7 @@ export interface ApiQuickMenuAccessRequest {
1557
1558
  clan_id?: string;
1558
1559
  id?: string;
1559
1560
  menu_name?: string;
1561
+ menu_type?: number;
1560
1562
  }
1561
1563
  /** */
1562
1564
  export interface ApiUserPermissionInChannelListResponse {
@@ -2272,7 +2274,7 @@ export declare class MezonApi {
2272
2274
  /** */
2273
2275
  deleteQuickMenuAccess(bearerToken: string, id?: string, menuName?: string, background?: string, actionMsg?: string, options?: any): Promise<any>;
2274
2276
  /** */
2275
- listQuickMenuAccess(bearerToken: string, botId?: string, channelId?: string, options?: any): Promise<ApiQuickMenuAccessList>;
2277
+ listQuickMenuAccess(bearerToken: string, botId?: string, channelId?: string, menuType?: number, options?: any): Promise<ApiQuickMenuAccessList>;
2276
2278
  /** */
2277
2279
  addQuickMenuAccess(bearerToken: string, body: ApiQuickMenuAccessRequest, options?: any): Promise<any>;
2278
2280
  /** */
@@ -6688,11 +6688,12 @@ var MezonApi = class {
6688
6688
  ]);
6689
6689
  }
6690
6690
  /** */
6691
- listQuickMenuAccess(bearerToken, botId, channelId, options = {}) {
6691
+ listQuickMenuAccess(bearerToken, botId, channelId, menuType, options = {}) {
6692
6692
  const urlPath = "/v2/quickmenuaccess";
6693
6693
  const queryParams = /* @__PURE__ */ new Map();
6694
6694
  queryParams.set("bot_id", botId);
6695
6695
  queryParams.set("channel_id", channelId);
6696
+ queryParams.set("menu_type", menuType);
6696
6697
  let bodyJson = "";
6697
6698
  const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
6698
6699
  const fetchOptions = buildFetchOptions("GET", options, bodyJson);
@@ -7263,9 +7264,11 @@ var _DefaultSocket = class _DefaultSocket {
7263
7264
  } else if (message.user_status_event) {
7264
7265
  this.onuserstatusevent(message.user_status_event);
7265
7266
  } else if (message.join_channel_app_data) {
7266
- this.onJoinChannelAppEvent(message.join_channel_app_data);
7267
+ this.onjoinchannelappevent(message.join_channel_app_data);
7267
7268
  } else if (message.unpin_message_event) {
7268
- this.onUnpinMessageEvent(message.unpin_message_event);
7269
+ this.onunpinmessageevent(message.unpin_message_event);
7270
+ } else if (message.quick_menu_event) {
7271
+ this.onquickmenuevent(message.quick_menu_event);
7269
7272
  } else {
7270
7273
  if (this.verbose && window && window.console) {
7271
7274
  console.log("Unrecognized message received: %o", message);
@@ -7623,20 +7626,25 @@ var _DefaultSocket = class _DefaultSocket {
7623
7626
  console.log(user_status_event);
7624
7627
  }
7625
7628
  }
7626
- onJoinChannelAppEvent(join_channel_app_data) {
7629
+ onjoinchannelappevent(join_channel_app_data) {
7627
7630
  if (this.verbose && window && window.console) {
7628
7631
  console.log(join_channel_app_data);
7629
7632
  }
7630
7633
  }
7631
- onUnpinMessageEvent(unpin_message_event) {
7634
+ onunpinmessageevent(unpin_message_event) {
7632
7635
  if (this.verbose && window && window.console) {
7633
7636
  console.log(unpin_message_event);
7634
7637
  }
7635
7638
  }
7639
+ onquickmenuevent(event) {
7640
+ if (this.verbose && window && window.console) {
7641
+ console.log(event);
7642
+ }
7643
+ }
7636
7644
  send(message, sendTimeout = _DefaultSocket.DefaultSendTimeoutMs) {
7637
7645
  const untypedMessage = message;
7638
7646
  return new Promise((resolve, reject) => {
7639
- var _a;
7647
+ var _a, _b;
7640
7648
  if (!this.adapter.isOpen()) {
7641
7649
  reject("Socket connection has not been established yet.");
7642
7650
  } else {
@@ -7652,6 +7660,10 @@ var _DefaultSocket = class _DefaultSocket {
7652
7660
  untypedMessage.ephemeral_message_send.message.content = JSON.stringify(
7653
7661
  (_a = untypedMessage.ephemeral_message_send.message) == null ? void 0 : _a.content
7654
7662
  );
7663
+ } else if (untypedMessage.quick_menu_event) {
7664
+ untypedMessage.quick_menu_event.message.content = JSON.stringify(
7665
+ (_b = untypedMessage.quick_menu_event.message) == null ? void 0 : _b.content
7666
+ );
7655
7667
  }
7656
7668
  const cid = this.generatecid();
7657
7669
  this.cIds[cid] = { resolve, reject };
@@ -7777,6 +7789,31 @@ var _DefaultSocket = class _DefaultSocket {
7777
7789
  updateStatus(status) {
7778
7790
  return this.send({ status_update: { status } });
7779
7791
  }
7792
+ writeQuickMenuEvent(menu_name, clan_id, channel_id, mode, is_public, content, mentions, attachments, references, anonymous_message, mention_everyone, avatar, code, topic_id) {
7793
+ return __async(this, null, function* () {
7794
+ const response = yield this.send({
7795
+ quick_menu_event: {
7796
+ menu_name,
7797
+ message: {
7798
+ clan_id,
7799
+ channel_id,
7800
+ mode,
7801
+ is_public,
7802
+ content,
7803
+ mentions,
7804
+ attachments,
7805
+ references,
7806
+ anonymous_message,
7807
+ mention_everyone,
7808
+ avatar,
7809
+ code,
7810
+ topic_id
7811
+ }
7812
+ }
7813
+ });
7814
+ return response.ephemeral_message_send;
7815
+ });
7816
+ }
7780
7817
  writeEphemeralMessage(receiver_id, clan_id, channel_id, mode, is_public, content, mentions, attachments, references, anonymous_message, mention_everyone, avatar, code, topic_id) {
7781
7818
  return __async(this, null, function* () {
7782
7819
  const response = yield this.send({
@@ -6654,11 +6654,12 @@ var MezonApi = class {
6654
6654
  ]);
6655
6655
  }
6656
6656
  /** */
6657
- listQuickMenuAccess(bearerToken, botId, channelId, options = {}) {
6657
+ listQuickMenuAccess(bearerToken, botId, channelId, menuType, options = {}) {
6658
6658
  const urlPath = "/v2/quickmenuaccess";
6659
6659
  const queryParams = /* @__PURE__ */ new Map();
6660
6660
  queryParams.set("bot_id", botId);
6661
6661
  queryParams.set("channel_id", channelId);
6662
+ queryParams.set("menu_type", menuType);
6662
6663
  let bodyJson = "";
6663
6664
  const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
6664
6665
  const fetchOptions = buildFetchOptions("GET", options, bodyJson);
@@ -7229,9 +7230,11 @@ var _DefaultSocket = class _DefaultSocket {
7229
7230
  } else if (message.user_status_event) {
7230
7231
  this.onuserstatusevent(message.user_status_event);
7231
7232
  } else if (message.join_channel_app_data) {
7232
- this.onJoinChannelAppEvent(message.join_channel_app_data);
7233
+ this.onjoinchannelappevent(message.join_channel_app_data);
7233
7234
  } else if (message.unpin_message_event) {
7234
- this.onUnpinMessageEvent(message.unpin_message_event);
7235
+ this.onunpinmessageevent(message.unpin_message_event);
7236
+ } else if (message.quick_menu_event) {
7237
+ this.onquickmenuevent(message.quick_menu_event);
7235
7238
  } else {
7236
7239
  if (this.verbose && window && window.console) {
7237
7240
  console.log("Unrecognized message received: %o", message);
@@ -7589,20 +7592,25 @@ var _DefaultSocket = class _DefaultSocket {
7589
7592
  console.log(user_status_event);
7590
7593
  }
7591
7594
  }
7592
- onJoinChannelAppEvent(join_channel_app_data) {
7595
+ onjoinchannelappevent(join_channel_app_data) {
7593
7596
  if (this.verbose && window && window.console) {
7594
7597
  console.log(join_channel_app_data);
7595
7598
  }
7596
7599
  }
7597
- onUnpinMessageEvent(unpin_message_event) {
7600
+ onunpinmessageevent(unpin_message_event) {
7598
7601
  if (this.verbose && window && window.console) {
7599
7602
  console.log(unpin_message_event);
7600
7603
  }
7601
7604
  }
7605
+ onquickmenuevent(event) {
7606
+ if (this.verbose && window && window.console) {
7607
+ console.log(event);
7608
+ }
7609
+ }
7602
7610
  send(message, sendTimeout = _DefaultSocket.DefaultSendTimeoutMs) {
7603
7611
  const untypedMessage = message;
7604
7612
  return new Promise((resolve, reject) => {
7605
- var _a;
7613
+ var _a, _b;
7606
7614
  if (!this.adapter.isOpen()) {
7607
7615
  reject("Socket connection has not been established yet.");
7608
7616
  } else {
@@ -7618,6 +7626,10 @@ var _DefaultSocket = class _DefaultSocket {
7618
7626
  untypedMessage.ephemeral_message_send.message.content = JSON.stringify(
7619
7627
  (_a = untypedMessage.ephemeral_message_send.message) == null ? void 0 : _a.content
7620
7628
  );
7629
+ } else if (untypedMessage.quick_menu_event) {
7630
+ untypedMessage.quick_menu_event.message.content = JSON.stringify(
7631
+ (_b = untypedMessage.quick_menu_event.message) == null ? void 0 : _b.content
7632
+ );
7621
7633
  }
7622
7634
  const cid = this.generatecid();
7623
7635
  this.cIds[cid] = { resolve, reject };
@@ -7743,6 +7755,31 @@ var _DefaultSocket = class _DefaultSocket {
7743
7755
  updateStatus(status) {
7744
7756
  return this.send({ status_update: { status } });
7745
7757
  }
7758
+ writeQuickMenuEvent(menu_name, clan_id, channel_id, mode, is_public, content, mentions, attachments, references, anonymous_message, mention_everyone, avatar, code, topic_id) {
7759
+ return __async(this, null, function* () {
7760
+ const response = yield this.send({
7761
+ quick_menu_event: {
7762
+ menu_name,
7763
+ message: {
7764
+ clan_id,
7765
+ channel_id,
7766
+ mode,
7767
+ is_public,
7768
+ content,
7769
+ mentions,
7770
+ attachments,
7771
+ references,
7772
+ anonymous_message,
7773
+ mention_everyone,
7774
+ avatar,
7775
+ code,
7776
+ topic_id
7777
+ }
7778
+ }
7779
+ });
7780
+ return response.ephemeral_message_send;
7781
+ });
7782
+ }
7746
7783
  writeEphemeralMessage(receiver_id, clan_id, channel_id, mode, is_public, content, mentions, attachments, references, anonymous_message, mention_everyone, avatar, code, topic_id) {
7747
7784
  return __async(this, null, function* () {
7748
7785
  const response = yield this.send({
package/dist/socket.d.ts CHANGED
@@ -242,6 +242,29 @@ interface ChannelMessageSend {
242
242
  topic_id?: string;
243
243
  };
244
244
  }
245
+ interface QuickMenuEvent {
246
+ quick_menu_event: {
247
+ menu_name: string;
248
+ message: {
249
+ /** Clan Id */
250
+ clan_id: string;
251
+ /** The server-assigned channel ID. */
252
+ channel_id: string;
253
+ mode: number;
254
+ channel_label: string;
255
+ /** The content payload. */
256
+ content: any;
257
+ mentions?: Array<ApiMessageMention>;
258
+ attachments?: Array<ApiMessageAttachment>;
259
+ anonymous_message?: boolean;
260
+ mention_everyone?: boolean;
261
+ avatar: string;
262
+ is_public: boolean;
263
+ code: number;
264
+ topic_id?: string;
265
+ };
266
+ };
267
+ }
245
268
  interface EphemeralMessageSend {
246
269
  ephemeral_message_send: {
247
270
  receiver_id: string;
@@ -880,6 +903,8 @@ export interface Socket {
880
903
  writeChatMessage(clan_id: string, channel_id: string, mode: number, is_public: boolean, content?: any, mentions?: Array<ApiMessageMention>, attachments?: Array<ApiMessageAttachment>, references?: Array<ApiMessageRef>, anonymous_message?: boolean, mention_everyone?: boolean, avatar?: string, code?: number, topic_id?: string): Promise<ChannelMessageAck>;
881
904
  /** Send a chat message to a chat channel on the server. */
882
905
  writeEphemeralMessage(receiver_id: string, clan_id: string, channel_id: string, mode: number, is_public: boolean, content?: any, mentions?: Array<ApiMessageMention>, attachments?: Array<ApiMessageAttachment>, references?: Array<ApiMessageRef>, anonymous_message?: boolean, mention_everyone?: boolean, avatar?: string, code?: number, topic_id?: string): Promise<ChannelMessageAck>;
906
+ /** Send a quick menu event to a chat channel on the server. */
907
+ writeQuickMenuEvent(menu_name: string, clan_id: string, channel_id: string, mode: number, is_public: boolean, content?: any, mentions?: Array<ApiMessageMention>, attachments?: Array<ApiMessageAttachment>, references?: Array<ApiMessageRef>, anonymous_message?: boolean, mention_everyone?: boolean, avatar?: string, code?: number, topic_id?: string): Promise<QuickMenuEvent>;
883
908
  /** Send message typing */
884
909
  writeMessageTyping(clan_id: string, channel_id: string, mode: number, is_public: boolean, sender_display_name: string): Promise<MessageTypingEvent>;
885
910
  /** Send message reaction */
@@ -983,8 +1008,9 @@ export interface Socket {
983
1008
  onsdtopicevent: (sd_topic_event: SdTopicEvent) => void;
984
1009
  onchannelappevent: (event: ChannelAppEvent) => void;
985
1010
  onuserstatusevent: (user_status_event: UserStatusEvent) => void;
986
- onJoinChannelAppEvent: (join_channel_app_data: JoinChannelAppData) => void;
987
- onUnpinMessageEvent: (unpin_message_event: UnpinMessageEvent) => void;
1011
+ onjoinchannelappevent: (join_channel_app_data: JoinChannelAppData) => void;
1012
+ onunpinmessageevent: (unpin_message_event: UnpinMessageEvent) => void;
1013
+ onquickmenuevent: (event: QuickMenuEvent) => void;
988
1014
  }
989
1015
  /** Reports an error received from a socket message. */
990
1016
  export interface SocketError {
@@ -1075,9 +1101,10 @@ export declare class DefaultSocket implements Socket {
1075
1101
  onsdtopicevent(sd_topic_event: SdTopicEvent): void;
1076
1102
  onchannelappevent(event: ChannelAppEvent): void;
1077
1103
  onuserstatusevent(user_status_event: UserStatusEvent): void;
1078
- onJoinChannelAppEvent(join_channel_app_data: JoinChannelAppData): void;
1079
- onUnpinMessageEvent(unpin_message_event: UnpinMessageEvent): void;
1080
- send(message: ChannelJoin | ChannelLeave | ChannelMessageSend | ChannelMessageUpdate | CustomStatusEvent | ChannelMessageRemove | MessageTypingEvent | LastSeenMessageEvent | Rpc | StatusFollow | StatusUnfollow | StatusUpdate | Ping | WebrtcSignalingFwd | IncomingCallPush | MessageButtonClicked | DropdownBoxSelected | ChannelAppEvent | EphemeralMessageSend | VoiceReactionSend | ListDataSocket, sendTimeout?: number): Promise<any>;
1104
+ onjoinchannelappevent(join_channel_app_data: JoinChannelAppData): void;
1105
+ onunpinmessageevent(unpin_message_event: UnpinMessageEvent): void;
1106
+ onquickmenuevent(event: QuickMenuEvent): void;
1107
+ send(message: ChannelJoin | ChannelLeave | ChannelMessageSend | ChannelMessageUpdate | CustomStatusEvent | ChannelMessageRemove | MessageTypingEvent | LastSeenMessageEvent | Rpc | StatusFollow | StatusUnfollow | StatusUpdate | Ping | WebrtcSignalingFwd | IncomingCallPush | MessageButtonClicked | DropdownBoxSelected | ChannelAppEvent | EphemeralMessageSend | VoiceReactionSend | ListDataSocket | QuickMenuEvent, sendTimeout?: number): Promise<any>;
1081
1108
  followUsers(userIds: string[]): Promise<Status>;
1082
1109
  joinClanChat(clan_id: string): Promise<ClanJoin>;
1083
1110
  follower(): Promise<void>;
@@ -1089,6 +1116,7 @@ export declare class DefaultSocket implements Socket {
1089
1116
  unfollowUsers(user_ids: string[]): Promise<void>;
1090
1117
  updateChatMessage(clan_id: string, channel_id: string, mode: number, is_public: boolean, message_id: string, content: any, mentions?: Array<ApiMessageMention>, attachments?: Array<ApiMessageAttachment>, hideEditted?: boolean, topic_id?: string, is_update_msg_topic?: boolean): Promise<ChannelMessageAck>;
1091
1118
  updateStatus(status?: string): Promise<void>;
1119
+ writeQuickMenuEvent(menu_name: string, clan_id: string, channel_id: string, mode: number, is_public: boolean, content: any, mentions?: Array<ApiMessageMention>, attachments?: Array<ApiMessageAttachment>, references?: Array<ApiMessageRef>, anonymous_message?: boolean, mention_everyone?: Boolean, avatar?: string, code?: number, topic_id?: string): Promise<QuickMenuEvent>;
1092
1120
  writeEphemeralMessage(receiver_id: string, clan_id: string, channel_id: string, mode: number, is_public: boolean, content: any, mentions?: Array<ApiMessageMention>, attachments?: Array<ApiMessageAttachment>, references?: Array<ApiMessageRef>, anonymous_message?: boolean, mention_everyone?: Boolean, avatar?: string, code?: number, topic_id?: string): Promise<ChannelMessageAck>;
1093
1121
  writeChatMessage(clan_id: string, channel_id: string, mode: number, is_public: boolean, content: any, mentions?: Array<ApiMessageMention>, attachments?: Array<ApiMessageAttachment>, references?: Array<ApiMessageRef>, anonymous_message?: boolean, mention_everyone?: Boolean, avatar?: string, code?: number, topic_id?: string): Promise<ChannelMessageAck>;
1094
1122
  writeMessageReaction(id: string, clan_id: string, channel_id: string, mode: number, is_public: boolean, message_id: string, emoji_id: string, emoji: string, count: number, message_sender_id: string, action_delete: boolean, topic_id?: string, emoji_recent_id?: string, sender_name?: string): Promise<ApiMessageReaction>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mezon-js",
3
- "version": "2.12.44",
3
+ "version": "2.12.45",
4
4
  "scripts": {
5
5
  "build": "npx tsc && npx rollup -c --bundleConfigAsCjs && node build.mjs"
6
6
  },
package/socket.ts CHANGED
@@ -389,6 +389,40 @@ interface ChannelMessageSend {
389
389
  };
390
390
  }
391
391
 
392
+ interface QuickMenuEvent {
393
+ quick_menu_event: {
394
+ menu_name: string,
395
+ message: {
396
+ /** Clan Id */
397
+ clan_id: string;
398
+ /** The server-assigned channel ID. */
399
+ channel_id: string;
400
+ // The mode
401
+ mode: number;
402
+ // channel label
403
+ channel_label: string;
404
+ /** The content payload. */
405
+ content: any;
406
+ //
407
+ mentions?: Array<ApiMessageMention>;
408
+ //
409
+ attachments?: Array<ApiMessageAttachment>;
410
+ //
411
+ anonymous_message?: boolean;
412
+ //
413
+ mention_everyone?: boolean;
414
+ //
415
+ avatar: string;
416
+ // Is public
417
+ is_public: boolean;
418
+ // code
419
+ code: number;
420
+ //
421
+ topic_id?: string;
422
+ }
423
+ }
424
+ }
425
+
392
426
  interface EphemeralMessageSend {
393
427
  ephemeral_message_send: {
394
428
  receiver_id: string,
@@ -1406,6 +1440,24 @@ export interface Socket {
1406
1440
  topic_id?: string
1407
1441
  ): Promise<ChannelMessageAck>;
1408
1442
 
1443
+ /** Send a quick menu event to a chat channel on the server. */
1444
+ writeQuickMenuEvent(
1445
+ menu_name: string,
1446
+ clan_id: string,
1447
+ channel_id: string,
1448
+ mode: number,
1449
+ is_public: boolean,
1450
+ content?: any,
1451
+ mentions?: Array<ApiMessageMention>,
1452
+ attachments?: Array<ApiMessageAttachment>,
1453
+ references?: Array<ApiMessageRef>,
1454
+ anonymous_message?: boolean,
1455
+ mention_everyone?: boolean,
1456
+ avatar?: string,
1457
+ code?: number,
1458
+ topic_id?: string
1459
+ ): Promise<QuickMenuEvent>;
1460
+
1409
1461
  /** Send message typing */
1410
1462
  writeMessageTyping(
1411
1463
  clan_id: string,
@@ -1694,9 +1746,11 @@ export interface Socket {
1694
1746
 
1695
1747
  onuserstatusevent: (user_status_event: UserStatusEvent) => void;
1696
1748
 
1697
- onJoinChannelAppEvent: (join_channel_app_data: JoinChannelAppData) => void;
1749
+ onjoinchannelappevent: (join_channel_app_data: JoinChannelAppData) => void;
1750
+
1751
+ onunpinmessageevent: (unpin_message_event: UnpinMessageEvent)=> void;
1698
1752
 
1699
- onUnpinMessageEvent: (unpin_message_event: UnpinMessageEvent)=> void;
1753
+ onquickmenuevent: (event: QuickMenuEvent) => void;
1700
1754
  }
1701
1755
 
1702
1756
  /** Reports an error received from a socket message. */
@@ -1937,9 +1991,11 @@ export class DefaultSocket implements Socket {
1937
1991
  } else if (message.user_status_event) {
1938
1992
  this.onuserstatusevent(<UserStatusEvent>message.user_status_event);
1939
1993
  } else if (message.join_channel_app_data) {
1940
- this.onJoinChannelAppEvent(<JoinChannelAppData>message.join_channel_app_data);
1994
+ this.onjoinchannelappevent(<JoinChannelAppData>message.join_channel_app_data);
1941
1995
  } else if (message.unpin_message_event) {
1942
- this.onUnpinMessageEvent(<UnpinMessageEvent>message.unpin_message_event);
1996
+ this.onunpinmessageevent(<UnpinMessageEvent>message.unpin_message_event);
1997
+ } else if (message.quick_menu_event) {
1998
+ this.onquickmenuevent(<QuickMenuEvent>message.quick_menu_event);
1943
1999
  } else {
1944
2000
  if (this.verbose && window && window.console) {
1945
2001
  console.log("Unrecognized message received: %o", message);
@@ -2367,18 +2423,24 @@ export class DefaultSocket implements Socket {
2367
2423
  }
2368
2424
  }
2369
2425
 
2370
- onJoinChannelAppEvent(join_channel_app_data: JoinChannelAppData) {
2426
+ onjoinchannelappevent(join_channel_app_data: JoinChannelAppData) {
2371
2427
  if (this.verbose && window && window.console) {
2372
2428
  console.log(join_channel_app_data);
2373
2429
  }
2374
2430
  }
2375
2431
 
2376
- onUnpinMessageEvent(unpin_message_event: UnpinMessageEvent) {
2432
+ onunpinmessageevent(unpin_message_event: UnpinMessageEvent) {
2377
2433
  if (this.verbose && window && window.console) {
2378
2434
  console.log(unpin_message_event);
2379
2435
  }
2380
2436
  }
2381
2437
 
2438
+ onquickmenuevent(event: QuickMenuEvent) {
2439
+ if (this.verbose && window && window.console) {
2440
+ console.log(event);
2441
+ }
2442
+ }
2443
+
2382
2444
  send(
2383
2445
  message:
2384
2446
  | ChannelJoin
@@ -2401,7 +2463,8 @@ export class DefaultSocket implements Socket {
2401
2463
  | ChannelAppEvent
2402
2464
  | EphemeralMessageSend
2403
2465
  | VoiceReactionSend
2404
- | ListDataSocket,
2466
+ | ListDataSocket
2467
+ | QuickMenuEvent,
2405
2468
  sendTimeout = DefaultSocket.DefaultSendTimeoutMs
2406
2469
  ): Promise<any> {
2407
2470
  const untypedMessage = message as any;
@@ -2422,6 +2485,10 @@ export class DefaultSocket implements Socket {
2422
2485
  untypedMessage.ephemeral_message_send.message.content = JSON.stringify(
2423
2486
  untypedMessage.ephemeral_message_send.message?.content
2424
2487
  );
2488
+ } else if (untypedMessage.quick_menu_event) {
2489
+ untypedMessage.quick_menu_event.message.content = JSON.stringify(
2490
+ untypedMessage.quick_menu_event.message?.content
2491
+ );
2425
2492
  }
2426
2493
 
2427
2494
  const cid = this.generatecid();
@@ -2587,6 +2654,45 @@ export class DefaultSocket implements Socket {
2587
2654
  return this.send({ status_update: { status: status } });
2588
2655
  }
2589
2656
 
2657
+ async writeQuickMenuEvent(
2658
+ menu_name: string,
2659
+ clan_id: string,
2660
+ channel_id: string,
2661
+ mode: number,
2662
+ is_public: boolean,
2663
+ content: any,
2664
+ mentions?: Array<ApiMessageMention>,
2665
+ attachments?: Array<ApiMessageAttachment>,
2666
+ references?: Array<ApiMessageRef>,
2667
+ anonymous_message?: boolean,
2668
+ mention_everyone?: Boolean,
2669
+ avatar?: string,
2670
+ code?: number,
2671
+ topic_id?: string
2672
+ ): Promise<QuickMenuEvent> {
2673
+ const response = await this.send({
2674
+ quick_menu_event: {
2675
+ menu_name: menu_name,
2676
+ message: {
2677
+ clan_id: clan_id,
2678
+ channel_id: channel_id,
2679
+ mode: mode,
2680
+ is_public: is_public,
2681
+ content: content,
2682
+ mentions: mentions,
2683
+ attachments: attachments,
2684
+ references: references,
2685
+ anonymous_message: anonymous_message,
2686
+ mention_everyone: mention_everyone,
2687
+ avatar: avatar,
2688
+ code: code,
2689
+ topic_id: topic_id,
2690
+ }
2691
+ }
2692
+ });
2693
+ return response.ephemeral_message_send;
2694
+ }
2695
+
2590
2696
  async writeEphemeralMessage(
2591
2697
  receiver_id: string,
2592
2698
  clan_id: string,