From 6350263f68d0a9766f2c4753db57bc41b0f3f279 Mon Sep 17 00:00:00 2001 From: hyugabokko Date: Thu, 4 Aug 2022 07:30:28 +0900 Subject: [PATCH] i18n hardcoded strings from boardPage's UndoRedoHotKeys.tsx (#3483) Co-authored-by: Mattermod --- webapp/i18n/en.json | 6 ++++ .../src/pages/boardPage/undoRedoHotKeys.tsx | 32 +++++++++++++++---- 2 files changed, 32 insertions(+), 6 deletions(-) diff --git a/webapp/i18n/en.json b/webapp/i18n/en.json index ea49da266..18db9a2d1 100644 --- a/webapp/i18n/en.json +++ b/webapp/i18n/en.json @@ -250,6 +250,12 @@ "URLProperty.copiedLink": "Copied!", "URLProperty.copy": "Copy", "URLProperty.edit": "Edit", + "UndoRedoHotKeys.canRedo": "Redo", + "UndoRedoHotKeys.canRedo-with-description": "Redo {description}", + "UndoRedoHotKeys.canUndo": "Undo", + "UndoRedoHotKeys.canUndo-with-description": "Undo {description}", + "UndoRedoHotKeys.cannotRedo": "Nothing to Redo", + "UndoRedoHotKeys.cannotUndo": "Nothing to Undo", "ValueSelector.noOptions": "No options. Start typing to add the first one!", "ValueSelector.valueSelector": "Value selector", "ValueSelectorLabel.openMenu": "Open menu", diff --git a/webapp/src/pages/boardPage/undoRedoHotKeys.tsx b/webapp/src/pages/boardPage/undoRedoHotKeys.tsx index 295c1ee83..831210fa1 100644 --- a/webapp/src/pages/boardPage/undoRedoHotKeys.tsx +++ b/webapp/src/pages/boardPage/undoRedoHotKeys.tsx @@ -1,25 +1,36 @@ // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. // See LICENSE.txt for license information. import {useHotkeys} from 'react-hotkeys-hook' +import {useIntl} from 'react-intl' import {sendFlashMessage} from '../../components/flashMessages' import mutator from '../../mutator' import {Utils} from '../../utils' const UndoRedoHotKeys = (): null => { + const intl = useIntl() + useHotkeys('ctrl+z,cmd+z', () => { Utils.log('Undo') if (mutator.canUndo) { const description = mutator.undoDescription mutator.undo().then(() => { if (description) { - sendFlashMessage({content: `Undo ${description}`, severity: 'low'}) + sendFlashMessage({ + content: intl.formatMessage({id: 'UndoRedoHotKeys.canUndo-with-description', defaultMessage: 'Undo {description}'}, {description: description}), + severity: 'low' + }) } else { - sendFlashMessage({content: 'Undo', severity: 'low'}) + sendFlashMessage({ + content: intl.formatMessage({id: 'UndoRedoHotKeys.canUndo', defaultMessage: 'Undo'}), + severity: 'low'}) } }) } else { - sendFlashMessage({content: 'Nothing to Undo', severity: 'low'}) + sendFlashMessage({ + content: intl.formatMessage({id: 'UndoRedoHotKeys.cannotUndo', defaultMessage: 'Nothing to Undo'}), + severity: 'low' + }) } }) @@ -29,13 +40,22 @@ const UndoRedoHotKeys = (): null => { const description = mutator.redoDescription mutator.redo().then(() => { if (description) { - sendFlashMessage({content: `Redo ${description}`, severity: 'low'}) + sendFlashMessage({ + content: intl.formatMessage({id: 'UndoRedoHotKeys.canRedo-with-description', defaultMessage: 'Redo {description}'}, {description: description}), + severity: 'low' + }) } else { - sendFlashMessage({content: 'Redu', severity: 'low'}) + sendFlashMessage({ + content: intl.formatMessage({id: 'UndoRedoHotKeys.canRedo', defaultMessage: 'Redo'}), + severity: 'low' + }) } }) } else { - sendFlashMessage({content: 'Nothing to Redo', severity: 'low'}) + sendFlashMessage({ + content: intl.formatMessage({id: 'UndoRedoHotKeys.cannotRedo', defaultMessage: 'Nothing to Redo'}), + severity: 'low' + }) } }) return null