@mtkruto/node 0.171.0 → 0.180.1

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 (107) hide show
  1. package/esm/0_deps.d.ts +1 -0
  2. package/esm/0_deps.d.ts.map +1 -1
  3. package/esm/0_deps.js +1 -0
  4. package/esm/client/0_params.d.ts +54 -8
  5. package/esm/client/0_params.d.ts.map +1 -1
  6. package/esm/client/1_client_generic.d.ts +72 -1
  7. package/esm/client/1_client_generic.d.ts.map +1 -1
  8. package/esm/client/2_file_manager.d.ts +9 -1
  9. package/esm/client/2_file_manager.d.ts.map +1 -1
  10. package/esm/client/2_file_manager.js +93 -37
  11. package/esm/client/3_secret_chat_manager.d.ts +11 -2
  12. package/esm/client/3_secret_chat_manager.d.ts.map +1 -1
  13. package/esm/client/3_secret_chat_manager.js +322 -11
  14. package/esm/client/4_context.d.ts +24 -6
  15. package/esm/client/4_context.d.ts.map +1 -1
  16. package/esm/client/4_context.js +53 -0
  17. package/esm/client/6_client.d.ts +72 -1
  18. package/esm/client/6_client.d.ts.map +1 -1
  19. package/esm/client/6_client.js +89 -0
  20. package/esm/client/6_client_dispatcher.d.ts +72 -1
  21. package/esm/client/6_client_dispatcher.d.ts.map +1 -1
  22. package/esm/client/6_client_dispatcher.js +89 -0
  23. package/esm/deps/jsr.io/@std/crypto/1.1.0/_types.d.ts +9 -0
  24. package/esm/deps/jsr.io/@std/crypto/1.1.0/_types.d.ts.map +1 -0
  25. package/esm/deps/jsr.io/@std/crypto/1.1.0/_types.js +2 -0
  26. package/esm/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.d.ts +2 -0
  27. package/esm/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.d.ts.map +1 -0
  28. package/esm/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.internal.d.ts +69 -0
  29. package/esm/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.internal.d.ts.map +1 -0
  30. package/esm/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.internal.js +237 -0
  31. package/esm/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.js +2277 -0
  32. package/esm/deps/jsr.io/@std/crypto/1.1.0/_wasm/mod.d.ts +13 -0
  33. package/esm/deps/jsr.io/@std/crypto/1.1.0/_wasm/mod.d.ts.map +1 -0
  34. package/esm/deps/jsr.io/@std/crypto/1.1.0/_wasm/mod.js +46 -0
  35. package/esm/deps/jsr.io/@std/crypto/1.1.0/aes_gcm.d.ts +76 -0
  36. package/esm/deps/jsr.io/@std/crypto/1.1.0/aes_gcm.d.ts.map +1 -0
  37. package/esm/deps/jsr.io/@std/crypto/1.1.0/aes_gcm.js +132 -0
  38. package/esm/deps/jsr.io/@std/crypto/1.1.0/crypto.d.ts +149 -0
  39. package/esm/deps/jsr.io/@std/crypto/1.1.0/crypto.d.ts.map +1 -0
  40. package/esm/deps/jsr.io/@std/crypto/1.1.0/crypto.js +270 -0
  41. package/esm/deps/jsr.io/@std/crypto/1.1.0/mod.d.ts +22 -0
  42. package/esm/deps/jsr.io/@std/crypto/1.1.0/mod.d.ts.map +1 -0
  43. package/esm/deps/jsr.io/@std/crypto/1.1.0/mod.js +23 -0
  44. package/esm/deps/jsr.io/@std/crypto/1.1.0/timing_safe_equal.d.ts +40 -0
  45. package/esm/deps/jsr.io/@std/crypto/1.1.0/timing_safe_equal.d.ts.map +1 -0
  46. package/esm/deps/jsr.io/@std/crypto/1.1.0/timing_safe_equal.js +61 -0
  47. package/esm/tl/0_utilities.d.ts.map +1 -1
  48. package/esm/tl/0_utilities.js +44 -2
  49. package/esm/tl/1_tl_writer.d.ts.map +1 -1
  50. package/esm/tl/1_tl_writer.js +6 -1
  51. package/esm/types/1_sticker.d.ts +7 -9
  52. package/esm/types/1_sticker.d.ts.map +1 -1
  53. package/esm/types/1_sticker.js +1 -6
  54. package/package.json +1 -1
  55. package/script/0_deps.d.ts +1 -0
  56. package/script/0_deps.d.ts.map +1 -1
  57. package/script/0_deps.js +7 -5
  58. package/script/client/0_params.d.ts +54 -8
  59. package/script/client/0_params.d.ts.map +1 -1
  60. package/script/client/1_client_generic.d.ts +72 -1
  61. package/script/client/1_client_generic.d.ts.map +1 -1
  62. package/script/client/2_file_manager.d.ts +9 -1
  63. package/script/client/2_file_manager.d.ts.map +1 -1
  64. package/script/client/2_file_manager.js +90 -34
  65. package/script/client/3_secret_chat_manager.d.ts +11 -2
  66. package/script/client/3_secret_chat_manager.d.ts.map +1 -1
  67. package/script/client/3_secret_chat_manager.js +319 -8
  68. package/script/client/4_context.d.ts +24 -6
  69. package/script/client/4_context.d.ts.map +1 -1
  70. package/script/client/4_context.js +53 -0
  71. package/script/client/6_client.d.ts +72 -1
  72. package/script/client/6_client.d.ts.map +1 -1
  73. package/script/client/6_client.js +89 -0
  74. package/script/client/6_client_dispatcher.d.ts +72 -1
  75. package/script/client/6_client_dispatcher.d.ts.map +1 -1
  76. package/script/client/6_client_dispatcher.js +89 -0
  77. package/script/deps/jsr.io/@std/crypto/1.1.0/_types.d.ts +9 -0
  78. package/script/deps/jsr.io/@std/crypto/1.1.0/_types.d.ts.map +1 -0
  79. package/script/deps/jsr.io/@std/crypto/1.1.0/_types.js +3 -0
  80. package/script/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.d.ts +2 -0
  81. package/script/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.d.ts.map +1 -0
  82. package/script/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.internal.d.ts +69 -0
  83. package/script/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.internal.d.ts.map +1 -0
  84. package/script/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.internal.js +255 -0
  85. package/script/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.js +2315 -0
  86. package/script/deps/jsr.io/@std/crypto/1.1.0/_wasm/mod.d.ts +13 -0
  87. package/script/deps/jsr.io/@std/crypto/1.1.0/_wasm/mod.d.ts.map +1 -0
  88. package/script/deps/jsr.io/@std/crypto/1.1.0/_wasm/mod.js +51 -0
  89. package/script/deps/jsr.io/@std/crypto/1.1.0/aes_gcm.d.ts +76 -0
  90. package/script/deps/jsr.io/@std/crypto/1.1.0/aes_gcm.d.ts.map +1 -0
  91. package/script/deps/jsr.io/@std/crypto/1.1.0/aes_gcm.js +169 -0
  92. package/script/deps/jsr.io/@std/crypto/1.1.0/crypto.d.ts +149 -0
  93. package/script/deps/jsr.io/@std/crypto/1.1.0/crypto.d.ts.map +1 -0
  94. package/script/deps/jsr.io/@std/crypto/1.1.0/crypto.js +306 -0
  95. package/script/deps/jsr.io/@std/crypto/1.1.0/mod.d.ts +22 -0
  96. package/script/deps/jsr.io/@std/crypto/1.1.0/mod.d.ts.map +1 -0
  97. package/script/deps/jsr.io/@std/crypto/1.1.0/mod.js +39 -0
  98. package/script/deps/jsr.io/@std/crypto/1.1.0/timing_safe_equal.d.ts +40 -0
  99. package/script/deps/jsr.io/@std/crypto/1.1.0/timing_safe_equal.d.ts.map +1 -0
  100. package/script/deps/jsr.io/@std/crypto/1.1.0/timing_safe_equal.js +64 -0
  101. package/script/tl/0_utilities.d.ts.map +1 -1
  102. package/script/tl/0_utilities.js +43 -1
  103. package/script/tl/1_tl_writer.d.ts.map +1 -1
  104. package/script/tl/1_tl_writer.js +6 -1
  105. package/script/types/1_sticker.d.ts +7 -9
  106. package/script/types/1_sticker.d.ts.map +1 -1
  107. package/script/types/1_sticker.js +1 -6
