mezon-sdk 2.7.95 → 2.7.96

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.
Files changed (61) hide show
  1. package/dist/cjs/api.d.ts +2 -0
  2. package/dist/cjs/api.js +55 -1
  3. package/dist/cjs/api.js.map +1 -1
  4. package/dist/cjs/constants/enum.d.ts +5 -2
  5. package/dist/cjs/constants/enum.js +3 -0
  6. package/dist/cjs/constants/enum.js.map +1 -1
  7. package/dist/cjs/mezon-client/client/MezonClient.d.ts +8 -2
  8. package/dist/cjs/mezon-client/client/MezonClient.js +111 -58
  9. package/dist/cjs/mezon-client/client/MezonClient.js.map +1 -1
  10. package/dist/cjs/mezon-client/manager/channel_manager.js +2 -1
  11. package/dist/cjs/mezon-client/manager/channel_manager.js.map +1 -1
  12. package/dist/cjs/mezon-client/manager/socket_manager.d.ts +4 -4
  13. package/dist/cjs/mezon-client/manager/socket_manager.js +16 -17
  14. package/dist/cjs/mezon-client/manager/socket_manager.js.map +1 -1
  15. package/dist/cjs/mezon-client/structures/Clan.d.ts +3 -1
  16. package/dist/cjs/mezon-client/structures/Clan.js +15 -6
  17. package/dist/cjs/mezon-client/structures/Clan.js.map +1 -1
  18. package/dist/cjs/mezon-client/structures/TextChannel.d.ts +3 -1
  19. package/dist/cjs/mezon-client/structures/TextChannel.js +9 -5
  20. package/dist/cjs/mezon-client/structures/TextChannel.js.map +1 -1
  21. package/dist/cjs/mezon-client/structures/User.d.ts +2 -2
  22. package/dist/cjs/mezon-client/structures/User.js +22 -10
  23. package/dist/cjs/mezon-client/structures/User.js.map +1 -1
  24. package/dist/cjs/sqlite/MessageDatabase.d.ts +9 -0
  25. package/dist/cjs/sqlite/MessageDatabase.js +79 -0
  26. package/dist/cjs/sqlite/MessageDatabase.js.map +1 -0
  27. package/dist/cjs/utils/helper.d.ts +3 -2
  28. package/dist/cjs/utils/helper.js +5 -13
  29. package/dist/cjs/utils/helper.js.map +1 -1
  30. package/dist/esm/api.d.ts +2 -0
  31. package/dist/esm/api.js +55 -1
  32. package/dist/esm/api.js.map +1 -1
  33. package/dist/esm/constants/enum.d.ts +5 -2
  34. package/dist/esm/constants/enum.js +3 -0
  35. package/dist/esm/constants/enum.js.map +1 -1
  36. package/dist/esm/mezon-client/client/MezonClient.d.ts +8 -2
  37. package/dist/esm/mezon-client/client/MezonClient.js +111 -57
  38. package/dist/esm/mezon-client/client/MezonClient.js.map +1 -1
  39. package/dist/esm/mezon-client/manager/channel_manager.js +1 -1
  40. package/dist/esm/mezon-client/manager/channel_manager.js.map +1 -1
  41. package/dist/esm/mezon-client/manager/socket_manager.d.ts +4 -4
  42. package/dist/esm/mezon-client/manager/socket_manager.js +17 -19
  43. package/dist/esm/mezon-client/manager/socket_manager.js.map +1 -1
  44. package/dist/esm/mezon-client/structures/Clan.d.ts +3 -1
  45. package/dist/esm/mezon-client/structures/Clan.js +16 -6
  46. package/dist/esm/mezon-client/structures/Clan.js.map +1 -1
  47. package/dist/esm/mezon-client/structures/TextChannel.d.ts +3 -1
  48. package/dist/esm/mezon-client/structures/TextChannel.js +10 -5
  49. package/dist/esm/mezon-client/structures/TextChannel.js.map +1 -1
  50. package/dist/esm/mezon-client/structures/User.d.ts +2 -2
  51. package/dist/esm/mezon-client/structures/User.js +21 -10
  52. package/dist/esm/mezon-client/structures/User.js.map +1 -1
  53. package/dist/esm/sqlite/MessageDatabase.d.ts +9 -0
  54. package/dist/esm/sqlite/MessageDatabase.js +79 -0
  55. package/dist/esm/sqlite/MessageDatabase.js.map +1 -0
  56. package/dist/esm/utils/helper.d.ts +3 -2
  57. package/dist/esm/utils/helper.js +5 -13
  58. package/dist/esm/utils/helper.js.map +1 -1
  59. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  60. package/dist/tsconfig.tsbuildinfo +1 -1
  61. package/package.json +3 -1
