@blurose/baileys 1.1.7 → 1.1.9

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.
@@ -19,4 +19,5 @@ export * from './browser-utils.js';
19
19
  export * from './companion-reg-client-utils.js';
20
20
  export * from './identity-change-handler.js';
21
21
  export * from './stanza-ack.js';
22
+ export * from './MessageBuilder.js';
22
23
  //# sourceMappingURL=index.js.map
@@ -485,6 +485,70 @@ export const generateWAMessageContent = async (message, options) => {
485
485
  }
486
486
  };
487
487
  }
488
+ else if (hasNonNullishProperty(message, 'buttons')) {
489
+ let header = {};
490
+ if (hasNonNullishProperty(message, 'image')) {
491
+ const { imageMessage } = await prepareWAMessageMedia({ image: message.image }, options);
492
+ header = {
493
+ title: message.title || '',
494
+ hasMediaAttachment: true,
495
+ imageMessage
496
+ };
497
+ }
498
+ else if (hasNonNullishProperty(message, 'video')) {
499
+ const { videoMessage } = await prepareWAMessageMedia({ video: message.video }, options);
500
+ header = {
501
+ title: message.title || '',
502
+ hasMediaAttachment: true,
503
+ videoMessage
504
+ };
505
+ }
506
+ else if (hasNonNullishProperty(message, 'document')) {
507
+ const { documentMessage } = await prepareWAMessageMedia({ document: message.document }, options);
508
+ header = {
509
+ title: message.title || '',
510
+ hasMediaAttachment: true,
511
+ documentMessage
512
+ };
513
+ }
514
+ else if (hasNonNullishProperty(message, 'location')) {
515
+ header = {
516
+ title: message.title || '',
517
+ hasMediaAttachment: true,
518
+ locationMessage: message.location
519
+ };
520
+ }
521
+ else if (message.title) {
522
+ header = {
523
+ title: message.title,
524
+ hasMediaAttachment: false
525
+ };
526
+ }
527
+
528
+ m.interactiveMessage = {
529
+ header: Object.keys(header).length ? header : undefined,
530
+ body: {
531
+ text: message.text || message.caption || ''
532
+ },
533
+ footer: message.footer ? {
534
+ text: message.footer
535
+ } : undefined,
536
+ nativeFlowMessage: {
537
+ buttons: message.buttons.map(btn => {
538
+ if (btn.buttonText?.displayText) {
539
+ return {
540
+ name: 'quick_reply',
541
+ buttonParamsJson: JSON.stringify({
542
+ display_text: btn.buttonText.displayText,
543
+ id: btn.buttonId || ''
544
+ })
545
+ };
546
+ }
547
+ return btn;
548
+ })
549
+ }
550
+ };
551
+ }
488
552
  else {
489
553
  m = await prepareWAMessageMedia(message, options);
490
554
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@blurose/baileys",
3
3
  "type": "module",
4
- "version": "1.1.7",
4
+ "version": "1.1.9",
5
5
  "description": "A WebSockets library for interacting with WhatsApp Web",
6
6
  "keywords": [
7
7
  "whatsapp",