@mtkruto/node 0.1.140 → 0.1.142

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 (45) hide show
  1. package/esm/4_constants.d.ts +1 -1
  2. package/esm/4_constants.js +1 -1
  3. package/esm/5_client.d.ts +1 -0
  4. package/esm/5_client.js +1 -0
  5. package/esm/client/0_types.d.ts +1 -0
  6. package/esm/client/1_reaction_manager.d.ts +9 -0
  7. package/esm/client/1_reaction_manager.js +84 -0
  8. package/esm/client/2_message_manager.d.ts +13 -1
  9. package/esm/client/2_message_manager.js +130 -29
  10. package/esm/client/3_callback_query_manager.d.ts +16 -0
  11. package/esm/client/3_callback_query_manager.js +36 -0
  12. package/esm/client/3_chat_list_manager.d.ts +5 -9
  13. package/esm/client/3_chat_list_manager.js +190 -103
  14. package/esm/client/3_inline_query_manager.d.ts +16 -0
  15. package/esm/client/3_inline_query_manager.js +48 -0
  16. package/esm/client/4_client.d.ts +10 -10
  17. package/esm/client/4_client.js +128 -315
  18. package/esm/client/5_session_string.d.ts +3 -0
  19. package/esm/client/5_session_string.js +22 -0
  20. package/esm/connection/1_connection_web_socket.js +1 -1
  21. package/package.json +1 -1
  22. package/script/4_constants.d.ts +1 -1
  23. package/script/4_constants.js +1 -1
  24. package/script/5_client.d.ts +1 -0
  25. package/script/5_client.js +1 -0
  26. package/script/client/0_types.d.ts +1 -0
  27. package/script/client/1_reaction_manager.d.ts +9 -0
  28. package/script/client/1_reaction_manager.js +88 -0
  29. package/script/client/2_message_manager.d.ts +13 -1
  30. package/script/client/2_message_manager.js +129 -28
  31. package/script/client/3_callback_query_manager.d.ts +16 -0
  32. package/script/client/3_callback_query_manager.js +40 -0
  33. package/script/client/3_chat_list_manager.d.ts +5 -9
  34. package/script/client/3_chat_list_manager.js +187 -100
  35. package/script/client/3_inline_query_manager.d.ts +16 -0
  36. package/script/client/3_inline_query_manager.js +52 -0
  37. package/script/client/4_client.d.ts +10 -10
  38. package/script/client/4_client.js +126 -313
  39. package/script/client/5_session_string.d.ts +3 -0
  40. package/script/client/5_session_string.js +27 -0
  41. package/script/connection/1_connection_web_socket.js +1 -1
  42. package/esm/client/3_reaction_manager.d.ts +0 -16
  43. package/esm/client/3_reaction_manager.js +0 -61
  44. package/script/client/3_reaction_manager.d.ts +0 -16
  45. package/script/client/3_reaction_manager.js +0 -65
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.importSessionString = exports.exportSessionString = void 0;
4
+ const _1_utilities_js_1 = require("../1_utilities.js");
5
+ const _2_tl_js_1 = require("../2_tl.js");
6
+ async function exportSessionString(client) {
7
+ const [dc, authKey] = await Promise.all([client.storage.getDc(), client.storage.getAuthKey()]);
8
+ if (dc == null || authKey == null) {
9
+ throw new Error("Client not authorized");
10
+ }
11
+ const writer = new _2_tl_js_1.TLWriter();
12
+ writer.writeString(dc);
13
+ writer.writeBytes(authKey);
14
+ const data = (0, _1_utilities_js_1.rleEncode)(writer.buffer);
15
+ return (0, _1_utilities_js_1.base64EncodeUrlSafe)(data);
16
+ }
17
+ exports.exportSessionString = exportSessionString;
18
+ async function importSessionString(client, string) {
19
+ const data = (0, _1_utilities_js_1.rleDecode)((0, _1_utilities_js_1.base64DecodeUrlSafe)(string));
20
+ const reader = new _2_tl_js_1.TLReader(data);
21
+ const dc = reader.readString();
22
+ const authKey = reader.readBytes();
23
+ await client.storage.initialize();
24
+ await client.storage.setDc(dc);
25
+ await client.storage.setAuthKey(authKey);
26
+ }
27
+ exports.importSessionString = importSessionString;
@@ -76,7 +76,7 @@ class ConnectionWebSocket extends _0_connection_js_1.ConnectionUnframed {
76
76
  try {
77
77
  while (__classPrivateFieldGet(this, _ConnectionWebSocket_webSocket, "f").readyState != dntShim.WebSocket.OPEN) {
78
78
  if (__classPrivateFieldGet(this, _ConnectionWebSocket_webSocket, "f").readyState == dntShim.WebSocket.CLOSED) {
79
- if (__classPrivateFieldGet(this, _ConnectionWebSocket_connectionError, "f") instanceof ErrorEvent) {
79
+ if (__classPrivateFieldGet(this, _ConnectionWebSocket_connectionError, "f") && "message" in __classPrivateFieldGet(this, _ConnectionWebSocket_connectionError, "f")) {
80
80
  throw new Error(__classPrivateFieldGet(this, _ConnectionWebSocket_connectionError, "f").message);
81
81
  }
82
82
  else {
@@ -1,16 +0,0 @@
1
- import { ID, Reaction } from "../3_types.js";
2
- import { AddReactionParams, SetReactionsParams } from "./0_params.js";
3
- import { C as C_ } from "./0_types.js";
4
- import { MessageManager } from "./2_message_manager.js";
5
- interface C extends C_ {
6
- messageManager: MessageManager;
7
- }
8
- export declare class ReactionManager {
9
- #private;
10
- constructor(c: C);
11
- setAvailableReactions(chatId: ID, availableReactions: "none" | "all" | Reaction[]): Promise<void>;
12
- setReactions(chatId: number, messageId: number, reactions: Reaction[], params?: SetReactionsParams): Promise<void>;
13
- addReaction(chatId: number, messageId: number, reaction: Reaction, params?: AddReactionParams): Promise<void>;
14
- removeReaction(chatId: number, messageId: number, reaction: Reaction): Promise<void>;
15
- }
16
- export {};
@@ -1,61 +0,0 @@
1
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
- if (kind === "m") throw new TypeError("Private method is not writable");
3
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
- };
7
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
- };
12
- var _ReactionManager_instances, _ReactionManager_c, _ReactionManager_sendReaction;
13
- import { UNREACHABLE } from "../1_utilities.js";
14
- import { types } from "../2_tl.js";
15
- import { reactionEqual, reactionToTlObject } from "../3_types.js";
16
- export class ReactionManager {
17
- constructor(c) {
18
- _ReactionManager_instances.add(this);
19
- _ReactionManager_c.set(this, void 0);
20
- __classPrivateFieldSet(this, _ReactionManager_c, c, "f");
21
- }
22
- async setAvailableReactions(chatId, availableReactions) {
23
- // TODO: sync with storage
24
- await __classPrivateFieldGet(this, _ReactionManager_c, "f").api.messages.setChatAvailableReactions({
25
- peer: await __classPrivateFieldGet(this, _ReactionManager_c, "f").getInputPeer(chatId),
26
- available_reactions: availableReactions == "none" ? new types.ChatReactionsNone() : availableReactions == "all" ? new types.ChatReactionsAll() : Array.isArray(availableReactions) ? new types.ChatReactionsSome({ reactions: availableReactions.map((v) => v.type == "emoji" ? new types.ReactionEmoji({ emoticon: v.emoji }) : new types.ReactionCustomEmoji({ document_id: BigInt(v.id) })) }) : UNREACHABLE(),
27
- });
28
- }
29
- async setReactions(chatId, messageId, reactions, params) {
30
- await __classPrivateFieldGet(this, _ReactionManager_instances, "m", _ReactionManager_sendReaction).call(this, chatId, messageId, reactions, params);
31
- }
32
- async addReaction(chatId, messageId, reaction, params) {
33
- const chosenReactions = await __classPrivateFieldGet(this, _ReactionManager_c, "f").messageManager.getMessage(chatId, messageId).then((v) => v?.reactions ?? []).then((v) => v.filter((v) => v.chosen));
34
- for (const r of chosenReactions) {
35
- if (reactionEqual(r.reaction, reaction)) {
36
- return;
37
- }
38
- }
39
- const reactions = [reaction, ...chosenReactions.map((v) => v.reaction)];
40
- await this.setReactions(chatId, messageId, reactions, params);
41
- }
42
- async removeReaction(chatId, messageId, reaction) {
43
- const chosenReactions = await __classPrivateFieldGet(this, _ReactionManager_c, "f").messageManager.getMessage(chatId, messageId).then((v) => v?.reactions ?? []).then((v) => v.filter((v) => v.chosen));
44
- for (const r of chosenReactions) {
45
- if (reactionEqual(r.reaction, reaction)) {
46
- const reactions = chosenReactions.filter((v) => v != r).map((v) => v.reaction);
47
- await this.setReactions(chatId, messageId, reactions);
48
- break;
49
- }
50
- }
51
- }
52
- }
53
- _ReactionManager_c = new WeakMap(), _ReactionManager_instances = new WeakSet(), _ReactionManager_sendReaction = async function _ReactionManager_sendReaction(chatId, messageId, reactions, params) {
54
- await __classPrivateFieldGet(this, _ReactionManager_c, "f").api.messages.sendReaction({
55
- peer: await __classPrivateFieldGet(this, _ReactionManager_c, "f").getInputPeer(chatId),
56
- msg_id: messageId,
57
- reaction: reactions.map((v) => reactionToTlObject(v)),
58
- big: params?.big ? true : undefined,
59
- add_to_recent: params?.addToRecents ? true : undefined,
60
- });
61
- };
@@ -1,16 +0,0 @@
1
- import { ID, Reaction } from "../3_types.js";
2
- import { AddReactionParams, SetReactionsParams } from "./0_params.js";
3
- import { C as C_ } from "./0_types.js";
4
- import { MessageManager } from "./2_message_manager.js";
5
- interface C extends C_ {
6
- messageManager: MessageManager;
7
- }
8
- export declare class ReactionManager {
9
- #private;
10
- constructor(c: C);
11
- setAvailableReactions(chatId: ID, availableReactions: "none" | "all" | Reaction[]): Promise<void>;
12
- setReactions(chatId: number, messageId: number, reactions: Reaction[], params?: SetReactionsParams): Promise<void>;
13
- addReaction(chatId: number, messageId: number, reaction: Reaction, params?: AddReactionParams): Promise<void>;
14
- removeReaction(chatId: number, messageId: number, reaction: Reaction): Promise<void>;
15
- }
16
- export {};
@@ -1,65 +0,0 @@
1
- "use strict";
2
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
- if (kind === "m") throw new TypeError("Private method is not writable");
4
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
- };
13
- var _ReactionManager_instances, _ReactionManager_c, _ReactionManager_sendReaction;
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.ReactionManager = void 0;
16
- const _1_utilities_js_1 = require("../1_utilities.js");
17
- const _2_tl_js_1 = require("../2_tl.js");
18
- const _3_types_js_1 = require("../3_types.js");
19
- class ReactionManager {
20
- constructor(c) {
21
- _ReactionManager_instances.add(this);
22
- _ReactionManager_c.set(this, void 0);
23
- __classPrivateFieldSet(this, _ReactionManager_c, c, "f");
24
- }
25
- async setAvailableReactions(chatId, availableReactions) {
26
- // TODO: sync with storage
27
- await __classPrivateFieldGet(this, _ReactionManager_c, "f").api.messages.setChatAvailableReactions({
28
- peer: await __classPrivateFieldGet(this, _ReactionManager_c, "f").getInputPeer(chatId),
29
- available_reactions: availableReactions == "none" ? new _2_tl_js_1.types.ChatReactionsNone() : availableReactions == "all" ? new _2_tl_js_1.types.ChatReactionsAll() : Array.isArray(availableReactions) ? new _2_tl_js_1.types.ChatReactionsSome({ reactions: availableReactions.map((v) => v.type == "emoji" ? new _2_tl_js_1.types.ReactionEmoji({ emoticon: v.emoji }) : new _2_tl_js_1.types.ReactionCustomEmoji({ document_id: BigInt(v.id) })) }) : (0, _1_utilities_js_1.UNREACHABLE)(),
30
- });
31
- }
32
- async setReactions(chatId, messageId, reactions, params) {
33
- await __classPrivateFieldGet(this, _ReactionManager_instances, "m", _ReactionManager_sendReaction).call(this, chatId, messageId, reactions, params);
34
- }
35
- async addReaction(chatId, messageId, reaction, params) {
36
- const chosenReactions = await __classPrivateFieldGet(this, _ReactionManager_c, "f").messageManager.getMessage(chatId, messageId).then((v) => v?.reactions ?? []).then((v) => v.filter((v) => v.chosen));
37
- for (const r of chosenReactions) {
38
- if ((0, _3_types_js_1.reactionEqual)(r.reaction, reaction)) {
39
- return;
40
- }
41
- }
42
- const reactions = [reaction, ...chosenReactions.map((v) => v.reaction)];
43
- await this.setReactions(chatId, messageId, reactions, params);
44
- }
45
- async removeReaction(chatId, messageId, reaction) {
46
- const chosenReactions = await __classPrivateFieldGet(this, _ReactionManager_c, "f").messageManager.getMessage(chatId, messageId).then((v) => v?.reactions ?? []).then((v) => v.filter((v) => v.chosen));
47
- for (const r of chosenReactions) {
48
- if ((0, _3_types_js_1.reactionEqual)(r.reaction, reaction)) {
49
- const reactions = chosenReactions.filter((v) => v != r).map((v) => v.reaction);
50
- await this.setReactions(chatId, messageId, reactions);
51
- break;
52
- }
53
- }
54
- }
55
- }
56
- exports.ReactionManager = ReactionManager;
57
- _ReactionManager_c = new WeakMap(), _ReactionManager_instances = new WeakSet(), _ReactionManager_sendReaction = async function _ReactionManager_sendReaction(chatId, messageId, reactions, params) {
58
- await __classPrivateFieldGet(this, _ReactionManager_c, "f").api.messages.sendReaction({
59
- peer: await __classPrivateFieldGet(this, _ReactionManager_c, "f").getInputPeer(chatId),
60
- msg_id: messageId,
61
- reaction: reactions.map((v) => (0, _3_types_js_1.reactionToTlObject)(v)),
62
- big: params?.big ? true : undefined,
63
- add_to_recent: params?.addToRecents ? true : undefined,
64
- });
65
- };