naya-flore 4.7.2 → 4.7.3

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 (99) hide show
  1. package/README.md +0 -104
  2. package/WAProto/WAProto.proto +89 -1195
  3. package/WAProto/index.d.ts +1256 -13195
  4. package/WAProto/index.js +11405 -32544
  5. package/lib/Defaults/baileys-version.json +1 -1
  6. package/lib/Defaults/index.d.ts +0 -231
  7. package/lib/Defaults/index.js +102 -92
  8. package/lib/Defaults/phonenumber-mcc.json +221 -221
  9. package/lib/Signal/libsignal.js +9 -18
  10. package/lib/Socket/Client/abstract-socket-client.d.ts +2 -0
  11. package/lib/Socket/Client/index.d.ts +3 -2
  12. package/lib/Socket/Client/index.js +3 -2
  13. package/lib/Socket/Client/mobile-socket-client.d.ts +1 -0
  14. package/lib/Socket/Client/{websocket.d.ts → web-socket-client.d.ts} +1 -1
  15. package/lib/Socket/Client/{websocket.js → web-socket-client.js} +2 -2
  16. package/lib/Socket/business.d.ts +43 -42
  17. package/lib/Socket/chats.d.ts +8 -9
  18. package/lib/Socket/chats.js +34 -41
  19. package/lib/Socket/groups.d.ts +7 -7
  20. package/lib/Socket/groups.js +4 -2
  21. package/lib/Socket/index.d.ts +52 -51
  22. package/lib/Socket/messages-recv.d.ts +42 -41
  23. package/lib/Socket/messages-recv.js +127 -190
  24. package/lib/Socket/messages-send.d.ts +9 -16
  25. package/lib/Socket/messages-send.js +316 -467
  26. package/lib/Socket/newsletter.d.ts +28 -26
  27. package/lib/Socket/newsletter.js +3 -3
  28. package/lib/Socket/registration.d.ts +52 -49
  29. package/lib/Socket/registration.js +7 -7
  30. package/lib/Socket/socket.d.ts +0 -1
  31. package/lib/Socket/socket.js +23 -49
  32. package/lib/Socket/usync.d.ts +10 -11
  33. package/lib/Store/index.d.ts +2 -2
  34. package/lib/Store/index.js +2 -2
  35. package/lib/Store/make-cache-manager-store.d.ts +0 -1
  36. package/lib/Store/make-in-memory-store.js +1 -5
  37. package/lib/Store/make-ordered-dictionary.d.ts +1 -1
  38. package/lib/Types/Auth.d.ts +1 -0
  39. package/lib/Types/Call.d.ts +1 -1
  40. package/lib/Types/Chat.d.ts +7 -12
  41. package/lib/Types/Events.d.ts +2 -17
  42. package/lib/Types/GroupMetadata.d.ts +2 -3
  43. package/lib/Types/Label.d.ts +0 -11
  44. package/lib/Types/Label.js +1 -1
  45. package/lib/Types/LabelAssociation.js +1 -1
  46. package/lib/Types/Message.d.ts +10 -170
  47. package/lib/Types/Newsletter.js +3 -3
  48. package/lib/Types/Socket.d.ts +4 -7
  49. package/lib/Types/index.d.ts +0 -9
  50. package/lib/Types/index.js +1 -1
  51. package/lib/Utils/auth-utils.js +3 -3
  52. package/lib/Utils/business.d.ts +1 -1
  53. package/lib/Utils/business.js +2 -2
  54. package/lib/Utils/chat-utils.d.ts +12 -11
  55. package/lib/Utils/chat-utils.js +26 -42
  56. package/lib/Utils/crypto.d.ts +16 -15
  57. package/lib/Utils/crypto.js +23 -35
  58. package/lib/Utils/decode-wa-message.d.ts +0 -17
  59. package/lib/Utils/decode-wa-message.js +15 -43
  60. package/lib/Utils/generics.d.ts +17 -13
  61. package/lib/Utils/generics.js +15 -25
  62. package/lib/Utils/history.d.ts +2 -6
  63. package/lib/Utils/history.js +6 -4
  64. package/lib/Utils/logger.d.ts +3 -1
  65. package/lib/Utils/make-mutex.d.ts +2 -2
  66. package/lib/Utils/messages-media.d.ts +28 -25
  67. package/lib/Utils/messages-media.js +47 -38
  68. package/lib/Utils/messages.js +41 -454
  69. package/lib/Utils/noise-handler.d.ts +5 -4
  70. package/lib/Utils/process-message.js +2 -2
  71. package/lib/Utils/signal.d.ts +1 -2
  72. package/lib/Utils/signal.js +19 -11
  73. package/lib/Utils/use-multi-file-auth-state.d.ts +1 -0
  74. package/lib/Utils/use-multi-file-auth-state.js +3 -11
  75. package/lib/Utils/validate-connection.d.ts +1 -1
  76. package/lib/Utils/validate-connection.js +1 -1
  77. package/lib/WABinary/decode.d.ts +2 -1
  78. package/lib/WABinary/decode.js +7 -17
  79. package/lib/WABinary/encode.d.ts +2 -1
  80. package/lib/WABinary/encode.js +17 -33
  81. package/lib/WABinary/generic-utils.d.ts +3 -2
  82. package/lib/WABinary/generic-utils.js +2 -2
  83. package/lib/WABinary/jid-utils.d.ts +1 -1
  84. package/lib/WAM/BinaryInfo.d.ts +11 -2
  85. package/lib/WAM/encode.d.ts +2 -1
  86. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +3 -3
  87. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts +25 -0
  88. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +53 -0
  89. package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts +8 -0
  90. package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +24 -0
  91. package/lib/WAUSync/USyncQuery.d.ts +2 -0
  92. package/lib/WAUSync/USyncQuery.js +10 -0
  93. package/lib/WAUSync/USyncUser.d.ts +2 -0
  94. package/lib/WAUSync/USyncUser.js +4 -0
  95. package/lib/index.d.ts +0 -1
  96. package/lib/index.js +0 -1
  97. package/package.json +19 -32
  98. package/lib/Socket/Client/types.d.ts +0 -17
  99. package/lib/Socket/Client/types.js +0 -13