@@ -19,15 +19,16 @@ var _a;
19
19
  * along with this program. If not, see <https://www.gnu.org/licenses/>.
20
20
  */
21
21
  import * as dntShim from "../_dnt.shims.js";
22
- import { concat, equals, ige256Decrypt, ige256Encrypt, WEEK } from "../0_deps.js";
22
+ import { concat, equals, ige256Decrypt, ige256Encrypt, unreachable, WEEK } from "../0_deps.js";
23
23
  import { InputError } from "../0_errors.js";
24
24
  import { getLogger, getRandomId, getRandomInt, intFromBytes, intToBytes, mod, modExp, sha1, sha256 } from "../1_utilities.js";
25
- import { Api, SecretChats, TLReader, TLWriter, X } from "../2_tl.js";
26
- import { secretMessageEntityToTlObject } from "../3_types.js";
25
+ import { Api, repr, SecretChats, TLReader, TLWriter, X } from "../2_tl.js";
26
+ import { deserializeFileId, secretMessageEntityToTlObject } from "../3_types.js";
27
27
  import { constructSecretChat } from "../types/0_secret_chat.js";
28
28
  import { constructSecretMessage } from "../types/2_secret_message.js";
29
29
  import { isGoodModExpFirst, isSafePrime } from "./0_password.js";
30
30
  import { SecretChatState } from "./0_secret_chat_state.js";