@@ -1 +1 @@
1
- {"version":3,"file":"channel_manager.js","sourceRoot":"","sources":["../../../../src/mezon-client/manager/channel_manager.ts"],"names":[],"mappings":";;;AACA,+CAA8C;AAK9C,+CAAmD;AAInD,MAAa,cAAc;IAEzB,YACU,SAAmB,EACnB,aAA4B,EAC5B,cAA8B;QAF9B,cAAS,GAAT,SAAS,CAAU;QACnB,kBAAa,GAAb,aAAa,CAAe;QAC5B,mBAAc,GAAd,cAAc,CAAgB;IACrC,CAAC;IAEG,KAAK,CAAC,iBAAiB,CAAC,YAAoB;QACjD,IAAI,CAAC,YAAY;YAAE,OAAO;QAC1B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,gBAAgB,CACpD,YAAY,EACZ,uBAAW,CAAC,eAAe,CAC5B,CAAC;QACF,IAAI,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,WAAW,CAAA;YAAE,OAAO;QACnC,IAAI,CAAC,aAAa,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,WAAW,CACvC,GAAG,CAAC,CAAC,OAA2D,EAAE,EAAE;;YACnE,IAAI,CAAC,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,0CAAE,MAAM,CAAA;gBAAE,OAAO;YACtC,OAAO;gBACL,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,UAAU;aACzC,CAAC;QACJ,CAAC,EACA,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,CAAC,GAAQ,EAAE,IAAS,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACnE,CAAC;IAEM,gBAAgB;QACrB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,kCAAkC;IAClC,KAAK,CAAC,eAAe,CAAC,MAAc;QAClC,IAAI;YACF,IAAI,CAAC,IAAA,sBAAa,EAAC,MAAM,CAAC;gBAAE,OAAO,IAAI,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;YAC9C,MAAM,OAAO,GAAgC;gBAC3C,OAAO,EAAE,EAAE;gBACX,UAAU,EAAE,GAAG;gBACf,WAAW,EAAE,GAAG;gBAChB,IAAI,EAAE,uBAAW,CAAC,eAAe;gBACjC,QAAQ,EAAE,CAAC,MAAM,CAAC;gBAClB,eAAe,EAAE,CAAC;aACnB,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,iBAAiB,CACtD,IAAI,CAAC,cAAc,CAAC,UAAU,EAAG,CAAC,KAAK,EACvC,OAAO,CACR,CAAC;YAEF,IAAI,SAAS,EAAE;gBACb,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACtB,MAAM,MAAM,CAAC,QAAQ,CACnB,SAAS,CAAC,OAAQ,EAClB,SAAS,CAAC,UAAW,EACrB,SAAS,CAAC,IAAK,EACf,KAAK,CACN,CAAC;gBACF,OAAO,SAAS,CAAC;aAClB;YACD,OAAO,IAAI,CAAC;SACb;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAEO,KAAK,CAAC,EAAU;QACtB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;CACF;AAnED,wCAmEC"}
1
+ {"version":3,"file":"channel_manager.js","sourceRoot":"","sources":["../../../../src/mezon-client/manager/channel_manager.ts"],"names":[],"mappings":";;;AACA,+CAA8C;AAK9C,+CAAmD;AAInD,MAAa,cAAc;IAEzB,YACU,SAAmB,EACnB,aAA4B,EAC5B,cAA8B;QAF9B,cAAS,GAAT,SAAS,CAAU;QACnB,kBAAa,GAAb,aAAa,CAAe;QAC5B,mBAAc,GAAd,cAAc,CAAgB;IACrC,CAAC;IAEG,KAAK,CAAC,iBAAiB,CAAC,YAAoB;;QACjD,IAAI,CAAC,YAAY;YAAE,OAAO;QAC1B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,gBAAgB,CACpD,YAAY,EACZ,uBAAW,CAAC,eAAe,CAC5B,CAAC;QACF,IAAI,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,WAAW,CAAA,IAAI,CAAC,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,WAAW,0CAAE,MAAM,CAAA;YAAE,OAAO;QACrE,IAAI,CAAC,aAAa,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,WAAW,CACvC,GAAG,CAAC,CAAC,OAA2D,EAAE,EAAE;;YACnE,IAAI,CAAC,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,0CAAE,MAAM,CAAA;gBAAE,OAAO;YACtC,OAAO;gBACL,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,UAAU;aACzC,CAAC;QACJ,CAAC,EACA,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,CAAC,GAAQ,EAAE,IAAS,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACnE,CAAC;IAEM,gBAAgB;QACrB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,kCAAkC;IAClC,KAAK,CAAC,eAAe,CAAC,MAAc;QAClC,IAAI;YACF,IAAI,CAAC,IAAA,sBAAa,EAAC,MAAM,CAAC;gBAAE,OAAO,IAAI,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;YAC9C,MAAM,OAAO,GAAgC;gBAC3C,OAAO,EAAE,EAAE;gBACX,UAAU,EAAE,GAAG;gBACf,WAAW,EAAE,GAAG;gBAChB,IAAI,EAAE,uBAAW,CAAC,eAAe;gBACjC,QAAQ,EAAE,CAAC,MAAM,CAAC;gBAClB,eAAe,EAAE,CAAC;aACnB,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,iBAAiB,CACtD,IAAI,CAAC,cAAc,CAAC,UAAU,EAAG,CAAC,KAAK,EACvC,OAAO,CACR,CAAC;YAEF,IAAI,SAAS,EAAE;gBACb,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACtB,MAAM,MAAM,CAAC,QAAQ,CACnB,SAAS,CAAC,OAAQ,EAClB,SAAS,CAAC,UAAW,EACrB,SAAS,CAAC,IAAK,EACf,KAAK,CACN,CAAC;gBACF,OAAO,SAAS,CAAC;aAClB;YACD,OAAO,IAAI,CAAC;SACb;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAEO,KAAK,CAAC,EAAU;QACtB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;CACF;AAnED,wCAmEC"}
@@ -1,28 +1,28 @@
1
1
  import { ErrorEvent, CloseEvent } from "ws";
2
2
  import { MezonApi } from "../../api";
3
3
  import { WebSocketAdapter } from "../../web_socket_adapter";
4
- import { SessionManager } from "./session_manager";
5
4
  import { Socket } from "../../interfaces/socket";
6
5
  import { Session } from "../../session";
7
6
  import { EventManager } from "./event_manager";
8
7
  import { MezonClient } from "../client/MezonClient";
9
8
  import { ReactMessageData, RemoveMessageData, ReplyMessageData, UpdateMessageData } from "../../interfaces";
10
9
  import { AsyncThrottleQueue } from "../utils/AsyncThrottleQueue";
10
+ import { MessageDatabase } from "../../sqlite/MessageDatabase";
11
11
  export declare class SocketManager {
12
12
  private host;
13
13
  private port;
14
14
  private useSSL;
15
15
  private adapter;
16
- private sessionManager;
17
16
  private apiClient;
18
- private apiKey;
19
17
  private eventManager;
20
18
  private messageQueue;
21
19
  private client;
20
+ private messageDB;
22
21
  [key: string]: any;
23
22
  private socket;
24
23
  private isHardDisconnect;
25
- constructor(host: string, port: string, useSSL: boolean, adapter: WebSocketAdapter, sessionManager: SessionManager, apiClient: MezonApi, apiKey: string, eventManager: EventManager, messageQueue: AsyncThrottleQueue, client: MezonClient);
24
+ private isRetrying;
25
+ constructor(host: string, port: string, useSSL: boolean, adapter: WebSocketAdapter, apiClient: MezonApi, eventManager: EventManager, messageQueue: AsyncThrottleQueue, client: MezonClient, messageDB: MessageDatabase);
26
26
  createSocket(): void;
27
27
  getSocket(): Socket;
28
28
  connect(sockSession: Session): Promise<Session>;
@@ -7,17 +7,17 @@ const web_socket_adapter_pb_1 = require("../../web_socket_adapter_pb");
7
7
  const Clan_1 = require("../structures/Clan");
8
8
  const helper_1 = require("../../utils/helper");
9
9
  class SocketManager {
10
- constructor(host, port, useSSL, adapter, sessionManager, apiClient, apiKey, eventManager, messageQueue, client) {
10
+ constructor(host, port, useSSL, adapter, apiClient, eventManager, messageQueue, client, messageDB) {
11
11
  this.host = host;
12
12
  this.port = port;
13
13
  this.useSSL = useSSL;
14
14
  this.adapter = adapter;
15
- this.sessionManager = sessionManager;
16
15
  this.apiClient = apiClient;
17
- this.apiKey = apiKey;
18
16
  this.eventManager = eventManager;
19
17
  this.messageQueue = messageQueue;
20
18
  this.client = client;
19
+ this.messageDB = messageDB;
20
+ this.isRetrying = false;
21
21
  this.socket = new socket_1.DefaultSocket(this.host, this.port, this.useSSL, false, this.adapter);
22
22
  }
23
23
  createSocket() {
@@ -33,7 +33,7 @@ class SocketManager {
33
33
  return session;
34
34
  }
35
35
  closeSocket() {
36
- this.isHardDisconnect = true;
36
+ // this.isHardDisconnect = true;
37
37
  this.socket.close();
38
38
  console.log("eventManager", this.eventManager);
39
39
  }
@@ -69,7 +69,7 @@ class SocketManager {
69
69
  const clanObj = new Clan_1.Clan({
70
70
  id: clan.clan_id,
71
71
  name: (_a = clan === null || clan === void 0 ? void 0 : clan.clan_name) !== null && _a !== void 0 ? _a : "unknown",
72
- }, this.client, this.apiClient, this, sessionToken, this.messageQueue);
72
+ }, this.client, this.apiClient, this, sessionToken, this.messageQueue, this.messageDB);
73
73
  this.client.clans.set(clan.clan_id, clanObj);
74
74
  }
75
75
  });
