diff --git a/src/i18n.ts b/src/i18n.ts index 7684aab4..d2dfece0 100644 --- a/src/i18n.ts +++ b/src/i18n.ts @@ -5,6 +5,7 @@ export const languages = [ { lng: "de", label: "Deutsch", data: require("./locales/de.json") }, { lng: "es", label: "Español", data: require("./locales/es.json") }, { lng: "fr", label: "Français", data: require("./locales/fr.json") }, + { lng: "id", label: "Bahasa Indonesia", data: require("./locales/id.json") }, { lng: "no", label: "Norsk", data: require("./locales/no.json") }, { lng: "pl", label: "Polski", data: require("./locales/pl.json") }, { lng: "pt", label: "Português", data: require("./locales/pt.json") }, diff --git a/src/locales/de.json b/src/locales/de.json index c59ea7dd..465e8eb4 100644 --- a/src/locales/de.json +++ b/src/locales/de.json @@ -60,7 +60,9 @@ "resetZoom": "Zoom zurücksetzen", "menu": "Menü", "done": "Fertig", - "edit": "Bearbeiten" + "edit": "Bearbeiten", + "undo": "Undo", + "redo": "Redo" }, "alerts": { "clearReset": "Dies wird die ganze Zeichenfläche löschen. Bist du dir sicher?", diff --git a/src/locales/es.json b/src/locales/es.json index 63642f2a..5bffd19d 100644 --- a/src/locales/es.json +++ b/src/locales/es.json @@ -6,7 +6,7 @@ "bringForward": "Adelantar", "sendToBack": "Enviar Al Fondo", "bringToFront": "Traer al frente", - "sendBackward": "Enviar átras", + "sendBackward": "Enviar atrás", "delete": "Borrar", "copyStyles": "Copiar estilos", "pasteStyles": "Pegar estilos", @@ -60,7 +60,9 @@ "resetZoom": "Restablecer zoom", "menu": "Menú", "done": "Terminado", - "edit": "Editar" + "edit": "Editar", + "undo": "Undo", + "redo": "Redo" }, "alerts": { "clearReset": "Esto limpiará todo el lienzo. Estás seguro?", diff --git a/src/locales/fr.json b/src/locales/fr.json index 7186f004..205c40bc 100644 --- a/src/locales/fr.json +++ b/src/locales/fr.json @@ -25,7 +25,7 @@ "code": "Code", "small": "Petit", "medium": "Moyen", - "large": "Large", + "large": "Grand", "veryLarge": "Très Large", "solid": "Solide", "hachure": "Hachure", @@ -38,7 +38,7 @@ "cartoonist": "Cartooniste", "fileTitle": "Titre du fichier", "colorPicker": "Sélecteur de couleur", - "canvasBackground": "Fond du canvas", + "canvasBackground": "Fond du canevas", "drawingCanvas": "Canevas de dessin", "layers": "Calques", "language": "Langue" @@ -57,10 +57,12 @@ "scrollBackToContent": "Revenir au contenu", "zoomIn": "Zoomer", "zoomOut": "Dézoomer", - "resetZoom": "Zoom par défaut", + "resetZoom": "Réinitialiser le zoom", "menu": "Menu", "done": "Terminé", - "edit": "Modifier" + "edit": "Modifier", + "undo": "Annuler", + "redo": "Rétablir" }, "alerts": { "clearReset": "L'intégralité du canvas va être effacé. Êtes-vous sur ?", diff --git a/src/locales/id.json b/src/locales/id.json new file mode 100644 index 00000000..1a99aa34 --- /dev/null +++ b/src/locales/id.json @@ -0,0 +1,95 @@ +{ + "labels": { + "paste": "Tempel", + "selectAll": "Pilih Semua", + "copy": "Salin", + "bringForward": "Memajukan", + "sendToBack": "Bawa ke Belakang", + "bringToFront": "Bawa ke Depan", + "sendBackward": "Mundurkan", + "delete": "Hapus", + "copyStyles": "Salin Style", + "pasteStyles": "Tempel Style", + "stroke": "Stroke", + "background": "Latar", + "fill": "Fill", + "strokeWidth": "Lebar Stroke", + "sloppiness": "Sloppiness", + "opacity": "Opasitas", + "fontSize": "Ukuran Font", + "fontFamily": "Jenis Huruf", + "onlySelected": "Hanya yang Dipilih", + "withBackground": "Dengan Latar", + "handDrawn": "Tulisan Tangan", + "normal": "Biasa", + "code": "Kode", + "small": "Kecil", + "medium": "Menengah", + "large": "Besar", + "veryLarge": "Sangat Besar", + "solid": "Padat", + "hachure": "Hachure", + "crossHatch": "Cross-Hatch", + "thin": "Lembut", + "bold": "Tebal", + "extraBold": "Sangat Tebal", + "architect": "Arsitek", + "artist": "Artis", + "cartoonist": "Cartoonist", + "fileTitle": "Judul Berkas", + "colorPicker": "Pilihan Warna", + "canvasBackground": "Latar Kanvas", + "drawingCanvas": "Drawing Canvas", + "layers": "Lapisan", + "language": "Bahasa" + }, + "buttons": { + "clearReset": "Setel Ulang Kanvas", + "export": "Ekspor", + "exportToPng": "Ekspor ke PNG", + "exportToSvg": "Ekspor ke SVG", + "copyToClipboard": "Salin ke Papan Klip", + "save": "Simpan", + "load": "Muat", + "getShareableLink": "Buat Tautan yang Bisa Dibagian", + "close": "Tutup", + "selectLanguage": "Pilih Bahasa", + "scrollBackToContent": "Gulir kembali ke konten", + "zoomIn": "Besarkan", + "zoomOut": "Kecilkan", + "resetZoom": "Reset Pembesaran", + "menu": "Menu", + "done": "Selesai", + "edit": "Sunting", + "undo": "Urungkan", + "redo": "Mengulang" + }, + "alerts": { + "clearReset": "Ini akan menghapus semua yang ada dikanvas. Apakah kamu yakin ?", + "couldNotCreateShareableLink": "Tidak bisa membuat tautan yang bisa dibagikan", + "importBackendFailed": "Gagal mengimpor dari backend", + "cannotExportEmptyCanvas": "Tidak bisa mengekspor kanvas kosong", + "couldNotCopyToClipboard": "Tidak bisa menyalin ke papan klip. Coba gunakan Browser Chrome", + "uploadedSecurly": "Pengunggahan ini telah diamankan menggunakan enkripsi end-to-end, artinya server Excalidraw dan pihak ketiga tidak data membaca nya" + }, + "toolBar": { + "selection": "Pilihan", + "rectangle": "Persegi", + "diamond": "Berlian", + "ellipse": "Elips", + "arrow": "Panah", + "line": "Garis", + "text": "Teks", + "lock": "Biarkan alat yang dipilih aktif setelah menggambar" + }, + "headings": { + "canvasActions": "Opsi Kanvas", + "selectedShapeActions": "Opsi bentuk yang dipilih", + "shapes": "Bentuk" + }, + "hints": { + "linearElement": "Klik untuk memulai banyak poin, seret untuk satu baris", + "linearElementMulti": "Tekan Escape atau Enter untuk menyelesaikan", + "resize": "Anda dapat membatasi proporsi dengan menahan SHIFT sambil mengubah ukuran" + } +} diff --git a/src/locales/no.json b/src/locales/no.json index ff85e986..2931b9c3 100644 --- a/src/locales/no.json +++ b/src/locales/no.json @@ -60,7 +60,9 @@ "resetZoom": "Nullstill zoom", "menu": "Meny", "done": "Ferdig", - "edit": "Rediger" + "edit": "Rediger", + "undo": "Undo", + "redo": "Redo" }, "alerts": { "clearReset": "Dette vil tømme lerretet. Er du sikker?", diff --git a/src/locales/pl.json b/src/locales/pl.json index 939211e2..5500aa79 100644 --- a/src/locales/pl.json +++ b/src/locales/pl.json @@ -60,7 +60,9 @@ "resetZoom": "Zresetuj powiększenie", "menu": "Menu", "done": "Gotowe", - "edit": "Edytuj" + "edit": "Edytuj", + "undo": "Undo", + "redo": "Redo" }, "alerts": { "clearReset": "To spowoduje usunięcie wszystkiego z dokumentu. Czy chcesz kontynuować?", diff --git a/src/locales/pt.json b/src/locales/pt.json index c55c5b62..de56b993 100644 --- a/src/locales/pt.json +++ b/src/locales/pt.json @@ -60,7 +60,9 @@ "resetZoom": "Redefinir zoom", "menu": "Menu", "done": "Concluído", - "edit": "Editar" + "edit": "Editar", + "undo": "Undo", + "redo": "Redo" }, "alerts": { "clearReset": "O canvas inteiro será excluído. Tens a certeza?", diff --git a/src/locales/ru.json b/src/locales/ru.json index d1e36e4c..4cd9d67a 100644 --- a/src/locales/ru.json +++ b/src/locales/ru.json @@ -60,7 +60,9 @@ "resetZoom": "Сбросить масштаб", "menu": "Меню", "done": "Готово", - "edit": "Изменить" + "edit": "Изменить", + "undo": "Undo", + "redo": "Redo" }, "alerts": { "clearReset": "Это очистит весь холст. Вы уверены?", diff --git a/src/locales/tr.json b/src/locales/tr.json index 187c081c..8468da63 100644 --- a/src/locales/tr.json +++ b/src/locales/tr.json @@ -60,7 +60,9 @@ "resetZoom": "Zoom'u Sıfırla", "menu": "Menü", "done": "Tamam", - "edit": "Düzenle" + "edit": "Düzenle", + "undo": "Undo", + "redo": "Redo" }, "alerts": { "clearReset": "Tüm canvas temizlenecek. Emin misiniz?", diff --git a/src/locales/zh.json b/src/locales/zh.json new file mode 100644 index 00000000..e154bf82 --- /dev/null +++ b/src/locales/zh.json @@ -0,0 +1,95 @@ +{ + "labels": { + "paste": "粘贴", + "selectAll": "Select All", + "copy": "复制", + "bringForward": "Bring Forward", + "sendToBack": "Send To Back", + "bringToFront": "Bring To Front", + "sendBackward": "Send Backward", + "delete": "Delete", + "copyStyles": "Copy Styles", + "pasteStyles": "Paste Styles", + "stroke": "Stroke", + "background": "Background", + "fill": "Fill", + "strokeWidth": "Stroke Width", + "sloppiness": "Sloppiness", + "opacity": "Opacity", + "fontSize": "Font Size", + "fontFamily": "Font Family", + "onlySelected": "Only selected", + "withBackground": "With Background", + "handDrawn": "Hand-Drawn", + "normal": "Normal", + "code": "Code", + "small": "Small", + "medium": "Medium", + "large": "Large", + "veryLarge": "Very Large", + "solid": "Solid", + "hachure": "Hachure", + "crossHatch": "Cross-Hatch", + "thin": "Thin", + "bold": "Bold", + "extraBold": "Extra Bold", + "architect": "Architect", + "artist": "Artist", + "cartoonist": "Cartoonist", + "fileTitle": "File title", + "colorPicker": "Color picker", + "canvasBackground": "Canvas background", + "drawingCanvas": "Drawing Canvas", + "layers": "Layers", + "language": "语言" + }, + "buttons": { + "clearReset": "Reset the canvas", + "export": "Export", + "exportToPng": "Export to PNG", + "exportToSvg": "Export to SVG", + "copyToClipboard": "Copy to clipboard", + "save": "保存", + "load": "Load", + "getShareableLink": "Get shareable link", + "close": "Close", + "selectLanguage": "Select Language", + "scrollBackToContent": "Scroll back to content", + "zoomIn": "Zoom in", + "zoomOut": "Zoom out", + "resetZoom": "Reset zoom", + "menu": "Menu", + "done": "Done", + "edit": "Edit", + "undo": "Undo", + "redo": "Redo" + }, + "alerts": { + "clearReset": "This will clear the whole canvas. Are you sure?", + "couldNotCreateShareableLink": "Couldn't create shareable link.", + "importBackendFailed": "Importing from backend failed.", + "cannotExportEmptyCanvas": "Cannot export empty canvas.", + "couldNotCopyToClipboard": "Couldn't copy to clipboard. Try using Chrome browser.", + "uploadedSecurly": "The upload has been secured with end-to-end encryption, which means that Excalidraw server and third parties can't read the content." + }, + "toolBar": { + "selection": "Selection", + "rectangle": "Rectangle", + "diamond": "Diamond", + "ellipse": "Ellipse", + "arrow": "Arrow", + "line": "Line", + "text": "Text", + "lock": "Keep selected tool active after drawing" + }, + "headings": { + "canvasActions": "Canvas actions", + "selectedShapeActions": "Selected shape actions", + "shapes": "Shapes" + }, + "hints": { + "linearElement": "Click to start multiple points, drag for single line", + "linearElementMulti": "Press Escape or Enter to finish", + "resize": "You can constraint proportions by holding SHIFT while resizing" + } +}