31
+ import { checkPhotoName } from "./0_utilities.js";
31
32
  const secretChatManagerUpdates = [
32
33
  "updateEncryption",
33
34
  "updateNewEncryptedMessage",
@@ -162,6 +163,19 @@ export class SecretChatManager {
162
163
  state.encryptedChat = result;
163
164
  return constructSecretChat(result);
164
165
  }
166
+ async endSecretChat(id, params) {
167
+ this.#c.storage.assertUser("endSecretChat");
168
+ const state = this.#getSecretChatState(id);
169
+ switch (state.encryptedChat._) {
170
+ case "encryptedChatEmpty":
171
+ case "encryptedChatDiscarded":
172
+ throw new InputError("The secret chat has already ended.");
173
+ }
174
+ await this.#c.invoke({ _: "messages.discardEncryption", chat_id: state.encryptedChat.id, delete_history: params?.isHistoryDeleted || undefined });
175
+ state.encryptedChat = { _: "encryptedChatDiscarded", id: state.encryptedChat.id, history_deleted: params?.isHistoryDeleted || undefined };
176
+ await state.commit(this.#c.messageStorage.storage);
177
+ return constructSecretChat(state.encryptedChat);
178
+ }
165
179
  #getNextOutSeqNo(id, isCreator) {
166
180
  const state = this.#getSecretChatState(id);
167
181
  const rawOutSeqNo = state.outSeqNo;
@@ -252,23 +266,300 @@ export class SecretChatManager {
252
266
  await this.#sendMessage(decryptedMessage, state.encryptedChat, state.authKey, state.authKeyId_);
253
267
  await this.#postSendMessage(state);
254
268
  }
269
+ #generateKeyIv() {
270
+ const key = dntShim.crypto.getRandomValues(new Uint8Array(32));
271
+ const iv = dntShim.crypto.getRandomValues(new Uint8Array(32));
272
+ return [key, iv];
273
+ }
274
+ async sendSecretDocument(id, document, params) {
275
+ this.#c.storage.assertUser("sendSecretDocument");
276
+ const state = this.#mustGetEncryptedChat(id);
277
+ const [key, iv] = this.#generateKeyIv();
278
+ const { inputEncryptedFile, fileSize } = await this.#c.fileManager.upload(document, params, null, true, { key, iv });
279
+ const random_id = getRandomId();
280
+ const decryptedMessage = {
281
+ _: "decryptedMessage",
282
+ message: params?.caption ?? "",
283
+ entities: params?.entities?.length ? params.entities.map(secretMessageEntityToTlObject) : undefined,
284
+ random_id,
285
+ ttl: params?.ttl ?? 0,
286
+ silent: params?.isSilent || undefined,
287
+ reply_to_random_id: params?.replyToMessageId ? BigInt(params.replyToMessageId) : undefined,
288
+ via_bot_name: params?.viaBot,
289
+ media: {
290
+ _: "decryptedMessageMediaDocument",
291
+ key,
292
+ iv,
293
+ caption: "",
294
+ size: BigInt(fileSize),
295
+ mime_type: params?.mimeType ?? "",
296
+ attributes: params?.fileName ? [{ _: "documentAttributeFilename", file_name: params.fileName }] : [],
297
+ thumb: new Uint8Array(),
298
+ thumb_w: 0,
299
+ thumb_h: 0,
300
+ },
301
+ };
302
+ await this.#sendMessage(decryptedMessage, state.encryptedChat, state.authKey, state.authKeyId_, inputEncryptedFile);
303
+ await this.#postSendMessage(state);
304
+ }
305
+ async sendSecretVideo(id, video, params) {
306
+ this.#c.storage.assertUser("sendSecretVideo");
307
+ const state = this.#mustGetEncryptedChat(id);
308
+ const [key, iv] = this.#generateKeyIv();
309
+ const { inputEncryptedFile, fileSize } = await this.#c.fileManager.upload(video, params, null, true, { key, iv });
310
+ const random_id = getRandomId();
311
+ const decryptedMessage = {
312
+ _: "decryptedMessage",
313
+ message: params?.caption ?? "",
314
+ entities: params?.entities?.length ? params.entities.map(secretMessageEntityToTlObject) : undefined,
315
+ random_id,
316
+ ttl: params?.ttl ?? 0,
317
+ silent: params?.isSilent || undefined,
318
+ reply_to_random_id: params?.replyToMessageId ? BigInt(params.replyToMessageId) : undefined,
319
+ via_bot_name: params?.viaBot,
320
+ media: {
321
+ _: "decryptedMessageMediaDocument",
322
+ key,
323
+ iv,
324
+ caption: "",
325
+ size: BigInt(fileSize),
326
+ mime_type: params?.mimeType ?? "",
327
+ attributes: [
328
+ ...(params?.fileName ? [{ _: "documentAttributeFilename", file_name: params.fileName }] : []),
329
+ { _: "documentAttributeVideo", duration: params?.duration ?? 0, w: params?.width ?? 0, h: params?.height ?? 0 },
330
+ ],
331
+ thumb: new Uint8Array(),
332
+ thumb_w: 0,
333
+ thumb_h: 0,
334
+ },
335
+ };
336
+ await this.#sendMessage(decryptedMessage, state.encryptedChat, state.authKey, state.authKeyId_, inputEncryptedFile);
337
+ await this.#postSendMessage(state);
338
+ }
339
+ async sendSecretVideoNote(id, videoNote, params) {
340
+ this.#c.storage.assertUser("sendSecretVideoNote");
341
+ const state = this.#mustGetEncryptedChat(id);
342
+ const [key, iv] = this.#generateKeyIv();
343
+ const { inputEncryptedFile, fileSize } = await this.#c.fileManager.upload(videoNote, params, null, true, { key, iv });
344
+ const random_id = getRandomId();
345
+ const decryptedMessage = {
346
+ _: "decryptedMessage",
347
+ message: params?.caption ?? "",
348
+ entities: params?.entities?.length ? params.entities.map(secretMessageEntityToTlObject) : undefined,
349
+ random_id,
350
+ ttl: params?.ttl ?? 0,
351
+ silent: params?.isSilent || undefined,
352
+ reply_to_random_id: params?.replyToMessageId ? BigInt(params.replyToMessageId) : undefined,
353
+ via_bot_name: params?.viaBot,
354
+ media: {
355
+ _: "decryptedMessageMediaDocument",
356
+ key,
357
+ iv,
358
+ caption: "",
359
+ size: BigInt(fileSize),
360
+ mime_type: params?.mimeType ?? "",
361
+ attributes: [
362
+ ...(params?.fileName ? [{ _: "documentAttributeFilename", file_name: params.fileName }] : []),
363
+ { _: "documentAttributeVideo", duration: params?.duration ?? 0, w: params?.length ?? 0, h: params?.length ?? 0, round_message: true },
364
+ ],
365
+ thumb: new Uint8Array(),
366
+ thumb_w: 0,
367
+ thumb_h: 0,
368
+ },
369
+ };
370
+ await this.#sendMessage(decryptedMessage, state.encryptedChat, state.authKey, state.authKeyId_, inputEncryptedFile);
371
+ await this.#postSendMessage(state);
372
+ }
373
+ async sendSecretAudio(id, audio, params) {
374
+ this.#c.storage.assertUser("sendSecretAudio");
375
+ const state = this.#mustGetEncryptedChat(id);
376
+ const [key, iv] = this.#generateKeyIv();
377
+ const { inputEncryptedFile, fileSize } = await this.#c.fileManager.upload(audio, params, null, true, { key, iv });
378
+ const random_id = getRandomId();
379
+ const decryptedMessage = {
380
+ _: "decryptedMessage",
381
+ message: params?.caption ?? "",
382
+ entities: params?.entities?.length ? params.entities.map(secretMessageEntityToTlObject) : undefined,
383
+ random_id,
384
+ ttl: params?.ttl ?? 0,
385
+ silent: params?.isSilent || undefined,
386
+ reply_to_random_id: params?.replyToMessageId ? BigInt(params.replyToMessageId) : undefined,
387
+ via_bot_name: params?.viaBot,
388
+ media: {
389
+ _: "decryptedMessageMediaDocument",
390
+ key,
391
+ iv,
392
+ caption: "",
393
+ size: BigInt(fileSize),
394
+ mime_type: params?.mimeType ?? "",
395
+ attributes: [
396
+ ...(params?.fileName ? [{ _: "documentAttributeFilename", file_name: params.fileName }] : []),
397
+ { _: "documentAttributeAudio", duration: params?.duration ?? 0, title: params?.title, performer: params?.performer },
398
+ ],
399
+ thumb: new Uint8Array(),
400
+ thumb_w: 0,
401
+ thumb_h: 0,
402
+ },
403
+ };
404
+ await this.#sendMessage(decryptedMessage, state.encryptedChat, state.authKey, state.authKeyId_, inputEncryptedFile);
405
+ await this.#postSendMessage(state);
406
+ }
407
+ async sendSecretVoice(id, voice, params) {
408
+ this.#c.storage.assertUser("sendSecretVoice");
409
+ const state = this.#mustGetEncryptedChat(id);
410
+ const [key, iv] = this.#generateKeyIv();
411
+ const { inputEncryptedFile, fileSize } = await this.#c.fileManager.upload(voice, params, null, true, { key, iv });
412
+ const random_id = getRandomId();
413
+ const decryptedMessage = {
414
+ _: "decryptedMessage",
415
+ message: params?.caption ?? "",
416
+ entities: params?.entities?.length ? params.entities.map(secretMessageEntityToTlObject) : undefined,
417
+ random_id,
418
+ ttl: params?.ttl ?? 0,
419
+ silent: params?.isSilent || undefined,
420
+ reply_to_random_id: params?.replyToMessageId ? BigInt(params.replyToMessageId) : undefined,
421
+ via_bot_name: params?.viaBot,
422
+ media: {
423
+ _: "decryptedMessageMediaDocument",
424
+ key,
425
+ iv,
426
+ caption: "",
427
+ size: BigInt(fileSize),
428
+ mime_type: params?.mimeType ?? "",
429
+ attributes: [
430
+ ...(params?.fileName ? [{ _: "documentAttributeFilename", file_name: params.fileName }] : []),
431
+ { _: "documentAttributeAudio", duration: params?.duration ?? 0, voice: true },
432
+ ],
433
+ thumb: new Uint8Array(),
434
+ thumb_w: 0,
435
+ thumb_h: 0,
436
+ },
437
+ };
438
+ await this.#sendMessage(decryptedMessage, state.encryptedChat, state.authKey, state.authKeyId_, inputEncryptedFile);
439
+ await this.#postSendMessage(state);
440
+ }
441
+ async sendSecretAnimation(id, animation, params) {
442
+ this.#c.storage.assertUser("sendSecretAnimation");
443
+ const state = this.#mustGetEncryptedChat(id);
444
+ const [key, iv] = this.#generateKeyIv();
445
+ const { inputEncryptedFile, fileSize } = await this.#c.fileManager.upload(animation, params, null, true, { key, iv });
446
+ const random_id = getRandomId();
447
+ const decryptedMessage = {
448
+ _: "decryptedMessage",
449
+ message: params?.caption ?? "",
450
+ entities: params?.entities?.length ? params.entities.map(secretMessageEntityToTlObject) : undefined,
451
+ random_id,
452
+ ttl: params?.ttl ?? 0,
453
+ silent: params?.isSilent || undefined,
454
+ reply_to_random_id: params?.replyToMessageId ? BigInt(params.replyToMessageId) : undefined,
455
+ via_bot_name: params?.viaBot,
456
+ media: {
457
+ _: "decryptedMessageMediaDocument",
458
+ key,
459
+ iv,
460
+ caption: "",
461
+ size: BigInt(fileSize),
462
+ mime_type: params?.mimeType ?? "",
463
+ attributes: [
464
+ ...(params?.fileName ? [{ _: "documentAttributeFilename", file_name: params.fileName }] : []),
465
+ { _: "documentAttributeVideo", duration: params?.duration ?? 0, w: params?.width ?? 0, h: params?.height ?? 0 },
466
+ { _: "documentAttributeAnimated" },
467
+ ],
468
+ thumb: new Uint8Array(),
469
+ thumb_w: 0,
470
+ thumb_h: 0,
471
+ },
472
+ };
473
+ await this.#sendMessage(decryptedMessage, state.encryptedChat, state.authKey, state.authKeyId_, inputEncryptedFile);
474
+ await this.#postSendMessage(state);
475
+ }
476
+ async sendSecretPhoto(id, photo, params) {
477
+ this.#c.storage.assertUser("sendSecretPhoto");
478
+ const state = this.#mustGetEncryptedChat(id);
479
+ const [key, iv] = this.#generateKeyIv();
480
+ const { inputEncryptedFile, fileSize } = await this.#c.fileManager.upload(photo, params, checkPhotoName(params), true, { key, iv });
481
+ const random_id = getRandomId();
482
+ const decryptedMessage = {
483
+ _: "decryptedMessage",
484
+ message: params?.caption ?? "",
485
+ entities: params?.entities?.length ? params.entities.map(secretMessageEntityToTlObject) : undefined,
486
+ random_id,
487
+ ttl: params?.ttl ?? 0,
488
+ silent: params?.isSilent || undefined,
489
+ reply_to_random_id: params?.replyToMessageId ? BigInt(params.replyToMessageId) : undefined,
490
+ via_bot_name: params?.viaBot,
491
+ media: {
492
+ _: "decryptedMessageMediaPhoto",
493
+ key,
494
+ iv,
495
+ caption: "",
496
+ size: fileSize,
497
+ w: params?.width ?? 0,
498
+ h: params?.height ?? 0,
499
+ thumb: new Uint8Array(),
500
+ thumb_w: 0,
501
+ thumb_h: 0,
502
+ },
503
+ };
504
+ await this.#sendMessage(decryptedMessage, state.encryptedChat, state.authKey, state.authKeyId_, inputEncryptedFile);
505
+ await this.#postSendMessage(state);
506
+ }
507
+ async sendSecretSticker(id, sticker, params) {
508
+ this.#c.storage.assertUser("sendSecretSticker");
509
+ if (!sticker.setName) {
510
+ throw new InputError("This sticker cannot be sent to a secret chat.");
511
+ }
512
+ const state = this.#mustGetEncryptedChat(id);
513
+ let inputEncryptedFile;
514
+ const fileID = deserializeFileId(sticker.fileId);
515
+ if (fileID.location.type !== "common") {
516
+ unreachable();
517
+ }
518
+ const media = {
519
+ _: "decryptedMessageMediaExternalDocument",
520
+ dc_id: fileID.dcId,
521
+ access_hash: fileID.location.accessHash,
522
+ attributes: [
523
+ { _: "documentAttributeImageSize", w: sticker.width, h: sticker.height },
524
+ { _: "documentAttributeSticker", alt: sticker.emoji ?? "", stickerset: { _: "inputStickerSetShortName", short_name: sticker.setName } },
525
+ ],
526
+ date: 0,
527
+ id: fileID.location.id,
528
+ size: sticker.fileSize ?? 0,
529
+ thumb: { _: "photoSizeEmpty", type: "s" },
530
+ mime_type: sticker.isVideo ? "video/webm" : sticker.isAnimated ? "application/x-tgsticker" : "image/webp",
531
+ };
532
+ const random_id = getRandomId();
533
+ const decryptedMessage = {
534
+ _: "decryptedMessage",
535
+ message: "",
536
+ random_id,
537
+ ttl: params?.ttl ?? 0,
538
+ silent: params?.isSilent || undefined,
539
+ reply_to_random_id: params?.replyToMessageId ? BigInt(params.replyToMessageId) : undefined,
540
+ via_bot_name: params?.viaBot,
541
+ media,
542
+ };
543
+ await this.#sendMessage(decryptedMessage, state.encryptedChat, state.authKey, state.authKeyId_, inputEncryptedFile);
544
+ await this.#postSendMessage(state);
545
+ }
255
546
  #sendTails = new Map();
256
- async #sendMessage(message, encryptedChat, authKey, authKeyId) {
547
+ async #sendMessage(message, encryptedChat, authKey, authKeyId, file) {
257
548
  try {
258
- await this.#sendMessageInner(message, encryptedChat, authKey, authKeyId);
549
+ await this.#sendMessageInner(message, encryptedChat, authKey, authKeyId, file);
259
550
  }
260
551
  finally {
261
552
  await this.#getSecretChatState(encryptedChat.id).commit(this.#c.messageStorage.storage);
262
553
  }
263
554
  }