@@ -86,28 +86,27 @@ class SocketManager {
86
86
  }
87
87
  }
88
88
  async retriesConnect() {
89
+ if (this.isRetrying)
90
+ return;
91
+ this.isRetrying = true;
89
92
  let retryInterval = 5000;
90
93
  const maxRetryInterval = 60000;
91
94
  console.log("Reconnecting...");
92
- const interval = setInterval(async () => {
95
+ const retry = async () => {
93
96
  try {
94
- this.createSocket();
95
- const sockSession = await this.sessionManager.authenticate(this.apiKey);
96
- const sessionConnected = await this.connect(sockSession);
97
- if (sessionConnected === null || sessionConnected === void 0 ? void 0 : sessionConnected.token) {
98
- await this.connectSocket(sessionConnected.token);
99
- }
97
+ const sessionStr = await this.client.login();
98
+ console.log("Reconnected session:", sessionStr);
99
+ this.isRetrying = false;
100
100
  console.log("Connected successfully!");
101
- clearInterval(interval);
102
101
  }
103
102
  catch (e) {
104
- console.log("Connection failed!");
103
+ console.log("Connection failed!", e);
105
104
  retryInterval = Math.min(retryInterval * 2, maxRetryInterval);
106
105
  console.log(`Retrying in ${retryInterval / 1000} seconds...`);
107
- clearInterval(interval);
108
- setTimeout(() => this.retriesConnect(), retryInterval);
106
+ setTimeout(retry, retryInterval);
109
107
  }
110
- }, retryInterval);
108
+ };
109
+ retry();
111
110
  }
