diff options
| author | Fuwn <[email protected]> | 2023-03-30 20:11:20 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2023-03-30 20:11:20 -0700 |
| commit | a63b2174be4bb897d717034ed42e2b7676645deb (patch) | |
| tree | cbd89ccadc6fbaef751fd6f6021050ee9929ee6c /src/modules/router/deepl.rs | |
| parent | feat(translate): minimize translation passes (diff) | |
| download | locus-a63b2174be4bb897d717034ed42e2b7676645deb.tar.xz locus-a63b2174be4bb897d717034ed42e2b7676645deb.zip | |
feat(translation): add translation header
Diffstat (limited to 'src/modules/router/deepl.rs')
| -rw-r--r-- | src/modules/router/deepl.rs | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/src/modules/router/deepl.rs b/src/modules/router/deepl.rs deleted file mode 100644 index d4e210f..0000000 --- a/src/modules/router/deepl.rs +++ /dev/null @@ -1,50 +0,0 @@ -// This file is part of Locus <https://github.com/gemrest/locus>. -// Copyright (C) 2022-2022 Fuwn <[email protected]> -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, version 3. -// -// This program is distributed in the hope that it will be useful, but -// WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see <http://www.gnu.org/licenses/>. -// -// Copyright (C) 2022-2022 Fuwn <[email protected]> -// SPDX-License-Identifier: GPL-3.0-only - -#[derive(serde::Deserialize)] -pub struct DeepL { - translations: Vec<Translation>, -} - -impl DeepL { - pub fn text(&self) -> String { self.translations[0].text.clone() } -} - -#[derive(serde::Deserialize)] -struct Translation { - pub text: String, -} - -pub fn translate(text: &str, language: &str) -> DeepL { - let deepl_response: DeepL = serde_json::from_str( - &reqwest::blocking::Client::new() - .post("https://api-free.deepl.com/v2/translate") - .header( - "Authorization", - "DeepL-Auth-Key 182c8c21-730e-f99d-8f2e-61e9cc861faa:fx", - ) - .form(&[("text", text), ("target_lang", language)]) - .send() - .unwrap() - .text() - .unwrap(), - ) - .unwrap(); - - deepl_response -} |