ishumdz-bail 1.0.15 → 1.0.17

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.
@@ -588,6 +588,14 @@ export const generateWAMessageContent = async (message, options) => {
588
588
  applyContextInfoAndMentions(interactiveMessage, message);
589
589
  m = { interactiveMessage };
590
590
  }
591
+ else if ('buttonsMessage' in message && !!message.buttonsMessage) {
592
+ // PATCH: raw buttonsMessage pass-through — classic horizontal buttons (reference: Case X Plugin case.js).
593
+ // Fully-formed ButtonsMessage with any header (location/image/video/
594
+ // document), contentText, footerText, headerType and buttons[].
595
+ // type:1 buttons render in one horizontal row; nativeFlowInfo
596
+ // single_select opens a list sheet on tap.
597
+ m = { buttonsMessage: proto.Message.ButtonsMessage.create(message.buttonsMessage) };
598
+ }
591
599
  else if ('buttons' in message && !!message.buttons) {
592
600
  const buttonsMessage = {
593
601
  buttons: message.buttons.map(b => ({ ...b, type: proto.Message.ButtonsMessage.Button.Type.RESPONSE }))
@@ -600,10 +608,24 @@ export const generateWAMessageContent = async (message, options) => {
600
608
  if ('caption' in message) {
601
609
  buttonsMessage.contentText = message.caption;
602
610
  }
603
- const contentType = getContentType(m);
604
- const type = contentType.replace('Message', '').toUpperCase();
605
- buttonsMessage.headerType = ButtonType[type];
606
- Object.assign(buttonsMessage, m);
611
+ // PATCH: prepare media headers for caption+buttons (fork bug fix).
612
+ // The media branch never ran before this point, so m is empty and
613
+ // getContentType(m) crashed. Build the header right here instead.
614
+ if ('video' in message && !!message.video) {
615
+ const media = await prepareWAMessageMedia({ video: message.video }, options);
616
+ buttonsMessage.videoMessage = media.videoMessage;
617
+ if (message.gifPlayback) buttonsMessage.videoMessage.gifPlayback = true;
618
+ buttonsMessage.headerType = ButtonType.VIDEO;
619
+ } else if ('image' in message && !!message.image) {
620
+ const media = await prepareWAMessageMedia({ image: message.image }, options);
621
+ buttonsMessage.imageMessage = media.imageMessage;
622
+ buttonsMessage.headerType = ButtonType.IMAGE;
623
+ } else {
624
+ const contentType = getContentType(m);
625
+ const type = contentType.replace('Message', '').toUpperCase();
626
+ buttonsMessage.headerType = ButtonType[type];
627
+ Object.assign(buttonsMessage, m);
628
+ }
607
629
  }
608
630
  if ('footer' in message && !!message.footer) {
609
631
  buttonsMessage.footerText = message.footer;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ishumdz-bail",
3
- "version": "1.0.15",
3
+ "version": "1.0.17",
4
4
  "description": "WhatsApp API Modification By Lovely",
5
5
  "keywords": [
6
6
  "whatsapp",