From a2d8642e1cf6400a1b3876d05f42bdca24a914f3 Mon Sep 17 00:00:00 2001 From: Willian Coqueiro Date: Mon, 19 May 2025 23:21:01 +0000 Subject: [PATCH] fix: Corrige processamento de documentos sem filename. ## Erros: - Cannot read properties of null (reading 'fileName') --- .../chatwoot/utils/chatwoot-import-helper.ts | 32 +++++++++++-------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/src/api/integrations/chatbot/chatwoot/utils/chatwoot-import-helper.ts b/src/api/integrations/chatbot/chatwoot/utils/chatwoot-import-helper.ts index 52453f59..faa9308e 100644 --- a/src/api/integrations/chatbot/chatwoot/utils/chatwoot-import-helper.ts +++ b/src/api/integrations/chatbot/chatwoot/utils/chatwoot-import-helper.ts @@ -499,25 +499,29 @@ class ChatwootImport { stickerMessage: msg.message.stickerMessage, templateMessage: msg.message.templateMessage?.hydratedTemplate?.hydratedContentText, }; - const typeKey = Object.keys(types).find((key) => types[key] !== undefined); + const typeKey = Object.keys(types).find( + (key) => types[key] !== undefined && types[key] !== null + ); switch (typeKey) { - case 'documentMessage': - return `__`; + case 'documentMessage': { + const doc = msg.message.documentMessage; + const fileName = doc?.fileName || 'document'; + const caption = doc?.caption ? ` ${doc.caption}` : ''; + return `__`; + } - case 'documentWithCaptionMessage': - return `__`; + case 'documentWithCaptionMessage': { + const doc = msg.message.documentWithCaptionMessage?.message?.documentMessage; + const fileName = doc?.fileName || 'document'; + const caption = doc?.caption ? ` ${doc.caption}` : ''; + return `__`; + } case 'templateMessage': - return msg.message.templateMessage.hydratedTemplate.hydratedTitleText - ? `*${msg.message.templateMessage.hydratedTemplate.hydratedTitleText}*\\n` - : '' + msg.message.templateMessage.hydratedTemplate.hydratedContentText; + const template = msg.message.templateMessage?.hydratedTemplate; + return (template?.hydratedTitleText ? `*${template.hydratedTitleText}*\n` : '') + + (template?.hydratedContentText || ''); case 'imageMessage': return '__';