From caa38738219d5b5b073fd0a05a9d2684ab83afd7 Mon Sep 17 00:00:00 2001 From: Chewbacca Date: Mon, 14 Nov 2022 11:22:45 -0500 Subject: [PATCH] Account for API validation errors --- .../chats/components/chat-composer.tsx | 13 +++--- .../features/chats/components/chat.tsx | 40 +++++++++++++++---- 2 files changed, 39 insertions(+), 14 deletions(-) diff --git a/app/soapbox/features/chats/components/chat-composer.tsx b/app/soapbox/features/chats/components/chat-composer.tsx index 0db5ed158..58e93b395 100644 --- a/app/soapbox/features/chats/components/chat-composer.tsx +++ b/app/soapbox/features/chats/components/chat-composer.tsx @@ -10,7 +10,6 @@ import { useAppDispatch, useAppSelector } from 'soapbox/hooks'; const messages = defineMessages({ placeholder: { id: 'chat.input.placeholder', defaultMessage: 'Type a message' }, send: { id: 'chat.actions.send', defaultMessage: 'Send' }, - failedToSend: { id: 'chat.failed_to_send', defaultMessage: 'Message failed to send.' }, retry: { id: 'chat.retry', defaultMessage: 'Retry?' }, blocked: { id: 'chat_message_list.blocked', defaultMessage: 'You blocked this user' }, unblock: { id: 'chat_composer.unblock', defaultMessage: 'Unblock' }, @@ -20,9 +19,9 @@ const messages = defineMessages({ }); interface IChatComposer extends Pick, 'onKeyDown' | 'onChange' | 'disabled'> { - value: string, - onSubmit: () => void, - hasErrorSubmittingMessage?: boolean, + value: string + onSubmit: () => void + errorMessage: string | undefined } /** Textarea input for chats. */ @@ -31,7 +30,7 @@ const ChatComposer = React.forwardRef onChange, value, onSubmit, - hasErrorSubmittingMessage = false, + errorMessage = false, disabled = false, }, ref) => { const dispatch = useAppDispatch(); @@ -102,10 +101,10 @@ const ChatComposer = React.forwardRef - {hasErrorSubmittingMessage && ( + {errorMessage && ( <> - {intl.formatMessage(messages.failedToSend)} + {errorMessage}