mezon-js 2.9.2 → 2.9.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/api.gen.ts CHANGED
@@ -1638,6 +1638,8 @@ export interface ApiUpdateRoleChannelRequest {
1638
1638
  permission_update?: Array<ApiPermissionUpdate>;
1639
1639
  //The ID of the role to update.
1640
1640
  role_id?: string;
1641
+ //
1642
+ user_id?: string;
1641
1643
  }
1642
1644
 
1643
1645
  /** Fetch a batch of zero or more users from the server. */
package/dist/api.gen.d.ts CHANGED
@@ -949,6 +949,7 @@ export interface ApiUpdateRoleChannelRequest {
949
949
  max_permission_id: string;
950
950
  permission_update?: Array<ApiPermissionUpdate>;
951
951
  role_id?: string;
952
+ user_id?: string;
952
953
  }
953
954
  /** Fetch a batch of zero or more users from the server. */
954
955
  export interface ApiUpdateUsersRequest {
@@ -4916,12 +4916,18 @@ var WebSocketAdapterText = class {
4916
4916
  var _a;
4917
4917
  return ((_a = this._socket) == null ? void 0 : _a.readyState) == WebSocket.OPEN;
4918
4918
  }
4919
- connect(scheme, host, port, createStatus, token) {
4919
+ connect(scheme, host, port, createStatus, token, signal) {
4920
+ if (signal) {
4921
+ signal.addEventListener("abort", () => {
4922
+ this.close();
4923
+ });
4924
+ }
4920
4925
  const url = `${scheme}${host}:${port}/ws?lang=en&status=${encodeURIComponent(createStatus.toString())}&token=${encodeURIComponent(token)}`;
4921
4926
  this._socket = new WebSocket(url);
4922
4927
  }
4923
4928
  close() {
4924
- this._socket.close();
4929
+ var _a;
4930
+ (_a = this._socket) == null ? void 0 : _a.close();
4925
4931
  this._socket = void 0;
4926
4932
  }
4927
4933
  send(msg) {
@@ -4959,12 +4965,12 @@ var _DefaultSocket = class _DefaultSocket {
4959
4965
  isOpen() {
4960
4966
  return this.adapter.isOpen();
4961
4967
  }
4962
- connect(session, createStatus = false, connectTimeoutMs = _DefaultSocket.DefaultConnectTimeoutMs) {
4968
+ connect(session, createStatus = false, connectTimeoutMs = _DefaultSocket.DefaultConnectTimeoutMs, signal) {
4963
4969
  if (this.adapter.isOpen()) {
4964
4970
  return Promise.resolve(session);
4965
4971
  }
4966
4972
  const scheme = this.useSSL ? "wss://" : "ws://";
4967
- this.adapter.connect(scheme, this.host, this.port, createStatus, session.token);
4973
+ this.adapter.connect(scheme, this.host, this.port, createStatus, session.token, signal);
4968
4974
  this.adapter.onClose = (evt) => {
4969
4975
  this.ondisconnect(evt);
4970
4976
  };
@@ -5549,9 +5555,9 @@ var _DefaultSocket = class _DefaultSocket {
5549
5555
  return response.hashtag_dm_list_event;
5550
5556
  });
5551
5557
  }
5552
- getPermissionByRoleIdChannelId(role_id, channel_id) {
5558
+ getPermissionByRoleIdChannelId(role_id, channel_id, user_id) {
5553
5559
  return __async(this, null, function* () {
5554
- const response = yield this.send({ permission_role_channel_list_event: { role_id, channel_id } });
5560
+ const response = yield this.send({ permission_role_channel_list_event: { role_id, channel_id, user_id } });
5555
5561
  return response.permission_role_channel_list_event;
5556
5562
  });
5557
5563
  }
@@ -4887,12 +4887,18 @@ var WebSocketAdapterText = class {
4887
4887
  var _a;
4888
4888
  return ((_a = this._socket) == null ? void 0 : _a.readyState) == WebSocket.OPEN;
4889
4889
  }
4890
- connect(scheme, host, port, createStatus, token) {
4890
+ connect(scheme, host, port, createStatus, token, signal) {
4891
+ if (signal) {
4892
+ signal.addEventListener("abort", () => {
4893
+ this.close();
4894
+ });
4895
+ }
4891
4896
  const url = `${scheme}${host}:${port}/ws?lang=en&status=${encodeURIComponent(createStatus.toString())}&token=${encodeURIComponent(token)}`;
4892
4897
  this._socket = new WebSocket(url);
4893
4898
  }
4894
4899
  close() {
4895
- this._socket.close();
4900
+ var _a;
4901
+ (_a = this._socket) == null ? void 0 : _a.close();
4896
4902
  this._socket = void 0;
4897
4903
  }
4898
4904
  send(msg) {
@@ -4930,12 +4936,12 @@ var _DefaultSocket = class _DefaultSocket {
4930
4936
  isOpen() {
4931
4937
  return this.adapter.isOpen();
4932
4938
  }
4933
- connect(session, createStatus = false, connectTimeoutMs = _DefaultSocket.DefaultConnectTimeoutMs) {
4939
+ connect(session, createStatus = false, connectTimeoutMs = _DefaultSocket.DefaultConnectTimeoutMs, signal) {
4934
4940
  if (this.adapter.isOpen()) {
4935
4941
  return Promise.resolve(session);
4936
4942
  }
4937
4943
  const scheme = this.useSSL ? "wss://" : "ws://";
4938
- this.adapter.connect(scheme, this.host, this.port, createStatus, session.token);
4944
+ this.adapter.connect(scheme, this.host, this.port, createStatus, session.token, signal);
4939
4945
  this.adapter.onClose = (evt) => {
4940
4946
  this.ondisconnect(evt);
4941
4947
  };
@@ -5520,9 +5526,9 @@ var _DefaultSocket = class _DefaultSocket {
5520
5526
  return response.hashtag_dm_list_event;
5521
5527
  });
5522
5528
  }
5523
- getPermissionByRoleIdChannelId(role_id, channel_id) {
5529
+ getPermissionByRoleIdChannelId(role_id, channel_id, user_id) {
5524
5530
  return __async(this, null, function* () {
5525
- const response = yield this.send({ permission_role_channel_list_event: { role_id, channel_id } });
5531
+ const response = yield this.send({ permission_role_channel_list_event: { role_id, channel_id, user_id } });
5526
5532
  return response.permission_role_channel_list_event;
5527
5533
  });
5528
5534
  }
package/dist/socket.d.ts CHANGED
@@ -642,7 +642,7 @@ export interface Socket {
642
642
  /** Connection is Open */
643
643
  isOpen(): boolean;
644
644
  /** Connect to the server. */
645
- connect(session: Session, createStatus: boolean): Promise<Session>;
645
+ connect(session: Session, createStatus: boolean, connectTimeoutMs?: number, signal?: AbortSignal): Promise<Session>;
646
646
  /** Disconnect from the server. */
647
647
  disconnect(fireDisconnectEvent: boolean): void;
648
648
  /** Subscribe to one or more users for their status updates. */
@@ -748,7 +748,7 @@ export interface Socket {
748
748
  getNotificationCategorySetting(category_id: string): Promise<NotificationCategorySettingEvent>;
749
749
  getNotificationClanSetting(clan_id: string): Promise<NotificationClanSettingEvent>;
750
750
  getNotificationReactMessage(channel_id_req: string): Promise<NotifiReactMessageEvent>;
751
- getPermissionByRoleIdChannelId(role_id: string, channel_id: string): Promise<PermissionRoleChannelListEvent>;
751
+ getPermissionByRoleIdChannelId(role_id: string, channel_id: string, user_id: string): Promise<PermissionRoleChannelListEvent>;
752
752
  getNotificationChannelCategorySetting(clan_id: string): Promise<NotificationChannelCategorySettingEvent>;
753
753
  oneventcreated: (clan_event_created: ApiCreateEventRequest) => void;
754
754
  oncoffeegiven: (give_coffee_event: ApiGiveCoffeeEvent) => void;
@@ -783,7 +783,7 @@ export declare class DefaultSocket implements Socket {
783
783
  constructor(host: string, port: string, useSSL?: boolean, verbose?: boolean, adapter?: WebSocketAdapter, sendTimeoutMs?: number);
784
784
  generatecid(): string;
785
785
  isOpen(): boolean;
786
- connect(session: Session, createStatus?: boolean, connectTimeoutMs?: number): Promise<Session>;
786
+ connect(session: Session, createStatus?: boolean, connectTimeoutMs?: number, signal?: AbortSignal): Promise<Session>;
787
787
  disconnect(fireDisconnectEvent?: boolean): void;
788
788
  setHeartbeatTimeoutMs(ms: number): void;
789
789
  getHeartbeatTimeoutMs(): number;
@@ -853,7 +853,7 @@ export declare class DefaultSocket implements Socket {
853
853
  listUserClansByUserId(): Promise<AllUserClans>;
854
854
  listUsersAddChannelByChannelId(channelId: string, limit: number): Promise<AllUsersAddChannelEvent>;
855
855
  hashtagDMList(user_id: Array<string>, limit: number): Promise<HashtagDmListEvent>;
856
- getPermissionByRoleIdChannelId(role_id: string, channel_id: string): Promise<PermissionRoleChannelListEvent>;
856
+ getPermissionByRoleIdChannelId(role_id: string, channel_id: string, user_id: string): Promise<PermissionRoleChannelListEvent>;
857
857
  listStickersByUserId(): Promise<StrickerListedEvent>;
858
858
  getNotificationChannelSetting(channel_id: string): Promise<NotificationChannelSettingEvent>;
859
859
  getNotificationCategorySetting(category_id: string): Promise<NotificationCategorySettingEvent>;
@@ -35,7 +35,7 @@ export interface WebSocketAdapter {
35
35
  onOpen: SocketOpenHandler | null;
36
36
  isOpen(): boolean;
37
37
  close(): void;
38
- connect(scheme: string, host: string, port: string, createStatus: boolean, token: string): void;
38
+ connect(scheme: string, host: string, port: string, createStatus: boolean, token: string, signal?: AbortSignal): void;
39
39
  send(message: any): void;
40
40
  }
41
41
  /**
@@ -77,7 +77,7 @@ export declare class WebSocketAdapterText implements WebSocketAdapter {
77
77
  get onOpen(): SocketOpenHandler | null;
78
78
  set onOpen(value: SocketOpenHandler | null);
79
79
  isOpen(): boolean;
80
- connect(scheme: string, host: string, port: string, createStatus: boolean, token: string): void;
80
+ connect(scheme: string, host: string, port: string, createStatus: boolean, token: string, signal?: AbortSignal): void;
81
81
  close(): void;
82
82
  send(msg: any): void;
83
83
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mezon-js",
3
3
 
4
- "version": "2.9.2",
4
+ "version": "2.9.4",
5
5
 
6
6
  "scripts": {
7
7
  "build": "npx tsc && npx rollup -c --bundleConfigAsCjs && node build.mjs"
package/socket.ts CHANGED
@@ -935,7 +935,7 @@ export interface Socket {
935
935
  isOpen(): boolean;
936
936
 
937
937
  /** Connect to the server. */
938
- connect(session: Session, createStatus: boolean): Promise<Session>;
938
+ connect(session: Session, createStatus: boolean, connectTimeoutMs?: number, signal?: AbortSignal): Promise<Session>;
939
939
 
940
940
  /** Disconnect from the server. */
941
941
  disconnect(fireDisconnectEvent: boolean): void;
@@ -1122,7 +1122,7 @@ export interface Socket {
1122
1122
 
1123
1123
  getNotificationReactMessage(channel_id_req: string): Promise<NotifiReactMessageEvent>;
1124
1124
 
1125
- getPermissionByRoleIdChannelId(role_id: string, channel_id: string): Promise<PermissionRoleChannelListEvent>;
1125
+ getPermissionByRoleIdChannelId(role_id: string, channel_id: string, user_id: string): Promise<PermissionRoleChannelListEvent>;
1126
1126
 
1127
1127
  getNotificationChannelCategorySetting(clan_id : string): Promise<NotificationChannelCategorySettingEvent>;
1128
1128
 
@@ -1185,13 +1185,13 @@ export class DefaultSocket implements Socket {
1185
1185
  return this.adapter.isOpen();
1186
1186
  }
1187
1187
 
1188
- connect(session: Session, createStatus: boolean = false, connectTimeoutMs: number = DefaultSocket.DefaultConnectTimeoutMs): Promise<Session> {
1188
+ connect(session: Session, createStatus: boolean = false, connectTimeoutMs: number = DefaultSocket.DefaultConnectTimeoutMs, signal?: AbortSignal): Promise<Session> {
1189
1189
  if (this.adapter.isOpen()) {
1190
1190
  return Promise.resolve(session);
1191
1191
  }
1192
1192
 
1193
1193
  const scheme = (this.useSSL) ? "wss://" : "ws://";
1194
- this.adapter.connect(scheme, this.host, this.port, createStatus, session.token);
1194
+ this.adapter.connect(scheme, this.host, this.port, createStatus, session.token, signal);
1195
1195
 
1196
1196
  this.adapter.onClose = (evt: Event) => {
1197
1197
  this.ondisconnect(evt);
@@ -1828,8 +1828,8 @@ export class DefaultSocket implements Socket {
1828
1828
  return response.hashtag_dm_list_event
1829
1829
  }
1830
1830
 
1831
- async getPermissionByRoleIdChannelId(role_id: string, channel_id: string): Promise<PermissionRoleChannelListEvent> {
1832
- const response = await this.send({permission_role_channel_list_event: {role_id: role_id, channel_id: channel_id }});
1831
+ async getPermissionByRoleIdChannelId(role_id: string, channel_id: string, user_id: string): Promise<PermissionRoleChannelListEvent> {
1832
+ const response = await this.send({permission_role_channel_list_event: {role_id: role_id, channel_id: channel_id, user_id: user_id }});
1833
1833
  return response.permission_role_channel_list_event
1834
1834
  }
1835
1835
 
@@ -25,34 +25,34 @@ export interface WebSocketAdapter {
25
25
  /**
26
26
  * Dispatched when the web socket closes.
27
27
  */
28
- onClose : SocketCloseHandler | null;
28
+ onClose: SocketCloseHandler | null;
29
29
 
30
30
  /**
31
31
  * Dispatched when the web socket receives an error.
32
32
  */
33
- onError : SocketErrorHandler | null;
33
+ onError: SocketErrorHandler | null;
34
34
 
35
35
  /**
36
36
  * Dispatched when the web socket receives a normal message.
37
37
  */
38
- onMessage : SocketMessageHandler | null;
38
+ onMessage: SocketMessageHandler | null;
39
39
 
40
40
  /**
41
41
  * Dispatched when the web socket opens.
42
42
  */
43
- onOpen : SocketOpenHandler | null;
43
+ onOpen: SocketOpenHandler | null;
44
44
 
45
45
  isOpen(): boolean;
46
- close() : void;
47
- connect(scheme: string, host: string, port : string, createStatus: boolean, token : string) : void;
48
- send(message: any) : void;
46
+ close(): void;
47
+ connect(scheme: string, host: string, port: string, createStatus: boolean, token: string, signal?: AbortSignal): void;
48
+ send(message: any): void;
49
49
  }
50
50
 
51
51
  /**
52
52
  * SocketCloseHandler defines a lambda that handles WebSocket close events.
53
53
  */
54
54
  export interface SocketCloseHandler {
55
- (this : WebSocket, evt: CloseEvent): void;
55
+ (this: WebSocket, evt: CloseEvent): void;
56
56
  }
57
57
 
58
58
  /**
@@ -60,7 +60,7 @@ export interface SocketCloseHandler {
60
60
  * that indicate an error.
61
61
  */
62
62
  export interface SocketErrorHandler {
63
- (this : WebSocket, evt: Event): void;
63
+ (this: WebSocket, evt: Event): void;
64
64
  }
65
65
 
66
66
  /**
@@ -74,7 +74,7 @@ export interface SocketMessageHandler {
74
74
  * SocketOpenHandler defines a lambda that handles WebSocket open events.
75
75
  */
76
76
  export interface SocketOpenHandler {
77
- (this : WebSocket, evt : Event) : void
77
+ (this: WebSocket, evt: Event): void
78
78
  }
79
79
 
80
80
  /**
@@ -107,7 +107,6 @@ export class WebSocketAdapterText implements WebSocketAdapter {
107
107
  if (value) {
108
108
  this._socket!.onmessage = (evt: MessageEvent) => {
109
109
  const message: any = JSON.parse(evt.data);
110
-
111
110
  if (message.party_data && message.party_data.data) {
112
111
  message.party_data.data = new Uint8Array(decode(message.party_data.data));
113
112
  }
@@ -132,13 +131,18 @@ export class WebSocketAdapterText implements WebSocketAdapter {
132
131
  return this._socket?.readyState == WebSocket.OPEN;
133
132
  }
134
133
 
135
- connect(scheme: string, host: string, port: string, createStatus: boolean, token: string): void {
134
+ connect(scheme: string, host: string, port: string, createStatus: boolean, token: string, signal?: AbortSignal): void {
135
+ if (signal) {
136
+ signal.addEventListener('abort', () => {
137
+ this.close();
138
+ });
139
+ }
136
140
  const url = `${scheme}${host}:${port}/ws?lang=en&status=${encodeURIComponent(createStatus.toString())}&token=${encodeURIComponent(token)}`;
137
141
  this._socket = new WebSocket(url);
138
142
  }
139
143
 
140
144
  close() {
141
- this._socket!.close();
145
+ this._socket?.close();
142
146
  this._socket = undefined;
143
147
  }
144
148