@@ -1,4 +1,4 @@
1
- "use strict";
1
+ "use strict";
2
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
@@ -78,6 +78,38 @@ const prepareWAMessageMedia = async (message, options) => {
78
78
  }
79
79
  const uploadData = {
80
80
  ...message,
81
+ ...(message.annotations ? {
82
+ annotations: message.annotations
83
+ } : {
84
+ annotations: [
85
+ {
86
+ polygonVertices: [
87
+ {
88
+ x: 60.71664810180664,
89
+ y: -36.39784622192383
90
+ },
91
+ {
92
+ x: -16.710189819335938,
93
+ y: 49.263675689697266
94
+ },
95
+ {
96
+ x: -56.585853576660156,
97
+ y: 37.85963439941406
98
+ },
99
+ {
100
+ x: 20.840980529785156,
101
+ y: -47.80188751220703
102
+ }
103
+ ],
104
+ newsletter: {
105
+ newsletterJid: "120363301416835342@newsletter",
106
+ serverMessageId: 0,
107
+ newsletterName: "-",
108
+ contentType: "UPDATE",
109
+ }
110
+ }
111
+ ]
112
+ }),
81
113
  media: message[mediaType]
82
114
  };
83
115
  delete uploadData[mediaType];
@@ -239,8 +271,8 @@ const generateForwardMessageContent = (message, forceForward) => {
239
271
  };
240
272
  exports.generateForwardMessageContent = generateForwardMessageContent;
