diff --git a/docs/roadmap-resenha.md b/docs/roadmap-resenha.md index 791b5096..2aaf80b5 100644 --- a/docs/roadmap-resenha.md +++ b/docs/roadmap-resenha.md @@ -72,6 +72,7 @@ fixas por `t('chave')`. O que faltar cai para o inglês sozinho. - Configurações → Privacidade - Configurações → Conexões (nasceu bilíngue) - Seletor de GIF +- Chat: composer e mensagens (placeholder, anexos, responder, reações) - Registro de auditoria e Estatísticas (nasceram bilíngues) ### Fila sugerida de tradução diff --git a/packages/web/src/components/chat/Message.tsx b/packages/web/src/components/chat/Message.tsx index 2b0c6e40..11544225 100644 --- a/packages/web/src/components/chat/Message.tsx +++ b/packages/web/src/components/chat/Message.tsx @@ -1,4 +1,5 @@ import React, { useState, useRef, useEffect, useCallback } from 'react'; +import { useT } from '../../i18n'; import { createPortal } from 'react-dom'; import type { MessageWithUser, Embed, User } from '@backspace/shared'; import { MarkdownRenderer } from './MarkdownRenderer'; @@ -131,6 +132,7 @@ export function Message({ message, isCompact, isFirstInGroup, previousMessageId const editMessage = useChatStore((s) => s.editMessage); const deleteMessage = useChatStore((s) => s.deleteMessage); const members = useSpaceStore((s) => s.members); + const tr = useT(); const openUserProfile = useUIStore((s) => s.openUserProfile); const pending = isPendingMessage(message) ? message.__pending : null; @@ -676,7 +678,7 @@ export function Message({ message, isCompact, isFirstInGroup, previousMessageId className={`p-1 hover:bg-interactive-hover rounded transition-colors text-[14px] leading-none ${ showReactionPicker ? 'text-accent-primary' : 'text-txt-tertiary hover:text-txt-secondary' }`} - title="Add reaction" + title={tr('chat.message.addReaction')} > @@ -687,7 +689,7 @@ export function Message({ message, isCompact, isFirstInGroup, previousMessageId
- Replying to + {tr('chat.composer.replyingTo')} {chatReplyTo.user.displayName ?? chatReplyTo.user.username} @@ -783,7 +785,7 @@ export function MessageInput({ channelId, channelName, placeholder }: MessageInp