From 92032a906950a59b529c7816007a0c9d13387017 Mon Sep 17 00:00:00 2001 From: io42630 Date: Sun, 26 Jun 2022 15:11:56 +0200 Subject: [PATCH] + add more lang --- src/bot-hooks.ts | 10 +++++----- src/deepl-translate-adapter.ts | 8 +++++--- src/google-translate-adapter.ts | 4 ++-- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/bot-hooks.ts b/src/bot-hooks.ts index 2badbf8..6855478 100644 --- a/src/bot-hooks.ts +++ b/src/bot-hooks.ts @@ -23,6 +23,9 @@ bot.on('inline_query', async (query: InlineQuery) => { queryText.endsWith(eol + 'en') || queryText.endsWith(eol + 'ua') || queryText.endsWith(eol + 'uk') || + queryText.endsWith(eol + 'es') || + queryText.endsWith(eol + 'fr') || + queryText.endsWith(eol + 'it') || queryText.endsWith(eol + 'ru'); let lang: string; let text: string; @@ -31,20 +34,17 @@ bot.on('inline_query', async (query: InlineQuery) => { text = queryText.slice(0, length - 2); } else if (customQuery) { lang = queryText.slice(length - 2, length); - lang = lang === 'en' ? 'en-US' : lang; lang = lang === 'ua' || lang === 'ru' ? 'uk' : lang; text = queryText.slice(0, length - 4); } else { return; } let translated: string; - detectGoogle(text).then((reslt: string) => console.log(reslt)); - const srcLang: string = 'en'; - + const srcLang: string = await detectGoogle(text); if (srcLang === 'uk' || lang === 'uk') { translated = await translateGoogle(text, lang); } else { - translated = await translateDeepL(text, lang); + translated = await translateDeepL(text, srcLang, lang); } const results: Array = [ diff --git a/src/deepl-translate-adapter.ts b/src/deepl-translate-adapter.ts index 5a3ae4f..373f986 100644 --- a/src/deepl-translate-adapter.ts +++ b/src/deepl-translate-adapter.ts @@ -1,8 +1,10 @@ -import { Translator, TargetLanguageCode } from 'deepl-node'; +import { Translator} from 'deepl-node'; const translator = new Translator(require('../keys.json').DEEPL); -export async function translate(text: string, lang: TargetLanguageCode): Promise { - return translator.translateText(text, null, lang) +export async function translate(text: string, srcLang:any, targetLang: any): Promise { + srcLang = srcLang === 'en' ? 'en-US' : srcLang; + targetLang = targetLang === 'en' ? 'en-US' : targetLang; + return translator.translateText(text, srcLang, targetLang) .then((textResult => textResult.text)); } diff --git a/src/google-translate-adapter.ts b/src/google-translate-adapter.ts index 178ef84..897f867 100644 --- a/src/google-translate-adapter.ts +++ b/src/google-translate-adapter.ts @@ -4,8 +4,8 @@ const projectId = 'translate-reebot'; const translator = new Translate({projectId}); translator.key = require('../keys.json').GOOGLE; -export async function translate(text: string, lang: string): Promise { - return translator.translate(text, lang) +export async function translate(text: string, targetLang: string): Promise { + return translator.translate(text, targetLang) .then(([result] : any) => result); }