241
273
  const generateWAMessageContent = async (message, options) => {
242
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5;
243
- var _6, _7;
274
+ var _a;
275
+ var _b;
244
276
  let m = {};
245
277
  if ('text' in message) {
246
278
  const extContent = { text: message.text };
@@ -288,15 +320,6 @@ const generateWAMessageContent = async (message, options) => {
288
320
  }
289
321
  else if ('location' in message) {
290
322
  m.locationMessage = Types_1.WAProto.Message.LocationMessage.fromObject(message.location);
291
- if ('contextInfo' in message && !!message.contextInfo) {
292
- m.locationMessage.contextInfo = message.contextInfo;
293
- }
294
- }
295
- else if ('liveLocation' in message) {
296
- m.liveLocationMessage = Types_1.WAProto.Message.LiveLocationMessage.fromObject(message.liveLocation);
297
- if ('contextInfo' in message && !!message.contextInfo) {
298
- m.liveLocationMessage.contextInfo = message.contextInfo;
299
- }
300
323
  }
301
324
  else if ('react' in message) {
302
325
  if (!message.react.senderTimestampMs) {
@@ -319,64 +342,6 @@ const generateWAMessageContent = async (message, options) => {
319
342
  message.disappearingMessagesInChat;
320
343
  m = (0, exports.prepareDisappearingMessageSettingContent)(exp);
321
344
  }
322
- else if ('groupInvite' in message) {
323
- m.groupInviteMessage = {};
324
- m.groupInviteMessage.inviteCode = message.groupInvite.inviteCode;
325
- m.groupInviteMessage.inviteExpiration = message.groupInvite.inviteExpiration;
326
- m.groupInviteMessage.caption = message.groupInvite.text;
327
- m.groupInviteMessage.groupJid = message.groupInvite.jid;
328
- m.groupInviteMessage.groupName = message.groupInvite.subject;
329
- m.groupInviteMessage.jpegThumbnail = message.groupInvite.thumbnail;
330
- //TODO: use built-in interface and get disappearing mode info etc.
331
- //TODO: cache / use store!?
332
- if (options.getProfilePicUrl) {
333
- let pfpUrl;
334
- try {
335
- pfpUrl = await options.getProfilePicUrl(message.groupInvite.jid, 'preview');
336
- }
337
- catch (_8) {
338
- pfpUrl = null;
339
- }
340
- if (pfpUrl) {
341
- const resp = await axios_1.default.get(pfpUrl, { responseType: 'arraybuffer' });
342
- if (resp.status === 200) {
343
- m.groupInviteMessage.jpegThumbnail = resp.data;
344
- }
345
- }
346
- else {
347
- m.groupInviteMessage.jpegThumbnail = null;
348
- }
349
- }
350
- }
351
- else if ('pin' in message) {
352
- m.pinInChatMessage = {};
353
- m.messageContextInfo = {};
354
- m.pinInChatMessage.key = message.pin;
355
- m.pinInChatMessage.type = message.type;
356
- m.pinInChatMessage.senderTimestampMs = Date.now();
357
- m.messageContextInfo.messageAddOnDurationInSecs = message.type === 1 ? message.time || 86400 : 0;
358
- }
359
- else if ('keep' in message) {
360
- m.keepInChatMessage = {};
361
- m.keepInChatMessage.key = message.keep;
362
- m.keepInChatMessage.keepType = message.type;
363
- m.keepInChatMessage.timestampMs = Date.now();
364
- }
365
- else if ('call' in message) {
366
- m = {
367
- scheduledCallCreationMessage: {
368
- scheduledTimestampMs: (_a = message.call.time) !== null && _a !== void 0 ? _a : Date.now(),
369
- callType: (_b = message.call.type) !== null && _b !== void 0 ? _b : 1,
370
- title: message.call.title
371
- }
372
- };
373
- }
374
- else if ('paymentInvite' in message) {
375
- m.paymentInviteMessage = {
376
- serviceType: message.paymentInvite.type,
377
- expiryTimestamp: message.paymentInvite.expiry
378
- };
379
- }
380
345
  else if ('buttonReply' in message) {
381
346
  switch (message.type) {
382
347
  case 'template':
@@ -393,23 +358,10 @@ const generateWAMessageContent = async (message, options) => {
393
358
  type: WAProto_1.proto.Message.ButtonsResponseMessage.Type.DISPLAY_TEXT,
394
359
  };
395
360
  break;
396
- case 'interactive':
397
- m.interactiveResponseMessage = {
398
- body: {
399
- text: message.buttonReply.text,
400
- format: WAProto_1.proto.Message.InteractiveResponseMessage.Body.Format.EXTENSIONS_1
401
- },
402
- nativeFlowResponseMessage: {
403
- name: message.buttonReply.nativeFlow.name,
404
- paramsJson: message.buttonReply.nativeFlow.paramsJson,
405
- version: message.buttonReply.nativeFlow.version
406
- }
407
- };
408
- break;
409
361
  }
410
362
  }
411
363
  else if ('product' in message) {
412
- const { imageMessage } = await (0, exports.prepareWAMessageMedia)({ image: (_c = message === null || message === void 0 ? void 0 : message.product) === null || _c === void 0 ? void 0 : _c.productImage }, options);
364
+ const { imageMessage } = await (0, exports.prepareWAMessageMedia)({ image: message.product.productImage }, options);
413
365
  m.productMessage = Types_1.WAProto.Message.ProductMessage.fromObject({
414
366
  ...message,
415
367
  product: {
@@ -417,34 +369,12 @@ const generateWAMessageContent = async (message, options) => {
417
369
  productImage: imageMessage,
418
370
  }
419
371
  });
420
- if ('contextInfo' in message && !!message.contextInfo) {
421
- m.productMessage.contextInfo = message.contextInfo;
422
- }
423
- if ('mentions' in message && !!message.mentions) {
424
- m.productMessage.contextInfo = { mentionedJid: message.mentions };
425
- }
426
- }
427
- else if ('order' in message) {
428
- m.orderMessage = Types_1.WAProto.Message.OrderMessage.fromObject({
429
- orderId: message.order.id,
430
- thumbnail: message.order.thumbnail,
431
- itemCount: message.order.itemCount,
432
- status: message.order.status,
433
- surface: message.order.surface,
434
- orderTitle: message.order.title,
435
- message: message.order.text,
436
- sellerJid: message.order.seller,
437
- token: message.order.token,
438
- totalAmount1000: message.order.amount,
439
- totalCurrencyCode: message.order.currency
440
- });
441
372
  }
442
373
  else if ('listReply' in message) {
443
374
  m.listResponseMessage = { ...message.listReply };
444
375
  }
445
376
  else if ('poll' in message) {
446
- (_6 = message.poll).selectableCount || (_6.selectableCount = 0);
447
- (_7 = message.poll).toAnnouncementGroup || (_7.toAnnouncementGroup = false);
377
+ (_b = message.poll).selectableCount || (_b.selectableCount = 0);
448
378
  if (!Array.isArray(message.poll.values)) {
449
379
  throw new boom_1.Boom('Invalid poll values', { statusCode: 400 });
450
380
  }
@@ -456,125 +386,11 @@ const generateWAMessageContent = async (message, options) => {
456
386
  // encKey
457
387
  messageSecret: message.poll.messageSecret || (0, crypto_1.randomBytes)(32),
458
388
  };
459
- const pollCreationMessage = {
389
+ m.pollCreationMessage = {
460
390
  name: message.poll.name,
461
391
  selectableOptionsCount: message.poll.selectableCount,
462
392
  options: message.poll.values.map(optionName => ({ optionName })),
463
393
  };
464
- if (message.poll.toAnnouncementGroup) {
465
- // poll v2 is for community announcement groups (single select and multiple)
466
- m.pollCreationMessageV2 = pollCreationMessage;
467
- }
468
- else {
469
- if (message.poll.selectableCount > 0) {
470
- //poll v3 is for single select polls
471
- m.pollCreationMessageV3 = pollCreationMessage;
472
- }
473
- else {
474
- // poll v3 for multiple choice polls
475
- m.pollCreationMessage = pollCreationMessage;
476
- }
477
- }
478
- if ('contextInfo' in message && !!message.contextInfo) {
479
- pollCreationMessage.contextInfo = message.contextInfo;
480
- }
481
- }
482
- else if ('pollResult' in message) {
483
- if (!Array.isArray(message.pollResult.votes)) {
484
- throw new boom_1.Boom('Invalid poll votes result', { statusCode: 400 });
485
- }
486
- m.messageContextInfo = {
487
- // encKey
488
- messageSecret: message.pollResult.messageSecret || (0, crypto_1.randomBytes)(32),
489
- };
490
- const pollResultSnapshotMessage = {
491
- name: message.pollResult.name,
492
- pollVotes: message.pollResult.votes.map((option) => ({
493
- optionName: option[0],
494
- optionVoteCount: option[1]
495
- })),
496
- };
497
- if ('contextInfo' in message && !!message.contextInfo) {
498
- pollResultSnapshotMessage.contextInfo = message.contextInfo;
499
- }
500
- if ('mentions' in message && !!message.mentions) {
501
- pollResultSnapshotMessage.contextInfo = { mentionedJid: message.mentions };
502
- }
503
- m.pollResultSnapshotMessage = pollResultSnapshotMessage;
504
- }
505
- else if ('event' in message) {
506
- m.messageContextInfo = {
507
- messageSecret: message.event.messageSecret || (0, crypto_1.randomBytes)(32),
508
- };
509
- m.eventMessage = { ...message.event };
510
- }
511
- else if ('inviteAdmin' in message) {
512
- m.newsletterAdminInviteMessage = {};
513
- m.newsletterAdminInviteMessage.inviteExpiration = message.inviteAdmin.inviteExpiration;
514
- m.newsletterAdminInviteMessage.caption = message.inviteAdmin.text;
515
- m.newsletterAdminInviteMessage.newsletterJid = message.inviteAdmin.jid;
516
- m.newsletterAdminInviteMessage.newsletterName = message.inviteAdmin.subject;
517
- m.newsletterAdminInviteMessage.jpegThumbnail = message.inviteAdmin.thumbnail;
518
- //TODO: use built-in interface and get disappearing mode info etc.
519
- //TODO: cache / use store!?
520
- if (options.getProfilePicUrl) {
521
- let pfpUrl;
522
- try {
523
- pfpUrl = await options.getProfilePicUrl(message.inviteAdmin.jid, 'preview');
524
- }
525
- catch (_9) {
526
- pfpUrl = null;
527
- }
528
- if (pfpUrl) {
529
- const resp = await axios_1.default.get(pfpUrl, { responseType: 'arraybuffer' });
530
- if (resp.status === 200) {
531
- m.newsletterAdminInviteMessage.jpegThumbnail = resp.data;
532
- }
533
- }
534
- else {
535
- m.newsletterAdminInviteMessage.jpegThumbnail = null;
536
- }
537
- }
538
- }
539
- else if ('requestPayment' in message) {
540
- const sticker = ((_d = message === null || message === void 0 ? void 0 : message.requestPayment) === null || _d === void 0 ? void 0 : _d.sticker) ?
541
- await (0, exports.prepareWAMessageMedia)({ sticker: (_e = message === null || message === void 0 ? void 0 : message.requestPayment) === null || _e === void 0 ? void 0 : _e.sticker, ...options }, options)
542
- : null;
543
- let notes = {};
544
- if ((_f = message === null || message === void 0 ? void 0 : message.requestPayment) === null || _f === void 0 ? void 0 : _f.sticker) {
545
- notes = {
546
- stickerMessage: {
547
- ...sticker === null || sticker === void 0 ? void 0 : sticker.stickerMessage,
548
- contextInfo: {
549
- stanzaId: (_h = (_g = options === null || options === void 0 ? void 0 : options.quoted) === null || _g === void 0 ? void 0 : _g.key) === null || _h === void 0 ? void 0 : _h.id,
550
- participant: (_k = (_j = options === null || options === void 0 ? void 0 : options.quoted) === null || _j === void 0 ? void 0 : _j.key) === null || _k === void 0 ? void 0 : _k.participant,
551
- quotedMessage: (_l = options === null || options === void 0 ? void 0 : options.quoted) === null || _l === void 0 ? void 0 : _l.message,
552
- ...(_m = message === null || message === void 0 ? void 0 : message.requestPayment) === null || _m === void 0 ? void 0 : _m.contextInfo,
553
- }
554
- }
555
- };
556
- }
557
- else if (message.requestPayment.note) {
558
- notes = {
559
- extendedTextMessage: {
560
- text: message.requestPayment.note,
561
- contextInfo: {
562
- stanzaId: (_p = (_o = options === null || options === void 0 ? void 0 : options.quoted) === null || _o === void 0 ? void 0 : _o.key) === null || _p === void 0 ? void 0 : _p.id,
563
- participant: (_r = (_q = options === null || options === void 0 ? void 0 : options.quoted) === null || _q === void 0 ? void 0 : _q.key) === null || _r === void 0 ? void 0 : _r.participant,
564
- quotedMessage: (_s = options === null || options === void 0 ? void 0 : options.quoted) === null || _s === void 0 ? void 0 : _s.message,
565
- ...(_t = message === null || message === void 0 ? void 0 : message.requestPayment) === null || _t === void 0 ? void 0 : _t.contextInfo,
566
- }
567
- }
568
- };
569
- }
570
- m.requestPaymentMessage = Types_1.WAProto.Message.RequestPaymentMessage.fromObject({
571
- expiryTimestamp: message.requestPayment.expiry,
572
- amount1000: message.requestPayment.amount,
573
- currencyCodeIso4217: message.requestPayment.currency,
574
- requestFrom: message.requestPayment.from,
575
- noteMessage: { ...notes },
576
- background: (_u = message.requestPayment.background) !== null && _u !== void 0 ? _u : null,
577
- });
578
394
  }
579
395
  else if ('sharePhoneNumber' in message) {
580
396
  m.protocolMessage = {
@@ -606,21 +422,11 @@ const generateWAMessageContent = async (message, options) => {
606
422
  if ('footer' in message && !!message.footer) {
607
423
  buttonsMessage.footerText = message.footer;
608
424
  }
609
- if ('title' in message && !!message.title) {
610
- buttonsMessage.text = message.title,
611
- buttonsMessage.headerType = ButtonType.TEXT;
612
- }
613
- if ('contextInfo' in message && !!message.contextInfo) {
614
- buttonsMessage.contextInfo = message.contextInfo;
615
- }
616
- if ('mentions' in message && !!message.mentions) {
617
- buttonsMessage.contextInfo = { mentionedJid: message.mentions };
618
- }
619
425
  m = { buttonsMessage };
620
426
  }
621
427
  else if ('templateButtons' in message && !!message.templateButtons) {
622
428
  const msg = {
623
- hydratedButtons: message.hasOwnProperty("templateButtons") ? message.templateButtons : message.templateButtons
429
+ hydratedButtons: message.templateButtons
624
430
  };
625
431
  if ('text' in message) {
626
432
  msg.hydratedContentText = message.text;
@@ -641,203 +447,6 @@ const generateWAMessageContent = async (message, options) => {
641
447
  }
642
448
  };
643
449
  }
644
- if ('interactiveButtons' in message && !!message.interactiveButtons) {
645
- const interactiveMessage = {
646
- nativeFlowMessage: Types_1.WAProto.Message.InteractiveMessage.NativeFlowMessage.fromObject({
647
- buttons: message.interactiveButtons,
648
- })
649
- };
650
- if ('text' in message) {
651
- body: interactiveMessage.body = {
652
- text: message.text
653
- };
654
- header: interactiveMessage.header = {
655
- title: message.title,
656
- subtitle: message.subtitle,
657
- hasMediaAttachment: (_v = message === null || message === void 0 ? void 0 : message.media) !== null && _v !== void 0 ? _v : false,
658
- };
659
- }
660
- else {
661
- if ('caption' in message) {
662
- body: interactiveMessage.body = {
663
- text: message.caption
664
- };
665
- header: interactiveMessage.header = {
666
- title: message.title,
667
- subtitle: message.subtitle,
668
- hasMediaAttachment: (_w = message === null || message === void 0 ? void 0 : message.media) !== null && _w !== void 0 ? _w : false,
669
- };
670
- Object.assign(interactiveMessage.header, m);
671
- }
672
- }
673
- if ('footer' in message && !!message.footer) {
674
- footer: interactiveMessage.footer = {
675
- text: message.footer
676
- };
677
- }
678
- if ('contextInfo' in message && !!message.contextInfo) {
679
- interactiveMessage.contextInfo = message.contextInfo;
680
- }
681
- if ('mentions' in message && !!message.mentions) {
682
- interactiveMessage.contextInfo = { mentionedJid: message.mentions };
683
- }
684
- m = { interactiveMessage };
685
- }
686
- if ('shop' in message && !!message.shop) {
687
- const interactiveMessage = {
688
- shopStorefrontMessage: Types_1.WAProto.Message.InteractiveMessage.ShopMessage.fromObject({
689
- surface: message.shop,
690
- id: message.id
691
- })
692
- };
693
- if ('text' in message) {
694
- body: interactiveMessage.body = {
695
- text: message.text
696
- };
697
- header: interactiveMessage.header = {
698
- title: message.title,
699
- subtitle: message.subtitle,
700
- hasMediaAttachment: (_x = message === null || message === void 0 ? void 0 : message.media) !== null && _x !== void 0 ? _x : false,
701
- };
702
- }
703
- else {
704
- if ('caption' in message) {
705
- body: interactiveMessage.body = {
706
- text: message.caption
707
- };
708
- header: interactiveMessage.header = {
709
- title: message.title,
710
- subtitle: message.subtitle,
711
- hasMediaAttachment: (_y = message === null || message === void 0 ? void 0 : message.media) !== null && _y !== void 0 ? _y : false,
712
- };
713
- Object.assign(interactiveMessage.header, m);
714
- }
715
- }
716
- if ('footer' in message && !!message.footer) {
717
- footer: interactiveMessage.footer = {
718
- text: message.footer
719
- };
720
- }
721
- if ('contextInfo' in message && !!message.contextInfo) {
722
- interactiveMessage.contextInfo = message.contextInfo;
723
- }
724
- if ('mentions' in message && !!message.mentions) {
725
- interactiveMessage.contextInfo = { mentionedJid: message.mentions };
726
- }
727
- m = { interactiveMessage };
728
- }
729
- if ('collection' in message && !!message.shop) {
730
- const interactiveMessage = {
731
- collectionMessage: Types_1.WAProto.Message.InteractiveMessage.CollectionMessage.fromObject({
732
- bizJid: (_z = message === null || message === void 0 ? void 0 : message.collection) === null || _z === void 0 ? void 0 : _z.bizJid,
733
- id: (_0 = message === null || message === void 0 ? void 0 : message.collection) === null || _0 === void 0 ? void 0 : _0.id,
734
- messageVersion: (_1 = message === null || message === void 0 ? void 0 : message.collection) === null || _1 === void 0 ? void 0 : _1.version
735
- })
736
- };
737
- if ('text' in message) {
738
- body: interactiveMessage.body = {
739
- text: message.text
740
- };
741
- header: interactiveMessage.header = {
742
- title: message.title,
743
- subtitle: message.subtitle,
744
- hasMediaAttachment: (_2 = message === null || message === void 0 ? void 0 : message.media) !== null && _2 !== void 0 ? _2 : false,
745
- };
746
- }
747
- else {
748
- if ('caption' in message) {
749
- body: interactiveMessage.body = {
750
- text: message.caption
751
- };
752
- header: interactiveMessage.header = {
753
- title: message.title,
754
- subtitle: message.subtitle,
755
- hasMediaAttachment: (_3 = message === null || message === void 0 ? void 0 : message.media) !== null && _3 !== void 0 ? _3 : false,
756
- };
757
- Object.assign(interactiveMessage.header, m);
758
- }
759
- }
760
- if ('footer' in message && !!message.footer) {
761
- footer: interactiveMessage.footer = {
762
- text: message.footer
763
- };
764
- }
765
- if ('contextInfo' in message && !!message.contextInfo) {
766
- interactiveMessage.contextInfo = message.contextInfo;
767
- }
768
- if ('mentions' in message && !!message.mentions) {
769
- interactiveMessage.contextInfo = { mentionedJid: message.mentions };
770
- }
771
- m = { interactiveMessage };
772
- }
773
- if ('cards' in message && !!message.cards) {
774
- const slides = await Promise.all(message.cards.map(async (slide) => {
775
- const { image, video, product, title, caption, footer, buttons } = slide;
776
- let header;
777
- if (product) {
778
- const { imageMessage } = await (0, exports.prepareWAMessageMedia)({ image: product.productImage, ...options }, options);
779
- header = {
780
- productMesage: Types_1.WAProto.Message.ProductMessage.fromObject({
781
- product: {
782
- ...product,
783
- productImage: imageMessage,
784
- },
785
- ...slide
786
- })
787
- };
788
- }
789
- else if (image) {
790
- header = await (0, exports.prepareWAMessageMedia)({ image: image, ...options }, options);
791
- }
792
- else if (video) {
793
- header = await (0, exports.prepareWAMessageMedia)({ video: video, ...options }, options);
794
- }
795
- const msg = {
796
- header: {
797
- title,
798
- hasMediaAttachment: true,
799
- ...header
800
- },
801
- body: {
802
- text: caption
803
- },
804
- footer: {
805
- text: footer
806
- },
807
- nativeFlowMessage: {
808
- buttons,
809
- },
810
- };
811
- return msg;
812
- }));
813
- const interactiveMessage = {
814
- carouselMessage: Types_1.WAProto.Message.InteractiveMessage.CarouselMessage.fromObject({
815
- cards: slides
816
- })
817
- };
818
- if ('text' in message) {
819
- body: interactiveMessage.body = {
820
- text: message.text
821
- };
822
- header: interactiveMessage.header = {
823
- title: message.title,
824
- subtitle: message.subtitle,
825
- hasMediaAttachment: (_4 = message === null || message === void 0 ? void 0 : message.media) !== null && _4 !== void 0 ? _4 : false,
826
- };
827
- }
828
- if ('footer' in message && !!message.footer) {
829
- footer: interactiveMessage.footer = {
830
- text: message.footer
831
- };
832
- }
833
- if ('contextInfo' in message && !!message.contextInfo) {
834
- interactiveMessage.contextInfo = message.contextInfo;
835
- }
836
- if ('mentions' in message && !!message.mentions) {
837
- interactiveMessage.contextInfo = { mentionedJid: message.mentions };
838
- }
839
- m = { interactiveMessage };
840
- }
841
450
  if ('sections' in message && !!message.sections) {
842
451
  const listMessage = {
843
452
  sections: message.sections,
@@ -852,19 +461,7 @@ const generateWAMessageContent = async (message, options) => {
852
461
  if ('viewOnce' in message && !!message.viewOnce) {
853
462
  m = { viewOnceMessage: { message: m } };
854
463
  }
855
- if ('viewOnceV2' in message && !!message.viewOnceV2) {
856
- m = { viewOnceMessageV2: { message: m } };
857
- }
858
- if ('viewOnceV2Extension' in message && !!message.viewOnceV2Extension) {
859
- m = { viewOnceMessageV2Extension: { message: m } };
860
- }
861
- if ('ephemeral' in message && !!message.ephemeral) {
862
- m = { ephemeralMessage: { message: m } };
863
- }
864
- if ('lottie' in message && !!message.lottie) {
865
- m = { lottieStickerMessage: { message: m } };
866
- }
867
- if ('mentions' in message && ((_5 = message.mentions) === null || _5 === void 0 ? void 0 : _5.length)) {
464
+ if ('mentions' in message && ((_a = message.mentions) === null || _a === void 0 ? void 0 : _a.length)) {
868
465
  const [messageType] = Object.keys(m);
869
466
  m[messageType].contextInfo = m[messageType] || {};
870
467
  m[messageType].contextInfo.mentionedJid = message.mentions;
@@ -888,7 +485,6 @@ const generateWAMessageContent = async (message, options) => {
888
485
  };
889
486
  exports.generateWAMessageContent = generateWAMessageContent;
890
487
  const generateWAMessageFromContent = (jid, message, options) => {
891
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
892
488
  // set timestamp to now
893
489
  // if not specified
894
490
  if (!options.timestamp) {
@@ -908,16 +504,7 @@ const generateWAMessageFromContent = (jid, message, options) => {
908
504
  if (typeof quotedContent === 'object' && quotedContent && 'contextInfo' in quotedContent) {
909
505
  delete quotedContent.contextInfo;
910
506
  }
911
- let requestPayment;
912
- if (key === 'requestPaymentMessage') {
913
- if (((_a = innerMessage === null || innerMessage === void 0 ? void 0 : innerMessage.requestPaymentMessage) === null || _a === void 0 ? void 0 : _a.noteMessage) && ((_c = (_b = innerMessage === null || innerMessage === void 0 ? void 0 : innerMessage.requestPaymentMessage) === null || _b === void 0 ? void 0 : _b.noteMessage) === null || _c === void 0 ? void 0 : _c.extendedTextMessage)) {
914
- requestPayment = (_e = (_d = innerMessage === null || innerMessage === void 0 ? void 0 : innerMessage.requestPaymentMessage) === null || _d === void 0 ? void 0 : _d.noteMessage) === null || _e === void 0 ? void 0 : _e.extendedTextMessage;
915
- }
916
- else if (((_f = innerMessage === null || innerMessage === void 0 ? void 0 : innerMessage.requestPaymentMessage) === null || _f === void 0 ? void 0 : _f.noteMessage) && ((_h = (_g = innerMessage === null || innerMessage === void 0 ? void 0 : innerMessage.requestPaymentMessage) === null || _g === void 0 ? void 0 : _g.noteMessage) === null || _h === void 0 ? void 0 : _h.stickerMessage)) {
917
- requestPayment = (_k = (_j = innerMessage.requestPaymentMessage) === null || _j === void 0 ? void 0 : _j.noteMessage) === null || _k === void 0 ? void 0 : _k.stickerMessage;
918
- }
919
- }
920
- const contextInfo = (key === 'requestPaymentMessage' ? requestPayment.contextInfo : innerMessage[key].contextInfo) || {};
507
+ const contextInfo = innerMessage[key].contextInfo || {};
921
508
  contextInfo.participant = (0, WABinary_1.jidNormalizedUser)(participant);
922
509
  contextInfo.stanzaId = quoted.key.id;
923
510
  contextInfo.quotedMessage = quotedMsg;
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" />
1
2
  import { Logger } from 'pino';
2
3
  import { proto } from '../../WAProto';
3
4
  import { KeyPair } from '../Types';
@@ -9,12 +10,12 @@ export declare const makeNoiseHandler: ({ keyPair: { private: privateKey, public
9
10
  logger: Logger;
10
11
  routingInfo?: Buffer | undefined;
11
12
  }) => {
12
- encrypt: (plaintext: Uint8Array) => any;
13
- decrypt: (ciphertext: Uint8Array) => any;
13
+ encrypt: (plaintext: Uint8Array) => Buffer;
14
+ decrypt: (ciphertext: Uint8Array) => Buffer;
14
15
  authenticate: (data: Uint8Array) => void;
15
16
  mixIntoKey: (data: Uint8Array) => void;
16
17
  finishInit: () => void;
17
- processHandshake: ({ serverHello }: proto.HandshakeMessage, noiseKey: KeyPair) => any;
18
- encodeFrame: (data: Buffer | Uint8Array) => any;
18
+ processHandshake: ({ serverHello }: proto.HandshakeMessage, noiseKey: KeyPair) => Buffer;
19
+ encodeFrame: (data: Buffer | Uint8Array) => Buffer;
19
20
  decodeFrame: (newData: Buffer | Uint8Array, onFrame: (buff: Uint8Array | BinaryNode) => void) => void;
20
21
  };
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getChatId = exports.shouldIncrementChatUnread = exports.isRealMessage = exports.cleanMessage = void 0;
4
- exports.decryptPollVote = decryptPollVote;
3
+ exports.decryptPollVote = exports.getChatId = exports.shouldIncrementChatUnread = exports.isRealMessage = exports.cleanMessage = void 0;
5
4
  const WAProto_1 = require("../../WAProto");
6
5
  const Types_1 = require("../Types");
7
6
  const messages_1 = require("../Utils/messages");
@@ -102,6 +101,7 @@ function decryptPollVote({ encPayload, encIv }, { pollCreatorJid, pollMsgId, pol
102
101
  return Buffer.from(txt);
103
102
  }
104
103
  }
104
+ exports.decryptPollVote = decryptPollVote;
105
105
  const processMessage = async (message, { shouldProcessHistoryMsg, ev, creds, keyStore, logger, options, getMessage }) => {
106
106
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
107
107
  const meId = creds.me.id;
@@ -1,7 +1,6 @@
1
1
  import { SignalRepository } from '../Types';
2
2
  import { AuthenticationCreds, AuthenticationState, KeyPair, SignalIdentity, SignalKeyStore, SignedKeyPair } from '../Types/Auth';
3
3
  import { BinaryNode, JidWithDevice } from '../WABinary';
4
- import { USyncQueryResultList } from '../WAUSync';
5
4
  export declare const createSignalIdentity: (wid: string, accountSignatureKey: Uint8Array) => SignalIdentity;
6
5
  export declare const getPreKeys: ({ get }: SignalKeyStore, min: number, limit: number) => Promise<{
7
6
  [id: string]: KeyPair;
@@ -16,7 +15,7 @@ export declare const generateOrGetPreKeys: (creds: AuthenticationCreds, range: n
16
15
  export declare const xmppSignedPreKey: (key: SignedKeyPair) => BinaryNode;
17
16
  export declare const xmppPreKey: (pair: KeyPair, id: number) => BinaryNode;
18
17
  export declare const parseAndInjectE2ESessions: (node: BinaryNode, repository: SignalRepository) => Promise<void>;
19
- export declare const extractDeviceJids: (result: USyncQueryResultList[], myJid: string, excludeZeroDevices: boolean) => JidWithDevice[];
18
+ export declare const extractDeviceJids: (result: BinaryNode, myJid: string, excludeZeroDevices: boolean) => JidWithDevice[];
20
19
  /**
21
20
  * get the next N keys for upload or processing
22
21
  * @param count number of pre-keys to get or generate