feat: add html-to-image tool definition and i18n strings

Add tool metadata to shared constants and i18n entries across all 21
locales for the new HTML to Image screenshot tool.
This commit is contained in:
SnapOtter
2026-06-06 21:45:38 +08:00
parent 10a85cf37e
commit d1b0afd2e6
22 changed files with 676 additions and 80 deletions
+8
View File
@@ -347,6 +347,14 @@ export const TOOLS: Tool[] = [
icon: "QrCode", icon: "QrCode",
route: "/qr-generate", route: "/qr-generate",
}, },
{
id: "html-to-image",
name: "HTML to Image",
description: "Capture webpages as high-quality images",
category: "utilities",
icon: "Globe",
route: "/html-to-image",
},
{ {
id: "barcode-read", id: "barcode-read",
name: "Barcode Reader", name: "Barcode Reader",
+32 -4
View File
@@ -37,8 +37,8 @@ export const ar: TranslationKeys = {
retry: "إعادة المحاولة", retry: "إعادة المحاولة",
privacyPolicy: "سياسة الخصوصية", privacyPolicy: "سياسة الخصوصية",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "الأساسيات", essentials: "الأساسيات",
optimization: "التحسين", optimization: "التحسين",
@@ -220,6 +220,10 @@ export const ar: TranslationKeys = {
name: "مولّد رمز QR", name: "مولّد رمز QR",
description: "إنشاء رموز QR مخصصة بألوان وأنماط وشعارات مميزة", description: "إنشاء رموز QR مخصصة بألوان وأنماط وشعارات مميزة",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "قارئ الباركود", name: "قارئ الباركود",
description: "مسح الصور بحثًا عن رموز QR والباركود والرموز ثنائية الأبعاد", description: "مسح الصور بحثًا عن رموز QR والباركود والرموز ثنائية الأبعاد",
@@ -1001,6 +1005,30 @@ export const ar: TranslationKeys = {
submit: "إنشاء رمز QR", submit: "إنشاء رمز QR",
download: "تحميل رمز QR", download: "تحميل رمز QR",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "مسح الباركود", submit: "مسح الباركود",
submitBatch: "مسح ({count} ملف)", submitBatch: "مسح ({count} ملف)",
@@ -1831,9 +1859,9 @@ export const ar: TranslationKeys = {
pipelineName: "اسم Pipeline", pipelineName: "اسم Pipeline",
pipelineDescription: "الوصف (اختياري)", pipelineDescription: "الوصف (اختياري)",
noStepsPrompt: "أضف خطوات لبناء أتمتتك", noStepsPrompt: "أضف خطوات لبناء أتمتتك",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "خطوة", step: "خطوة",
}, },
nav: { nav: {
tools: "الأدوات", tools: "الأدوات",
+32 -4
View File
@@ -37,8 +37,8 @@ export const de: TranslationKeys = {
retry: "Erneut versuchen", retry: "Erneut versuchen",
privacyPolicy: "Datenschutzerklaerung", privacyPolicy: "Datenschutzerklaerung",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Grundlagen", essentials: "Grundlagen",
optimization: "Optimierung", optimization: "Optimierung",
@@ -222,6 +222,10 @@ export const de: TranslationKeys = {
name: "QR-Code-Generator", name: "QR-Code-Generator",
description: "QR-Codes mit individuellen Farben, Mustern und Logos erstellen", description: "QR-Codes mit individuellen Farben, Mustern und Logos erstellen",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Barcode-Leser", name: "Barcode-Leser",
description: "Bilder nach QR-Codes, Barcodes und 2D-Codes scannen", description: "Bilder nach QR-Codes, Barcodes und 2D-Codes scannen",
@@ -1014,6 +1018,30 @@ export const de: TranslationKeys = {
submit: "QR-Code generieren", submit: "QR-Code generieren",
download: "QR-Code herunterladen", download: "QR-Code herunterladen",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Barcodes scannen", submit: "Barcodes scannen",
submitBatch: "Scannen ({count} Dateien)", submitBatch: "Scannen ({count} Dateien)",
@@ -1860,9 +1888,9 @@ export const de: TranslationKeys = {
pipelineName: "Pipeline-Name", pipelineName: "Pipeline-Name",
pipelineDescription: "Beschreibung (optional)", pipelineDescription: "Beschreibung (optional)",
noStepsPrompt: "Fuegen Sie Schritte hinzu, um Ihre Automatisierung zu erstellen", noStepsPrompt: "Fuegen Sie Schritte hinzu, um Ihre Automatisierung zu erstellen",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Schritt", step: "Schritt",
}, },
nav: { nav: {
tools: "Werkzeuge", tools: "Werkzeuge",
+28
View File
@@ -179,6 +179,10 @@ export const en = {
name: "QR Code Generator", name: "QR Code Generator",
description: "Generate styled QR codes with custom colors, patterns, and logos", description: "Generate styled QR codes with custom colors, patterns, and logos",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Barcode Reader", name: "Barcode Reader",
description: "Scan images for QR codes, barcodes, and 2D codes", description: "Scan images for QR codes, barcodes, and 2D codes",
@@ -959,6 +963,30 @@ export const en = {
submit: "Generate QR Code", submit: "Generate QR Code",
download: "Download QR Code", download: "Download QR Code",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Scan Barcodes", submit: "Scan Barcodes",
submitBatch: "Scan ({count} files)", submitBatch: "Scan ({count} files)",
+32 -4
View File
@@ -37,8 +37,8 @@ export const es: TranslationKeys = {
retry: "Reintentar", retry: "Reintentar",
privacyPolicy: "Politica de privacidad", privacyPolicy: "Politica de privacidad",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Esenciales", essentials: "Esenciales",
optimization: "Optimizacion", optimization: "Optimizacion",
@@ -209,6 +209,10 @@ export const es: TranslationKeys = {
name: "Generador de codigos QR", name: "Generador de codigos QR",
description: "Genera codigos QR con estilos, colores personalizados, patrones y logos", description: "Genera codigos QR con estilos, colores personalizados, patrones y logos",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Lector de codigos de barras", name: "Lector de codigos de barras",
description: "Escanea imagenes en busca de codigos QR, codigos de barras y codigos 2D", description: "Escanea imagenes en busca de codigos QR, codigos de barras y codigos 2D",
@@ -996,6 +1000,30 @@ export const es: TranslationKeys = {
submit: "Generar codigo QR", submit: "Generar codigo QR",
download: "Descargar codigo QR", download: "Descargar codigo QR",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Escanear codigos de barras", submit: "Escanear codigos de barras",
submitBatch: "Escanear ({count} archivos)", submitBatch: "Escanear ({count} archivos)",
@@ -1837,9 +1865,9 @@ export const es: TranslationKeys = {
pipelineName: "Nombre del Pipeline", pipelineName: "Nombre del Pipeline",
pipelineDescription: "Descripcion (opcional)", pipelineDescription: "Descripcion (opcional)",
noStepsPrompt: "Agrega pasos para construir tu automatizacion", noStepsPrompt: "Agrega pasos para construir tu automatizacion",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Paso", step: "Paso",
}, },
nav: { nav: {
tools: "Herramientas", tools: "Herramientas",
+32 -4
View File
@@ -37,8 +37,8 @@ export const fr: TranslationKeys = {
retry: "Réessayer", retry: "Réessayer",
privacyPolicy: "Politique de confidentialite", privacyPolicy: "Politique de confidentialite",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Essentiels", essentials: "Essentiels",
optimization: "Optimisation", optimization: "Optimisation",
@@ -223,6 +223,10 @@ export const fr: TranslationKeys = {
name: "Generateur de codes QR", name: "Generateur de codes QR",
description: "Generez des codes QR stylises avec couleurs, motifs et logos personnalises", description: "Generez des codes QR stylises avec couleurs, motifs et logos personnalises",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Lecteur de codes-barres", name: "Lecteur de codes-barres",
description: "Scannez les images pour detecter les codes QR, codes-barres et codes 2D", description: "Scannez les images pour detecter les codes QR, codes-barres et codes 2D",
@@ -1015,6 +1019,30 @@ export const fr: TranslationKeys = {
submit: "Generer le code QR", submit: "Generer le code QR",
download: "Telecharger le code QR", download: "Telecharger le code QR",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Scanner les codes-barres", submit: "Scanner les codes-barres",
submitBatch: "Scanner ({count} fichiers)", submitBatch: "Scanner ({count} fichiers)",
@@ -1858,9 +1886,9 @@ export const fr: TranslationKeys = {
pipelineName: "Nom du Pipeline", pipelineName: "Nom du Pipeline",
pipelineDescription: "Description (optionnel)", pipelineDescription: "Description (optionnel)",
noStepsPrompt: "Ajoutez des etapes pour construire votre automatisation", noStepsPrompt: "Ajoutez des etapes pour construire votre automatisation",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Etape", step: "Etape",
}, },
nav: { nav: {
tools: "Outils", tools: "Outils",
+32 -4
View File
@@ -37,8 +37,8 @@ export const hi: TranslationKeys = {
retry: "पुनः प्रयास करें", retry: "पुनः प्रयास करें",
privacyPolicy: "गोपनीयता नीति", privacyPolicy: "गोपनीयता नीति",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "आवश्यक टूल्स", essentials: "आवश्यक टूल्स",
optimization: "ऑप्टिमाइज़ेशन", optimization: "ऑप्टिमाइज़ेशन",
@@ -219,6 +219,10 @@ export const hi: TranslationKeys = {
name: "QR कोड जनरेटर", name: "QR कोड जनरेटर",
description: "कस्टम रंगों, पैटर्न और लोगो के साथ स्टाइल्ड QR कोड जनरेट करें", description: "कस्टम रंगों, पैटर्न और लोगो के साथ स्टाइल्ड QR कोड जनरेट करें",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "बारकोड रीडर", name: "बारकोड रीडर",
description: "इमेज में QR कोड, बारकोड और 2D कोड स्कैन करें", description: "इमेज में QR कोड, बारकोड और 2D कोड स्कैन करें",
@@ -997,6 +1001,30 @@ export const hi: TranslationKeys = {
submit: "QR कोड जनरेट करें", submit: "QR कोड जनरेट करें",
download: "QR कोड डाउनलोड करें", download: "QR कोड डाउनलोड करें",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "बारकोड स्कैन करें", submit: "बारकोड स्कैन करें",
submitBatch: "स्कैन करें ({count} फाइलें)", submitBatch: "स्कैन करें ({count} फाइलें)",
@@ -1828,9 +1856,9 @@ export const hi: TranslationKeys = {
pipelineName: "Pipeline का नाम", pipelineName: "Pipeline का नाम",
pipelineDescription: "विवरण (वैकल्पिक)", pipelineDescription: "विवरण (वैकल्पिक)",
noStepsPrompt: "अपना ऑटोमेशन बनाने के लिए स्टेप्स जोड़ें", noStepsPrompt: "अपना ऑटोमेशन बनाने के लिए स्टेप्स जोड़ें",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "स्टेप", step: "स्टेप",
}, },
nav: { nav: {
tools: "टूल्स", tools: "टूल्स",
+32 -4
View File
@@ -37,8 +37,8 @@ export const id: TranslationKeys = {
retry: "Coba lagi", retry: "Coba lagi",
privacyPolicy: "Kebijakan Privasi", privacyPolicy: "Kebijakan Privasi",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Dasar", essentials: "Dasar",
optimization: "Optimasi", optimization: "Optimasi",
@@ -222,6 +222,10 @@ export const id: TranslationKeys = {
name: "Generator Kode QR", name: "Generator Kode QR",
description: "Buat kode QR bergaya dengan warna, pola, dan logo kustom", description: "Buat kode QR bergaya dengan warna, pola, dan logo kustom",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Pembaca Barcode", name: "Pembaca Barcode",
description: "Pindai gambar untuk kode QR, barcode, dan kode 2D", description: "Pindai gambar untuk kode QR, barcode, dan kode 2D",
@@ -1009,6 +1013,30 @@ export const id: TranslationKeys = {
submit: "Buat Kode QR", submit: "Buat Kode QR",
download: "Unduh Kode QR", download: "Unduh Kode QR",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Pindai Barcode", submit: "Pindai Barcode",
submitBatch: "Pindai ({count} file)", submitBatch: "Pindai ({count} file)",
@@ -1845,9 +1873,9 @@ export const id: TranslationKeys = {
pipelineName: "Nama Pipeline", pipelineName: "Nama Pipeline",
pipelineDescription: "Deskripsi (opsional)", pipelineDescription: "Deskripsi (opsional)",
noStepsPrompt: "Tambahkan langkah untuk membangun otomasi Anda", noStepsPrompt: "Tambahkan langkah untuk membangun otomasi Anda",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Langkah", step: "Langkah",
}, },
nav: { nav: {
tools: "Alat", tools: "Alat",
+32 -4
View File
@@ -37,8 +37,8 @@ export const it: TranslationKeys = {
retry: "Riprova", retry: "Riprova",
privacyPolicy: "Informativa sulla privacy", privacyPolicy: "Informativa sulla privacy",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Essenziali", essentials: "Essenziali",
optimization: "Ottimizzazione", optimization: "Ottimizzazione",
@@ -222,6 +222,10 @@ export const it: TranslationKeys = {
name: "Generatore codici QR", name: "Generatore codici QR",
description: "Genera codici QR stilizzati con colori, motivi e loghi personalizzati", description: "Genera codici QR stilizzati con colori, motivi e loghi personalizzati",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Lettore codici a barre", name: "Lettore codici a barre",
description: "Scansiona immagini alla ricerca di codici QR, codici a barre e codici 2D", description: "Scansiona immagini alla ricerca di codici QR, codici a barre e codici 2D",
@@ -1008,6 +1012,30 @@ export const it: TranslationKeys = {
submit: "Genera codice QR", submit: "Genera codice QR",
download: "Scarica codice QR", download: "Scarica codice QR",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Scansiona codici a barre", submit: "Scansiona codici a barre",
submitBatch: "Scansiona ({count} file)", submitBatch: "Scansiona ({count} file)",
@@ -1852,9 +1880,9 @@ export const it: TranslationKeys = {
pipelineName: "Nome del Pipeline", pipelineName: "Nome del Pipeline",
pipelineDescription: "Descrizione (opzionale)", pipelineDescription: "Descrizione (opzionale)",
noStepsPrompt: "Aggiungi passaggi per costruire la tua automazione", noStepsPrompt: "Aggiungi passaggi per costruire la tua automazione",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Passaggio", step: "Passaggio",
}, },
nav: { nav: {
tools: "Strumenti", tools: "Strumenti",
+32 -4
View File
@@ -37,8 +37,8 @@ export const ja: TranslationKeys = {
retry: "再試行", retry: "再試行",
privacyPolicy: "プライバシーポリシー", privacyPolicy: "プライバシーポリシー",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "基本ツール", essentials: "基本ツール",
optimization: "最適化", optimization: "最適化",
@@ -189,6 +189,10 @@ export const ja: TranslationKeys = {
name: "QRコードジェネレーター", name: "QRコードジェネレーター",
description: "カスタムカラー、パターン、ロゴ付きのQRコードを生成", description: "カスタムカラー、パターン、ロゴ付きのQRコードを生成",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "バーコードリーダー", name: "バーコードリーダー",
description: "画像からQRコード、バーコード、二次元コードをスキャン", description: "画像からQRコード、バーコード、二次元コードをスキャン",
@@ -967,6 +971,30 @@ export const ja: TranslationKeys = {
submit: "QRコード生成", submit: "QRコード生成",
download: "QRコードをダウンロード", download: "QRコードをダウンロード",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "バーコードスキャン", submit: "バーコードスキャン",
submitBatch: "スキャン({count}ファイル)", submitBatch: "スキャン({count}ファイル)",
@@ -1801,9 +1829,9 @@ export const ja: TranslationKeys = {
pipelineName: "Pipeline名", pipelineName: "Pipeline名",
pipelineDescription: "説明(任意)", pipelineDescription: "説明(任意)",
noStepsPrompt: "ステップを追加して自動化を構築", noStepsPrompt: "ステップを追加して自動化を構築",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "ステップ", step: "ステップ",
}, },
nav: { nav: {
tools: "ツール", tools: "ツール",
+32 -4
View File
@@ -37,8 +37,8 @@ export const ko: TranslationKeys = {
retry: "재시도", retry: "재시도",
privacyPolicy: "개인정보 처리방침", privacyPolicy: "개인정보 처리방침",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "기본 도구", essentials: "기본 도구",
optimization: "최적화", optimization: "최적화",
@@ -177,6 +177,10 @@ export const ko: TranslationKeys = {
name: "QR 코드 생성기", name: "QR 코드 생성기",
description: "맞춤 색상, 패턴, 로고가 포함된 QR 코드 생성", description: "맞춤 색상, 패턴, 로고가 포함된 QR 코드 생성",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "바코드 리더", name: "바코드 리더",
description: "이미지에서 QR 코드, 바코드 및 2D 코드 스캔", description: "이미지에서 QR 코드, 바코드 및 2D 코드 스캔",
@@ -952,6 +956,30 @@ export const ko: TranslationKeys = {
submit: "QR 코드 생성", submit: "QR 코드 생성",
download: "QR 코드 다운로드", download: "QR 코드 다운로드",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "바코드 스캔", submit: "바코드 스캔",
submitBatch: "스캔 ({count}개 파일)", submitBatch: "스캔 ({count}개 파일)",
@@ -1786,9 +1814,9 @@ export const ko: TranslationKeys = {
pipelineName: "Pipeline 이름", pipelineName: "Pipeline 이름",
pipelineDescription: "설명 (선택)", pipelineDescription: "설명 (선택)",
noStepsPrompt: "단계를 추가하여 자동화를 구성하세요", noStepsPrompt: "단계를 추가하여 자동화를 구성하세요",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "단계", step: "단계",
}, },
nav: { nav: {
tools: "도구", tools: "도구",
+32 -4
View File
@@ -37,8 +37,8 @@ export const nl: TranslationKeys = {
retry: "Opnieuw proberen", retry: "Opnieuw proberen",
privacyPolicy: "Privacybeleid", privacyPolicy: "Privacybeleid",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Basistools", essentials: "Basistools",
optimization: "Optimalisatie", optimization: "Optimalisatie",
@@ -224,6 +224,10 @@ export const nl: TranslationKeys = {
name: "QR-code generator", name: "QR-code generator",
description: "QR-codes maken met aangepaste kleuren, patronen en logo's", description: "QR-codes maken met aangepaste kleuren, patronen en logo's",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Barcodelezer", name: "Barcodelezer",
description: "Afbeeldingen scannen op QR-codes, barcodes en 2D-codes", description: "Afbeeldingen scannen op QR-codes, barcodes en 2D-codes",
@@ -1011,6 +1015,30 @@ export const nl: TranslationKeys = {
submit: "QR-code genereren", submit: "QR-code genereren",
download: "QR-code downloaden", download: "QR-code downloaden",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Barcodes scannen", submit: "Barcodes scannen",
submitBatch: "Scannen ({count} bestanden)", submitBatch: "Scannen ({count} bestanden)",
@@ -1848,9 +1876,9 @@ export const nl: TranslationKeys = {
pipelineName: "Pipeline-naam", pipelineName: "Pipeline-naam",
pipelineDescription: "Beschrijving (optioneel)", pipelineDescription: "Beschrijving (optioneel)",
noStepsPrompt: "Voeg stappen toe om je automatisering te bouwen", noStepsPrompt: "Voeg stappen toe om je automatisering te bouwen",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Stap", step: "Stap",
}, },
nav: { nav: {
tools: "Tools", tools: "Tools",
+32 -4
View File
@@ -37,8 +37,8 @@ export const pl: TranslationKeys = {
retry: "Ponów", retry: "Ponów",
privacyPolicy: "Polityka prywatności", privacyPolicy: "Polityka prywatności",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Podstawowe", essentials: "Podstawowe",
optimization: "Optymalizacja", optimization: "Optymalizacja",
@@ -223,6 +223,10 @@ export const pl: TranslationKeys = {
description: description:
"Generowanie stylizowanych kodów QR z konfigurowalnymi kolorami, wzorami i logotypami", "Generowanie stylizowanych kodów QR z konfigurowalnymi kolorami, wzorami i logotypami",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Czytnik kodów kreskowych", name: "Czytnik kodów kreskowych",
description: "Skanowanie obrazów w poszukiwaniu kodów QR, kreskowych i 2D", description: "Skanowanie obrazów w poszukiwaniu kodów QR, kreskowych i 2D",
@@ -1012,6 +1016,30 @@ export const pl: TranslationKeys = {
submit: "Generuj kod QR", submit: "Generuj kod QR",
download: "Pobierz kod QR", download: "Pobierz kod QR",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Skanuj kody kreskowe", submit: "Skanuj kody kreskowe",
submitBatch: "Skanuj ({count} plików)", submitBatch: "Skanuj ({count} plików)",
@@ -1855,9 +1883,9 @@ export const pl: TranslationKeys = {
pipelineName: "Nazwa Pipeline", pipelineName: "Nazwa Pipeline",
pipelineDescription: "Opis (opcjonalnie)", pipelineDescription: "Opis (opcjonalnie)",
noStepsPrompt: "Dodaj kroki, aby zbudować automatyzację", noStepsPrompt: "Dodaj kroki, aby zbudować automatyzację",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Krok", step: "Krok",
}, },
nav: { nav: {
tools: "Narzędzia", tools: "Narzędzia",
+32 -4
View File
@@ -37,8 +37,8 @@ export const ptBR: TranslationKeys = {
retry: "Tentar novamente", retry: "Tentar novamente",
privacyPolicy: "Politica de privacidade", privacyPolicy: "Politica de privacidade",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Essenciais", essentials: "Essenciais",
optimization: "Otimizacao", optimization: "Otimizacao",
@@ -221,6 +221,10 @@ export const ptBR: TranslationKeys = {
name: "Gerador de codigos QR", name: "Gerador de codigos QR",
description: "Gere codigos QR estilizados com cores, padroes e logos personalizados", description: "Gere codigos QR estilizados com cores, padroes e logos personalizados",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Leitor de codigos de barras", name: "Leitor de codigos de barras",
description: "Escaneie imagens em busca de codigos QR, codigos de barras e codigos 2D", description: "Escaneie imagens em busca de codigos QR, codigos de barras e codigos 2D",
@@ -1008,6 +1012,30 @@ export const ptBR: TranslationKeys = {
submit: "Gerar codigo QR", submit: "Gerar codigo QR",
download: "Baixar codigo QR", download: "Baixar codigo QR",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Escanear codigos de barras", submit: "Escanear codigos de barras",
submitBatch: "Escanear ({count} arquivos)", submitBatch: "Escanear ({count} arquivos)",
@@ -1848,9 +1876,9 @@ export const ptBR: TranslationKeys = {
pipelineName: "Nome do Pipeline", pipelineName: "Nome do Pipeline",
pipelineDescription: "Descricao (opcional)", pipelineDescription: "Descricao (opcional)",
noStepsPrompt: "Adicione passos para construir sua automacao", noStepsPrompt: "Adicione passos para construir sua automacao",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Passo", step: "Passo",
}, },
nav: { nav: {
tools: "Ferramentas", tools: "Ferramentas",
+32 -4
View File
@@ -37,8 +37,8 @@ export const ru: TranslationKeys = {
retry: "Повторить", retry: "Повторить",
privacyPolicy: "Политика конфиденциальности", privacyPolicy: "Политика конфиденциальности",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Основные", essentials: "Основные",
optimization: "Оптимизация", optimization: "Оптимизация",
@@ -223,6 +223,10 @@ export const ru: TranslationKeys = {
description: description:
"Генерация стилизованных QR-кодов с настраиваемыми цветами, узорами и логотипами", "Генерация стилизованных QR-кодов с настраиваемыми цветами, узорами и логотипами",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Сканер штрихкодов", name: "Сканер штрихкодов",
description: "Сканирование изображений на наличие QR-кодов, штрихкодов и 2D-кодов", description: "Сканирование изображений на наличие QR-кодов, штрихкодов и 2D-кодов",
@@ -1010,6 +1014,30 @@ export const ru: TranslationKeys = {
submit: "Сгенерировать QR-код", submit: "Сгенерировать QR-код",
download: "Скачать QR-код", download: "Скачать QR-код",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Сканировать штрихкоды", submit: "Сканировать штрихкоды",
submitBatch: "Сканировать ({count} файлов)", submitBatch: "Сканировать ({count} файлов)",
@@ -1847,9 +1875,9 @@ export const ru: TranslationKeys = {
pipelineName: "Название Pipeline", pipelineName: "Название Pipeline",
pipelineDescription: "Описание (необязательно)", pipelineDescription: "Описание (необязательно)",
noStepsPrompt: "Добавьте шаги для построения автоматизации", noStepsPrompt: "Добавьте шаги для построения автоматизации",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Шаг", step: "Шаг",
}, },
nav: { nav: {
tools: "Инструменты", tools: "Инструменты",
+32 -4
View File
@@ -37,8 +37,8 @@ export const sv: TranslationKeys = {
retry: "Försök igen", retry: "Försök igen",
privacyPolicy: "Integritetspolicy", privacyPolicy: "Integritetspolicy",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Grundlaggande", essentials: "Grundlaggande",
optimization: "Optimering", optimization: "Optimering",
@@ -222,6 +222,10 @@ export const sv: TranslationKeys = {
name: "QR-kodsgenerator", name: "QR-kodsgenerator",
description: "Skapa QR-koder med anpassade farger, monster och logotyper", description: "Skapa QR-koder med anpassade farger, monster och logotyper",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Streckkodslasare", name: "Streckkodslasare",
description: "Skanna bilder efter QR-koder, streckkoder och 2D-koder", description: "Skanna bilder efter QR-koder, streckkoder och 2D-koder",
@@ -1007,6 +1011,30 @@ export const sv: TranslationKeys = {
submit: "Generera QR-kod", submit: "Generera QR-kod",
download: "Ladda ner QR-kod", download: "Ladda ner QR-kod",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Skanna streckkoder", submit: "Skanna streckkoder",
submitBatch: "Skanna ({count} filer)", submitBatch: "Skanna ({count} filer)",
@@ -1842,9 +1870,9 @@ export const sv: TranslationKeys = {
pipelineName: "Pipeline-namn", pipelineName: "Pipeline-namn",
pipelineDescription: "Beskrivning (valfritt)", pipelineDescription: "Beskrivning (valfritt)",
noStepsPrompt: "Lagg till steg for att bygga din automatisering", noStepsPrompt: "Lagg till steg for att bygga din automatisering",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Steg", step: "Steg",
}, },
nav: { nav: {
tools: "Verktyg", tools: "Verktyg",
+32 -4
View File
@@ -37,8 +37,8 @@ export const th: TranslationKeys = {
retry: "ลองใหม่", retry: "ลองใหม่",
privacyPolicy: "นโยบายความเป็นส่วนตัว", privacyPolicy: "นโยบายความเป็นส่วนตัว",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "พื้นฐาน", essentials: "พื้นฐาน",
optimization: "การเพิ่มประสิทธิภาพ", optimization: "การเพิ่มประสิทธิภาพ",
@@ -219,6 +219,10 @@ export const th: TranslationKeys = {
name: "สร้างคิวอาร์โค้ด", name: "สร้างคิวอาร์โค้ด",
description: "สร้างคิวอาร์โค้ดพร้อมสไตล์ สี ลวดลาย และโลโก้ที่กำหนดเอง", description: "สร้างคิวอาร์โค้ดพร้อมสไตล์ สี ลวดลาย และโลโก้ที่กำหนดเอง",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "อ่านบาร์โค้ด", name: "อ่านบาร์โค้ด",
description: "สแกนภาพเพื่อหาคิวอาร์โค้ด บาร์โค้ด และโค้ด 2D", description: "สแกนภาพเพื่อหาคิวอาร์โค้ด บาร์โค้ด และโค้ด 2D",
@@ -990,6 +994,30 @@ export const th: TranslationKeys = {
submit: "สร้างคิวอาร์โค้ด", submit: "สร้างคิวอาร์โค้ด",
download: "ดาวน์โหลดคิวอาร์โค้ด", download: "ดาวน์โหลดคิวอาร์โค้ด",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "สแกนบาร์โค้ด", submit: "สแกนบาร์โค้ด",
submitBatch: "สแกน ({count} ไฟล์)", submitBatch: "สแกน ({count} ไฟล์)",
@@ -1819,9 +1847,9 @@ export const th: TranslationKeys = {
pipelineName: "ชื่อ Pipeline", pipelineName: "ชื่อ Pipeline",
pipelineDescription: "คำอธิบาย (ไม่บังคับ)", pipelineDescription: "คำอธิบาย (ไม่บังคับ)",
noStepsPrompt: "เพิ่มขั้นตอนเพื่อสร้างการทำงานอัตโนมัติ", noStepsPrompt: "เพิ่มขั้นตอนเพื่อสร้างการทำงานอัตโนมัติ",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "ขั้นตอน", step: "ขั้นตอน",
}, },
nav: { nav: {
tools: "เครื่องมือ", tools: "เครื่องมือ",
+32 -4
View File
@@ -37,8 +37,8 @@ export const tr: TranslationKeys = {
retry: "Yeniden dene", retry: "Yeniden dene",
privacyPolicy: "Gizlilik Politikası", privacyPolicy: "Gizlilik Politikası",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Temel Araçlar", essentials: "Temel Araçlar",
optimization: "Optimizasyon", optimization: "Optimizasyon",
@@ -223,6 +223,10 @@ export const tr: TranslationKeys = {
name: "QR Kod Oluşturucu", name: "QR Kod Oluşturucu",
description: "Özel renkler, desenler ve logolarla stilize QR kodlar oluşturun", description: "Özel renkler, desenler ve logolarla stilize QR kodlar oluşturun",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Barkod Okuyucu", name: "Barkod Okuyucu",
description: "Görüntülerde QR kodu, barkod ve 2D kodları tarayın", description: "Görüntülerde QR kodu, barkod ve 2D kodları tarayın",
@@ -1012,6 +1016,30 @@ export const tr: TranslationKeys = {
submit: "QR Kodu Oluştur", submit: "QR Kodu Oluştur",
download: "QR Kodunu İndir", download: "QR Kodunu İndir",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Barkodları Tara", submit: "Barkodları Tara",
submitBatch: "Tara ({count} dosya)", submitBatch: "Tara ({count} dosya)",
@@ -1852,9 +1880,9 @@ export const tr: TranslationKeys = {
pipelineName: "Pipeline Adı", pipelineName: "Pipeline Adı",
pipelineDescription: "Açıklama (isteğe bağlı)", pipelineDescription: "Açıklama (isteğe bağlı)",
noStepsPrompt: "Otomasyonunuzu oluşturmak için adımlar ekleyin", noStepsPrompt: "Otomasyonunuzu oluşturmak için adımlar ekleyin",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Adım", step: "Adım",
}, },
nav: { nav: {
tools: "Araçlar", tools: "Araçlar",
+32 -4
View File
@@ -37,8 +37,8 @@ export const uk: TranslationKeys = {
retry: "Повторити", retry: "Повторити",
privacyPolicy: "Політика конфіденційності", privacyPolicy: "Політика конфіденційності",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Основні", essentials: "Основні",
optimization: "Оптимізація", optimization: "Оптимізація",
@@ -222,6 +222,10 @@ export const uk: TranslationKeys = {
description: description:
"Генерація стилізованих QR-кодів з налаштовуваними кольорами, візерунками та логотипами", "Генерація стилізованих QR-кодів з налаштовуваними кольорами, візерунками та логотипами",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Сканер штрихкодів", name: "Сканер штрихкодів",
description: "Сканування зображень на наявність QR-кодів, штрихкодів та 2D-кодів", description: "Сканування зображень на наявність QR-кодів, штрихкодів та 2D-кодів",
@@ -1010,6 +1014,30 @@ export const uk: TranslationKeys = {
submit: "Згенерувати QR-код", submit: "Згенерувати QR-код",
download: "Завантажити QR-код", download: "Завантажити QR-код",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Сканувати штрихкоди", submit: "Сканувати штрихкоди",
submitBatch: "Сканувати ({count} файлів)", submitBatch: "Сканувати ({count} файлів)",
@@ -1848,9 +1876,9 @@ export const uk: TranslationKeys = {
pipelineName: "Назва Pipeline", pipelineName: "Назва Pipeline",
pipelineDescription: "Опис (необов'язково)", pipelineDescription: "Опис (необов'язково)",
noStepsPrompt: "Додайте кроки для побудови автоматизації", noStepsPrompt: "Додайте кроки для побудови автоматизації",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Крок", step: "Крок",
}, },
nav: { nav: {
tools: "Інструменти", tools: "Інструменти",
+32 -4
View File
@@ -37,8 +37,8 @@ export const vi: TranslationKeys = {
retry: "Thử lại", retry: "Thử lại",
privacyPolicy: "Chính sách bảo mật", privacyPolicy: "Chính sách bảo mật",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "Cơ bản", essentials: "Cơ bản",
optimization: "Tối ưu hóa", optimization: "Tối ưu hóa",
@@ -223,6 +223,10 @@ export const vi: TranslationKeys = {
name: "Tạo mã QR", name: "Tạo mã QR",
description: "Tạo mã QR có kiểu dáng với màu sắc, hoa văn và logo tùy chỉnh", description: "Tạo mã QR có kiểu dáng với màu sắc, hoa văn và logo tùy chỉnh",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "Đọc mã vạch", name: "Đọc mã vạch",
description: "Quét hình ảnh để tìm mã QR, mã vạch và mã 2D", description: "Quét hình ảnh để tìm mã QR, mã vạch và mã 2D",
@@ -1009,6 +1013,30 @@ export const vi: TranslationKeys = {
submit: "Tạo mã QR", submit: "Tạo mã QR",
download: "Tải xuống mã QR", download: "Tải xuống mã QR",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "Quét mã vạch", submit: "Quét mã vạch",
submitBatch: "Quét ({count} tệp)", submitBatch: "Quét ({count} tệp)",
@@ -1842,9 +1870,9 @@ export const vi: TranslationKeys = {
pipelineName: "Tên Pipeline", pipelineName: "Tên Pipeline",
pipelineDescription: "Mô tả (tùy chọn)", pipelineDescription: "Mô tả (tùy chọn)",
noStepsPrompt: "Thêm các bước để xây dựng tự động hóa", noStepsPrompt: "Thêm các bước để xây dựng tự động hóa",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "Bước", step: "Bước",
}, },
nav: { nav: {
tools: "Công cụ", tools: "Công cụ",
+32 -4
View File
@@ -37,8 +37,8 @@ export const zhCN: TranslationKeys = {
retry: "重试", retry: "重试",
privacyPolicy: "隐私政策", privacyPolicy: "隐私政策",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "基础工具", essentials: "基础工具",
optimization: "优化", optimization: "优化",
@@ -177,6 +177,10 @@ export const zhCN: TranslationKeys = {
name: "QR 码生成器", name: "QR 码生成器",
description: "生成自定义颜色、图案和 Logo 的 QR 码", description: "生成自定义颜色、图案和 Logo 的 QR 码",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "条码识别", name: "条码识别",
description: "扫描图片中的 QR 码、条形码和二维码", description: "扫描图片中的 QR 码、条形码和二维码",
@@ -944,6 +948,30 @@ export const zhCN: TranslationKeys = {
submit: "生成 QR 码", submit: "生成 QR 码",
download: "下载 QR 码", download: "下载 QR 码",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "扫描条码", submit: "扫描条码",
submitBatch: "扫描({count} 个文件)", submitBatch: "扫描({count} 个文件)",
@@ -1770,9 +1798,9 @@ export const zhCN: TranslationKeys = {
pipelineName: "Pipeline 名称", pipelineName: "Pipeline 名称",
pipelineDescription: "描述(可选)", pipelineDescription: "描述(可选)",
noStepsPrompt: "添加步骤来构建自动化流程", noStepsPrompt: "添加步骤来构建自动化流程",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "步骤", step: "步骤",
}, },
nav: { nav: {
tools: "工具", tools: "工具",
+32 -4
View File
@@ -37,8 +37,8 @@ export const zhTW: TranslationKeys = {
retry: "重試", retry: "重試",
privacyPolicy: "隱私權政策", privacyPolicy: "隱私權政策",
pageNotFound: "Page not found", pageNotFound: "Page not found",
pageNotFoundDescription: "The page you are looking for does not exist or has been moved.", pageNotFoundDescription: "The page you are looking for does not exist or has been moved.",
}, },
categories: { categories: {
essentials: "基本工具", essentials: "基本工具",
optimization: "最佳化", optimization: "最佳化",
@@ -176,6 +176,10 @@ export const zhTW: TranslationKeys = {
name: "QR碼產生器", name: "QR碼產生器",
description: "產生自訂色彩、圖案和Logo的QR碼", description: "產生自訂色彩、圖案和Logo的QR碼",
}, },
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": { "barcode-read": {
name: "條碼讀取器", name: "條碼讀取器",
description: "掃描影像中的QR碼、條碼和二維碼", description: "掃描影像中的QR碼、條碼和二維碼",
@@ -942,6 +946,30 @@ export const zhTW: TranslationKeys = {
submit: "產生QR碼", submit: "產生QR碼",
download: "下載QR碼", download: "下載QR碼",
}, },
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": { "barcode-read": {
submit: "掃描條碼", submit: "掃描條碼",
submitBatch: "掃描({count}個檔案)", submitBatch: "掃描({count}個檔案)",
@@ -1768,9 +1796,9 @@ export const zhTW: TranslationKeys = {
pipelineName: "Pipeline名稱", pipelineName: "Pipeline名稱",
pipelineDescription: "描述(選填)", pipelineDescription: "描述(選填)",
noStepsPrompt: "加入步驟來建構自動化", noStepsPrompt: "加入步驟來建構自動化",
noStepsHeading: "No steps yet", noStepsHeading: "No steps yet",
searchToolsPlaceholder: "Search tools...", searchToolsPlaceholder: "Search tools...",
step: "步驟", step: "步驟",
}, },
nav: { nav: {
tools: "工具", tools: "工具",