diff --git a/app/app.global.css b/app/app.global.css
index a2e693c..999cb6f 100644
--- a/app/app.global.css
+++ b/app/app.global.css
@@ -147,6 +147,10 @@ div.class-allow-device-to-connect-alert {
z-index: 9999;
}
+.class-allow-device-to-connect-alert > div > .bp3-button {
+ border-radius: 50px;
+}
+
/* ALLOW CONNECTION ALERT BLINK ANIMATION START */
div.class-allow-device-to-connect-alert
> div.bp3-alert-body
diff --git a/app/client/public/locales/en/translation.json b/app/client/public/locales/en/translation.json
index e17ebfa..6ea8aae 100644
--- a/app/client/public/locales/en/translation.json
+++ b/app/client/public/locales/en/translation.json
@@ -1,4 +1,39 @@
{
"Waiting for user to click ALLOW button on screen sharing device...": "Waiting for user to click ALLOW button on screen sharing device...",
- "Waiting for user to select source to share from screen sharing device...": "Waiting for user to select source to share from screen sharing device..."
+ "Waiting for user to select source to share from screen sharing device...": "Waiting for user to select source to share from screen sharing device...",
+ "My Device Info": "My Device Info",
+ "Device Type": "Device Type",
+ "Your Device IP should match with Device IP in alert popup appeared on your computer, where Deskreen is running": "Your Device IP should match with \"Device IP\" in alert popup appeared on your computer, where Deskreen is running.",
+ "Device IP": "Device IP",
+ "Device Browser": "Device Browser",
+ "Device OS": "Device OS",
+ "These details should match with the ones that you see in alert popup on computer screen, where Deskreen is running": "These details should match with the ones that you see in alert popup on screen sharing device.",
+ "Deskreen Screen Viewer": "Deskreen Screen Viewer",
+ "Connected!": "Connected!",
+ "Error occurred": "Error occurred",
+ "Deskreen Error Dialog": "Deskreen Error Dialog",
+ "Something went wrong": "Something went wrong",
+ "You may close this browser window then try to connect again": "You may close this browser window then try to connect again",
+ "An unknown error occurred": "An unknown error occurred",
+ "You were not allowed to connect": "You were not allowed to connect",
+ "You were disconnected": "You were disconnected",
+ "WebRTC error occurred": "WebRTC error occurred",
+ "If you like Deskreen consider contributing financially Deskreen is open-source Your donations keep us motivated to make Deskreen even better": "If you like Deskreen, consider contributing financially. Deskreen is open-source. Your donations keep us motivated to make Deskreen even better.",
+ "Donate": "Donate",
+ "Video stream is paused": "Video stream is paused",
+ "Video stream is playing": "Video stream is playing",
+ "Pause": "Pause",
+ "Play": "Play",
+ "Video Settings": "Video Settings",
+ "Flip": "Flip",
+ "Video quality has been changed to": "Video quality has been changed to",
+ "Click to Open Video Settings": "Click to Open Video Settings",
+ "Click to Enter Full Screen Mode": "Click to Enter Full Screen Mode",
+ "Default video player has been turned OFF": "Default video player has been turned OFF",
+ "Default video player has been turned ON": "Default video player has been turned ON",
+ "ON": "ON",
+ "OFF": "OFF",
+ "Default Video Player": "Default Video Player",
+ "Click to visit our website": "Click to visit our website",
+ "Video is flipped horizontally": "Video is flipped horizontally"
}
diff --git a/app/client/public/locales/ru/translation.json b/app/client/public/locales/ru/translation.json
index 985e9e8..1784441 100644
--- a/app/client/public/locales/ru/translation.json
+++ b/app/client/public/locales/ru/translation.json
@@ -1,4 +1,39 @@
{
- "Waiting for user to click ALLOW button on screen sharing device...": "Жду когда пользователь нажмет кнопку РАЗРЕШИТЬ доступ к экрану компьютера...",
- "Waiting for user to select source to share from screen sharing device...": "Жду когда пользователь выберет весь экран или окно приложения для демонстрации..."
+ "Waiting for user to click ALLOW button on screen sharing device...": "Ждем когда пользователь нажмет кнопку РАЗРЕШИТЬ для доступа к экрану компьютера...",
+ "Waiting for user to select source to share from screen sharing device...": "Ждем когда пользователь выберет Весь экран или Окно приложения для отображения его здесь...",
+ "My Device Info": "Информация о моем устройстве",
+ "Device Type": "Тип устройства",
+ "Your Device IP should match with Device IP in alert popup appeared on your computer, where Deskreen is running": "IP-aдрес вашего устройства должен совпадать с «IP-адресом устройства» во всплывающем окне с предупреждением на компьютере, где работает Deskreen.",
+ "Device IP": "IP-aдрес устройства",
+ "Device Browser": "Веб-браузер устройства",
+ "Device OS": "ОС устройства",
+ "These details should match with the ones that you see in alert popup on computer screen, where Deskreen is running": "Эти данные должны совпадать с теми, которые вы видите во всплывающем окне предупреждения на экране компьютера, на котором работает Deskreen.",
+ "Deskreen Screen Viewer": "Просмотрщик экрана Deskreen",
+ "Connected!": "Подключено!",
+ "Error occurred": "Произошла ошибка",
+ "Deskreen Error Dialog": "Диалог ошибки Deskreen",
+ "Something went wrong": "Произошло что-то не так",
+ "You may close this browser window then try to connect again": "Вы можете закрыть это окно браузера и попытаться подключиться снова",
+ "An unknown error occurred": "Произошла неизвестная ошибка",
+ "You were not allowed to connect": "Вам не разрешили подключиться",
+ "You were disconnected": "Вы были отключены",
+ "WebRTC error occurred": "Произошла ошибка WebRTC",
+ "If you like Deskreen consider contributing financially Deskreen is open-source Your donations keep us motivated to make Deskreen even better": "Если вам нравится Deskreen, подумайте о том, чтобы внести финансовый вклад. Deskreen - это оупенсорсный проэкт. Ваши пожертвования позволяют нам делать Deskreen еще лучше.",
+ "Donate": "Пожертвовать",
+ "Video stream is paused": "Видеопоток приостановлен",
+ "Video stream is playing": "Видеопоток воспроизводится",
+ "Pause": "Pause",
+ "Play": "Play",
+ "Video Settings": "Настройки видео",
+ "Flip": "Отзеркалить",
+ "Video quality has been changed to": "Качество видео изменено на",
+ "Click to Open Video Settings": "Нажмите, чтобы открыть настройки видео",
+ "Click to Enter Full Screen Mode": "Нажмите, чтобы перейти в полноэкранный режим",
+ "Default video player has been turned OFF": "Видеоплеер по умолчанию отключен",
+ "Default video player has been turned ON": "Видеопроигрыватель по умолчанию включен",
+ "ON": "ВКЛ",
+ "OFF": "ВЫКЛ",
+ "Default Video Player": "Видеоплеер по умолчанию",
+ "Click to visit our website": "Нажмите, чтобы посетить наш сайт",
+ "Video is flipped horizontally": "Видео отзеркалено"
}
diff --git a/app/client/public/locales/ua/translation.json b/app/client/public/locales/ua/translation.json
index f297036..e786f9f 100644
--- a/app/client/public/locales/ua/translation.json
+++ b/app/client/public/locales/ua/translation.json
@@ -1,4 +1,39 @@
{
- "Waiting for user to click ALLOW button on screen sharing device...": "Чекаэмо коли користувач натисне кнопку ДОЗВОЛИТИ доступ до екрану комп'ютера...",
- "Waiting for user to select source to share from screen sharing device...": "Чекаю коли користувач вибере весь екран або вікно програми для демонстрації..."
+ "Waiting for user to click ALLOW button on screen sharing device...": "Чекаємо коли користувач натисне кнопку ДОЗВОЛИТИ для доступу до екрану комп'ютера...",
+ "Waiting for user to select source to share from screen sharing device...": "Чекаємо коли користувач вибере Весь екран або Вікно додатка для відображення його тут...",
+ "My Device Info": "Інформація про мій пристрій",
+ "Device Type": "Тип пристрою",
+ "Your Device IP should match with Device IP in alert popup appeared on your computer, where Deskreen is running": "IP-aдрес пристрою вашого пристрою має збігатися з «IP-адресою пристрою» у спливаючому вікні сповіщення, що з’явилося на комп’ютері, де працює Deskreen.",
+ "Device IP": "IP-aдрес пристрою",
+ "Device Browser": "Веб-браузер пристрою",
+ "Device OS": "ОС пристрою",
+ "These details should match with the ones that you see in alert popup on computer screen, where Deskreen is running": "Ці деталі повинні збігатися з тими, які ви бачите у спливаючому вікні сповіщень на екрані комп’ютера, де запущений Deskreen.",
+ "Deskreen Screen Viewer": "Переглядач екрану Deskreen",
+ "Connected!": "Підключено!",
+ "Error occurred": "Виникла помилка",
+ "Deskreen Error Dialog": "Діалог помилки Deskreen",
+ "Something went wrong": "Щось не так сталося",
+ "You may close this browser window then try to connect again": "Ви можете закрити це вікно браузера та спробувати підключитися знову",
+ "An unknown error occurred": "Виникла невідома помилка",
+ "You were not allowed to connect": "Вам не дозволили підключитися",
+ "You were disconnected": "Ви були відключені",
+ "WebRTC error occurred": "Сталася помилка WebRTC",
+ "If you like Deskreen consider contributing financially Deskreen is open-source Your donations keep us motivated to make Deskreen even better": "Якщо вам подобається Deskreen, подумайте про те, щоб внести фінансовий внесок. Deskreen - це оупенсорсний проект. Ваші пожертвування дозволяють нам робити Deskreen ще краще.",
+ "Donate": "Пожертвувати",
+ "Video stream is paused": "Відеопотік призупинено",
+ "Video stream is playing": "Відеопотік продовжується",
+ "Pause": "Pause",
+ "Play": "Play",
+ "Video Settings": "Настройки видео",
+ "Flip": "Віддзеркалити",
+ "Video quality has been changed to": "Якість відео змінено на",
+ "Click to Open Video Settings": "Натисніть, щоб відкрити настройки відео",
+ "Click to Enter Full Screen Mode": "Натисніть для входу в повноекранноий режим",
+ "Default video player has been turned OFF": "Стандартний відеоплеєр браузера вимкнено",
+ "Default video player has been turned ON": "Стандартний відеоплеєр браузера включений",
+ "ON": "ВКЛ",
+ "OFF": "ВИМК",
+ "Default Video Player": "Стандартний відеоплеєр браузера",
+ "Click to visit our website": "Клацніть, щоб відвідати наш веб-сайт",
+ "Video is flipped horizontally": "Відео віддзеркалено"
}
diff --git a/app/client/src/components/ErrorDialog/ErrorMessageEnum.ts b/app/client/src/components/ErrorDialog/ErrorMessageEnum.ts
index 20fd473..43b83a9 100644
--- a/app/client/src/components/ErrorDialog/ErrorMessageEnum.ts
+++ b/app/client/src/components/ErrorDialog/ErrorMessageEnum.ts
@@ -1,7 +1,7 @@
export enum ErrorMessage {
- UNKNOWN_ERROR = 'An unknown error uccured.',
- DENY_TO_CONNECT = 'You were not allowed to connect.',
- DISCONNECTED = 'You were disconnected.',
- NOT_ALLOWED = 'You were not allowed to connect.',
- WEBRTC_ERROR = 'WebRTC error occurred.'
+ UNKNOWN_ERROR = 'An unknown error occurred',
+ DENY_TO_CONNECT = 'You were not allowed to connect',
+ DISCONNECTED = 'You were disconnected',
+ NOT_ALLOWED = 'You were not allowed to connect',
+ WEBRTC_ERROR = 'WebRTC error occurred'
}
diff --git a/app/client/src/components/ErrorDialog/index.tsx b/app/client/src/components/ErrorDialog/index.tsx
index 8122117..5c701dc 100644
--- a/app/client/src/components/ErrorDialog/index.tsx
+++ b/app/client/src/components/ErrorDialog/index.tsx
@@ -9,6 +9,7 @@ import {
Icon,
} from '@blueprintjs/core';
import { Col, Row } from 'react-flexbox-grid';
+import { useTranslation } from 'react-i18next';
import './index.css';
import { ErrorMessage } from './ErrorMessageEnum';
@@ -18,6 +19,7 @@ interface ErrorDialogProps {
}
function ErrorDialog(props: ErrorDialogProps) {
+ const { t } = useTranslation();
const { errorMessage, isOpen } = props;
return (
@@ -37,7 +39,7 @@ function ErrorDialog(props: ErrorDialogProps) {
>
- Device Browser: {myBrowser}
- Device OS: {myOS}
+ {`${t('Device Browser')}: ${myBrowser}`}
+ {`${t('Device OS')}: ${myOS}`}
- These details should match with the ones that you see in alert popup on
- screen sharing device.
+ {t('These details should match with the ones that you see in alert popup on computer screen, where Deskreen is running')}
);
diff --git a/app/client/src/components/PlayerControlPanel/__snapshots__/index.spec.tsx.snap b/app/client/src/components/PlayerControlPanel/__snapshots__/index.spec.tsx.snap
index 0355f9b..cbb869a 100644
--- a/app/client/src/components/PlayerControlPanel/__snapshots__/index.spec.tsx.snap
+++ b/app/client/src/components/PlayerControlPanel/__snapshots__/index.spec.tsx.snap
@@ -127,7 +127,7 @@ exports[`should match exact snapshot 1`] = `
- Donate!
+ Donate
diff --git a/app/client/src/components/PlayerControlPanel/index.tsx b/app/client/src/components/PlayerControlPanel/index.tsx
index bacc1b8..70fafdb 100644
--- a/app/client/src/components/PlayerControlPanel/index.tsx
+++ b/app/client/src/components/PlayerControlPanel/index.tsx
@@ -19,6 +19,7 @@ import {
Toaster,
Intent,
} from '@blueprintjs/core';
+import { useTranslation } from 'react-i18next';
import FullScreenEnter from '../../images/fullscreen_24px.svg';
import FullScreenExit from '../../images/fullscreen_exit-24px.svg';
import RedHeartTwemojiPNG from '../../images/red_heart_2764_twemoji_120x120.png';
@@ -50,6 +51,7 @@ interface PlayerControlPanelProps {
const isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
function PlayerControlPanel(props: PlayerControlPanelProps) {
+ const { t } = useTranslation();
const {
isPlaying,
onSwitchChangedCallback,
@@ -92,9 +94,9 @@ function PlayerControlPanel(props: PlayerControlPanelProps) {
toaster?.show({
icon: 'clean',
intent: Intent.PRIMARY,
- message: `Video is flipped horizontally`,
+ message: t('Video is flipped horizontally'),
});
- }, [isVideoFlipped, toaster]);
+ }, [isVideoFlipped, toaster, t]);
return (
<>
@@ -102,7 +104,7 @@ function PlayerControlPanel(props: PlayerControlPanelProps) {
@@ -178,8 +182,8 @@ function PlayerControlPanel(props: PlayerControlPanelProps) {
icon: isPlaying ? 'pause' : 'play',
intent: Intent.PRIMARY,
message: isPlaying
- ? 'Video stream is paused.'
- : 'Video stream is playing',
+ ? t('Video stream is paused')
+ : t('Video stream is playing'),
});
}}
style={{
@@ -197,7 +201,7 @@ function PlayerControlPanel(props: PlayerControlPanelProps) {
@@ -242,7 +246,7 @@ function PlayerControlPanel(props: PlayerControlPanelProps) {
toaster?.show({
icon: 'clean',
intent: Intent.PRIMARY,
- message: `Video quality has been changed to ${q}`,
+ message: `${t('Video quality has been changed to')} ${q}`,
});
}}
>
@@ -256,7 +260,7 @@ function PlayerControlPanel(props: PlayerControlPanelProps) {
position={Position.BOTTOM}
popoverClassName={Classes.POPOVER_CONTENT_SIZING}
>
-
+
@@ -271,7 +275,7 @@ function PlayerControlPanel(props: PlayerControlPanelProps) {
}}
/>
@@ -241,8 +245,8 @@ export default function ConnectedDevicesListDrawer(
setIsAlertDisconectAllOpen(false);
}}
icon="warning-sign"
- cancelButtonText="No, Cancel"
- confirmButtonText="Yes, Disconnect All"
+ cancelButtonText={disconnectAllCancelButtonText}
+ confirmButtonText={disconnectAllConfirmButtonText}
intent="danger"
canEscapeKeyCancel
canOutsideClickCancel
@@ -253,10 +257,14 @@ export default function ConnectedDevicesListDrawer(
transitionDuration={isWithReactRevealAnimations() ? 700 : 0}
>
- Are you sure you want to disconnect all connected viewing devices?
+ {t(
+ 'Are you sure you want to disconnect all connected viewing devices?'
+ )}
- This step can not be reverted.
- You will have to connect all devices manually again.
+ {`${t('This step can not be undone')}.`}
+
+ {`${t('You will have to connect all devices manually again')}.`}
+
>
);
diff --git a/app/components/DeviceInfoCallout/index.tsx b/app/components/DeviceInfoCallout/index.tsx
index 7da786f..b1b5c3d 100644
--- a/app/components/DeviceInfoCallout/index.tsx
+++ b/app/components/DeviceInfoCallout/index.tsx
@@ -2,6 +2,8 @@
import React from 'react';
import { Callout, Text, H4, Tooltip, Position } from '@blueprintjs/core';
import { Row, Col } from 'react-flexbox-grid';
+import { useTranslation } from 'react-i18next';
+import { TFunction } from 'i18next';
interface DeviceInfoCalloutProps {
deviceType: string | undefined;
@@ -11,24 +13,24 @@ interface DeviceInfoCalloutProps {
deviceBrowser: string | undefined;
}
-function getContentOfTooltip() {
+function getContentOfTooltip(t: TFunction) {
return (
<>
- {`This should match with 'Device IP' displayed on the screen of device
- that is trying to connect.`}
+ {t(
+ 'This should match with Device IP displayed on the screen of device that is trying to connect'
+ )}
-
- {`If IPs don't match click 'Deny' or 'Disconnect' button immediately to
- secure your computer!`}
-
+ {t('If IP addresses dont match click Disconnect button')}
>
);
}
export default function DeviceInfoCallout(props: DeviceInfoCalloutProps) {
+ const { t } = useTranslation();
+
const {
deviceType,
deviceIP,
@@ -40,15 +42,15 @@ export default function DeviceInfoCallout(props: DeviceInfoCalloutProps) {
return (
<>
@@ -243,8 +252,7 @@ exports[`should match exact snapshot 1`] = `
ellipsize={false}
tagName="div"
>
- This should match with 'Device IP' displayed on the screen of device
- that is trying to connect.
+
- If IPs don't match click 'Deny' or 'Disconnect' button immediately to
- secure your computer!
+
@@ -280,8 +287,7 @@ exports[`should match exact snapshot 1`] = `
ellipsize={false}
tagName="div"
>
- This should match with 'Device IP' displayed on the screen of device
- that is trying to connect.
+
- If IPs don't match click 'Deny' or 'Disconnect' button immediately to
- secure your computer!
+
@@ -369,7 +374,8 @@ exports[`should match exact snapshot 1`] = `