Add Activepieces integration for workflow automation

- Add Activepieces fork with SmoothSchedule custom piece
- Create integrations app with Activepieces service layer
- Add embed token endpoint for iframe integration
- Create Automations page with embedded workflow builder
- Add sidebar visibility fix for embed mode
- Add list inactive customers endpoint to Public API
- Include SmoothSchedule triggers: event created/updated/cancelled
- Include SmoothSchedule actions: create/update/cancel events, list resources/services/customers

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
poduck
2025-12-18 22:59:37 -05:00
parent 9848268d34
commit 3aa7199503
16292 changed files with 1284892 additions and 4708 deletions

View File

@@ -0,0 +1,18 @@
{
"extends": ["../../../../.eslintrc.json"],
"ignorePatterns": ["!**/*"],
"overrides": [
{
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
"rules": {}
},
{
"files": ["*.ts", "*.tsx"],
"rules": {}
},
{
"files": ["*.js", "*.jsx"],
"rules": {}
}
]
}

View File

@@ -0,0 +1,7 @@
# pieces-deepl
This library was generated with [Nx](https://nx.dev).
## Building
Run `nx build pieces-deepl` to build the library.

View File

@@ -0,0 +1,4 @@
{
"name": "@activepieces/piece-deepl",
"version": "0.0.10"
}

View File

@@ -0,0 +1,57 @@
{
"name": "pieces-deepl",
"$schema": "../../../../node_modules/nx/schemas/project-schema.json",
"sourceRoot": "packages/pieces/community/deepl/src",
"projectType": "library",
"targets": {
"build": {
"executor": "@nx/js:tsc",
"outputs": [
"{options.outputPath}"
],
"options": {
"outputPath": "dist/packages/pieces/community/deepl",
"tsConfig": "packages/pieces/community/deepl/tsconfig.lib.json",
"packageJson": "packages/pieces/community/deepl/package.json",
"main": "packages/pieces/community/deepl/src/index.ts",
"assets": [
"packages/pieces/community/deepl/*.md",
{
"input": "packages/pieces/community/deepl/src/i18n",
"output": "./src/i18n",
"glob": "**/!(i18n.json)"
}
],
"buildableProjectDepsInPackageJsonType": "dependencies",
"updateBuildableProjectDepsInPackageJson": true
},
"dependsOn": [
"^build",
"prebuild"
]
},
"publish": {
"command": "node tools/scripts/publish.mjs pieces-deepl {args.ver} {args.tag}",
"dependsOn": [
"build"
]
},
"lint": {
"executor": "@nx/eslint:lint",
"outputs": [
"{options.outputFile}"
]
},
"prebuild": {
"executor": "nx:run-commands",
"options": {
"cwd": "packages/pieces/community/deepl",
"command": "bun install --no-save --silent"
},
"dependsOn": [
"^build"
]
}
},
"tags": []
}

View File

@@ -0,0 +1,96 @@
{
"AI-powered language translation": "KI-basierte Sprachübersetzung",
"Api key": "Api Taste",
"Api url": "Api url",
"Enter the api key": "Api Taste eingeben",
"Select api url": "Api URL auswählen",
"Free API": "Free API",
"Paid API": "Bezahlte API",
"\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n": "\nFolgen Sie diesen Anweisungen, um Ihren DeepL-API-Schlüssel zu erhalten:\n\n1. Melden Sie sich bei Ihrem DeepL-Konto an.\n2. Besuchen Sie https://www.deepl.com/account/Zusammenfassung\n3. Gehen Sie zum API-Bereich und erhalten Sie Ihren DeepL-API-Schlüssel.\n",
"Translate text": "Text übersetzen",
"Custom API Call": "Eigener API-Aufruf",
"Translate a text to the target language": "Einen Text in die Zielsprache übersetzen",
"Make a custom API call to a specific endpoint": "Einen benutzerdefinierten API-Aufruf an einen bestimmten Endpunkt machen",
"Text": "Text",
"Target language": "Zielsprache",
"Source language": "Ausgangssprache",
"Split sentences": "Sätze teilen",
"Preserve formatting": "Formatierung beibehalten",
"Formality": "Formalität",
"Glossary id": "Glossar-Id",
"Tag handling": "Tag-Behandlung",
"Outline detection": "Kontur-Erkennung",
"Non splitting tags": "Nicht teilende Tags",
"Splitting tags": "Tags teilen",
"Ignore tags": "Tags ignorieren",
"Method": "Methode",
"Headers": "Kopfzeilen",
"Query Parameters": "Abfrageparameter",
"Body": "Körper",
"Response is Binary ?": "Antwort ist binär?",
"No Error on Failure": "Kein Fehler bei Fehler",
"Timeout (in seconds)": "Timeout (in Sekunden)",
"Text to be translated. Only UTF-8-encoded plain text is supported.": "Zu übersetzender Text. Nur UTF-8-kodierter Klartext wird unterstützt.",
"The language into which the text should be translated.": "Die Sprache, in die der Text übersetzt werden soll.",
"Language of the text to be translated": "Sprache des zu übersetzenden Textes",
"Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.": "Legt fest, ob die Übersetzungs-Engine die Eingabe zuerst in Sätze aufteilen soll. Für Textübersetzungen, bei denen tag_handling nicht auf HTML gesetzt ist, ist der Standardwert 1, was bedeutet, dass die Engine auf Satzzeichen und Zeilenumbrüche aufteilt.",
"Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.": "Legt fest, ob die Übersetzungsmaschine die ursprüngliche Formatierung respektieren soll, auch wenn sie in der Regel einige Aspekte korrigieren würde.",
"Sets whether the translated text should lean towards formal or informal language.": "Legt fest, ob der übersetzte Text auf formale oder informelle Sprache ausgerichtet sein soll.",
"Specify the glossary to use for the translation.": "Geben Sie das für die Übersetzung zu verwendende Glossar an.",
"Sets which kind of tags should be handled.": "Legt fest, welche Art von Tags behandelt werden sollen.",
"The automatic detection of the XML structure won't yield best results in all XML files.": "Die automatische Erkennung der XML-Struktur liefert nicht die besten Ergebnisse in allen XML-Dateien.",
"Comma-separated list of XML or HTML tags.": "Kommaseparierte Liste von XML- oder HTML-Tags.",
"Authorization headers are injected automatically from your connection.": "Autorisierungs-Header werden automatisch von Ihrer Verbindung injiziert.",
"Enable for files like PDFs, images, etc..": "Aktivieren für Dateien wie PDFs, Bilder, etc..",
"Bulgarian": "Bulgarisch",
"Czech": "Tschechisch",
"Danish": "Dänisch",
"German": "Deutsch",
"Greek": "Griechisch",
"English (British)": "Englisch (britisch)",
"English (American)": "Englisch (Amerikanisch)",
"Spanish": "Spanisch",
"Estonian": "Estnisch",
"Finnish": "Finnisch",
"French": "Französisch",
"Hungarian": "Ungarisch",
"Indonesian": "Indonesisch",
"Italian": "Italienisch",
"Japanese": "Japanisch",
"Korean": "Koreanisch",
"Lithuanian": "Litauisch",
"Latvian": "Lettisch",
"Norwegian": "Norwegisch",
"Dutch": "Niederländisch",
"Polish": "Polnisch",
"Portuguese (Brazilian)": "Portugiesisch (Brasilianisch)",
"Portuguese": "Portugiesisch",
"Romanian": "Rumänisch",
"Russian": "Russisch",
"Slovak": "Slowakisch",
"Slovenian": "Slovenian",
"Swedish": "Schwedisch",
"Turkish": "Türkisch",
"Ukrainian": "Ukrainische",
"Chinese (simplified)": "Chinesisch (vereinfacht)",
"English": "Englisch",
"Chinese": "Chinesisch",
"No splitting at all, whole input is treated as one sentence": "Keine Spaltung überhaupt, ganze Eingabe wird als ein Satz behandelt",
"Splits on punctuation and on newlines": "Teilt nach Satzzeichen und Zeilenumbrüchen",
"Splits on punctuation only, ignoring newlines": "Nur auf Satzzeichen aufteilen und Zeilenumbrüche ignorieren",
"Yes": "Ja",
"No": "Nein",
"Default": "Standard",
"For a more formal language": "Für eine formalere Sprache",
"For a more informal language": "Für eine informellere Sprache",
"For a more formal language if available, otherwise fallback to default formality": "Für eine formalere Sprache, falls vorhanden, andernfalls auf die Standardformalität zurückfallen",
"For a more informal language if available, otherwise fallback to default formality": "Für eine informellere Sprache, falls vorhanden, andernfalls auf die Standardformalität zurückfallen",
"Enable XML tag handling": "XML-Tag-Behandlung aktivieren",
"Enable HTML tag handling": "HTML-Tag-Behandlung aktivieren",
"GET": "ERHALTEN",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "LÖSCHEN",
"HEAD": "HEAD"
}

View File

@@ -0,0 +1,96 @@
{
"AI-powered language translation": "Traducción de idioma impulsada por AIs",
"Api key": "Clave Api",
"Api url": "Api url",
"Enter the api key": "Introduzca la tecla api",
"Select api url": "Seleccionar api url",
"Free API": "Free API",
"Paid API": "API de pago",
"\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n": "\nSiga estas instrucciones para obtener su clave API de DeepL:\n\n1. Inicie sesión en su cuenta de DeepL.\n2. Visite https://www.deepl.com/account/summary\n3. Vaya a la sección API y obtenga su clave API de DeepL.\n",
"Translate text": "Traducir texto",
"Custom API Call": "Llamada API personalizada",
"Translate a text to the target language": "Traducir un texto al idioma de destino",
"Make a custom API call to a specific endpoint": "Hacer una llamada API personalizada a un extremo específico",
"Text": "Texto",
"Target language": "Idioma destino",
"Source language": "Idioma de origen",
"Split sentences": "Dividir oraciones",
"Preserve formatting": "Conservar formato",
"Formality": "Formalidad",
"Glossary id": "Id del glosario",
"Tag handling": "Manejo de etiquetas",
"Outline detection": "Detección externa",
"Non splitting tags": "Etiquetas no divididas",
"Splitting tags": "Separar etiquetas",
"Ignore tags": "Ignorar etiquetas",
"Method": "Método",
"Headers": "Encabezados",
"Query Parameters": "Parámetros de consulta",
"Body": "Cuerpo",
"Response is Binary ?": "¿Respuesta es binaria?",
"No Error on Failure": "No hay ningún error en fallo",
"Timeout (in seconds)": "Tiempo de espera (en segundos)",
"Text to be translated. Only UTF-8-encoded plain text is supported.": "Texto a traducir. Sólo se admite texto plano codificado en UTF-8.",
"The language into which the text should be translated.": "El idioma al que debe traducirse el texto.",
"Language of the text to be translated": "Idioma del texto a traducir",
"Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.": "Establece si el motor de traducción primero debe dividir la entrada en oraciones. Para traducciones de texto donde tag_handling no está configurado en html, el valor por defecto es 1, lo que significa que el motor se divide en puntuación y en nuevas líneas.",
"Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.": "Establece si el motor de traducción debe respetar el formato original, incluso si normalmente corrige algunos aspectos.",
"Sets whether the translated text should lean towards formal or informal language.": "Establece si el texto traducido debe inclinarse hacia un idioma formal o informal.",
"Specify the glossary to use for the translation.": "Especifique el glosario a utilizar para la traducción.",
"Sets which kind of tags should be handled.": "Establece qué tipo de etiquetas deben ser manejadas.",
"The automatic detection of the XML structure won't yield best results in all XML files.": "La detección automática de la estructura XML no producirá mejores resultados en todos los archivos XML.",
"Comma-separated list of XML or HTML tags.": "Lista separada por comas de etiquetas XML o HTML.",
"Authorization headers are injected automatically from your connection.": "Las cabeceras de autorización se inyectan automáticamente desde tu conexión.",
"Enable for files like PDFs, images, etc..": "Activar para archivos como PDFs, imágenes, etc.",
"Bulgarian": "Búlgaro",
"Czech": "Checo",
"Danish": "Danés",
"German": "Alemán",
"Greek": "Griego",
"English (British)": "Inglés (británico)",
"English (American)": "Inglés (americano)",
"Spanish": "Español",
"Estonian": "Estonio",
"Finnish": "Finlandés",
"French": "Francés",
"Hungarian": "Húngaro",
"Indonesian": "Indonesio/a",
"Italian": "Italiano",
"Japanese": "Japonés",
"Korean": "Coreano",
"Lithuanian": "Lituano",
"Latvian": "Letón",
"Norwegian": "Noruego",
"Dutch": "Holandés",
"Polish": "Polaco",
"Portuguese (Brazilian)": "Portugués (Brasil)",
"Portuguese": "Portugués",
"Romanian": "Rumano",
"Russian": "Ruso",
"Slovak": "Eslovaco",
"Slovenian": "Slovenian",
"Swedish": "Sueco",
"Turkish": "Turco",
"Ukrainian": "Ucraniano",
"Chinese (simplified)": "Chino (simplificado)",
"English": "Inglés",
"Chinese": "Chino",
"No splitting at all, whole input is treated as one sentence": "No dividir nada, toda la entrada es tratada como una oración",
"Splits on punctuation and on newlines": "Destruye en puntuación y en nuevas líneas",
"Splits on punctuation only, ignoring newlines": "Destruye sólo en puntuación, ignorando nuevas líneas",
"Yes": "Sí",
"No": "Nu",
"Default": "Por defecto",
"For a more formal language": "Para un idioma más formal",
"For a more informal language": "Para un idioma más informal",
"For a more formal language if available, otherwise fallback to default formality": "Para un lenguaje más formal si está disponible, de lo contrario recurre a la formalidad predeterminada",
"For a more informal language if available, otherwise fallback to default formality": "Para un idioma más informal si está disponible, de lo contrario recurre a la formalidad predeterminada",
"Enable XML tag handling": "Habilitar el manejo de etiquetas XML",
"Enable HTML tag handling": "Habilitar manejo de etiquetas HTML",
"GET": "RECOGER",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "BORRAR",
"HEAD": "LIMPIO"
}

View File

@@ -0,0 +1,96 @@
{
"AI-powered language translation": "Traduction de la langue propulsée par IA",
"Api key": "Clé Api",
"Api url": "Api url",
"Enter the api key": "Entrez la clé api",
"Select api url": "Sélectionnez l'url de l'api",
"Free API": "Free API",
"Paid API": "API payante",
"\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n": "\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n",
"Translate text": "Traduire le texte",
"Custom API Call": "Appel API personnalisé",
"Translate a text to the target language": "Traduire un texte dans la langue cible",
"Make a custom API call to a specific endpoint": "Passez un appel API personnalisé à un point de terminaison spécifique",
"Text": "Texte du texte",
"Target language": "Langue cible",
"Source language": "Langue source",
"Split sentences": "Fractionner les phrases",
"Preserve formatting": "Conserver le formatage",
"Formality": "Formalité",
"Glossary id": "Identifiant du glossaire",
"Tag handling": "Gestion des balises",
"Outline detection": "Détection du contour",
"Non splitting tags": "Balises non découpantes",
"Splitting tags": "Étiquettes de séparation",
"Ignore tags": "Ignorer les tags",
"Method": "Méthode",
"Headers": "En-têtes",
"Query Parameters": "Paramètres de requête",
"Body": "Corps",
"Response is Binary ?": "La réponse est Binaire ?",
"No Error on Failure": "Aucune erreur en cas d'échec",
"Timeout (in seconds)": "Délai d'attente (en secondes)",
"Text to be translated. Only UTF-8-encoded plain text is supported.": "Texte à traduire. Seul le texte brut encodé en UTF-8 est pris en charge.",
"The language into which the text should be translated.": "La langue dans laquelle le texte doit être traduit.",
"Language of the text to be translated": "Langue du texte à traduire",
"Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.": "Définit si le moteur de traduction doit d'abord diviser l'entrée en phrases. Pour les traductions de texte où tag_handling n'est pas défini à html, la valeur par défaut est 1, ce qui signifie que le moteur se divise sur la ponctuation et sur les nouvelles lignes.",
"Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.": "Définit si le moteur de traduction doit respecter la mise en forme originale, même s'il corrigerait généralement certains aspects.",
"Sets whether the translated text should lean towards formal or informal language.": "Définit si le texte traduit doit s'orienter vers une langue formelle ou informelle.",
"Specify the glossary to use for the translation.": "Spécifiez le glossaire à utiliser pour la traduction.",
"Sets which kind of tags should be handled.": "Définit le type de balises à gérer.",
"The automatic detection of the XML structure won't yield best results in all XML files.": "La détection automatique de la structure XML ne produira pas les meilleurs résultats dans tous les fichiers XML.",
"Comma-separated list of XML or HTML tags.": "Liste séparée par des virgules de balises XML ou HTML.",
"Authorization headers are injected automatically from your connection.": "Les en-têtes d'autorisation sont injectés automatiquement à partir de votre connexion.",
"Enable for files like PDFs, images, etc..": "Activer pour les fichiers comme les PDFs, les images, etc.",
"Bulgarian": "Bulgare",
"Czech": "Tchèque",
"Danish": "Danois",
"German": "Allemand",
"Greek": "Grecque",
"English (British)": "Anglais (britannique)",
"English (American)": "Anglais (Américain)",
"Spanish": "Espagnol",
"Estonian": "estonien",
"Finnish": "Finlandais",
"French": "Français",
"Hungarian": "Hongrois",
"Indonesian": "Indonésien",
"Italian": "Italien",
"Japanese": "Japonais",
"Korean": "Coréen",
"Lithuanian": "lituanien",
"Latvian": "Lettonie",
"Norwegian": "Norvégien",
"Dutch": "Néerlandais",
"Polish": "Polonais",
"Portuguese (Brazilian)": "Portugais (Brésilan)",
"Portuguese": "Portugais",
"Romanian": "Roumain",
"Russian": "Russe",
"Slovak": "Slovaque",
"Slovenian": "Slovenian",
"Swedish": "Suédois",
"Turkish": "Turc",
"Ukrainian": "Ukrainien",
"Chinese (simplified)": "Chinois (simplifié)",
"English": "Anglais",
"Chinese": "Chinois",
"No splitting at all, whole input is treated as one sentence": "Pas de découpage du tout, l'entrée entière est traitée comme une seule phrase",
"Splits on punctuation and on newlines": "Sépare sur la ponctuation et sur les nouvelles lignes",
"Splits on punctuation only, ignoring newlines": "Sépare sur la ponctuation seulement, ignorant les nouvelles lignes",
"Yes": "Oui",
"No": "Non",
"Default": "Par défaut",
"For a more formal language": "Pour une langue plus formelle",
"For a more informal language": "Pour une langue plus informelle",
"For a more formal language if available, otherwise fallback to default formality": "Pour une langue plus formelle si disponible, sinon revenir à la formalité par défaut",
"For a more informal language if available, otherwise fallback to default formality": "Pour une langue plus informelle si disponible, sinon revenir à la formalité par défaut",
"Enable XML tag handling": "Activer la gestion des balises XML",
"Enable HTML tag handling": "Activer la gestion des balises HTML",
"GET": "OBTENIR",
"POST": "POSTER",
"PATCH": "PATCH",
"PUT": "EFFACER",
"DELETE": "SUPPRIMER",
"HEAD": "TÊTE"
}

View File

@@ -0,0 +1,96 @@
{
"AI-powered language translation": "AIを駆使した言語翻訳",
"Api key": "API キー",
"Api url": "Api url",
"Enter the api key": "API キーを入力してください",
"Select api url": "apiのURLを選択",
"Free API": "Free API",
"Paid API": "有料API",
"\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n": "\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n",
"Translate text": "テキストを翻訳",
"Custom API Call": "カスタムAPI通話",
"Translate a text to the target language": "翻訳先の言語にテキストを翻訳",
"Make a custom API call to a specific endpoint": "特定のエンドポイントへのカスタム API コールを実行します。",
"Text": "テキスト",
"Target language": "翻訳先の言語",
"Source language": "翻訳元の言語",
"Split sentences": "文章の分割",
"Preserve formatting": "書式を維持",
"Formality": "Formatality",
"Glossary id": "用語集ID",
"Tag handling": "タグの処理",
"Outline detection": "アウトライン検出",
"Non splitting tags": "タグを分割しない",
"Splitting tags": "タグの分割",
"Ignore tags": "タグを無視",
"Method": "方法",
"Headers": "ヘッダー",
"Query Parameters": "クエリパラメータ",
"Body": "本文",
"Response is Binary ?": "応答はバイナリですか?",
"No Error on Failure": "失敗時にエラーはありません",
"Timeout (in seconds)": "タイムアウト(秒)",
"Text to be translated. Only UTF-8-encoded plain text is supported.": "翻訳するテキスト。UTF-8 でエンコードされたプレーンテキストのみサポートされています。",
"The language into which the text should be translated.": "テキストを翻訳する言語。",
"Language of the text to be translated": "翻訳するテキストの言語",
"Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.": "翻訳エンジンが最初に入力を文章に分割するかどうかを設定します。 tag_handling が html に設定されていないテキスト翻訳では、デフォルト値は 1 で、句読点と改行でエンジンが分割されることを意味します。",
"Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.": "翻訳エンジンが元の書式を尊重するかどうかを設定します。",
"Sets whether the translated text should lean towards formal or informal language.": "翻訳されたテキストをフォーマルまたは非公式言語に傾けるかどうかを設定します。",
"Specify the glossary to use for the translation.": "翻訳に使用する用語集を指定します。",
"Sets which kind of tags should be handled.": "どの種類のタグを扱うかを設定します。",
"The automatic detection of the XML structure won't yield best results in all XML files.": "XML構造の自動検出は、すべてのXMLファイルで最善の結果をもたらすことはありません。",
"Comma-separated list of XML or HTML tags.": "カンマ区切りのXMLまたはHTMLタグのリスト。",
"Authorization headers are injected automatically from your connection.": "認証ヘッダは接続から自動的に注入されます。",
"Enable for files like PDFs, images, etc..": "PDF、画像などのファイルを有効にします。",
"Bulgarian": "ブルガリア語",
"Czech": "チェコ語",
"Danish": "デンマーク語",
"German": "ドイツ語",
"Greek": "ギリシア語",
"English (British)": "英語 (イギリス)",
"English (American)": "英語 (アメリカ)",
"Spanish": "スペイン語",
"Estonian": "エストニア語",
"Finnish": "フィンランド語",
"French": "フランス語",
"Hungarian": "ハンガリー語",
"Indonesian": "インドネシア語",
"Italian": "イタリア語",
"Japanese": "日本語",
"Korean": "Korean",
"Lithuanian": "リトアニア語",
"Latvian": "ラトビア語",
"Norwegian": "ノルウェー語",
"Dutch": "オランダ語",
"Polish": "ポーランド語",
"Portuguese (Brazilian)": "ポルトガル語 (ブラジル)",
"Portuguese": "ポルトガル語",
"Romanian": "ルーマニア語",
"Russian": "ロシア語",
"Slovak": "スロバキア語",
"Slovenian": "Slovenian",
"Swedish": "スウェーデン語",
"Turkish": "トルコ語",
"Ukrainian": "ウクライナ語",
"Chinese (simplified)": "中国語 (簡体字)",
"English": "日本語",
"Chinese": "中国語",
"No splitting at all, whole input is treated as one sentence": "全く分割なし、入力全体は1つの文として扱われます",
"Splits on punctuation and on newlines": "句読点と改行で分割",
"Splits on punctuation only, ignoring newlines": "句読点のみで分割し、改行を無視します。",
"Yes": "はい",
"No": "いいえ",
"Default": "デフォルト",
"For a more formal language": "より形式的な言語の場合",
"For a more informal language": "より非公式な言語",
"For a more formal language if available, otherwise fallback to default formality": "利用可能な場合、より正式な言語の場合は、そうでない場合は、デフォルトの形式にフォールバックします",
"For a more informal language if available, otherwise fallback to default formality": "より非公式な言語を使用するには、それ以外の場合はデフォルトの形式にフォールバックします",
"Enable XML tag handling": "XML タグの処理を有効にする",
"Enable HTML tag handling": "HTMLタグの処理を有効にする",
"GET": "取得",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "削除",
"HEAD": "頭"
}

View File

@@ -0,0 +1,96 @@
{
"AI-powered language translation": "AI-aangedreven vertaling",
"Api key": "API sleutel",
"Api url": "Api url",
"Enter the api key": "Voer de API sleutel in",
"Select api url": "Selecteer de api url",
"Free API": "Free API",
"Paid API": "Betaalde API",
"\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n": "\nVolg deze instructies om je DeepL API Key te krijgen:\n\n1. Log in op je DeepL account.\n2. Bezoek https://www.deepl.com/account/samenvatting\n3. Ga naar de API sectie en verkrijg uw DeepL API Key.\n",
"Translate text": "Tekst vertalen",
"Custom API Call": "Custom API Call",
"Translate a text to the target language": "Vertaal een tekst naar de doeltaal",
"Make a custom API call to a specific endpoint": "Maak een aangepaste API call naar een specifiek eindpunt",
"Text": "Tekstveld",
"Target language": "Taal van doel",
"Source language": "Bron taal",
"Split sentences": "Splits zinnen",
"Preserve formatting": "Opmaak behouden",
"Formality": "Formaliteit",
"Glossary id": "Woordenlijst id",
"Tag handling": "Tag afhandeling",
"Outline detection": "Omlijning detectie",
"Non splitting tags": "Niet splitsen tags",
"Splitting tags": "Tags splitsen",
"Ignore tags": "Tags negeren",
"Method": "Methode",
"Headers": "Kopteksten",
"Query Parameters": "Query parameters",
"Body": "Lichaam",
"Response is Binary ?": "Antwoord is binair?",
"No Error on Failure": "Geen fout bij fout",
"Timeout (in seconds)": "Time-out (in seconden)",
"Text to be translated. Only UTF-8-encoded plain text is supported.": "Te vertalen tekst. Alleen UTF-8-gecodeerde platte tekst wordt ondersteund.",
"The language into which the text should be translated.": "De taal waarin de tekst moet worden vertaald.",
"Language of the text to be translated": "Taal van de te vertalen tekst",
"Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.": "Stelt in of de vertalingsmotor de invoer eerst in zinnen moet splitsen. Voor tekstvertalingen waar tag_handling niet is ingesteld op html, is de standaardwaarde 1, wat betekent dat de engine splits op de leestekens en op nieuwe.",
"Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.": "Bepaalt of de vertalingsmotor de oorspronkelijke opmaak moet respecteren, zelfs als het meestal sommige aspecten corrigeert.",
"Sets whether the translated text should lean towards formal or informal language.": "Stelt in of de vertaalde tekst in de richting van formele of informele taal moet gaan.",
"Specify the glossary to use for the translation.": "Geef de woordenlijst op voor de vertaling.",
"Sets which kind of tags should be handled.": "Stelt in welk soort tags verwerkt moeten worden.",
"The automatic detection of the XML structure won't yield best results in all XML files.": "De automatische detectie van de XML-structuur levert geen beste resultaten op in alle XML-bestanden.",
"Comma-separated list of XML or HTML tags.": "Kommagescheiden lijst van XML of HTML tags.",
"Authorization headers are injected automatically from your connection.": "Autorisatie headers worden automatisch geïnjecteerd vanuit uw verbinding.",
"Enable for files like PDFs, images, etc..": "Inschakelen voor bestanden zoals PDF's, afbeeldingen etc..",
"Bulgarian": "Bulgaars",
"Czech": "Tsjechisch",
"Danish": "Deens",
"German": "Duits",
"Greek": "Grieks",
"English (British)": "Engels (Engels)",
"English (American)": "Engels (Amerikaans)",
"Spanish": "Spaans",
"Estonian": "Estlands",
"Finnish": "Fins",
"French": "Frans",
"Hungarian": "Hongaars",
"Indonesian": "Indonesisch",
"Italian": "Italiaans",
"Japanese": "Afrikaans",
"Korean": "Koreaans",
"Lithuanian": "Litouws",
"Latvian": "Lets",
"Norwegian": "Noors",
"Dutch": "Nederlands",
"Polish": "Pools",
"Portuguese (Brazilian)": "Portugees (Braziliaans)",
"Portuguese": "Portugees",
"Romanian": "Roemeens",
"Russian": "Russisch",
"Slovak": "Slowaaks",
"Slovenian": "Slovenian",
"Swedish": "Zweeds",
"Turkish": "Turks",
"Ukrainian": "Oekraïens",
"Chinese (simplified)": "Chinees (vereenvoudigd)",
"English": "Nederlands",
"Chinese": "Chinees",
"No splitting at all, whole input is treated as one sentence": "Geen splijting meer, volledige invoer wordt als één zin behandeld",
"Splits on punctuation and on newlines": "Splits op leestekens en op newlines",
"Splits on punctuation only, ignoring newlines": "Splits alleen op leesteken, negeer nieuwe lijnen",
"Yes": "ja",
"No": "Neen",
"Default": "Standaard",
"For a more formal language": "Voor een meer formele taal",
"For a more informal language": "Voor een informele taal",
"For a more formal language if available, otherwise fallback to default formality": "Voor een meer formele taal indien beschikbaar, anders kom je terug op de standaard formaliteit",
"For a more informal language if available, otherwise fallback to default formality": "Voor een meer informele taal indien beschikbaar, anders kom je terug op de standaard formaliteit",
"Enable XML tag handling": "XML tag handling inschakelen",
"Enable HTML tag handling": "HTML tag handling inschakelen",
"GET": "KRIJG",
"POST": "POSTE",
"PATCH": "BEKIJK",
"PUT": "PUT",
"DELETE": "VERWIJDEREN",
"HEAD": "HOOFD"
}

View File

@@ -0,0 +1,96 @@
{
"AI-powered language translation": "Tradução para Idioma com tecnologia IA",
"Api key": "Chave de API",
"Api url": "Api url",
"Enter the api key": "Digite a chave da api",
"Select api url": "Selecionar URL da API",
"Free API": "Free API",
"Paid API": "API paga",
"\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n": "\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n",
"Translate text": "Traduzir texto",
"Custom API Call": "Chamada de API personalizada",
"Translate a text to the target language": "Traduzir um texto para o idioma de destino",
"Make a custom API call to a specific endpoint": "Faça uma chamada de API personalizada para um ponto de extremidade específico",
"Text": "texto",
"Target language": "Idioma alvo",
"Source language": "Idioma de origem",
"Split sentences": "Dividir frases",
"Preserve formatting": "Preservar formatação",
"Formality": "Formaldade",
"Glossary id": "ID do glossário",
"Tag handling": "Manipulação de etiquetas",
"Outline detection": "Detecção de contorno",
"Non splitting tags": "Tags de divisão não",
"Splitting tags": "Dividindo tags",
"Ignore tags": "Ignorar tags",
"Method": "Método",
"Headers": "Cabeçalhos",
"Query Parameters": "Parâmetros da consulta",
"Body": "Conteúdo",
"Response is Binary ?": "A resposta é binária ?",
"No Error on Failure": "Nenhum erro no Failure",
"Timeout (in seconds)": "Tempo limite (em segundos)",
"Text to be translated. Only UTF-8-encoded plain text is supported.": "Texto a ser traduzido. Apenas texto sem codificação UTF-8 é suportado.",
"The language into which the text should be translated.": "O idioma para o qual o texto deve ser traduzido.",
"Language of the text to be translated": "Idioma do texto a ser traduzido",
"Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.": "Define se o mecanismo de tradução deve primeiro dividir a entrada em frases. Para traduções de texto onde o tag_handling não é definido como html, o valor padrão é 1, o que significa divisões do motor em pontuação e em novas linhas.",
"Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.": "Define se o mecanismo de tradução deve respeitar a formatação original, mesmo que geralmente corrija alguns aspectos.",
"Sets whether the translated text should lean towards formal or informal language.": "Define se o texto traduzido deve inclinar-se para a linguagem formal ou informal.",
"Specify the glossary to use for the translation.": "Especifique o glossário a ser usado para a tradução.",
"Sets which kind of tags should be handled.": "Define qual tipo de tags devem ser manipuladas",
"The automatic detection of the XML structure won't yield best results in all XML files.": "A detecção automática da estrutura XML não produzirá os melhores resultados em todos os arquivos XML.",
"Comma-separated list of XML or HTML tags.": "Lista de tags XML ou HTML separadas por vírgula.",
"Authorization headers are injected automatically from your connection.": "Os cabeçalhos de autorização são inseridos automaticamente a partir da sua conexão.",
"Enable for files like PDFs, images, etc..": "Habilitar para arquivos como PDFs, imagens, etc..",
"Bulgarian": "búlgaro",
"Czech": "tcheco",
"Danish": "Dinamarquês",
"German": "alemão",
"Greek": "Grego",
"English (British)": "Português (Brasil)",
"English (American)": "Português (Brasil)",
"Spanish": "espanhol",
"Estonian": "Estônio",
"Finnish": "Finlandês",
"French": "francês",
"Hungarian": "Húngaro",
"Indonesian": "indonésio",
"Italian": "italiano",
"Japanese": "japonês",
"Korean": "coreano",
"Lithuanian": "lituano",
"Latvian": "Letã",
"Norwegian": "norueguês",
"Dutch": "Neerlandês",
"Polish": "Polonês",
"Portuguese (Brazilian)": "Português (Brasileiro)",
"Portuguese": "Português",
"Romanian": "romeno",
"Russian": "Russo",
"Slovak": "Eslovaco",
"Slovenian": "Slovenian",
"Swedish": "sueco",
"Turkish": "Turco",
"Ukrainian": "ucraniano",
"Chinese (simplified)": "Chinês (simplificado)",
"English": "Portuguese-Brazil",
"Chinese": "chinês",
"No splitting at all, whole input is treated as one sentence": "Nenhuma entrada dividida, toda a entrada é tratada como uma frase",
"Splits on punctuation and on newlines": "Divide em pontuação e em novas linhas",
"Splits on punctuation only, ignoring newlines": "Divide apenas em pontuação, ignorando as novas linhas",
"Yes": "sim",
"No": "Não",
"Default": "Padrão",
"For a more formal language": "Para um idioma mais formal",
"For a more informal language": "Para um idioma mais informal",
"For a more formal language if available, otherwise fallback to default formality": "Para uma linguagem mais formal se disponível, caso contrário, retornar à formalidade padrão",
"For a more informal language if available, otherwise fallback to default formality": "Para um idioma mais informal, se disponível, caso contrário, retorno à formalidade padrão",
"Enable XML tag handling": "Ativar manipulação de tag XML",
"Enable HTML tag handling": "Ativar o manuseio de tags HTML",
"GET": "OBTER",
"POST": "POSTAR",
"PATCH": "COMPRAR",
"PUT": "COLOCAR",
"DELETE": "EXCLUIR",
"HEAD": "CABEÇA"
}

View File

@@ -0,0 +1,95 @@
{
"DeepL": "Глубокий",
"AI-powered language translation": "AI языковой перевод",
"Api key": "Api ключ",
"Api url": "Api url",
"Enter the api key": "Введите ключ api",
"Select api url": "Выберите url api",
"Free API": "Free API",
"Paid API": "Платный API",
"\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n": "\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n",
"Translate text": "Перевести текст",
"Custom API Call": "Пользовательский вызов API",
"Translate a text to the target language": "Перевести текст на целевой язык",
"Make a custom API call to a specific endpoint": "Сделать пользовательский API вызов к определенной конечной точке",
"Text": "Текст",
"Target language": "Целевой язык",
"Source language": "Исходный язык",
"Split sentences": "Разделить предложения",
"Preserve formatting": "Сохранить форматирование",
"Formality": "Формальность",
"Glossary id": "Глоссарий id",
"Tag handling": "Обработка тегов",
"Outline detection": "Обнаружение контура",
"Non splitting tags": "Неразделение тегов",
"Splitting tags": "Разделение тегов",
"Ignore tags": "Игнорировать теги",
"Method": "Метод",
"Headers": "Заголовки",
"Query Parameters": "Параметры запроса",
"Body": "Тело",
"No Error on Failure": "Нет ошибок при ошибке",
"Timeout (in seconds)": "Таймаут (в секундах)",
"Text to be translated. Only UTF-8-encoded plain text is supported.": "Текст для перевода. Поддерживается только кодировка UTF-8.",
"The language into which the text should be translated.": "Язык, на который следует перевести текст.",
"Language of the text to be translated": "Язык текста для перевода",
"Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.": "Устанавливает, должен ли движок перевода сначала разделить входную информацию на предложения. Для текстовых переводов, где tag_handling не установлен в html, значение по умолчанию - 1, что означает разделение движка на знаки препинания и на newlines.",
"Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.": "Устанавливает, должен ли движок перевода соответствовать исходному форматированию, даже если он обычно исправляет некоторые аспекты.",
"Sets whether the translated text should lean towards formal or informal language.": "Устанавливает ли переведенный текст на формальный или неофициальный язык.",
"Specify the glossary to use for the translation.": "Укажите глоссарий для использования для перевода.",
"Sets which kind of tags should be handled.": "Устанавливает тип меток.",
"The automatic detection of the XML structure won't yield best results in all XML files.": "Автоматическое определение структуры XML не даст наилучших результатов во всех XML-файлах.",
"Comma-separated list of XML or HTML tags.": "Список тегов XML или HTML, разделённых запятыми.",
"Authorization headers are injected automatically from your connection.": "Заголовки авторизации включаются автоматически из вашего соединения.",
"Bulgarian": "Болгарский",
"Czech": "Чешский",
"Danish": "Датский",
"German": "Немецкий",
"Greek": "Греческий",
"English (British)": "Английский (английский)",
"English (American)": "Английский (американский)",
"Spanish": "Испанский",
"Estonian": "Эстонский",
"Finnish": "Финский",
"French": "Французский",
"Hungarian": "Венгерский",
"Indonesian": "Индонезийский",
"Italian": "Итальянский",
"Japanese": "Японский",
"Korean": "Корейский",
"Lithuanian": "Литовский",
"Latvian": "Латышский",
"Norwegian": "Норвежский",
"Dutch": "Голландский",
"Polish": "Польский",
"Portuguese (Brazilian)": "Португальский (Бразильский)",
"Portuguese": "Португальский",
"Romanian": "Румынский",
"Russian": "Русский",
"Slovak": "Словацкий",
"Slovenian": "Slovenian",
"Swedish": "Шведский",
"Turkish": "Турецкий",
"Ukrainian": "Украинский",
"Chinese (simplified)": "Китайский (упрощенный)",
"English": "Russian",
"Chinese": "Китайский",
"No splitting at all, whole input is treated as one sentence": "Никаких разделений вообще, весь ввод рассматривается как одно предложение",
"Splits on punctuation and on newlines": "Разделяется на знаки пунктуации и на новые строки",
"Splits on punctuation only, ignoring newlines": "Разделяет только знаки пунктуации, игнорируя новые строки",
"Yes": "Да",
"No": "Нет",
"Default": "По умолчанию",
"For a more formal language": "Для более формального языка",
"For a more informal language": "На более неформальном языке",
"For a more formal language if available, otherwise fallback to default formality": "Для более формального языка, если он доступен, в противном случае возврат к стандартной формальности",
"For a more informal language if available, otherwise fallback to default formality": "Для более неформального языка, если имеется, в противном случае возвращается к формальности по умолчанию",
"Enable XML tag handling": "Включить обработку тегов XML",
"Enable HTML tag handling": "Включить обработку HTML тегов",
"GET": "ПОЛУЧИТЬ",
"POST": "ПОСТ",
"PATCH": "ПАТЧ",
"PUT": "ПОКУПИТЬ",
"DELETE": "УДАЛИТЬ",
"HEAD": "HEAD"
}

View File

@@ -0,0 +1,96 @@
{
"AI-powered language translation": "AI-powered language translation",
"Api key": "Api key",
"Api url": "Api url",
"Enter the api key": "Enter the api key",
"Select api url": "Select api url",
"Free API": "Free API",
"Paid API": "Paid API",
"\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n": "\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n",
"Translate text": "Translate text",
"Custom API Call": "Custom API Call",
"Translate a text to the target language": "Translate a text to the target language",
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
"Text": "Text",
"Target language": "Target language",
"Source language": "Source language",
"Split sentences": "Split sentences",
"Preserve formatting": "Preserve formatting",
"Formality": "Formality",
"Glossary id": "Glossary id",
"Tag handling": "Tag handling",
"Outline detection": "Outline detection",
"Non splitting tags": "Non splitting tags",
"Splitting tags": "Splitting tags",
"Ignore tags": "Ignore tags",
"Method": "Method",
"Headers": "Headers",
"Query Parameters": "Query Parameters",
"Body": "Body",
"Response is Binary ?": "Response is Binary ?",
"No Error on Failure": "No Error on Failure",
"Timeout (in seconds)": "Timeout (in seconds)",
"Text to be translated. Only UTF-8-encoded plain text is supported.": "Text to be translated. Only UTF-8-encoded plain text is supported.",
"The language into which the text should be translated.": "The language into which the text should be translated.",
"Language of the text to be translated": "Language of the text to be translated",
"Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.": "Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.",
"Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.": "Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.",
"Sets whether the translated text should lean towards formal or informal language.": "Sets whether the translated text should lean towards formal or informal language.",
"Specify the glossary to use for the translation.": "Specify the glossary to use for the translation.",
"Sets which kind of tags should be handled.": "Sets which kind of tags should be handled.",
"The automatic detection of the XML structure won't yield best results in all XML files.": "The automatic detection of the XML structure won't yield best results in all XML files.",
"Comma-separated list of XML or HTML tags.": "Comma-separated list of XML or HTML tags.",
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
"Enable for files like PDFs, images, etc..": "Enable for files like PDFs, images, etc..",
"Bulgarian": "Bulgarian",
"Czech": "Czech",
"Danish": "Danish",
"German": "German",
"Greek": "Greek",
"English (British)": "English (British)",
"English (American)": "English (American)",
"Spanish": "Spanish",
"Estonian": "Estonian",
"Finnish": "Finnish",
"French": "French",
"Hungarian": "Hungarian",
"Indonesian": "Indonesian",
"Italian": "Italian",
"Japanese": "Japanese",
"Korean": "Korean",
"Lithuanian": "Lithuanian",
"Latvian": "Latvian",
"Norwegian": "Norwegian",
"Dutch": "Dutch",
"Polish": "Polish",
"Portuguese (Brazilian)": "Portuguese (Brazilian)",
"Portuguese": "Portuguese",
"Romanian": "Romanian",
"Russian": "Russian",
"Slovak": "Slovak",
"Slovenian": "Slovenian",
"Swedish": "Swedish",
"Turkish": "Turkish",
"Ukrainian": "Ukrainian",
"Chinese (simplified)": "Chinese (simplified)",
"English": "English",
"Chinese": "Chinese",
"No splitting at all, whole input is treated as one sentence": "No splitting at all, whole input is treated as one sentence",
"Splits on punctuation and on newlines": "Splits on punctuation and on newlines",
"Splits on punctuation only, ignoring newlines": "Splits on punctuation only, ignoring newlines",
"Yes": "Yes",
"No": "No",
"Default": "Default",
"For a more formal language": "For a more formal language",
"For a more informal language": "For a more informal language",
"For a more formal language if available, otherwise fallback to default formality": "For a more formal language if available, otherwise fallback to default formality",
"For a more informal language if available, otherwise fallback to default formality": "For a more informal language if available, otherwise fallback to default formality",
"Enable XML tag handling": "Enable XML tag handling",
"Enable HTML tag handling": "Enable HTML tag handling",
"GET": "GET",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "DELETE",
"HEAD": "HEAD"
}

View File

@@ -0,0 +1,95 @@
{
"DeepL": "DeepL",
"AI-powered language translation": "AI-powered language translation",
"Api key": "Api key",
"Api url": "Api url",
"Enter the api key": "Enter the api key",
"Select api url": "Select api url",
"Free API": "Free API",
"Paid API": "Paid API",
"\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n": "\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n",
"Translate text": "Translate text",
"Custom API Call": "Custom API Call",
"Translate a text to the target language": "Translate a text to the target language",
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
"Text": "Text",
"Target language": "Target language",
"Source language": "Source language",
"Split sentences": "Split sentences",
"Preserve formatting": "Preserve formatting",
"Formality": "Formality",
"Glossary id": "Glossary id",
"Tag handling": "Tag handling",
"Outline detection": "Outline detection",
"Non splitting tags": "Non splitting tags",
"Splitting tags": "Splitting tags",
"Ignore tags": "Ignore tags",
"Method": "Method",
"Headers": "Headers",
"Query Parameters": "Query Parameters",
"Body": "Body",
"No Error on Failure": "No Error on Failure",
"Timeout (in seconds)": "Timeout (in seconds)",
"Text to be translated. Only UTF-8-encoded plain text is supported.": "Text to be translated. Only UTF-8-encoded plain text is supported.",
"The language into which the text should be translated.": "The language into which the text should be translated.",
"Language of the text to be translated": "Language of the text to be translated",
"Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.": "Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.",
"Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.": "Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.",
"Sets whether the translated text should lean towards formal or informal language.": "Sets whether the translated text should lean towards formal or informal language.",
"Specify the glossary to use for the translation.": "Specify the glossary to use for the translation.",
"Sets which kind of tags should be handled.": "Sets which kind of tags should be handled.",
"The automatic detection of the XML structure won't yield best results in all XML files.": "The automatic detection of the XML structure won't yield best results in all XML files.",
"Comma-separated list of XML or HTML tags.": "Comma-separated list of XML or HTML tags.",
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
"Bulgarian": "Bulgarian",
"Czech": "Czech",
"Danish": "Danish",
"German": "German",
"Greek": "Greek",
"English (British)": "English (British)",
"English (American)": "English (American)",
"Spanish": "Spanish",
"Estonian": "Estonian",
"Finnish": "Finnish",
"French": "French",
"Hungarian": "Hungarian",
"Indonesian": "Indonesian",
"Italian": "Italian",
"Japanese": "Japanese",
"Korean": "Korean",
"Lithuanian": "Lithuanian",
"Latvian": "Latvian",
"Norwegian": "Norwegian",
"Dutch": "Dutch",
"Polish": "Polish",
"Portuguese (Brazilian)": "Portuguese (Brazilian)",
"Portuguese": "Portuguese",
"Romanian": "Romanian",
"Russian": "Russian",
"Slovak": "Slovak",
"Slovenian": "Slovenian",
"Swedish": "Swedish",
"Turkish": "Turkish",
"Ukrainian": "Ukrainian",
"Chinese (simplified)": "Chinese (simplified)",
"English": "English",
"Chinese": "Chinese",
"No splitting at all, whole input is treated as one sentence": "No splitting at all, whole input is treated as one sentence",
"Splits on punctuation and on newlines": "Splits on punctuation and on newlines",
"Splits on punctuation only, ignoring newlines": "Splits on punctuation only, ignoring newlines",
"Yes": "Yes",
"No": "No",
"Default": "Default",
"For a more formal language": "For a more formal language",
"For a more informal language": "For a more informal language",
"For a more formal language if available, otherwise fallback to default formality": "For a more formal language if available, otherwise fallback to default formality",
"For a more informal language if available, otherwise fallback to default formality": "For a more informal language if available, otherwise fallback to default formality",
"Enable XML tag handling": "Enable XML tag handling",
"Enable HTML tag handling": "Enable HTML tag handling",
"GET": "GET",
"POST": "POST",
"PATCH": "PATCH",
"PUT": "PUT",
"DELETE": "DELETE",
"HEAD": "HEAD"
}

View File

@@ -0,0 +1,96 @@
{
"AI-powered language translation": "AI-powered language translation",
"Api key": "Api key",
"Api url": "Api url",
"Enter the api key": "Enter the api key",
"Select api url": "Select api url",
"Free API": "Free API",
"Paid API": "Paid API",
"\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n": "\nFollow these instructions to get your DeepL API Key:\n\n1. Log in to your DeepL account.\n2. Visit https://www.deepl.com/account/summary\n3. Go to the API section and obtain your DeepL API Key.\n",
"Translate text": "Translate text",
"Custom API Call": "自定义 API 呼叫",
"Translate a text to the target language": "Translate a text to the target language",
"Make a custom API call to a specific endpoint": "将一个自定义 API 调用到一个特定的终点",
"Text": "文本",
"Target language": "Target language",
"Source language": "Source language",
"Split sentences": "Split sentences",
"Preserve formatting": "Preserve formatting",
"Formality": "Formality",
"Glossary id": "Glossary id",
"Tag handling": "Tag handling",
"Outline detection": "Outline detection",
"Non splitting tags": "Non splitting tags",
"Splitting tags": "Splitting tags",
"Ignore tags": "Ignore tags",
"Method": "方法",
"Headers": "信头",
"Query Parameters": "查询参数",
"Body": "正文内容",
"Response is Binary ?": "Response is Binary ?",
"No Error on Failure": "失败时没有错误",
"Timeout (in seconds)": "超时(秒)",
"Text to be translated. Only UTF-8-encoded plain text is supported.": "Text to be translated. Only UTF-8-encoded plain text is supported.",
"The language into which the text should be translated.": "The language into which the text should be translated.",
"Language of the text to be translated": "Language of the text to be translated",
"Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.": "Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.",
"Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.": "Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.",
"Sets whether the translated text should lean towards formal or informal language.": "Sets whether the translated text should lean towards formal or informal language.",
"Specify the glossary to use for the translation.": "Specify the glossary to use for the translation.",
"Sets which kind of tags should be handled.": "Sets which kind of tags should be handled.",
"The automatic detection of the XML structure won't yield best results in all XML files.": "The automatic detection of the XML structure won't yield best results in all XML files.",
"Comma-separated list of XML or HTML tags.": "Comma-separated list of XML or HTML tags.",
"Authorization headers are injected automatically from your connection.": "授权头自动从您的连接中注入。",
"Enable for files like PDFs, images, etc..": "Enable for files like PDFs, images, etc..",
"Bulgarian": "Bulgarian",
"Czech": "Czech",
"Danish": "Danish",
"German": "German",
"Greek": "Greek",
"English (British)": "English (British)",
"English (American)": "English (American)",
"Spanish": "Spanish",
"Estonian": "Estonian",
"Finnish": "Finnish",
"French": "French",
"Hungarian": "Hungarian",
"Indonesian": "Indonesian",
"Italian": "Italian",
"Japanese": "Japanese",
"Korean": "Korean",
"Lithuanian": "Lithuanian",
"Latvian": "Latvian",
"Norwegian": "Norwegian",
"Dutch": "Dutch",
"Polish": "Polish",
"Portuguese (Brazilian)": "Portuguese (Brazilian)",
"Portuguese": "Portuguese",
"Romanian": "Romanian",
"Russian": "Russian",
"Slovak": "Slovak",
"Slovenian": "Slovenian",
"Swedish": "Swedish",
"Turkish": "Turkish",
"Ukrainian": "Ukrainian",
"Chinese (simplified)": "Chinese (simplified)",
"English": "English",
"Chinese": "Chinese",
"No splitting at all, whole input is treated as one sentence": "No splitting at all, whole input is treated as one sentence",
"Splits on punctuation and on newlines": "Splits on punctuation and on newlines",
"Splits on punctuation only, ignoring newlines": "Splits on punctuation only, ignoring newlines",
"Yes": "Yes",
"No": "No",
"Default": "Default",
"For a more formal language": "For a more formal language",
"For a more informal language": "For a more informal language",
"For a more formal language if available, otherwise fallback to default formality": "For a more formal language if available, otherwise fallback to default formality",
"For a more informal language if available, otherwise fallback to default formality": "For a more informal language if available, otherwise fallback to default formality",
"Enable XML tag handling": "Enable XML tag handling",
"Enable HTML tag handling": "Enable HTML tag handling",
"GET": "获取",
"POST": "帖子",
"PATCH": "PATCH",
"PUT": "弹出",
"DELETE": "删除",
"HEAD": "黑色"
}

View File

@@ -0,0 +1,68 @@
import { createCustomApiCallAction } from '@activepieces/pieces-common';
import {
createPiece,
PieceAuth,
Property,
} from '@activepieces/pieces-framework';
import { PieceCategory } from '@activepieces/shared';
import { translateText } from './lib/actions/translate-text';
const markdownDescription = `
Follow these instructions to get your DeepL API Key:
1. Log in to your DeepL account.
2. Visit https://www.deepl.com/account/summary
3. Go to the API section and obtain your DeepL API Key.
`;
export const deeplAuth = PieceAuth.CustomAuth({
description: markdownDescription,
props: {
key: Property.ShortText({
displayName: 'Api key',
description: 'Enter the api key',
required: true,
}),
type: Property.StaticDropdown({
displayName: 'Api url',
description: 'Select api url',
required: true,
options: {
options: [
{
label: 'Free API',
value: 'free',
},
{
label: 'Paid API',
value: 'paid',
},
],
},
}),
},
required: true,
});
export const deepl = createPiece({
displayName: 'DeepL',
description: 'AI-powered language translation',
auth: deeplAuth,
minimumSupportedRelease: '0.30.0',
logoUrl: 'https://cdn.activepieces.com/pieces/deepl.png',
categories: [],
authors: ["BBND","kishanprmr","MoShizzle","abuaboud"],
actions: [
translateText,
createCustomApiCallAction({
baseUrl: (auth) =>
(auth as { type: string }).type === 'free'
? 'https://api-free.deepl.com/v2'
: 'https://api.deepl.com/v2', // Replace with the actual base URL
auth: deeplAuth,
authMapping: async (auth) => ({
Authorization: `DeepL-Auth-Key ${auth.props.key}`,
}),
}),
],
triggers: [],
});

View File

@@ -0,0 +1,236 @@
import { createAction, Property } from '@activepieces/pieces-framework';
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
import { deeplAuth } from '../..';
export const translateText = createAction({
name: 'translate_text',
auth: deeplAuth,
displayName: 'Translate text',
description: 'Translate a text to the target language',
props: {
text: Property.LongText({
displayName: 'Text',
required: true,
description:
'Text to be translated. Only UTF-8-encoded plain text is supported.',
}),
target_lang: Property.StaticDropdown({
displayName: 'Target language',
description: 'The language into which the text should be translated.',
required: true,
options: {
options: [
{ value: 'BG', label: 'Bulgarian' },
{ value: 'CS', label: 'Czech' },
{ value: 'DA', label: 'Danish' },
{ value: 'DE', label: 'German' },
{ value: 'EL', label: 'Greek' },
{ value: 'EN-GB', label: 'English (British)' },
{ value: 'EN-US', label: 'English (American)' },
{ value: 'ES', label: 'Spanish' },
{ value: 'ET', label: 'Estonian' },
{ value: 'FI', label: 'Finnish' },
{ value: 'FR', label: 'French' },
{ value: 'HU', label: 'Hungarian' },
{ value: 'ID', label: 'Indonesian' },
{ value: 'IT', label: 'Italian' },
{ value: 'JA', label: 'Japanese' },
{ value: 'KO', label: 'Korean' },
{ value: 'LT', label: 'Lithuanian' },
{ value: 'LV', label: 'Latvian' },
{ value: 'NB', label: 'Norwegian' },
{ value: 'NL', label: 'Dutch' },
{ value: 'PL', label: 'Polish' },
{ value: 'PT-BR', label: 'Portuguese (Brazilian)' },
{ value: 'PT-PT', label: 'Portuguese' },
{ value: 'RO', label: 'Romanian' },
{ value: 'RU', label: 'Russian' },
{ value: 'SK', label: 'Slovak' },
{ value: 'SL', label: 'Slovenian' },
{ value: 'SV', label: 'Swedish' },
{ value: 'TR', label: 'Turkish' },
{ value: 'UK', label: 'Ukrainian' },
{ value: 'ZH', label: 'Chinese (simplified)' },
],
},
}),
source_lang: Property.StaticDropdown({
displayName: 'Source language',
description: 'Language of the text to be translated',
required: false,
options: {
options: [
{ value: 'BG', label: 'Bulgarian' },
{ value: 'CS', label: 'Czech' },
{ value: 'DA', label: 'Danish' },
{ value: 'DE', label: 'German' },
{ value: 'EL', label: 'Greek' },
{ value: 'EN', label: 'English' },
{ value: 'ES', label: 'Spanish' },
{ value: 'ET', label: 'Estonian' },
{ value: 'FI', label: 'Finnish' },
{ value: 'FR', label: 'French' },
{ value: 'HU', label: 'Hungarian' },
{ value: 'ID', label: 'Indonesian' },
{ value: 'IT', label: 'Italian' },
{ value: 'JA', label: 'Japanese' },
{ value: 'KO', label: 'Korean' },
{ value: 'LT', label: 'Lithuanian' },
{ value: 'LV', label: 'Latvian' },
{ value: 'NB', label: 'Norwegian' },
{ value: 'NL', label: 'Dutch' },
{ value: 'PL', label: 'Polish' },
{ value: 'PT', label: 'Portuguese' },
{ value: 'RO', label: 'Romanian' },
{ value: 'RU', label: 'Russian' },
{ value: 'SK', label: 'Slovak' },
{ value: 'SL', label: 'Slovenian' },
{ value: 'SV', label: 'Swedish' },
{ value: 'TR', label: 'Turkish' },
{ value: 'UK', label: 'Ukrainian' },
{ value: 'ZH', label: 'Chinese' },
],
},
}),
split_sentences: Property.StaticDropdown({
displayName: 'Split sentences',
description:
'Sets whether the translation engine should first split the input into sentences. For text translations where tag_handling is not set to html, the default value is 1, meaning the engine splits on punctuation and on newlines.',
required: false,
options: {
options: [
{
value: '0',
label:
'No splitting at all, whole input is treated as one sentence',
},
{ value: '1', label: 'Splits on punctuation and on newlines' },
{
value: 'nonewlines',
label: 'Splits on punctuation only, ignoring newlines',
},
],
},
}),
preserve_formatting: Property.StaticDropdown({
displayName: 'Preserve formatting',
description:
'Sets whether the translation engine should respect the original formatting, even if it would usually correct some aspects.',
required: false,
options: {
options: [
{ value: true, label: 'Yes' },
{ value: false, label: 'No' },
],
},
}),
formality: Property.StaticDropdown({
displayName: 'Formality',
description:
'Sets whether the translated text should lean towards formal or informal language.',
required: false,
options: {
options: [
{ value: 'default', label: 'Default' },
{ value: 'more', label: 'For a more formal language' },
{ value: 'less', label: 'For a more informal language' },
{
value: 'prefer_more',
label:
'For a more formal language if available, otherwise fallback to default formality',
},
{
value: 'prefer_less',
label:
'For a more informal language if available, otherwise fallback to default formality',
},
],
},
}),
glossary_id: Property.ShortText({
displayName: 'Glossary id',
description: 'Specify the glossary to use for the translation.',
required: false,
}),
tag_handling: Property.StaticDropdown({
displayName: 'Tag handling',
description: 'Sets which kind of tags should be handled.',
required: false,
options: {
options: [
{ value: 'xml', label: 'Enable XML tag handling' },
{ value: 'html', label: 'Enable HTML tag handling' },
],
},
}),
outline_detection: Property.StaticDropdown({
displayName: 'Outline detection',
description:
"The automatic detection of the XML structure won't yield best results in all XML files.",
required: false,
options: {
options: [
{ value: true, label: 'Yes' },
{ value: false, label: 'No' },
],
},
}),
non_splitting_tags: Property.ShortText({
displayName: 'Non splitting tags',
description: 'Comma-separated list of XML or HTML tags.',
required: false,
}),
splitting_tags: Property.ShortText({
displayName: 'Splitting tags',
description: 'Comma-separated list of XML or HTML tags.',
required: false,
}),
ignore_tags: Property.ShortText({
displayName: 'Ignore tags',
description: 'Comma-separated list of XML or HTML tags.',
required: false,
}),
},
async run(context) {
const DEEPL_FREE_URL = 'https://api-free.deepl.com/v2/translate';
const DEEPL_PAID_URL = 'https://api.deepl.com/v2/translate';
const {
text,
target_lang,
source_lang,
split_sentences,
preserve_formatting,
formality,
glossary_id,
tag_handling,
outline_detection,
non_splitting_tags,
splitting_tags,
ignore_tags,
} = context.propsValue;
const request = await httpClient.sendRequest<string[]>({
method: HttpMethod.POST,
url: context.auth.props.type === 'free' ? DEEPL_FREE_URL : DEEPL_PAID_URL,
headers: {
Authorization: `DeepL-Auth-Key ${context.auth.props.key}`,
'Content-Type': 'application/json',
},
body: {
text: [text],
target_lang: target_lang,
source_lang: source_lang,
split_sentences: split_sentences,
preserve_formatting: preserve_formatting,
formality: formality,
glossary_id: glossary_id,
tag_handling: tag_handling,
outline_detection: outline_detection,
non_splitting_tags: non_splitting_tags?.split(','),
splitting_tags: splitting_tags?.split(','),
ignore_tags: ignore_tags?.split(','),
},
});
return request.body;
},
});

View File

@@ -0,0 +1,19 @@
{
"extends": "../../../../tsconfig.base.json",
"compilerOptions": {
"module": "commonjs",
"forceConsistentCasingInFileNames": true,
"strict": true,
"noImplicitOverride": true,
"noPropertyAccessFromIndexSignature": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": true
},
"files": [],
"include": [],
"references": [
{
"path": "./tsconfig.lib.json"
}
]
}

View File

@@ -0,0 +1,11 @@
{
"extends": "./tsconfig.json",
"compilerOptions": {
"module": "commonjs",
"outDir": "../../../../dist/out-tsc",
"declaration": true,
"types": ["node"]
},
"exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"],
"include": ["src/**/*.ts"]
}