264
- async #sendMessageInner(message, encryptedChat, authKey, authKeyId) {
555
+ async #sendMessageInner(message, encryptedChat, authKey, authKeyId, file) {
265
556
  const previous = this.#sendTails.get(encryptedChat.id) ?? Promise.resolve();
266
557
  const { promise, resolve } = Promise.withResolvers();
267
558
  const tail = previous.then(() => promise);
268
559
  this.#sendTails.set(encryptedChat.id, tail);
269
560
  await previous;
270
561
  try {
271
- await this.#sendMessageUnlocked(message, encryptedChat, authKey, authKeyId);
562
+ await this.#sendMessageUnlocked(message, encryptedChat, authKey, authKeyId, file);
272
563
  }
273
564
  finally {
274
565
  resolve();
@@ -277,15 +568,35 @@ export class SecretChatManager {
277
568
  }
278
569
  }
279
570
  }
280
- async #sendMessageUnlocked(message, encryptedChat, authKey, authKeyId) {
281
- const random_id = getRandomId();
571
+ async #sendMessageUnlocked(message, encryptedChat, authKey, authKeyId, file) {
282
572
  const isCreator = Number(encryptedChat.admin_id) === await this.#c.getSelfId();
283
573
  const out_seq_no = this.#getNextOutSeqNo(encryptedChat.id, isCreator);
284
574
  const in_seq_no = this.#getInSeqNo(encryptedChat.id, isCreator);
285
575
  const decryptedMessageLayer = { _: "decryptedMessageLayer", in_seq_no, layer: 144, message, out_seq_no, random_bytes: dntShim.crypto.getRandomValues(new Uint8Array(15)) };
286
576
  const data = await this.#encryptMessage(isCreator, authKeyId, authKey, decryptedMessageLayer);
287
577
  this.#getSecretChatState(encryptedChat.id).outgoingMessages.set((out_seq_no - (isCreator ? 1 : 0)) / 2, data);
288
- await this.#c.invoke({ _: "messages.sendEncrypted", peer: { _: "inputEncryptedChat", chat_id: encryptedChat.id, access_hash: encryptedChat.access_hash }, random_id, data });
578
+ if (file) {
579
+ const result = await this.#c.invoke({
580
+ _: "messages.sendEncryptedFile",
581
+ silent: SecretChats.is("decryptedMessage", message) && message.silent ? true : undefined,
582
+ peer: { _: "inputEncryptedChat", chat_id: encryptedChat.id, access_hash: encryptedChat.access_hash },
583
+ random_id: message.random_id,
584
+ data,
585
+ file,
586
+ });
587
+ if (!Api.is("messages.sentEncryptedFile", result) || !Api.is("encryptedFile", result.file) || result.file.size <= 0n) {
588
+ throw new InputError("Telegram did not attach the encrypted file to the secret message.");
589
+ }
590
+ }
591
+ else {
592
+ await this.#c.invoke({
593
+ _: "messages.sendEncrypted",
594
+ silent: SecretChats.is("decryptedMessage", message) && message.silent ? true : undefined,
595
+ peer: { _: "inputEncryptedChat", chat_id: encryptedChat.id, access_hash: encryptedChat.access_hash },
596
+ random_id: message.random_id,
597
+ data,
598
+ });
599
+ }
289
600
  const state = this.#getSecretChatState(encryptedChat.id);
