feat: update proto

The new proto extract has a bunch of breaking changes, so if you were using the raw proto in your code somewhere -- then you may have to update your code to make it work with the new proto

!BREAKING_CHANGE
This commit is contained in:
Adhiraj Singh
2022-08-01 10:43:01 +05:30
parent 9c83cd96d2
commit 2549d10be9
22 changed files with 58772 additions and 55399 deletions

View File

@@ -48,14 +48,14 @@ const MIMETYPE_MAP: { [T in MediaType]: string } = {
}
const MessageTypeProto = {
'image': WAProto.ImageMessage,
'video': WAProto.VideoMessage,
'audio': WAProto.AudioMessage,
'sticker': WAProto.StickerMessage,
'document': WAProto.DocumentMessage,
'image': WAProto.Message.ImageMessage,
'video': WAProto.Message.VideoMessage,
'audio': WAProto.Message.AudioMessage,
'sticker': WAProto.Message.StickerMessage,
'document': WAProto.Message.DocumentMessage,
} as const
const ButtonType = proto.ButtonsMessage.ButtonsMessageHeaderType
const ButtonType = proto.Message.ButtonsMessage.HeaderType
export const generateLinkPreviewIfRequired = async(text: string, getUrlInfo: MessageGenerationOptions['getUrlInfo'], logger: MessageGenerationOptions['logger']) => {
const matchedUrls = text.match(URL_REGEX)
@@ -210,7 +210,7 @@ export const prepareDisappearingMessageSettingContent = (ephemeralExpiration?: n
ephemeralMessage: {
message: {
protocolMessage: {
type: WAProto.ProtocolMessage.ProtocolMessageType.EPHEMERAL_SETTING,
type: WAProto.Message.ProtocolMessage.Type.EPHEMERAL_SETTING,
ephemeralExpiration
}
}
@@ -287,22 +287,22 @@ export const generateWAMessageContent = async(
}
if(contactLen === 1) {
m.contactMessage = WAProto.ContactMessage.fromObject(message.contacts.contacts[0])
m.contactMessage = WAProto.Message.ContactMessage.fromObject(message.contacts.contacts[0])
} else {
m.contactsArrayMessage = WAProto.ContactsArrayMessage.fromObject(message.contacts)
m.contactsArrayMessage = WAProto.Message.ContactsArrayMessage.fromObject(message.contacts)
}
} else if('location' in message) {
m.locationMessage = WAProto.LocationMessage.fromObject(message.location)
m.locationMessage = WAProto.Message.LocationMessage.fromObject(message.location)
} else if('react' in message) {
if(!message.react.senderTimestampMs) {
message.react.senderTimestampMs = Date.now()
}
m.reactionMessage = WAProto.ReactionMessage.fromObject(message.react)
m.reactionMessage = WAProto.Message.ReactionMessage.fromObject(message.react)
} else if('delete' in message) {
m.protocolMessage = {
key: message.delete,
type: WAProto.ProtocolMessage.ProtocolMessageType.REVOKE
type: WAProto.Message.ProtocolMessage.Type.REVOKE
}
} else if('forward' in message) {
m = generateForwardMessageContent(
@@ -327,7 +327,7 @@ export const generateWAMessageContent = async(
m.buttonsResponseMessage = {
selectedButtonId: message.buttonReply.id,
selectedDisplayText: message.buttonReply.displayText,
type: proto.ButtonsResponseMessage.ButtonsResponseMessageType.DISPLAY_TEXT,
type: proto.Message.ButtonsResponseMessage.Type.DISPLAY_TEXT,
}
break
}
@@ -339,8 +339,8 @@ export const generateWAMessageContent = async(
}
if('buttons' in message && !!message.buttons) {
const buttonsMessage: proto.IButtonsMessage = {
buttons: message.buttons!.map(b => ({ ...b, type: proto.Button.ButtonType.RESPONSE }))
const buttonsMessage: proto.Message.IButtonsMessage = {
buttons: message.buttons!.map(b => ({ ...b, type: proto.Message.ButtonsMessage.Button.Type.RESPONSE }))
}
if('text' in message) {
buttonsMessage.contentText = message.text
@@ -362,7 +362,7 @@ export const generateWAMessageContent = async(
m = { buttonsMessage }
} else if('templateButtons' in message && !!message.templateButtons) {
const msg: proto.IHydratedFourRowTemplate = {
const msg: proto.Message.TemplateMessage.IHydratedFourRowTemplate = {
hydratedButtons: message.templateButtons
}
@@ -389,13 +389,13 @@ export const generateWAMessageContent = async(
}
if('sections' in message && !!message.sections) {
const listMessage: proto.IListMessage = {
const listMessage: proto.Message.IListMessage = {
sections: message.sections,
buttonText: message.buttonText,
title: message.title,
footerText: message.footer,
description: message.text,
listType: proto.ListMessage.ListMessageListType['SINGLE_SELECT']
listType: proto.Message.ListMessage.ListType.SINGLE_SELECT
}
m = { listMessage }
@@ -537,7 +537,7 @@ export const normalizeMessageContent = (content: WAMessageContent | null | undef
* Eg. extracts the inner message from a disappearing message/view once message
*/
export const extractMessageContent = (content: WAMessageContent | undefined | null): WAMessageContent | undefined => {
const extractFromTemplateMessage = (msg: proto.IHydratedFourRowTemplate | proto.IButtonsMessage) => {
const extractFromTemplateMessage = (msg: proto.Message.TemplateMessage.IHydratedFourRowTemplate | proto.Message.IButtonsMessage) => {
if(msg.imageMessage) {
return { imageMessage: msg.imageMessage }
} else if(msg.documentMessage) {