fix: send messages properly when disappearing mode is on (#1174)

* fix: send messages properly when dissappearing mode is on

* add `isEphemeral` to message model
This commit is contained in:
Pedro S. Lopez
2022-02-06 21:48:55 -04:00
committed by GitHub
parent 7e36cceaf0
commit 70ca073f38
3 changed files with 16 additions and 0 deletions

2
index.d.ts vendored
View File

@@ -547,6 +547,8 @@ declare namespace WAWebJS {
isStatus: boolean,
/** Indicates if the message is a Gif */
isGif: boolean,
/** Indicates if the message will disappear after it expires */
isEphemeral: boolean,
/** ID for the Chat that this message was sent to, except if the message was sent by the current user */
from: string,
/** Indicates if the message was sent by the current user */

View File

@@ -185,6 +185,12 @@ class Message extends Base {
*/
this.isGif = Boolean(data.isGif);
/**
* Indicates if the message will disappear after it expires
* @type {boolean}
*/
this.isEphemeral = data.isEphemeral;
/** Title */
if (data.title) {
this.title = data.title;

View File

@@ -202,6 +202,12 @@ exports.LoadUtils = () => {
const extraOptions = options.extraOptions || {};
delete options.extraOptions;
const ephemeralSettings = {
ephemeralDuration: chat.isEphemeralSettingOn() ? chat.getEphemeralSetting() : undefined,
ephemeralSettingTimestamp: chat.getEphemeralSettingTimestamp() || undefined,
disappearingModeInitiator: chat.getDisappearingModeInitiator() || undefined,
};
const message = {
...options,
id: newMsgId,
@@ -214,6 +220,7 @@ exports.LoadUtils = () => {
t: parseInt(new Date().getTime() / 1000),
isNewMsg: true,
type: 'chat',
...ephemeralSettings,
...locationOptions,
...attOptions,
...quotedMsgOptions,
@@ -318,6 +325,7 @@ exports.LoadUtils = () => {
window.WWebJS.getMessageModel = message => {
const msg = message.serialize();
msg.isEphemeral = message.isEphemeral;
msg.isStatusV3 = message.isStatusV3;
msg.links = (message.getLinks()).map(link => ({
link: link.href,