290
601
  if (equals(state.authKeyId_, authKeyId)) {
291
602
  ++state.authKeyUseCount;
@@ -645,7 +956,7 @@ export class SecretChatManager {
645
956
  authKeyId = state.previousAuthKeyId_;
646
957
  }
647
958
  const decryptedMessage = await this.#decryptMessage(authKeyId, authKey, isCreator, update.message.bytes);
648
- this.#L.debug("received", decryptedMessage);
959
+ this.#L.debug("received", repr(decryptedMessage));
649
960
  if (SecretChats.is("decryptedMessageLayer", decryptedMessage)) {
650
961
  const x = isCreator ? 0 : 1;
651
962
  const rawOutSeqNo = (decryptedMessage.out_seq_no - x) / 2;
@@ -18,8 +18,8 @@
18
18
  * along with this program. If not, see <https://www.gnu.org/licenses/>.
19
19
  */
20
20
  import { type Api } from "../2_tl.js";
21
- import type { AvailableReactions, BusinessConnection, CallbackQuery, Chat, ChatActionType, ChatMember, ChatP, ChatPChannel, ChatPGroup, ChatPPrivate, ChatPSupergroup, ChatSettings, ChosenInlineResult, ClaimedGifts, FailedInvitation, FileSource, GuestQuery, ID, InlineQuery, InlineQueryResult, InputChecklistItem, InputMedia, InputPollOption, InputRichText, InputStoryContent, InviteLink, JoinRequest, Message, MessageAnimation, MessageAudio, MessageChecklist, MessageContact, MessageDice, MessageDocument, MessageInvoice, MessageList, MessageLocation, MessagePhoto, MessagePoll, MessageReactionList, MessageRichText, MessageSticker, MessageText, MessageVenue, MessageVideo, MessageVideoNote, MessageVoice, Poll, PriceTag, Reaction, RichText, SecretChat, SecretMessage, SlowModeDuration, Story, Topic, Update, User, VideoChatActive, VideoChatScheduled, VoiceTranscription } from "../3_types.js";
22
- import type { AddChatMemberParams, AddContactParams, AddReactionParams, AnswerCallbackQueryParams, AnswerInlineQueryParams, AnswerPreCheckoutQueryParams, ApproveJoinRequestsParams, BanChatMemberParams, CreateInviteLinkParams, CreateStoryParams, CreateTopicParams, DeclineJoinRequestsParams, DeleteMessagesParams, EditInlineMessageCaptionParams, EditInlineMessageMediaParams, EditInlineMessageRichTextParams, EditInlineMessageTextParams, EditMessageCaptionParams, EditMessageLiveLocationParams, EditMessageMediaParams, EditMessageReplyMarkupParams, EditMessageRichTextParams, EditMessageTextParams, EditTopicParams, EnableSignaturesParams, ForwardMessagesParams, GetChatMembersParams, GetClaimedGiftsParams, GetCreatedInviteLinksParams, GetHistoryParams, GetJoinRequestsParams, GetSavedMessagesParams, PinMessageParams, PromoteChatMemberParams, ReplyParams, ScheduleVideoChatParams, SearchMessagesParams, SendAnimationParams, SendAudioParams, SendChecklistParams, SendContactParams, SendDiceParams, SendDocumentParams, SendGiftParams, SendInvoiceParams, SendLocationParams, SendMediaGroupParams, SendMessageDraftParams, SendMessageParams, SendPhotoParams, SendPollParams, SendRichTextDraftParams, SendSecretContactParams, SendSecretLocationParams, SendSecretMessageParams, SendSecretVenueParams, SendStickerParams, SendVenueParams, SendVideoNoteParams, SendVideoParams, SendVoiceParams, SetChatMemberRightsParams, SetChatMemberTagParams, SetChatPhotoParams, SetReactionsParams, StartVideoChatParams, StopPollParams, UpdateChecklistParams } from "./0_params.js";
21
+ import type { AvailableReactions, BusinessConnection, CallbackQuery, Chat, ChatActionType, ChatMember, ChatP, ChatPChannel, ChatPGroup, ChatPPrivate, ChatPSupergroup, ChatSettings, ChosenInlineResult, ClaimedGifts, FailedInvitation, FileSource, GuestQuery, ID, InlineQuery, InlineQueryResult, InputChecklistItem, InputMedia, InputPollOption, InputRichText, InputStoryContent, InviteLink, JoinRequest, Message, MessageAnimation, MessageAudio, MessageChecklist, MessageContact, MessageDice, MessageDocument, MessageInvoice, MessageList, MessageLocation, MessagePhoto, MessagePoll, MessageReactionList, MessageRichText, MessageSticker, MessageText, MessageVenue, MessageVideo, MessageVideoNote, MessageVoice, Poll, PriceTag, Reaction, RichText, SecretChat, SecretMessage, SlowModeDuration, Sticker, Story, Topic, Update, User, VideoChatActive, VideoChatScheduled, VoiceTranscription } from "../3_types.js";
22
+ import type { AddChatMemberParams, AddContactParams, AddReactionParams, AnswerCallbackQueryParams, AnswerInlineQueryParams, AnswerPreCheckoutQueryParams, ApproveJoinRequestsParams, BanChatMemberParams, CreateInviteLinkParams, CreateStoryParams, CreateTopicParams, DeclineJoinRequestsParams, DeleteMessagesParams, EditInlineMessageCaptionParams, EditInlineMessageMediaParams, EditInlineMessageRichTextParams, EditInlineMessageTextParams, EditMessageCaptionParams, EditMessageLiveLocationParams, EditMessageMediaParams, EditMessageReplyMarkupParams, EditMessageRichTextParams, EditMessageTextParams, EditTopicParams, EnableSignaturesParams, EndSecretChatParams, ForwardMessagesParams, GetChatMembersParams, GetClaimedGiftsParams, GetCreatedInviteLinksParams, GetHistoryParams, GetJoinRequestsParams, GetSavedMessagesParams, PinMessageParams, PromoteChatMemberParams, ReplyParams, ScheduleVideoChatParams, SearchMessagesParams, SendAnimationParams, SendAudioParams, SendChecklistParams, SendContactParams, SendDiceParams, SendDocumentParams, SendGiftParams, SendInvoiceParams, SendLocationParams, SendMediaGroupParams, SendMessageDraftParams, SendMessageParams, SendPhotoParams, SendPollParams, SendRichTextDraftParams, SendSecretAnimationParams, SendSecretContactParams, SendSecretDocumentParams, SendSecretLocationParams, SendSecretMessageParams, SendSecretPhotoParams, SendSecretStickerParams, SendSecretVenueParams, SendSecretVideoParams, SendStickerParams, SendVenueParams, SendVideoNoteParams, SendVideoParams, SendVoiceParams, SetChatMemberRightsParams, SetChatMemberTagParams, SetChatPhotoParams, SetReactionsParams, StartVideoChatParams, StopPollParams, UpdateChecklistParams } from "./0_params.js";
23
23
  import type { ClientGeneric } from "./1_client_generic.js";
24
24
  import { type FilterQuery, type WithChatType, type WithFilter } from "./3_filters.js";
25
25
  export type ContextCommands = string | RegExp | (string | RegExp)[] | {
@@ -290,15 +290,33 @@ export declare class Context {
290
290
  /** Context-aware alias for {@link Client.reopenTopic}. */
291
291
  reopenTopic(topicId: number): Promise<void>;
292
292
  /** Context-aware alias for {@link Client.sendSecretMessage}. */
293
- replySecret(text: string, params?: Omit<SendSecretMessageParams, "replyToMessaegId"> & ReplyParams): Promise<void>;
293
+ replySecret(text: string, params?: Omit<SendSecretMessageParams, "replyToMessageId"> & ReplyParams): Promise<void>;
294
294
  /** Context-aware alias for {@link Client.sendSecretLocation}. */
295
- replySecretLocation(latitude: number, longitude: number, params?: Omit<SendSecretLocationParams, "replyToMessaegId"> & ReplyParams): Promise<void>;
295
+ replySecretLocation(latitude: number, longitude: number, params?: Omit<SendSecretLocationParams, "replyToMessageId"> & ReplyParams): Promise<void>;
296
296
  /** Context-aware alias for {@link Client.sendSecretVenue}. */
297
- replySecretVenue(latitude: number, longitude: number, title: string, address: string, params?: Omit<SendSecretVenueParams, "replyToMessaegId"> & ReplyParams): Promise<void>;
297
+ replySecretVenue(latitude: number, longitude: number, title: string, address: string, params?: Omit<SendSecretVenueParams, "replyToMessageId"> & ReplyParams): Promise<void>;
298
298
  /** Context-aware alias for {@link Client.sendSecretContact}. */
299
- replySecretContact(firstName: string, phoneNumber: string, params?: Omit<SendSecretContactParams, "replyToMessaegId"> & ReplyParams): Promise<void>;
299
+ replySecretContact(firstName: string, phoneNumber: string, params?: Omit<SendSecretContactParams, "replyToMessageId"> & ReplyParams): Promise<void>;
300
+ /** Context-aware alias for {@link Client.sendSecretDocument}. */
301
+ replySecretDocument(document: FileSource, params?: Omit<SendSecretDocumentParams, "replyToMessageId"> & ReplyParams): Promise<void>;
302
+ /** Context-aware alias for {@link Client.sendSecretPhoto}. */
303
+ replySecretPhoto(photo: FileSource, params?: Omit<SendSecretPhotoParams, "replyToMessageId"> & ReplyParams): Promise<void>;
304
+ /** Context-aware alias for {@link Client.sendSecretVideo}. */
305
+ replySecretVideo(video: FileSource, params?: Omit<SendSecretVideoParams, "replyToMessageId"> & ReplyParams): Promise<void>;
306
+ /** Context-aware alias for {@link Client.sendSecretVideoNote}. */
307
+ replySecretVideoNote(videoNote: FileSource, params?: Omit<SendSecretVideoParams, "replyToMessageId"> & ReplyParams): Promise<void>;
308
+ /** Context-aware alias for {@link Client.sendSecretAnimation}. */
309
+ replySecretAnimation(animation: FileSource, params?: Omit<SendSecretAnimationParams, "replyToMessageId"> & ReplyParams): Promise<void>;
310
+ /** Context-aware alias for {@link Client.sendSecretAudio}. */
311
+ replySecretAudio(audio: FileSource, params?: Omit<SendSecretAnimationParams, "replyToMessageId"> & ReplyParams): Promise<void>;
312
+ /** Context-aware alias for {@link Client.sendSecretVoice}. */
313
+ replySecretVoice(voice: FileSource, params?: Omit<SendSecretAnimationParams, "replyToMessageId"> & ReplyParams): Promise<void>;
314
+ /** Context-aware alias for {@link Client.sendSecretSticker}. */
315
+ replySecretSticker(sticker: Sticker, params?: Omit<SendSecretStickerParams, "replyToMessageId"> & ReplyParams): Promise<void>;
300
316
  /** Context-aware alias for {@link Client.acceptSecretChat}. */
301
317
  acceptSecretChat(): Promise<SecretChat>;
318
+ /** Context-aware alias for {@link Client.acceptSecretChat}. */
319
+ endSecretChat(params?: EndSecretChatParams): Promise<SecretChat>;
302
320
  /** Context-aware alias for {@link Client.requestSecretChat}. */
303
321
  requestSecretChat(): Promise<SecretChat>;
304
322
  /** Context-aware alias for {@link Client.sendMessage}. */
@@ -1 +1 @@
1
- {"version":3,"file":"4_context.d.ts","sourceRoot":"","sources":["../../src/client/4_context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"4_context.d.ts","sourceRoot":"","sources":["../../src/client/4_context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,EAAE,KAAK,GAAG,EAAU,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAW,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACh5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,4BAA4B,EAAE,+BAA+B,EAAE,2BAA2B,EAAE,wBAAwB,EAAE,6BAA6B,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,eAAe,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,2BAA2B,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,WAAW,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,eAAe,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,cAAc,EAAE,kBAAkB,EAAE,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,eAAe,EAAE,cAAc,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,eAAe,EAAE,mBAAmB,EAAE,eAAe,EAAE,eAAe,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACzqD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,KAAK,WAAW,EAAS,KAAK,YAAY,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE7F,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG;IACpE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC7C,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF,UAAU,SAAS;IACjB,WAAW,CAAC,CAAC,SAAS,WAAW,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC;IAC/G,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,GAAG,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI,UAAU,CAAC,OAAO,GAAG,EAAE,cAAc,CAAC,CAAC;IAClK,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI,UAAU,CAAC,OAAO,GAAG,EAAE,oBAAoB,CAAC,CAAC;IAC/I,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI,UAAU,CAAC,OAAO,GAAG,EAAE,aAAa,CAAC,CAAC;IACzI,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI,UAAU,CAAC,OAAO,GAAG,EAAE,oBAAoB,CAAC,CAAC;IACvJ,QAAQ,CAAC,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC;CACzH;AAqHD;;;;GAIG;AACH,qBAAa,OAAO;;gBAKN,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM;IAMvE,MAAM,CAAC,GAAG,EAAE,SAAS,CAAa;IAElC,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,EAAE,IAAI,IAAI,GAAG,SAAS,CAEzB;IAED,IAAI,MAAM,IAAI,aAAa,CAE1B;IAED,IAAI,GAAG,IAAI,OAAO,GAAG,SAAS,CAE7B;IAED,IAAI,OAAO,IAAI,OAAO,GAAG,SAAS,CAEjC;IAED,IAAI,aAAa,IAAI,OAAO,GAAG,SAAS,CAEvC;IAED,IAAI,gBAAgB,IAAI,OAAO,GAAG,SAAS,CAE1C;IAED,IAAI,aAAa,IAAI,aAAa,GAAG,SAAS,CAE7C;IAED,IAAI,UAAU,IAAI,UAAU,GAAG,SAAS,CAEvC;IAED,IAAI,UAAU,IAAI,UAAU,GAAG,SAAS,CAEvC;IAED,IAAI,aAAa,IAAI,aAAa,GAAG,SAAS,CAE7C;IAED,IAAI,WAAW,IAAI,WAAW,GAAG,SAAS,CAEzC;IAED,IAAI,kBAAkB,IAAI,kBAAkB,GAAG,SAAS,CAEvD;IA2FD,IAAI,IAAI,IAAI,KAAK,GAAG,SAAS,CAyB5B;IAED,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAmB/B;IAED,IAAI,IAAI,IAAI,IAAI,GAAG,UAAU,GAAG,eAAe,GAAG,YAAY,GAAG,SAAS,CAuBzE;IAED,cAAc,CAAC,CAAC,SAAS,WAAW,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,IAAI,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAIpF,UAAU,CAAC,QAAQ,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,GAAG,IAAI,IAAI,UAAU,CAAC,OAAO,IAAI,EAAE,cAAc,CAAC;IAIvI,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI,IAAI,UAAU,CAAC,OAAO,IAAI,EAAE,oBAAoB,CAAC;IAIpH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI,IAAI,UAAU,CAAC,OAAO,IAAI,EAAE,aAAa,CAAC;IAI9G,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI,IAAI,UAAU,CAAC,OAAO,IAAI,EAAE,oBAAoB,CAAC;IAI5H,WAAW,CAAC,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,IAAI,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAI7F;;;;OAIG;IACH,MAAM,IAAI,MAAM,GAAG;QAAE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;KAAE;IAQzC,yDAAyD;IACnD,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAK/E,4DAA4D;IACtD,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAKtF,6DAA6D;IACvD,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAK5D,0DAA0D;IACpD,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnG,qEAAqE;IAC/D,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAK/D,mEAAmE;IAC7D,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1D,6DAA6D;IACvD,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnF,kEAAkE;IAC5D,mBAAmB,CAAC,MAAM,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAO5E,+DAA+D;IACzD,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IAOlE,gEAAgE;IAC1D,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,EAAE,EAAE,MAAM,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOtG,qEAAqE;IAC/D,sBAAsB,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,4BAA4B,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/F,iEAAiE;IAC3D,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAQzC,kEAAkE;IAC5D,mBAAmB,CAAC,MAAM,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5E,0DAA0D;IACpD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAK9B,4DAA4D;IACtD,aAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9E,4DAA4D;IACtD,SAAS,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5D,wDAAwD;IAClD,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAIhC,iEAAiE;IAC3D,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxE,kEAAkE;IAC5D,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5E,wDAAwD;IAClD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,yDAAyD;IACnD,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhD,+DAA+D;IACzD,gBAAgB,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,UAAU,CAAC;IAK5E,0DAA0D;IACpD,WAAW,CAAC,OAAO,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC;IAKzF,0DAA0D;IACpD,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC;IAK5E,iEAAiE;IAC3D,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAQzC,kEAAkE;IAC5D,mBAAmB,CAAC,MAAM,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5E,8DAA8D;IACxD,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAKtC,4DAA4D;IACtD,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAK7B,yDAAyD;IACnD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC,uEAAuE;IACjE,wBAAwB,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKzD,mEAAmE;IAC7D,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3C,4DAA4D;IACtD,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpF,6DAA6D;IACvD,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxF,qEAAqE;IAC/D,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9D,sEAAsE;IAChE,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlE,4DAA4D;IACtD,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtD,0DAA0D;IACpD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjD,8DAA8D;IACxD,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAKtC,kEAAkE;IAC5D,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAK1C,kEAAkE;IAC5D,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAK1C,6DAA6D;IACvD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrC,gEAAgE;IAC1D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKxC,8DAA8D;IACxD,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAKtC,4DAA4D;IACtD,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAKpC,uEAAuE;IACjE,wBAAwB,CAAC,MAAM,CAAC,EAAE,8BAA8B,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtF,4EAA4E;IACtE,6BAA6B,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAK/H,qEAAqE;IAC/D,sBAAsB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,4BAA4B,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrG,2EAA2E;IACrE,4BAA4B,CAAC,MAAM,CAAC,EAAE,4BAA4B,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxF,oEAAoE;IAC9D,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9F,wEAAwE;IAClE,yBAAyB,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,+BAA+B,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjH,iEAAiE;IAC3D,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC;IAKhG,sEAAsE;IAChE,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,6BAA6B,GAAG,OAAO,CAAC,OAAO,CAAC;IAK/I,+DAA+D;IACzD,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC;IAK/G,qEAAqE;IAC/D,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,4BAA4B,GAAG,OAAO,CAAC,OAAO,CAAC;IAKxG,8DAA8D;IACxD,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC;IAK5G,0DAA0D;IACpD,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAK9D,kEAAkE;IAC5D,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,eAAe,CAAC;IAKnI,wDAAwD;IAClD,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC;IAKzF,6DAA6D;IACvD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrC,iEAAiE;IAC3D,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKzC,iEAAiE;IAC3D,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKzC,4DAA4D;IACtD,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAKpC,+DAA+D;IACzD,gBAAgB,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtE,2DAA2D;IACrD,YAAY,CAAC,aAAa,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAKzD,6DAA6D;IACvD,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC;IAKvE,6DAA6D;IACvD,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC;IAKjG,8DAA8D;IACxD,eAAe,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAKvG,oEAAoE;IAC9D,qBAAqB,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAQ1D,sDAAsD;IAChD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAK9B,oEAAoE;IAC9D,qBAAqB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAKpD,4DAA4D;IACtD,aAAa,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IAKpD,6DAA6D;IACvD,cAAc,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAK1E,8DAA8D;IACxD,eAAe,IAAI,OAAO,CAAC,YAAY,CAAC;IAK9C,8DAA8D;IACxD,eAAe,CAAC,MAAM,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,YAAY,CAAC;IAK5E,8DAA8D;IACxD,cAAc,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;IAKxC,oEAAoE;IAC9D,qBAAqB,CAAC,MAAM,CAAC,EAAE,2BAA2B,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAKxF,yDAAyD;IACnD,UAAU,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAK/D,8DAA8D;IACxD,eAAe,CAAC,MAAM,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAK7E,yDAAyD;IACnD,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAK5D,kEAAkE;IAC5D,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAK1E,0DAA0D;IACpD,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAK3D,+DAA+D;IACzD,gBAAgB,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAK3E,6DAA6D;IACvD,cAAc,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAK/C,iEAAiE;IAC3D,kBAAkB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAKnD,yDAAyD;IACnD,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAKtD,uDAAuD;IACjD,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAKtD,uDAAuD;IACjD,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlE,+DAA+D;IACzD,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKvC,6DAA6D;IACvD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrC,6DAA6D;IACvD,cAAc,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjD,6DAA6D;IACvD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAQjC,wDAAwD;IAClD,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAKhC,uDAAuD;IACjD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,yEAAyE;IACnE,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjD,yDAAyD;IACnD,GAAG,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnD,yDAAyD;IACnD,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7E,uDAAuD;IACjD,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9C,gEAAgE;IAC1D,iBAAiB,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpF,2DAA2D;IACrD,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9E,2DAA2D;IACrD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,gEAAgE;IAC1D,iBAAiB,CAAC,uBAAuB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvE,4DAA4D;IACtD,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAKtC,6DAA6D;IACvD,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1E,iEAAiE;IAC3D,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtE,kEAAkE;IAC5D,mBAAmB,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpD,0EAA0E;IACpE,2BAA2B,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpE,wEAAwE;IAClE,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK/D,0DAA0D;IACpD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjD,gEAAgE;IAC1D,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,uBAAuB,EAAE,kBAAkB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxH,iEAAiE;IAC3D,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,wBAAwB,EAAE,kBAAkB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxJ,8DAA8D;IACxD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMlL,gEAAgE;IAC1D,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,uBAAuB,EAAE,kBAAkB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMzJ,iEAAiE;IAC3D,mBAAmB,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,wBAAwB,EAAE,kBAAkB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMzI,8DAA8D;IACxD,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMhI,8DAA8D;IACxD,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMhI,kEAAkE;IAC5D,oBAAoB,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxI,kEAAkE;IAC5D,oBAAoB,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,yBAAyB,EAAE,kBAAkB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5I,8DAA8D;IACxD,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,yBAAyB,EAAE,kBAAkB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpI,8DAA8D;IACxD,gBAAgB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,yBAAyB,EAAE,kBAAkB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpI,gEAAgE;IAC1D,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,uBAAuB,EAAE,kBAAkB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnI,+DAA+D;IACzD,gBAAgB,IAAI,OAAO,CAAC,UAAU,CAAC;IAK7C,+DAA+D;IACzD,aAAa,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;IAKtE,gEAAgE;IAC1D,iBAAiB,IAAI,OAAO,CAAC,UAAU,CAAC;IAK9C,0DAA0D;IACpD,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAMvJ,2DAA2D;IACrD,aAAa,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAM9K,4DAA4D;IACtD,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAMhL,wDAAwD;IAClD,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAMhK,4DAA4D;IACtD,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAMrM,0DAA0D;IACpD,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;IAM3L,uDAAuD;IACjD,SAAS,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAM1I,2DAA2D;IACrD,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAM5K,+DAA+D;IACzD,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,sBAAsB,EAAE,iBAAiB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMtI,gEAAgE;IAC1D,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,uBAAuB,EAAE,iBAAiB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAM1J,0DAA0D;IACpD,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;IAM9O,2DAA2D;IACrD,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAM3L,6DAA6D;IACvD,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAMzK,wDAAwD;IAClD,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAMhK,uDAAuD;IACjD,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAMxL,0DAA0D;IACpD,YAAY,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;IAMxK,wDAAwD;IAClD,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAMlN,wDAAwD;IAClD,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAMhK,4DAA4D;IACtD,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAMhL,wDAAwD;IAClD,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAMhK,0EAA0E;IACpE,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC;IAKlD,gEAAgE;IAC1D,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAKvG,6DAA6D;IACvD,cAAc,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IAOzF,6DAA6D;IACvD,cAAc,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlG,mEAAmE;IAC7D,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK/D,oEAAoE;IAC9D,qBAAqB,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlF,wFAAwF;IAClF,yCAAyC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9E,iEAAiE;IAC3D,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D,kEAAkE;IAC5D,mBAAmB,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1F,2DAA2D;IACrD,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjF,gEAAgE;IAC1D,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvD,2DAA2D;IACrD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhD,gEAAgE;IAC1D,iBAAiB,CAAC,gBAAgB,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D,+DAA+D;IACzD,YAAY,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQlE,4DAA4D;IACtD,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtD,2DAA2D;IACrD,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxG,kEAAkE;IAC5D,eAAe,CAAC,MAAM,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxE,0DAA0D;IACpD,WAAW,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D,+DAA+D;IACzD,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKvC,6DAA6D;IACvD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrC,6DAA6D;IACvD,cAAc,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;IAK7E,uDAAuD;IACjD,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAKzE,8DAA8D;IACxD,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAKrE,oEAAoE;IAC9D,iBAAiB,CAAC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpE,4DAA4D;IACtD,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAKhC,8DAA8D;IACxD,eAAe,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlD,0DAA0D;IACpD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAIlC,mEAAmE;IAC7D,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1E,oEAAoE;IAC9D,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9E,2DAA2D;IACrD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,2DAA2D;IACrD,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpD,4DAA4D;IACtD,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAKpC,yDAAyD;IACnD,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhD,8DAA8D;IACxD,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CAIxF"}
@@ -954,11 +954,64 @@ export class Context {
954
954
  const replyToMessageId = params?.isQuoted ? messageId : undefined;
955
955
  return await this.client.sendSecretContact(chatId, firstName, phoneNumber, { ...params, replyToMessageId });
956
956
  }
957
+ /** Context-aware alias for {@link Client.sendSecretDocument}. */
958
+ async replySecretDocument(document, params) {
959
+ const { chatId, messageId } = this.#mustGetSecretMsg();
960
+ const replyToMessageId = params?.isQuoted ? messageId : undefined;
961
+ return await this.client.sendSecretDocument(chatId, document, { ...params, replyToMessageId });
962
+ }
963
+ /** Context-aware alias for {@link Client.sendSecretPhoto}. */
964
+ async replySecretPhoto(photo, params) {
965
+ const { chatId, messageId } = this.#mustGetSecretMsg();
966
+ const replyToMessageId = params?.isQuoted ? messageId : undefined;
967
+ return await this.client.sendSecretPhoto(chatId, photo, { ...params, replyToMessageId });
968
+ }
969
+ /** Context-aware alias for {@link Client.sendSecretVideo}. */
970
+ async replySecretVideo(video, params) {
971
+ const { chatId, messageId } = this.#mustGetSecretMsg();
972
+ const replyToMessageId = params?.isQuoted ? messageId : undefined;
973
+ return await this.client.sendSecretVideo(chatId, video, { ...params, replyToMessageId });
974
+ }
975
+ /** Context-aware alias for {@link Client.sendSecretVideoNote}. */
976
+ async replySecretVideoNote(videoNote, params) {
977
+ const { chatId, messageId } = this.#mustGetSecretMsg();
978
+ const replyToMessageId = params?.isQuoted ? messageId : undefined;
979
+ return await this.client.sendSecretVideoNote(chatId, videoNote, { ...params, replyToMessageId });
980
+ }
981
+ /** Context-aware alias for {@link Client.sendSecretAnimation}. */
982
+ async replySecretAnimation(animation, params) {
983
+ const { chatId, messageId } = this.#mustGetSecretMsg();
984
+ const replyToMessageId = params?.isQuoted ? messageId : undefined;
985
+ return await this.client.sendSecretVideoNote(chatId, animation, { ...params, replyToMessageId });
986
+ }
987
+ /** Context-aware alias for {@link Client.sendSecretAudio}. */
988
+ async replySecretAudio(audio, params) {
989
+ const { chatId, messageId } = this.#mustGetSecretMsg();
990
+ const replyToMessageId = params?.isQuoted ? messageId : undefined;
991
+ return await this.client.sendSecretAudio(chatId, audio, { ...params, replyToMessageId });
992
+ }
993
+ /** Context-aware alias for {@link Client.sendSecretVoice}. */
994
+ async replySecretVoice(voice, params) {
995
+ const { chatId, messageId } = this.#mustGetSecretMsg();
996
+ const replyToMessageId = params?.isQuoted ? messageId : undefined;
997
+ return await this.client.sendSecretVoice(chatId, voice, { ...params, replyToMessageId });
998
+ }
999
+ /** Context-aware alias for {@link Client.sendSecretSticker}. */
1000
+ async replySecretSticker(sticker, params) {
1001
+ const { chatId, messageId } = this.#mustGetSecretMsg();
1002
+ const replyToMessageId = params?.isQuoted ? messageId : undefined;
1003
+ return await this.client.sendSecretSticker(chatId, sticker, { ...params, replyToMessageId });
1004
+ }
957
1005
  /** Context-aware alias for {@link Client.acceptSecretChat}. */
958
1006
  async acceptSecretChat() {
959
1007
  const id = this.#mustGetSecretChatId();
960
1008
  return await this.client.acceptSecretChat(id);
961
1009
  }
1010
+ /** Context-aware alias for {@link Client.acceptSecretChat}. */
1011
+ async endSecretChat(params) {
1012
+ const id = this.#mustGetSecretChatId();
1013
+ return await this.client.endSecretChat(id, params);
1014
+ }
962
1015
  /** Context-aware alias for {@link Client.requestSecretChat}. */
963
1016
  async requestSecretChat() {
964
1017
  const chatId = this.#mustGetChatId();