112
111
  async writeChatMessage(dataWriteMessage) {
113
112
  var _a, _b, _c;
@@ -1 +1 @@
1
- {"version":3,"file":"socket_manager.js","sourceRoot":"","sources":["../../../../src/mezon-client/manager/socket_manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socket_manager.js","sourceRoot":"","sources":["../../../../src/mezon-client/manager/socket_manager.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { MezonApi } from "../../api";
2
2
  import { ApiRoleListEventResponse, ApiVoiceChannelUserList, MezonUpdateRoleBody } from "../../interfaces";
3
+ import { MessageDatabase } from "../../sqlite/MessageDatabase";
3
4
  import { MezonClient } from "../client/MezonClient";
4
5
  import { SocketManager } from "../manager/socket_manager";
5
6
  import { AsyncThrottleQueue } from "../utils/AsyncThrottleQueue";
@@ -22,7 +23,8 @@ export declare class Clan {
22
23
  private readonly client;
23
24
  private readonly socketManager;
24
25
  private readonly messageQueue;
25
- constructor(initClanData: ClanInitData, client: MezonClient, apiClient: MezonApi, socketManager: SocketManager, sessionToken: string, messageQueue: AsyncThrottleQueue);
26
+ private readonly messageDB;
27
+ constructor(initClanData: ClanInitData, client: MezonClient, apiClient: MezonApi, socketManager: SocketManager, sessionToken: string, messageQueue: AsyncThrottleQueue, messageDB: MessageDatabase);
26
28
  loadChannels(): Promise<void>;
27
29
  listChannelVoiceUsers(channel_id?: string, channel_type?: number, limit?: number, state?: number, cursor?: string): Promise<ApiVoiceChannelUserList>;
28
30
  updateRole(roleId: string, request: MezonUpdateRoleBody): Promise<boolean>;
@@ -4,8 +4,9 @@ exports.Clan = void 0;
4
4
  const constants_1 = require("../../constants");
5
5
  const CacheManager_1 = require("../utils/CacheManager");
6
6
  const TextChannel_1 = require("./TextChannel");
7
+ const User_1 = require("./User");
7
8
  class Clan {
8
- constructor(initClanData, client, apiClient, socketManager, sessionToken, messageQueue) {
9
+ constructor(initClanData, client, apiClient, socketManager, sessionToken, messageQueue, messageDB) {
9
10
  // cache status load channel
10
11
  this._channelsLoaded = false;
11
12
  // cache status load channel call api
@@ -17,14 +18,22 @@ class Clan {
17
18
  this.socketManager = socketManager;
18
19
  this.messageQueue = messageQueue;
19
20
  this.sessionToken = sessionToken;
21
+ this.messageDB = messageDB;
20
22
  this.channels = new CacheManager_1.CacheManager(async (channelId) => {
21
23
  return this.client.channels.fetch(channelId);
22
24
  });
23
25
  this.users = new CacheManager_1.CacheManager(async (user_id) => {
24
- // TODO: If the channel's user cache is empty,
25
- // and channel.users.fetch(user_id) is called,
26
- // this function will be triggered to fetch the user detail from the API.
27
- throw Error(`User ${user_id} not found in this clan ${this.id}!`);
26
+ const dmChannel = await this.client.createDMchannel(user_id);
27
+ if (!dmChannel || !(dmChannel === null || dmChannel === void 0 ? void 0 : dmChannel.channel_id)) {
28
+ throw Error(`User ${user_id} not found in this clan ${this.id}!`);
29
+ }
30
+ const userRaw = {
31
+ id: user_id,
32
+ dmChannelId: dmChannel.channel_id,
33
+ };
34
+ const user = new User_1.User(userRaw, this, this.messageQueue, this.socketManager);
35
+ this.users.set(user_id, user);
36
+ return user;
28
37
  });
29
38
  }
30
39
  async loadChannels() {
@@ -37,7 +46,7 @@ class Clan {
37
46
  const channels = await this.apiClient.listChannelDescs(this.sessionToken, constants_1.ChannelType.CHANNEL_TYPE_CHANNEL, this.id);
38
47
  const validChannels = (_b = (_a = channels === null || channels === void 0 ? void 0 : channels.channeldesc) === null || _a === void 0 ? void 0 : _a.filter((c) => Object.keys(c).length > 0)) !== null && _b !== void 0 ? _b : [];
39
48
  for (const channel of validChannels) {
40
- const channelObj = new TextChannel_1.TextChannel(Object.assign(Object.assign({}, channel), { type: (channel === null || channel === void 0 ? void 0 : channel.channel_type) || (channel === null || channel === void 0 ? void 0 : channel.type) }), this, this.socketManager, this.messageQueue);
49
+ const channelObj = new TextChannel_1.TextChannel(Object.assign(Object.assign({}, channel), { type: (channel === null || channel === void 0 ? void 0 : channel.channel_type) || (channel === null || channel === void 0 ? void 0 : channel.type) }), this, this.socketManager, this.messageQueue, this.messageDB);
41
50
  this.channels.set(channel.channel_id, channelObj);
42
51
  this.client.channels.set(channel.channel_id, channelObj);
43
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Clan.js","sourceRoot":"","sources":["../../../../src/mezon-client/structures/Clan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Clan.js","sourceRoot":"","sources":["../../../../src/mezon-client/structures/Clan.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { ApiChannelDescription, ApiMessageAttachment, ApiMessageMention, ChannelMessageContent } from "../../interfaces";
2
+ import { MessageDatabase } from "../../sqlite/MessageDatabase";
2
3
  import { SocketManager } from "../manager/socket_manager";
3
4
  import { AsyncThrottleQueue } from "../utils/AsyncThrottleQueue";
4
5
  import { CacheManager } from "../utils/CacheManager";
@@ -16,6 +17,7 @@ export declare class TextChannel {
16
17
  messages: CacheManager<string, Message>;
17
18
  private readonly socketManager;
18
19
  private readonly messageQueue;
19
- constructor(initChannelData: ApiChannelDescription, clan: Clan, socketManager: SocketManager, messageQueue: AsyncThrottleQueue);
20
+ private messageDB;
21
+ constructor(initChannelData: ApiChannelDescription, clan: Clan, socketManager: SocketManager, messageQueue: AsyncThrottleQueue, messageDB: MessageDatabase);
20
22
  send(content: ChannelMessageContent, mentions?: Array<ApiMessageMention>, attachments?: Array<ApiMessageAttachment>, mention_everyone?: boolean, anonymous_message?: boolean, topic_id?: string, code?: number): Promise<import("../../interfaces").ChannelMessageAck>;
21
23
  }
@@ -3,8 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TextChannel = void 0;
4
4
  const helper_1 = require("../../utils/helper");
5
5
  const CacheManager_1 = require("../utils/CacheManager");
6
+ const Message_1 = require("./Message");
6
7
  class TextChannel {
7
- constructor(initChannelData, clan, socketManager, messageQueue) {
8
+ constructor(initChannelData, clan, socketManager, messageQueue, messageDB) {
8
9
  var _a, _b, _c;
9
10
  this.id = initChannelData.channel_id;
10
11
  this.name = initChannelData.channel_label;
@@ -15,13 +16,16 @@ class TextChannel {
15
16
  this.parent_id = (_c = initChannelData === null || initChannelData === void 0 ? void 0 : initChannelData.parent_id) !== null && _c !== void 0 ? _c : "";
16
17
  this.clan = clan;
17
18
  this.messages = new CacheManager_1.CacheManager(async (message_id) => {
18
- // TODO: If the channel's message cache is empty,
19
- // and channel.messages.fetch(message_id) is called,
20
- // this function will be triggered to fetch the message detail from the API.
21
- throw Error(`Message ${message_id} not found on channel ${this.id}!`);
19
+ const messageDb = this.messageDB.getMessageById(message_id, this.id);
20
+ if (!messageDb) {
21
+ throw Error(`Message ${message_id} not found on channel ${this.id}!`);
22
+ }
23
+ const newMessage = new Message_1.Message(messageDb, this, this.socketManager, this.messageQueue);
24
+ return newMessage;
22
25
  }, 200);
23
26
  this.socketManager = socketManager;
24
27
  this.messageQueue = messageQueue;
28
+ this.messageDB = messageDB;
25
29
  }
26
30
  async send(content, mentions, attachments, mention_everyone, anonymous_message, topic_id, code) {
27
31
  return this.messageQueue.enqueue(async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"TextChannel.js","sourceRoot":"","sources":["../../../../src/mezon-client/structures/TextChannel.ts"],"names":[],"mappings":";;;AAOA,+CAAqE;AAGrE,wDAAqD;AAIrD,MAAa,WAAW;IAetB,YACE,eAAsC,EACtC,IAAU,EACV,aAA4B,EAC5B,YAAgC;;QAEhC,IAAI,CAAC,EAAE,GAAG,eAAe,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,aAAa,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,IAAI,CAAC;QAC1C,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,eAAe,CAAA,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,WAAW,mCAAI,EAAE,CAAC;QACtD,IAAI,CAAC,aAAa,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,aAAa,mCAAI,EAAE,CAAC;QAC1D,IAAI,CAAC,SAAS,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,SAAS,mCAAI,EAAE,CAAC;QAClD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,2BAAY,CAAkB,KAAK,EAAE,UAAU,EAAE,EAAE;YACrE,iDAAiD;YACjD,oDAAoD;YACpD,4EAA4E;YAC5E,MAAM,KAAK,CAAC,WAAW,UAAU,yBAAyB,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QACxE,CAAC,EAAE,GAAG,CAAC,CAAC;QACR,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,IAAI,CACR,OAA8B,EAC9B,QAAmC,EACnC,WAAyC,EACzC,gBAA0B,EAC1B,iBAA2B,EAC3B,QAAiB,EACjB,IAAa;QAEb,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YAC1C,MAAM,QAAQ,GAAqB;gBACjC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;gBACrB,UAAU,EAAE,IAAI,CAAC,EAAG;gBACpB,IAAI,EAAE,IAAA,wCAA+B,EAAC,IAAI,CAAC,YAAa,CAAC;gBACzD,SAAS,EAAE,CAAC,IAAI,CAAC,UAAU;gBAC3B,OAAO;gBACP,QAAQ;gBACR,WAAW;gBACX,iBAAiB;gBACjB,gBAAgB;gBAChB,IAAI;gBACJ,QAAQ;aACT,CAAC;YACF,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAjED,kCAiEC"}
1
+ {"version":3,"file":"TextChannel.js","sourceRoot":"","sources":["../../../../src/mezon-client/structures/TextChannel.ts"],"names":[],"mappings":";;;AAQA,+CAAqE;AAGrE,wDAAqD;AAErD,uCAAoC;AAEpC,MAAa,WAAW;IAgBtB,YACE,eAAsC,EACtC,IAAU,EACV,aAA4B,EAC5B,YAAgC,EAChC,SAA0B;;QAE1B,IAAI,CAAC,EAAE,GAAG,eAAe,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,aAAa,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,IAAI,CAAC;QAC1C,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,eAAe,CAAA,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,WAAW,mCAAI,EAAE,CAAC;QACtD,IAAI,CAAC,aAAa,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,aAAa,mCAAI,EAAE,CAAC;QAC1D,IAAI,CAAC,SAAS,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,SAAS,mCAAI,EAAE,CAAC;QAClD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,2BAAY,CAAkB,KAAK,EAAE,UAAU,EAAE,EAAE;YACrE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,EAAG,CAAC,CAAC;YACtE,IAAI,CAAC,SAAS,EAAE;gBACd,MAAM,KAAK,CAAC,WAAW,UAAU,yBAAyB,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;aACvE;YACD,MAAM,UAAU,GAAG,IAAI,iBAAO,CAC5B,SAAS,EACT,IAAI,EACJ,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,YAAY,CAClB,CAAC;YACF,OAAO,UAAU,CAAC;QACpB,CAAC,EAAE,GAAG,CAAC,CAAC;QACR,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,IAAI,CACR,OAA8B,EAC9B,QAAmC,EACnC,WAAyC,EACzC,gBAA0B,EAC1B,iBAA2B,EAC3B,QAAiB,EACjB,IAAa;QAEb,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YAC1C,MAAM,QAAQ,GAAqB;gBACjC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;gBACrB,UAAU,EAAE,IAAI,CAAC,EAAG;gBACpB,IAAI,EAAE,IAAA,wCAA+B,EAAC,IAAI,CAAC,YAAa,CAAC;gBACzD,SAAS,EAAE,CAAC,IAAI,CAAC,UAAU;gBAC3B,OAAO;gBACP,QAAQ;gBACR,WAAW;gBACX,iBAAiB;gBACjB,gBAAgB;gBAChB,IAAI;gBACJ,QAAQ;aACT,CAAC;YACF,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AA3ED,kCA2EC"}
@@ -24,8 +24,8 @@ export declare class User {
24
24
  private readonly channelManager;
25
25
  private readonly messageQueue;
26
26
  private readonly socketManager;
27
- constructor(initUserData: UserInitData, clan: Clan, channelManager: ChannelManager, messageQueue: AsyncThrottleQueue, socketManager: SocketManager);
27
+ constructor(initUserData: UserInitData, clan: Clan, messageQueue: AsyncThrottleQueue, socketManager: SocketManager, channelManager?: ChannelManager);
28
28
  sendToken(sendTokenData: SendTokenData): Promise<any>;
29
29
  sendDM(content: ChannelMessageContent, code?: number): Promise<import("../../interfaces").ChannelMessageAck>;
30
- createDmChannel(): Promise<import("../../interfaces").ApiChannelDescription>;
30
+ createDmChannel(): Promise<import("../../interfaces").ApiChannelDescription | null>;
31
31
  }
@@ -3,15 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.User = void 0;
4
4
  const constants_1 = require("../../constants");
5
5
  class User {
6
- constructor(initUserData, clan, channelManager, messageQueue, socketManager) {
6
+ constructor(initUserData, clan, messageQueue, socketManager, channelManager) {
7
7
  var _a, _b, _c, _d, _e, _f;
8
8
  this.id = initUserData.id;
9
- this.avartar = (_a = initUserData.avartar) !== null && _a !== void 0 ? _a : '';
10
- this.dmChannelId = (_b = initUserData === null || initUserData === void 0 ? void 0 : initUserData.dmChannelId) !== null && _b !== void 0 ? _b : '';
11
- this.username = (_c = initUserData === null || initUserData === void 0 ? void 0 : initUserData.username) !== null && _c !== void 0 ? _c : '';
12
- this.clan_nick = (_d = initUserData === null || initUserData === void 0 ? void 0 : initUserData.clan_nick) !== null && _d !== void 0 ? _d : '';
13
- this.clan_avatar = (_e = initUserData === null || initUserData === void 0 ? void 0 : initUserData.clan_avatar) !== null && _e !== void 0 ? _e : '';
14
- this.display_name = (_f = initUserData === null || initUserData === void 0 ? void 0 : initUserData.display_name) !== null && _f !== void 0 ? _f : '';
9
+ this.avartar = (_a = initUserData.avartar) !== null && _a !== void 0 ? _a : "";
10
+ this.dmChannelId = (_b = initUserData === null || initUserData === void 0 ? void 0 : initUserData.dmChannelId) !== null && _b !== void 0 ? _b : "";
11
+ this.username = (_c = initUserData === null || initUserData === void 0 ? void 0 : initUserData.username) !== null && _c !== void 0 ? _c : "";
12
+ this.clan_nick = (_d = initUserData === null || initUserData === void 0 ? void 0 : initUserData.clan_nick) !== null && _d !== void 0 ? _d : "";
13
+ this.clan_avatar = (_e = initUserData === null || initUserData === void 0 ? void 0 : initUserData.clan_avatar) !== null && _e !== void 0 ? _e : "";
14
+ this.display_name = (_f = initUserData === null || initUserData === void 0 ? void 0 : initUserData.display_name) !== null && _f !== void 0 ? _f : "";
15
15
  this.clan = clan;
16
16
  this.channelManager = channelManager;
17
17
  this.messageQueue = messageQueue;
@@ -25,7 +25,12 @@ class User {
25
25
  note: (_a = sendTokenData === null || sendTokenData === void 0 ? void 0 : sendTokenData.note) !== null && _a !== void 0 ? _a : "",
26
26
  extra_attribute: (_b = sendTokenData === null || sendTokenData === void 0 ? void 0 : sendTokenData.extra_attribute) !== null && _b !== void 0 ? _b : "",
27
27
  };
28
- return this.clan.apiClient.sendToken(this.clan.sessionToken, dataSendToken);
28
+ try {
29
+ return this.clan.apiClient.sendToken(this.clan.sessionToken, dataSendToken);
30
+ }
31
+ catch (error) {
32
+ console.log("Error sendToken");
33
+ }
29
34
  }
30
35
  async sendDM(content, code) {
31
36
  return this.messageQueue.enqueue(async () => {
@@ -48,8 +53,15 @@ class User {
48
53
  });
49
54
  }
50
55
  async createDmChannel() {
51
- const dmChannel = await this.channelManager.createDMchannel(this.id);
52
- return dmChannel !== null && dmChannel !== void 0 ? dmChannel : {};
56
+ var _a;
57
+ try {
58
+ const dmChannel = await ((_a = this.channelManager) === null || _a === void 0 ? void 0 : _a.createDMchannel(this.id));
59
+ return dmChannel !== null && dmChannel !== void 0 ? dmChannel : {};
60
+ }
61
+ catch (error) {
62
+ console.log("Error createDmChannel User");
63
+ return null;
64
+ }
53
65
  }
54
66
  }
55
67
  exports.User = User;
@@ -1 +1 @@
1
- {"version":3,"file":"User.js","sourceRoot":"","sources":["../../../../src/mezon-client/structures/User.ts"],"names":[],"mappings":";;;AAAA,+CAAoD;AAoBpD,MAAa,IAAI;IAaf,YACE,YAA0B,EAC1B,IAAU,EACV,cAA8B,EAC9B,YAAgC,EAChC,aAA4B;;QAE5B,IAAI,CAAC,EAAE,GAAG,YAAY,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAA,YAAY,CAAC,OAAO,mCAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,WAAW,mCAAI,EAAE,CAAC;QACnD,IAAI,CAAC,QAAQ,GAAG,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,mCAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,SAAS,mCAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,WAAW,mCAAI,EAAE,CAAC;QACnD,IAAI,CAAC,YAAY,GAAG,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,YAAY,mCAAI,EAAE,CAAC;QACrD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,aAA4B;;QAC1C,MAAM,aAAa,GAAmB;YACpC,WAAW,EAAE,IAAI,CAAC,EAAE;YACpB,MAAM,EAAE,aAAa,CAAC,MAAM;YAC5B,IAAI,EAAE,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,mCAAI,EAAE;YAC/B,eAAe,EAAE,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,eAAe,mCAAI,EAAE;SACtD,CAAC;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA8B,EAAE,IAAa;QACxD,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;;YAC1C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBACrB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;gBAC/C,IAAI,CAAC,WAAW,GAAG,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU,mCAAI,EAAE,CAAC;aAChD;YACD,IAAI,CAAC,IAAI,CAAC,WAAW;gBACnB,MAAM,KAAK,CAAC,yCAAyC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;YACnE,MAAM,UAAU,GAAG;gBACjB,OAAO,EAAE,GAAG;gBACZ,UAAU,EAAE,IAAI,CAAC,WAAW;gBAC5B,IAAI,EAAE,6BAAiB,CAAC,cAAc;gBACtC,SAAS,EAAE,KAAK;gBAChB,OAAO;gBACP,IAAI;aACL,CAAC;YACF,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrE,OAAO,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,EAAE,CAAC;IACzB,CAAC;CACF;AAnED,oBAmEC"}
1
+ {"version":3,"file":"User.js","sourceRoot":"","sources":["../../../../src/mezon-client/structures/User.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { ChannelMessage } from "../interfaces";
2
+ export declare class MessageDatabase {
3
+ private db;
4
+ constructor(dbPath?: string);
5
+ private ensureGitIgnore;
6
+ private init;
7
+ saveMessage(message: ChannelMessage): void;
8
+ getMessageById(messageId: string, channelId: string): any;
9
+ }
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MessageDatabase = void 0;
7
+ const better_sqlite3_1 = __importDefault(require("better-sqlite3"));
8
+ const fs_1 = __importDefault(require("fs"));
9
+ const path_1 = __importDefault(require("path"));
10
+ class MessageDatabase {
11
+ constructor(dbPath = "./mezon-cache/mezon-messages-cache.db") {
12
+ const dir = path_1.default.dirname(dbPath);
13
+ if (!fs_1.default.existsSync(dir)) {
14
+ fs_1.default.mkdirSync(dir, { recursive: true });
15
+ }
16
+ this.ensureGitIgnore(dbPath);
17
+ this.db = new better_sqlite3_1.default(dbPath);
18
+ this.init();
19
+ }
20
+ ensureGitIgnore(dbPath) {
21
+ const gitignorePath = path_1.default.resolve(".gitignore");
22
+ const dirName = path_1.default.dirname(dbPath);
23
+ let relativeDir = dirName.replace(/\\/g, "/");
24
+ if (relativeDir.startsWith("./")) {
25
+ relativeDir = relativeDir.slice(2);
26
+ }
27
+ try {
28
+ let gitignoreContent = "";
29
+ if (fs_1.default.existsSync(gitignorePath)) {
30
+ gitignoreContent = fs_1.default.readFileSync(gitignorePath, "utf-8");
31
+ }
32
+ if (!gitignoreContent.includes(relativeDir)) {
33
+ fs_1.default.appendFileSync(gitignorePath, `\n# Mezon cache\n/${relativeDir}`);
34
+ console.log(`[mezon] Added "${relativeDir}" to .gitignore`);
35
+ }
36
+ }
37
+ catch (err) {
38
+ console.warn("[mezon] Could not modify .gitignore:", err);
39
+ }
40
+ }
41
+ init() {
42
+ this.db
43
+ .prepare(`CREATE TABLE IF NOT EXISTS messages (
44
+ id TEXT PRIMARY KEY,
45
+ clan_id TEXT,
46
+ channel_id TEXT,
47
+ sender_id TEXT,
48
+ content TEXT,
49
+ mentions TEXT,
50
+ attachments TEXT,
51
+ reactions TEXT,
52
+ msg_references TEXT,
53
+ topic_id TEXT,
54
+ create_time_seconds INTEGER
55
+ )`)
56
+ .run();
57
+ this.db
58
+ .prepare(`CREATE INDEX IF NOT EXISTS idx_channel_id_id ON messages(channel_id, id)`)
59
+ .run();
60
+ }
61
+ saveMessage(message) {
62
+ var _a, _b, _c, _d, _e, _f, _g;
63
+ const stmt = this.db.prepare(`INSERT OR REPLACE INTO messages (
64
+ id, clan_id, channel_id, sender_id,
65
+ content, mentions, attachments, reactions,
66
+ msg_references, topic_id, create_time_seconds
67
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`);
68
+ stmt.run(message.message_id, message.clan_id, message.channel_id, message.sender_id, JSON.stringify((_a = message.content) !== null && _a !== void 0 ? _a : {}), JSON.stringify((_b = message.mentions) !== null && _b !== void 0 ? _b : []), JSON.stringify((_c = message.attachments) !== null && _c !== void 0 ? _c : []), JSON.stringify((_d = message.reactions) !== null && _d !== void 0 ? _d : []), JSON.stringify((_e = message.references) !== null && _e !== void 0 ? _e : []), (_f = message.topic_id) !== null && _f !== void 0 ? _f : null, (_g = message.create_time_seconds) !== null && _g !== void 0 ? _g : null);
69
+ }
70
+ getMessageById(messageId, channelId) {
71
+ const stmt = this.db.prepare(`SELECT * FROM messages WHERE channel_id = ? AND id = ? LIMIT 1`);
72
+ const row = stmt.get(channelId, messageId);
73
+ if (!row)
74
+ return null;
75
+ return Object.assign(Object.assign({}, row), { content: JSON.parse(row.content), mentions: JSON.parse(row.mentions), attachments: JSON.parse(row.attachments), reactions: JSON.parse(row.reactions), references: JSON.parse(row.msg_references) });
76
+ }
77
+ }
78
+ exports.MessageDatabase = MessageDatabase;
79
+ //# sourceMappingURL=MessageDatabase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageDatabase.js","sourceRoot":"","sources":["../../../src/sqlite/MessageDatabase.ts"],"names":[],"mappings":";;;;;;AAAA,oEAAsC;AAEtC,4CAAoB;AACpB,gDAAwB;AAExB,MAAa,eAAe;IAG1B,YAAY,MAAM,GAAG,uCAAuC;QAC1D,MAAM,GAAG,GAAG,cAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YACvB,YAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;SACxC;QACD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC7B,IAAI,CAAC,EAAE,GAAG,IAAI,wBAAQ,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAEO,eAAe,CAAC,MAAc;QACpC,MAAM,aAAa,GAAG,cAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,cAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC9C,IAAI,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YAChC,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACpC;QAED,IAAI;YACF,IAAI,gBAAgB,GAAG,EAAE,CAAC;YAC1B,IAAI,YAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE;gBAChC,gBAAgB,GAAG,YAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;aAC5D;YAED,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;gBAC3C,YAAE,CAAC,cAAc,CAAC,aAAa,EAAE,qBAAqB,WAAW,EAAE,CAAC,CAAC;gBACrE,OAAO,CAAC,GAAG,CAAC,kBAAkB,WAAW,iBAAiB,CAAC,CAAC;aAC7D;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAC;SAC3D;IACH,CAAC;IAEO,IAAI;QACV,IAAI,CAAC,EAAE;aACJ,OAAO,CACN;;;;;;;;;;;;QAYA,CACD;aACA,GAAG,EAAE,CAAC;QACT,IAAI,CAAC,EAAE;aACJ,OAAO,CACN,0EAA0E,CAC3E;aACA,GAAG,EAAE,CAAC;IACX,CAAC;IAED,WAAW,CAAC,OAAuB;;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC1B;;;;iDAI2C,CAC5C,CAAC;QAEF,IAAI,CAAC,GAAG,CACN,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,SAAS,EACjB,IAAI,CAAC,SAAS,CAAC,MAAA,OAAO,CAAC,OAAO,mCAAI,EAAE,CAAC,EACrC,IAAI,CAAC,SAAS,CAAC,MAAA,OAAO,CAAC,QAAQ,mCAAI,EAAE,CAAC,EACtC,IAAI,CAAC,SAAS,CAAC,MAAA,OAAO,CAAC,WAAW,mCAAI,EAAE,CAAC,EACzC,IAAI,CAAC,SAAS,CAAC,MAAA,OAAO,CAAC,SAAS,mCAAI,EAAE,CAAC,EACvC,IAAI,CAAC,SAAS,CAAC,MAAA,OAAO,CAAC,UAAU,mCAAI,EAAE,CAAC,EACxC,MAAA,OAAO,CAAC,QAAQ,mCAAI,IAAI,EACxB,MAAA,OAAO,CAAC,mBAAmB,mCAAI,IAAI,CACpC,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,SAAiB,EAAE,SAAiB;QACjD,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC1B,gEAAgE,CACjE,CAAC;QACF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAQ,CAAC;QAElD,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QAEtB,uCACK,GAAG,KACN,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAChC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAClC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EACxC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EACpC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,IAC1C;IACJ,CAAC;CACF;AAtGD,0CAsGC"}
@@ -1,9 +1,10 @@
1
1
  import { ChannelStreamMode, InternalEventsSocket } from "../constants";
2
2
  export declare function convertInternalEventToEvents(input: InternalEventsSocket): string;
3
- export declare function convertChanneltypeToChannelMode(channelType: string | number): ChannelStreamMode.STREAM_MODE_CHANNEL | ChannelStreamMode.STREAM_MODE_GROUP | ChannelStreamMode.STREAM_MODE_DM | ChannelStreamMode.STREAM_MODE_THREAD | 0;
3
+ export declare function convertChanneltypeToChannelMode(channelType: string | number): 0 | ChannelStreamMode.STREAM_MODE_CHANNEL | ChannelStreamMode.STREAM_MODE_GROUP | ChannelStreamMode.STREAM_MODE_DM | ChannelStreamMode.STREAM_MODE_THREAD;
4
4
  export declare function isValidUserId(userId: string | number): boolean;
5
5
  export declare function sleep(ms: number): Promise<unknown>;
6
- export declare function parseUrlToHostAndSSL(url: string): {
6
+ export declare function parseUrlToHostAndSSL(urlStr: string): {
7
7
  host: string;
8
+ port: string;
8
9
  useSSL: boolean;
9
10
  };
@@ -32,20 +32,12 @@ function sleep(ms) {
32
32
  return new Promise((resolve) => setTimeout(resolve, ms));
33
33
  }
34
34
  exports.sleep = sleep;
35
- function parseUrlToHostAndSSL(url) {
36
- const trimmedUrl = url.trim();
37
- const isHttps = trimmedUrl.startsWith("https://");
38
- const isHttp = trimmedUrl.startsWith("http://");
39
- if (isHttps || isHttp) {
40
- const withoutScheme = trimmedUrl.replace(/^https?:\/\//, "");
41
- return {
42
- host: withoutScheme.replace(/\/$/, ""),
43
- useSSL: isHttps,
44
- };
45
- }
35
+ function parseUrlToHostAndSSL(urlStr) {
36
+ const url = new URL(urlStr);
46
37
  return {
47
- host: trimmedUrl.replace(/\/$/, ""),
48
- useSSL: false,
38
+ host: url.hostname,
39
+ port: url.port || (url.protocol === "https:" ? "443" : "80"),
40
+ useSSL: url.protocol === "https:",
49
41
  };
50
42
  }
51
43
  exports.parseUrlToHostAndSSL = parseUrlToHostAndSSL;
@@ -1 +1 @@
1
- {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../src/utils/helper.ts"],"names":[],"mappings":";;;AAAA,4CAIsB;AAEtB,SAAgB,4BAA4B,CAC1C,KAA2B;IAE3B,OAAO,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AACxD,CAAC;AAJD,oEAIC;AAED,SAAgB,+BAA+B,CAAC,WAA4B;IAC1E,QAAQ,MAAM,CAAC,WAAW,CAAC,EAAE;QAC3B,KAAK,uBAAW,CAAC,eAAe;YAC9B,OAAO,6BAAiB,CAAC,cAAc,CAAC;QAC1C,KAAK,uBAAW,CAAC,kBAAkB;YACjC,OAAO,6BAAiB,CAAC,iBAAiB,CAAC;QAC7C,KAAK,uBAAW,CAAC,oBAAoB;YACnC,OAAO,6BAAiB,CAAC,mBAAmB,CAAC;QAC/C,KAAK,uBAAW,CAAC,mBAAmB;YAClC,OAAO,6BAAiB,CAAC,kBAAkB,CAAC;KAC/C;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AAbD,0EAaC;AAED,SAAgB,aAAa,CAAC,MAAuB;IACnD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAEhC,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC5B;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAPD,sCAOC;AAED,SAAgB,KAAK,CAAC,EAAU;IAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAFD,sBAEC;AAED,SAAgB,oBAAoB,CAAC,GAAW;IAC9C,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAEhD,IAAI,OAAO,IAAI,MAAM,EAAE;QACrB,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QAC7D,OAAO;YACL,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;YACtC,MAAM,EAAE,OAAO;SAChB,CAAC;KACH;IAED,OAAO;QACL,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;QACnC,MAAM,EAAE,KAAK;KACd,CAAC;AACJ,CAAC;AAjBD,oDAiBC"}
1
+ {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../src/utils/helper.ts"],"names":[],"mappings":";;;AAAA,4CAIsB;AAEtB,SAAgB,4BAA4B,CAC1C,KAA2B;IAE3B,OAAO,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AACxD,CAAC;AAJD,oEAIC;AAED,SAAgB,+BAA+B,CAAC,WAA4B;IAC1E,QAAQ,MAAM,CAAC,WAAW,CAAC,EAAE;QAC3B,KAAK,uBAAW,CAAC,eAAe;YAC9B,OAAO,6BAAiB,CAAC,cAAc,CAAC;QAC1C,KAAK,uBAAW,CAAC,kBAAkB;YACjC,OAAO,6BAAiB,CAAC,iBAAiB,CAAC;QAC7C,KAAK,uBAAW,CAAC,oBAAoB;YACnC,OAAO,6BAAiB,CAAC,mBAAmB,CAAC;QAC/C,KAAK,uBAAW,CAAC,mBAAmB;YAClC,OAAO,6BAAiB,CAAC,kBAAkB,CAAC;KAC/C;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AAbD,0EAaC;AAED,SAAgB,aAAa,CAAC,MAAuB;IACnD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAEhC,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC5B;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAPD,sCAOC;AAED,SAAgB,KAAK,CAAC,EAAU;IAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAFD,sBAEC;AAED,SAAgB,oBAAoB,CAAC,MAAc;IAKjD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,QAAQ;QAClB,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5D,MAAM,EAAE,GAAG,CAAC,QAAQ,KAAK,QAAQ;KAClC,CAAC;AACJ,CAAC;AAXD,oDAWC"}
package/dist/esm/api.d.ts CHANGED
@@ -34,4 +34,6 @@ export declare class MezonApi {
34
34
  sendToken(bearerToken: string, body: TokenSentEvent, options?: any): Promise<any>;
35
35
  updateRole(bearerToken: string, roleId: string, body: MezonUpdateRoleBody, options?: any): Promise<any>;
36
36
  listRoles(bearerToken: string, clanId?: string, limit?: string, state?: string, cursor?: string, options?: any): Promise<any>;
37
+ getListFriends(bearerToken: string, limit?: number, state?: string, cursor?: string, options?: any): Promise<any>;
38
+ requestFriend(bearerToken: string, usernames: string, ids?: string, options?: any): Promise<any>;
37
39
  }
package/dist/esm/api.js CHANGED
@@ -492,6 +492,60 @@ export class MezonApi {
492
492
  new Promise((_, reject) => setTimeout(reject, this.timeoutMs, "Request timed out.")),
493
493
  ]);
494
494
  }
495
+ getListFriends(bearerToken, limit = 1000, state, cursor, options = {}) {
496
+ const urlPath = "/v2/friend";
497
+ const queryParams = new Map();
498
+ queryParams.set("limit", limit);
499
+ queryParams.set("state", state);
500
+ queryParams.set("cursor", cursor);
501
+ let bodyJson = "";
502
+ const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
503
+ const fetchOptions = buildFetchOptions("GET", options, bodyJson);
504
+ if (bearerToken) {
505
+ fetchOptions.headers["Authorization"] = "Bearer " + bearerToken;
506
+ }
507
+ return Promise.race([
508
+ fetch(fullUrl, fetchOptions).then((response) => {
509
+ if (response.status == 204) {
510
+ return response;
511
+ }
512
+ else if (response.status >= 200 && response.status < 300) {
513
+ return response.json();
514
+ }
515
+ else {
516
+ throw response;
517
+ }
518
+ }),
519
+ new Promise((_, reject) => setTimeout(reject, this.timeoutMs, "Request timed out.")),
520
+ ]);
521
+ }
522
+ requestFriend(bearerToken, usernames, ids, options = {}) {
523
+ const urlPath = "/v2/friend";
524
+ const queryParams = new Map();
525
+ queryParams.set("usernames", usernames);
526
+ if (ids) {
527
+ queryParams.set("ids", ids);
528
+ }
529
+ let bodyJson = "";
530
+ const fullUrl = this.buildFullUrl(this.basePath, urlPath, queryParams);
531
+ const fetchOptions = buildFetchOptions("POST", options, bodyJson);
532
+ if (bearerToken) {
533
+ fetchOptions.headers["Authorization"] = "Bearer " + bearerToken;
534
+ }
535
+ return Promise.race([
536
+ fetch(fullUrl, fetchOptions).then((response) => {
537
+ if (response.status == 204) {
538
+ return response;
539
+ }
540
+ else if (response.status >= 200 && response.status < 300) {
541
+ return response.json();
542
+ }
543
+ else {
544
+ throw response;
545
+ }
546
+ }),
547
+ new Promise((_, reject) => setTimeout(reject, this.timeoutMs, "Request timed out.")),
548
+ ]);
549
+ }
495
550
  }
496
- ;
497
551
  //# sourceMappingURL=api.js.map