From 3a3454872d8c4da128257eeefa66e7d740e7855c Mon Sep 17 00:00:00 2001 From: Andreas Bichinger Date: Tue, 9 Sep 2025 20:25:27 +0200 Subject: [PATCH 1/4] Support locale override --- src/composables/useI18n.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/composables/useI18n.js b/src/composables/useI18n.js index 259156eb..ee67ebd6 100644 --- a/src/composables/useI18n.js +++ b/src/composables/useI18n.js @@ -5,10 +5,13 @@ export async function loadLocale(locale, supportedLocales) { return typeof localeData === 'function' ? (await localeData()).default : localeData; } -export function useI18n(storage, initialLocale, emitter, supportedLocales) { +export function useI18n(storage, localeProp, emitter, supportedLocales) { + const [initialLocale, overrideStorage] = [localeProp.replace('!', ''), localeProp.includes('!')] const {getStore, setStore} = storage; const translations = ref({}); - const locale = ref(getStore('locale', initialLocale)); + const locale = overrideStorage + ? ref(supportedLocales[initialLocale] === undefined ? 'en' : initialLocale) + : ref(getStore('locale', initialLocale)); const changeLocale = (newLocale, defaultLocale = initialLocale) => { loadLocale(newLocale, supportedLocales).then((i18n) => { @@ -34,7 +37,7 @@ export function useI18n(storage, initialLocale, emitter, supportedLocales) { changeLocale(newLocale); }); - if (!getStore('locale') && !supportedLocales.length) { + if (!getStore('locale') || getStore('locale') !== locale.value) { changeLocale(initialLocale); } else { translations.value = getStore('translations'); From 9ca1812c639b7004c4faab7814c994db5faf663e Mon Sep 17 00:00:00 2001 From: Andreas Bichinger Date: Fri, 12 Sep 2025 19:04:22 +0200 Subject: [PATCH 2/4] Move translations into json files and improve locale matching BREAKING CHANGE: rename zhCN to zh_CN, rename zhTW to zh_TW --- examples/main.js | 4 +- scripts/addLocale.cjs | 39 ++++++++ src/composables/useI18n.js | 42 ++++++++- src/locales/ar.js | 108 ++-------------------- src/locales/de.js | 108 ++-------------------- src/locales/en.js | 108 ++-------------------- src/locales/fa.js | 108 ++-------------------- src/locales/fr.js | 109 ++--------------------- src/locales/he.js | 108 ++-------------------- src/locales/hi.js | 108 ++-------------------- src/locales/ja.js | 7 ++ src/locales/json/ar.json | 102 +++++++++++++++++++++ src/locales/json/de.json | 102 +++++++++++++++++++++ src/locales/json/en.json | 102 +++++++++++++++++++++ src/locales/json/fa.json | 102 +++++++++++++++++++++ src/locales/json/fr.json | 102 +++++++++++++++++++++ src/locales/json/he.json | 102 +++++++++++++++++++++ src/locales/json/hi.json | 102 +++++++++++++++++++++ src/locales/json/ja.json | 1 + src/locales/json/nl.json | 102 +++++++++++++++++++++ src/locales/json/pl.json | 102 +++++++++++++++++++++ src/locales/json/ru.json | 102 +++++++++++++++++++++ src/locales/json/sv.json | 102 +++++++++++++++++++++ src/locales/json/tr.json | 102 +++++++++++++++++++++ src/locales/{zhCN.js => json/zh_CN.json} | 17 ++-- src/locales/{zhTW.js => json/zh_TW.json} | 17 ++-- src/locales/nl.js | 108 ++-------------------- src/locales/pl.js | 108 ++-------------------- src/locales/ru.js | 108 ++-------------------- src/locales/sv.js | 108 ++-------------------- src/locales/tr.js | 108 ++-------------------- src/locales/zh_CN.js | 7 ++ src/locales/zh_TW.js | 7 ++ 33 files changed, 1399 insertions(+), 1263 deletions(-) create mode 100644 scripts/addLocale.cjs create mode 100644 src/locales/ja.js create mode 100644 src/locales/json/ar.json create mode 100644 src/locales/json/de.json create mode 100644 src/locales/json/en.json create mode 100644 src/locales/json/fa.json create mode 100644 src/locales/json/fr.json create mode 100644 src/locales/json/he.json create mode 100644 src/locales/json/hi.json create mode 100644 src/locales/json/ja.json create mode 100644 src/locales/json/nl.json create mode 100644 src/locales/json/pl.json create mode 100644 src/locales/json/ru.json create mode 100644 src/locales/json/sv.json create mode 100644 src/locales/json/tr.json rename src/locales/{zhCN.js => json/zh_CN.json} (89%) rename src/locales/{zhTW.js => json/zh_TW.json} (89%) create mode 100644 src/locales/zh_CN.js create mode 100644 src/locales/zh_TW.js diff --git a/examples/main.js b/examples/main.js index 4f68c5e3..9560810d 100644 --- a/examples/main.js +++ b/examples/main.js @@ -22,8 +22,8 @@ app.use(VueFinder, sv: async () => await import ("../src/locales/sv.js"), tr: async () => await import ("../src/locales/tr.js"), nl: async () => await import ("../src/locales/nl.js"), - zhCN: async () => await import ("../src/locales/zhCN.js"), - zhTW: async () => await import ("../src/locales/zhTW.js"), + zh_CN: async () => await import ("../src/locales/zh_CN.js"), + zh_TW: async () => await import ("../src/locales/zh_TW.js"), } } ) diff --git a/scripts/addLocale.cjs b/scripts/addLocale.cjs new file mode 100644 index 00000000..56e18cc9 --- /dev/null +++ b/scripts/addLocale.cjs @@ -0,0 +1,39 @@ +const fs = require('fs'); +const path = require('path'); +const { parseArgs } = require('node:util'); + +/** + * Generates a JavaScript and JSON file for a given locale. + * @param {string} locale - The locale code (e.g., "en", "fr"). + * @param {string} uppyLocale - the uppy locale code + */ +function addLocale(locale, uppyLocale) { + const jsFilePath = path.resolve(__dirname, `../src/locales/${locale}.js`); + const jsonFilePath = path.resolve(__dirname, `../src/locales/json/${locale}.json`); + const uppyLocalePath = path.resolve(__dirname, `../node_modules/@uppy/locales/lib/${uppyLocale}.js`) + const uppyLocaleImportPath = `@uppy/locales/lib/${uppyLocale}.js`; + + if (!fs.existsSync(uppyLocalePath)) { + throw `uppy locale ${uppyLocale} does not exist` + } + + if (!fs.existsSync(jsonFilePath)) { + fs.writeFileSync(jsonFilePath, "{}", 'utf8'); + } + + const content = `import locale from "./json/${locale}.json"; +import uppyLocale from "${uppyLocaleImportPath}"; + +export default { + ...locale, + uppy: uppyLocale +}; +`; + + fs.writeFileSync(jsFilePath, content, 'utf8'); +} + +const {positionals} = parseArgs({allowPositionals: true}) +const [locale, uppyLocale] = positionals + +addLocale(locale ?? 'en', uppyLocale ?? 'en_US'); \ No newline at end of file diff --git a/src/composables/useI18n.js b/src/composables/useI18n.js index ee67ebd6..dfbbcb20 100644 --- a/src/composables/useI18n.js +++ b/src/composables/useI18n.js @@ -1,8 +1,42 @@ import {reactive, ref, watch} from 'vue'; +/** + * @param {string} locale + * @returns + */ +export function sanitizeLocale(locale) { + return locale.toLowerCase().replace("_", "-") +} + +/** + * @param {string} locale + * @param {Record} supportedLocales + * @param {false | string} fallback + * @returns + */ +function findLocale(locale, supportedLocales, fallback=false) { + const exactMatch = Object.keys(supportedLocales).find( + (supported) => sanitizeLocale(supported) === sanitizeLocale(locale) + ); + if (exactMatch) { + return supportedLocales[exactMatch]; + } + const sameLanguage = Object.keys(supportedLocales).find( + (supported) => + sanitizeLocale(supported).split("-")[0] === + sanitizeLocale(locale).split("-")[0] + ); + + if(!sameLanguage && fallback) { + return findLocale(fallback, supportedLocales) + } + + return supportedLocales[sameLanguage]; +} + export async function loadLocale(locale, supportedLocales) { - const localeData = supportedLocales[locale]; - return typeof localeData === 'function' ? (await localeData()).default : localeData; + const localeLoader = findLocale(locale, supportedLocales); + return typeof localeLoader === 'function' ? (await localeLoader()).default : localeLoader; } export function useI18n(storage, localeProp, emitter, supportedLocales) { @@ -24,6 +58,7 @@ export function useI18n(storage, localeProp, emitter, supportedLocales) { emitter.emit('vf-language-saved'); } }).catch(e => { + console.error(e) if (defaultLocale) { emitter.emit('vf-toast-push', {label: 'The selected locale is not yet supported!', type: 'error'}); changeLocale(defaultLocale, null); @@ -53,5 +88,4 @@ export function useI18n(storage, localeProp, emitter, supportedLocales) { return reactive({t, locale}); -} - +} \ No newline at end of file diff --git a/src/locales/ar.js b/src/locales/ar.js index 415d8e55..fec26e53 100644 --- a/src/locales/ar.js +++ b/src/locales/ar.js @@ -1,105 +1,7 @@ -import uppyLocaleAr from '@uppy/locales/lib/ar_SA.js'; +import locale from "./json/ar.json"; +import uppyLocale from "@uppy/locales/lib/ar_SA.js"; export default { - "Language": "اللّغة", - "Create": "إنشاء", - "Close": "إغلاق", - "Cancel": "إلغاء", - "Save": "حفظ", - "Edit": "تعديل", - "Crop": "قص", - "New Folder": "مجلد جديد", - "New File": "ملف جديد", - "Rename": "إعادة تسمية", - "Delete": "حذف", - "Upload": "رفع", - "Download": "تحميل", - "Archive": "أرشفة", - "Unarchive": "إلغاء الأرشفة", - "Open": "فتح", - "Open containing folder": "فتح المجلد المحتوى", - "Refresh": "تحديث", - "Preview": "معاينة", - "Toggle Full Screen": "عرض مِلء الشاشة", - "Change View": "تغيير عرض الملفات", - "Storage": "التخزين", - "Go up a directory": "إذهب لِأعلى", - "Search anything..": "ابحث عن أي شيء..", - "Name": "الإسم", - "Size": "الحجم", - "Date": "التاريخ", - "Filepath": "مسار الملف", - "Folder Name": "اسم المجلد", - "File Name": "اسم الملف", - "Move files": "نقل الملفات", - "Yes, Move!": "نعم, انقل!", - "Delete files": "حذف الملفات", - "Yes, Delete!": "نعم, احذف!", - "Upload Files": "ارفع الملفات", - "No files selected!": "لم يتم تحديد أي ملفات", - "Select Files": "تحديد ملفات", - "Archive the files": "أرشفة الملفات", - "Unarchive the files": "إلغاء أرشفة الملفات", - "The archive will be unarchived at": "سيتم إلغاء أرشفة الأرشيف في", - "Archive name. (.zip file will be created)": "اسم الأرشيف. (سيتم إنشاء ملف zip)", - "Vuefinder is a file manager component for vue 3.": "Vuefinder هو أحد مكونات مدير الملفات لـ Vue 3.", - "Create a new folder": "إنشاء مجلد جديد", - "Create a new file": "إنشاء ملف جديد", - "Are you sure you want to delete these files?": "هل أنت متأكد من أنك تريد حذف هذه الملفات؟", - "This action cannot be undone.": "لا يمكن التراجع عن هذا الإجراء.", - "Search results for": "نتائج البحث عن", - "%s item(s) selected.": "تم تحديد %s عنصر.", - "%s is renamed.": "%s تمت إعادة تسمية.", - "This is a readonly storage.": "هذه مساحة تخزين للقراءة فقط.", - "%s is created.": "%s تم إنشاء.", - "Files moved.": "تم نقل الملفات.", - "Files deleted.": "تم حذف الملفات.", - "The file unarchived.": "تم إلغاء أرشفة الملف.", - "The file(s) archived.": "تم إلغاء أرشفة الملف (الملفات).", - "Updated.": "تم التحديث.", - "No search result found.": "لا يوجد نتائج بحث.", - "Are you sure you want to move these files?": "هل أنت متأكد من أنك تريد نقل هذه الملفات؟", - "File Size": "حجم الملف", - "Last Modified": "اّخر تعديل", - "Select Folders": "حدد المجلدات", - "Clear all": "مسح الجميع", - "Clear only successful": "مسح الناجح فقط", - "Drag and drop the files/folders to here or click here.": "اسحب وأفلت الملفات/المجلدات إلى هنا أو قم بالنقر هنا.", - "Release to drop these files.": "حرر لإسقاط هذه الملفات.", - "Canceled": "مُلغى", - "Done": "تم", - "Network Error, Unable establish connection to the server or interrupted.": "خطأ في الشبكة، تعذر إنشاء اتصال بالخادم أو انقطاعه.", - "Pending upload": "في انتظار التحميل", - "Please select file to upload first.": "الرجاء تحديد ملف أولاً لرفعه", - "About": "حول", - "Settings": "الإعدادات", - "Shortcuts": "الإختصارات", - "Reset": "إعادة ضبط", - 'Escape': 'إلغاء', - 'Search': 'بحث', - 'Toggle Sidebar': 'إظهار/إخفاء الشّريط الجانبي', - 'Open Settings': 'فتح الإعدادات', - "Reset all settings to default": "إعادة ضبط جميع الإعدادات إلى الوضع الافتراضي", - "Use Metric Units": "استخدم وحدات القياس المتريّة", - "Saved.": "تم الحفظ", - "Reset Settings": "إعادة ضبط الإعدادات", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "هل التنزيل لا يعمل؟ يمكنك محاولة النقر بزر الفأرة الأيمن على زر \"تنزيل\"، ثم تحديد \"حفظ الرابط باسم...", - "Theme": "السمة", - "Dark": "مظلم", - "Light": "فاتح", - "System": "النّظام", - "Target Directory": "المجلد الهدف", - "Select": "اختيار", - "Compact list view": "القائمة المضغوطة", - "Show thumbnails": "إظهار صّور المعاينة المصغّرة", - "Persist path on reload": "البقاء على المسار عند إعادة التحميل", - "Select All": "تحديد الجميع", - "Pinned Folders": "المجلدات المثبتة", - "No folders pinned": "لا يوجد ملفات مثبّتة", - "Pin Folder": "تثبيت المجلّد", - "Unpin Folder": "إلغاء تثبيت المجلّد", - "Project home": "صفحة المشروع", - "Follow on GitHub": "تابعنا على GitHub", - "Customize your experience with the following settings": "قم بتخصيص تجربتك بالإعدادات التّالية", - "uppy": uppyLocaleAr -} + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/de.js b/src/locales/de.js index 7312af0f..c041fdea 100644 --- a/src/locales/de.js +++ b/src/locales/de.js @@ -1,105 +1,7 @@ -import uppyLocaleDe from '@uppy/locales/lib/de_DE.js'; +import locale from "./json/de.json"; +import uppyLocale from "@uppy/locales/lib/de_DE.js"; export default { - "Language": "Sprache", - "Create": "Erstellen", - "Close": "Schließen", - "Cancel": "Abbrechen", - "Save": "Speichern", - "Edit": "Bearbeiten", - "Crop": "Zuschneiden", - "New Folder": "Neuer Ordner", - "New File": "Neue Datei", - "Rename": "Umbenennen", - "Delete": "Löschen", - "Upload": "Hochladen", - "Download": "Herunterladen", - "Archive": "Archivieren", - "Unarchive": "Dearchivieren", - "Open": "Öffnen", - "Open containing folder": "Enthaltenden Ordner öffnen", - "Refresh": "Aktualisieren", - "Preview": "Vorschau", - "Toggle Full Screen": "Vollbild umschalten", - "Change View": "Ansicht ändern", - "Storage": "Speicher", - "Go up a directory": "Ein Verzeichnis hochgehen", - "Search anything..": "Suche etwas..", - "Name": "Name", - "Size": "Größe", - "Date": "Datum", - "Filepath": "Dateipfad", - "Folder Name": "Ordnername", - "File Name": "Dateiname", - "Move files": "Dateien verschieben", - "Yes, Move!": "Ja, Verschieben!", - "Delete files": "Dateien löschen", - "Yes, Delete!": "Ja, Löschen!", - "Upload Files": "Dateien hochladen", - "No files selected!": "Keine Dateien ausgewählt!", - "Select Files": "Dateien auswählen", - "Archive the files": "Dateien archivieren", - "Unarchive the files": "Dateien dearchivieren", - "The archive will be unarchived at": "Das Archiv wird dearchiviert bei", - "Archive name. (.zip file will be created)": "Archivname. (.zip Datei wird erstellt)", - "Vuefinder is a file manager component for vue 3.": "Vuefinder ist eine Dateimanager-Komponente für Vue 3.", - "Create a new folder": "Einen neuen Ordner erstellen", - "Create a new file": "Eine neue Datei erstellen", - "Are you sure you want to delete these files?": "Sind Sie sicher, dass Sie diese Dateien löschen möchten?", - "This action cannot be undone.": "Diese Aktion kann nicht rückgängig gemacht werden.", - "Search results for": "Suchergebnisse für", - "%s item(s) selected.": "%s Element(e) ausgewählt.", - "%s is renamed.": "%s wurde umbenannt.", - "This is a readonly storage.": "Dies ist ein schreibgeschützter Speicher.", - "%s is created.": "%s wurde erstellt.", - "Files moved.": "Dateien verschoben.", - "Files deleted.": "Dateien gelöscht.", - "The file unarchived.": "Die Datei wurde dearchiviert.", - "The file(s) archived.": "Die Datei(en) wurden archiviert.", - "Updated.": "Aktualisiert.", - "No search result found.": "Keine Suchergebnisse gefunden.", - "Are you sure you want to move these files?": "Sind Sie sicher, dass Sie diese Dateien verschieben möchten?", - "File Size": "Dateigröße", - "Last Modified": "Zuletzt geändert", - "Select Folders": "Ordner auswählen", - "Clear all": "Alles löschen", - "Clear only successful": "Nur erfolgreiche löschen", - "Drag and drop the files/folders to here or click here.": "Ziehen Sie die Dateien/Ordner hierher oder klicken Sie hier.", - "Release to drop these files.": "Lassen Sie los, um diese Dateien abzulegen.", - "Canceled": "Abgebrochen", - "Done": "Fertig", - "Network Error, Unable establish connection to the server or interrupted.": "Netzwerkfehler, Verbindung zum Server kann nicht hergestellt oder unterbrochen werden.", - "Pending upload": "Ausstehender", - "Please select file to upload first.": "Bitte wählen Sie zuerst eine Datei zum Hochladen aus.", - "About": "Über", - "Settings": "Einstellungen", - "Shortcuts": "Verknüpfungen", - "Reset": "Zurücksetzen", - 'Escape': 'Escape', - 'Search': 'Suche', - 'Toggle Sidebar': 'Seitenleiste umschalten', - 'Open Settings': 'Einstellungen öffnen', - "Reset all settings to default": "Alle Einstellungen auf Standard zurücksetzen", - "Use Metric Units": "Use Metric Units", - "Saved.": "Gespeichert.", - "Reset Settings": "Einstellungen zurücksetzen", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "Der Download funktioniert nicht? Sie können versuchen, mit der rechten Maustaste auf die Schaltfläche \"Download\" zu klicken und \"Link speichern unter...\" auszuwählen.", - "Theme": "Thema", - "Dark": "Dunkel", - "Light": "Licht", - "System": "System", - "Target Directory": "Zielverzeichnis", - "Select": "Auswählen", - "Compact list view": "Kompakte Listenansicht", - "Show thumbnails": "Miniaturansichten anzeigen", - "Persist path on reload": "Pfad beim Neuladen beibehalten", - "Select All": "Alle auswählen", - "Pinned Folders": "Angeheftete Ordner", - "No folders pinned": "Keine Ordner angeheftet", - "Pin Folder": "Ordner anheften", - "Unpin Folder": "Ordner lösen", - "Project home": "Projekt-Startseite", - "Follow on GitHub": "Folgen Sie auf GitHub", - "Customize your experience with the following settings": "Passen Sie Ihr Erlebnis mit den folgenden Einstellungen an", - "uppy": uppyLocaleDe, -} + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/en.js b/src/locales/en.js index 2f5758ab..f620da7e 100644 --- a/src/locales/en.js +++ b/src/locales/en.js @@ -1,105 +1,7 @@ -import uppyLocaleEn from '@uppy/locales/lib/en_US.js'; +import locale from "./json/en.json"; +import uppyLocale from "@uppy/locales/lib/en_US.js"; export default { - "Language": "Language", - "Create": "Create", - "Close": "Close", - "Cancel": "Cancel", - "Save": "Save", - "Edit": "Edit", - "Crop": "Crop", - "New Folder": "New Folder", - "New File": "New File", - "Rename": "Rename", - "Delete": "Delete", - "Upload": "Upload", - "Download": "Download", - "Archive": "Archive", - "Unarchive": "Unarchive", - "Open": "Open", - "Open containing folder": "Open containing folder", - "Refresh": "Refresh", - "Preview": "Preview", - "Toggle Full Screen": "Toggle Full Screen", - "Change View": "Change View", - "Storage": "Storage", - "Go up a directory": "Go up a directory", - "Search anything..": "Search anything..", - "Name": "Name", - "Size": "Size", - "Date": "Date", - "Filepath": "Filepath", - "Folder Name": "Folder Name", - "File Name": "File Name", - "Move files": "Move files", - "Yes, Move!": "Yes, Move!", - "Delete files": "Delete files", - "Yes, Delete!": "Yes, Delete!", - "Upload Files": "Upload Files", - "No files selected!": "No files selected!", - "Select Files": "Select Files", - "Archive the files": "Archive the files", - "Unarchive the files": "Unarchive the files", - "The archive will be unarchived at": "The archive will be unarchived at", - "Archive name. (.zip file will be created)": "Archive name. (.zip file will be created)", - "Vuefinder is a file manager component for vue 3.": "Vuefinder is a file manager component for Vue 3.", - "Create a new folder": "Create a new folder", - "Create a new file": "Create a new file", - "Are you sure you want to delete these files?": "Are you sure you want to delete these files?", - "This action cannot be undone.": "This action cannot be undone.", - "Search results for": "Search results for", - "%s item(s) selected.": "%s item(s) selected.", - "%s is renamed.": "%s is renamed.", - "This is a readonly storage.": "This is a readonly storage.", - "%s is created.": "%s is created.", - "Files moved.": "Files moved.", - "Files deleted.": "Files deleted.", - "The file unarchived.": "The file unarchived.", - "The file(s) archived.": "The file(s) archived.", - "Updated.": "Updated.", - "No search result found.": "No search result found.", - "Are you sure you want to move these files?": "Are you sure you want to move these files?", - "File Size": "File Size", - "Last Modified": "Last Modified", - "Select Folders": "Select Folders", - "Clear all": "Clear all", - "Clear only successful": "Clear only successful", - "Drag and drop the files/folders to here or click here.": "Drag and drop the files/folders to here or click here.", - "Release to drop these files.": "Release to drop these files.", - "Canceled": "Canceled", - "Done": "Done", - "Network Error, Unable establish connection to the server or interrupted.": "Network Error, Unable establish connection to the server or interrupted.", - "Pending upload": "Pending", - "Please select file to upload first.": "Please select file to upload first.", - "About": "About", - "Settings": "Settings", - "Shortcuts": "Shortcuts", - "Reset": "Reset", - 'Escape': 'Escape', - 'Search': 'Search', - 'Toggle Sidebar': 'Toggle Sidebar', - 'Open Settings': 'Open Settings', - "Reset all settings to default": "Reset all settings to default", - "Use Metric Units": "Use Metric Units", - "Saved.": "Saved.", - "Reset Settings": "Reset Settings", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".", - "Theme": "Theme", - "Dark": "Dark", - "Light": "Light", - "System": "System", - "Target Directory": "Target Directory", - "Select": "Select", - "Compact list view": "Compact list view", - "Show thumbnails": "Show thumbnails", - "Persist path on reload": "Persist path on reload", - "Select All": "Select All", - "Pinned Folders": "Pinned Folders", - "No folders pinned": "No folders pinned", - "Pin Folder": "Pin Folder", - "Unpin Folder": "Unpin Folder", - "Project home": "Project home", - "Follow on GitHub": "Follow on GitHub", - "Customize your experience with the following settings": "Customize your experience with the following settings", - "uppy": uppyLocaleEn -} + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/fa.js b/src/locales/fa.js index 9ae12dbe..05401848 100644 --- a/src/locales/fa.js +++ b/src/locales/fa.js @@ -1,105 +1,7 @@ -import uppyLocaleFa from '@uppy/locales/lib/fa_IR.js'; +import locale from "./json/fa.json"; +import uppyLocale from "@uppy/locales/lib/fa_IR.js"; export default { - "Language": "زبان", - "Create": "ایجاد", - "Close": "بستن", - "Cancel": "انصراف", - "Save": "ذخیره", - "Edit": "ویرایش", - "Crop": "برش تصویر", - "New Folder": "پوشه جدید", - "New File": "فایل جدید", - "Rename": "تغییر نام", - "Delete": "حذف", - "Upload": "آپلود", - "Download": "دانلود", - "Archive": "فشرده سازی", - "Unarchive": "باز کردن فایل فشرده", - "Open": "باز کردن", - "Open containing folder": "محتوای پوشه را باز کن!", - "Refresh": "بارکذاری مجدد", - "Preview": "پیشنمایش", - "Toggle Full Screen": "تمام تصویر کردن", - "Change View": "تغییر نوع نمایش", - "Storage": "فضا", - "Go up a directory": "برو به پوشه", - "Search anything..": "به دنبال چه چیزی هستید ؟ جستجو کنید ...", - "Name": "نام", - "Size": "سایز", - "Date": "تاریخ انتشار", - "Filepath": "مسیر فایل", - "Folder Name": "نام پوشه", - "File Name": "نام فایل", - "Move files": "انتقال فایل ها", - "Yes, Move!": "بله، انتقال بده!", - "Delete files": "پاک کردن فایل ها", - "Yes, Delete!": "بله، پاک کن!", - "Upload Files": "آپلود کردن فایل ها", - "No files selected!": "هیچ فایلی انتخاب نشده است.", - "Select Files": "انتخاب فایل ها", - "Archive the files": "فشرده سازی فایل ها", - "Unarchive the files": "باز کردن فایل های فشرده", - "The archive will be unarchived at": "فایل فشرده سازه در این مسیر باز میشود: ", - "Archive name. (.zip file will be created)": "نام فایل فشرده", - "Vuefinder is a file manager component for vue 3.": "Vuefinder یک کتابخانه مدیریت فایل ها برای Vue3 میباشد.", - "Create a new folder": "ایجاد پوشه جدید", - "Create a new file": "ایجاد فایل جدید", - "Are you sure you want to delete these files?": "آیا از حذف فایل ها مطمئن هستید ؟", - "This action cannot be undone.": "این تغییرات قابل بازگشت نیست!", - "Search results for": "نتیجه جستجو برای", - "%s item(s) selected.": "%s آیتم(های) انتخاب شده", - "%s is renamed.": "تغییر نام برای %s صورت گرفت.", - "This is a readonly storage.": "این فضا فقط قابل خواندن است!", - "%s is created.": "%s ساخته شد!", - "Files moved.": "فایل(ها) انقال یافتند.", - "Files deleted.": "فایل(ها) حذف شدند.", - "The file unarchived.": "فایل فشرده شده باز شد.", - "The file(s) archived.": "فایل(ها) فشرده سازی شدند.", - "Updated.": "آپدیت شد.", - "No search result found.": "هیچ نتیجه ای یافت نشد.", - "Are you sure you want to move these files?": "آیا برای انتقال فایل ها مطمئن هستید ؟", - "File Size": "سایز فایل", - "Last Modified": "آخرین ویرایش", - "Select Folders": "Select Folders", - "Clear all": "پاک کردن همه", - "Clear only successful": "پاک کردن فقط موفق", - "Drag and drop the files/folders to here or click here.": "فایل ها/پوشه ها را به اینجا بکشید یا اینجا کلیک کنید.", - "Release to drop these files.": "رها کنید تا این فایل ها را رها کنید.", - "Canceled": "لغو شد", - "Done": "انجام شد", - "Network Error, Unable establish connection to the server or interrupted.": "خطای شبکه، اتصال به سرور برقرار نشد یا قطع شد.", - "Pending upload": "آپلود در حال انتظار", - "Please select file to upload first.": "لطفا ابتدا فایلی را برای آپلود انتخاب کنید.", - "About": "درباره", - "Settings": "تنظیمات", - "Shortcuts": "میانبر ها", - "Reset": "بازنشانی", - 'Escape': 'خروج', - 'Search': 'جستجو', - 'Toggle Sidebar': 'نمایش/مخفی کردن نوار کناری', - 'Open Settings': 'باز کردن تنظیمات', - "Reset all settings to default": "بازنشانی تمام تنظیمات به حالت پیش فرض", - "Use Metric Units": "استفاده از واحد های متریک", - "Saved.": "ذخیره شد.", - "Reset Settings": "بازنشانی تنظیمات", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "دانلود کار نمیکند؟ میتوانید روی دکمه \"دانلود\" راست کلیک کرده و \"ذخیره لینک به عنوان...\" را انتخاب کنید", - "Theme": "تم", - "Dark": "تاریک", - "Light": "روشن", - "System": "سیستم", - "Target Directory": "پوشه مقصد", - "Select": "انتخاب", - "Compact list view": "نمایش لیست کوچک", - "Show thumbnails": "نمایش تصاویر کوچک", - "Persist path on reload": "مسیر را در هنگام بارگذاری مجدد ذخیره کن", - "Select All": "انتخاب همه", - "Pinned Folders": "پوشه های سنجاق شده", - "No folders pinned": "هیچ پوشه ای سنجاق نشده است", - "Pin Folder": "سنجاق کردن پوشه", - "Unpin Folder": "حذف سنجاق پوشه", - "Project home": "صفحه پروژه", - "Follow on GitHub": "دنبال کردن در گیت هاب", - "Customize your experience with the following settings": "تجربه خود را با تنظیمات زیر سفارشی کنید", - "uppy": uppyLocaleFa -} + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/fr.js b/src/locales/fr.js index 66951e67..f4079ac3 100644 --- a/src/locales/fr.js +++ b/src/locales/fr.js @@ -1,106 +1,7 @@ -import uppyLocaleFr from '@uppy/locales/lib/fr_FR.js'; +import locale from "./json/fr.json"; +import uppyLocale from "@uppy/locales/lib/fr_FR.js"; -// todo : change the values from english to french export default { - "Language": "Langue", - "Create": "Créer", - "Close": "Fermer", - "Cancel": "Annuler", - "Save": "Enregistrer", - "Edit": "Modifier", - "Crop": "Recadrer", - "New Folder": "Nouveau dossier", - "New File": "Nouveau fichier", - "Rename": "Renommer", - "Delete": "Supprimer", - "Upload": "Télécharger", - "Download": "Télécharger", - "Archive": "Archiver", - "Unarchive": "Désarchiver", - "Open": "Ouvrir", - "Open containing folder": "Ouvrir le dossier contenant", - "Refresh": "Rafraîchir", - "Preview": "Aperçu", - "Toggle Full Screen": "Basculer en plein écran", - "Change View": "Changer de vue", - "Storage": "Stockage", - "Go up a directory": "Remonter d'un répertoire", - "Search anything..": "Rechercher...", - "Name": "Nom", - "Size": "Taille", - "Date": "Date", - "Filepath": "Chemin du fichier", - "Folder Name": "Nom du dossier", - "File Name": "Nom du fichier", - "Move files": "Déplacer les fichiers", - "Yes, Move!": "Oui, déplacer!", - "Delete files": "Supprimer les fichiers", - "Yes, Delete!": "Oui, supprimer!", - "Upload Files": "Télécharger des fichiers", - "No files selected!": "Aucun fichier sélectionné!", - "Select Files": "Sélectionner des fichiers", - "Archive the files": "Archiver les fichiers", - "Unarchive the files": "Désarchiver les fichiers", - "The archive will be unarchived at": "L'archive sera désarchivée à", - "Archive name. (.zip file will be created)": "Nom de l'archive. (un fichier .zip sera créé)", - "Vuefinder is a file manager component for vue 3.": "Vuefinder est un composant de gestionnaire de fichiers pour vue 3.", - "Create a new folder": "Créer un nouveau dossier", - "Create a new file": "Créer un nouveau fichier", - "Are you sure you want to delete these files?": "Êtes-vous sûr de vouloir supprimer ces fichiers?", - "This action cannot be undone.": "Cette action ne peut pas être annulée.", - "Search results for": "Résultats de recherche pour", - "%s item(s) selected.": "%s élément(s) sélectionné(s).", - "%s is renamed.": "%s est renommé.", - "This is a readonly storage.": "C'est un stockage en lecture seule.", - "%s is created.": "%s est créé.", - "Files moved.": "Fichiers déplacés.", - "Files deleted.": "Fichiers supprimés.", - "The file unarchived.": "Le fichier désarchivé.", - "The file(s) archived.": "Le(s) fichier(s) archivé(s).", - "Updated.": "Mis à jour.", - "No search result found.": "Aucun résultat de recherche trouvé.", - "Are you sure you want to move these files?": "Êtes-vous sûr de vouloir déplacer ces fichiers?", - "File Size": "Taille du fichier", - "Last Modified": "Dernière modification", - "Select Folders": "Sélectionner des dossiers", - "Clear all": "Tout effacer", - "Clear only successful": "Effacer uniquement les réussites", - "Drag and drop the files/folders to here or click here.": "Faites glisser les fichiers/dossiers ici ou cliquez ici.", - "Release to drop these files.": "Relâchez pour déposer ces fichiers.", - "Canceled": "Annulé", - "Done": "Terminé", - "Network Error, Unable establish connection to the server or interrupted.": "Erreur réseau, impossible d'établir une connexion avec le serveur ou interrompue.", - "Pending upload": "Téléchargement en attente", - "Please select file to upload first.": "Veuillez d'abord sélectionner le fichier à télécharger.", - "About": "À propos", - "Settings": "Paramètres", - "Shortcuts": "Raccourcis", - "Reset": "Réinitialiser", - 'Escape': 'Échap', - 'Search': 'Rechercher', - 'Toggle Sidebar': 'Basculer la barre latérale', - 'Open Settings': 'Ouvrir les paramètres', - "Reset all settings to default": "Réinitialiser tous les paramètres par défaut", - "Use Metric Units": "Utiliser les unités métriques", - "Saved.": "Enregistré.", - "Reset Settings": "Réinitialiser les paramètres", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "Le téléchargement ne fonctionne pas? Vous pouvez essayer de cliquer avec le bouton droit sur le bouton \"Télécharger\", puis sélectionner \"Enregistrer le lien sous...\".", - "Theme": "Thème", - "Dark": "Sombre", - "Light": "Clair", - "System": "Système", - "Target Directory": "Répertoire cible", - "Select": "Sélectionner", - "Compact list view": "Vue en liste compacte", - "Show thumbnails": "Afficher les miniatures", - "Persist path on reload": "Conserver le chemin lors du rechargement", - "Select All": "Tout sélectionner", - "Pinned Folders": "Dossiers épinglés", - "No folders pinned": "Aucun dossier épinglé", - "Pin Folder": "Épingler le dossier", - "Unpin Folder": "Détacher le dossier", - "Project home": "Accueil du projet", - "Follow on GitHub": "Suivre sur GitHub", - "Customize your experience with the following settings": "Personnalisez votre expérience avec les paramètres suivants", - "uppy": uppyLocaleFr -} + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/he.js b/src/locales/he.js index 7833b27d..49ee0a17 100644 --- a/src/locales/he.js +++ b/src/locales/he.js @@ -1,105 +1,7 @@ -import uppyLocaleHe from '@uppy/locales/lib/he_IL.js'; +import locale from "./json/he.json"; +import uppyLocale from "@uppy/locales/lib/he_IL.js"; export default { - "Language": "שפה", - "Create": "יצירה", - "Close": "סגירה", - "Cancel": "ביטול", - "Save": "שמירה", - "Edit": "עריכה", - "Crop": "חיתוך", - "New Folder": "תיקייה חדשה", - "New File": "קובץ חדש", - "Rename": "שינוי שם", - "Delete": "מחיקה", - "Upload": "העלאה", - "Download": "הורדה", - "Archive": "לדחוס", - "Unarchive": "לחלץ", - "Open": "פתיחה", - "Open containing folder": "פתיחת מיקום קובץ", - "Refresh": "רענון", - "Preview": "תצוגה מקדימה", - "Toggle Full Screen": "שינוי מצב מסך מלא", - "Change View": "שינוי תצוגה", - "Storage": "אחסון", - "Go up a directory": "מעבר תיקייה אחת למעלה", - "Search anything..": "חיפוש...", - "Name": "שם", - "Size": "גודל", - "Date": "תאריך", - "Filepath": "נתיב קובץ", - "Folder Name": "שם התיקייה", - "File Name": "שם הקובץ", - "Move files": "העברת קבצים", - "Yes, Move!": "כן, להעביר!", - "Delete files": "מחיקת קבצים", - "Yes, Delete!": "כן, למחוק!", - "Upload Files": "העלאת קבצים", - "No files selected!": "לא נבחרו קבצים", - "Select Files": "בחירת קבצים", - "Archive the files": "דחיסת קבצים אלו", - "Unarchive the files": "חילוץ קבצים אלו", - "The archive will be unarchived at": "הארכיןם יוחלץ ל:", - "Archive name. (.zip file will be created)": "שם הארכיון. (סיומת .zip תווסף)", - "Vuefinder is a file manager component for vue 3.": "Vuefinder הינו רכיב מנהל קבצים עבור vue 3", - "Create a new folder": "יצירת תיקייה חדשה", - "Create a new file": "יצירת קובץ חדש", - "Are you sure you want to delete these files?": "האם בטוח למחוק קבצים אלה?", - "This action cannot be undone.": "לא ניתן לבטל פעולה זו.", - "Search results for": "תוצאות חיפוש עבור", - "%s item(s) selected.": "%s פריט(ים) נבחרו.", - "%s is renamed.": "השם של %s השתנה.", - "This is a readonly storage.": "זהו אחסון לקריאה בלבד.", - "%s is created.": "%s נוצר", - "Files moved.": "הקבצים הועברו.", - "Files deleted.": "הקבצים נמחקו", - "The file unarchived.": "הקבצים חולצו.", - "The file(s) archived.": "הקובצים נדחסו.", - "Updated.": "התעדכן", - "No search result found.": "לא נמצאו תוצאות לחיפוש.", - "Are you sure you want to move these files?": "האם בטוח להעביר קבצים אלו?", - "File Size": "גודל קובץ", - "Last Modified": "תאריך שינוי", - "Select Folders": "Select Folders", - "Clear all": "נקה הכל", - "Clear only successful": "נקה רק הצלחות", - "Drag and drop the files/folders to here or click here.": "גרור ושחרר את הקבצים/תיקיות לכאן או לחץ כאן.", - "Release to drop these files.": "שחרר כדי לשחרר את הקבצים.", - "Canceled": "בוטל", - "Done": "הסתיים", - "Network Error, Unable establish connection to the server or interrupted.": "שגיאת רשת, לא ניתן להתחבר לשרת או החיבור נקטע.", - "Pending upload": "העלאה ממתינה", - "Please select file to upload first.": "בחר קובץ להעלאה תחילה.", - "About": "אודות", - "Settings": "הגדרות", - "Shortcuts": "קיצורי דרך", - "Reset": "איפוס", - 'Escape': 'ביטול', - 'Search': 'חיפוש', - 'Toggle Sidebar': 'החלף סרגל צד', - 'Open Settings': 'פתח הגדרות', - "Reset all settings to default": "איפוס כל ההגדרות לברירת מחדל", - "Use Metric Units": "השתמש ביחידות מטריות", - "Saved.": "נשמר", - "Reset Settings": "איפוס הגדרות", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "ההורדה לא עובדה? ניתן לנסות ללחוץ ימינה על כפתור \"הורדה\", ולבחור \"שמור קישור בשם...\".", - "Theme": "ערכת נושא", - "Dark": "כהה", - "Light": "בהיר", - "System": "מערכת", - "Target Directory": "תיקיית יעד", - "Select": "בחר", - "Compact list view": "תצוגת רשימה קומפקטית", - "Show thumbnails": "הצג תמונות ממוזערות", - "Persist path on reload": "שמור נתיב בטעינה מחדש", - "Select All": "בחר הכל", - "Pinned Folders": "תיקיות מוצמדות", - "No folders pinned": "אין תיקיות מוצמדות", - "Pin Folder": "מוצמד תיקייה", - "Unpin Folder": "בטל מוצמד תיקייה", - "Project home": "דף הבית של הפרויקט", - "Follow on GitHub": "עקוב ב-GitHub", - "Customize your experience with the following settings": "התאמת חוויתך עם ההגדרות הבאות", - "uppy": uppyLocaleHe -} + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/hi.js b/src/locales/hi.js index e737da43..1f3fe4cf 100644 --- a/src/locales/hi.js +++ b/src/locales/hi.js @@ -1,105 +1,7 @@ -import uppyLocaleHi from '@uppy/locales/lib/hi_IN.js'; +import locale from "./json/hi.json"; +import uppyLocale from "@uppy/locales/lib/hi_IN.js"; export default { - "Language": "भाषा", - "Create": "बनाएँ", - "Close": "बंद करें", - "Cancel": "रद्द करें", - "Save": "सहेजें", - "Edit": "संपादित करें", - "Crop": "कटवा दें", - "New Folder": "नया फ़ोल्डर", - "New File": "नया फ़ाइल", - "Rename": "नाम बदलें", - "Delete": "हटाएं", - "Upload": "अपलोड करें", - "Download": "डाउनलोड करें", - "Archive": "आर्काइव", - "Unarchive": "अनआर्काइव", - "Open": "खोलें", - "Open containing folder": "धारक फोल्डर खोलें", - "Refresh": "ताजगी करें", - "Preview": "पूर्वावलोकन", - "Toggle Full Screen": "पूर्ण स्क्रीन टॉगल करें", - "Change View": "दृश्य बदलें", - "Storage": "संग्रहण", - "Go up a directory": "एक निर्देशिका ऊपर जाएं", - "Search anything..": "कुछ भी खोजें..", - "Name": "नाम", - "Size": "आकार", - "Date": "तारीख", - "Filepath": "फ़ाइल पथ", - "Folder Name": "फ़ोल्डर नाम", - "File Name": "फ़ाइल नाम", - "Move files": "फ़ाइलें ले जाएं", - "Yes, Move!": "हां, ले जाएं!", - "Delete files": "फ़ाइलें हटाएं", - "Yes, Delete!": "हां, हटाएं!", - "Upload Files": "फ़ाइलें अपलोड करें", - "No files selected!": "कोई फ़ाइलें चयनित नहीं हैं!", - "Select Files": "फ़ाइलें चयनित करें", - "Archive the files": "फ़ाइलों को संग्रहित करें", - "Unarchive the files": "फ़ाइलों को संग्रहण से निकालें", - "The archive will be unarchived at": "संग्रहण इस तिथि पर से निकाला जाएगा", - "Archive name. (.zip file will be created)": "संग्रहण का नाम (.zip फ़ाइल बनाई जाएगी)", - "Vuefinder is a file manager component for vue 3.": "Vuefinder व्यू 3 के लिए एक फ़ाइल प्रबंधक घटक है।", - "Create a new folder": "नया फ़ोल्डर बनाएं", - "Create a new file": "नई फ़ाइल बनाएं", - "Are you sure you want to delete these files?": "क्या आप वाकई इन फ़ाइलों को हटाना चाहते हैं?", - "This action cannot be undone.": "इस क्रिया को पूर्वस्थित नहीं किया जा सकता है।", - "Search results for": "के लिए खोज परिणाम", - "%s item(s) selected.": "%s आइटम(आइटम) चयनित।", - "%s is renamed.": "%s का नाम बदला गया है।", - "This is a readonly storage.": "यह एक केवल पठनीय संग्रह है।", - "%s is created.": "%s बनाया गया है।", - "Files moved.": "फ़ाइलें मूव की गईं।", - "Files deleted.": "फ़ाइलें हटा दी गईं।", - "The file unarchived.": "फ़ाइल अनआर्काइव की गई है।", - "The file(s) archived.": "फ़ाइल(फ़ाइलें) आर्काइव की गई हैं।", - "Updated.": "अद्यतित।", - "No search result found.": "कोई खोज परिणाम नहीं मिले।", - "Are you sure you want to move these files?": "क्या आप वाकई इन फ़ाइलों को स्थानांतरित करना चाहते हैं?", - "File Size": "फ़ाइल का आकार", - "Last Modified": "अंतिम संशोधित", - "Select Folders": "फ़ोल्डर चुनें", - "Clear all": "सब कुछ साफ़ करें", - "Clear only successful": "केवल सफल साफ़ करें", - "Drag and drop the files/folders to here or click here.": "फ़ाइलें/फ़ोल्डर्स यहाँ खींचें या यहाँ क्लिक करें।", - "Release to drop these files.": "इन फ़ाइलों को छोड़ने के लिए रिलीज़ करें।", - "Canceled": "रद्द कर दिया गया", - "Done": "हो गया", - "Network Error, Unable establish connection to the server or interrupted.": "नेटवर्क त्रुटि, सर्वर से कनेक्शन स्थापित नहीं कर सकता या रुका हुआ है।", - "Pending upload": "अपलोड प्रलंबित", - "Please select file to upload first.": "कृपया पहले अपलोड करने के लिए फ़ाइल का चयन करें।", - "About": "के बारे में", - "Settings": "सेटिंग्स", - "Shortcuts": "शॉर्टकट", - "Reset": "रीसेट", - 'Escape': 'बाहर निकलें', - 'Search': 'खोजें', - 'Toggle Sidebar': 'साइडबार टॉगल करें', - 'Open Settings': 'सेटिंग्स खोलें', - "Reset all settings to default": "सभी सेटिंग्स को डिफ़ॉल्ट पर रीसेट करें", - "Use Metric Units": "मीट्रिक इकाइयों का उपयोग करें", - "Saved.": "सहेजा गया।", - "Reset Settings": "सेटिंग्स रीसेट करें", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "डाउनलोड काम नहीं करता? आप सीधे दायाँ क्लिक करके \"डाउनलोड\" बटन पर क्लिक करके \"लिंक को सहेजें...\" चुन सकते हैं।", - "Theme": "थीम", - "Dark": "डार्क", - "Light": "लाइट", - "System": "सिस्टम", - "Target Directory": "लक्षित निर्देशिका", - "Select": "चयन", - "Compact list view": "संक्षिप्त सूची दृश्य", - "Show thumbnails": "थंबनेल दिखाएं", - "Persist path on reload": "पुनः लोड पर पथ बनाए रखें", - "Select All": "सभी का चयन करें", - "Pinned Folders": "स्थापित फ़ोल्डर्स", - "No folders pinned": "कोई फ़ोल्डर स्थापित नहीं है", - "Pin Folder": "फ़ोल्डर स्थापित करें", - "Unpin Folder": "फ़ोल्डर को अनस्थापित करें", - "Project home": "परियोजना होम", - "Follow on GitHub": "GitHub पर फॉलो करें", - "Customize your experience with the following settings": "निम्नलिखित सेटिंग्स के साथ अपने अनुभव को अनुकूलित करें", - "uppy": uppyLocaleHi -} + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/ja.js b/src/locales/ja.js new file mode 100644 index 00000000..fffc9c4d --- /dev/null +++ b/src/locales/ja.js @@ -0,0 +1,7 @@ +import locale from "./json/ja.json"; +import uppyLocale from "@uppy/locales/lib/ja_JP.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/json/ar.json b/src/locales/json/ar.json new file mode 100644 index 00000000..dd5a2ab2 --- /dev/null +++ b/src/locales/json/ar.json @@ -0,0 +1,102 @@ +{ + "Language": "اللّغة", + "Create": "إنشاء", + "Close": "إغلاق", + "Cancel": "إلغاء", + "Save": "حفظ", + "Edit": "تعديل", + "Crop": "قص", + "New Folder": "مجلد جديد", + "New File": "ملف جديد", + "Rename": "إعادة تسمية", + "Delete": "حذف", + "Upload": "رفع", + "Download": "تحميل", + "Archive": "أرشفة", + "Unarchive": "إلغاء الأرشفة", + "Open": "فتح", + "Open containing folder": "فتح المجلد المحتوى", + "Refresh": "تحديث", + "Preview": "معاينة", + "Toggle Full Screen": "عرض مِلء الشاشة", + "Change View": "تغيير عرض الملفات", + "Storage": "التخزين", + "Go up a directory": "إذهب لِأعلى", + "Search anything..": "ابحث عن أي شيء..", + "Name": "الإسم", + "Size": "الحجم", + "Date": "التاريخ", + "Filepath": "مسار الملف", + "Folder Name": "اسم المجلد", + "File Name": "اسم الملف", + "Move files": "نقل الملفات", + "Yes, Move!": "نعم, انقل!", + "Delete files": "حذف الملفات", + "Yes, Delete!": "نعم, احذف!", + "Upload Files": "ارفع الملفات", + "No files selected!": "لم يتم تحديد أي ملفات", + "Select Files": "تحديد ملفات", + "Archive the files": "أرشفة الملفات", + "Unarchive the files": "إلغاء أرشفة الملفات", + "The archive will be unarchived at": "سيتم إلغاء أرشفة الأرشيف في", + "Archive name. (.zip file will be created)": "اسم الأرشيف. (سيتم إنشاء ملف zip)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder هو أحد مكونات مدير الملفات لـ Vue 3.", + "Create a new folder": "إنشاء مجلد جديد", + "Create a new file": "إنشاء ملف جديد", + "Are you sure you want to delete these files?": "هل أنت متأكد من أنك تريد حذف هذه الملفات؟", + "This action cannot be undone.": "لا يمكن التراجع عن هذا الإجراء.", + "Search results for": "نتائج البحث عن", + "%s item(s) selected.": "تم تحديد %s عنصر.", + "%s is renamed.": "%s تمت إعادة تسمية.", + "This is a readonly storage.": "هذه مساحة تخزين للقراءة فقط.", + "%s is created.": "%s تم إنشاء.", + "Files moved.": "تم نقل الملفات.", + "Files deleted.": "تم حذف الملفات.", + "The file unarchived.": "تم إلغاء أرشفة الملف.", + "The file(s) archived.": "تم إلغاء أرشفة الملف (الملفات).", + "Updated.": "تم التحديث.", + "No search result found.": "لا يوجد نتائج بحث.", + "Are you sure you want to move these files?": "هل أنت متأكد من أنك تريد نقل هذه الملفات؟", + "File Size": "حجم الملف", + "Last Modified": "اّخر تعديل", + "Select Folders": "حدد المجلدات", + "Clear all": "مسح الجميع", + "Clear only successful": "مسح الناجح فقط", + "Drag and drop the files/folders to here or click here.": "اسحب وأفلت الملفات/المجلدات إلى هنا أو قم بالنقر هنا.", + "Release to drop these files.": "حرر لإسقاط هذه الملفات.", + "Canceled": "مُلغى", + "Done": "تم", + "Network Error, Unable establish connection to the server or interrupted.": "خطأ في الشبكة، تعذر إنشاء اتصال بالخادم أو انقطاعه.", + "Pending upload": "في انتظار التحميل", + "Please select file to upload first.": "الرجاء تحديد ملف أولاً لرفعه", + "About": "حول", + "Settings": "الإعدادات", + "Shortcuts": "الإختصارات", + "Reset": "إعادة ضبط", + "Escape": "إلغاء", + "Search": "بحث", + "Toggle Sidebar": "إظهار/إخفاء الشّريط الجانبي", + "Open Settings": "فتح الإعدادات", + "Reset all settings to default": "إعادة ضبط جميع الإعدادات إلى الوضع الافتراضي", + "Use Metric Units": "استخدم وحدات القياس المتريّة", + "Saved.": "تم الحفظ", + "Reset Settings": "إعادة ضبط الإعدادات", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "هل التنزيل لا يعمل؟ يمكنك محاولة النقر بزر الفأرة الأيمن على زر \"تنزيل\"، ثم تحديد \"حفظ الرابط باسم...", + "Theme": "السمة", + "Dark": "مظلم", + "Light": "فاتح", + "System": "النّظام", + "Target Directory": "المجلد الهدف", + "Select": "اختيار", + "Compact list view": "القائمة المضغوطة", + "Show thumbnails": "إظهار صّور المعاينة المصغّرة", + "Persist path on reload": "البقاء على المسار عند إعادة التحميل", + "Select All": "تحديد الجميع", + "Pinned Folders": "المجلدات المثبتة", + "No folders pinned": "لا يوجد ملفات مثبّتة", + "Pin Folder": "تثبيت المجلّد", + "Unpin Folder": "إلغاء تثبيت المجلّد", + "Project home": "صفحة المشروع", + "Follow on GitHub": "تابعنا على GitHub", + "Customize your experience with the following settings": "قم بتخصيص تجربتك بالإعدادات التّالية" +} diff --git a/src/locales/json/de.json b/src/locales/json/de.json new file mode 100644 index 00000000..0482d027 --- /dev/null +++ b/src/locales/json/de.json @@ -0,0 +1,102 @@ +{ + "Language": "Sprache", + "Create": "Erstellen", + "Close": "Schließen", + "Cancel": "Abbrechen", + "Save": "Speichern", + "Edit": "Bearbeiten", + "Crop": "Zuschneiden", + "New Folder": "Neuer Ordner", + "New File": "Neue Datei", + "Rename": "Umbenennen", + "Delete": "Löschen", + "Upload": "Hochladen", + "Download": "Herunterladen", + "Archive": "Archivieren", + "Unarchive": "Dearchivieren", + "Open": "Öffnen", + "Open containing folder": "Enthaltenden Ordner öffnen", + "Refresh": "Aktualisieren", + "Preview": "Vorschau", + "Toggle Full Screen": "Vollbild umschalten", + "Change View": "Ansicht ändern", + "Storage": "Speicher", + "Go up a directory": "Ein Verzeichnis hochgehen", + "Search anything..": "Suche etwas..", + "Name": "Name", + "Size": "Größe", + "Date": "Datum", + "Filepath": "Dateipfad", + "Folder Name": "Ordnername", + "File Name": "Dateiname", + "Move files": "Dateien verschieben", + "Yes, Move!": "Ja, Verschieben!", + "Delete files": "Dateien löschen", + "Yes, Delete!": "Ja, Löschen!", + "Upload Files": "Dateien hochladen", + "No files selected!": "Keine Dateien ausgewählt!", + "Select Files": "Dateien auswählen", + "Archive the files": "Dateien archivieren", + "Unarchive the files": "Dateien dearchivieren", + "The archive will be unarchived at": "Das Archiv wird dearchiviert bei", + "Archive name. (.zip file will be created)": "Archivname. (.zip Datei wird erstellt)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder ist eine Dateimanager-Komponente für Vue 3.", + "Create a new folder": "Einen neuen Ordner erstellen", + "Create a new file": "Eine neue Datei erstellen", + "Are you sure you want to delete these files?": "Sind Sie sicher, dass Sie diese Dateien löschen möchten?", + "This action cannot be undone.": "Diese Aktion kann nicht rückgängig gemacht werden.", + "Search results for": "Suchergebnisse für", + "%s item(s) selected.": "%s Element(e) ausgewählt.", + "%s is renamed.": "%s wurde umbenannt.", + "This is a readonly storage.": "Dies ist ein schreibgeschützter Speicher.", + "%s is created.": "%s wurde erstellt.", + "Files moved.": "Dateien verschoben.", + "Files deleted.": "Dateien gelöscht.", + "The file unarchived.": "Die Datei wurde dearchiviert.", + "The file(s) archived.": "Die Datei(en) wurden archiviert.", + "Updated.": "Aktualisiert.", + "No search result found.": "Keine Suchergebnisse gefunden.", + "Are you sure you want to move these files?": "Sind Sie sicher, dass Sie diese Dateien verschieben möchten?", + "File Size": "Dateigröße", + "Last Modified": "Zuletzt geändert", + "Select Folders": "Ordner auswählen", + "Clear all": "Alles löschen", + "Clear only successful": "Nur erfolgreiche löschen", + "Drag and drop the files/folders to here or click here.": "Ziehen Sie die Dateien/Ordner hierher oder klicken Sie hier.", + "Release to drop these files.": "Lassen Sie los, um diese Dateien abzulegen.", + "Canceled": "Abgebrochen", + "Done": "Fertig", + "Network Error, Unable establish connection to the server or interrupted.": "Netzwerkfehler, Verbindung zum Server kann nicht hergestellt oder unterbrochen werden.", + "Pending upload": "Ausstehender", + "Please select file to upload first.": "Bitte wählen Sie zuerst eine Datei zum Hochladen aus.", + "About": "Über", + "Settings": "Einstellungen", + "Shortcuts": "Verknüpfungen", + "Reset": "Zurücksetzen", + "Escape": "Escape", + "Search": "Suche", + "Toggle Sidebar": "Seitenleiste umschalten", + "Open Settings": "Einstellungen öffnen", + "Reset all settings to default": "Alle Einstellungen auf Standard zurücksetzen", + "Use Metric Units": "Use Metric Units", + "Saved.": "Gespeichert.", + "Reset Settings": "Einstellungen zurücksetzen", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Der Download funktioniert nicht? Sie können versuchen, mit der rechten Maustaste auf die Schaltfläche \"Download\" zu klicken und \"Link speichern unter...\" auszuwählen.", + "Theme": "Thema", + "Dark": "Dunkel", + "Light": "Licht", + "System": "System", + "Target Directory": "Zielverzeichnis", + "Select": "Auswählen", + "Compact list view": "Kompakte Listenansicht", + "Show thumbnails": "Miniaturansichten anzeigen", + "Persist path on reload": "Pfad beim Neuladen beibehalten", + "Select All": "Alle auswählen", + "Pinned Folders": "Angeheftete Ordner", + "No folders pinned": "Keine Ordner angeheftet", + "Pin Folder": "Ordner anheften", + "Unpin Folder": "Ordner lösen", + "Project home": "Projekt-Startseite", + "Follow on GitHub": "Folgen Sie auf GitHub", + "Customize your experience with the following settings": "Passen Sie Ihr Erlebnis mit den folgenden Einstellungen an" +} diff --git a/src/locales/json/en.json b/src/locales/json/en.json new file mode 100644 index 00000000..2d0b9010 --- /dev/null +++ b/src/locales/json/en.json @@ -0,0 +1,102 @@ +{ + "Language": "Language", + "Create": "Create", + "Close": "Close", + "Cancel": "Cancel", + "Save": "Save", + "Edit": "Edit", + "Crop": "Crop", + "New Folder": "New Folder", + "New File": "New File", + "Rename": "Rename", + "Delete": "Delete", + "Upload": "Upload", + "Download": "Download", + "Archive": "Archive", + "Unarchive": "Unarchive", + "Open": "Open", + "Open containing folder": "Open containing folder", + "Refresh": "Refresh", + "Preview": "Preview", + "Toggle Full Screen": "Toggle Full Screen", + "Change View": "Change View", + "Storage": "Storage", + "Go up a directory": "Go up a directory", + "Search anything..": "Search anything..", + "Name": "Name", + "Size": "Size", + "Date": "Date", + "Filepath": "Filepath", + "Folder Name": "Folder Name", + "File Name": "File Name", + "Move files": "Move files", + "Yes, Move!": "Yes, Move!", + "Delete files": "Delete files", + "Yes, Delete!": "Yes, Delete!", + "Upload Files": "Upload Files", + "No files selected!": "No files selected!", + "Select Files": "Select Files", + "Archive the files": "Archive the files", + "Unarchive the files": "Unarchive the files", + "The archive will be unarchived at": "The archive will be unarchived at", + "Archive name. (.zip file will be created)": "Archive name. (.zip file will be created)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder is a file manager component for Vue 3.", + "Create a new folder": "Create a new folder", + "Create a new file": "Create a new file", + "Are you sure you want to delete these files?": "Are you sure you want to delete these files?", + "This action cannot be undone.": "This action cannot be undone.", + "Search results for": "Search results for", + "%s item(s) selected.": "%s item(s) selected.", + "%s is renamed.": "%s is renamed.", + "This is a readonly storage.": "This is a readonly storage.", + "%s is created.": "%s is created.", + "Files moved.": "Files moved.", + "Files deleted.": "Files deleted.", + "The file unarchived.": "The file unarchived.", + "The file(s) archived.": "The file(s) archived.", + "Updated.": "Updated.", + "No search result found.": "No search result found.", + "Are you sure you want to move these files?": "Are you sure you want to move these files?", + "File Size": "File Size", + "Last Modified": "Last Modified", + "Select Folders": "Select Folders", + "Clear all": "Clear all", + "Clear only successful": "Clear only successful", + "Drag and drop the files/folders to here or click here.": "Drag and drop the files/folders to here or click here.", + "Release to drop these files.": "Release to drop these files.", + "Canceled": "Canceled", + "Done": "Done", + "Network Error, Unable establish connection to the server or interrupted.": "Network Error, Unable establish connection to the server or interrupted.", + "Pending upload": "Pending", + "Please select file to upload first.": "Please select file to upload first.", + "About": "About", + "Settings": "Settings", + "Shortcuts": "Shortcuts", + "Reset": "Reset", + "Escape": "Escape", + "Search": "Search", + "Toggle Sidebar": "Toggle Sidebar", + "Open Settings": "Open Settings", + "Reset all settings to default": "Reset all settings to default", + "Use Metric Units": "Use Metric Units", + "Saved.": "Saved.", + "Reset Settings": "Reset Settings", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".", + "Theme": "Theme", + "Dark": "Dark", + "Light": "Light", + "System": "System", + "Target Directory": "Target Directory", + "Select": "Select", + "Compact list view": "Compact list view", + "Show thumbnails": "Show thumbnails", + "Persist path on reload": "Persist path on reload", + "Select All": "Select All", + "Pinned Folders": "Pinned Folders", + "No folders pinned": "No folders pinned", + "Pin Folder": "Pin Folder", + "Unpin Folder": "Unpin Folder", + "Project home": "Project home", + "Follow on GitHub": "Follow on GitHub", + "Customize your experience with the following settings": "Customize your experience with the following settings" +} diff --git a/src/locales/json/fa.json b/src/locales/json/fa.json new file mode 100644 index 00000000..ecae6b2d --- /dev/null +++ b/src/locales/json/fa.json @@ -0,0 +1,102 @@ +{ + "Language": "زبان", + "Create": "ایجاد", + "Close": "بستن", + "Cancel": "انصراف", + "Save": "ذخیره", + "Edit": "ویرایش", + "Crop": "برش تصویر", + "New Folder": "پوشه جدید", + "New File": "فایل جدید", + "Rename": "تغییر نام", + "Delete": "حذف", + "Upload": "آپلود", + "Download": "دانلود", + "Archive": "فشرده سازی", + "Unarchive": "باز کردن فایل فشرده", + "Open": "باز کردن", + "Open containing folder": "محتوای پوشه را باز کن!", + "Refresh": "بارکذاری مجدد", + "Preview": "پیشنمایش", + "Toggle Full Screen": "تمام تصویر کردن", + "Change View": "تغییر نوع نمایش", + "Storage": "فضا", + "Go up a directory": "برو به پوشه", + "Search anything..": "به دنبال چه چیزی هستید ؟ جستجو کنید ...", + "Name": "نام", + "Size": "سایز", + "Date": "تاریخ انتشار", + "Filepath": "مسیر فایل", + "Folder Name": "نام پوشه", + "File Name": "نام فایل", + "Move files": "انتقال فایل ها", + "Yes, Move!": "بله، انتقال بده!", + "Delete files": "پاک کردن فایل ها", + "Yes, Delete!": "بله، پاک کن!", + "Upload Files": "آپلود کردن فایل ها", + "No files selected!": "هیچ فایلی انتخاب نشده است.", + "Select Files": "انتخاب فایل ها", + "Archive the files": "فشرده سازی فایل ها", + "Unarchive the files": "باز کردن فایل های فشرده", + "The archive will be unarchived at": "فایل فشرده سازه در این مسیر باز میشود: ", + "Archive name. (.zip file will be created)": "نام فایل فشرده", + "Vuefinder is a file manager component for vue 3.": "Vuefinder یک کتابخانه مدیریت فایل ها برای Vue3 میباشد.", + "Create a new folder": "ایجاد پوشه جدید", + "Create a new file": "ایجاد فایل جدید", + "Are you sure you want to delete these files?": "آیا از حذف فایل ها مطمئن هستید ؟", + "This action cannot be undone.": "این تغییرات قابل بازگشت نیست!", + "Search results for": "نتیجه جستجو برای", + "%s item(s) selected.": "%s آیتم(های) انتخاب شده", + "%s is renamed.": "تغییر نام برای %s صورت گرفت.", + "This is a readonly storage.": "این فضا فقط قابل خواندن است!", + "%s is created.": "%s ساخته شد!", + "Files moved.": "فایل(ها) انقال یافتند.", + "Files deleted.": "فایل(ها) حذف شدند.", + "The file unarchived.": "فایل فشرده شده باز شد.", + "The file(s) archived.": "فایل(ها) فشرده سازی شدند.", + "Updated.": "آپدیت شد.", + "No search result found.": "هیچ نتیجه ای یافت نشد.", + "Are you sure you want to move these files?": "آیا برای انتقال فایل ها مطمئن هستید ؟", + "File Size": "سایز فایل", + "Last Modified": "آخرین ویرایش", + "Select Folders": "Select Folders", + "Clear all": "پاک کردن همه", + "Clear only successful": "پاک کردن فقط موفق", + "Drag and drop the files/folders to here or click here.": "فایل ها/پوشه ها را به اینجا بکشید یا اینجا کلیک کنید.", + "Release to drop these files.": "رها کنید تا این فایل ها را رها کنید.", + "Canceled": "لغو شد", + "Done": "انجام شد", + "Network Error, Unable establish connection to the server or interrupted.": "خطای شبکه، اتصال به سرور برقرار نشد یا قطع شد.", + "Pending upload": "آپلود در حال انتظار", + "Please select file to upload first.": "لطفا ابتدا فایلی را برای آپلود انتخاب کنید.", + "About": "درباره", + "Settings": "تنظیمات", + "Shortcuts": "میانبر ها", + "Reset": "بازنشانی", + "Escape": "خروج", + "Search": "جستجو", + "Toggle Sidebar": "نمایش/مخفی کردن نوار کناری", + "Open Settings": "باز کردن تنظیمات", + "Reset all settings to default": "بازنشانی تمام تنظیمات به حالت پیش فرض", + "Use Metric Units": "استفاده از واحد های متریک", + "Saved.": "ذخیره شد.", + "Reset Settings": "بازنشانی تنظیمات", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "دانلود کار نمیکند؟ میتوانید روی دکمه \"دانلود\" راست کلیک کرده و \"ذخیره لینک به عنوان...\" را انتخاب کنید", + "Theme": "تم", + "Dark": "تاریک", + "Light": "روشن", + "System": "سیستم", + "Target Directory": "پوشه مقصد", + "Select": "انتخاب", + "Compact list view": "نمایش لیست کوچک", + "Show thumbnails": "نمایش تصاویر کوچک", + "Persist path on reload": "مسیر را در هنگام بارگذاری مجدد ذخیره کن", + "Select All": "انتخاب همه", + "Pinned Folders": "پوشه های سنجاق شده", + "No folders pinned": "هیچ پوشه ای سنجاق نشده است", + "Pin Folder": "سنجاق کردن پوشه", + "Unpin Folder": "حذف سنجاق پوشه", + "Project home": "صفحه پروژه", + "Follow on GitHub": "دنبال کردن در گیت هاب", + "Customize your experience with the following settings": "تجربه خود را با تنظیمات زیر سفارشی کنید" +} diff --git a/src/locales/json/fr.json b/src/locales/json/fr.json new file mode 100644 index 00000000..464133ec --- /dev/null +++ b/src/locales/json/fr.json @@ -0,0 +1,102 @@ +{ + "Language": "Langue", + "Create": "Créer", + "Close": "Fermer", + "Cancel": "Annuler", + "Save": "Enregistrer", + "Edit": "Modifier", + "Crop": "Recadrer", + "New Folder": "Nouveau dossier", + "New File": "Nouveau fichier", + "Rename": "Renommer", + "Delete": "Supprimer", + "Upload": "Télécharger", + "Download": "Télécharger", + "Archive": "Archiver", + "Unarchive": "Désarchiver", + "Open": "Ouvrir", + "Open containing folder": "Ouvrir le dossier contenant", + "Refresh": "Rafraîchir", + "Preview": "Aperçu", + "Toggle Full Screen": "Basculer en plein écran", + "Change View": "Changer de vue", + "Storage": "Stockage", + "Go up a directory": "Remonter d'un répertoire", + "Search anything..": "Rechercher...", + "Name": "Nom", + "Size": "Taille", + "Date": "Date", + "Filepath": "Chemin du fichier", + "Folder Name": "Nom du dossier", + "File Name": "Nom du fichier", + "Move files": "Déplacer les fichiers", + "Yes, Move!": "Oui, déplacer!", + "Delete files": "Supprimer les fichiers", + "Yes, Delete!": "Oui, supprimer!", + "Upload Files": "Télécharger des fichiers", + "No files selected!": "Aucun fichier sélectionné!", + "Select Files": "Sélectionner des fichiers", + "Archive the files": "Archiver les fichiers", + "Unarchive the files": "Désarchiver les fichiers", + "The archive will be unarchived at": "L'archive sera désarchivée à", + "Archive name. (.zip file will be created)": "Nom de l'archive. (un fichier .zip sera créé)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder est un composant de gestionnaire de fichiers pour vue 3.", + "Create a new folder": "Créer un nouveau dossier", + "Create a new file": "Créer un nouveau fichier", + "Are you sure you want to delete these files?": "Êtes-vous sûr de vouloir supprimer ces fichiers?", + "This action cannot be undone.": "Cette action ne peut pas être annulée.", + "Search results for": "Résultats de recherche pour", + "%s item(s) selected.": "%s élément(s) sélectionné(s).", + "%s is renamed.": "%s est renommé.", + "This is a readonly storage.": "C'est un stockage en lecture seule.", + "%s is created.": "%s est créé.", + "Files moved.": "Fichiers déplacés.", + "Files deleted.": "Fichiers supprimés.", + "The file unarchived.": "Le fichier désarchivé.", + "The file(s) archived.": "Le(s) fichier(s) archivé(s).", + "Updated.": "Mis à jour.", + "No search result found.": "Aucun résultat de recherche trouvé.", + "Are you sure you want to move these files?": "Êtes-vous sûr de vouloir déplacer ces fichiers?", + "File Size": "Taille du fichier", + "Last Modified": "Dernière modification", + "Select Folders": "Sélectionner des dossiers", + "Clear all": "Tout effacer", + "Clear only successful": "Effacer uniquement les réussites", + "Drag and drop the files/folders to here or click here.": "Faites glisser les fichiers/dossiers ici ou cliquez ici.", + "Release to drop these files.": "Relâchez pour déposer ces fichiers.", + "Canceled": "Annulé", + "Done": "Terminé", + "Network Error, Unable establish connection to the server or interrupted.": "Erreur réseau, impossible d'établir une connexion avec le serveur ou interrompue.", + "Pending upload": "Téléchargement en attente", + "Please select file to upload first.": "Veuillez d'abord sélectionner le fichier à télécharger.", + "About": "À propos", + "Settings": "Paramètres", + "Shortcuts": "Raccourcis", + "Reset": "Réinitialiser", + "Escape": "Échap", + "Search": "Rechercher", + "Toggle Sidebar": "Basculer la barre latérale", + "Open Settings": "Ouvrir les paramètres", + "Reset all settings to default": "Réinitialiser tous les paramètres par défaut", + "Use Metric Units": "Utiliser les unités métriques", + "Saved.": "Enregistré.", + "Reset Settings": "Réinitialiser les paramètres", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Le téléchargement ne fonctionne pas? Vous pouvez essayer de cliquer avec le bouton droit sur le bouton \"Télécharger\", puis sélectionner \"Enregistrer le lien sous...\".", + "Theme": "Thème", + "Dark": "Sombre", + "Light": "Clair", + "System": "Système", + "Target Directory": "Répertoire cible", + "Select": "Sélectionner", + "Compact list view": "Vue en liste compacte", + "Show thumbnails": "Afficher les miniatures", + "Persist path on reload": "Conserver le chemin lors du rechargement", + "Select All": "Tout sélectionner", + "Pinned Folders": "Dossiers épinglés", + "No folders pinned": "Aucun dossier épinglé", + "Pin Folder": "Épingler le dossier", + "Unpin Folder": "Détacher le dossier", + "Project home": "Accueil du projet", + "Follow on GitHub": "Suivre sur GitHub", + "Customize your experience with the following settings": "Personnalisez votre expérience avec les paramètres suivants" +} diff --git a/src/locales/json/he.json b/src/locales/json/he.json new file mode 100644 index 00000000..64652d96 --- /dev/null +++ b/src/locales/json/he.json @@ -0,0 +1,102 @@ +{ + "Language": "שפה", + "Create": "יצירה", + "Close": "סגירה", + "Cancel": "ביטול", + "Save": "שמירה", + "Edit": "עריכה", + "Crop": "חיתוך", + "New Folder": "תיקייה חדשה", + "New File": "קובץ חדש", + "Rename": "שינוי שם", + "Delete": "מחיקה", + "Upload": "העלאה", + "Download": "הורדה", + "Archive": "לדחוס", + "Unarchive": "לחלץ", + "Open": "פתיחה", + "Open containing folder": "פתיחת מיקום קובץ", + "Refresh": "רענון", + "Preview": "תצוגה מקדימה", + "Toggle Full Screen": "שינוי מצב מסך מלא", + "Change View": "שינוי תצוגה", + "Storage": "אחסון", + "Go up a directory": "מעבר תיקייה אחת למעלה", + "Search anything..": "חיפוש...", + "Name": "שם", + "Size": "גודל", + "Date": "תאריך", + "Filepath": "נתיב קובץ", + "Folder Name": "שם התיקייה", + "File Name": "שם הקובץ", + "Move files": "העברת קבצים", + "Yes, Move!": "כן, להעביר!", + "Delete files": "מחיקת קבצים", + "Yes, Delete!": "כן, למחוק!", + "Upload Files": "העלאת קבצים", + "No files selected!": "לא נבחרו קבצים", + "Select Files": "בחירת קבצים", + "Archive the files": "דחיסת קבצים אלו", + "Unarchive the files": "חילוץ קבצים אלו", + "The archive will be unarchived at": "הארכיןם יוחלץ ל:", + "Archive name. (.zip file will be created)": "שם הארכיון. (סיומת .zip תווסף)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder הינו רכיב מנהל קבצים עבור vue 3", + "Create a new folder": "יצירת תיקייה חדשה", + "Create a new file": "יצירת קובץ חדש", + "Are you sure you want to delete these files?": "האם בטוח למחוק קבצים אלה?", + "This action cannot be undone.": "לא ניתן לבטל פעולה זו.", + "Search results for": "תוצאות חיפוש עבור", + "%s item(s) selected.": "%s פריט(ים) נבחרו.", + "%s is renamed.": "השם של %s השתנה.", + "This is a readonly storage.": "זהו אחסון לקריאה בלבד.", + "%s is created.": "%s נוצר", + "Files moved.": "הקבצים הועברו.", + "Files deleted.": "הקבצים נמחקו", + "The file unarchived.": "הקבצים חולצו.", + "The file(s) archived.": "הקובצים נדחסו.", + "Updated.": "התעדכן", + "No search result found.": "לא נמצאו תוצאות לחיפוש.", + "Are you sure you want to move these files?": "האם בטוח להעביר קבצים אלו?", + "File Size": "גודל קובץ", + "Last Modified": "תאריך שינוי", + "Select Folders": "Select Folders", + "Clear all": "נקה הכל", + "Clear only successful": "נקה רק הצלחות", + "Drag and drop the files/folders to here or click here.": "גרור ושחרר את הקבצים/תיקיות לכאן או לחץ כאן.", + "Release to drop these files.": "שחרר כדי לשחרר את הקבצים.", + "Canceled": "בוטל", + "Done": "הסתיים", + "Network Error, Unable establish connection to the server or interrupted.": "שגיאת רשת, לא ניתן להתחבר לשרת או החיבור נקטע.", + "Pending upload": "העלאה ממתינה", + "Please select file to upload first.": "בחר קובץ להעלאה תחילה.", + "About": "אודות", + "Settings": "הגדרות", + "Shortcuts": "קיצורי דרך", + "Reset": "איפוס", + "Escape": "ביטול", + "Search": "חיפוש", + "Toggle Sidebar": "החלף סרגל צד", + "Open Settings": "פתח הגדרות", + "Reset all settings to default": "איפוס כל ההגדרות לברירת מחדל", + "Use Metric Units": "השתמש ביחידות מטריות", + "Saved.": "נשמר", + "Reset Settings": "איפוס הגדרות", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "ההורדה לא עובדה? ניתן לנסות ללחוץ ימינה על כפתור \"הורדה\", ולבחור \"שמור קישור בשם...\".", + "Theme": "ערכת נושא", + "Dark": "כהה", + "Light": "בהיר", + "System": "מערכת", + "Target Directory": "תיקיית יעד", + "Select": "בחר", + "Compact list view": "תצוגת רשימה קומפקטית", + "Show thumbnails": "הצג תמונות ממוזערות", + "Persist path on reload": "שמור נתיב בטעינה מחדש", + "Select All": "בחר הכל", + "Pinned Folders": "תיקיות מוצמדות", + "No folders pinned": "אין תיקיות מוצמדות", + "Pin Folder": "מוצמד תיקייה", + "Unpin Folder": "בטל מוצמד תיקייה", + "Project home": "דף הבית של הפרויקט", + "Follow on GitHub": "עקוב ב-GitHub", + "Customize your experience with the following settings": "התאמת חוויתך עם ההגדרות הבאות" +} diff --git a/src/locales/json/hi.json b/src/locales/json/hi.json new file mode 100644 index 00000000..ec755da2 --- /dev/null +++ b/src/locales/json/hi.json @@ -0,0 +1,102 @@ +{ + "Language": "भाषा", + "Create": "बनाएँ", + "Close": "बंद करें", + "Cancel": "रद्द करें", + "Save": "सहेजें", + "Edit": "संपादित करें", + "Crop": "कटवा दें", + "New Folder": "नया फ़ोल्डर", + "New File": "नया फ़ाइल", + "Rename": "नाम बदलें", + "Delete": "हटाएं", + "Upload": "अपलोड करें", + "Download": "डाउनलोड करें", + "Archive": "आर्काइव", + "Unarchive": "अनआर्काइव", + "Open": "खोलें", + "Open containing folder": "धारक फोल्डर खोलें", + "Refresh": "ताजगी करें", + "Preview": "पूर्वावलोकन", + "Toggle Full Screen": "पूर्ण स्क्रीन टॉगल करें", + "Change View": "दृश्य बदलें", + "Storage": "संग्रहण", + "Go up a directory": "एक निर्देशिका ऊपर जाएं", + "Search anything..": "कुछ भी खोजें..", + "Name": "नाम", + "Size": "आकार", + "Date": "तारीख", + "Filepath": "फ़ाइल पथ", + "Folder Name": "फ़ोल्डर नाम", + "File Name": "फ़ाइल नाम", + "Move files": "फ़ाइलें ले जाएं", + "Yes, Move!": "हां, ले जाएं!", + "Delete files": "फ़ाइलें हटाएं", + "Yes, Delete!": "हां, हटाएं!", + "Upload Files": "फ़ाइलें अपलोड करें", + "No files selected!": "कोई फ़ाइलें चयनित नहीं हैं!", + "Select Files": "फ़ाइलें चयनित करें", + "Archive the files": "फ़ाइलों को संग्रहित करें", + "Unarchive the files": "फ़ाइलों को संग्रहण से निकालें", + "The archive will be unarchived at": "संग्रहण इस तिथि पर से निकाला जाएगा", + "Archive name. (.zip file will be created)": "संग्रहण का नाम (.zip फ़ाइल बनाई जाएगी)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder व्यू 3 के लिए एक फ़ाइल प्रबंधक घटक है।", + "Create a new folder": "नया फ़ोल्डर बनाएं", + "Create a new file": "नई फ़ाइल बनाएं", + "Are you sure you want to delete these files?": "क्या आप वाकई इन फ़ाइलों को हटाना चाहते हैं?", + "This action cannot be undone.": "इस क्रिया को पूर्वस्थित नहीं किया जा सकता है।", + "Search results for": "के लिए खोज परिणाम", + "%s item(s) selected.": "%s आइटम(आइटम) चयनित।", + "%s is renamed.": "%s का नाम बदला गया है।", + "This is a readonly storage.": "यह एक केवल पठनीय संग्रह है।", + "%s is created.": "%s बनाया गया है।", + "Files moved.": "फ़ाइलें मूव की गईं।", + "Files deleted.": "फ़ाइलें हटा दी गईं।", + "The file unarchived.": "फ़ाइल अनआर्काइव की गई है।", + "The file(s) archived.": "फ़ाइल(फ़ाइलें) आर्काइव की गई हैं।", + "Updated.": "अद्यतित।", + "No search result found.": "कोई खोज परिणाम नहीं मिले।", + "Are you sure you want to move these files?": "क्या आप वाकई इन फ़ाइलों को स्थानांतरित करना चाहते हैं?", + "File Size": "फ़ाइल का आकार", + "Last Modified": "अंतिम संशोधित", + "Select Folders": "फ़ोल्डर चुनें", + "Clear all": "सब कुछ साफ़ करें", + "Clear only successful": "केवल सफल साफ़ करें", + "Drag and drop the files/folders to here or click here.": "फ़ाइलें/फ़ोल्डर्स यहाँ खींचें या यहाँ क्लिक करें।", + "Release to drop these files.": "इन फ़ाइलों को छोड़ने के लिए रिलीज़ करें।", + "Canceled": "रद्द कर दिया गया", + "Done": "हो गया", + "Network Error, Unable establish connection to the server or interrupted.": "नेटवर्क त्रुटि, सर्वर से कनेक्शन स्थापित नहीं कर सकता या रुका हुआ है।", + "Pending upload": "अपलोड प्रलंबित", + "Please select file to upload first.": "कृपया पहले अपलोड करने के लिए फ़ाइल का चयन करें।", + "About": "के बारे में", + "Settings": "सेटिंग्स", + "Shortcuts": "शॉर्टकट", + "Reset": "रीसेट", + "Escape": "बाहर निकलें", + "Search": "खोजें", + "Toggle Sidebar": "साइडबार टॉगल करें", + "Open Settings": "सेटिंग्स खोलें", + "Reset all settings to default": "सभी सेटिंग्स को डिफ़ॉल्ट पर रीसेट करें", + "Use Metric Units": "मीट्रिक इकाइयों का उपयोग करें", + "Saved.": "सहेजा गया।", + "Reset Settings": "सेटिंग्स रीसेट करें", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "डाउनलोड काम नहीं करता? आप सीधे दायाँ क्लिक करके \"डाउनलोड\" बटन पर क्लिक करके \"लिंक को सहेजें...\" चुन सकते हैं।", + "Theme": "थीम", + "Dark": "डार्क", + "Light": "लाइट", + "System": "सिस्टम", + "Target Directory": "लक्षित निर्देशिका", + "Select": "चयन", + "Compact list view": "संक्षिप्त सूची दृश्य", + "Show thumbnails": "थंबनेल दिखाएं", + "Persist path on reload": "पुनः लोड पर पथ बनाए रखें", + "Select All": "सभी का चयन करें", + "Pinned Folders": "स्थापित फ़ोल्डर्स", + "No folders pinned": "कोई फ़ोल्डर स्थापित नहीं है", + "Pin Folder": "फ़ोल्डर स्थापित करें", + "Unpin Folder": "फ़ोल्डर को अनस्थापित करें", + "Project home": "परियोजना होम", + "Follow on GitHub": "GitHub पर फॉलो करें", + "Customize your experience with the following settings": "निम्नलिखित सेटिंग्स के साथ अपने अनुभव को अनुकूलित करें" +} diff --git a/src/locales/json/ja.json b/src/locales/json/ja.json new file mode 100644 index 00000000..9e26dfee --- /dev/null +++ b/src/locales/json/ja.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/src/locales/json/nl.json b/src/locales/json/nl.json new file mode 100644 index 00000000..63b808f7 --- /dev/null +++ b/src/locales/json/nl.json @@ -0,0 +1,102 @@ +{ + "Language": "Taal", + "Create": "Aanmaken", + "Close": "Sluiten", + "Cancel": "Annuleren", + "Save": "Opslaan", + "Edit": "Bewerken", + "Crop": "Bijsnijden", + "New Folder": "Nieuwe map", + "New File": "Nieuw bestand", + "Rename": "Hernoemen", + "Delete": "Verwijderen", + "Upload": "Uploaden", + "Download": "Downloaden", + "Archive": "Archiveren", + "Unarchive": "Uitpakken", + "Open": "Openen", + "Open containing folder": "Bevat map openen", + "Refresh": "Vernieuwen", + "Preview": "Voorbeeld", + "Toggle Full Screen": "Volledig scherm wisselen", + "Change View": "Weergave wijzigen", + "Storage": "Opslag", + "Go up a directory": "Ga een map omhoog", + "Search anything..": "Zoek iets...", + "Name": "Naam", + "Size": "Grootte", + "Date": "Datum", + "Filepath": "Bestandspad", + "Folder Name": "Mapnaam", + "File Name": "Bestandsnaam", + "Move files": "Bestanden verplaatsen", + "Yes, Move!": "Ja, verplaatsen!", + "Delete files": "Bestanden verwijderen", + "Yes, Delete!": "Ja, verwijderen!", + "Upload Files": "Bestanden uploaden", + "No files selected!": "Geen bestanden geselecteerd!", + "Select Files": "Bestanden selecteren", + "Archive the files": "Bestanden archiveren", + "Unarchive the files": "Bestanden uitpakken", + "The archive will be unarchived at": "Het archief wordt uitgepakt op", + "Archive name. (.zip file will be created)": "Archiefnaam. (Een .zip-bestand wordt aangemaakt)", + "Vuefinder is a file manager component for Vue 3.": "Vuefinder is een bestandsbeheercomponent voor Vue 3.", + "Create a new folder": "Een nieuwe map aanmaken", + "Create a new file": "Een nieuw bestand aanmaken", + "Are you sure you want to delete these files?": "Weet je zeker dat je deze bestanden wilt verwijderen?", + "This action cannot be undone.": "Deze actie kan niet ongedaan worden gemaakt.", + "Search results for": "Zoekresultaten voor", + "%s item(s) selected.": "%s item(s) geselecteerd.", + "%s is renamed.": "%s is hernoemd.", + "This is a readonly storage.": "Dit is een alleen-lezen opslag.", + "%s is created.": "%s is aangemaakt.", + "Files moved.": "Bestanden verplaatst.", + "Files deleted.": "Bestanden verwijderd.", + "The file unarchived.": "Het bestand is uitgepakt.", + "The file(s) archived.": "De bestanden zijn gearchiveerd.", + "Updated.": "Bijgewerkt.", + "No search result found.": "Geen zoekresultaten gevonden.", + "Are you sure you want to move these files?": "Weet je zeker dat je deze bestanden wilt verplaatsen?", + "File Size": "Bestandsgrootte", + "Last Modified": "Laatst gewijzigd", + "Select Folders": "Mappen selecteren", + "Clear all": "Alles wissen", + "Clear only successful": "Alleen geslaagde wissen", + "Drag and drop the files/folders to here or click here.": "Sleep de bestanden/mappen hierheen of klik hier.", + "Release to drop these files.": "Laat los om deze bestanden te plaatsen.", + "Canceled": "Geannuleerd", + "Done": "Klaar", + "Network Error, Unable establish connection to the server or interrupted.": "Netwerkfout, kan geen verbinding maken met de server of onderbroken.", + "Pending upload": "In wachtrij", + "Please select file to upload first.": "Selecteer eerst een bestand om te uploaden.", + "About": "Over", + "Settings": "Instellingen", + "Shortcuts": "Sneltoetsen", + "Reset": "Resetten", + "Escape": "Escape", + "Search": "Zoeken", + "Toggle Sidebar": "Zijbalk wisselen", + "Open Settings": "Instellingen openen", + "Reset all settings to default": "Alle instellingen terugzetten naar standaard", + "Use Metric Units": "Gebruik metrische eenheden", + "Saved.": "Opgeslagen.", + "Reset Settings": "Instellingen resetten", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Werkt downloaden niet? Klik met de rechtermuisknop op de knop 'Downloaden' en selecteer 'Link opslaan als...'.", + "Theme": "Thema", + "Dark": "Donker", + "Light": "Licht", + "System": "Systeem", + "Target Directory": "Doelmap", + "Select": "Selecteren", + "Compact list view": "Compacte lijstweergave", + "Show thumbnails": "Miniaturen weergeven", + "Persist path on reload": "Pad behouden bij herladen", + "Select All": "Alles selecteren", + "Pinned Folders": "Vastgezette mappen", + "No folders pinned": "Geen mappen vastgezet", + "Pin Folder": "Map vastzetten", + "Unpin Folder": "Map losmaken", + "Project home": "Projectpagina", + "Follow on GitHub": "Volg op GitHub", + "Customize your experience with the following settings": "Pas je ervaring aan met de volgende instellingen" +} diff --git a/src/locales/json/pl.json b/src/locales/json/pl.json new file mode 100644 index 00000000..60d31b6f --- /dev/null +++ b/src/locales/json/pl.json @@ -0,0 +1,102 @@ +{ + "Language": "Język", + "Create": "Utwórz", + "Close": "Zamknij", + "Cancel": "Anuluj", + "Save": "Zapisz", + "Edit": "Edytuj", + "Crop": "Przytnij", + "New Folder": "Nowy folder", + "New File": "Nowy plik", + "Rename": "Zmień nazwę", + "Delete": "Usuń", + "Upload": "Prześlij", + "Download": "Pobierz", + "Archive": "Archiwizuj", + "Unarchive": "Rozpakuj", + "Open": "Otwórz", + "Open containing folder": "Otwórz folder zawierający", + "Refresh": "Odśwież", + "Preview": "Podgląd", + "Toggle Full Screen": "Przełącz tryb pełnoekranowy", + "Change View": "Zmień widok", + "Storage": "Pamięć", + "Go up a directory": "Przejdź do katalogu wyżej", + "Search anything..": "Szukaj czegokolwiek..", + "Name": "Nazwa", + "Size": "Rozmiar", + "Date": "Data", + "Filepath": "Ścieżka pliku", + "Folder Name": "Nazwa folderu", + "File Name": "Nazwa pliku", + "Move files": "Przenieś pliki", + "Yes, Move!": "Tak, przenieś!", + "Delete files": "Usuń pliki", + "Yes, Delete!": "Tak, usuń!", + "Upload Files": "Prześlij pliki", + "No files selected!": "Nie wybrano plików!", + "Select Files": "Wybierz pliki", + "Archive the files": "Zarchiwizuj pliki", + "Unarchive the files": "Rozpakuj pliki", + "The archive will be unarchived at": "Archiwum zostanie rozpakowane w", + "Archive name. (.zip file will be created)": "Nazwa archiwum. (.zip plik zostanie utworzony)", + "Vuefinder is a file manager component for Vue 3.": "Vuefinder to komponent menedżera plików dla Vue 3.", + "Create a new folder": "Utwórz nowy folder", + "Create a new file": "Utwórz nowy plik", + "Are you sure you want to delete these files?": "Czy na pewno chcesz usunąć te pliki?", + "This action cannot be undone.": "Tej operacji nie można cofnąć.", + "Search results for": "Wyniki wyszukiwania dla", + "%s item(s) selected.": "Wybrano %s elementów.", + "%s is renamed.": "%s zostało przemianowane.", + "This is a readonly storage.": "To jest pamięć tylko do odczytu.", + "%s is created.": "%s zostało utworzone.", + "Files moved.": "Pliki zostały przeniesione.", + "Files deleted.": "Pliki zostały usunięte.", + "The file unarchived.": "Plik został rozpakowany.", + "The file(s) archived.": "Plik(i) zostały zarchiwizowane.", + "Updated.": "Zaktualizowano.", + "No search result found.": "Nie znaleziono wyników wyszukiwania.", + "Are you sure you want to move these files?": "Czy na pewno chcesz przenieść te pliki?", + "File Size": "Rozmiar pliku", + "Last Modified": "Ostatnia modyfikacja", + "Select Folders": "Wybierz foldery", + "Clear all": "Wyczyść wszystko", + "Clear only successful": "Wyczyść tylko udane", + "Drag and drop the files/folders to here or click here.": "Przeciągnij i upuść pliki/foldery tutaj lub kliknij tutaj.", + "Release to drop these files.": "Zwolnij przycisk, aby upuścić te pliki.", + "Canceled": "Anulowano", + "Done": "Gotowe", + "Network Error, Unable establish connection to the server or interrupted.": "Błąd sieci, nie można nawiązać połączenia z serwerem lub połączenie zostało przerwane.", + "Pending upload": "Oczekujące przesyłanie", + "Please select file to upload first.": "Proszę najpierw wybrać plik do przesłania.", + "About": "O programie", + "Settings": "Ustawienia", + "Shortcuts": "Skróty", + "Reset": "Resetuj", + "Escape": "Escape", + "Search": "Szukaj", + "Toggle Sidebar": "Przełącz pasek boczny", + "Open Settings": "Otwórz ustawienia", + "Reset all settings to default": "Zresetuj wszystkie ustawienia do domyślnych", + "Use Metric Units": "Użyj jednostek metrycznych", + "Saved.": "Zapisano.", + "Reset Settings": "Zresetuj ustawienia", + "Download doesn't work? You can try right-click 'Download' button, select 'Save link as...'.": "Pobieranie nie działa? Możesz spróbować kliknąć prawym przyciskiem na przycisk 'Pobierz', wybrać 'Zapisz link jako...'.", + "Theme": "Motyw", + "Dark": "Ciemny", + "Light": "Jasny", + "System": "System", + "Target Directory": "Docelowy katalog", + "Select": "Wybierz", + "Compact list view": "Widok listy w formacie kompaktowym", + "Show thumbnails": "Pokaż miniatury", + "Persist path on reload": "Zachowaj ścieżkę po przeładowaniu", + "Select All": "Zaznacz wszystko", + "Pinned Folders": "Przypięte foldery", + "No folders pinned": "Brak przypiętych folderów", + "Pin Folder": "Przypnij folder", + "Unpin Folder": "Odepnij folder", + "Project home": "Strona główna projektu", + "Follow on GitHub": "Śledź na GitHubie", + "Customize your experience with the following settings": "Dostosuj swoje doświadczenie za pomocą poniższych ustawień" +} diff --git a/src/locales/json/ru.json b/src/locales/json/ru.json new file mode 100644 index 00000000..7b214782 --- /dev/null +++ b/src/locales/json/ru.json @@ -0,0 +1,102 @@ +{ + "Language": "Язык", + "Create": "Создать", + "Close": "Закрыть", + "Cancel": "Отмена", + "Save": "Сохранить", + "Edit": "Изменить", + "Crop": "Обрезать", + "New Folder": "Новая папка", + "New File": "Новый файл", + "Rename": "Переименовать", + "Delete": "Удалить", + "Upload": "Загрузить", + "Download": "Скачать", + "Archive": "Архивировать", + "Unarchive": "Разархивировать", + "Open": "Открыть", + "Open containing folder": "Открыть расположение", + "Refresh": "Обновить", + "Preview": "Предпросмотр", + "Toggle Full Screen": "Полный экран", + "Change View": "Изменить вид", + "Storage": "Хранилище", + "Go up a directory": "Вверх", + "Search anything..": "Поиск...", + "Name": "Название", + "Size": "Размер", + "Date": "Дата", + "Filepath": "Путь до файла", + "Folder Name": "Название папки", + "File Name": "Название файла", + "Move files": "Переместить файлы", + "Yes, Move!": "Переместить", + "Delete files": "Удалить файлы", + "Yes, Delete!": "Удалить", + "Upload Files": "Загрузить файлы", + "No files selected!": "Файлы не выбраны!", + "Select Files": "Выбрать файлы", + "Archive the files": "Архивировать файлы", + "Unarchive the files": "Разархивировать файлы", + "The archive will be unarchived at": "Архив будет разархивирован в", + "Archive name. (.zip file will be created)": "Название архива. (будет создан .zip файл)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder - файловый менеджер, компонент для vue 3.", + "Create a new folder": "Создать новую папку", + "Create a new file": "Создать новый файл", + "Are you sure you want to delete these files?": "Вы уверены, что хотите удалить эти файлы?", + "This action cannot be undone.": "Это действия нельзя отменить.", + "Search results for": "Результаты поиска по", + "%s item(s) selected.": "%s выбраны.", + "%s is renamed.": "%s переименован.", + "This is a readonly storage.": "Данное хранилище только для чтения.", + "%s is created.": "%s создан.", + "Files moved.": "Файлы перемещены.", + "Files deleted.": "Файлы удалены.", + "The file unarchived.": "Файл разархивирован", + "The file(s) archived.": "Файл(-ы) архивированы", + "Updated.": "Обновлено.", + "No search result found.": "Ничего не найдено", + "Are you sure you want to move these files?": "Вы уверены, что хотите переместить эти файлы?", + "File Size": "Размер файла", + "Last Modified": "Последнее изменение", + "Select Folders": "Выбрать папки", + "Clear all": "Очистить все", + "Clear only successful": "Очистить только успешные", + "Drag and drop the files/folders to here or click here.": "Перетащите файлы/папки сюда или нажмите здесь.", + "Release to drop these files.": "Отпустите, чтобы отпустить эти файлы.", + "Canceled": "Отменено", + "Done": "Готово", + "Network Error, Unable establish connection to the server or interrupted.": "Ошибка сети, не удалось установить соединение с сервером или соединение было прервано.", + "Pending upload": "Ожидание загрузки", + "Please select file to upload first.": "Пожалуйста, выберите файл для загрузки.", + "About": "О компоненте", + "Settings": "Настройки", + "Shortcuts": "Горячие клавиши", + "Reset": "Сброс", + "Escape": "Выход", + "Search": "Поиск", + "Toggle Sidebar": "Переключить боковую панель", + "Open Settings": "Открыть настройки", + "Reset all settings to default": "Сбросить все настройки настройки по умолчанию", + "Use Metric Units": "Использовать метрические единицы", + "Saved.": "Сохранено.", + "Reset Settings": "Сбросить настройки", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Загрузка не работает? Вы можете попробовать щелкнуть правой кнопкой мыши по кнопке \"Скачать\", выбрать \"Сохранить ссылку как...\".", + "Theme": "Тема", + "Dark": "Темный", + "Light": "Светлый", + "System": "Система", + "Target Directory": "Целевая директория", + "Select": "Выбрать", + "Compact list view": "Компактный вид списка", + "Show thumbnails": "Показать миниатюры", + "Persist path on reload": "Сохранить путь при перезагрузке", + "Select All": "Выбрать все", + "Pinned Folders": "Закрепленные папки", + "No folders pinned": "Нет закрепленных папок", + "Pin Folder": "Закрепить папку", + "Unpin Folder": "Открепить папку", + "Project home": "Домашняя страница проекта", + "Follow on GitHub": "Следить на GitHub", + "Customize your experience with the following settings": "Настройте свой опыт с помощью следующих настроек" +} diff --git a/src/locales/json/sv.json b/src/locales/json/sv.json new file mode 100644 index 00000000..11aa0e76 --- /dev/null +++ b/src/locales/json/sv.json @@ -0,0 +1,102 @@ +{ + "Language": "Språk", + "Create": "Skapa", + "Close": "Stäng", + "Cancel": "Avbryt", + "Save": "Spara", + "Edit": "Redigera", + "Crop": "Beskära", + "New Folder": "Ny mapp", + "New File": "Ny fil", + "Rename": "Byt namn", + "Delete": "Radera", + "Upload": "Ladda upp", + "Download": "Ladda ner", + "Archive": "Arkivera", + "Unarchive": "Avarkivera", + "Open": "Öppna", + "Open containing folder": "Öppna innehållande mapp", + "Refresh": "Uppdatera", + "Preview": "Förhandsgranska", + "Toggle Full Screen": "Växla till helskärm", + "Change View": "Ändra vy", + "Storage": "Lagring", + "Go up a directory": "Gå upp en katalog", + "Search anything..": "Sök överallt..", + "Name": "Namn", + "Size": "Storlek", + "Date": "Datum", + "Filepath": "Filväg", + "Folder Name": "Mappnamn", + "File Name": "Filnamn", + "Move files": "Flytta filer", + "Yes, Move!": "Ja, flytta!", + "Delete files": "Radera filer", + "Yes, Delete!": "Ja, radera!", + "Upload Files": "Ladda upp filer", + "No files selected!": "Inga filer valda!", + "Select Files": "Välj filer", + "Archive the files": "Arkivera filer", + "Unarchive the files": "Avarkivera filer", + "The archive will be unarchived at": "Arkivet kommer att avarkiveras i", + "Archive name. (.zip file will be created)": "Arkivnamn. (.zip-fil kommer att skapas)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder är en filhanteringskomponent för Vue 3.", + "Create a new folder": "Skapa en ny mapp", + "Create a new file": "Skapa en ny fil", + "Are you sure you want to delete these files?": "Är du säker på att du vill radera dessa filer?", + "This action cannot be undone.": "Denna åtgärd kan inte ångras.", + "Search results for": "Sökresultat för", + "%s item(s) selected.": "%s objekt valda.", + "%s is renamed.": "%s har fått ett nytt namn.", + "This is a readonly storage.": "Detta är en skrivskyddad lagring.", + "%s is created.": "%s har skapats.", + "Files moved.": "Filerna har flyttats.", + "Files deleted.": "Filerna har raderats.", + "The file unarchived.": "Filen har avarkiverats.", + "The file(s) archived.": "Filen/filerna har arkiverats.", + "Updated.": "Uppdaterad.", + "No search result found.": "Inget sökresultat hittades.", + "Are you sure you want to move these files?": "Är du säker på att du vill flytta dessa filer?", + "File Size": "Filstorlek", + "Last Modified": "Senast ändrad", + "Select Folders": "Välj mappar", + "Clear all": "Rensa alla", + "Clear only successful": "Rensa endast lyckade", + "Drag and drop the files/folders to here or click here.": "Dra och släpp filerna/mapparna hit eller klicka här.", + "Release to drop these files.": "Släpp för att lägga till dessa filer.", + "Canceled": "Avbruten", + "Done": "Klar", + "Network Error, Unable establish connection to the server or interrupted.": "Nätverksfel, kan inte upprätta anslutning till servern eller avbruten.", + "Pending upload": "Väntar på uppladdning", + "Please select file to upload first.": "Välj fil att ladda upp först.", + "About": "Om", + "Settings": "Inställningar", + "Shortcuts": "Genvägar", + "Reset": "Återställ", + "Escape": "Avbryt", + "Search": "Sök", + "Toggle Sidebar": "Växla sidofält", + "Open Settings": "Öppna inställningar", + "Reset all settings to default": "Återställ alla inställningar till standard", + "Use Metric Units": "Använd metriska enheter", + "Saved.": "Sparad.", + "Reset Settings": "Återställ inställningar", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Fungerar inte nedladdningen? Du kan högerklicka på \"Ladda ner\"-knappen, välja \"Spara länk som...\".", + "Theme": "Tema", + "Dark": "Mörk", + "Light": "Ljus", + "System": "System", + "Target Directory": "Mål katalog", + "Select": "Välj", + "Compact list view": "Kompakt listvy", + "Show thumbnails": "Visa miniatyrer", + "Persist path on reload": "Behåll sökväg vid omladdning", + "Select All": "Välj alla", + "Pinned Folders": "Fästa mappar", + "No folders pinned": "Inga mappar fästa", + "Pin Folder": "Fäst mapp", + "Unpin Folder": "Avfäst mapp", + "Project home": "Projekthemsida", + "Follow on GitHub": "Följ på GitHub", + "Customize your experience with the following settings": "Anpassa din upplevelse med följande inställningar" +} diff --git a/src/locales/json/tr.json b/src/locales/json/tr.json new file mode 100644 index 00000000..7ecd5b19 --- /dev/null +++ b/src/locales/json/tr.json @@ -0,0 +1,102 @@ +{ + "Language": "Dil", + "Create": "Oluştur", + "Close": "Kapat", + "Cancel": "İptal", + "Save": "Kaydet", + "Edit": "Düzenle", + "Crop": "Kes", + "New Folder": "Yeni Klasör", + "New File": "Yeni Dosya", + "Rename": "Yeniden Adlandır", + "Delete": "Sil", + "Upload": "Karşıya Yükle", + "Download": "İndir", + "Archive": "Arşivle", + "Unarchive": "Arşivden çıkar", + "Open": "Aç", + "Open containing folder": "İçeren klasörü aç", + "Refresh": "Yenile", + "Preview": "Önizleme", + "Toggle Full Screen": "Tam ekran", + "Change View": "Görünümü değiştir", + "Storage": "Depo", + "Go up a directory": "Yukarı git", + "Search anything..": "Herhangi bir şey ara..", + "Name": "Ad", + "Size": "Boyut", + "Date": "Tarih", + "Filepath": "Dosya yolu", + "Folder Name": "Klasör Adı", + "File Name": "Dosya Adı", + "Move files": "Dosyaları taşı", + "Yes, Move!": "Evet, Taşı!", + "Delete files": "Dosyaları Sil", + "Yes, Delete!": "Evet, Sil!", + "Upload files": "Dosyaları Yükle", + "No files selected!": "Dosya Seçilmedi!", + "Select Files": "Dosyaları Seç", + "Archive the files": "Dosyaları arşivleyin", + "Unarchive the files": "Dosyaları arşivden çıkarın", + "The archive will be unarchived at": "Arşiv buraya çıkarılacak: ", + "Archive name. (.zip file will be created)": "Archive adı. (.zip dosyası oluşturulacak)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder, vue 3 için bir web dosya yönetim bileşenidir.", + "Create a new folder": "Yeni bir klasör oluşturun", + "Create a new file": "Yeni bir dosya oluşturun", + "Are you sure you want to delete these files?": "Bu dosyaları silmek istediğinize emin misiniz?", + "This action cannot be undone.": "Bu işlem geri alınamaz.", + "Search results for": "Arama sonuçları:", + "%s item(s) selected.": "%s dosya seçildi.", + "%s is renamed.": "%s yeniden adlandırılmıştır.", + "This is a readonly storage.": "Bu salt okunur bir depolama alanıdır.", + "%s is created.": "%s başarıyla oluşturulmuştur.", + "Files moved.": "Dosyalar taşındı.", + "Files deleted.": "Dosyalar silindi.", + "The file is unarchived.": "Dosya arşivden çıkarıldı.", + "The file(s) is archived.": "Dosyalar arşivlendi.", + "Updated.": "Güncellendi.", + "No search result found.": "Arama sonucu bulunamadı.", + "Are you sure you want to move these files?": "Bu dosyaları taşımak istediğinize emin misiniz?", + "File Size": "Dosya Boyutu", + "Last Modified": "Son Değişiklik", + "Select Folders": "Klasörleri Seç", + "Clear all": "Hepsini Temizle", + "Clear only successful": "Başarılı Olanları Temizle", + "Drag and drop the files/folders to here or click here.": "Dosyaları/klasörleri buraya sürükleyin veya buraya tıklayın.", + "Release to drop these files.": "Dosyaları eklemek için serbest bırakın.", + "Canceled": "İptal edildi", + "Done": "Tamamlandı", + "Network Error, Unable establish connection to the server or interrupted.": "Ağ Hatası, Sunucuya bağlantı kurulamıyor veya kesiliyor.", + "Pending upload": "Bekliyor", + "Please select file to upload first.": "Lütfen önce yüklenecek dosyayı seçin.", + "About": "Hakkında", + "Settings": "Ayarlar", + "Shortcuts": "Kısayollar", + "Reset": "Sıfırla", + "Escape": "Çıkış", + "Search": "Ara", + "Toggle Sidebar": "Kenar Çubuğunu Değiştir", + "Open Settings": "Ayarları Aç", + "Reset all settings to default": "Tüm ayarları varsayılana sıfırla", + "Use Metric Units": "Metrik Birimleri Kullan", + "Saved.": "Kaydedildi.", + "Reset Settings": "Ayarları Sıfırla", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Download çalışmıyor mu? \"İndir\" düğmesine sağ tıklayarak, \"Farklı kaydet...\" seçebilirsiniz.", + "Theme": "Tema", + "Dark": "Koyu", + "Light": "Açık", + "System": "Sistem", + "Target Directory": "Hedef Klasör", + "Select": "Seç", + "Compact list view": "Kompakt liste görünümü", + "Show thumbnails": "Küçük resimleri göster", + "Persist path on reload": "Yeniden yüklemede yolu koru", + "Select All": "Hepsini Seç", + "Pinned Folders": "Sabitlenmiş Klasörler", + "No folders pinned": "Sabitlenmiş klasör yok", + "Pin Folder": "Klasörü Sabitle", + "Unpin Folder": "Sabitlemeyi Kaldır", + "Project home": "Proje ana sayfası", + "Follow on GitHub": "GitHub'da takip et", + "Customize your experience with the following settings": "Aşağıdaki ayarlarla deneyiminizi özelleştirin" +} diff --git a/src/locales/zhCN.js b/src/locales/json/zh_CN.json similarity index 89% rename from src/locales/zhCN.js rename to src/locales/json/zh_CN.json index 3b861280..4b8548ba 100644 --- a/src/locales/zhCN.js +++ b/src/locales/json/zh_CN.json @@ -1,6 +1,4 @@ -import uppyLocalezhCN from '@uppy/locales/lib/zh_CN.js'; - -export default { +{ "Language": "语言", "Create": "创建", "Close": "关闭", @@ -75,15 +73,15 @@ export default { "Settings": "设置", "Shortcuts": "快捷键", "Reset": "重置", - 'Escape': '退出', - 'Search': '搜索', - 'Toggle Sidebar': '切换侧边栏', - 'Open Settings': '打开设置', + "Escape": "退出", + "Search": "搜索", + "Toggle Sidebar": "切换侧边栏", + "Open Settings": "打开设置", "Reset all settings to default": "重置所有设置为默认", "Use Metric Units": "使用公制单位", "Saved.": "已保存。", "Reset Settings": "重置设置", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "下载不管用?您可以尝试右键点击“下载”按钮,选择“链接另存为...”。", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "下载不管用?您可以尝试右键点击“下载”按钮,选择“链接另存为...”。", "Theme": "主题", "Dark": "深色", "Light": "浅色", @@ -100,6 +98,5 @@ export default { "Unpin Folder": "取消固定文件夹", "Project home": "项目主页", "Follow on GitHub": "在 GitHub 上关注", - "Customize your experience with the following settings": "使用以下设置自定义您的体验", - "uppy": uppyLocalezhCN + "Customize your experience with the following settings": "使用以下设置自定义您的体验" } diff --git a/src/locales/zhTW.js b/src/locales/json/zh_TW.json similarity index 89% rename from src/locales/zhTW.js rename to src/locales/json/zh_TW.json index c9cdd34c..39a413f6 100644 --- a/src/locales/zhTW.js +++ b/src/locales/json/zh_TW.json @@ -1,6 +1,4 @@ -import uppyLocalezhTW from '@uppy/locales/lib/zh_TW.js'; - -export default { +{ "Language": "語言", "Create": "建立", "Close": "關閉", @@ -75,15 +73,15 @@ export default { "Settings": "設定", "Shortcuts": "快捷鍵", "Reset": "重置", - 'Escape': '退出', - 'Search': '搜尋', - 'Toggle Sidebar': '切換側邊欄', - 'Open Settings': '打開設定', + "Escape": "退出", + "Search": "搜尋", + "Toggle Sidebar": "切換側邊欄", + "Open Settings": "打開設定", "Reset all settings to default": "重置所有設定為默認", "Use Metric Units": "使用公制單位", "Saved.": "已儲存。", "Reset Settings": "重置設定", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "下載不管用?您可以嘗試右鍵點擊“下載”按鈕,選擇“另存連結為...”。", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "下載不管用?您可以嘗試右鍵點擊“下載”按鈕,選擇“另存連結為...”。", "Theme": "主題", "Dark": "深色", "Light": "淺色", @@ -100,6 +98,5 @@ export default { "Unpin Folder": "取消固定資料夾", "Project home": "項目主頁", "Follow on GitHub": "在 GitHub 上關注", - "Customize your experience with the following settings": "使用以下設定自定義您的體驗", - "uppy": uppyLocalezhTW + "Customize your experience with the following settings": "使用以下設定自定義您的體驗" } diff --git a/src/locales/nl.js b/src/locales/nl.js index adc9c696..cb495715 100644 --- a/src/locales/nl.js +++ b/src/locales/nl.js @@ -1,105 +1,7 @@ -import uppyLocaleNl from '@uppy/locales/lib/nl_NL.js'; +import locale from "./json/nl.json"; +import uppyLocale from "@uppy/locales/lib/nl_NL.js"; export default { - "Language": "Taal", - "Create": "Aanmaken", - "Close": "Sluiten", - "Cancel": "Annuleren", - "Save": "Opslaan", - "Edit": "Bewerken", - "Crop": "Bijsnijden", - "New Folder": "Nieuwe map", - "New File": "Nieuw bestand", - "Rename": "Hernoemen", - "Delete": "Verwijderen", - "Upload": "Uploaden", - "Download": "Downloaden", - "Archive": "Archiveren", - "Unarchive": "Uitpakken", - "Open": "Openen", - "Open containing folder": "Bevat map openen", - "Refresh": "Vernieuwen", - "Preview": "Voorbeeld", - "Toggle Full Screen": "Volledig scherm wisselen", - "Change View": "Weergave wijzigen", - "Storage": "Opslag", - "Go up a directory": "Ga een map omhoog", - "Search anything..": "Zoek iets...", - "Name": "Naam", - "Size": "Grootte", - "Date": "Datum", - "Filepath": "Bestandspad", - "Folder Name": "Mapnaam", - "File Name": "Bestandsnaam", - "Move files": "Bestanden verplaatsen", - "Yes, Move!": "Ja, verplaatsen!", - "Delete files": "Bestanden verwijderen", - "Yes, Delete!": "Ja, verwijderen!", - "Upload Files": "Bestanden uploaden", - "No files selected!": "Geen bestanden geselecteerd!", - "Select Files": "Bestanden selecteren", - "Archive the files": "Bestanden archiveren", - "Unarchive the files": "Bestanden uitpakken", - "The archive will be unarchived at": "Het archief wordt uitgepakt op", - "Archive name. (.zip file will be created)": "Archiefnaam. (Een .zip-bestand wordt aangemaakt)", - "Vuefinder is a file manager component for Vue 3.": "Vuefinder is een bestandsbeheercomponent voor Vue 3.", - "Create a new folder": "Een nieuwe map aanmaken", - "Create a new file": "Een nieuw bestand aanmaken", - "Are you sure you want to delete these files?": "Weet je zeker dat je deze bestanden wilt verwijderen?", - "This action cannot be undone.": "Deze actie kan niet ongedaan worden gemaakt.", - "Search results for": "Zoekresultaten voor", - "%s item(s) selected.": "%s item(s) geselecteerd.", - "%s is renamed.": "%s is hernoemd.", - "This is a readonly storage.": "Dit is een alleen-lezen opslag.", - "%s is created.": "%s is aangemaakt.", - "Files moved.": "Bestanden verplaatst.", - "Files deleted.": "Bestanden verwijderd.", - "The file unarchived.": "Het bestand is uitgepakt.", - "The file(s) archived.": "De bestanden zijn gearchiveerd.", - "Updated.": "Bijgewerkt.", - "No search result found.": "Geen zoekresultaten gevonden.", - "Are you sure you want to move these files?": "Weet je zeker dat je deze bestanden wilt verplaatsen?", - "File Size": "Bestandsgrootte", - "Last Modified": "Laatst gewijzigd", - "Select Folders": "Mappen selecteren", - "Clear all": "Alles wissen", - "Clear only successful": "Alleen geslaagde wissen", - "Drag and drop the files/folders to here or click here.": "Sleep de bestanden/mappen hierheen of klik hier.", - "Release to drop these files.": "Laat los om deze bestanden te plaatsen.", - "Canceled": "Geannuleerd", - "Done": "Klaar", - "Network Error, Unable establish connection to the server or interrupted.": "Netwerkfout, kan geen verbinding maken met de server of onderbroken.", - "Pending upload": "In wachtrij", - "Please select file to upload first.": "Selecteer eerst een bestand om te uploaden.", - "About": "Over", - "Settings": "Instellingen", - "Shortcuts": "Sneltoetsen", - "Reset": "Resetten", - "Escape": "Escape", - "Search": "Zoeken", - "Toggle Sidebar": "Zijbalk wisselen", - "Open Settings": "Instellingen openen", - "Reset all settings to default": "Alle instellingen terugzetten naar standaard", - "Use Metric Units": "Gebruik metrische eenheden", - "Saved.": "Opgeslagen.", - "Reset Settings": "Instellingen resetten", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "Werkt downloaden niet? Klik met de rechtermuisknop op de knop 'Downloaden' en selecteer 'Link opslaan als...'.", - "Theme": "Thema", - "Dark": "Donker", - "Light": "Licht", - "System": "Systeem", - "Target Directory": "Doelmap", - "Select": "Selecteren", - "Compact list view": "Compacte lijstweergave", - "Show thumbnails": "Miniaturen weergeven", - "Persist path on reload": "Pad behouden bij herladen", - "Select All": "Alles selecteren", - "Pinned Folders": "Vastgezette mappen", - "No folders pinned": "Geen mappen vastgezet", - "Pin Folder": "Map vastzetten", - "Unpin Folder": "Map losmaken", - "Project home": "Projectpagina", - "Follow on GitHub": "Volg op GitHub", - "Customize your experience with the following settings": "Pas je ervaring aan met de volgende instellingen", - "uppy": uppyLocaleNl -} + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/pl.js b/src/locales/pl.js index 59d5659f..a7746aec 100644 --- a/src/locales/pl.js +++ b/src/locales/pl.js @@ -1,105 +1,7 @@ -import uppyLocaleEn from '@uppy/locales/lib/pl_PL.js'; +import locale from "./json/pl.json"; +import uppyLocale from "@uppy/locales/lib/pl_PL.js"; export default { - "Language": "Język", - "Create": "Utwórz", - "Close": "Zamknij", - "Cancel": "Anuluj", - "Save": "Zapisz", - "Edit": "Edytuj", - "Crop": "Przytnij", - "New Folder": "Nowy folder", - "New File": "Nowy plik", - "Rename": "Zmień nazwę", - "Delete": "Usuń", - "Upload": "Prześlij", - "Download": "Pobierz", - "Archive": "Archiwizuj", - "Unarchive": "Rozpakuj", - "Open": "Otwórz", - "Open containing folder": "Otwórz folder zawierający", - "Refresh": "Odśwież", - "Preview": "Podgląd", - "Toggle Full Screen": "Przełącz tryb pełnoekranowy", - "Change View": "Zmień widok", - "Storage": "Pamięć", - "Go up a directory": "Przejdź do katalogu wyżej", - "Search anything..": "Szukaj czegokolwiek..", - "Name": "Nazwa", - "Size": "Rozmiar", - "Date": "Data", - "Filepath": "Ścieżka pliku", - "Folder Name": "Nazwa folderu", - "File Name": "Nazwa pliku", - "Move files": "Przenieś pliki", - "Yes, Move!": "Tak, przenieś!", - "Delete files": "Usuń pliki", - "Yes, Delete!": "Tak, usuń!", - "Upload Files": "Prześlij pliki", - "No files selected!": "Nie wybrano plików!", - "Select Files": "Wybierz pliki", - "Archive the files": "Zarchiwizuj pliki", - "Unarchive the files": "Rozpakuj pliki", - "The archive will be unarchived at": "Archiwum zostanie rozpakowane w", - "Archive name. (.zip file will be created)": "Nazwa archiwum. (.zip plik zostanie utworzony)", - "Vuefinder is a file manager component for Vue 3.": "Vuefinder to komponent menedżera plików dla Vue 3.", - "Create a new folder": "Utwórz nowy folder", - "Create a new file": "Utwórz nowy plik", - "Are you sure you want to delete these files?": "Czy na pewno chcesz usunąć te pliki?", - "This action cannot be undone.": "Tej operacji nie można cofnąć.", - "Search results for": "Wyniki wyszukiwania dla", - "%s item(s) selected.": "Wybrano %s elementów.", - "%s is renamed.": "%s zostało przemianowane.", - "This is a readonly storage.": "To jest pamięć tylko do odczytu.", - "%s is created.": "%s zostało utworzone.", - "Files moved.": "Pliki zostały przeniesione.", - "Files deleted.": "Pliki zostały usunięte.", - "The file unarchived.": "Plik został rozpakowany.", - "The file(s) archived.": "Plik(i) zostały zarchiwizowane.", - "Updated.": "Zaktualizowano.", - "No search result found.": "Nie znaleziono wyników wyszukiwania.", - "Are you sure you want to move these files?": "Czy na pewno chcesz przenieść te pliki?", - "File Size": "Rozmiar pliku", - "Last Modified": "Ostatnia modyfikacja", - "Select Folders": "Wybierz foldery", - "Clear all": "Wyczyść wszystko", - "Clear only successful": "Wyczyść tylko udane", - "Drag and drop the files/folders to here or click here.": "Przeciągnij i upuść pliki/foldery tutaj lub kliknij tutaj.", - "Release to drop these files.": "Zwolnij przycisk, aby upuścić te pliki.", - "Canceled": "Anulowano", - "Done": "Gotowe", - "Network Error, Unable establish connection to the server or interrupted.": "Błąd sieci, nie można nawiązać połączenia z serwerem lub połączenie zostało przerwane.", - "Pending upload": "Oczekujące przesyłanie", - "Please select file to upload first.": "Proszę najpierw wybrać plik do przesłania.", - "About": "O programie", - "Settings": "Ustawienia", - "Shortcuts": "Skróty", - "Reset": "Resetuj", - "Escape": "Escape", - "Search": "Szukaj", - "Toggle Sidebar": "Przełącz pasek boczny", - "Open Settings": "Otwórz ustawienia", - "Reset all settings to default": "Zresetuj wszystkie ustawienia do domyślnych", - "Use Metric Units": "Użyj jednostek metrycznych", - "Saved.": "Zapisano.", - "Reset Settings": "Zresetuj ustawienia", - "Download doesn't work? You can try right-click 'Download' button, select 'Save link as...'.": "Pobieranie nie działa? Możesz spróbować kliknąć prawym przyciskiem na przycisk 'Pobierz', wybrać 'Zapisz link jako...'.", - "Theme": "Motyw", - "Dark": "Ciemny", - "Light": "Jasny", - "System": "System", - "Target Directory": "Docelowy katalog", - "Select": "Wybierz", - "Compact list view": "Widok listy w formacie kompaktowym", - "Show thumbnails": "Pokaż miniatury", - "Persist path on reload": "Zachowaj ścieżkę po przeładowaniu", - "Select All": "Zaznacz wszystko", - "Pinned Folders": "Przypięte foldery", - "No folders pinned": "Brak przypiętych folderów", - "Pin Folder": "Przypnij folder", - "Unpin Folder": "Odepnij folder", - "Project home": "Strona główna projektu", - "Follow on GitHub": "Śledź na GitHubie", - "Customize your experience with the following settings": "Dostosuj swoje doświadczenie za pomocą poniższych ustawień", - "uppy": uppyLocaleEn -} + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/ru.js b/src/locales/ru.js index 65123f50..14eaf5a6 100644 --- a/src/locales/ru.js +++ b/src/locales/ru.js @@ -1,105 +1,7 @@ -import uppyLocaleRu from '@uppy/locales/lib/ru_RU.js'; +import locale from "./json/ru.json"; +import uppyLocale from "@uppy/locales/lib/ru_RU.js"; export default { - "Language": "Язык", - "Create": "Создать", - "Close": "Закрыть", - "Cancel": "Отмена", - "Save": "Сохранить", - "Edit": "Изменить", - "Crop": "Обрезать", - "New Folder": "Новая папка", - "New File": "Новый файл", - "Rename": "Переименовать", - "Delete": "Удалить", - "Upload": "Загрузить", - "Download": "Скачать", - "Archive": "Архивировать", - "Unarchive": "Разархивировать", - "Open": "Открыть", - "Open containing folder": "Открыть расположение", - "Refresh": "Обновить", - "Preview": "Предпросмотр", - "Toggle Full Screen": "Полный экран", - "Change View": "Изменить вид", - "Storage": "Хранилище", - "Go up a directory": "Вверх", - "Search anything..": "Поиск...", - "Name": "Название", - "Size": "Размер", - "Date": "Дата", - "Filepath": "Путь до файла", - "Folder Name": "Название папки", - "File Name": "Название файла", - "Move files": "Переместить файлы", - "Yes, Move!": "Переместить", - "Delete files": "Удалить файлы", - "Yes, Delete!": "Удалить", - "Upload Files": "Загрузить файлы", - "No files selected!": "Файлы не выбраны!", - "Select Files": "Выбрать файлы", - "Archive the files": "Архивировать файлы", - "Unarchive the files": "Разархивировать файлы", - "The archive will be unarchived at": "Архив будет разархивирован в", - "Archive name. (.zip file will be created)": "Название архива. (будет создан .zip файл)", - "Vuefinder is a file manager component for vue 3.": "Vuefinder - файловый менеджер, компонент для vue 3.", - "Create a new folder": "Создать новую папку", - "Create a new file": "Создать новый файл", - "Are you sure you want to delete these files?": "Вы уверены, что хотите удалить эти файлы?", - "This action cannot be undone.": "Это действия нельзя отменить.", - "Search results for": "Результаты поиска по", - "%s item(s) selected.": "%s выбраны.", - "%s is renamed.": "%s переименован.", - "This is a readonly storage.": "Данное хранилище только для чтения.", - "%s is created.": "%s создан.", - "Files moved.": "Файлы перемещены.", - "Files deleted.": "Файлы удалены.", - "The file unarchived.": "Файл разархивирован", - "The file(s) archived.": "Файл(-ы) архивированы", - "Updated.": "Обновлено.", - "No search result found.": "Ничего не найдено", - "Are you sure you want to move these files?": "Вы уверены, что хотите переместить эти файлы?", - "File Size": "Размер файла", - "Last Modified": "Последнее изменение", - "Select Folders": "Выбрать папки", - "Clear all": "Очистить все", - "Clear only successful": "Очистить только успешные", - "Drag and drop the files/folders to here or click here.": "Перетащите файлы/папки сюда или нажмите здесь.", - "Release to drop these files.": "Отпустите, чтобы отпустить эти файлы.", - "Canceled": "Отменено", - "Done": "Готово", - "Network Error, Unable establish connection to the server or interrupted.": "Ошибка сети, не удалось установить соединение с сервером или соединение было прервано.", - "Pending upload": "Ожидание загрузки", - "Please select file to upload first.": "Пожалуйста, выберите файл для загрузки.", - "About": "О компоненте", - "Settings": "Настройки", - "Shortcuts": "Горячие клавиши", - "Reset": "Сброс", - 'Escape': 'Выход', - 'Search': 'Поиск', - 'Toggle Sidebar': 'Переключить боковую панель', - 'Open Settings': 'Открыть настройки', - "Reset all settings to default": "Сбросить все настройки настройки по умолчанию", - "Use Metric Units": "Использовать метрические единицы", - "Saved.": "Сохранено.", - "Reset Settings": "Сбросить настройки", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "Загрузка не работает? Вы можете попробовать щелкнуть правой кнопкой мыши по кнопке \"Скачать\", выбрать \"Сохранить ссылку как...\".", - "Theme": "Тема", - "Dark": "Темный", - "Light": "Светлый", - "System": "Система", - "Target Directory": "Целевая директория", - "Select": "Выбрать", - "Compact list view": "Компактный вид списка", - "Show thumbnails": "Показать миниатюры", - "Persist path on reload": "Сохранить путь при перезагрузке", - "Select All": "Выбрать все", - "Pinned Folders": "Закрепленные папки", - "No folders pinned": "Нет закрепленных папок", - "Pin Folder": "Закрепить папку", - "Unpin Folder": "Открепить папку", - "Project home": "Домашняя страница проекта", - "Follow on GitHub": "Следить на GitHub", - "Customize your experience with the following settings": "Настройте свой опыт с помощью следующих настроек", - "uppy": uppyLocaleRu -} + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/sv.js b/src/locales/sv.js index 641899f7..878c4f80 100644 --- a/src/locales/sv.js +++ b/src/locales/sv.js @@ -1,105 +1,7 @@ -import uppyLocaleSv from '@uppy/locales/lib/sv_SE.js'; +import locale from "./json/sv.json"; +import uppyLocale from "@uppy/locales/lib/sv_SE.js"; export default { - "Language": "Språk", - "Create": "Skapa", - "Close": "Stäng", - "Cancel": "Avbryt", - "Save": "Spara", - "Edit": "Redigera", - "Crop": "Beskära", - "New Folder": "Ny mapp", - "New File": "Ny fil", - "Rename": "Byt namn", - "Delete": "Radera", - "Upload": "Ladda upp", - "Download": "Ladda ner", - "Archive": "Arkivera", - "Unarchive": "Avarkivera", - "Open": "Öppna", - "Open containing folder": "Öppna innehållande mapp", - "Refresh": "Uppdatera", - "Preview": "Förhandsgranska", - "Toggle Full Screen": "Växla till helskärm", - "Change View": "Ändra vy", - "Storage": "Lagring", - "Go up a directory": "Gå upp en katalog", - "Search anything..": "Sök överallt..", - "Name": "Namn", - "Size": "Storlek", - "Date": "Datum", - "Filepath": "Filväg", - "Folder Name": "Mappnamn", - "File Name": "Filnamn", - "Move files": "Flytta filer", - "Yes, Move!": "Ja, flytta!", - "Delete files": "Radera filer", - "Yes, Delete!": "Ja, radera!", - "Upload Files": "Ladda upp filer", - "No files selected!": "Inga filer valda!", - "Select Files": "Välj filer", - "Archive the files": "Arkivera filer", - "Unarchive the files": "Avarkivera filer", - "The archive will be unarchived at": "Arkivet kommer att avarkiveras i", - "Archive name. (.zip file will be created)": "Arkivnamn. (.zip-fil kommer att skapas)", - "Vuefinder is a file manager component for vue 3.": "Vuefinder är en filhanteringskomponent för Vue 3.", - "Create a new folder": "Skapa en ny mapp", - "Create a new file": "Skapa en ny fil", - "Are you sure you want to delete these files?": "Är du säker på att du vill radera dessa filer?", - "This action cannot be undone.": "Denna åtgärd kan inte ångras.", - "Search results for": "Sökresultat för", - "%s item(s) selected.": "%s objekt valda.", - "%s is renamed.": "%s har fått ett nytt namn.", - "This is a readonly storage.": "Detta är en skrivskyddad lagring.", - "%s is created.": "%s har skapats.", - "Files moved.": "Filerna har flyttats.", - "Files deleted.": "Filerna har raderats.", - "The file unarchived.": "Filen har avarkiverats.", - "The file(s) archived.": "Filen/filerna har arkiverats.", - "Updated.": "Uppdaterad.", - "No search result found.": "Inget sökresultat hittades.", - "Are you sure you want to move these files?": "Är du säker på att du vill flytta dessa filer?", - "File Size": "Filstorlek", - "Last Modified": "Senast ändrad", - "Select Folders": "Välj mappar", - "Clear all": "Rensa alla", - "Clear only successful": "Rensa endast lyckade", - "Drag and drop the files/folders to here or click here.": "Dra och släpp filerna/mapparna hit eller klicka här.", - "Release to drop these files.": "Släpp för att lägga till dessa filer.", - "Canceled": "Avbruten", - "Done": "Klar", - "Network Error, Unable establish connection to the server or interrupted.": "Nätverksfel, kan inte upprätta anslutning till servern eller avbruten.", - "Pending upload": "Väntar på uppladdning", - "Please select file to upload first.": "Välj fil att ladda upp först.", - "About": "Om", - "Settings": "Inställningar", - "Shortcuts": "Genvägar", - "Reset": "Återställ", - 'Escape': 'Avbryt', - 'Search': 'Sök', - 'Toggle Sidebar': 'Växla sidofält', - 'Open Settings': 'Öppna inställningar', - "Reset all settings to default": "Återställ alla inställningar till standard", - "Use Metric Units": "Använd metriska enheter", - "Saved.": "Sparad.", - "Reset Settings": "Återställ inställningar", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "Fungerar inte nedladdningen? Du kan högerklicka på \"Ladda ner\"-knappen, välja \"Spara länk som...\".", - "Theme": "Tema", - "Dark": "Mörk", - "Light": "Ljus", - "System": "System", - "Target Directory": "Mål katalog", - "Select": "Välj", - "Compact list view": "Kompakt listvy", - "Show thumbnails": "Visa miniatyrer", - "Persist path on reload": "Behåll sökväg vid omladdning", - "Select All": "Välj alla", - "Pinned Folders": "Fästa mappar", - "No folders pinned": "Inga mappar fästa", - "Pin Folder": "Fäst mapp", - "Unpin Folder": "Avfäst mapp", - "Project home": "Projekthemsida", - "Follow on GitHub": "Följ på GitHub", - "Customize your experience with the following settings": "Anpassa din upplevelse med följande inställningar", - "uppy": uppyLocaleSv -} + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/tr.js b/src/locales/tr.js index 9f707143..3475f54c 100644 --- a/src/locales/tr.js +++ b/src/locales/tr.js @@ -1,105 +1,7 @@ -import uppyLocaleTr from '@uppy/locales/lib/tr_TR.js'; +import locale from "./json/tr.json"; +import uppyLocale from "@uppy/locales/lib/tr_TR.js"; export default { - "Language": "Dil", - "Create": "Oluştur", - "Close": "Kapat", - "Cancel": "İptal", - "Save": "Kaydet", - "Edit": "Düzenle", - "Crop": "Kes", - "New Folder": "Yeni Klasör", - "New File": "Yeni Dosya", - "Rename": "Yeniden Adlandır", - "Delete": "Sil", - "Upload": "Karşıya Yükle", - "Download": "İndir", - "Archive": "Arşivle", - "Unarchive": "Arşivden çıkar", - "Open": "Aç", - "Open containing folder": "İçeren klasörü aç", - "Refresh": "Yenile", - "Preview": "Önizleme", - "Toggle Full Screen": "Tam ekran", - "Change View": "Görünümü değiştir", - "Storage": "Depo", - "Go up a directory": "Yukarı git", - "Search anything..": "Herhangi bir şey ara..", - "Name": "Ad", - "Size": "Boyut", - "Date": "Tarih", - "Filepath": "Dosya yolu", - "Folder Name": "Klasör Adı", - "File Name": "Dosya Adı", - "Move files": "Dosyaları taşı", - "Yes, Move!": "Evet, Taşı!", - "Delete files": "Dosyaları Sil", - "Yes, Delete!": "Evet, Sil!", - "Upload files": "Dosyaları Yükle", - "No files selected!": "Dosya Seçilmedi!", - "Select Files": "Dosyaları Seç", - "Archive the files": "Dosyaları arşivleyin", - "Unarchive the files": "Dosyaları arşivden çıkarın", - "The archive will be unarchived at": "Arşiv buraya çıkarılacak: ", - "Archive name. (.zip file will be created)": "Archive adı. (.zip dosyası oluşturulacak)", - "Vuefinder is a file manager component for vue 3.": "Vuefinder, vue 3 için bir web dosya yönetim bileşenidir.", - "Create a new folder": "Yeni bir klasör oluşturun", - "Create a new file": "Yeni bir dosya oluşturun", - "Are you sure you want to delete these files?": "Bu dosyaları silmek istediğinize emin misiniz?", - "This action cannot be undone.": "Bu işlem geri alınamaz.", - "Search results for": "Arama sonuçları:", - "%s item(s) selected.": "%s dosya seçildi.", - "%s is renamed.": "%s yeniden adlandırılmıştır.", - "This is a readonly storage.": "Bu salt okunur bir depolama alanıdır.", - "%s is created.": "%s başarıyla oluşturulmuştur.", - "Files moved.": "Dosyalar taşındı.", - "Files deleted.": "Dosyalar silindi.", - "The file is unarchived.": "Dosya arşivden çıkarıldı.", - "The file(s) is archived.": "Dosyalar arşivlendi.", - "Updated.": "Güncellendi.", - "No search result found.": "Arama sonucu bulunamadı.", - "Are you sure you want to move these files?": "Bu dosyaları taşımak istediğinize emin misiniz?", - "File Size": "Dosya Boyutu", - "Last Modified": "Son Değişiklik", - "Select Folders": "Klasörleri Seç", - "Clear all": "Hepsini Temizle", - "Clear only successful": "Başarılı Olanları Temizle", - "Drag and drop the files/folders to here or click here.": "Dosyaları/klasörleri buraya sürükleyin veya buraya tıklayın.", - "Release to drop these files.": "Dosyaları eklemek için serbest bırakın.", - "Canceled": "İptal edildi", - "Done": "Tamamlandı", - "Network Error, Unable establish connection to the server or interrupted.": "Ağ Hatası, Sunucuya bağlantı kurulamıyor veya kesiliyor.", - "Pending upload": "Bekliyor", - "Please select file to upload first.": "Lütfen önce yüklenecek dosyayı seçin.", - "About": "Hakkında", - "Settings": "Ayarlar", - "Shortcuts": "Kısayollar", - "Reset": "Sıfırla", - 'Escape': 'Çıkış', - 'Search': 'Ara', - 'Toggle Sidebar': 'Kenar Çubuğunu Değiştir', - 'Open Settings': 'Ayarları Aç', - "Reset all settings to default": "Tüm ayarları varsayılana sıfırla", - "Use Metric Units": "Metrik Birimleri Kullan", - "Saved.": "Kaydedildi.", - "Reset Settings": "Ayarları Sıfırla", - "Download doesn\'t work? You can try right-click \"Download\" button, select \"Save link as...\".": "Download çalışmıyor mu? \"İndir\" düğmesine sağ tıklayarak, \"Farklı kaydet...\" seçebilirsiniz.", - "Theme": "Tema", - "Dark": "Koyu", - "Light": "Açık", - "System": "Sistem", - "Target Directory": "Hedef Klasör", - "Select": "Seç", - "Compact list view": "Kompakt liste görünümü", - "Show thumbnails": "Küçük resimleri göster", - "Persist path on reload": "Yeniden yüklemede yolu koru", - "Select All": "Hepsini Seç", - "Pinned Folders": "Sabitlenmiş Klasörler", - "No folders pinned": "Sabitlenmiş klasör yok", - "Pin Folder": "Klasörü Sabitle", - "Unpin Folder": "Sabitlemeyi Kaldır", - "Project home": "Proje ana sayfası", - "Follow on GitHub": "GitHub'da takip et", - "Customize your experience with the following settings": "Aşağıdaki ayarlarla deneyiminizi özelleştirin", - "uppy": uppyLocaleTr, -} + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/zh_CN.js b/src/locales/zh_CN.js new file mode 100644 index 00000000..1c60aa05 --- /dev/null +++ b/src/locales/zh_CN.js @@ -0,0 +1,7 @@ +import locale from "./json/zh_CN.json"; +import uppyLocale from "@uppy/locales/lib/zh_CN.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/zh_TW.js b/src/locales/zh_TW.js new file mode 100644 index 00000000..a78e2b08 --- /dev/null +++ b/src/locales/zh_TW.js @@ -0,0 +1,7 @@ +import locale from "./json/zh_TW.json"; +import uppyLocale from "@uppy/locales/lib/zh_TW.js"; + +export default { + ...locale, + uppy: uppyLocale +}; From 94e418de59ab4243a0a1cd64be83bc94f5ccd1a4 Mon Sep 17 00:00:00 2001 From: Andreas Bichinger Date: Fri, 12 Sep 2025 19:05:34 +0200 Subject: [PATCH 3/4] Use Intl.DisplayNames to generate list of supported languages --- src/components/modals/ModalAbout.vue | 25 +++++++------------------ 1 file changed, 7 insertions(+), 18 deletions(-) diff --git a/src/components/modals/ModalAbout.vue b/src/components/modals/ModalAbout.vue index 84a05bd7..fab7d778 100644 --- a/src/components/modals/ModalAbout.vue +++ b/src/components/modals/ModalAbout.vue @@ -199,6 +199,7 @@ import AboutSVG from "../icons/gear.svg"; import { FEATURES } from '../../features.js'; import ModalHeader from "./ModalHeader.vue"; +import { sanitizeLocale } from '../../composables/useI18n.js'; const app = inject('ServiceContainer'); const {setStore, clearStore} = app.storage; @@ -263,26 +264,14 @@ const handlePersistPath = () => { const {i18n} = inject('VueFinderOptions'); -const languageList = { - ar: 'Arabic (العربيّة)', - en: 'English', - fr: 'French (Français)', - de: 'German (Deutsch)', - fa: 'Persian (فارسی)', - he: 'Hebrew (עִברִית)', - hi: 'Hindi (हिंदी)', - pl: 'Polish (Polski)', - ru: 'Russian (Pусский)', - sv: 'Swedish (Svenska)', - tr: 'Turkish (Türkçe)', - nl: 'Dutch (Nederlands)', - zhCN: 'Simplified Chinese (简体中文)', - zhTW: 'Traditional Chinese (繁體中文)', -}; +const languagesInEnglish = new Intl.DisplayNames(["en"], { type: "language" }); -// Filter the supportedLanguages object const supportedLanguages = Object.fromEntries( - Object.entries(languageList).filter(([key]) => Object.keys(i18n).includes(key)) + Object.keys(i18n).map((locale) => { + const sanitized = sanitizeLocale(locale) + const languagesInLocale = new Intl.DisplayNames([sanitized, "en"], { type: "language" }); + return [locale, `${languagesInEnglish.of(sanitized)} (${languagesInLocale.of(sanitized)})`] + }) ); const themes = computed(() => ({ From 4350a5a2691936a5bfcb25ad67814e55e4335112 Mon Sep 17 00:00:00 2001 From: Andreas Bichinger Date: Sun, 14 Sep 2025 15:09:25 +0200 Subject: [PATCH 4/4] Add automated translation using attranslate The new translations were created with gemini-2.5-flash --- examples/main.js | 7 + package-lock.json | 2161 ++++++++++++++++++++++- package.json | 1 + scripts/{addLocale.cjs => addLocale.js} | 12 +- scripts/translate.js | 80 + src/locales/af.js | 7 + src/locales/az.js | 7 + src/locales/bg.js | 7 + src/locales/bs.js | 7 + src/locales/ca.js | 7 + src/locales/cs.js | 7 + src/locales/da.js | 7 + src/locales/el.js | 7 + src/locales/es.js | 7 + src/locales/fi.js | 7 + src/locales/gl.js | 7 + src/locales/hr.js | 7 + src/locales/hu.js | 7 + src/locales/id.js | 7 + src/locales/is.js | 7 + src/locales/it.js | 7 + src/locales/json/af.json | 102 ++ src/locales/json/az.json | 102 ++ src/locales/json/bg.json | 102 ++ src/locales/json/bs.json | 102 ++ src/locales/json/ca.json | 102 ++ src/locales/json/cs.json | 102 ++ src/locales/json/da.json | 102 ++ src/locales/json/el.json | 102 ++ src/locales/json/es.json | 102 ++ src/locales/json/fi.json | 102 ++ src/locales/json/gl.json | 102 ++ src/locales/json/hr.json | 102 ++ src/locales/json/hu.json | 102 ++ src/locales/json/id.json | 102 ++ src/locales/json/is.json | 102 ++ src/locales/json/it.json | 102 ++ src/locales/json/ja.json | 103 +- src/locales/json/ko.json | 102 ++ src/locales/json/nb.json | 102 ++ src/locales/json/nl.json | 200 +-- src/locales/json/pl.json | 200 +-- src/locales/json/pt.json | 102 ++ src/locales/json/ro.json | 102 ++ src/locales/json/sk.json | 102 ++ src/locales/json/sl.json | 102 ++ src/locales/json/sr.json | 102 ++ src/locales/json/th.json | 102 ++ src/locales/json/tr.json | 200 +-- src/locales/json/uk.json | 102 ++ src/locales/json/vi.json | 102 ++ src/locales/ko.js | 7 + src/locales/nb.js | 7 + src/locales/pt.js | 7 + src/locales/ro.js | 7 + src/locales/sk.js | 7 + src/locales/sl.js | 7 + src/locales/sr.js | 7 + src/locales/th.js | 7 + src/locales/uk.js | 7 + src/locales/vi.js | 7 + 61 files changed, 5465 insertions(+), 333 deletions(-) rename scripts/{addLocale.cjs => addLocale.js} (79%) create mode 100644 scripts/translate.js create mode 100644 src/locales/af.js create mode 100644 src/locales/az.js create mode 100644 src/locales/bg.js create mode 100644 src/locales/bs.js create mode 100644 src/locales/ca.js create mode 100644 src/locales/cs.js create mode 100644 src/locales/da.js create mode 100644 src/locales/el.js create mode 100644 src/locales/es.js create mode 100644 src/locales/fi.js create mode 100644 src/locales/gl.js create mode 100644 src/locales/hr.js create mode 100644 src/locales/hu.js create mode 100644 src/locales/id.js create mode 100644 src/locales/is.js create mode 100644 src/locales/it.js create mode 100644 src/locales/json/af.json create mode 100644 src/locales/json/az.json create mode 100644 src/locales/json/bg.json create mode 100644 src/locales/json/bs.json create mode 100644 src/locales/json/ca.json create mode 100644 src/locales/json/cs.json create mode 100644 src/locales/json/da.json create mode 100644 src/locales/json/el.json create mode 100644 src/locales/json/es.json create mode 100644 src/locales/json/fi.json create mode 100644 src/locales/json/gl.json create mode 100644 src/locales/json/hr.json create mode 100644 src/locales/json/hu.json create mode 100644 src/locales/json/id.json create mode 100644 src/locales/json/is.json create mode 100644 src/locales/json/it.json create mode 100644 src/locales/json/ko.json create mode 100644 src/locales/json/nb.json create mode 100644 src/locales/json/pt.json create mode 100644 src/locales/json/ro.json create mode 100644 src/locales/json/sk.json create mode 100644 src/locales/json/sl.json create mode 100644 src/locales/json/sr.json create mode 100644 src/locales/json/th.json create mode 100644 src/locales/json/uk.json create mode 100644 src/locales/json/vi.json create mode 100644 src/locales/ko.js create mode 100644 src/locales/nb.js create mode 100644 src/locales/pt.js create mode 100644 src/locales/ro.js create mode 100644 src/locales/sk.js create mode 100644 src/locales/sl.js create mode 100644 src/locales/sr.js create mode 100644 src/locales/th.js create mode 100644 src/locales/uk.js create mode 100644 src/locales/vi.js diff --git a/examples/main.js b/examples/main.js index 9560810d..112ebde0 100644 --- a/examples/main.js +++ b/examples/main.js @@ -4,12 +4,19 @@ import VueFinder from '../src/index.js' const app = createApp(App); +const supportedLocales = Object.fromEntries( + Object.entries(import.meta.glob(["../src/locales/*.js"])).map(([path, locale]) => { + return [path.slice(path.lastIndexOf("/") + 1, -3), locale]; + }) +); + app.use(VueFinder, { // you can set the default locale, if you don't set the locale key, it will be the first locale in the i18n object (en in this case) // if if you set a locale prop of the vuefinder elements, it will override this default locale locale: 'en', i18n: { + ...supportedLocales, ar: async () => await import ("../src/locales/ar.js"), en: async () => await import ("../src/locales/en.js"), fr: async () => await import ("../src/locales/fr.js"), diff --git a/package-lock.json b/package-lock.json index f7299b59..7be5b00d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,6 +23,7 @@ "@types/node": "^18.7.1", "@vitejs/plugin-vue": "^4.0.0", "@vue/tsconfig": "^0.7.0", + "attranslate": "^2.2.0", "autoprefixer": "^10.4.8", "postcss": "^8.4.16", "rollup-plugin-copy": "^3.5.0", @@ -484,6 +485,98 @@ "node": ">=12" } }, + "node_modules/@google-cloud/common": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@google-cloud/common/-/common-5.0.2.tgz", + "integrity": "sha512-V7bmBKYQyu0eVG2BFejuUjlBt+zrya6vtsKdY+JxMM/dNntPF41vZ9+LhOshEUH01zOHEqBSvI7Dad7ZS6aUeA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@google-cloud/projectify": "^4.0.0", + "@google-cloud/promisify": "^4.0.0", + "arrify": "^2.0.1", + "duplexify": "^4.1.1", + "extend": "^3.0.2", + "google-auth-library": "^9.0.0", + "html-entities": "^2.5.2", + "retry-request": "^7.0.0", + "teeny-request": "^9.0.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@google-cloud/projectify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@google-cloud/projectify/-/projectify-4.0.0.tgz", + "integrity": "sha512-MmaX6HeSvyPbWGwFq7mXdo0uQZLGBYCwziiLIGq5JVX+/bdI3SAq6bP98trV5eTWfLuvsMcIC1YJOF2vfteLFA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@google-cloud/promisify": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-4.1.0.tgz", + "integrity": "sha512-G/FQx5cE/+DqBbOpA5jKsegGwdPniU6PuIEMt+qxWgFxvxuFOzVmp6zYchtYuwAWV5/8Dgs0yAmjvNZv3uXLQg==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/@google-cloud/translate": { + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/@google-cloud/translate/-/translate-8.5.1.tgz", + "integrity": "sha512-xqIRV+lTaszgPHw0ulUQ3CUhnbPnsnYlh90mBh3PomU5SUGRlJc5bjN0UEP6MICnrj3AugxYQSelNn+rxGj2Ig==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@google-cloud/common": "^5.0.0", + "@google-cloud/promisify": "^4.0.0", + "arrify": "^2.0.0", + "extend": "^3.0.2", + "google-gax": "^4.0.3", + "is-html": "^2.0.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@grpc/grpc-js": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.13.4.tgz", + "integrity": "sha512-GsFaMXCkMqkKIvwCQjCrwH+GHbPKBjhwo/8ZuUkWHqbI73Kky9I+pQltrlT0+MWpedCoosda53lgjYfyEPgxBg==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@grpc/proto-loader": "^0.7.13", + "@js-sdsl/ordered-map": "^4.4.2" + }, + "engines": { + "node": ">=12.10.0" + } + }, + "node_modules/@grpc/proto-loader": { + "version": "0.7.15", + "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.15.tgz", + "integrity": "sha512-tMXdRCfYVixjuFK+Hk0Q1s38gV9zDiDJfWL3h1rv4Qc39oILCu1TRTDt7+fGUI8K4G1Fj125Hx/ru3azECWTyQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "lodash.camelcase": "^4.3.0", + "long": "^5.0.0", + "protobufjs": "^7.2.5", + "yargs": "^17.7.2" + }, + "bin": { + "proto-loader-gen-types": "build/bin/proto-loader-gen-types.js" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/@isaacs/balanced-match": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", @@ -563,6 +656,17 @@ "@jridgewell/sourcemap-codec": "^1.4.14" } }, + "node_modules/@js-sdsl/ordered-map": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/@js-sdsl/ordered-map/-/ordered-map-4.4.2.tgz", + "integrity": "sha512-iUKgm52T8HOE/makSxjqoWhe95ZJA1/G1sYsGev2JDKUSS14KAgg1LHb+Ba+IPow0xflbnSkOsZcO08C7w1gYw==", + "dev": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } + }, "node_modules/@microsoft/api-extractor": { "version": "7.52.10", "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.52.10.tgz", @@ -1009,6 +1113,80 @@ "node": ">=14" } }, + "node_modules/@protobufjs/aspromise": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", + "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/base64": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", + "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/codegen": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", + "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/eventemitter": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", + "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/fetch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", + "integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@protobufjs/aspromise": "^1.1.1", + "@protobufjs/inquire": "^1.1.0" + } + }, + "node_modules/@protobufjs/float": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", + "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/inquire": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", + "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/path": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", + "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/pool": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", + "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/utf8": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", + "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==", + "dev": true, + "license": "BSD-3-Clause" + }, "node_modules/@rollup/pluginutils": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.2.0.tgz", @@ -1448,6 +1626,16 @@ "string-argv": "~0.3.1" } }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, "node_modules/@transloadit/prettier-bytes": { "version": "0.3.5", "resolved": "https://registry.npmjs.org/@transloadit/prettier-bytes/-/prettier-bytes-0.3.5.tgz", @@ -1471,6 +1659,13 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/caseless": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/@types/caseless/-/caseless-0.12.5.tgz", + "integrity": "sha512-hWtVTC2q7hc7xZ/RLbxapMvDMgUnDvKvMOpKal4DrMyfGBUfB1oKaZlIRr6mJL+If3bAP6sV/QneGzF6tJjZDg==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/estree": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", @@ -1499,6 +1694,13 @@ "@types/node": "*" } }, + "node_modules/@types/long": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", + "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/minimatch": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", @@ -1516,12 +1718,57 @@ "undici-types": "~5.26.4" } }, + "node_modules/@types/request": { + "version": "2.48.13", + "resolved": "https://registry.npmjs.org/@types/request/-/request-2.48.13.tgz", + "integrity": "sha512-FGJ6udDNUCjd19pp0Q3iTiDkwhYup7J8hpMW9c4k53NrccQFFWKRho6hvtPPEhnXWKvukfwAlB6DbDz4yhH5Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/caseless": "*", + "@types/node": "*", + "@types/tough-cookie": "*", + "form-data": "^2.5.5" + } + }, + "node_modules/@types/request/node_modules/form-data": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.5.tgz", + "integrity": "sha512-jqdObeR2rxZZbPSGL+3VckHMYtu+f9//KXBsVny6JSX/pa38Fy+bGjuG8eW/H6USNQWhLi8Num++cU2yOCNz4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.35", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.12" + } + }, "node_modules/@types/retry": { "version": "0.12.2", "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.2.tgz", "integrity": "sha512-XISRgDJ2Tc5q4TRqvgJtzsRkFYNJzZrhTdtMoGVBttwzzQJkPnS3WWTFc7kuDRoPtPakl+T+OfdEUjYJj7Jbow==", "license": "MIT" }, + "node_modules/@types/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/tough-cookie": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", + "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==", + "dev": true, + "license": "MIT" + }, "node_modules/@uppy/companion-client": { "version": "3.8.2", "resolved": "https://registry.npmjs.org/@uppy/companion-client/-/companion-client-3.8.2.tgz", @@ -1899,6 +2146,19 @@ } } }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dev": true, + "license": "MIT", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, "node_modules/acorn": { "version": "8.15.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", @@ -1912,6 +2172,16 @@ "node": ">=0.4.0" } }, + "node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, "node_modules/ajv": { "version": "8.12.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", @@ -1969,6 +2239,22 @@ "dev": true, "license": "MIT" }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/ansi-regex": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.0.tgz", @@ -2016,6 +2302,27 @@ "node": ">= 8" } }, + "node_modules/arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/arg": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", @@ -2043,6 +2350,70 @@ "node": ">=8" } }, + "node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/attranslate": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/attranslate/-/attranslate-2.2.0.tgz", + "integrity": "sha512-ZNtBjE9UxQvVu4If0hEJKKr0FCHCuhyrg4JwyQib31BkQdUloowu6eMlipN45x+hEWlBt1kNe/0MIrBBwR51Jg==", + "dev": true, + "license": "GPL", + "dependencies": { + "@google-cloud/translate": "^8.3.0", + "@types/semver": "^7.5.0", + "axios": "^1.7.2", + "clipboardy": "^2.3.0", + "commander": "^6.1.0", + "detect-indent": "^6.0.0", + "dotenv": "^16.3.1", + "gettext-parser": "^4.0.4", + "inquirer": "^7.3.3", + "messageformat-parser": "^4.1.0", + "openai": "^3.3.0", + "semver": "^7.5.4", + "typechat": "^0.0.10", + "xml2js": "https://github.com/fkirc/node-xml2js/tarball/680ee7ed2dad8b9ddacc37b5e4b4a671706e0bcf", + "yaml": "2.0.0-1" + }, + "bin": { + "attranslate": "bin/attranslate" + } + }, + "node_modules/attranslate/node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/attranslate/node_modules/yaml": { + "version": "2.0.0-1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.0.0-1.tgz", + "integrity": "sha512-W7h5dEhywMKenDJh2iX/LABkbFnBxasD27oyXWDS/feDsxiw0dD5ncXdYXgkvAsXIY2MpW/ZKkr9IU30DBdMNQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 6" + } + }, "node_modules/autoprefixer": { "version": "10.4.21", "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz", @@ -2081,6 +2452,18 @@ "postcss": "^8.1.0" } }, + "node_modules/axios": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.12.2.tgz", + "integrity": "sha512-vMJzPewAlRyOgxV2dU0Cuz2O8zzzx9VYtbJOaBgXFeLc4IV/Eg50n4LowmehOOR61S8ZMpc2K5Sa7g6A4jfkUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.4", + "proxy-from-env": "^1.1.0" + } + }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -2088,6 +2471,37 @@ "dev": true, "license": "MIT" }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/bignumber.js": { + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.3.1.tgz", + "integrity": "sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, "node_modules/binary-extensions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", @@ -2165,6 +2579,27 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, + "node_modules/buffer-equal-constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", + "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/camelcase-css": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", @@ -2196,26 +2631,211 @@ ], "license": "CC-BY-4.0" }, - "node_modules/chokidar": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", - "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "license": "MIT", "dependencies": { - "readdirp": "^4.0.1" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">= 14.16.0" + "node": ">=10" }, "funding": { - "url": "https://paulmillr.com/funding/" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/chalk/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true, + "license": "MIT" + }, + "node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 10" + } + }, + "node_modules/clipboardy": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-2.3.0.tgz", + "integrity": "sha512-mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "arch": "^2.1.1", + "execa": "^1.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cliui/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/cliui/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/cliui/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "license": "MIT", "dependencies": { @@ -2239,6 +2859,19 @@ "dev": true, "license": "MIT" }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/commander": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", @@ -2270,6 +2903,16 @@ "dev": true, "license": "MIT" }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/cropperjs": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/cropperjs/-/cropperjs-1.6.2.tgz", @@ -2415,6 +3058,26 @@ } } }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/detect-indent": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", + "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/detect-libc": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", @@ -2515,12 +3178,53 @@ "url": "https://github.com/fb55/domutils?sponsor=1" } }, + "node_modules/dotenv": { + "version": "16.6.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz", + "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/dragselect": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/dragselect/-/dragselect-3.1.1.tgz", "integrity": "sha512-vaTAVcCSvv8xMLD9jD2Qe/Y0nEwnj1yQjyacDAd+znp97b5V0Prw+MxG6OknmjbnYWaN3vtsQVr+BUL9J838zA==", "license": "GPL-3.0" }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/duplexify": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.3.tgz", + "integrity": "sha512-M3BmBhwJRZsSx38lZyhE53Csddgzl5R7xGJNk7CVddZD6CcmwMCH8J+7AprIrQKH7TonKxaCjcv27Qmf+sQ+oA==", + "dev": true, + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.4.1", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1", + "stream-shift": "^1.0.2" + } + }, "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", @@ -2528,6 +3232,16 @@ "dev": true, "license": "MIT" }, + "node_modules/ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, "node_modules/electron-to-chromium": { "version": "1.5.203", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.203.tgz", @@ -2542,6 +3256,26 @@ "dev": true, "license": "MIT" }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "license": "MIT", + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, "node_modules/entities": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", @@ -2554,6 +3288,55 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/esbuild": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", @@ -2603,19 +3386,173 @@ "node": ">=6" } }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/estree-walker": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", "license": "MIT" }, - "node_modules/exsolve": { - "version": "1.0.7", + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/execa/node_modules/cross-spawn": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/execa/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/execa/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/execa/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/execa/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/exsolve": { + "version": "1.0.7", "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.7.tgz", "integrity": "sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==", "dev": true, "license": "MIT" }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true, + "license": "MIT" + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "license": "MIT", + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/external-editor/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -2650,6 +3587,22 @@ "reusify": "^1.0.4" } }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/fill-range": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", @@ -2663,6 +3616,27 @@ "node": ">=8" } }, + "node_modules/follow-redirects": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz", + "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, "node_modules/foreground-child": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", @@ -2680,6 +3654,23 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/form-data": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz", + "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", + "dev": true, + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/fraction.js": { "version": "4.3.7", "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", @@ -2741,6 +3732,126 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/gaxios": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-6.7.1.tgz", + "integrity": "sha512-LDODD4TMYx7XXdpwxAVRAIAuB0bzv0s+ywFonY46k126qzQHT9ygyoa9tncmOiQmmDrik65UYsEkv3lbfqQ3yQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "extend": "^3.0.2", + "https-proxy-agent": "^7.0.1", + "is-stream": "^2.0.0", + "node-fetch": "^2.6.9", + "uuid": "^9.0.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/gaxios/node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gcp-metadata": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.1.tgz", + "integrity": "sha512-a4tiq7E0/5fTjxPAaH4jpjkSv/uCaU2p5KC6HVGrvl0cDjA8iBZv4vv1gyzlmK0ZUKqwpOyQMKzZQe3lTit77A==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "gaxios": "^6.1.1", + "google-logging-utils": "^0.0.2", + "json-bigint": "^1.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "license": "MIT", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/gettext-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-4.2.0.tgz", + "integrity": "sha512-aMgPyjC9W5Mz9tbFU8DcQ7GYMXoFWq633kaWGt4imlcpBWzDIWk7HY7nCSZTCJxyjRaLq9L/NEjMKkZ9gR630Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "content-type": "^1.0.4", + "encoding": "^0.1.13", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.1" + } + }, "node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -2796,6 +3907,71 @@ "node": ">=8" } }, + "node_modules/google-auth-library": { + "version": "9.15.1", + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.15.1.tgz", + "integrity": "sha512-Jb6Z0+nvECVz+2lzSMt9u98UsoakXxA2HGHMCxh+so3n90XgYWkq5dur19JAJV7ONiJY22yBTyJB1TSkvPq9Ng==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "base64-js": "^1.3.0", + "ecdsa-sig-formatter": "^1.0.11", + "gaxios": "^6.1.1", + "gcp-metadata": "^6.1.0", + "gtoken": "^7.0.0", + "jws": "^4.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/google-gax": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-4.6.1.tgz", + "integrity": "sha512-V6eky/xz2mcKfAd1Ioxyd6nmA61gao3n01C+YeuIwu3vzM9EDR6wcVzMSIbLMDXWeoi9SHYctXuKYC5uJUT3eQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@grpc/grpc-js": "^1.10.9", + "@grpc/proto-loader": "^0.7.13", + "@types/long": "^4.0.0", + "abort-controller": "^3.0.0", + "duplexify": "^4.0.0", + "google-auth-library": "^9.3.0", + "node-fetch": "^2.7.0", + "object-hash": "^3.0.0", + "proto3-json-serializer": "^2.0.2", + "protobufjs": "^7.3.2", + "retry-request": "^7.0.0", + "uuid": "^9.0.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/google-logging-utils": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/google-logging-utils/-/google-logging-utils-0.0.2.tgz", + "integrity": "sha512-NEgUnEcBiP5HrPzufUkBzJOD/Sxsco3rLNo1F1TNf7ieU8ryUzBhqba8r756CjLX7rn3fHl6iLEwPYuqpoKgQQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=14" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", @@ -2803,6 +3979,20 @@ "dev": true, "license": "ISC" }, + "node_modules/gtoken": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-7.1.0.tgz", + "integrity": "sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==", + "dev": true, + "license": "MIT", + "dependencies": { + "gaxios": "^6.0.0", + "jws": "^4.0.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -2813,6 +4003,35 @@ "node": ">=8" } }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/hasown": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", @@ -2823,17 +4042,102 @@ "function-bind": "^1.1.2" }, "engines": { - "node": ">= 0.4" + "node": ">= 0.4" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "license": "MIT", + "bin": { + "he": "bin/he" + } + }, + "node_modules/html-entities": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.6.0.tgz", + "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ], + "license": "MIT" + }, + "node_modules/html-tags": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", + "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-agent/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" } }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "dev": true, "license": "MIT", - "bin": { - "he": "bin/he" + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, "node_modules/ignore": { @@ -2882,6 +4186,76 @@ "dev": true, "license": "ISC" }, + "node_modules/inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.19", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/inquirer/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", @@ -2911,6 +4285,22 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "license": "MIT", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -2944,6 +4334,19 @@ "node": ">=0.10.0" } }, + "node_modules/is-html": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-html/-/is-html-2.0.0.tgz", + "integrity": "sha512-S+OpgB5i7wzIue/YSE5hg0e5ZYfG3hhpNh9KGl6ayJ38p7ED6wxQLd1TV91xHpcTvw90KMJ9EwN3F/iNflHBVg==", + "dev": true, + "license": "MIT", + "dependencies": { + "html-tags": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/is-network-error": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-network-error/-/is-network-error-1.1.0.tgz", @@ -2976,6 +4379,29 @@ "node": ">=0.10.0" } }, + "node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -3016,6 +4442,16 @@ "dev": true, "license": "MIT" }, + "node_modules/json-bigint": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz", + "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "bignumber.js": "^9.0.0" + } + }, "node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", @@ -3033,6 +4469,29 @@ "graceful-fs": "^4.1.6" } }, + "node_modules/jwa": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.1.tgz", + "integrity": "sha512-hRF04fqJIP8Abbkq5NKGN0Bbr3JxlQ+qhZufXVr0DvujKy93ZCbXZMHDL4EOtodSbCWxOqR8MS1tXA5hwqCXDg==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-equal-constant-time": "^1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jws": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.0.tgz", + "integrity": "sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "jwa": "^2.0.0", + "safe-buffer": "^5.0.1" + } + }, "node_modules/kolorist": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", @@ -3084,6 +4543,20 @@ "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "license": "MIT" }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/long": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz", + "integrity": "sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==", + "dev": true, + "license": "Apache-2.0" + }, "node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -3106,6 +4579,16 @@ "@jridgewell/sourcemap-codec": "^1.5.0" } }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/mdn-data": { "version": "2.0.30", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", @@ -3123,6 +4606,13 @@ "node": ">= 8" } }, + "node_modules/messageformat-parser": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/messageformat-parser/-/messageformat-parser-4.1.3.tgz", + "integrity": "sha512-2fU3XDCanRqeOCkn7R5zW5VQHWf+T3hH65SzuqRvjatBK7r4uyFa5mEX+k6F9Bd04LVM5G4/BHBTUJsOdW7uyg==", + "dev": true, + "license": "MIT" + }, "node_modules/micromatch": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", @@ -3137,6 +4627,16 @@ "node": ">=8.6" } }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/mime-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/mime-match/-/mime-match-1.0.2.tgz", @@ -3146,6 +4646,29 @@ "wildcard": "^1.1.0" } }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -3221,6 +4744,13 @@ "dev": true, "license": "MIT" }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true, + "license": "ISC" + }, "node_modules/mz": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", @@ -3257,6 +4787,13 @@ "node": "^14 || ^16 || >=18" } }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true, + "license": "MIT" + }, "node_modules/node-addon-api": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", @@ -3265,6 +4802,27 @@ "license": "MIT", "optional": true }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, "node_modules/node-releases": { "version": "2.0.19", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", @@ -3292,6 +4850,29 @@ "node": ">=0.10.0" } }, + "node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", @@ -3335,12 +4916,69 @@ "wrappy": "1" } }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/openai": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/openai/-/openai-3.3.0.tgz", + "integrity": "sha512-uqxI/Au+aPRnsaQRe8CojU0eCR7I0mBiKjD3sNMzY6DaC1ZVrc85u98mtJW6voDug8fgGN+DIZmTDxTthxb7dQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "axios": "^0.26.0", + "form-data": "^4.0.0" + } + }, + "node_modules/openai/node_modules/axios": { + "version": "0.26.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz", + "integrity": "sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.14.8" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/overlayscrollbars": { "version": "2.11.5", "resolved": "https://registry.npmjs.org/overlayscrollbars/-/overlayscrollbars-2.11.5.tgz", "integrity": "sha512-vTUfCtjJbTjiarrxl9qdK04ZxlQdB4ugXfiqctVZytYDXH259OM4whROMGDE6T8uCYmSYPqiOFIKZ1erVkJnFg==", "license": "MIT" }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/p-retry": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-6.2.1.tgz", @@ -3658,14 +5296,70 @@ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/preact": { - "version": "10.27.0", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.27.0.tgz", - "integrity": "sha512-/DTYoB6mwwgPytiqQTh/7SFRL98ZdiD8Sk8zIUVOxtwq4oWcwrcd1uno9fE/zZmUaUrFNYzbH14CPebOz9tZQw==", + "node_modules/preact": { + "version": "10.27.0", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.27.0.tgz", + "integrity": "sha512-/DTYoB6mwwgPytiqQTh/7SFRL98ZdiD8Sk8zIUVOxtwq4oWcwrcd1uno9fE/zZmUaUrFNYzbH14CPebOz9tZQw==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/preact" + } + }, + "node_modules/proto3-json-serializer": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-2.0.2.tgz", + "integrity": "sha512-SAzp/O4Yh02jGdRc+uIrGoe87dkN/XtwxfZ4ZyafJHymd79ozp5VG5nyZ7ygqPM5+cpLDjjGnYFUkngonyDPOQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "protobufjs": "^7.2.5" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/protobufjs": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.4.tgz", + "integrity": "sha512-CvexbZtbov6jW2eXAvLukXjXUW1TzFaivC46BpWc/3BpcCysb5Vffu+B3XHMm8lVEuy2Mm4XGex8hBSg1yapPg==", + "dev": true, + "hasInstallScript": true, + "license": "BSD-3-Clause", + "dependencies": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/node": ">=13.7.0", + "long": "^5.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true, + "license": "MIT" + }, + "node_modules/pump": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", + "integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==", + "dev": true, "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/preact" + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, "node_modules/punycode": { @@ -3726,6 +5420,21 @@ "pify": "^2.3.0" } }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/readdirp": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", @@ -3740,6 +5449,16 @@ "url": "https://paulmillr.com/funding/" } }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", @@ -3771,6 +5490,27 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/restore-cursor/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, "node_modules/retry": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", @@ -3780,6 +5520,21 @@ "node": ">= 4" } }, + "node_modules/retry-request": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/retry-request/-/retry-request-7.0.2.tgz", + "integrity": "sha512-dUOvLMJ0/JJYEn8NrpOaGNE7X3vpI5XlZS/u0ANjqtcZVKnIxP7IgCFwrKTxENw29emmwug53awKtaMm4i9g5w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/request": "^2.48.8", + "extend": "^3.0.2", + "teeny-request": "^9.0.0" + }, + "engines": { + "node": ">=14" + } + }, "node_modules/reusify": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", @@ -3848,6 +5603,16 @@ "node": ">=8.3" } }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -3872,6 +5637,47 @@ "queue-microtask": "^1.2.2" } }, + "node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "license": "MIT" + }, "node_modules/sass": { "version": "1.90.0", "resolved": "https://registry.npmjs.org/sass/-/sass-1.90.0.tgz", @@ -3893,6 +5699,13 @@ "@parcel/watcher": "^2.4.1" } }, + "node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", + "dev": true, + "license": "ISC" + }, "node_modules/semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", @@ -3981,6 +5794,33 @@ "dev": true, "license": "BSD-3-Clause" }, + "node_modules/stream-events": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/stream-events/-/stream-events-1.0.5.tgz", + "integrity": "sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==", + "dev": true, + "license": "MIT", + "dependencies": { + "stubs": "^3.0.0" + } + }, + "node_modules/stream-shift": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz", + "integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, "node_modules/string-argv": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", @@ -4095,6 +5935,16 @@ "node": ">=8" } }, + "node_modules/strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -4108,6 +5958,13 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/stubs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz", + "integrity": "sha512-PdHt7hHUJKxvTCgbKX9C1V/ftOcjJQgz8BZwNfV5c4B6dcGqlpelTbJ999jBGZ2jYiPAwcX5dP6oBwVlBlUbxw==", + "dev": true, + "license": "MIT" + }, "node_modules/sucrase": { "version": "3.35.0", "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", @@ -4345,6 +6202,50 @@ "node": ">=8.10.0" } }, + "node_modules/teeny-request": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/teeny-request/-/teeny-request-9.0.0.tgz", + "integrity": "sha512-resvxdc6Mgb7YEThw6G6bExlXKkv6+YbuzGg9xuXxSgxJF7Ozs+o8Y9+2R3sArdWdW8nOokoQb1yrpFB0pQK2g==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "node-fetch": "^2.6.9", + "stream-events": "^1.0.5", + "uuid": "^9.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/teeny-request/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/teeny-request/node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/thenify": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", @@ -4368,6 +6269,26 @@ "node": ">=0.8" } }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true, + "license": "MIT" + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -4381,6 +6302,13 @@ "node": ">=8.0" } }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true, + "license": "MIT" + }, "node_modules/ts-interface-checker": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", @@ -4388,13 +6316,50 @@ "dev": true, "license": "Apache-2.0" }, + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "license": "0BSD" + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typechat": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/typechat/-/typechat-0.0.10.tgz", + "integrity": "sha512-iF/wLLaZWt4Q9WO8stpq3NKilAa4b8hnCD16EirdhaxzAYk80MCb1wnW1il7GhkMNJuhJUD38dxs8q4A/EdxJw==", + "dev": true, + "license": "MIT", + "workspaces": [ + "./", + "./examples/*" + ], + "dependencies": { + "axios": "^1.4.0", + "typescript": "^5.1.3" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/typescript": { "version": "5.9.2", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz", "integrity": "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==", "devOptional": true, "license": "Apache-2.0", - "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -4475,6 +6440,20 @@ "dev": true, "license": "MIT" }, + "node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "dev": true, + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/vanilla-lazyload": { "version": "17.9.0", "resolved": "https://registry.npmjs.org/vanilla-lazyload/-/vanilla-lazyload-17.9.0.tgz", @@ -4733,6 +6712,24 @@ "integrity": "sha512-VkkBhU97Ki+XJ0xvl4C9YJsIZ2uIlQ7HqPpZOS3m9VCvmROPaChZU6DexdMJqvz9tbgG+4EtFVrSuailUq5KGQ==", "license": "MIT" }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dev": true, + "license": "MIT", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -4860,6 +6857,40 @@ "dev": true, "license": "ISC" }, + "node_modules/xml2js": { + "version": "0.4.23", + "resolved": "https://github.com/fkirc/node-xml2js/tarball/680ee7ed2dad8b9ddacc37b5e4b4a671706e0bcf", + "integrity": "sha512-aHk86weBrt44bXfoKtnJo+XXLo0ny8DQbnP/biwj6G1CAFLLZdsZkvZf/4lJmZZp6Ye6QpdcECFuvfy4zI87cw==", + "dev": true, + "license": "MIT", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "https://github.com/fkirc/xmlbuilder-js/tarball/e287de6254b719c1565ab47745d2140b137d9021" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xmlbuilder": { + "version": "15.1.1", + "resolved": "https://github.com/fkirc/xmlbuilder-js/tarball/e287de6254b719c1565ab47745d2140b137d9021", + "integrity": "sha512-SOFGrFFUuOGSu8gL5LsYXtuDP4Ck0jKT6fYKoR129197ByNpgkywmAitnBkCyTj8Nstae3YRQUsm6Rsv8cL/KQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -4879,6 +6910,80 @@ "engines": { "node": ">= 14.6" } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/yargs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } } } } diff --git a/package.json b/package.json index 4862d26a..0704382b 100755 --- a/package.json +++ b/package.json @@ -36,6 +36,7 @@ "@types/node": "^18.7.1", "@vitejs/plugin-vue": "^4.0.0", "@vue/tsconfig": "^0.7.0", + "attranslate": "^2.2.0", "autoprefixer": "^10.4.8", "postcss": "^8.4.16", "rollup-plugin-copy": "^3.5.0", diff --git a/scripts/addLocale.cjs b/scripts/addLocale.js similarity index 79% rename from scripts/addLocale.cjs rename to scripts/addLocale.js index 56e18cc9..898d7c48 100644 --- a/scripts/addLocale.cjs +++ b/scripts/addLocale.js @@ -1,13 +1,17 @@ -const fs = require('fs'); -const path = require('path'); -const { parseArgs } = require('node:util'); +import fs from 'fs' +import path from 'path' +import { parseArgs } from 'node:util'; +import { dirname } from 'node:path'; +import { fileURLToPath } from 'node:url'; + +export const __dirname = dirname(fileURLToPath(import.meta.url)); /** * Generates a JavaScript and JSON file for a given locale. * @param {string} locale - The locale code (e.g., "en", "fr"). * @param {string} uppyLocale - the uppy locale code */ -function addLocale(locale, uppyLocale) { +export function addLocale(locale, uppyLocale) { const jsFilePath = path.resolve(__dirname, `../src/locales/${locale}.js`); const jsonFilePath = path.resolve(__dirname, `../src/locales/json/${locale}.json`); const uppyLocalePath = path.resolve(__dirname, `../node_modules/@uppy/locales/lib/${uppyLocale}.js`) diff --git a/scripts/translate.js b/scripts/translate.js new file mode 100644 index 00000000..63e0872a --- /dev/null +++ b/scripts/translate.js @@ -0,0 +1,80 @@ +import { addLocale, __dirname } from "./addLocale.js"; +import { execSync } from 'child_process'; +import path from 'path'; + +const locales = [ + // {'locale': 'en', 'uppyLocale': 'en_US', 'lang': 'English'}, + {'locale': 'de', 'uppyLocale': 'de_DE', 'lang': 'German'}, + {'locale': 'af', 'uppyLocale': null, 'lang': 'Afrikaans'}, + {'locale': 'bg', 'uppyLocale': 'bg_BG', 'lang': 'Bulgarian'}, + {'locale': 'cs', 'uppyLocale': 'cs_CZ', 'lang': 'Czech'}, + {'locale': 'el', 'uppyLocale': 'el_GR', 'lang': 'Greek'}, + {'locale': 'es', 'uppyLocale': 'es_ES', 'lang': 'Spanish'}, + {'locale': 'fa', 'uppyLocale': 'fa_IR', 'lang': 'Persian'}, + {'locale': 'fr', 'uppyLocale': 'fr_FR', 'lang': 'French'}, + {'locale': 'he', 'uppyLocale': 'he_IL', 'lang': 'Hebrew'}, + // {'locale': 'hy', 'uppyLocale': null, 'lang': 'Armenian'}, + {'locale': 'it', 'uppyLocale': 'it_IT', 'lang': 'Italian'}, + // {'locale': 'ka', 'uppyLocale': null, 'lang': 'Georgian'}, + // {'locale': 'lb', 'uppyLocale': null, 'lang': 'Luxembourgish'}, + // {'locale': 'mk', 'uppyLocale': null, 'lang': 'Macedonian'}, + {'locale': 'nl', 'uppyLocale': 'nl_NL', 'lang': 'Dutch'}, + {'locale': 'pt', 'uppyLocale': 'pt_PT', 'lang': 'Portuguese'}, + {'locale': 'ru', 'uppyLocale': 'ru_RU', 'lang': 'Russian'}, + {'locale': 'th', 'uppyLocale': 'th_TH', 'lang': 'Thai'}, + {'locale': 'vi', 'uppyLocale': 'vi_VN', 'lang': 'Vietnamese'}, + {'locale': 'ar', 'uppyLocale': 'ar_SA', 'lang': 'Arabic'}, + {'locale': 'bs', 'uppyLocale': null, 'lang': 'Bosnian'}, + {'locale': 'da', 'uppyLocale': 'da_DK', 'lang': 'Danish'}, + // {'locale': 'et', 'uppyLocale': null, 'lang': 'Estonian'}, + {'locale': 'fi', 'uppyLocale': 'fi_FI', 'lang': 'Finnish'}, + {'locale': 'gl', 'uppyLocale': 'gl_ES', 'lang': 'Galician'}, + {'locale': 'hr', 'uppyLocale': 'hr_HR', 'lang': 'Croatian'}, + {'locale': 'id', 'uppyLocale': 'id_ID', 'lang': 'Indonesian'}, + {'locale': 'ja', 'uppyLocale': 'ja_JP', 'lang': 'Japanese'}, + // {'locale': 'km', 'uppyLocale': null, 'lang': 'Khmer'}, + // {'locale': 'lt', 'uppyLocale': null, 'lang': 'Lithuanian'}, + // {'locale': 'mn', 'uppyLocale': null, 'lang': 'Mongolian'}, + {'locale': 'pl', 'uppyLocale': 'pl_PL', 'lang': 'Polish'}, + {'locale': 'sk', 'uppyLocale': 'sk_SK', 'lang': 'Slovak'}, + {'locale': 'sr', 'uppyLocale': 'sr_RS_Latin', 'lang': 'Serbian'}, + {'locale': 'tr', 'uppyLocale': 'tr_TR', 'lang': 'Turkish'}, + {'locale': 'zh_CN', 'uppyLocale': 'zh_CN', 'lang': 'Chinese'}, + {'locale': 'az', 'uppyLocale': null, 'lang': 'Azerbaijani'}, + {'locale': 'ca', 'uppyLocale': 'ca_ES', 'lang': 'Catalan'}, + // {'locale': 'eu', 'uppyLocale': null, 'lang': 'Basque'}, + // {'locale': 'gu', 'uppyLocale': null, 'lang': 'Gujarati'}, + {'locale': 'hu', 'uppyLocale': 'hu_HU', 'lang': 'Hungarian'}, + {'locale': 'is', 'uppyLocale': 'is_IS', 'lang': 'Icelandic'}, + // {'locale': 'kab', 'uppyLocale': null, 'lang': 'Kabyle'}, + {'locale': 'ko', 'uppyLocale': 'ko_KR', 'lang': 'Korean'}, + // {'locale': 'lv', 'uppyLocale': null, 'lang': 'Latvian'}, + {'locale': 'nb', 'uppyLocale': 'nb_NO', 'lang': '"Norwegian Bokmål"'}, + {'locale': 'ro', 'uppyLocale': 'ro_RO', 'lang': 'Romanian'}, + {'locale': 'sl', 'uppyLocale': null, 'lang': 'Slovenian'}, + {'locale': 'sv', 'uppyLocale': 'sv_SE', 'lang': 'Swedish'}, + {'locale': 'uk', 'uppyLocale': 'uk_UA', 'lang': 'Ukrainian'}, + {'locale': 'hi', 'uppyLocale': 'hi_IN', 'lang': 'Hindi'}, +]; + +locales.forEach(({ locale, uppyLocale, lang }) => { + try { + addLocale(locale, uppyLocale ?? 'en_US'); + console.log(`Locale added: ${locale}`); + + const srcFile = path.resolve(__dirname, `../src/locales/json/en.json`); + const targetFile = path.resolve(__dirname, `../src/locales/json/${locale}.json`); + + execSync( + `npx attranslate --srcFile ${srcFile} --srcLng English --srcFormat nested-json --targetFile ${targetFile} --targetLng ${lang} --targetFormat nested-json --service typechat-manual`, + { stdio: 'inherit' } + ); + + console.log(`Translations created for locale: ${locale}`); + } catch (error) { + console.error(`Failed to process locale ${locale}:`, error); + } +}); + + + diff --git a/src/locales/af.js b/src/locales/af.js new file mode 100644 index 00000000..4c5c220c --- /dev/null +++ b/src/locales/af.js @@ -0,0 +1,7 @@ +import locale from "./json/af.json"; +import uppyLocale from "@uppy/locales/lib/en_US.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/az.js b/src/locales/az.js new file mode 100644 index 00000000..89af36e9 --- /dev/null +++ b/src/locales/az.js @@ -0,0 +1,7 @@ +import locale from "./json/az.json"; +import uppyLocale from "@uppy/locales/lib/en_US.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/bg.js b/src/locales/bg.js new file mode 100644 index 00000000..fb887c41 --- /dev/null +++ b/src/locales/bg.js @@ -0,0 +1,7 @@ +import locale from "./json/bg.json"; +import uppyLocale from "@uppy/locales/lib/bg_BG.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/bs.js b/src/locales/bs.js new file mode 100644 index 00000000..77002036 --- /dev/null +++ b/src/locales/bs.js @@ -0,0 +1,7 @@ +import locale from "./json/bs.json"; +import uppyLocale from "@uppy/locales/lib/en_US.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/ca.js b/src/locales/ca.js new file mode 100644 index 00000000..a42593a1 --- /dev/null +++ b/src/locales/ca.js @@ -0,0 +1,7 @@ +import locale from "./json/ca.json"; +import uppyLocale from "@uppy/locales/lib/ca_ES.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/cs.js b/src/locales/cs.js new file mode 100644 index 00000000..e8f90b15 --- /dev/null +++ b/src/locales/cs.js @@ -0,0 +1,7 @@ +import locale from "./json/cs.json"; +import uppyLocale from "@uppy/locales/lib/cs_CZ.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/da.js b/src/locales/da.js new file mode 100644 index 00000000..153c3bc2 --- /dev/null +++ b/src/locales/da.js @@ -0,0 +1,7 @@ +import locale from "./json/da.json"; +import uppyLocale from "@uppy/locales/lib/da_DK.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/el.js b/src/locales/el.js new file mode 100644 index 00000000..82601244 --- /dev/null +++ b/src/locales/el.js @@ -0,0 +1,7 @@ +import locale from "./json/el.json"; +import uppyLocale from "@uppy/locales/lib/el_GR.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/es.js b/src/locales/es.js new file mode 100644 index 00000000..fad55dd9 --- /dev/null +++ b/src/locales/es.js @@ -0,0 +1,7 @@ +import locale from "./json/es.json"; +import uppyLocale from "@uppy/locales/lib/es_ES.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/fi.js b/src/locales/fi.js new file mode 100644 index 00000000..b0732388 --- /dev/null +++ b/src/locales/fi.js @@ -0,0 +1,7 @@ +import locale from "./json/fi.json"; +import uppyLocale from "@uppy/locales/lib/fi_FI.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/gl.js b/src/locales/gl.js new file mode 100644 index 00000000..0d785afd --- /dev/null +++ b/src/locales/gl.js @@ -0,0 +1,7 @@ +import locale from "./json/gl.json"; +import uppyLocale from "@uppy/locales/lib/gl_ES.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/hr.js b/src/locales/hr.js new file mode 100644 index 00000000..2de4f984 --- /dev/null +++ b/src/locales/hr.js @@ -0,0 +1,7 @@ +import locale from "./json/hr.json"; +import uppyLocale from "@uppy/locales/lib/hr_HR.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/hu.js b/src/locales/hu.js new file mode 100644 index 00000000..2876ba58 --- /dev/null +++ b/src/locales/hu.js @@ -0,0 +1,7 @@ +import locale from "./json/hu.json"; +import uppyLocale from "@uppy/locales/lib/hu_HU.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/id.js b/src/locales/id.js new file mode 100644 index 00000000..9e8ea20b --- /dev/null +++ b/src/locales/id.js @@ -0,0 +1,7 @@ +import locale from "./json/id.json"; +import uppyLocale from "@uppy/locales/lib/id_ID.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/is.js b/src/locales/is.js new file mode 100644 index 00000000..b882a6d6 --- /dev/null +++ b/src/locales/is.js @@ -0,0 +1,7 @@ +import locale from "./json/is.json"; +import uppyLocale from "@uppy/locales/lib/is_IS.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/it.js b/src/locales/it.js new file mode 100644 index 00000000..6532ab3a --- /dev/null +++ b/src/locales/it.js @@ -0,0 +1,7 @@ +import locale from "./json/it.json"; +import uppyLocale from "@uppy/locales/lib/it_IT.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/json/af.json b/src/locales/json/af.json new file mode 100644 index 00000000..5676050e --- /dev/null +++ b/src/locales/json/af.json @@ -0,0 +1,102 @@ +{ + "Language": "Taal", + "Create": "Skep", + "Close": "Sluit", + "Cancel": "Kanselleer", + "Save": "Stoor", + "Edit": "Wysig", + "Crop": "Sny", + "New Folder": "Nuwe Gids", + "New File": "Nuwe Lêer", + "Rename": "Hernoem", + "Delete": "Vee uit", + "Upload": "Laai op", + "Download": "Laai af", + "Archive": "Argiveer", + "Unarchive": "Deargiveer", + "Open": "Maak oop", + "Open containing folder": "Maak bevattende gids oop", + "Refresh": "Verfris", + "Preview": "Voorskou", + "Toggle Full Screen": "Wissel volskerm", + "Change View": "Verander aansig", + "Storage": "Berging", + "Go up a directory": "Gaan 'n gids op", + "Search anything..": "Soek enigiets..", + "Name": "Naam", + "Size": "Grootte", + "Date": "Datum", + "Filepath": "Lêerpad", + "Folder Name": "Gidsnaam", + "File Name": "Lêernaam", + "Move files": "Skuif lêers", + "Yes, Move!": "Ja, Skuif!", + "Delete files": "Vee lêers uit", + "Yes, Delete!": "Ja, Vee uit!", + "Upload Files": "Laai lêers op", + "No files selected!": "Geen lêers gekies nie!", + "Select Files": "Kies lêers", + "Archive the files": "Argiveer die lêers", + "Unarchive the files": "Deargiveer die lêers", + "The archive will be unarchived at": "Die argief sal dearigveer word by", + "Archive name. (.zip file will be created)": "Argiefnaam. (.zip-lêer sal geskep word)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder is 'n lêerbestuurderkomponent vir Vue 3.", + "Create a new folder": "Skep 'n nuwe vouer", + "Create a new file": "Skep 'n nuwe lêer", + "Are you sure you want to delete these files?": "Is jy seker jy wil hierdie lêers uitvee?", + "This action cannot be undone.": "Hierdie aksie kan nie ongedaan gemaak word nie.", + "Search results for": "Soekresultate vir", + "%s item(s) selected.": "%s item(s) gekies.", + "%s is renamed.": "%s is hernoem.", + "This is a readonly storage.": "Dit is 'n leesalleen-berging.", + "%s is created.": "%s is geskep.", + "Files moved.": "Lêers geskuif.", + "Files deleted.": "Lêers uitgevee.", + "The file unarchived.": "Die lêer dearigveer.", + "The file(s) archived.": "Die lêer(s) geargiveer.", + "Updated.": "Opgedateer.", + "No search result found.": "Geen soekresultaat gevind nie.", + "Are you sure you want to move these files?": "Is jy seker jy wil hierdie lêers skuif?", + "File Size": "Lêergrootte", + "Last Modified": "Laas gewysig", + "Select Folders": "Kies Vouers", + "Clear all": "Vee alles uit", + "Clear only successful": "Vee slegs suksesvolles uit", + "Drag and drop the files/folders to here or click here.": "Sleep en los die lêers/vouers hierheen of klik hier.", + "Release to drop these files.": "Los om hierdie lêers te laat val.", + "Canceled": "Gekanselleer", + "Done": "Klaar", + "Network Error, Unable establish connection to the server or interrupted.": "Netwerkfout, kon nie verbinding met die bediener bewerkstellig nie of onderbreek.", + "Pending upload": "Hangende", + "Please select file to upload first.": "Kies asseblief eers 'n lêer om op te laai.", + "About": "Oor", + "Settings": "Instellings", + "Shortcuts": "Kortpaaie", + "Reset": "Herstel", + "Escape": "Ontsnap", + "Search": "Soek", + "Toggle Sidebar": "Wissel Sybalk", + "Open Settings": "Maak Instellings oop", + "Reset all settings to default": "Herstel alle instellings na verstek", + "Use Metric Units": "Gebruik Metrieke Eenhede", + "Saved.": "Gestoor.", + "Reset Settings": "Herstel Instellings", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Aflaai werk nie? Jy kan probeer om regskliek op die \"Aflaai\"-knoppie, kies \"Stoor skakel as...\".", + "Theme": "Tema", + "Dark": "Donker", + "Light": "Lig", + "System": "Stelsel", + "Target Directory": "Teiken Gids", + "Select": "Kies", + "Compact list view": "Kompakte lysaansig", + "Show thumbnails": "Wys kleinkiekies", + "Persist path on reload": "Behou pad by herlaai", + "Select All": "Kies alles", + "Pinned Folders": "Vasgespelde vouers", + "No folders pinned": "Geen vouers vasgespel nie", + "Pin Folder": "Speld vouer vas", + "Unpin Folder": "Ontspeld vouer", + "Project home": "Projek tuis", + "Follow on GitHub": "Volg op GitHub", + "Customize your experience with the following settings": "Pas jou ervaring aan met die volgende instellings" +} \ No newline at end of file diff --git a/src/locales/json/az.json b/src/locales/json/az.json new file mode 100644 index 00000000..7577bc52 --- /dev/null +++ b/src/locales/json/az.json @@ -0,0 +1,102 @@ +{ + "Language": "Dil", + "Create": "Yarat", + "Close": "Bağla", + "Cancel": "Ləğv et", + "Save": "Yadda saxla", + "Edit": "Redaktə et", + "Crop": "Kəs", + "New Folder": "Yeni Qovluq", + "New File": "Yeni Fayl", + "Rename": "Adını dəyiş", + "Delete": "Sil", + "Upload": "Yüklə", + "Download": "Endir", + "Archive": "Arxivləşdir", + "Unarchive": "Arxivdən çıxar", + "Open": "Aç", + "Open containing folder": "Daxil olduğu qovluğu aç", + "Refresh": "Yenilə", + "Preview": "Önizləmə", + "Toggle Full Screen": "Tam Ekranı Dəyiş", + "Change View": "Görünüşü Dəyiş", + "Storage": "Yaddaş", + "Go up a directory": "Bir qovluq yuxarı get", + "Search anything..": "Hər şeyi axtar..", + "Name": "Ad", + "Size": "Ölçü", + "Date": "Tarix", + "Filepath": "Fayl yolu", + "Folder Name": "Qovluq Adı", + "File Name": "Fayl Adı", + "Move files": "Faylları köçür", + "Yes, Move!": "Bəli, Köçür!", + "Delete files": "Faylları sil", + "Yes, Delete!": "Bəli, Sil!", + "Upload Files": "Faylları yüklə", + "No files selected!": "Heç bir fayl seçilməyib!", + "Select Files": "Faylları seç", + "Archive the files": "Faylları arxivləşdir", + "Unarchive the files": "Faylları arxivdən çıxar", + "The archive will be unarchived at": "Arxiv arxivdən çıxarılacaq", + "Archive name. (.zip file will be created)": "Arxiv adı. (.zip faylı yaradılacaq)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder Vue 3 üçün fayl idarəetmə komponentidir.", + "Create a new folder": "Yeni qovluq yarat", + "Create a new file": "Yeni fayl yarat", + "Are you sure you want to delete these files?": "Bu faylları silmək istədiyinizə əminsinizmi?", + "This action cannot be undone.": "Bu əməliyyat geri qaytarıla bilməz.", + "Search results for": "Axtarış nəticələri:", + "%s item(s) selected.": "%s element seçildi.", + "%s is renamed.": "%s adı dəyişdirildi.", + "This is a readonly storage.": "Bu, yalnız oxumaq üçün yaddaşdır.", + "%s is created.": "%s yaradıldı.", + "Files moved.": "Fayllar köçürüldü.", + "Files deleted.": "Fayllar silindi.", + "The file unarchived.": "Fayl arxivdən çıxarıldı.", + "The file(s) archived.": "Fayl(lar) arxivləşdirildi.", + "Updated.": "Yeniləndi.", + "No search result found.": "Axtarış nəticəsi tapılmadı.", + "Are you sure you want to move these files?": "Bu faylları köçürmək istədiyinizə əminsinizmi?", + "File Size": "Fayl ölçüsü", + "Last Modified": "Son dəyişiklik", + "Select Folders": "Qovluqları Seç", + "Clear all": "Hamısını təmizlə", + "Clear only successful": "Yalnız uğurlu olanları təmizlə", + "Drag and drop the files/folders to here or click here.": "Faylları/qovluqları bura sürüşdürüb buraxın və ya bura klikləyin.", + "Release to drop these files.": "Bu faylları buraxmaq üçün sərbəst buraxın.", + "Canceled": "Ləğv edildi", + "Done": "Hazırdır", + "Network Error, Unable establish connection to the server or interrupted.": "Şəbəkə Xətası, Serverə qoşulmaq mümkün deyil və ya əlaqə kəsildi.", + "Pending upload": "Gözləyir", + "Please select file to upload first.": "Zəhmət olmasa, əvvəlcə yükləmək üçün fayl seçin.", + "About": "Haqqında", + "Settings": "Ayarlar", + "Shortcuts": "Qısa yollar", + "Reset": "Sıfırla", + "Escape": "Escape", + "Search": "Axtarış", + "Toggle Sidebar": "Yan paneli aç/bağla", + "Open Settings": "Ayarları Aç", + "Reset all settings to default": "Bütün ayarları ilkin vəziyyətinə qaytar", + "Use Metric Units": "Metrik Vahidlərdən istifadə et", + "Saved.": "Saxlandı.", + "Reset Settings": "Ayarları Sıfırla", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Yükləmə işləmir? \"Yüklə\" düyməsinə sağ klik edib \"Linki fərqli yadda saxla...\" seçə bilərsiniz.", + "Theme": "Mövzu", + "Dark": "Tünd", + "Light": "Açıq", + "System": "Sistem", + "Target Directory": "Hədəf Qovluq", + "Select": "Seç", + "Compact list view": "Yığcam siyahı görünüşü", + "Show thumbnails": "Miniatürləri göstər", + "Persist path on reload": "Yenidən yüklədikdə yolu saxla", + "Select All": "Hamısını seç", + "Pinned Folders": "Sancılmış Qovluqlar", + "No folders pinned": "Sancılmış qovluq yoxdur", + "Pin Folder": "Qovluğu sanc", + "Unpin Folder": "Qovluğu sancmanı ləğv et", + "Project home": "Layihənin əsas səhifəsi", + "Follow on GitHub": "GitHub-da izlə", + "Customize your experience with the following settings": "Təcrübənizi aşağıdakı parametrlərlə fərdiləşdirin" +} \ No newline at end of file diff --git a/src/locales/json/bg.json b/src/locales/json/bg.json new file mode 100644 index 00000000..934d513b --- /dev/null +++ b/src/locales/json/bg.json @@ -0,0 +1,102 @@ +{ + "Language": "Език", + "Create": "Създай", + "Close": "Затвори", + "Cancel": "Отмени", + "Save": "Запази", + "Edit": "Редактирай", + "Crop": "Изрежи", + "New Folder": "Нова папка", + "New File": "Нов файл", + "Rename": "Преименувай", + "Delete": "Изтрий", + "Upload": "Качи", + "Download": "Изтегли", + "Archive": "Архивирай", + "Unarchive": "Разархивирай", + "Open": "Отвори", + "Open containing folder": "Отвори съдържащата папка", + "Refresh": "Опресни", + "Preview": "Преглед", + "Toggle Full Screen": "Режим на цял екран", + "Change View": "Смени изглед", + "Storage": "Съхранение", + "Go up a directory": "Нагоре в директорията", + "Search anything..": "Търсене...", + "Name": "Име", + "Size": "Размер", + "Date": "Дата", + "Filepath": "Път до файл", + "Folder Name": "Име на папка", + "File Name": "Име на файл", + "Move files": "Премести файлове", + "Yes, Move!": "Да, премести!", + "Delete files": "Изтрий файлове", + "Yes, Delete!": "Да, изтрий!", + "Upload Files": "Качване на файлове", + "No files selected!": "Няма избрани файлове!", + "Select Files": "Избор на файлове", + "Archive the files": "Архивирай файловете", + "Unarchive the files": "Разархивирай файловете", + "The archive will be unarchived at": "Архивът ще бъде разархивиран на", + "Archive name. (.zip file will be created)": "Име на архив. (ще бъде създаден .zip файл)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder е компонент за управление на файлове за Vue 3.", + "Create a new folder": "Създай нова папка", + "Create a new file": "Създай нов файл", + "Are you sure you want to delete these files?": "Сигурни ли сте, че искате да изтриете тези файлове?", + "This action cannot be undone.": "Това действие не може да бъде отменено.", + "Search results for": "Резултати от търсенето за", + "%s item(s) selected.": "Избрани са %s елемента.", + "%s is renamed.": "%s е преименуван.", + "This is a readonly storage.": "Това е хранилище само за четене.", + "%s is created.": "%s е създаден.", + "Files moved.": "Файловете са преместени.", + "Files deleted.": "Файловете са изтрити.", + "The file unarchived.": "Файлът е разархивиран.", + "The file(s) archived.": "Файл(овете) са архивирани.", + "Updated.": "Актуализирано.", + "No search result found.": "Няма намерени резултати от търсенето.", + "Are you sure you want to move these files?": "Сигурни ли сте, че искате да преместите тези файлове?", + "File Size": "Размер на файла", + "Last Modified": "Последна промяна", + "Select Folders": "Изберете папки", + "Clear all": "Изчисти всички", + "Clear only successful": "Изчисти само успешните", + "Drag and drop the files/folders to here or click here.": "Плъзнете и пуснете файловете/папките тук или щракнете тук.", + "Release to drop these files.": "Пуснете, за да добавите тези файлове.", + "Canceled": "Отменено", + "Done": "Готово", + "Network Error, Unable establish connection to the server or interrupted.": "Мрежова грешка, неуспешно свързване със сървъра или прекъсната връзка.", + "Pending upload": "Изчаква качване", + "Please select file to upload first.": "Моля, първо изберете файл за качване.", + "About": "Относно", + "Settings": "Настройки", + "Shortcuts": "Кратки команди", + "Reset": "Нулиране", + "Escape": "Изход", + "Search": "Търсене", + "Toggle Sidebar": "Превключване на страничната лента", + "Open Settings": "Отвори настройките", + "Reset all settings to default": "Нулирай всички настройки по подразбиране", + "Use Metric Units": "Използвай метрични единици", + "Saved.": "Записано.", + "Reset Settings": "Нулиране на настройките", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Изтеглянето не работи? Опитайте с десен бутон върху бутона \"Изтегли\" и изберете \"Запази връзката като...\".", + "Theme": "Тема", + "Dark": "Тъмна", + "Light": "Светла", + "System": "Системна", + "Target Directory": "Целева директория", + "Select": "Избери", + "Compact list view": "Компактен изглед на списък", + "Show thumbnails": "Показвай миниатюри", + "Persist path on reload": "Запази пътя при презареждане", + "Select All": "Избери всички", + "Pinned Folders": "Закачени папки", + "No folders pinned": "Няма закачени папки", + "Pin Folder": "Закачи папка", + "Unpin Folder": "Откачи папка", + "Project home": "Начало на проекта", + "Follow on GitHub": "Последвай в GitHub", + "Customize your experience with the following settings": "Персонализирай изживяването си със следните настройки" +} \ No newline at end of file diff --git a/src/locales/json/bs.json b/src/locales/json/bs.json new file mode 100644 index 00000000..4b5d20d2 --- /dev/null +++ b/src/locales/json/bs.json @@ -0,0 +1,102 @@ +{ + "Language": "Jezik", + "Create": "Kreiraj", + "Close": "Zatvori", + "Cancel": "Poništi", + "Save": "Sačuvaj", + "Edit": "Uredi", + "Crop": "Izreži", + "New Folder": "Nova mapa", + "New File": "Nova datoteka", + "Rename": "Preimenuj", + "Delete": "Izbriši", + "Upload": "Učitaj", + "Download": "Preuzmi", + "Archive": "Arhiviraj", + "Unarchive": "Dearhiviraj", + "Open": "Otvori", + "Open containing folder": "Otvori mapu koja sadrži", + "Refresh": "Osvježi", + "Preview": "Pregled", + "Toggle Full Screen": "Prebaci na cijeli ekran", + "Change View": "Promijeni prikaz", + "Storage": "Pohrana", + "Go up a directory": "Idi nivo gore", + "Search anything..": "Pretraži bilo šta...", + "Name": "Naziv", + "Size": "Veličina", + "Date": "Datum", + "Filepath": "Putanja datoteke", + "Folder Name": "Naziv mape", + "File Name": "Naziv datoteke", + "Move files": "Premjesti datoteke", + "Yes, Move!": "Da, premjesti!", + "Delete files": "Izbriši datoteke", + "Yes, Delete!": "Da, izbriši!", + "Upload Files": "Učitaj datoteke", + "No files selected!": "Nijedna datoteka nije odabrana!", + "Select Files": "Odaberi datoteke", + "Archive the files": "Arhiviraj datoteke", + "Unarchive the files": "Dearhiviraj datoteke", + "The archive will be unarchived at": "Arhiva će biti dearhivirana na", + "Archive name. (.zip file will be created)": "Naziv arhive. (.zip datoteka će biti kreirana)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder je komponenta za upravljanje datotekama za Vue 3.", + "Create a new folder": "Kreiraj novu mapu", + "Create a new file": "Kreiraj novu datoteku", + "Are you sure you want to delete these files?": "Jeste li sigurni da želite izbrisati ove datoteke?", + "This action cannot be undone.": "Ova radnja se ne može poništiti.", + "Search results for": "Rezultati pretrage za", + "%s item(s) selected.": "%s stavka(e) odabrano.", + "%s is renamed.": "%s je preimenovan(o).", + "This is a readonly storage.": "Ovo je skladište samo za čitanje.", + "%s is created.": "%s je kreiran(o).", + "Files moved.": "Datoteke premještene.", + "Files deleted.": "Datoteke izbrisane.", + "The file unarchived.": "Datoteka dearhivirana.", + "The file(s) archived.": "Datoteka(e) arhivirana.", + "Updated.": "Ažurirano.", + "No search result found.": "Nema pronađenih rezultata pretrage.", + "Are you sure you want to move these files?": "Jeste li sigurni da želite premjestiti ove datoteke?", + "File Size": "Veličina datoteke", + "Last Modified": "Zadnja izmjena", + "Select Folders": "Odaberi mape", + "Clear all": "Obriši sve", + "Clear only successful": "Obriši samo uspješne", + "Drag and drop the files/folders to here or click here.": "Prevucite i ispustite datoteke/mape ovdje ili kliknite ovdje.", + "Release to drop these files.": "Pustite da ispustite ove datoteke.", + "Canceled": "Otkazano", + "Done": "Završeno", + "Network Error, Unable establish connection to the server or interrupted.": "Greška mreže, Nije moguće uspostaviti vezu sa serverom ili je prekinuta.", + "Pending upload": "Na čekanju", + "Please select file to upload first.": "Molimo prvo odaberite datoteku za otpremanje.", + "About": "O nama", + "Settings": "Postavke", + "Shortcuts": "Prečice", + "Reset": "Poništi", + "Escape": "Escape", + "Search": "Pretraga", + "Toggle Sidebar": "Prebaci bočnu traku", + "Open Settings": "Otvori postavke", + "Reset all settings to default": "Poništi sve postavke na zadane", + "Use Metric Units": "Koristi metričke jedinice", + "Saved.": "Sačuvano.", + "Reset Settings": "Poništi postavke", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Preuzimanje ne radi? Možete pokušati desnim klikom na dugme \"Preuzmi\", odaberite \"Sačuvaj vezu kao...\".", + "Theme": "Tema", + "Dark": "Tamna", + "Light": "Svijetla", + "System": "Sistem", + "Target Directory": "Ciljni direktorij", + "Select": "Odaberi", + "Compact list view": "Kompaktan prikaz liste", + "Show thumbnails": "Prikaži sličice", + "Persist path on reload": "Zadrži putanju pri ponovnom učitavanju", + "Select All": "Odaberi sve", + "Pinned Folders": "Zakačene mape", + "No folders pinned": "Nema zakačenih mapa", + "Pin Folder": "Zakači mapu", + "Unpin Folder": "Otkvači mapu", + "Project home": "Početna stranica projekta", + "Follow on GitHub": "Pratite na GitHubu", + "Customize your experience with the following settings": "Prilagodite svoje iskustvo sljedećim postavkama" +} \ No newline at end of file diff --git a/src/locales/json/ca.json b/src/locales/json/ca.json new file mode 100644 index 00000000..f3b55123 --- /dev/null +++ b/src/locales/json/ca.json @@ -0,0 +1,102 @@ +{ + "Language": "Idioma", + "Create": "Crear", + "Close": "Tancar", + "Cancel": "Cancel·lar", + "Save": "Desar", + "Edit": "Editar", + "Crop": "Retallar", + "New Folder": "Carpeta nova", + "New File": "Fitxer nou", + "Rename": "Canviar nom", + "Delete": "Suprimir", + "Upload": "Pujar", + "Download": "Baixar", + "Archive": "Arxivar", + "Unarchive": "Desarxivar", + "Open": "Obrir", + "Open containing folder": "Obrir carpeta que el conté", + "Refresh": "Actualitzar", + "Preview": "Previsualitzar", + "Toggle Full Screen": "Activar/desactivar pantalla completa", + "Change View": "Canviar vista", + "Storage": "Emmagatzematge", + "Go up a directory": "Pujar un directori", + "Search anything..": "Cercar qualsevol cosa...", + "Name": "Nom", + "Size": "Mida", + "Date": "Data", + "Filepath": "Ruta del fitxer", + "Folder Name": "Nom de la carpeta", + "File Name": "Nom del fitxer", + "Move files": "Moure fitxers", + "Yes, Move!": "Sí, mou!", + "Delete files": "Suprimir fitxers", + "Yes, Delete!": "Sí, suprimeix!", + "Upload Files": "Carregar fitxers", + "No files selected!": "No s'han seleccionat fitxers!", + "Select Files": "Seleccionar fitxers", + "Archive the files": "Arxivar els fitxers", + "Unarchive the files": "Desarxivar els fitxers", + "The archive will be unarchived at": "L'arxiu es desarxivarà a", + "Archive name. (.zip file will be created)": "Nom de l'arxiu. (es crearà un fitxer .zip)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder és un component de gestor de fitxers per a Vue 3.", + "Create a new folder": "Crear una nova carpeta", + "Create a new file": "Crear un nou fitxer", + "Are you sure you want to delete these files?": "Esteu segur que voleu suprimir aquests fitxers?", + "This action cannot be undone.": "Aquesta acció no es pot desfer.", + "Search results for": "Resultats de la cerca per a", + "%s item(s) selected.": "%s element(s) seleccionat(s).", + "%s is renamed.": "%s s'ha canviat el nom.", + "This is a readonly storage.": "Aquest és un emmagatzematge de només lectura.", + "%s is created.": "%s s'ha creat.", + "Files moved.": "Fitxers moguts.", + "Files deleted.": "Fitxers suprimits.", + "The file unarchived.": "El fitxer desarxivat.", + "The file(s) archived.": "El(s) fitxer(s) arxivat(s).", + "Updated.": "Actualitzat.", + "No search result found.": "No s'ha trobat cap resultat de cerca.", + "Are you sure you want to move these files?": "Esteu segur que voleu moure aquests fitxers?", + "File Size": "Mida del fitxer", + "Last Modified": "Última modificació", + "Select Folders": "Seleccionar Carpetes", + "Clear all": "Esborrar tot", + "Clear only successful": "Esborrar només els reeixits", + "Drag and drop the files/folders to here or click here.": "Arrossega i deixa anar els fitxers/carpetes aquí o fes clic aquí.", + "Release to drop these files.": "Deixa anar per deixar aquests fitxers.", + "Canceled": "Cancel·lat", + "Done": "Fet", + "Network Error, Unable establish connection to the server or interrupted.": "Error de xarxa, no s'ha pogut establir connexió amb el servidor o s'ha interromput.", + "Pending upload": "Pendent", + "Please select file to upload first.": "Si us plau, selecciona un fitxer per pujar primer.", + "About": "Quant a", + "Settings": "Configuració", + "Shortcuts": "Dreceres", + "Reset": "Restablir", + "Escape": "Escape", + "Search": "Cerca", + "Toggle Sidebar": "Alternar barra lateral", + "Open Settings": "Obrir Configuració", + "Reset all settings to default": "Restablir tota la configuració per defecte", + "Use Metric Units": "Utilitzar Unitats Mètriques", + "Saved.": "Desat.", + "Reset Settings": "Restablir Configuració", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "La descàrrega no funciona? Pots provar de fer clic dret al botó \"Descarregar\" i seleccionar \"Desa l'enllaç com a...\".", + "Theme": "Tema", + "Dark": "Fosc", + "Light": "Clar", + "System": "Sistema", + "Target Directory": "Directori de Destí", + "Select": "Seleccionar", + "Compact list view": "Vista de llista compacta", + "Show thumbnails": "Mostrar miniatures", + "Persist path on reload": "Mantenir la ruta en recarregar", + "Select All": "Seleccionar-ho tot", + "Pinned Folders": "Carpetes fixades", + "No folders pinned": "No hi ha carpetes fixades", + "Pin Folder": "Fixar carpeta", + "Unpin Folder": "Desfixar carpeta", + "Project home": "Inici del projecte", + "Follow on GitHub": "Segueix a GitHub", + "Customize your experience with the following settings": "Personalitza la teva experiència amb les següents configuracions" +} \ No newline at end of file diff --git a/src/locales/json/cs.json b/src/locales/json/cs.json new file mode 100644 index 00000000..f1de3eca --- /dev/null +++ b/src/locales/json/cs.json @@ -0,0 +1,102 @@ +{ + "Language": "Jazyk", + "Create": "Vytvořit", + "Close": "Zavřít", + "Cancel": "Zrušit", + "Save": "Uložit", + "Edit": "Upravit", + "Crop": "Oříznout", + "New Folder": "Nová složka", + "New File": "Nový soubor", + "Rename": "Přejmenovat", + "Delete": "Smazat", + "Upload": "Nahrát", + "Download": "Stáhnout", + "Archive": "Archivovat", + "Unarchive": "Rozbalit", + "Open": "Otevřít", + "Open containing folder": "Otevřít složku", + "Refresh": "Obnovit", + "Preview": "Náhled", + "Toggle Full Screen": "Přepnout na celou obrazovku", + "Change View": "Změnit zobrazení", + "Storage": "Úložiště", + "Go up a directory": "Přejít o adresář výš", + "Search anything..": "Hledat...", + "Name": "Název", + "Size": "Velikost", + "Date": "Datum", + "Filepath": "Cesta k souboru", + "Folder Name": "Název složky", + "File Name": "Název souboru", + "Move files": "Přesunout soubory", + "Yes, Move!": "Ano, přesunout!", + "Delete files": "Smazat soubory", + "Yes, Delete!": "Ano, smazat!", + "Upload Files": "Nahrát soubory", + "No files selected!": "Žádné soubory nebyly vybrány!", + "Select Files": "Vybrat soubory", + "Archive the files": "Archivovat soubory", + "Unarchive the files": "Rozbalit soubory", + "The archive will be unarchived at": "Archiv bude rozbalen do", + "Archive name. (.zip file will be created)": "Název archivu. (.zip soubor bude vytvořen)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder je komponenta pro správu souborů pro Vue 3.", + "Create a new folder": "Vytvořit novou složku", + "Create a new file": "Vytvořit nový soubor", + "Are you sure you want to delete these files?": "Opravdu chcete smazat tyto soubory?", + "This action cannot be undone.": "Tuto akci nelze vrátit zpět.", + "Search results for": "Výsledky hledání pro", + "%s item(s) selected.": "%s položka(y) vybrána.", + "%s is renamed.": "%s byl přejmenován.", + "This is a readonly storage.": "Toto je úložiště pouze pro čtení.", + "%s is created.": "%s byl vytvořen.", + "Files moved.": "Soubory přesunuty.", + "Files deleted.": "Soubory smazány.", + "The file unarchived.": "Soubor rozbalen.", + "The file(s) archived.": "Soubor(y) archivovány.", + "Updated.": "Aktualizováno.", + "No search result found.": "Nenalezen žádný výsledek hledání.", + "Are you sure you want to move these files?": "Opravdu chcete přesunout tyto soubory?", + "File Size": "Velikost souboru", + "Last Modified": "Poslední změna", + "Select Folders": "Vybrat složky", + "Clear all": "Vymazat vše", + "Clear only successful": "Vymazat pouze úspěšné", + "Drag and drop the files/folders to here or click here.": "Přetáhněte sem soubory/složky, nebo klikněte zde.", + "Release to drop these files.": "Uvolněním pustíte tyto soubory.", + "Canceled": "Zrušeno", + "Done": "Hotovo", + "Network Error, Unable establish connection to the server or interrupted.": "Chyba sítě, nelze navázat spojení se serverem nebo bylo přerušeno.", + "Pending upload": "Čeká na odeslání", + "Please select file to upload first.": "Prosím, nejprve vyberte soubor k odeslání.", + "About": "O aplikaci", + "Settings": "Nastavení", + "Shortcuts": "Zkratky", + "Reset": "Resetovat", + "Escape": "Escape", + "Search": "Hledat", + "Toggle Sidebar": "Přepnout postranní panel", + "Open Settings": "Otevřít nastavení", + "Reset all settings to default": "Resetovat všechna nastavení na výchozí", + "Use Metric Units": "Používat metrické jednotky", + "Saved.": "Uloženo.", + "Reset Settings": "Resetovat nastavení", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Nefunguje stahování? Můžete zkusit kliknout pravým tlačítkem na tlačítko \"Stáhnout\" a vybrat \"Uložit odkaz jako...\".", + "Theme": "Téma", + "Dark": "Tmavé", + "Light": "Světlé", + "System": "Systém", + "Target Directory": "Cílový adresář", + "Select": "Vybrat", + "Compact list view": "Kompaktní zobrazení seznamu", + "Show thumbnails": "Zobrazit miniatury", + "Persist path on reload": "Ponechat cestu po znovunačtení", + "Select All": "Vybrat vše", + "Pinned Folders": "Připnuté složky", + "No folders pinned": "Žádné složky nepřipnuty", + "Pin Folder": "Připnout složku", + "Unpin Folder": "Odepnout složku", + "Project home": "Domovská stránka projektu", + "Follow on GitHub": "Sledovat na GitHubu", + "Customize your experience with the following settings": "Přizpůsobte si prostředí pomocí následujících nastavení" +} \ No newline at end of file diff --git a/src/locales/json/da.json b/src/locales/json/da.json new file mode 100644 index 00000000..68d9dd65 --- /dev/null +++ b/src/locales/json/da.json @@ -0,0 +1,102 @@ +{ + "Language": "Sprog", + "Create": "Opret", + "Close": "Luk", + "Cancel": "Annuller", + "Save": "Gem", + "Edit": "Rediger", + "Crop": "Beskær", + "New Folder": "Ny mappe", + "New File": "Ny fil", + "Rename": "Omdøb", + "Delete": "Slet", + "Upload": "Upload", + "Download": "Download", + "Archive": "Arkiver", + "Unarchive": "Pak ud", + "Open": "Åbn", + "Open containing folder": "Åbn mappe", + "Refresh": "Opdater", + "Preview": "Forhåndsvisning", + "Toggle Full Screen": "Skift fuldskærm", + "Change View": "Skift visning", + "Storage": "Lagerplads", + "Go up a directory": "Gå en mappe op", + "Search anything..": "Søg efter alt..", + "Name": "Navn", + "Size": "Størrelse", + "Date": "Dato", + "Filepath": "Filsti", + "Folder Name": "Mappenavn", + "File Name": "Filnavn", + "Move files": "Flyt filer", + "Yes, Move!": "Ja, flyt!", + "Delete files": "Slet filer", + "Yes, Delete!": "Ja, slet!", + "Upload Files": "Upload filer", + "No files selected!": "Ingen filer valgt!", + "Select Files": "Vælg filer", + "Archive the files": "Arkiver filerne", + "Unarchive the files": "Udpak filerne", + "The archive will be unarchived at": "Arkivet vil blive udpakket til", + "Archive name. (.zip file will be created)": "Arkivnavn. (.zip-fil vil blive oprettet)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder er en filhåndteringskomponent til Vue 3.", + "Create a new folder": "Opret en ny mappe", + "Create a new file": "Opret en ny fil", + "Are you sure you want to delete these files?": "Er du sikker på, at du vil slette disse filer?", + "This action cannot be undone.": "Denne handling kan ikke fortrydes.", + "Search results for": "Søgeresultater for", + "%s item(s) selected.": "%s element(er) valgt.", + "%s is renamed.": "%s er omdøbt.", + "This is a readonly storage.": "Dette er et skrivebeskyttet lager.", + "%s is created.": "%s er oprettet.", + "Files moved.": "Filer flyttet.", + "Files deleted.": "Filer slettet.", + "The file unarchived.": "Filen udpakket.", + "The file(s) archived.": "Filen(e) arkiveret.", + "Updated.": "Opdateret.", + "No search result found.": "Ingen søgeresultater fundet.", + "Are you sure you want to move these files?": "Er du sikker på, at du vil flytte disse filer?", + "File Size": "Filstørrelse", + "Last Modified": "Sidst ændret", + "Select Folders": "Vælg mapper", + "Clear all": "Ryd alt", + "Clear only successful": "Ryd kun vellykkede", + "Drag and drop the files/folders to here or click here.": "Træk og slip filer/mapper herhen eller klik her.", + "Release to drop these files.": "Slip for at slippe disse filer.", + "Canceled": "Annulleret", + "Done": "Udført", + "Network Error, Unable establish connection to the server or interrupted.": "Netværksfejl, Kunne ikke oprette forbindelse til serveren eller afbrudt.", + "Pending upload": "Afventer", + "Please select file to upload first.": "Vælg venligst fil til upload først.", + "About": "Om", + "Settings": "Indstillinger", + "Shortcuts": "Genveje", + "Reset": "Nulstil", + "Escape": "Escape", + "Search": "Søg", + "Toggle Sidebar": "Skift sidepanel", + "Open Settings": "Åbn indstillinger", + "Reset all settings to default": "Nulstil alle indstillinger til standard", + "Use Metric Units": "Brug metriske enheder", + "Saved.": "Gemt.", + "Reset Settings": "Nulstil indstillinger", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Virker download ikke? Du kan prøve at højreklikke på knappen \"Download\" og vælge \"Gem link som...\".", + "Theme": "Tema", + "Dark": "Mørk", + "Light": "Lys", + "System": "System", + "Target Directory": "Målmappe", + "Select": "Vælg", + "Compact list view": "Kompakt listevisning", + "Show thumbnails": "Vis miniaturebilleder", + "Persist path on reload": "Behold sti ved genindlæsning", + "Select All": "Vælg alle", + "Pinned Folders": "Fastgjorte mapper", + "No folders pinned": "Ingen mapper fastgjort", + "Pin Folder": "Fastgør mappe", + "Unpin Folder": "Løsn mappe", + "Project home": "Projektets startside", + "Follow on GitHub": "Følg på GitHub", + "Customize your experience with the following settings": "Tilpas din oplevelse med følgende indstillinger" +} \ No newline at end of file diff --git a/src/locales/json/el.json b/src/locales/json/el.json new file mode 100644 index 00000000..d0405cc9 --- /dev/null +++ b/src/locales/json/el.json @@ -0,0 +1,102 @@ +{ + "Language": "Γλώσσα", + "Create": "Δημιουργία", + "Close": "Κλείσιμο", + "Cancel": "Ακύρωση", + "Save": "Αποθήκευση", + "Edit": "Επεξεργασία", + "Crop": "Περικοπή", + "New Folder": "Νέος Φάκελος", + "New File": "Νέο Αρχείο", + "Rename": "Μετονομασία", + "Delete": "Διαγραφή", + "Upload": "Αποστολή", + "Download": "Λήψη", + "Archive": "Αρχειοθέτηση", + "Unarchive": "Αποαρχειοθέτηση", + "Open": "Άνοιγμα", + "Open containing folder": "Άνοιγμα φακέλου που περιέχει", + "Refresh": "Ανανέωση", + "Preview": "Προεπισκόπηση", + "Toggle Full Screen": "Εναλλαγή πλήρους οθόνης", + "Change View": "Αλλαγή Προβολής", + "Storage": "Αποθηκευτικός χώρος", + "Go up a directory": "Πάνω στον κατάλογο", + "Search anything..": "Αναζήτηση οτιδήποτε..", + "Name": "Όνομα", + "Size": "Μέγεθος", + "Date": "Ημερομηνία", + "Filepath": "Διαδρομή αρχείου", + "Folder Name": "Όνομα Φακέλου", + "File Name": "Όνομα Αρχείου", + "Move files": "Μετακίνηση αρχείων", + "Yes, Move!": "Ναι, Μετακίνηση!", + "Delete files": "Διαγραφή αρχείων", + "Yes, Delete!": "Ναι, Διαγραφή!", + "Upload Files": "Ανέβασμα αρχείων", + "No files selected!": "Δεν έχουν επιλεγεί αρχεία!", + "Select Files": "Επιλογή αρχείων", + "Archive the files": "Αρχειοθέτηση των αρχείων", + "Unarchive the files": "Αποαρχειοθέτηση των αρχείων", + "The archive will be unarchived at": "Το αρχείο θα αποαρχειοθετηθεί στην τοποθεσία", + "Archive name. (.zip file will be created)": "Όνομα αρχείου. (Θα δημιουργηθεί αρχείο .zip)", + "Vuefinder is a file manager component for vue 3.": "Το Vuefinder είναι ένα στοιχείο διαχείρισης αρχείων για το Vue 3.", + "Create a new folder": "Δημιουργία νέου φακέλου", + "Create a new file": "Δημιουργία νέου αρχείου", + "Are you sure you want to delete these files?": "Είστε σίγουροι ότι θέλετε να διαγράψετε αυτά τα αρχεία;", + "This action cannot be undone.": "Αυτή η ενέργεια δεν μπορεί να αναιρεθεί.", + "Search results for": "Αποτελέσματα αναζήτησης για", + "%s item(s) selected.": "%s αντικείμενο(α) επιλέχθηκε(αν).", + "%s is renamed.": "Το %s μετονομάστηκε.", + "This is a readonly storage.": "Αυτός είναι ένας χώρος αποθήκευσης μόνο για ανάγνωση.", + "%s is created.": "Το %s δημιουργήθηκε.", + "Files moved.": "Τα αρχεία μετακινήθηκαν.", + "Files deleted.": "Τα αρχεία διαγράφηκαν.", + "The file unarchived.": "Το αρχείο αποαρχειοθετήθηκε.", + "The file(s) archived.": "Το(α) αρχείο(α) αρχειοθετήθηκε(αν).", + "Updated.": "Ενημερώθηκε.", + "No search result found.": "Δεν βρέθηκε αποτέλεσμα αναζήτησης.", + "Are you sure you want to move these files?": "Είστε σίγουροι ότι θέλετε να μετακινήσετε αυτά τα αρχεία;", + "File Size": "Μέγεθος αρχείου", + "Last Modified": "Τελευταία τροποποίηση", + "Select Folders": "Επιλογή Φακέλων", + "Clear all": "Εκκαθάριση όλων", + "Clear only successful": "Εκκαθάριση μόνο των επιτυχημένων", + "Drag and drop the files/folders to here or click here.": "Σύρετε και αποθέστε τα αρχεία/φακέλους εδώ ή κάντε κλικ εδώ.", + "Release to drop these files.": "Αφήστε για να αποθέσετε αυτά τα αρχεία.", + "Canceled": "Ακυρώθηκε", + "Done": "Ολοκληρώθηκε", + "Network Error, Unable establish connection to the server or interrupted.": "Σφάλμα Δικτύου, Αδυναμία σύνδεσης στον διακομιστή ή διακοπή.", + "Pending upload": "Σε εκκρεμότητα", + "Please select file to upload first.": "Παρακαλώ επιλέξτε αρχείο για μεταφόρτωση πρώτα.", + "About": "Σχετικά", + "Settings": "Ρυθμίσεις", + "Shortcuts": "Συντομεύσεις", + "Reset": "Επαναφορά", + "Escape": "Escape", + "Search": "Αναζήτηση", + "Toggle Sidebar": "Εναλλαγή Πλευρικής Μπάρας", + "Open Settings": "Άνοιγμα Ρυθμίσεων", + "Reset all settings to default": "Επαναφορά όλων των ρυθμίσεων στις προεπιλογές", + "Use Metric Units": "Χρήση Μετρικών Μονάδων", + "Saved.": "Αποθηκεύτηκε.", + "Reset Settings": "Επαναφορά Ρυθμίσεων", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Η λήψη δεν λειτουργεί; Μπορείτε να δοκιμάσετε δεξί κλικ στο κουμπί \"Λήψη\", επιλέξτε \"Αποθήκευση συνδέσμου ως...\".", + "Theme": "Θέμα", + "Dark": "Σκοτεινό", + "Light": "Φωτεινό", + "System": "Σύστημα", + "Target Directory": "Φάκελος Προορισμού", + "Select": "Επιλογή", + "Compact list view": "Συμπαγής προβολή λίστας", + "Show thumbnails": "Εμφάνιση μικρογραφιών", + "Persist path on reload": "Διατήρηση διαδρομής κατά την επαναφόρτωση", + "Select All": "Επιλογή Όλων", + "Pinned Folders": "Καρφιτσωμένοι Φάκελοι", + "No folders pinned": "Δεν υπάρχουν καρφιτσωμένοι φάκελοι", + "Pin Folder": "Καρφίτσωμα Φακέλου", + "Unpin Folder": "Ξεκαρφίτσωμα Φακέλου", + "Project home": "Αρχική σελίδα έργου", + "Follow on GitHub": "Ακολουθήστε στο GitHub", + "Customize your experience with the following settings": "Προσαρμόστε την εμπειρία σας με τις ακόλουθες ρυθμίσεις" +} \ No newline at end of file diff --git a/src/locales/json/es.json b/src/locales/json/es.json new file mode 100644 index 00000000..a03e1bd8 --- /dev/null +++ b/src/locales/json/es.json @@ -0,0 +1,102 @@ +{ + "Language": "Idioma", + "Create": "Crear", + "Close": "Cerrar", + "Cancel": "Cancelar", + "Save": "Guardar", + "Edit": "Editar", + "Crop": "Recortar", + "New Folder": "Nueva Carpeta", + "New File": "Nuevo Archivo", + "Rename": "Renombrar", + "Delete": "Eliminar", + "Upload": "Subir", + "Download": "Descargar", + "Archive": "Archivar", + "Unarchive": "Desarchivar", + "Open": "Abrir", + "Open containing folder": "Abrir carpeta contenedora", + "Refresh": "Actualizar", + "Preview": "Vista previa", + "Toggle Full Screen": "Alternar Pantalla Completa", + "Change View": "Cambiar Vista", + "Storage": "Almacenamiento", + "Go up a directory": "Subir un directorio", + "Search anything..": "Buscar cualquier cosa...", + "Name": "Nombre", + "Size": "Tamaño", + "Date": "Fecha", + "Filepath": "Ruta del archivo", + "Folder Name": "Nombre de la Carpeta", + "File Name": "Nombre del Archivo", + "Move files": "Mover archivos", + "Yes, Move!": "¡Sí, Mover!", + "Delete files": "Eliminar archivos", + "Yes, Delete!": "¡Sí, Eliminar!", + "Upload Files": "Subir archivos", + "No files selected!": "¡Ningún archivo seleccionado!", + "Select Files": "Seleccionar archivos", + "Archive the files": "Archivar los archivos", + "Unarchive the files": "Desarchivar los archivos", + "The archive will be unarchived at": "El archivo se desarchivará en", + "Archive name. (.zip file will be created)": "Nombre del archivo. (Se creará un archivo .zip)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder es un componente de gestor de archivos para Vue 3.", + "Create a new folder": "Crear una nueva carpeta", + "Create a new file": "Crear un nuevo archivo", + "Are you sure you want to delete these files?": "¿Estás seguro de que quieres eliminar estos archivos?", + "This action cannot be undone.": "Esta acción no se puede deshacer.", + "Search results for": "Resultados de búsqueda para", + "%s item(s) selected.": "%s elemento(s) seleccionado(s).", + "%s is renamed.": "%s ha sido renombrado.", + "This is a readonly storage.": "Este es un almacenamiento de solo lectura.", + "%s is created.": "%s ha sido creado.", + "Files moved.": "Archivos movidos.", + "Files deleted.": "Archivos eliminados.", + "The file unarchived.": "El archivo desarchivado.", + "The file(s) archived.": "El/los archivo(s) archivado(s).", + "Updated.": "Actualizado.", + "No search result found.": "No se encontraron resultados de búsqueda.", + "Are you sure you want to move these files?": "¿Estás seguro de que quieres mover estos archivos?", + "File Size": "Tamaño del archivo", + "Last Modified": "Última modificación", + "Select Folders": "Seleccionar Carpetas", + "Clear all": "Borrar todo", + "Clear only successful": "Borrar solo los exitosos", + "Drag and drop the files/folders to here or click here.": "Arrastra y suelta los archivos/carpetas aquí o haz clic aquí.", + "Release to drop these files.": "Suelta para soltar estos archivos.", + "Canceled": "Cancelado", + "Done": "Hecho", + "Network Error, Unable establish connection to the server or interrupted.": "Error de red, no se pudo establecer conexión con el servidor o fue interrumpida.", + "Pending upload": "Pendiente", + "Please select file to upload first.": "Por favor, selecciona un archivo para subir primero.", + "About": "Acerca de", + "Settings": "Configuración", + "Shortcuts": "Atajos", + "Reset": "Restablecer", + "Escape": "Escape", + "Search": "Buscar", + "Toggle Sidebar": "Alternar Barra Lateral", + "Open Settings": "Abrir Configuración", + "Reset all settings to default": "Restablecer toda la configuración a los valores predeterminados", + "Use Metric Units": "Usar Unidades Métricas", + "Saved.": "Guardado.", + "Reset Settings": "Restablecer Configuración", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "¿La descarga no funciona? Puedes intentar hacer clic derecho en el botón \"Descargar\" y seleccionar \"Guardar enlace como...\".", + "Theme": "Tema", + "Dark": "Oscuro", + "Light": "Claro", + "System": "Sistema", + "Target Directory": "Directorio de Destino", + "Select": "Seleccionar", + "Compact list view": "Vista de lista compacta", + "Show thumbnails": "Mostrar miniaturas", + "Persist path on reload": "Mantener ruta al recargar", + "Select All": "Seleccionar todo", + "Pinned Folders": "Carpetas ancladas", + "No folders pinned": "Ninguna carpeta anclada", + "Pin Folder": "Anclar carpeta", + "Unpin Folder": "Desanclar carpeta", + "Project home": "Inicio del proyecto", + "Follow on GitHub": "Seguir en GitHub", + "Customize your experience with the following settings": "Personaliza tu experiencia con las siguientes configuraciones" +} \ No newline at end of file diff --git a/src/locales/json/fi.json b/src/locales/json/fi.json new file mode 100644 index 00000000..9c3b7cfa --- /dev/null +++ b/src/locales/json/fi.json @@ -0,0 +1,102 @@ +{ + "Language": "Kieli", + "Create": "Luo", + "Close": "Sulje", + "Cancel": "Peruuta", + "Save": "Tallenna", + "Edit": "Muokkaa", + "Crop": "Rajaa", + "New Folder": "Uusi kansio", + "New File": "Uusi tiedosto", + "Rename": "Nimeä uudelleen", + "Delete": "Poista", + "Upload": "Lähetä", + "Download": "Lataa", + "Archive": "Arkistoi", + "Unarchive": "Pura arkisto", + "Open": "Avaa", + "Open containing folder": "Avaa sisältävä kansio", + "Refresh": "Päivitä", + "Preview": "Esikatselu", + "Toggle Full Screen": "Vaihda koko näytön tilaa", + "Change View": "Vaihda näkymää", + "Storage": "Tallennustila", + "Go up a directory": "Siirry yläkansioon", + "Search anything..": "Hae mitä tahansa...", + "Name": "Nimi", + "Size": "Koko", + "Date": "Päivämäärä", + "Filepath": "Tiedostopolku", + "Folder Name": "Kansion nimi", + "File Name": "Tiedoston nimi", + "Move files": "Siirrä tiedostoja", + "Yes, Move!": "Kyllä, siirrä!", + "Delete files": "Poista tiedostoja", + "Yes, Delete!": "Kyllä, poista!", + "Upload Files": "Lataa tiedostoja", + "No files selected!": "Ei tiedostoja valittuna!", + "Select Files": "Valitse tiedostoja", + "Archive the files": "Arkistoi tiedostot", + "Unarchive the files": "Pura tiedostojen arkistointi", + "The archive will be unarchived at": "Arkisto puretaan osoitteeseen", + "Archive name. (.zip file will be created)": "Arkiston nimi. (.zip-tiedosto luodaan)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder on tiedostonhallintakomponentti Vue 3:lle.", + "Create a new folder": "Luo uusi kansio", + "Create a new file": "Luo uusi tiedosto", + "Are you sure you want to delete these files?": "Haluatko varmasti poistaa nämä tiedostot?", + "This action cannot be undone.": "Tätä toimintoa ei voi kumota.", + "Search results for": "Hakutulokset kohteelle", + "%s item(s) selected.": "%s kohde(tta) valittu.", + "%s is renamed.": "%s on nimetty uudelleen.", + "This is a readonly storage.": "Tämä on vain luku -tallennustila.", + "%s is created.": "%s on luotu.", + "Files moved.": "Tiedostot siirretty.", + "Files deleted.": "Tiedostot poistettu.", + "The file unarchived.": "Tiedoston arkistointi purettu.", + "The file(s) archived.": "Tiedosto(t) arkistoitu.", + "Updated.": "Päivitetty.", + "No search result found.": "Hakutuloksia ei löytynyt.", + "Are you sure you want to move these files?": "Haluatko varmasti siirtää nämä tiedostot?", + "File Size": "Tiedoston koko", + "Last Modified": "Viimeksi muokattu", + "Select Folders": "Valitse kansiot", + "Clear all": "Tyhjennä kaikki", + "Clear only successful": "Tyhjennä vain onnistuneet", + "Drag and drop the files/folders to here or click here.": "Vedä ja pudota tiedostot/kansiot tähän tai napsauta tästä.", + "Release to drop these files.": "Vapauta pudottaaksesi nämä tiedostot.", + "Canceled": "Peruutettu", + "Done": "Valmis", + "Network Error, Unable establish connection to the server or interrupted.": "Verkkovirhe, yhteyttä palvelimeen ei voitu muodostaa tai se katkesi.", + "Pending upload": "Odottaa", + "Please select file to upload first.": "Valitse ensin ladattava tiedosto.", + "About": "Tietoja", + "Settings": "Asetukset", + "Shortcuts": "Pikakuvakkeet", + "Reset": "Palauta", + "Escape": "Esc", + "Search": "Haku", + "Toggle Sidebar": "Vaihda sivupalkin näkyvyyttä", + "Open Settings": "Avaa asetukset", + "Reset all settings to default": "Palauta kaikki asetukset oletusarvoiksi", + "Use Metric Units": "Käytä metrisiä yksiköitä", + "Saved.": "Tallennettu.", + "Reset Settings": "Palauta asetukset", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Lataus ei toimi? Voit kokeilla napsauttaa hiiren oikealla painikkeella \"Lataa\"-painiketta ja valita \"Tallenna linkki nimellä...\".", + "Theme": "Teema", + "Dark": "Tumma", + "Light": "Vaalea", + "System": "Järjestelmä", + "Target Directory": "Kohdekansio", + "Select": "Valitse", + "Compact list view": "Tiivis luettelonäkymä", + "Show thumbnails": "Näytä pikkukuvat", + "Persist path on reload": "Säilytä polku uudelleenlatauksessa", + "Select All": "Valitse kaikki", + "Pinned Folders": "Kiinnitetyt kansiot", + "No folders pinned": "Ei kiinnitettyjä kansioita", + "Pin Folder": "Kiinnitä kansio", + "Unpin Folder": "Irrota kansion kiinnitys", + "Project home": "Projektin kotisivu", + "Follow on GitHub": "Seuraa GitHubissa", + "Customize your experience with the following settings": "Mukauta käyttökokemustasi seuraavilla asetuksilla" +} \ No newline at end of file diff --git a/src/locales/json/gl.json b/src/locales/json/gl.json new file mode 100644 index 00000000..40a08898 --- /dev/null +++ b/src/locales/json/gl.json @@ -0,0 +1,102 @@ +{ + "Language": "Idioma", + "Create": "Crear", + "Close": "Pechar", + "Cancel": "Cancelar", + "Save": "Gardar", + "Edit": "Editar", + "Crop": "Recortar", + "New Folder": "Nova Carpeta", + "New File": "Novo Ficheiro", + "Rename": "Renomear", + "Delete": "Eliminar", + "Upload": "Cargar", + "Download": "Descargar", + "Archive": "Arquivar", + "Unarchive": "Desarquivar", + "Open": "Abrir", + "Open containing folder": "Abrir cartafol que o contén", + "Refresh": "Actualizar", + "Preview": "Vista previa", + "Toggle Full Screen": "Alternar pantalla completa", + "Change View": "Cambiar vista", + "Storage": "Almacenamento", + "Go up a directory": "Subir un directorio", + "Search anything..": "Buscar calquera cousa...", + "Name": "Nome", + "Size": "Tamaño", + "Date": "Data", + "Filepath": "Ruta do ficheiro", + "Folder Name": "Nome da Carpeta", + "File Name": "Nome do Ficheiro", + "Move files": "Mover ficheiros", + "Yes, Move!": "Si, Mover!", + "Delete files": "Eliminar ficheiros", + "Yes, Delete!": "Si, Eliminar!", + "Upload Files": "Cargar ficheiros", + "No files selected!": "Non se seleccionaron ficheiros!", + "Select Files": "Seleccionar ficheiros", + "Archive the files": "Arquivar os ficheiros", + "Unarchive the files": "Desarquivar os ficheiros", + "The archive will be unarchived at": "O arquivo será desarquivado en", + "Archive name. (.zip file will be created)": "Nome do arquivo. (Crearase un ficheiro .zip)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder é un compoñente de xestor de ficheiros para Vue 3.", + "Create a new folder": "Crear un novo cartafol", + "Create a new file": "Crear un novo ficheiro", + "Are you sure you want to delete these files?": "Estás seguro de que queres eliminar estes ficheiros?", + "This action cannot be undone.": "Esta acción non se pode desfacer.", + "Search results for": "Resultados da busca para", + "%s item(s) selected.": "%s elemento(s) seleccionado(s).", + "%s is renamed.": "%s foi renomeado.", + "This is a readonly storage.": "Este é un almacenamento de só lectura.", + "%s is created.": "%s foi creado.", + "Files moved.": "Ficheiros movidos.", + "Files deleted.": "Ficheiros eliminados.", + "The file unarchived.": "O ficheiro desarquivado.", + "The file(s) archived.": "O(s) ficheiro(s) arquivado(s).", + "Updated.": "Actualizado.", + "No search result found.": "Non se atoparon resultados de busca.", + "Are you sure you want to move these files?": "Estás seguro de que queres mover estes ficheiros?", + "File Size": "Tamaño do ficheiro", + "Last Modified": "Última modificación", + "Select Folders": "Seleccionar Cartafoles", + "Clear all": "Limpar todo", + "Clear only successful": "Limpar só os exitosos", + "Drag and drop the files/folders to here or click here.": "Arrastra e solta os ficheiros/cartafoles aquí ou fai clic aquí.", + "Release to drop these files.": "Solta para deixar estes ficheiros.", + "Canceled": "Cancelado", + "Done": "Feito", + "Network Error, Unable establish connection to the server or interrupted.": "Erro de rede, non se puido establecer conexión co servidor ou foi interrompida.", + "Pending upload": "Pendente", + "Please select file to upload first.": "Por favor, selecciona primeiro un ficheiro para cargar.", + "About": "Acerca de", + "Settings": "Configuración", + "Shortcuts": "Atallos", + "Reset": "Restablecer", + "Escape": "Escape", + "Search": "Buscar", + "Toggle Sidebar": "Alternar Barra Lateral", + "Open Settings": "Abrir Configuración", + "Reset all settings to default": "Restablecer toda a configuración aos valores predeterminados", + "Use Metric Units": "Usar Unidades Métricas", + "Saved.": "Gardado.", + "Reset Settings": "Restablecer Configuración", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "A descarga non funciona? Podes probar a facer clic co botón dereito no botón \"Descargar\" e seleccionar \"Gardar ligazón como...\".", + "Theme": "Tema", + "Dark": "Escuro", + "Light": "Claro", + "System": "Sistema", + "Target Directory": "Directorio de Destino", + "Select": "Seleccionar", + "Compact list view": "Vista de lista compacta", + "Show thumbnails": "Mostrar miniaturas", + "Persist path on reload": "Manter ruta ao recargar", + "Select All": "Seleccionar todo", + "Pinned Folders": "Carpetas fixadas", + "No folders pinned": "Non hai carpetas fixadas", + "Pin Folder": "Fixar carpeta", + "Unpin Folder": "Desfixar carpeta", + "Project home": "Inicio do proxecto", + "Follow on GitHub": "Seguir en GitHub", + "Customize your experience with the following settings": "Personaliza a túa experiencia coas seguintes opcións" +} \ No newline at end of file diff --git a/src/locales/json/hr.json b/src/locales/json/hr.json new file mode 100644 index 00000000..b42cc95c --- /dev/null +++ b/src/locales/json/hr.json @@ -0,0 +1,102 @@ +{ + "Language": "Jezik", + "Create": "Stvori", + "Close": "Zatvori", + "Cancel": "Odustani", + "Save": "Spremi", + "Edit": "Uredi", + "Crop": "Izreži", + "New Folder": "Nova mapa", + "New File": "Nova datoteka", + "Rename": "Preimenuj", + "Delete": "Izbriši", + "Upload": "Učitaj", + "Download": "Preuzmi", + "Archive": "Arhiviraj", + "Unarchive": "Dearhiviraj", + "Open": "Otvori", + "Open containing folder": "Otvori mapu koja sadrži", + "Refresh": "Osvježi", + "Preview": "Pregled", + "Toggle Full Screen": "Prebaci na cijeli zaslon", + "Change View": "Promijeni prikaz", + "Storage": "Pohrana", + "Go up a directory": "Idi mapu gore", + "Search anything..": "Pretraži bilo što...", + "Name": "Naziv", + "Size": "Veličina", + "Date": "Datum", + "Filepath": "Putanja datoteke", + "Folder Name": "Naziv mape", + "File Name": "Naziv datoteke", + "Move files": "Premjesti datoteke", + "Yes, Move!": "Da, premjesti!", + "Delete files": "Izbriši datoteke", + "Yes, Delete!": "Da, izbriši!", + "Upload Files": "Učitaj datoteke", + "No files selected!": "Nema odabranih datoteka!", + "Select Files": "Odaberi datoteke", + "Archive the files": "Arhiviraj datoteke", + "Unarchive the files": "Dearhiviraj datoteke", + "The archive will be unarchived at": "Arhiva će biti dearhivirana na", + "Archive name. (.zip file will be created)": "Naziv arhive. (.zip datoteka će biti stvorena)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder je komponenta za upravljanje datotekama za Vue 3.", + "Create a new folder": "Stvori novu mapu", + "Create a new file": "Stvori novu datoteku", + "Are you sure you want to delete these files?": "Jeste li sigurni da želite izbrisati ove datoteke?", + "This action cannot be undone.": "Ova radnja se ne može poništiti.", + "Search results for": "Rezultati pretraživanja za", + "%s item(s) selected.": "%s stavka(e) odabrano.", + "%s is renamed.": "%s je preimenovano.", + "This is a readonly storage.": "Ovo je samo za čitanje pohrane.", + "%s is created.": "%s je stvoreno.", + "Files moved.": "Datoteke premještene.", + "Files deleted.": "Datoteke izbrisane.", + "The file unarchived.": "Datoteka dearhivirana.", + "The file(s) archived.": "Datoteka(e) arhivirana.", + "Updated.": "Ažurirano.", + "No search result found.": "Nema pronađenih rezultata pretraživanja.", + "Are you sure you want to move these files?": "Jeste li sigurni da želite premjestiti ove datoteke?", + "File Size": "Veličina datoteke", + "Last Modified": "Zadnja izmjena", + "Select Folders": "Odaberi mape", + "Clear all": "Očisti sve", + "Clear only successful": "Očisti samo uspješne", + "Drag and drop the files/folders to here or click here.": "Povucite i ispustite datoteke/mape ovdje ili kliknite ovdje.", + "Release to drop these files.": "Otpustite za ispuštanje ovih datoteka.", + "Canceled": "Otkazano", + "Done": "Gotovo", + "Network Error, Unable establish connection to the server or interrupted.": "Greška mreže, nije moguće uspostaviti vezu sa serverom ili je prekinuta.", + "Pending upload": "Na čekanju", + "Please select file to upload first.": "Molimo prvo odaberite datoteku za prijenos.", + "About": "O programu", + "Settings": "Postavke", + "Shortcuts": "Prečaci", + "Reset": "Poništi", + "Escape": "Escape", + "Search": "Pretraži", + "Toggle Sidebar": "Prebaci bočnu traku", + "Open Settings": "Otvori postavke", + "Reset all settings to default": "Poništi sve postavke na zadane", + "Use Metric Units": "Koristi metričke jedinice", + "Saved.": "Spremljeno.", + "Reset Settings": "Poništi postavke", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Preuzimanje ne radi? Možete pokušati desnim klikom na gumb \"Preuzmi\", odaberite \"Spremi vezu kao...\".", + "Theme": "Tema", + "Dark": "Tamna", + "Light": "Svijetla", + "System": "Sustav", + "Target Directory": "Ciljni direktorij", + "Select": "Odaberi", + "Compact list view": "Kompaktan prikaz popisa", + "Show thumbnails": "Prikaži sličice", + "Persist path on reload": "Zadrži putanju pri ponovnom učitavanju", + "Select All": "Odaberi sve", + "Pinned Folders": "Prikvačene mape", + "No folders pinned": "Nema prikvačenih mapa", + "Pin Folder": "Prikvači mapu", + "Unpin Folder": "Otkvači mapu", + "Project home": "Početna stranica projekta", + "Follow on GitHub": "Pratite na GitHubu", + "Customize your experience with the following settings": "Prilagodite svoje iskustvo sljedećim postavkama" +} \ No newline at end of file diff --git a/src/locales/json/hu.json b/src/locales/json/hu.json new file mode 100644 index 00000000..d628b20e --- /dev/null +++ b/src/locales/json/hu.json @@ -0,0 +1,102 @@ +{ + "Language": "Nyelv", + "Create": "Létrehozás", + "Close": "Bezárás", + "Cancel": "Mégse", + "Save": "Mentés", + "Edit": "Szerkesztés", + "Crop": "Vágás", + "New Folder": "Új mappa", + "New File": "Új fájl", + "Rename": "Átnevezés", + "Delete": "Törlés", + "Upload": "Feltöltés", + "Download": "Letöltés", + "Archive": "Archiválás", + "Unarchive": "Kicsomagolás", + "Open": "Megnyitás", + "Open containing folder": "Tartalmazó mappa megnyitása", + "Refresh": "Frissítés", + "Preview": "Előnézet", + "Toggle Full Screen": "Teljes képernyő váltása", + "Change View": "Nézet módosítása", + "Storage": "Tárhely", + "Go up a directory": "Egy szinttel feljebb", + "Search anything..": "Keresés...", + "Name": "Név", + "Size": "Méret", + "Date": "Dátum", + "Filepath": "Fájlútvonal", + "Folder Name": "Mappa neve", + "File Name": "Fájlnév", + "Move files": "Fájlok áthelyezése", + "Yes, Move!": "Igen, áthelyezés!", + "Delete files": "Fájlok törlése", + "Yes, Delete!": "Igen, törlés!", + "Upload Files": "Fájlok feltöltése", + "No files selected!": "Nincs kiválasztott fájl!", + "Select Files": "Fájlok kiválasztása", + "Archive the files": "Fájlok archiválása", + "Unarchive the files": "Fájlok kicsomagolása", + "The archive will be unarchived at": "Az archívum kicsomagolásra kerül itt:", + "Archive name. (.zip file will be created)": "Archívum neve. (.zip fájl jön létre)", + "Vuefinder is a file manager component for vue 3.": "A Vuefinder egy fájlkezelő komponens Vue 3-hoz.", + "Create a new folder": "Új mappa létrehozása", + "Create a new file": "Új fájl létrehozása", + "Are you sure you want to delete these files?": "Biztosan törölni szeretné ezeket a fájlokat?", + "This action cannot be undone.": "Ez a művelet nem vonható vissza.", + "Search results for": "Keresési eredmények erre:", + "%s item(s) selected.": "%s elem kiválasztva.", + "%s is renamed.": "%s átnevezve.", + "This is a readonly storage.": "Ez egy csak olvasható tárhely.", + "%s is created.": "%s létrehozva.", + "Files moved.": "Fájlok áthelyezve.", + "Files deleted.": "Fájlok törölve.", + "The file unarchived.": "A fájl kicsomagolva.", + "The file(s) archived.": "A fájl(ok) archiválva.", + "Updated.": "Frissítve.", + "No search result found.": "Nincs találat.", + "Are you sure you want to move these files?": "Biztosan át szeretné helyezni ezeket a fájlokat?", + "File Size": "Fájlméret", + "Last Modified": "Utolsó módosítás", + "Select Folders": "Mappák kiválasztása", + "Clear all": "Összes törlése", + "Clear only successful": "Csak a sikeresek törlése", + "Drag and drop the files/folders to here or click here.": "Húzza ide a fájlokat/mappákat, vagy kattintson ide.", + "Release to drop these files.": "Engedje el a fájlok ide ejtéséhez.", + "Canceled": "Megszakítva", + "Done": "Kész", + "Network Error, Unable establish connection to the server or interrupted.": "Hálózati hiba, nem sikerült kapcsolatot létesíteni a szerverrel, vagy megszakadt.", + "Pending upload": "Függőben", + "Please select file to upload first.": "Kérjük, először válasszon ki fájlt a feltöltéshez.", + "About": "Névjegy", + "Settings": "Beállítások", + "Shortcuts": "Gyorsbillentyűk", + "Reset": "Visszaállítás", + "Escape": "Escape", + "Search": "Keresés", + "Toggle Sidebar": "Oldalsáv váltása", + "Open Settings": "Beállítások megnyitása", + "Reset all settings to default": "Összes beállítás visszaállítása alapértelmezettre", + "Use Metric Units": "Metrikus mértékegységek használata", + "Saved.": "Mentve.", + "Reset Settings": "Beállítások visszaállítása", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Nem működik a letöltés? Próbálja meg jobb gombbal kattintani a „Letöltés” gombra, majd válassza a „Hivatkozás mentése másként...” lehetőséget.", + "Theme": "Téma", + "Dark": "Sötét", + "Light": "Világos", + "System": "Rendszer", + "Target Directory": "Célkönyvtár", + "Select": "Kiválasztás", + "Compact list view": "Kompakt lista nézet", + "Show thumbnails": "Miniatűrök megjelenítése", + "Persist path on reload": "Útvonal megőrzése újratöltéskor", + "Select All": "Összes kijelölése", + "Pinned Folders": "Rögzített mappák", + "No folders pinned": "Nincsenek rögzített mappák", + "Pin Folder": "Mappa rögzítése", + "Unpin Folder": "Mappa feloldása", + "Project home": "Projekt kezdőlapja", + "Follow on GitHub": "Követés GitHubon", + "Customize your experience with the following settings": "Testreszabhatja élményét a következő beállításokkal" +} \ No newline at end of file diff --git a/src/locales/json/id.json b/src/locales/json/id.json new file mode 100644 index 00000000..d4d27448 --- /dev/null +++ b/src/locales/json/id.json @@ -0,0 +1,102 @@ +{ + "Language": "Bahasa", + "Create": "Buat", + "Close": "Tutup", + "Cancel": "Batal", + "Save": "Simpan", + "Edit": "Edit", + "Crop": "Pangkas", + "New Folder": "Folder Baru", + "New File": "Berkas Baru", + "Rename": "Ganti Nama", + "Delete": "Hapus", + "Upload": "Unggah", + "Download": "Unduh", + "Archive": "Arsipkan", + "Unarchive": "Buka Arsip", + "Open": "Buka", + "Open containing folder": "Buka folder induk", + "Refresh": "Segarkan", + "Preview": "Pratinjau", + "Toggle Full Screen": "Alihkan Layar Penuh", + "Change View": "Ubah Tampilan", + "Storage": "Penyimpanan", + "Go up a directory": "Naik satu direktori", + "Search anything..": "Cari apa saja...", + "Name": "Nama", + "Size": "Ukuran", + "Date": "Tanggal", + "Filepath": "Jalur Berkas", + "Folder Name": "Nama Folder", + "File Name": "Nama Berkas", + "Move files": "Pindahkan berkas", + "Yes, Move!": "Ya, Pindahkan!", + "Delete files": "Hapus berkas", + "Yes, Delete!": "Ya, Hapus!", + "Upload Files": "Unggah Berkas", + "No files selected!": "Tidak ada berkas yang dipilih!", + "Select Files": "Pilih Berkas", + "Archive the files": "Arsipkan berkas", + "Unarchive the files": "Buka arsip berkas", + "The archive will be unarchived at": "Arsip akan dibuka di", + "Archive name. (.zip file will be created)": "Nama arsip. (Berkas .zip akan dibuat)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder adalah komponen pengelola berkas untuk Vue 3.", + "Create a new folder": "Buat folder baru", + "Create a new file": "Buat berkas baru", + "Are you sure you want to delete these files?": "Apakah Anda yakin ingin menghapus berkas-berkas ini?", + "This action cannot be undone.": "Tindakan ini tidak dapat dibatalkan.", + "Search results for": "Hasil pencarian untuk", + "%s item(s) selected.": "%s item dipilih.", + "%s is renamed.": "%s diganti namanya.", + "This is a readonly storage.": "Ini adalah penyimpanan hanya-baca.", + "%s is created.": "%s dibuat.", + "Files moved.": "Berkas dipindahkan.", + "Files deleted.": "Berkas dihapus.", + "The file unarchived.": "Berkas dibuka arsipnya.", + "The file(s) archived.": "Berkas diarsipkan.", + "Updated.": "Diperbarui.", + "No search result found.": "Tidak ada hasil pencarian ditemukan.", + "Are you sure you want to move these files?": "Apakah Anda yakin ingin memindahkan berkas-berkas ini?", + "File Size": "Ukuran Berkas", + "Last Modified": "Terakhir Dimodifikasi", + "Select Folders": "Pilih Folder", + "Clear all": "Bersihkan semua", + "Clear only successful": "Bersihkan yang berhasil saja", + "Drag and drop the files/folders to here or click here.": "Seret dan lepas berkas/folder ke sini atau klik di sini.", + "Release to drop these files.": "Lepas untuk menjatuhkan berkas-berkas ini.", + "Canceled": "Dibatalkan", + "Done": "Selesai", + "Network Error, Unable establish connection to the server or interrupted.": "Kesalahan Jaringan, Tidak dapat membuat koneksi ke server atau terputus.", + "Pending upload": "Tertunda", + "Please select file to upload first.": "Mohon pilih berkas untuk diunggah terlebih dahulu.", + "About": "Tentang", + "Settings": "Pengaturan", + "Shortcuts": "Pintasan", + "Reset": "Atur Ulang", + "Escape": "Escape", + "Search": "Cari", + "Toggle Sidebar": "Alihkan Bilah Sisi", + "Open Settings": "Buka Pengaturan", + "Reset all settings to default": "Atur ulang semua pengaturan ke default", + "Use Metric Units": "Gunakan Satuan Metrik", + "Saved.": "Tersimpan.", + "Reset Settings": "Atur Ulang Pengaturan", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Unduhan tidak berfungsi? Anda bisa coba klik kanan tombol \"Unduh\", pilih \"Simpan tautan sebagai...\".", + "Theme": "Tema", + "Dark": "Gelap", + "Light": "Terang", + "System": "Sistem", + "Target Directory": "Direktori Target", + "Select": "Pilih", + "Compact list view": "Tampilan daftar ringkas", + "Show thumbnails": "Tampilkan thumbnail", + "Persist path on reload": "Pertahankan jalur saat memuat ulang", + "Select All": "Pilih Semua", + "Pinned Folders": "Folder yang Disematkan", + "No folders pinned": "Tidak ada folder yang disematkan", + "Pin Folder": "Sematkan Folder", + "Unpin Folder": "Lepas Sematan Folder", + "Project home": "Beranda Proyek", + "Follow on GitHub": "Ikuti di GitHub", + "Customize your experience with the following settings": "Sesuaikan pengalaman Anda dengan pengaturan berikut" +} \ No newline at end of file diff --git a/src/locales/json/is.json b/src/locales/json/is.json new file mode 100644 index 00000000..9f100ebd --- /dev/null +++ b/src/locales/json/is.json @@ -0,0 +1,102 @@ +{ + "Language": "Tungumál", + "Create": "Búa til", + "Close": "Loka", + "Cancel": "Hætta við", + "Save": "Vista", + "Edit": "Breyta", + "Crop": "Skera", + "New Folder": "Ný mappa", + "New File": "Ný skrá", + "Rename": "Endurnefna", + "Delete": "Eyða", + "Upload": "Hlaða upp", + "Download": "Hlaða niður", + "Archive": "Þjappa", + "Unarchive": "Afþjappa", + "Open": "Opna", + "Open containing folder": "Opna möppu", + "Refresh": "Endurnýja", + "Preview": "Forskoða", + "Toggle Full Screen": "Skipta í fullan skjá", + "Change View": "Breyta sýn", + "Storage": "Geymsla", + "Go up a directory": "Fara upp um möppu", + "Search anything..": "Leita að einhverju...", + "Name": "Nafn", + "Size": "Stærð", + "Date": "Dagsetning", + "Filepath": "Skráarslóð", + "Folder Name": "Nafn möppu", + "File Name": "Nafn skrár", + "Move files": "Færa skrár", + "Yes, Move!": "Já, færa!", + "Delete files": "Eyða skrám", + "Yes, Delete!": "Já, eyða!", + "Upload Files": "Hlaða upp skrám", + "No files selected!": "Engar skrár valdar!", + "Select Files": "Velja skrár", + "Archive the files": "Þjappa skrám", + "Unarchive the files": "Afþjappa skrám", + "The archive will be unarchived at": "Skjalasafnið verður afþjappað á", + "Archive name. (.zip file will be created)": "Nafn skjalasafns. (.zip skrá verður búin til)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder er skráastjórnunarhluti fyrir Vue 3.", + "Create a new folder": "Búa til nýja möppu", + "Create a new file": "Búa til nýja skrá", + "Are you sure you want to delete these files?": "Ertu viss um að þú viljir eyða þessum skrám?", + "This action cannot be undone.": "Ekki er hægt að afturkalla þessa aðgerð.", + "Search results for": "Leitarniðurstöður fyrir", + "%s item(s) selected.": "%s hlutur(ar) valinn(ir).", + "%s is renamed.": "%s er endurnefnt.", + "This is a readonly storage.": "Þetta er skrifvarið geymslusvæði.", + "%s is created.": "%s er búið til.", + "Files moved.": "Skrár færðar.", + "Files deleted.": "Skrám eytt.", + "The file unarchived.": "Skráin afþjöppuð.", + "The file(s) archived.": "Skrá(r) þjappað(ar).", + "Updated.": "Uppfært.", + "No search result found.": "Engar leitarniðurstöður fundust.", + "Are you sure you want to move these files?": "Ertu viss um að þú viljir færa þessar skrár?", + "File Size": "Skráarstærð", + "Last Modified": "Síðast breytt", + "Select Folders": "Velja möppur", + "Clear all": "Hreinsa allt", + "Clear only successful": "Hreinsa aðeins það sem tókst", + "Drag and drop the files/folders to here or click here.": "Dragðu og slepptu skrám/möppum hingað eða smelltu hér.", + "Release to drop these files.": "Slepptu til að sleppa þessum skrám.", + "Canceled": "Hætt við", + "Done": "Lokið", + "Network Error, Unable establish connection to the server or interrupted.": "Netvilla, gat ekki tengst netþjóni eða tenging rofnaði.", + "Pending upload": "Í bið", + "Please select file to upload first.": "Vinsamlegast veldu skrá til að hlaða upp fyrst.", + "About": "Um", + "Settings": "Stillingar", + "Shortcuts": "Flýtivísanir", + "Reset": "Endurstilla", + "Escape": "Escape", + "Search": "Leita", + "Toggle Sidebar": "Skipta um hliðarstiku", + "Open Settings": "Opna stillingar", + "Reset all settings to default": "Endurstilla allar stillingar á sjálfgefnar", + "Use Metric Units": "Nota metrakerfi", + "Saved.": "Vistað.", + "Reset Settings": "Endurstilla stillingar", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Niðurhal virkar ekki? Þú getur prófað að hægrismella á „Niðurhal“ hnappinn og valið „Vista tengil sem...“.", + "Theme": "Þema", + "Dark": "Dökkt", + "Light": "Bjart", + "System": "Kerfi", + "Target Directory": "Markmöppu", + "Select": "Velja", + "Compact list view": "Þétt listaskjá", + "Show thumbnails": "Sýna smámyndir", + "Persist path on reload": "Halda slóð við endurhleðslu", + "Select All": "Velja allt", + "Pinned Folders": "Festar möppur", + "No folders pinned": "Engar möppur festar", + "Pin Folder": "Festa möppu", + "Unpin Folder": "Losa möppu", + "Project home": "Heimasíða verkefnis", + "Follow on GitHub": "Fylgja á GitHub", + "Customize your experience with the following settings": "Sérsníða upplifun þína með eftirfarandi stillingum" +} \ No newline at end of file diff --git a/src/locales/json/it.json b/src/locales/json/it.json new file mode 100644 index 00000000..3c1887a3 --- /dev/null +++ b/src/locales/json/it.json @@ -0,0 +1,102 @@ +{ + "Language": "Lingua", + "Create": "Crea", + "Close": "Chiudi", + "Cancel": "Annulla", + "Save": "Salva", + "Edit": "Modifica", + "Crop": "Ritaglia", + "New Folder": "Nuova Cartella", + "New File": "Nuovo File", + "Rename": "Rinomina", + "Delete": "Elimina", + "Upload": "Carica", + "Download": "Scarica", + "Archive": "Archivia", + "Unarchive": "Decomprimi", + "Open": "Apri", + "Open containing folder": "Apri cartella contenitore", + "Refresh": "Aggiorna", + "Preview": "Anteprima", + "Toggle Full Screen": "Attiva/Disattiva Schermo Intero", + "Change View": "Cambia Vista", + "Storage": "Archiviazione", + "Go up a directory": "Vai su di una directory", + "Search anything..": "Cerca qualsiasi cosa...", + "Name": "Nome", + "Size": "Dimensione", + "Date": "Data", + "Filepath": "Percorso File", + "Folder Name": "Nome Cartella", + "File Name": "Nome File", + "Move files": "Sposta file", + "Yes, Move!": "Sì, Sposta!", + "Delete files": "Elimina file", + "Yes, Delete!": "Sì, Elimina!", + "Upload Files": "Carica file", + "No files selected!": "Nessun file selezionato!", + "Select Files": "Seleziona file", + "Archive the files": "Archivia i file", + "Unarchive the files": "Decomprimi i file", + "The archive will be unarchived at": "L'archivio verrà decompresso in", + "Archive name. (.zip file will be created)": "Nome archivio. (verrà creato un file .zip)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder è un componente di gestione file per Vue 3.", + "Create a new folder": "Crea una nuova cartella", + "Create a new file": "Crea un nuovo file", + "Are you sure you want to delete these files?": "Sei sicuro di voler eliminare questi file?", + "This action cannot be undone.": "Questa azione non può essere annullata.", + "Search results for": "Risultati della ricerca per", + "%s item(s) selected.": "%s elemento(i) selezionato(i).", + "%s is renamed.": "%s è stato rinominato.", + "This is a readonly storage.": "Questo è uno spazio di archiviazione di sola lettura.", + "%s is created.": "%s è stato creato.", + "Files moved.": "File spostati.", + "Files deleted.": "File eliminati.", + "The file unarchived.": "Il file è stato decompresso.", + "The file(s) archived.": "Il/i file è/sono stato/i archiviato/i.", + "Updated.": "Aggiornato.", + "No search result found.": "Nessun risultato di ricerca trovato.", + "Are you sure you want to move these files?": "Sei sicuro di voler spostare questi file?", + "File Size": "Dimensione file", + "Last Modified": "Ultima modifica", + "Select Folders": "Seleziona Cartelle", + "Clear all": "Cancella tutto", + "Clear only successful": "Cancella solo quelli riusciti", + "Drag and drop the files/folders to here or click here.": "Trascina e rilascia i file/cartelle qui o clicca qui.", + "Release to drop these files.": "Rilascia per depositare questi file.", + "Canceled": "Annullato", + "Done": "Fatto", + "Network Error, Unable establish connection to the server or interrupted.": "Errore di rete, impossibile stabilire la connessione al server o interrotta.", + "Pending upload": "In sospeso", + "Please select file to upload first.": "Seleziona prima il file da caricare.", + "About": "Informazioni", + "Settings": "Impostazioni", + "Shortcuts": "Scorciatoie", + "Reset": "Ripristina", + "Escape": "Escape", + "Search": "Cerca", + "Toggle Sidebar": "Attiva/Disattiva Sidebar", + "Open Settings": "Apri Impostazioni", + "Reset all settings to default": "Ripristina tutte le impostazioni predefinite", + "Use Metric Units": "Usa unità metriche", + "Saved.": "Salvato.", + "Reset Settings": "Ripristina Impostazioni", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Il download non funziona? Puoi provare a fare clic destro sul pulsante \"Download\" e selezionare \"Salva link con nome...\".", + "Theme": "Tema", + "Dark": "Scuro", + "Light": "Chiaro", + "System": "Sistema", + "Target Directory": "Cartella di destinazione", + "Select": "Seleziona", + "Compact list view": "Visualizzazione elenco compatta", + "Show thumbnails": "Mostra miniature", + "Persist path on reload": "Mantieni percorso al ricaricamento", + "Select All": "Seleziona tutto", + "Pinned Folders": "Cartelle bloccate", + "No folders pinned": "Nessuna cartella bloccata", + "Pin Folder": "Blocca cartella", + "Unpin Folder": "Sblocca cartella", + "Project home": "Home del progetto", + "Follow on GitHub": "Segui su GitHub", + "Customize your experience with the following settings": "Personalizza la tua esperienza con le seguenti impostazioni" +} \ No newline at end of file diff --git a/src/locales/json/ja.json b/src/locales/json/ja.json index 9e26dfee..894b1b98 100644 --- a/src/locales/json/ja.json +++ b/src/locales/json/ja.json @@ -1 +1,102 @@ -{} \ No newline at end of file +{ + "Language": "言語", + "Create": "作成", + "Close": "閉じる", + "Cancel": "キャンセル", + "Save": "保存", + "Edit": "編集", + "Crop": "トリミング", + "New Folder": "新しいフォルダー", + "New File": "新しいファイル", + "Rename": "名前の変更", + "Delete": "削除", + "Upload": "アップロード", + "Download": "ダウンロード", + "Archive": "アーカイブ", + "Unarchive": "アーカイブ解除", + "Open": "開く", + "Open containing folder": "格納フォルダーを開く", + "Refresh": "更新", + "Preview": "プレビュー", + "Toggle Full Screen": "全画面表示の切り替え", + "Change View": "表示の変更", + "Storage": "ストレージ", + "Go up a directory": "上位ディレクトリへ移動", + "Search anything..": "何でも検索...", + "Name": "名前", + "Size": "サイズ", + "Date": "日付", + "Filepath": "ファイルパス", + "Folder Name": "フォルダー名", + "File Name": "ファイル名", + "Move files": "ファイルを移動", + "Yes, Move!": "はい、移動します!", + "Delete files": "ファイルを削除", + "Yes, Delete!": "はい、削除します!", + "Upload Files": "ファイルをアップロード", + "No files selected!": "ファイルが選択されていません!", + "Select Files": "ファイルを選択", + "Archive the files": "ファイルをアーカイブ", + "Unarchive the files": "ファイルを解凍", + "The archive will be unarchived at": "アーカイブは次の場所に解凍されます", + "Archive name. (.zip file will be created)": "アーカイブ名(.zipファイルが作成されます)", + "Vuefinder is a file manager component for vue 3.": "VuefinderはVue 3用のファイルマネージャーコンポーネントです。", + "Create a new folder": "新しいフォルダーを作成", + "Create a new file": "新しいファイルを作成", + "Are you sure you want to delete these files?": "これらのファイルを削除してもよろしいですか?", + "This action cannot be undone.": "この操作は元に戻せません。", + "Search results for": "検索結果:", + "%s item(s) selected.": "%s個のアイテムが選択されました。", + "%s is renamed.": "%sは名前が変更されました。", + "This is a readonly storage.": "これは読み取り専用ストレージです。", + "%s is created.": "%sが作成されました。", + "Files moved.": "ファイルが移動されました。", + "Files deleted.": "ファイルが削除されました。", + "The file unarchived.": "ファイルが解凍されました。", + "The file(s) archived.": "ファイルがアーカイブされました。", + "Updated.": "更新されました。", + "No search result found.": "検索結果が見つかりませんでした。", + "Are you sure you want to move these files?": "これらのファイルを移動してもよろしいですか?", + "File Size": "ファイルサイズ", + "Last Modified": "最終更新日時", + "Select Folders": "フォルダーを選択", + "Clear all": "すべてクリア", + "Clear only successful": "成功した項目のみクリア", + "Drag and drop the files/folders to here or click here.": "ファイル/フォルダーをここにドラッグ&ドロップするか、ここをクリックしてください。", + "Release to drop these files.": "これらのファイルをドロップするには離してください。", + "Canceled": "キャンセル済み", + "Done": "完了", + "Network Error, Unable establish connection to the server or interrupted.": "ネットワークエラー、サーバーへの接続を確立できませんでした、または中断されました。", + "Pending upload": "保留中", + "Please select file to upload first.": "まずアップロードするファイルを選択してください。", + "About": "について", + "Settings": "設定", + "Shortcuts": "ショートカット", + "Reset": "リセット", + "Escape": "Esc", + "Search": "検索", + "Toggle Sidebar": "サイドバーの切り替え", + "Open Settings": "設定を開く", + "Reset all settings to default": "すべての設定をデフォルトにリセット", + "Use Metric Units": "メートル法を使用", + "Saved.": "保存されました。", + "Reset Settings": "設定をリセット", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "ダウンロードが機能しませんか?「ダウンロード」ボタンを右クリックし、「名前を付けてリンクを保存...」を選択してみてください。", + "Theme": "テーマ", + "Dark": "ダーク", + "Light": "ライト", + "System": "システム", + "Target Directory": "ターゲットディレクトリ", + "Select": "選択", + "Compact list view": "コンパクトリスト表示", + "Show thumbnails": "サムネイルを表示", + "Persist path on reload": "再読み込み時にパスを保持", + "Select All": "すべて選択", + "Pinned Folders": "ピン留めされたフォルダー", + "No folders pinned": "フォルダーはピン留めされていません", + "Pin Folder": "フォルダーをピン留め", + "Unpin Folder": "フォルダーのピン留めを解除", + "Project home": "プロジェクトホーム", + "Follow on GitHub": "GitHubでフォロー", + "Customize your experience with the following settings": "以下の設定でエクスペリエンスをカスタマイズ" +} \ No newline at end of file diff --git a/src/locales/json/ko.json b/src/locales/json/ko.json new file mode 100644 index 00000000..3147cbd7 --- /dev/null +++ b/src/locales/json/ko.json @@ -0,0 +1,102 @@ +{ + "Language": "언어", + "Create": "생성", + "Close": "닫기", + "Cancel": "취소", + "Save": "저장", + "Edit": "편집", + "Crop": "자르기", + "New Folder": "새 폴더", + "New File": "새 파일", + "Rename": "이름 변경", + "Delete": "삭제", + "Upload": "업로드", + "Download": "다운로드", + "Archive": "압축", + "Unarchive": "압축 해제", + "Open": "열기", + "Open containing folder": "포함된 폴더 열기", + "Refresh": "새로 고침", + "Preview": "미리 보기", + "Toggle Full Screen": "전체 화면 전환", + "Change View": "보기 변경", + "Storage": "저장 공간", + "Go up a directory": "상위 디렉터리로 이동", + "Search anything..": "무엇이든 검색...", + "Name": "이름", + "Size": "크기", + "Date": "날짜", + "Filepath": "파일 경로", + "Folder Name": "폴더 이름", + "File Name": "파일 이름", + "Move files": "파일 이동", + "Yes, Move!": "예, 이동!", + "Delete files": "파일 삭제", + "Yes, Delete!": "예, 삭제!", + "Upload Files": "파일 업로드", + "No files selected!": "선택된 파일 없음!", + "Select Files": "파일 선택", + "Archive the files": "파일 압축", + "Unarchive the files": "파일 압축 해제", + "The archive will be unarchived at": "아카이브는 다음 위치에 압축 해제됩니다.", + "Archive name. (.zip file will be created)": "아카이브 이름 (.zip 파일이 생성됩니다)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder는 Vue 3용 파일 관리자 컴포넌트입니다.", + "Create a new folder": "새 폴더 생성", + "Create a new file": "새 파일 생성", + "Are you sure you want to delete these files?": "이 파일들을 삭제하시겠습니까?", + "This action cannot be undone.": "이 작업은 되돌릴 수 없습니다.", + "Search results for": "검색 결과:", + "%s item(s) selected.": "%s개 항목 선택됨.", + "%s is renamed.": "%s(이)가 이름 변경되었습니다.", + "This is a readonly storage.": "읽기 전용 저장소입니다.", + "%s is created.": "%s(이)가 생성되었습니다.", + "Files moved.": "파일이 이동되었습니다.", + "Files deleted.": "파일이 삭제되었습니다.", + "The file unarchived.": "파일이 압축 해제되었습니다.", + "The file(s) archived.": "파일(들)이 압축되었습니다.", + "Updated.": "업데이트됨.", + "No search result found.": "검색 결과가 없습니다.", + "Are you sure you want to move these files?": "이 파일들을 이동하시겠습니까?", + "File Size": "파일 크기", + "Last Modified": "마지막 수정", + "Select Folders": "폴더 선택", + "Clear all": "모두 지우기", + "Clear only successful": "성공한 항목만 지우기", + "Drag and drop the files/folders to here or click here.": "여기로 파일/폴더를 끌어다 놓거나 여기를 클릭하세요.", + "Release to drop these files.": "파일을 놓으려면 손을 떼세요.", + "Canceled": "취소됨", + "Done": "완료", + "Network Error, Unable establish connection to the server or interrupted.": "네트워크 오류, 서버 연결을 설정할 수 없거나 연결이 끊어졌습니다.", + "Pending upload": "대기 중", + "Please select file to upload first.": "먼저 업로드할 파일을 선택하세요.", + "About": "정보", + "Settings": "설정", + "Shortcuts": "단축키", + "Reset": "초기화", + "Escape": "Escape", + "Search": "검색", + "Toggle Sidebar": "사이드바 전환", + "Open Settings": "설정 열기", + "Reset all settings to default": "모든 설정을 기본값으로 초기화", + "Use Metric Units": "미터법 단위 사용", + "Saved.": "저장됨.", + "Reset Settings": "설정 초기화", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "다운로드가 작동하지 않나요? \"다운로드\" 버튼을 마우스 오른쪽 버튼으로 클릭하고 \"다른 이름으로 링크 저장...\"을 선택해 보세요.", + "Theme": "테마", + "Dark": "어둡게", + "Light": "밝게", + "System": "시스템", + "Target Directory": "대상 디렉터리", + "Select": "선택", + "Compact list view": "간결한 목록 보기", + "Show thumbnails": "미리보기 이미지 표시", + "Persist path on reload": "새로고침 시 경로 유지", + "Select All": "모두 선택", + "Pinned Folders": "고정된 폴더", + "No folders pinned": "고정된 폴더 없음", + "Pin Folder": "폴더 고정", + "Unpin Folder": "폴더 고정 해제", + "Project home": "프로젝트 홈", + "Follow on GitHub": "GitHub에서 팔로우", + "Customize your experience with the following settings": "다음 설정으로 환경을 사용자 지정하세요" +} \ No newline at end of file diff --git a/src/locales/json/nb.json b/src/locales/json/nb.json new file mode 100644 index 00000000..a91aa2f5 --- /dev/null +++ b/src/locales/json/nb.json @@ -0,0 +1,102 @@ +{ + "Language": "Språk", + "Create": "Opprett", + "Close": "Lukk", + "Cancel": "Avbryt", + "Save": "Lagre", + "Edit": "Rediger", + "Crop": "Beskjær", + "New Folder": "Ny mappe", + "New File": "Ny fil", + "Rename": "Gi nytt navn", + "Delete": "Slett", + "Upload": "Last opp", + "Download": "Last ned", + "Archive": "Arkiver", + "Unarchive": "Pakk ut", + "Open": "Åpne", + "Open containing folder": "Åpne mappe", + "Refresh": "Oppdater", + "Preview": "Forhåndsvisning", + "Toggle Full Screen": "Veksle fullskjerm", + "Change View": "Endre visning", + "Storage": "Lagring", + "Go up a directory": "Gå opp en mappe", + "Search anything..": "Søk...", + "Name": "Navn", + "Size": "Størrelse", + "Date": "Dato", + "Filepath": "Filsti", + "Folder Name": "Mappenavn", + "File Name": "Filnavn", + "Move files": "Flytt filer", + "Yes, Move!": "Ja, flytt!", + "Delete files": "Slett filer", + "Yes, Delete!": "Ja, slett!", + "Upload Files": "Last opp filer", + "No files selected!": "Ingen filer valgt!", + "Select Files": "Velg filer", + "Archive the files": "Arkiver filene", + "Unarchive the files": "Pakk ut filene", + "The archive will be unarchived at": "Arkivet vil bli pakket ut til", + "Archive name. (.zip file will be created)": "Arkivnavn. (.zip-fil vil bli opprettet)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder er en filbehandlerkomponent for Vue 3.", + "Create a new folder": "Opprett en ny mappe", + "Create a new file": "Opprett en ny fil", + "Are you sure you want to delete these files?": "Er du sikker på at du vil slette disse filene?", + "This action cannot be undone.": "Denne handlingen kan ikke angres.", + "Search results for": "Søkeresultater for", + "%s item(s) selected.": "%s element(er) valgt.", + "%s is renamed.": "%s er omdøpt.", + "This is a readonly storage.": "Dette er et skrivebeskyttet lagringssted.", + "%s is created.": "%s er opprettet.", + "Files moved.": "Filer flyttet.", + "Files deleted.": "Filer slettet.", + "The file unarchived.": "Filen er pakket ut.", + "The file(s) archived.": "Fil(ene) er arkivert.", + "Updated.": "Oppdatert.", + "No search result found.": "Ingen søkeresultater funnet.", + "Are you sure you want to move these files?": "Er du sikker på at du vil flytte disse filene?", + "File Size": "Filstørrelse", + "Last Modified": "Sist endret", + "Select Folders": "Velg mapper", + "Clear all": "Tøm alt", + "Clear only successful": "Tøm kun vellykkede", + "Drag and drop the files/folders to here or click here.": "Dra og slipp filer/mapper hit eller klikk her.", + "Release to drop these files.": "Slipp for å legge til disse filene.", + "Canceled": "Avbrutt", + "Done": "Ferdig", + "Network Error, Unable establish connection to the server or interrupted.": "Nettverksfeil, klarte ikke å opprette forbindelse til serveren eller avbrutt.", + "Pending upload": "Venter på opplasting", + "Please select file to upload first.": "Vennligst velg fil for opplasting først.", + "About": "Om", + "Settings": "Innstillinger", + "Shortcuts": "Snarveier", + "Reset": "Tilbakestill", + "Escape": "Escape", + "Search": "Søk", + "Toggle Sidebar": "Veksle sidepanel", + "Open Settings": "Åpne innstillinger", + "Reset all settings to default": "Tilbakestill alle innstillinger til standard", + "Use Metric Units": "Bruk metriske enheter", + "Saved.": "Lagret.", + "Reset Settings": "Tilbakestill innstillinger", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Nedlasting fungerer ikke? Du kan prøve å høyreklikke på «Last ned»-knappen, velg «Lagre lenke som...».", + "Theme": "Tema", + "Dark": "Mørk", + "Light": "Lys", + "System": "System", + "Target Directory": "Målmappe", + "Select": "Velg", + "Compact list view": "Kompakt listevisning", + "Show thumbnails": "Vis miniatyrbilder", + "Persist path on reload": "Behold sti ved oppdatering", + "Select All": "Velg alle", + "Pinned Folders": "Festede mapper", + "No folders pinned": "Ingen mapper festet", + "Pin Folder": "Fest mappe", + "Unpin Folder": "Løsne mappe", + "Project home": "Prosjekthjem", + "Follow on GitHub": "Følg på GitHub", + "Customize your experience with the following settings": "Tilpass opplevelsen din med følgende innstillinger" +} \ No newline at end of file diff --git a/src/locales/json/nl.json b/src/locales/json/nl.json index 63b808f7..885cb93f 100644 --- a/src/locales/json/nl.json +++ b/src/locales/json/nl.json @@ -1,102 +1,102 @@ { - "Language": "Taal", - "Create": "Aanmaken", - "Close": "Sluiten", - "Cancel": "Annuleren", - "Save": "Opslaan", - "Edit": "Bewerken", - "Crop": "Bijsnijden", - "New Folder": "Nieuwe map", - "New File": "Nieuw bestand", - "Rename": "Hernoemen", - "Delete": "Verwijderen", - "Upload": "Uploaden", - "Download": "Downloaden", - "Archive": "Archiveren", - "Unarchive": "Uitpakken", - "Open": "Openen", - "Open containing folder": "Bevat map openen", - "Refresh": "Vernieuwen", - "Preview": "Voorbeeld", - "Toggle Full Screen": "Volledig scherm wisselen", - "Change View": "Weergave wijzigen", - "Storage": "Opslag", - "Go up a directory": "Ga een map omhoog", - "Search anything..": "Zoek iets...", - "Name": "Naam", - "Size": "Grootte", - "Date": "Datum", - "Filepath": "Bestandspad", - "Folder Name": "Mapnaam", - "File Name": "Bestandsnaam", - "Move files": "Bestanden verplaatsen", - "Yes, Move!": "Ja, verplaatsen!", - "Delete files": "Bestanden verwijderen", - "Yes, Delete!": "Ja, verwijderen!", - "Upload Files": "Bestanden uploaden", - "No files selected!": "Geen bestanden geselecteerd!", - "Select Files": "Bestanden selecteren", - "Archive the files": "Bestanden archiveren", - "Unarchive the files": "Bestanden uitpakken", - "The archive will be unarchived at": "Het archief wordt uitgepakt op", - "Archive name. (.zip file will be created)": "Archiefnaam. (Een .zip-bestand wordt aangemaakt)", - "Vuefinder is a file manager component for Vue 3.": "Vuefinder is een bestandsbeheercomponent voor Vue 3.", - "Create a new folder": "Een nieuwe map aanmaken", - "Create a new file": "Een nieuw bestand aanmaken", - "Are you sure you want to delete these files?": "Weet je zeker dat je deze bestanden wilt verwijderen?", - "This action cannot be undone.": "Deze actie kan niet ongedaan worden gemaakt.", - "Search results for": "Zoekresultaten voor", - "%s item(s) selected.": "%s item(s) geselecteerd.", - "%s is renamed.": "%s is hernoemd.", - "This is a readonly storage.": "Dit is een alleen-lezen opslag.", - "%s is created.": "%s is aangemaakt.", - "Files moved.": "Bestanden verplaatst.", - "Files deleted.": "Bestanden verwijderd.", - "The file unarchived.": "Het bestand is uitgepakt.", - "The file(s) archived.": "De bestanden zijn gearchiveerd.", - "Updated.": "Bijgewerkt.", - "No search result found.": "Geen zoekresultaten gevonden.", - "Are you sure you want to move these files?": "Weet je zeker dat je deze bestanden wilt verplaatsen?", - "File Size": "Bestandsgrootte", - "Last Modified": "Laatst gewijzigd", - "Select Folders": "Mappen selecteren", - "Clear all": "Alles wissen", - "Clear only successful": "Alleen geslaagde wissen", - "Drag and drop the files/folders to here or click here.": "Sleep de bestanden/mappen hierheen of klik hier.", - "Release to drop these files.": "Laat los om deze bestanden te plaatsen.", - "Canceled": "Geannuleerd", - "Done": "Klaar", - "Network Error, Unable establish connection to the server or interrupted.": "Netwerkfout, kan geen verbinding maken met de server of onderbroken.", - "Pending upload": "In wachtrij", - "Please select file to upload first.": "Selecteer eerst een bestand om te uploaden.", - "About": "Over", - "Settings": "Instellingen", - "Shortcuts": "Sneltoetsen", - "Reset": "Resetten", - "Escape": "Escape", - "Search": "Zoeken", - "Toggle Sidebar": "Zijbalk wisselen", - "Open Settings": "Instellingen openen", - "Reset all settings to default": "Alle instellingen terugzetten naar standaard", - "Use Metric Units": "Gebruik metrische eenheden", - "Saved.": "Opgeslagen.", - "Reset Settings": "Instellingen resetten", - "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Werkt downloaden niet? Klik met de rechtermuisknop op de knop 'Downloaden' en selecteer 'Link opslaan als...'.", - "Theme": "Thema", - "Dark": "Donker", - "Light": "Licht", - "System": "Systeem", - "Target Directory": "Doelmap", - "Select": "Selecteren", - "Compact list view": "Compacte lijstweergave", - "Show thumbnails": "Miniaturen weergeven", - "Persist path on reload": "Pad behouden bij herladen", - "Select All": "Alles selecteren", - "Pinned Folders": "Vastgezette mappen", - "No folders pinned": "Geen mappen vastgezet", - "Pin Folder": "Map vastzetten", - "Unpin Folder": "Map losmaken", - "Project home": "Projectpagina", - "Follow on GitHub": "Volg op GitHub", - "Customize your experience with the following settings": "Pas je ervaring aan met de volgende instellingen" + "Language": "Taal", + "Create": "Aanmaken", + "Close": "Sluiten", + "Cancel": "Annuleren", + "Save": "Opslaan", + "Edit": "Bewerken", + "Crop": "Bijsnijden", + "New Folder": "Nieuwe map", + "New File": "Nieuw bestand", + "Rename": "Hernoemen", + "Delete": "Verwijderen", + "Upload": "Uploaden", + "Download": "Downloaden", + "Archive": "Archiveren", + "Unarchive": "Uitpakken", + "Open": "Openen", + "Open containing folder": "Bevat map openen", + "Refresh": "Vernieuwen", + "Preview": "Voorbeeld", + "Toggle Full Screen": "Volledig scherm wisselen", + "Change View": "Weergave wijzigen", + "Storage": "Opslag", + "Go up a directory": "Ga een map omhoog", + "Search anything..": "Zoek iets...", + "Name": "Naam", + "Size": "Grootte", + "Date": "Datum", + "Filepath": "Bestandspad", + "Folder Name": "Mapnaam", + "File Name": "Bestandsnaam", + "Move files": "Bestanden verplaatsen", + "Yes, Move!": "Ja, verplaatsen!", + "Delete files": "Bestanden verwijderen", + "Yes, Delete!": "Ja, verwijderen!", + "Upload Files": "Bestanden uploaden", + "No files selected!": "Geen bestanden geselecteerd!", + "Select Files": "Bestanden selecteren", + "Archive the files": "Bestanden archiveren", + "Unarchive the files": "Bestanden uitpakken", + "The archive will be unarchived at": "Het archief wordt uitgepakt op", + "Archive name. (.zip file will be created)": "Archiefnaam. (Een .zip-bestand wordt aangemaakt)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder is een bestandsbeheercomponent voor Vue 3.", + "Create a new folder": "Een nieuwe map aanmaken", + "Create a new file": "Een nieuw bestand aanmaken", + "Are you sure you want to delete these files?": "Weet je zeker dat je deze bestanden wilt verwijderen?", + "This action cannot be undone.": "Deze actie kan niet ongedaan worden gemaakt.", + "Search results for": "Zoekresultaten voor", + "%s item(s) selected.": "%s item(s) geselecteerd.", + "%s is renamed.": "%s is hernoemd.", + "This is a readonly storage.": "Dit is een alleen-lezen opslag.", + "%s is created.": "%s is aangemaakt.", + "Files moved.": "Bestanden verplaatst.", + "Files deleted.": "Bestanden verwijderd.", + "The file unarchived.": "Het bestand is uitgepakt.", + "The file(s) archived.": "De bestanden zijn gearchiveerd.", + "Updated.": "Bijgewerkt.", + "No search result found.": "Geen zoekresultaten gevonden.", + "Are you sure you want to move these files?": "Weet je zeker dat je deze bestanden wilt verplaatsen?", + "File Size": "Bestandsgrootte", + "Last Modified": "Laatst gewijzigd", + "Select Folders": "Mappen selecteren", + "Clear all": "Alles wissen", + "Clear only successful": "Alleen geslaagde wissen", + "Drag and drop the files/folders to here or click here.": "Sleep de bestanden/mappen hierheen of klik hier.", + "Release to drop these files.": "Laat los om deze bestanden te plaatsen.", + "Canceled": "Geannuleerd", + "Done": "Klaar", + "Network Error, Unable establish connection to the server or interrupted.": "Netwerkfout, kan geen verbinding maken met de server of onderbroken.", + "Pending upload": "In wachtrij", + "Please select file to upload first.": "Selecteer eerst een bestand om te uploaden.", + "About": "Over", + "Settings": "Instellingen", + "Shortcuts": "Sneltoetsen", + "Reset": "Resetten", + "Escape": "Escape", + "Search": "Zoeken", + "Toggle Sidebar": "Zijbalk wisselen", + "Open Settings": "Instellingen openen", + "Reset all settings to default": "Alle instellingen terugzetten naar standaard", + "Use Metric Units": "Gebruik metrische eenheden", + "Saved.": "Opgeslagen.", + "Reset Settings": "Instellingen resetten", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Werkt downloaden niet? Klik met de rechtermuisknop op de knop 'Downloaden' en selecteer 'Link opslaan als...'.", + "Theme": "Thema", + "Dark": "Donker", + "Light": "Licht", + "System": "Systeem", + "Target Directory": "Doelmap", + "Select": "Selecteren", + "Compact list view": "Compacte lijstweergave", + "Show thumbnails": "Miniaturen weergeven", + "Persist path on reload": "Pad behouden bij herladen", + "Select All": "Alles selecteren", + "Pinned Folders": "Vastgezette mappen", + "No folders pinned": "Geen mappen vastgezet", + "Pin Folder": "Map vastzetten", + "Unpin Folder": "Map losmaken", + "Project home": "Projectpagina", + "Follow on GitHub": "Volg op GitHub", + "Customize your experience with the following settings": "Pas je ervaring aan met de volgende instellingen" } diff --git a/src/locales/json/pl.json b/src/locales/json/pl.json index 60d31b6f..e3c41294 100644 --- a/src/locales/json/pl.json +++ b/src/locales/json/pl.json @@ -1,102 +1,102 @@ { - "Language": "Język", - "Create": "Utwórz", - "Close": "Zamknij", - "Cancel": "Anuluj", - "Save": "Zapisz", - "Edit": "Edytuj", - "Crop": "Przytnij", - "New Folder": "Nowy folder", - "New File": "Nowy plik", - "Rename": "Zmień nazwę", - "Delete": "Usuń", - "Upload": "Prześlij", - "Download": "Pobierz", - "Archive": "Archiwizuj", - "Unarchive": "Rozpakuj", - "Open": "Otwórz", - "Open containing folder": "Otwórz folder zawierający", - "Refresh": "Odśwież", - "Preview": "Podgląd", - "Toggle Full Screen": "Przełącz tryb pełnoekranowy", - "Change View": "Zmień widok", - "Storage": "Pamięć", - "Go up a directory": "Przejdź do katalogu wyżej", - "Search anything..": "Szukaj czegokolwiek..", - "Name": "Nazwa", - "Size": "Rozmiar", - "Date": "Data", - "Filepath": "Ścieżka pliku", - "Folder Name": "Nazwa folderu", - "File Name": "Nazwa pliku", - "Move files": "Przenieś pliki", - "Yes, Move!": "Tak, przenieś!", - "Delete files": "Usuń pliki", - "Yes, Delete!": "Tak, usuń!", - "Upload Files": "Prześlij pliki", - "No files selected!": "Nie wybrano plików!", - "Select Files": "Wybierz pliki", - "Archive the files": "Zarchiwizuj pliki", - "Unarchive the files": "Rozpakuj pliki", - "The archive will be unarchived at": "Archiwum zostanie rozpakowane w", - "Archive name. (.zip file will be created)": "Nazwa archiwum. (.zip plik zostanie utworzony)", - "Vuefinder is a file manager component for Vue 3.": "Vuefinder to komponent menedżera plików dla Vue 3.", - "Create a new folder": "Utwórz nowy folder", - "Create a new file": "Utwórz nowy plik", - "Are you sure you want to delete these files?": "Czy na pewno chcesz usunąć te pliki?", - "This action cannot be undone.": "Tej operacji nie można cofnąć.", - "Search results for": "Wyniki wyszukiwania dla", - "%s item(s) selected.": "Wybrano %s elementów.", - "%s is renamed.": "%s zostało przemianowane.", - "This is a readonly storage.": "To jest pamięć tylko do odczytu.", - "%s is created.": "%s zostało utworzone.", - "Files moved.": "Pliki zostały przeniesione.", - "Files deleted.": "Pliki zostały usunięte.", - "The file unarchived.": "Plik został rozpakowany.", - "The file(s) archived.": "Plik(i) zostały zarchiwizowane.", - "Updated.": "Zaktualizowano.", - "No search result found.": "Nie znaleziono wyników wyszukiwania.", - "Are you sure you want to move these files?": "Czy na pewno chcesz przenieść te pliki?", - "File Size": "Rozmiar pliku", - "Last Modified": "Ostatnia modyfikacja", - "Select Folders": "Wybierz foldery", - "Clear all": "Wyczyść wszystko", - "Clear only successful": "Wyczyść tylko udane", - "Drag and drop the files/folders to here or click here.": "Przeciągnij i upuść pliki/foldery tutaj lub kliknij tutaj.", - "Release to drop these files.": "Zwolnij przycisk, aby upuścić te pliki.", - "Canceled": "Anulowano", - "Done": "Gotowe", - "Network Error, Unable establish connection to the server or interrupted.": "Błąd sieci, nie można nawiązać połączenia z serwerem lub połączenie zostało przerwane.", - "Pending upload": "Oczekujące przesyłanie", - "Please select file to upload first.": "Proszę najpierw wybrać plik do przesłania.", - "About": "O programie", - "Settings": "Ustawienia", - "Shortcuts": "Skróty", - "Reset": "Resetuj", - "Escape": "Escape", - "Search": "Szukaj", - "Toggle Sidebar": "Przełącz pasek boczny", - "Open Settings": "Otwórz ustawienia", - "Reset all settings to default": "Zresetuj wszystkie ustawienia do domyślnych", - "Use Metric Units": "Użyj jednostek metrycznych", - "Saved.": "Zapisano.", - "Reset Settings": "Zresetuj ustawienia", - "Download doesn't work? You can try right-click 'Download' button, select 'Save link as...'.": "Pobieranie nie działa? Możesz spróbować kliknąć prawym przyciskiem na przycisk 'Pobierz', wybrać 'Zapisz link jako...'.", - "Theme": "Motyw", - "Dark": "Ciemny", - "Light": "Jasny", - "System": "System", - "Target Directory": "Docelowy katalog", - "Select": "Wybierz", - "Compact list view": "Widok listy w formacie kompaktowym", - "Show thumbnails": "Pokaż miniatury", - "Persist path on reload": "Zachowaj ścieżkę po przeładowaniu", - "Select All": "Zaznacz wszystko", - "Pinned Folders": "Przypięte foldery", - "No folders pinned": "Brak przypiętych folderów", - "Pin Folder": "Przypnij folder", - "Unpin Folder": "Odepnij folder", - "Project home": "Strona główna projektu", - "Follow on GitHub": "Śledź na GitHubie", - "Customize your experience with the following settings": "Dostosuj swoje doświadczenie za pomocą poniższych ustawień" + "Language": "Język", + "Create": "Utwórz", + "Close": "Zamknij", + "Cancel": "Anuluj", + "Save": "Zapisz", + "Edit": "Edytuj", + "Crop": "Przytnij", + "New Folder": "Nowy folder", + "New File": "Nowy plik", + "Rename": "Zmień nazwę", + "Delete": "Usuń", + "Upload": "Prześlij", + "Download": "Pobierz", + "Archive": "Archiwizuj", + "Unarchive": "Rozpakuj", + "Open": "Otwórz", + "Open containing folder": "Otwórz folder zawierający", + "Refresh": "Odśwież", + "Preview": "Podgląd", + "Toggle Full Screen": "Przełącz tryb pełnoekranowy", + "Change View": "Zmień widok", + "Storage": "Pamięć", + "Go up a directory": "Przejdź do katalogu wyżej", + "Search anything..": "Szukaj czegokolwiek..", + "Name": "Nazwa", + "Size": "Rozmiar", + "Date": "Data", + "Filepath": "Ścieżka pliku", + "Folder Name": "Nazwa folderu", + "File Name": "Nazwa pliku", + "Move files": "Przenieś pliki", + "Yes, Move!": "Tak, przenieś!", + "Delete files": "Usuń pliki", + "Yes, Delete!": "Tak, usuń!", + "Upload Files": "Prześlij pliki", + "No files selected!": "Nie wybrano plików!", + "Select Files": "Wybierz pliki", + "Archive the files": "Zarchiwizuj pliki", + "Unarchive the files": "Rozpakuj pliki", + "The archive will be unarchived at": "Archiwum zostanie rozpakowane w", + "Archive name. (.zip file will be created)": "Nazwa archiwum. (.zip plik zostanie utworzony)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder to komponent menedżera plików dla Vue 3.", + "Create a new folder": "Utwórz nowy folder", + "Create a new file": "Utwórz nowy plik", + "Are you sure you want to delete these files?": "Czy na pewno chcesz usunąć te pliki?", + "This action cannot be undone.": "Tej operacji nie można cofnąć.", + "Search results for": "Wyniki wyszukiwania dla", + "%s item(s) selected.": "Wybrano %s elementów.", + "%s is renamed.": "%s zostało przemianowane.", + "This is a readonly storage.": "To jest pamięć tylko do odczytu.", + "%s is created.": "%s zostało utworzone.", + "Files moved.": "Pliki zostały przeniesione.", + "Files deleted.": "Pliki zostały usunięte.", + "The file unarchived.": "Plik został rozpakowany.", + "The file(s) archived.": "Plik(i) zostały zarchiwizowane.", + "Updated.": "Zaktualizowano.", + "No search result found.": "Nie znaleziono wyników wyszukiwania.", + "Are you sure you want to move these files?": "Czy na pewno chcesz przenieść te pliki?", + "File Size": "Rozmiar pliku", + "Last Modified": "Ostatnia modyfikacja", + "Select Folders": "Wybierz foldery", + "Clear all": "Wyczyść wszystko", + "Clear only successful": "Wyczyść tylko udane", + "Drag and drop the files/folders to here or click here.": "Przeciągnij i upuść pliki/foldery tutaj lub kliknij tutaj.", + "Release to drop these files.": "Zwolnij przycisk, aby upuścić te pliki.", + "Canceled": "Anulowano", + "Done": "Gotowe", + "Network Error, Unable establish connection to the server or interrupted.": "Błąd sieci, nie można nawiązać połączenia z serwerem lub połączenie zostało przerwane.", + "Pending upload": "Oczekujące przesyłanie", + "Please select file to upload first.": "Proszę najpierw wybrać plik do przesłania.", + "About": "O programie", + "Settings": "Ustawienia", + "Shortcuts": "Skróty", + "Reset": "Resetuj", + "Escape": "Escape", + "Search": "Szukaj", + "Toggle Sidebar": "Przełącz pasek boczny", + "Open Settings": "Otwórz ustawienia", + "Reset all settings to default": "Zresetuj wszystkie ustawienia do domyślnych", + "Use Metric Units": "Użyj jednostek metrycznych", + "Saved.": "Zapisano.", + "Reset Settings": "Zresetuj ustawienia", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Pobieranie nie działa? Możesz spróbować kliknąć prawym przyciskiem myszy przycisk „Pobierz”, a następnie wybrać „Zapisz link jako...”.", + "Theme": "Motyw", + "Dark": "Ciemny", + "Light": "Jasny", + "System": "System", + "Target Directory": "Docelowy katalog", + "Select": "Wybierz", + "Compact list view": "Widok listy w formacie kompaktowym", + "Show thumbnails": "Pokaż miniatury", + "Persist path on reload": "Zachowaj ścieżkę po przeładowaniu", + "Select All": "Zaznacz wszystko", + "Pinned Folders": "Przypięte foldery", + "No folders pinned": "Brak przypiętych folderów", + "Pin Folder": "Przypnij folder", + "Unpin Folder": "Odepnij folder", + "Project home": "Strona główna projektu", + "Follow on GitHub": "Śledź na GitHubie", + "Customize your experience with the following settings": "Dostosuj swoje doświadczenie za pomocą poniższych ustawień" } diff --git a/src/locales/json/pt.json b/src/locales/json/pt.json new file mode 100644 index 00000000..b3ca29b5 --- /dev/null +++ b/src/locales/json/pt.json @@ -0,0 +1,102 @@ +{ + "Language": "Idioma", + "Create": "Criar", + "Close": "Fechar", + "Cancel": "Cancelar", + "Save": "Salvar", + "Edit": "Editar", + "Crop": "Cortar", + "New Folder": "Nova Pasta", + "New File": "Novo Arquivo", + "Rename": "Renomear", + "Delete": "Excluir", + "Upload": "Carregar", + "Download": "Baixar", + "Archive": "Arquivar", + "Unarchive": "Desarquivar", + "Open": "Abrir", + "Open containing folder": "Abrir pasta que contém", + "Refresh": "Atualizar", + "Preview": "Pré-visualizar", + "Toggle Full Screen": "Alternar Tela Cheia", + "Change View": "Mudar Visualização", + "Storage": "Armazenamento", + "Go up a directory": "Subir um diretório", + "Search anything..": "Pesquisar qualquer coisa...", + "Name": "Nome", + "Size": "Tamanho", + "Date": "Data", + "Filepath": "Caminho do Arquivo", + "Folder Name": "Nome da Pasta", + "File Name": "Nome do Arquivo", + "Move files": "Mover arquivos", + "Yes, Move!": "Sim, Mover!", + "Delete files": "Excluir arquivos", + "Yes, Delete!": "Sim, Excluir!", + "Upload Files": "Carregar Arquivos", + "No files selected!": "Nenhum arquivo selecionado!", + "Select Files": "Selecionar Arquivos", + "Archive the files": "Compactar os arquivos", + "Unarchive the files": "Descompactar os arquivos", + "The archive will be unarchived at": "O arquivo será descompactado em", + "Archive name. (.zip file will be created)": "Nome do arquivo. (Será criado um arquivo .zip)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder é um componente de gerenciador de arquivos para Vue 3.", + "Create a new folder": "Criar nova pasta", + "Create a new file": "Criar novo arquivo", + "Are you sure you want to delete these files?": "Tem certeza de que deseja excluir estes arquivos?", + "This action cannot be undone.": "Esta ação não pode ser desfeita.", + "Search results for": "Resultados da pesquisa para", + "%s item(s) selected.": "%s item(s) selecionado(s).", + "%s is renamed.": "%s foi renomeado.", + "This is a readonly storage.": "Este é um armazenamento somente leitura.", + "%s is created.": "%s foi criado.", + "Files moved.": "Arquivos movidos.", + "Files deleted.": "Arquivos excluídos.", + "The file unarchived.": "O arquivo descompactado.", + "The file(s) archived.": "O(s) arquivo(s) compactado(s).", + "Updated.": "Atualizado.", + "No search result found.": "Nenhum resultado de pesquisa encontrado.", + "Are you sure you want to move these files?": "Tem certeza de que deseja mover estes arquivos?", + "File Size": "Tamanho do Arquivo", + "Last Modified": "Última Modificação", + "Select Folders": "Selecionar Pastas", + "Clear all": "Limpar tudo", + "Clear only successful": "Limpar apenas os bem-sucedidos", + "Drag and drop the files/folders to here or click here.": "Arraste e solte os arquivos/pastas aqui ou clique aqui.", + "Release to drop these files.": "Solte para largar estes arquivos.", + "Canceled": "Cancelado", + "Done": "Concluído", + "Network Error, Unable establish connection to the server or interrupted.": "Erro de Rede, Não foi possível estabelecer conexão com o servidor ou a conexão foi interrompida.", + "Pending upload": "Pendente", + "Please select file to upload first.": "Por favor, selecione um arquivo para enviar primeiro.", + "About": "Sobre", + "Settings": "Configurações", + "Shortcuts": "Atalhos", + "Reset": "Redefinir", + "Escape": "Escape", + "Search": "Pesquisar", + "Toggle Sidebar": "Alternar Barra Lateral", + "Open Settings": "Abrir Configurações", + "Reset all settings to default": "Redefinir todas as configurações para o padrão", + "Use Metric Units": "Usar Unidades Métricas", + "Saved.": "Salvo.", + "Reset Settings": "Redefinir Configurações", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "O download não funciona? Você pode tentar clicar com o botão direito no botão \"Download\" e selecionar \"Salvar link como...\".", + "Theme": "Tema", + "Dark": "Escuro", + "Light": "Claro", + "System": "Sistema", + "Target Directory": "Diretório de Destino", + "Select": "Selecionar", + "Compact list view": "Visualização de lista compacta", + "Show thumbnails": "Mostrar miniaturas", + "Persist path on reload": "Manter caminho ao recarregar", + "Select All": "Selecionar Tudo", + "Pinned Folders": "Pastas Fixadas", + "No folders pinned": "Nenhuma pasta fixada", + "Pin Folder": "Fixar Pasta", + "Unpin Folder": "Desafixar Pasta", + "Project home": "Página inicial do projeto", + "Follow on GitHub": "Seguir no GitHub", + "Customize your experience with the following settings": "Personalize sua experiência com as seguintes configurações" +} \ No newline at end of file diff --git a/src/locales/json/ro.json b/src/locales/json/ro.json new file mode 100644 index 00000000..3956efeb --- /dev/null +++ b/src/locales/json/ro.json @@ -0,0 +1,102 @@ +{ + "Language": "Limbă", + "Create": "Creare", + "Close": "Închide", + "Cancel": "Anulează", + "Save": "Salvează", + "Edit": "Editează", + "Crop": "Decupează", + "New Folder": "Dosar nou", + "New File": "Fișier nou", + "Rename": "Redenumește", + "Delete": "Șterge", + "Upload": "Încarcă", + "Download": "Descarcă", + "Archive": "Arhivează", + "Unarchive": "Dezarhivează", + "Open": "Deschide", + "Open containing folder": "Deschide dosarul care conține", + "Refresh": "Reîmprospătează", + "Preview": "Previzualizare", + "Toggle Full Screen": "Comută ecran complet", + "Change View": "Schimbă vizualizarea", + "Storage": "Stocare", + "Go up a directory": "Mergi la directorul superior", + "Search anything..": "Căutați orice...", + "Name": "Nume", + "Size": "Dimensiune", + "Date": "Dată", + "Filepath": "Cale fișier", + "Folder Name": "Nume dosar", + "File Name": "Nume fișier", + "Move files": "Mută fișiere", + "Yes, Move!": "Da, Mută!", + "Delete files": "Șterge fișiere", + "Yes, Delete!": "Da, Șterge!", + "Upload Files": "Încarcă fișiere", + "No files selected!": "Niciun fișier selectat!", + "Select Files": "Selectează fișiere", + "Archive the files": "Arhivează fișierele", + "Unarchive the files": "Dezarhivează fișierele", + "The archive will be unarchived at": "Arhiva va fi dezarhivată la", + "Archive name. (.zip file will be created)": "Nume arhivă. (va fi creat un fișier .zip)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder este o componentă de manager de fișiere pentru Vue 3.", + "Create a new folder": "Creează un dosar nou", + "Create a new file": "Creează un fișier nou", + "Are you sure you want to delete these files?": "Ești sigur că vrei să ștergi aceste fișiere?", + "This action cannot be undone.": "Această acțiune nu poate fi anulată.", + "Search results for": "Rezultate căutare pentru", + "%s item(s) selected.": "%s element(e) selectat(e).", + "%s is renamed.": "%s a fost redenumit.", + "This is a readonly storage.": "Acesta este un spațiu de stocare doar pentru citire.", + "%s is created.": "%s a fost creat.", + "Files moved.": "Fișiere mutate.", + "Files deleted.": "Fișiere șterse.", + "The file unarchived.": "Fișierul dezarhivat.", + "The file(s) archived.": "Fișierul/fișierele arhivat(e).", + "Updated.": "Actualizat.", + "No search result found.": "Niciun rezultat de căutare găsit.", + "Are you sure you want to move these files?": "Ești sigur că vrei să muți aceste fișiere?", + "File Size": "Dimensiune fișier", + "Last Modified": "Ultima modificare", + "Select Folders": "Selectați Dosare", + "Clear all": "Golește tot", + "Clear only successful": "Golește doar cele reușite", + "Drag and drop the files/folders to here or click here.": "Trageți și plasați fișierele/dosarele aici sau faceți clic aici.", + "Release to drop these files.": "Eliberați pentru a plasa aceste fișiere.", + "Canceled": "Anulat", + "Done": "Gata", + "Network Error, Unable establish connection to the server or interrupted.": "Eroare de rețea, Nu se poate stabili conexiunea la server sau a fost întreruptă.", + "Pending upload": "În așteptare", + "Please select file to upload first.": "Vă rugăm să selectați mai întâi un fișier pentru încărcare.", + "About": "Despre", + "Settings": "Setări", + "Shortcuts": "Comenzi rapide", + "Reset": "Resetare", + "Escape": "Escape", + "Search": "Căutare", + "Toggle Sidebar": "Comută bara laterală", + "Open Settings": "Deschide Setări", + "Reset all settings to default": "Resetați toate setările la valorile implicite", + "Use Metric Units": "Utilizați unități metrice", + "Saved.": "Salvat.", + "Reset Settings": "Resetați Setările", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Descărcarea nu funcționează? Puteți încerca să faceți clic dreapta pe butonul „Descărcare”, apoi să selectați „Salvați linkul ca...”", + "Theme": "Temă", + "Dark": "Întunecată", + "Light": "Luminoasă", + "System": "Sistem", + "Target Directory": "Director țintă", + "Select": "Selectează", + "Compact list view": "Vizualizare listă compactă", + "Show thumbnails": "Afișează miniaturi", + "Persist path on reload": "Păstrează calea la reîncărcare", + "Select All": "Selectează tot", + "Pinned Folders": "Dosare fixate", + "No folders pinned": "Niciun dosar fixat", + "Pin Folder": "Fixează dosarul", + "Unpin Folder": "Anulează fixarea dosarului", + "Project home": "Pagina principală a proiectului", + "Follow on GitHub": "Urmărește pe GitHub", + "Customize your experience with the following settings": "Personalizează-ți experiența cu următoarele setări" +} \ No newline at end of file diff --git a/src/locales/json/sk.json b/src/locales/json/sk.json new file mode 100644 index 00000000..d5526727 --- /dev/null +++ b/src/locales/json/sk.json @@ -0,0 +1,102 @@ +{ + "Language": "Jazyk", + "Create": "Vytvoriť", + "Close": "Zavrieť", + "Cancel": "Zrušiť", + "Save": "Uložiť", + "Edit": "Upraviť", + "Crop": "Orezať", + "New Folder": "Nový priečinok", + "New File": "Nový súbor", + "Rename": "Premenovať", + "Delete": "Odstrániť", + "Upload": "Nahrať", + "Download": "Stiahnuť", + "Archive": "Archivovať", + "Unarchive": "Rozbaliť", + "Open": "Otvoriť", + "Open containing folder": "Otvoriť obsahujúci priečinok", + "Refresh": "Obnoviť", + "Preview": "Náhľad", + "Toggle Full Screen": "Prepnúť celú obrazovku", + "Change View": "Zmeniť zobrazenie", + "Storage": "Úložisko", + "Go up a directory": "Prejsť o úroveň vyššie", + "Search anything..": "Hľadať čokoľvek...", + "Name": "Názov", + "Size": "Veľkosť", + "Date": "Dátum", + "Filepath": "Cesta k súboru", + "Folder Name": "Názov priečinka", + "File Name": "Názov súboru", + "Move files": "Presunúť súbory", + "Yes, Move!": "Áno, presunúť!", + "Delete files": "Odstrániť súbory", + "Yes, Delete!": "Áno, odstrániť!", + "Upload Files": "Nahrať súbory", + "No files selected!": "Žiadne súbory neboli vybrané!", + "Select Files": "Vybrať súbory", + "Archive the files": "Archivovať súbory", + "Unarchive the files": "Rozbaliť súbory", + "The archive will be unarchived at": "Archív bude rozbalený v", + "Archive name. (.zip file will be created)": "Názov archívu. (.zip súbor bude vytvorený)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder je komponent správcu súborov pre Vue 3.", + "Create a new folder": "Vytvoriť nový priečinok", + "Create a new file": "Vytvoriť nový súbor", + "Are you sure you want to delete these files?": "Naozaj chcete odstrániť tieto súbory?", + "This action cannot be undone.": "Túto akciu nemožno vrátiť späť.", + "Search results for": "Výsledky vyhľadávania pre", + "%s item(s) selected.": "%s vybraných položiek.", + "%s is renamed.": "%s bol premenovaný.", + "This is a readonly storage.": "Toto je úložisko len na čítanie.", + "%s is created.": "%s bol vytvorený.", + "Files moved.": "Súbory presunuté.", + "Files deleted.": "Súbory odstránené.", + "The file unarchived.": "Súbor rozbalený.", + "The file(s) archived.": "Súbor(y) archivovaný(é).", + "Updated.": "Aktualizované.", + "No search result found.": "Nenašli sa žiadne výsledky vyhľadávania.", + "Are you sure you want to move these files?": "Naozaj chcete presunúť tieto súbory?", + "File Size": "Veľkosť súboru", + "Last Modified": "Posledná úprava", + "Select Folders": "Vybrať priečinky", + "Clear all": "Vymazať všetko", + "Clear only successful": "Vymazať iba úspešné", + "Drag and drop the files/folders to here or click here.": "Presuňte súbory/priečinky sem alebo kliknite sem.", + "Release to drop these files.": "Uvoľnite pre presunutie týchto súborov.", + "Canceled": "Zrušené", + "Done": "Hotovo", + "Network Error, Unable establish connection to the server or interrupted.": "Chyba siete, Nepodarilo sa nadviazať spojenie so serverom alebo bolo prerušené.", + "Pending upload": "Čaká sa", + "Please select file to upload first.": "Najprv prosím vyberte súbor na nahranie.", + "About": "O aplikácii", + "Settings": "Nastavenia", + "Shortcuts": "Skratky", + "Reset": "Resetovať", + "Escape": "Escape", + "Search": "Hľadať", + "Toggle Sidebar": "Prepnúť bočný panel", + "Open Settings": "Otvoriť nastavenia", + "Reset all settings to default": "Obnoviť všetky nastavenia na predvolené", + "Use Metric Units": "Používať metrické jednotky", + "Saved.": "Uložené.", + "Reset Settings": "Resetovať nastavenia", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Sťahovanie nefunguje? Môžete skúsiť kliknúť pravým tlačidlom na tlačidlo \"Stiahnuť\" a vybrať \"Uložiť odkaz ako...\".", + "Theme": "Téma", + "Dark": "Tmavá", + "Light": "Svetlá", + "System": "Systém", + "Target Directory": "Cieľový priečinok", + "Select": "Vybrať", + "Compact list view": "Kompaktné zobrazenie zoznamu", + "Show thumbnails": "Zobraziť miniatúry", + "Persist path on reload": "Zachovať cestu po opätovnom načítaní", + "Select All": "Vybrať všetko", + "Pinned Folders": "Pripnuté priečinky", + "No folders pinned": "Žiadne priečinky nie sú pripnuté", + "Pin Folder": "Pripnúť priečinok", + "Unpin Folder": "Odopnúť priečinok", + "Project home": "Domovská stránka projektu", + "Follow on GitHub": "Sledovať na GitHub", + "Customize your experience with the following settings": "Prispôsobte si svoje prostredie pomocou nasledujúcich nastavení" +} \ No newline at end of file diff --git a/src/locales/json/sl.json b/src/locales/json/sl.json new file mode 100644 index 00000000..6ad9f891 --- /dev/null +++ b/src/locales/json/sl.json @@ -0,0 +1,102 @@ +{ + "Language": "Jezik", + "Create": "Ustvari", + "Close": "Zapri", + "Cancel": "Prekliči", + "Save": "Shrani", + "Edit": "Uredi", + "Crop": "Obreži", + "New Folder": "Nova mapa", + "New File": "Nova datoteka", + "Rename": "Preimenuj", + "Delete": "Izbriši", + "Upload": "Naloži", + "Download": "Prenesi", + "Archive": "Arhiviraj", + "Unarchive": "Razveljavi arhiviranje", + "Open": "Odpri", + "Open containing folder": "Odpri vsebujočo mapo", + "Refresh": "Osveži", + "Preview": "Predogled", + "Toggle Full Screen": "Preklopi celozaslonski način", + "Change View": "Spremeni pogled", + "Storage": "Shramba", + "Go up a directory": "Pojdi v nadrejeno mapo", + "Search anything..": "Išči karkoli..", + "Name": "Ime", + "Size": "Velikost", + "Date": "Datum", + "Filepath": "Pot datoteke", + "Folder Name": "Ime mape", + "File Name": "Ime datoteke", + "Move files": "Premakni datoteke", + "Yes, Move!": "Da, premakni!", + "Delete files": "Izbriši datoteke", + "Yes, Delete!": "Da, izbriši!", + "Upload Files": "Naloži datoteke", + "No files selected!": "Ni izbranih datotek!", + "Select Files": "Izberi datoteke", + "Archive the files": "Arhiviraj datoteke", + "Unarchive the files": "Razveljavi arhiviranje datotek", + "The archive will be unarchived at": "Arhiv bo razveljavljen na", + "Archive name. (.zip file will be created)": "Ime arhiva. (ustvarjena bo datoteka .zip)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder je komponenta upravljalnika datotek za Vue 3.", + "Create a new folder": "Ustvari novo mapo", + "Create a new file": "Ustvari novo datoteko", + "Are you sure you want to delete these files?": "Ali ste prepričani, da želite izbrisati te datoteke?", + "This action cannot be undone.": "Tega dejanja ni mogoče razveljaviti.", + "Search results for": "Rezultati iskanja za", + "%s item(s) selected.": "%s izbrano(ih) elementov.", + "%s is renamed.": "%s je preimenovan.", + "This is a readonly storage.": "To je shramba samo za branje.", + "%s is created.": "%s je ustvarjen.", + "Files moved.": "Datoteke premaknjene.", + "Files deleted.": "Datoteke izbrisane.", + "The file unarchived.": "Datoteka je razveljavljena.", + "The file(s) archived.": "Datoteka(e) arhivirana.", + "Updated.": "Posodobljeno.", + "No search result found.": "Ni najdenih rezultatov iskanja.", + "Are you sure you want to move these files?": "Ali ste prepričani, da želite premakniti te datoteke?", + "File Size": "Velikost datoteke", + "Last Modified": "Zadnja sprememba", + "Select Folders": "Izberi mape", + "Clear all": "Počisti vse", + "Clear only successful": "Počisti samo uspešne", + "Drag and drop the files/folders to here or click here.": "Povlecite in spustite datoteke/mape sem ali kliknite tukaj.", + "Release to drop these files.": "Spustite, da odložite te datoteke.", + "Canceled": "Preklicano", + "Done": "Končano", + "Network Error, Unable establish connection to the server or interrupted.": "Napaka omrežja, ni mogoče vzpostaviti povezave s strežnikom ali je bila prekinjena.", + "Pending upload": "V teku", + "Please select file to upload first.": "Najprej izberite datoteko za nalaganje.", + "About": "O programu", + "Settings": "Nastavitve", + "Shortcuts": "Bližnjice", + "Reset": "Ponastavi", + "Escape": "Pobeg", + "Search": "Išči", + "Toggle Sidebar": "Preklopi stransko vrstico", + "Open Settings": "Odpri nastavitve", + "Reset all settings to default": "Ponastavi vse nastavitve na privzete", + "Use Metric Units": "Uporabi metrične enote", + "Saved.": "Shranjeno.", + "Reset Settings": "Ponastavi nastavitve", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Prenos ne deluje? Poskusite z desnim klikom na gumb »Prenesi«, izberite »Shrani povezavo kot...«.", + "Theme": "Tema", + "Dark": "Temno", + "Light": "Svetlo", + "System": "Sistem", + "Target Directory": "Ciljni imenik", + "Select": "Izberi", + "Compact list view": "Kompakten seznam", + "Show thumbnails": "Prikaži sličice", + "Persist path on reload": "Ohrani pot ob ponovnem nalaganju", + "Select All": "Izberi vse", + "Pinned Folders": "Pripete mape", + "No folders pinned": "Ni pripetih map", + "Pin Folder": "Pripni mapo", + "Unpin Folder": "Odpni mapo", + "Project home": "Domača stran projekta", + "Follow on GitHub": "Spremljaj na GitHubu", + "Customize your experience with the following settings": "Prilagodite svojo izkušnjo z naslednjimi nastavitvami" +} \ No newline at end of file diff --git a/src/locales/json/sr.json b/src/locales/json/sr.json new file mode 100644 index 00000000..e8371ce0 --- /dev/null +++ b/src/locales/json/sr.json @@ -0,0 +1,102 @@ +{ + "Language": "Jezik", + "Create": "Kreiraj", + "Close": "Zatvori", + "Cancel": "Otkaži", + "Save": "Sačuvaj", + "Edit": "Uredi", + "Crop": "Opseci", + "New Folder": "Nova fascikla", + "New File": "Nova datoteka", + "Rename": "Preimenuj", + "Delete": "Obriši", + "Upload": "Otpremi", + "Download": "Preuzmi", + "Archive": "Arhiviraj", + "Unarchive": "Dearhiviraj", + "Open": "Otvori", + "Open containing folder": "Otvori nadređenu fasciklu", + "Refresh": "Osveži", + "Preview": "Pregled", + "Toggle Full Screen": "Prebaci na ceo ekran", + "Change View": "Promeni prikaz", + "Storage": "Skladište", + "Go up a directory": "Idi nivo iznad", + "Search anything..": "Pretraži bilo šta...", + "Name": "Naziv", + "Size": "Veličina", + "Date": "Datum", + "Filepath": "Putanja datoteke", + "Folder Name": "Naziv fascikle", + "File Name": "Naziv datoteke", + "Move files": "Premesti datoteke", + "Yes, Move!": "Da, premesti!", + "Delete files": "Obriši datoteke", + "Yes, Delete!": "Da, obriši!", + "Upload Files": "Otpremi datoteke", + "No files selected!": "Nijedna datoteka nije izabrana!", + "Select Files": "Izaberi datoteke", + "Archive the files": "Arhiviraj datoteke", + "Unarchive the files": "Dearhiviraj datoteke", + "The archive will be unarchived at": "Arhiva će biti dearhivirana na", + "Archive name. (.zip file will be created)": "Naziv arhive. (.zip datoteka će biti kreirana)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder je komponenta za upravljanje datotekama za Vue 3.", + "Create a new folder": "Kreiraj novu fasciklu", + "Create a new file": "Kreiraj novu datoteku", + "Are you sure you want to delete these files?": "Da li ste sigurni da želite da obrišete ove datoteke?", + "This action cannot be undone.": "Ova radnja se ne može poništiti.", + "Search results for": "Rezultati pretrage za", + "%s item(s) selected.": "Izabrano %s stavki.", + "%s is renamed.": "%s je preimenovano.", + "This is a readonly storage.": "Ovo je skladište samo za čitanje.", + "%s is created.": "%s je kreirano.", + "Files moved.": "Datoteke premeštene.", + "Files deleted.": "Datoteke obrisane.", + "The file unarchived.": "Datoteka dearhivirana.", + "The file(s) archived.": "Datoteka(e) arhivirana(e).", + "Updated.": "Ažurirano.", + "No search result found.": "Nema pronađenih rezultata pretrage.", + "Are you sure you want to move these files?": "Da li ste sigurni da želite da premestite ove datoteke?", + "File Size": "Veličina datoteke", + "Last Modified": "Poslednja izmena", + "Select Folders": "Izaberite fascikle", + "Clear all": "Obriši sve", + "Clear only successful": "Obriši samo uspešne", + "Drag and drop the files/folders to here or click here.": "Prevucite i otpustite datoteke/fascikle ovde ili kliknite ovde.", + "Release to drop these files.": "Otpustite da biste ispustili ove datoteke.", + "Canceled": "Otkazano", + "Done": "Završeno", + "Network Error, Unable establish connection to the server or interrupted.": "Greška mreže, Nije moguće uspostaviti vezu sa serverom ili je prekinuta.", + "Pending upload": "Na čekanju", + "Please select file to upload first.": "Molimo vas da prvo izaberete datoteku za otpremanje.", + "About": "O programu", + "Settings": "Podešavanja", + "Shortcuts": "Prečice", + "Reset": "Resetuj", + "Escape": "Escape", + "Search": "Pretraga", + "Toggle Sidebar": "Prebaci bočnu traku", + "Open Settings": "Otvori podešavanja", + "Reset all settings to default": "Resetuj sva podešavanja na podrazumevana", + "Use Metric Units": "Koristi metričke jedinice", + "Saved.": "Sačuvano.", + "Reset Settings": "Resetuj podešavanja", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Preuzimanje ne radi? Možete pokušati desnim klikom na dugme \"Preuzmi\", izaberite \"Sačuvaj vezu kao...\".", + "Theme": "Tema", + "Dark": "Tamna", + "Light": "Svetla", + "System": "Sistem", + "Target Directory": "Ciljni direktorijum", + "Select": "Izaberi", + "Compact list view": "Kompaktan prikaz liste", + "Show thumbnails": "Prikaži sličice", + "Persist path on reload": "Zadrži putanju pri ponovnom učitavanju", + "Select All": "Označi sve", + "Pinned Folders": "Zakačeni folderi", + "No folders pinned": "Nema zakačenih foldera", + "Pin Folder": "Zakači folder", + "Unpin Folder": "Otkvači folder", + "Project home": "Početna stranica projekta", + "Follow on GitHub": "Pratite na GitHub-u", + "Customize your experience with the following settings": "Prilagodite svoje iskustvo sledećim podešavanjima" +} \ No newline at end of file diff --git a/src/locales/json/th.json b/src/locales/json/th.json new file mode 100644 index 00000000..1e2d4acb --- /dev/null +++ b/src/locales/json/th.json @@ -0,0 +1,102 @@ +{ + "Language": "ภาษา", + "Create": "สร้าง", + "Close": "ปิด", + "Cancel": "ยกเลิก", + "Save": "บันทึก", + "Edit": "แก้ไข", + "Crop": "ครอบตัด", + "New Folder": "โฟลเดอร์ใหม่", + "New File": "ไฟล์ใหม่", + "Rename": "เปลี่ยนชื่อ", + "Delete": "ลบ", + "Upload": "อัปโหลด", + "Download": "ดาวน์โหลด", + "Archive": "เก็บถาวร", + "Unarchive": "แตกไฟล์", + "Open": "เปิด", + "Open containing folder": "เปิดโฟลเดอร์ที่บรรจุ", + "Refresh": "รีเฟรช", + "Preview": "แสดงตัวอย่าง", + "Toggle Full Screen": "สลับเต็มหน้าจอ", + "Change View": "เปลี่ยนมุมมอง", + "Storage": "พื้นที่เก็บข้อมูล", + "Go up a directory": "ขึ้นไปยังไดเรกทอรีด้านบน", + "Search anything..": "ค้นหาอะไรก็ได้..", + "Name": "ชื่อ", + "Size": "ขนาด", + "Date": "วันที่", + "Filepath": "ที่อยู่ไฟล์", + "Folder Name": "ชื่อโฟลเดอร์", + "File Name": "ชื่อไฟล์", + "Move files": "ย้ายไฟล์", + "Yes, Move!": "ใช่, ย้าย!", + "Delete files": "ลบไฟล์", + "Yes, Delete!": "ใช่, ลบ!", + "Upload Files": "อัปโหลดไฟล์", + "No files selected!": "ไม่ได้เลือกไฟล์!", + "Select Files": "เลือกไฟล์", + "Archive the files": "เก็บถาวรไฟล์", + "Unarchive the files": "แตกไฟล์ที่เก็บถาวร", + "The archive will be unarchived at": "ไฟล์ที่เก็บถาวรจะถูกแตกที่", + "Archive name. (.zip file will be created)": "ชื่อไฟล์เก็บถาวร (.zip จะถูกสร้างขึ้น)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder เป็นคอมโพเนนต์จัดการไฟล์สำหรับ Vue 3", + "Create a new folder": "สร้างโฟลเดอร์ใหม่", + "Create a new file": "สร้างไฟล์ใหม่", + "Are you sure you want to delete these files?": "คุณแน่ใจหรือไม่ว่าต้องการลบไฟล์เหล่านี้?", + "This action cannot be undone.": "การกระทำนี้ไม่สามารถยกเลิกได้", + "Search results for": "ผลการค้นหาสำหรับ", + "%s item(s) selected.": "เลือก %s รายการ", + "%s is renamed.": "%s ถูกเปลี่ยนชื่อ", + "This is a readonly storage.": "นี่คือพื้นที่เก็บข้อมูลแบบอ่านอย่างเดียว", + "%s is created.": "%s ถูกสร้างขึ้น", + "Files moved.": "ย้ายไฟล์แล้ว", + "Files deleted.": "ลบไฟล์แล้ว", + "The file unarchived.": "แตกไฟล์แล้ว", + "The file(s) archived.": "เก็บถาวรไฟล์แล้ว", + "Updated.": "อัปเดตแล้ว", + "No search result found.": "ไม่พบผลการค้นหา", + "Are you sure you want to move these files?": "คุณแน่ใจหรือไม่ว่าต้องการย้ายไฟล์เหล่านี้?", + "File Size": "ขนาดไฟล์", + "Last Modified": "แก้ไขล่าสุด", + "Select Folders": "เลือกโฟลเดอร์", + "Clear all": "ล้างทั้งหมด", + "Clear only successful": "ล้างเฉพาะที่สำเร็จ", + "Drag and drop the files/folders to here or click here.": "ลากและวางไฟล์/โฟลเดอร์มาที่นี่ หรือคลิกที่นี่", + "Release to drop these files.": "ปล่อยเพื่อวางไฟล์เหล่านี้", + "Canceled": "ยกเลิกแล้ว", + "Done": "เสร็จสิ้น", + "Network Error, Unable establish connection to the server or interrupted.": "ข้อผิดพลาดเครือข่าย ไม่สามารถสร้างการเชื่อมต่อกับเซิร์ฟเวอร์ได้ หรือการเชื่อมต่อถูกขัดจังหวะ", + "Pending upload": "รอดำเนินการ", + "Please select file to upload first.": "โปรดเลือกไฟล์ที่จะอัปโหลดก่อน", + "About": "เกี่ยวกับ", + "Settings": "การตั้งค่า", + "Shortcuts": "ทางลัด", + "Reset": "รีเซ็ต", + "Escape": "Escape", + "Search": "ค้นหา", + "Toggle Sidebar": "สลับแถบด้านข้าง", + "Open Settings": "เปิดการตั้งค่า", + "Reset all settings to default": "รีเซ็ตการตั้งค่าทั้งหมดเป็นค่าเริ่มต้น", + "Use Metric Units": "ใช้หน่วยเมตริก", + "Saved.": "บันทึกแล้ว", + "Reset Settings": "รีเซ็ตการตั้งค่า", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "ดาวน์โหลดไม่ได้ใช่ไหม? คุณสามารถลองคลิกขวาที่ปุ่ม \"ดาวน์โหลด\" แล้วเลือก \"บันทึกลิงก์เป็น...\"", + "Theme": "ธีม", + "Dark": "มืด", + "Light": "สว่าง", + "System": "ระบบ", + "Target Directory": "ไดเรกทอรีเป้าหมาย", + "Select": "เลือก", + "Compact list view": "มุมมองรายการแบบกะทัดรัด", + "Show thumbnails": "แสดงภาพขนาดย่อ", + "Persist path on reload": "คงเส้นทางไว้เมื่อโหลดซ้ำ", + "Select All": "เลือกทั้งหมด", + "Pinned Folders": "โฟลเดอร์ที่ปักหมุด", + "No folders pinned": "ไม่มีโฟลเดอร์ที่ปักหมุด", + "Pin Folder": "ปักหมุดโฟลเดอร์", + "Unpin Folder": "เลิกปักหมุดโฟลเดอร์", + "Project home": "หน้าหลักของโปรเจกต์", + "Follow on GitHub": "ติดตามบน GitHub", + "Customize your experience with the following settings": "ปรับแต่งประสบการณ์ของคุณด้วยการตั้งค่าต่อไปนี้" +} \ No newline at end of file diff --git a/src/locales/json/tr.json b/src/locales/json/tr.json index 7ecd5b19..1652c6da 100644 --- a/src/locales/json/tr.json +++ b/src/locales/json/tr.json @@ -1,102 +1,102 @@ { - "Language": "Dil", - "Create": "Oluştur", - "Close": "Kapat", - "Cancel": "İptal", - "Save": "Kaydet", - "Edit": "Düzenle", - "Crop": "Kes", - "New Folder": "Yeni Klasör", - "New File": "Yeni Dosya", - "Rename": "Yeniden Adlandır", - "Delete": "Sil", - "Upload": "Karşıya Yükle", - "Download": "İndir", - "Archive": "Arşivle", - "Unarchive": "Arşivden çıkar", - "Open": "Aç", - "Open containing folder": "İçeren klasörü aç", - "Refresh": "Yenile", - "Preview": "Önizleme", - "Toggle Full Screen": "Tam ekran", - "Change View": "Görünümü değiştir", - "Storage": "Depo", - "Go up a directory": "Yukarı git", - "Search anything..": "Herhangi bir şey ara..", - "Name": "Ad", - "Size": "Boyut", - "Date": "Tarih", - "Filepath": "Dosya yolu", - "Folder Name": "Klasör Adı", - "File Name": "Dosya Adı", - "Move files": "Dosyaları taşı", - "Yes, Move!": "Evet, Taşı!", - "Delete files": "Dosyaları Sil", - "Yes, Delete!": "Evet, Sil!", - "Upload files": "Dosyaları Yükle", - "No files selected!": "Dosya Seçilmedi!", - "Select Files": "Dosyaları Seç", - "Archive the files": "Dosyaları arşivleyin", - "Unarchive the files": "Dosyaları arşivden çıkarın", - "The archive will be unarchived at": "Arşiv buraya çıkarılacak: ", - "Archive name. (.zip file will be created)": "Archive adı. (.zip dosyası oluşturulacak)", - "Vuefinder is a file manager component for vue 3.": "Vuefinder, vue 3 için bir web dosya yönetim bileşenidir.", - "Create a new folder": "Yeni bir klasör oluşturun", - "Create a new file": "Yeni bir dosya oluşturun", - "Are you sure you want to delete these files?": "Bu dosyaları silmek istediğinize emin misiniz?", - "This action cannot be undone.": "Bu işlem geri alınamaz.", - "Search results for": "Arama sonuçları:", - "%s item(s) selected.": "%s dosya seçildi.", - "%s is renamed.": "%s yeniden adlandırılmıştır.", - "This is a readonly storage.": "Bu salt okunur bir depolama alanıdır.", - "%s is created.": "%s başarıyla oluşturulmuştur.", - "Files moved.": "Dosyalar taşındı.", - "Files deleted.": "Dosyalar silindi.", - "The file is unarchived.": "Dosya arşivden çıkarıldı.", - "The file(s) is archived.": "Dosyalar arşivlendi.", - "Updated.": "Güncellendi.", - "No search result found.": "Arama sonucu bulunamadı.", - "Are you sure you want to move these files?": "Bu dosyaları taşımak istediğinize emin misiniz?", - "File Size": "Dosya Boyutu", - "Last Modified": "Son Değişiklik", - "Select Folders": "Klasörleri Seç", - "Clear all": "Hepsini Temizle", - "Clear only successful": "Başarılı Olanları Temizle", - "Drag and drop the files/folders to here or click here.": "Dosyaları/klasörleri buraya sürükleyin veya buraya tıklayın.", - "Release to drop these files.": "Dosyaları eklemek için serbest bırakın.", - "Canceled": "İptal edildi", - "Done": "Tamamlandı", - "Network Error, Unable establish connection to the server or interrupted.": "Ağ Hatası, Sunucuya bağlantı kurulamıyor veya kesiliyor.", - "Pending upload": "Bekliyor", - "Please select file to upload first.": "Lütfen önce yüklenecek dosyayı seçin.", - "About": "Hakkında", - "Settings": "Ayarlar", - "Shortcuts": "Kısayollar", - "Reset": "Sıfırla", - "Escape": "Çıkış", - "Search": "Ara", - "Toggle Sidebar": "Kenar Çubuğunu Değiştir", - "Open Settings": "Ayarları Aç", - "Reset all settings to default": "Tüm ayarları varsayılana sıfırla", - "Use Metric Units": "Metrik Birimleri Kullan", - "Saved.": "Kaydedildi.", - "Reset Settings": "Ayarları Sıfırla", - "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Download çalışmıyor mu? \"İndir\" düğmesine sağ tıklayarak, \"Farklı kaydet...\" seçebilirsiniz.", - "Theme": "Tema", - "Dark": "Koyu", - "Light": "Açık", - "System": "Sistem", - "Target Directory": "Hedef Klasör", - "Select": "Seç", - "Compact list view": "Kompakt liste görünümü", - "Show thumbnails": "Küçük resimleri göster", - "Persist path on reload": "Yeniden yüklemede yolu koru", - "Select All": "Hepsini Seç", - "Pinned Folders": "Sabitlenmiş Klasörler", - "No folders pinned": "Sabitlenmiş klasör yok", - "Pin Folder": "Klasörü Sabitle", - "Unpin Folder": "Sabitlemeyi Kaldır", - "Project home": "Proje ana sayfası", - "Follow on GitHub": "GitHub'da takip et", - "Customize your experience with the following settings": "Aşağıdaki ayarlarla deneyiminizi özelleştirin" + "Language": "Dil", + "Create": "Oluştur", + "Close": "Kapat", + "Cancel": "İptal", + "Save": "Kaydet", + "Edit": "Düzenle", + "Crop": "Kes", + "New Folder": "Yeni Klasör", + "New File": "Yeni Dosya", + "Rename": "Yeniden Adlandır", + "Delete": "Sil", + "Upload": "Karşıya Yükle", + "Download": "İndir", + "Archive": "Arşivle", + "Unarchive": "Arşivden çıkar", + "Open": "Aç", + "Open containing folder": "İçeren klasörü aç", + "Refresh": "Yenile", + "Preview": "Önizleme", + "Toggle Full Screen": "Tam ekran", + "Change View": "Görünümü değiştir", + "Storage": "Depo", + "Go up a directory": "Yukarı git", + "Search anything..": "Herhangi bir şey ara..", + "Name": "Ad", + "Size": "Boyut", + "Date": "Tarih", + "Filepath": "Dosya yolu", + "Folder Name": "Klasör Adı", + "File Name": "Dosya Adı", + "Move files": "Dosyaları taşı", + "Yes, Move!": "Evet, Taşı!", + "Delete files": "Dosyaları Sil", + "Yes, Delete!": "Evet, Sil!", + "Upload Files": "Dosyaları Yükle", + "No files selected!": "Dosya Seçilmedi!", + "Select Files": "Dosyaları Seç", + "Archive the files": "Dosyaları arşivleyin", + "Unarchive the files": "Dosyaları arşivden çıkarın", + "The archive will be unarchived at": "Arşiv buraya çıkarılacak: ", + "Archive name. (.zip file will be created)": "Archive adı. (.zip dosyası oluşturulacak)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder, vue 3 için bir web dosya yönetim bileşenidir.", + "Create a new folder": "Yeni bir klasör oluşturun", + "Create a new file": "Yeni bir dosya oluşturun", + "Are you sure you want to delete these files?": "Bu dosyaları silmek istediğinize emin misiniz?", + "This action cannot be undone.": "Bu işlem geri alınamaz.", + "Search results for": "Arama sonuçları:", + "%s item(s) selected.": "%s dosya seçildi.", + "%s is renamed.": "%s yeniden adlandırılmıştır.", + "This is a readonly storage.": "Bu salt okunur bir depolama alanıdır.", + "%s is created.": "%s başarıyla oluşturulmuştur.", + "Files moved.": "Dosyalar taşındı.", + "Files deleted.": "Dosyalar silindi.", + "The file unarchived.": "Dosya arşivden çıkarıldı.", + "The file(s) archived.": "Dosya(lar) arşivlendi.", + "Updated.": "Güncellendi.", + "No search result found.": "Arama sonucu bulunamadı.", + "Are you sure you want to move these files?": "Bu dosyaları taşımak istediğinize emin misiniz?", + "File Size": "Dosya Boyutu", + "Last Modified": "Son Değişiklik", + "Select Folders": "Klasörleri Seç", + "Clear all": "Hepsini Temizle", + "Clear only successful": "Başarılı Olanları Temizle", + "Drag and drop the files/folders to here or click here.": "Dosyaları/klasörleri buraya sürükleyin veya buraya tıklayın.", + "Release to drop these files.": "Dosyaları eklemek için serbest bırakın.", + "Canceled": "İptal edildi", + "Done": "Tamamlandı", + "Network Error, Unable establish connection to the server or interrupted.": "Ağ Hatası, Sunucuya bağlantı kurulamıyor veya kesiliyor.", + "Pending upload": "Bekliyor", + "Please select file to upload first.": "Lütfen önce yüklenecek dosyayı seçin.", + "About": "Hakkında", + "Settings": "Ayarlar", + "Shortcuts": "Kısayollar", + "Reset": "Sıfırla", + "Escape": "Çıkış", + "Search": "Ara", + "Toggle Sidebar": "Kenar Çubuğunu Değiştir", + "Open Settings": "Ayarları Aç", + "Reset all settings to default": "Tüm ayarları varsayılana sıfırla", + "Use Metric Units": "Metrik Birimleri Kullan", + "Saved.": "Kaydedildi.", + "Reset Settings": "Ayarları Sıfırla", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Download çalışmıyor mu? \"İndir\" düğmesine sağ tıklayarak, \"Farklı kaydet...\" seçebilirsiniz.", + "Theme": "Tema", + "Dark": "Koyu", + "Light": "Açık", + "System": "Sistem", + "Target Directory": "Hedef Klasör", + "Select": "Seç", + "Compact list view": "Kompakt liste görünümü", + "Show thumbnails": "Küçük resimleri göster", + "Persist path on reload": "Yeniden yüklemede yolu koru", + "Select All": "Hepsini Seç", + "Pinned Folders": "Sabitlenmiş Klasörler", + "No folders pinned": "Sabitlenmiş klasör yok", + "Pin Folder": "Klasörü Sabitle", + "Unpin Folder": "Sabitlemeyi Kaldır", + "Project home": "Proje ana sayfası", + "Follow on GitHub": "GitHub'da takip et", + "Customize your experience with the following settings": "Aşağıdaki ayarlarla deneyiminizi özelleştirin" } diff --git a/src/locales/json/uk.json b/src/locales/json/uk.json new file mode 100644 index 00000000..ce886194 --- /dev/null +++ b/src/locales/json/uk.json @@ -0,0 +1,102 @@ +{ + "Language": "Мова", + "Create": "Створити", + "Close": "Закрити", + "Cancel": "Скасувати", + "Save": "Зберегти", + "Edit": "Редагувати", + "Crop": "Обрізати", + "New Folder": "Нова папка", + "New File": "Новий файл", + "Rename": "Перейменувати", + "Delete": "Видалити", + "Upload": "Завантажити", + "Download": "Завантажити", + "Archive": "Архівувати", + "Unarchive": "Розархівувати", + "Open": "Відкрити", + "Open containing folder": "Відкрити папку, що містить", + "Refresh": "Оновити", + "Preview": "Попередній перегляд", + "Toggle Full Screen": "Перемкнути повноекранний режим", + "Change View": "Змінити вигляд", + "Storage": "Сховище", + "Go up a directory": "Піднятися на один рівень", + "Search anything..": "Шукати що завгодно...", + "Name": "Ім'я", + "Size": "Розмір", + "Date": "Дата", + "Filepath": "Шлях до файлу", + "Folder Name": "Назва папки", + "File Name": "Назва файлу", + "Move files": "Перемістити файли", + "Yes, Move!": "Так, перемістити!", + "Delete files": "Видалити файли", + "Yes, Delete!": "Так, видалити!", + "Upload Files": "Завантажити файли", + "No files selected!": "Файли не вибрано!", + "Select Files": "Вибрати файли", + "Archive the files": "Архівувати файли", + "Unarchive the files": "Розархівувати файли", + "The archive will be unarchived at": "Архів буде розархівовано за адресою", + "Archive name. (.zip file will be created)": "Назва архіву. (буде створено .zip файл)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder — це компонент файлового менеджера для Vue 3.", + "Create a new folder": "Створити нову теку", + "Create a new file": "Створити новий файл", + "Are you sure you want to delete these files?": "Ви впевнені, що хочете видалити ці файли?", + "This action cannot be undone.": "Цю дію неможливо скасувати.", + "Search results for": "Результати пошуку для", + "%s item(s) selected.": "Вибрано %s елемент(и).", + "%s is renamed.": "%s перейменовано.", + "This is a readonly storage.": "Це сховище лише для читання.", + "%s is created.": "%s створено.", + "Files moved.": "Файли переміщено.", + "Files deleted.": "Файли видалено.", + "The file unarchived.": "Файл розархівовано.", + "The file(s) archived.": "Файл(и) заархівовано.", + "Updated.": "Оновлено.", + "No search result found.": "Результатів пошуку не знайдено.", + "Are you sure you want to move these files?": "Ви впевнені, що хочете перемістити ці файли?", + "File Size": "Розмір файлу", + "Last Modified": "Остання зміна", + "Select Folders": "Вибрати папки", + "Clear all": "Очистити все", + "Clear only successful": "Очистити лише успішні", + "Drag and drop the files/folders to here or click here.": "Перетягніть файли/папки сюди або натисніть тут.", + "Release to drop these files.": "Відпустіть, щоб скинути ці файли.", + "Canceled": "Скасовано", + "Done": "Готово", + "Network Error, Unable establish connection to the server or interrupted.": "Помилка мережі, не вдалося встановити з'єднання з сервером або його було перервано.", + "Pending upload": "Очікує завантаження", + "Please select file to upload first.": "Будь ласка, спочатку виберіть файл для завантаження.", + "About": "Про програму", + "Settings": "Налаштування", + "Shortcuts": "Гарячі клавіші", + "Reset": "Скинути", + "Escape": "Escape", + "Search": "Пошук", + "Toggle Sidebar": "Перемкнути бічну панель", + "Open Settings": "Відкрити налаштування", + "Reset all settings to default": "Скинути всі налаштування до типових", + "Use Metric Units": "Використовувати метричні одиниці", + "Saved.": "Збережено.", + "Reset Settings": "Скинути налаштування", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Завантаження не працює? Спробуйте клацнути правою кнопкою миші на кнопці «Завантажити» та вибрати «Зберегти посилання як...».", + "Theme": "Тема", + "Dark": "Темна", + "Light": "Світла", + "System": "Системна", + "Target Directory": "Папка призначення", + "Select": "Вибрати", + "Compact list view": "Компактний вигляд списку", + "Show thumbnails": "Показувати мініатюри", + "Persist path on reload": "Зберігати шлях при перезавантаженні", + "Select All": "Вибрати все", + "Pinned Folders": "Закріплені папки", + "No folders pinned": "Немає закріплених папок", + "Pin Folder": "Закріпити папку", + "Unpin Folder": "Відкріпити папку", + "Project home": "Домашня сторінка проєкту", + "Follow on GitHub": "Слідкувати на GitHub", + "Customize your experience with the following settings": "Налаштуйте свій досвід за допомогою наступних параметрів" +} \ No newline at end of file diff --git a/src/locales/json/vi.json b/src/locales/json/vi.json new file mode 100644 index 00000000..767c440c --- /dev/null +++ b/src/locales/json/vi.json @@ -0,0 +1,102 @@ +{ + "Language": "Ngôn ngữ", + "Create": "Tạo", + "Close": "Đóng", + "Cancel": "Hủy", + "Save": "Lưu", + "Edit": "Chỉnh sửa", + "Crop": "Cắt", + "New Folder": "Thư mục mới", + "New File": "Tệp mới", + "Rename": "Đổi tên", + "Delete": "Xóa", + "Upload": "Tải lên", + "Download": "Tải xuống", + "Archive": "Lưu trữ", + "Unarchive": "Giải nén", + "Open": "Mở", + "Open containing folder": "Mở thư mục chứa", + "Refresh": "Làm mới", + "Preview": "Xem trước", + "Toggle Full Screen": "Chuyển toàn màn hình", + "Change View": "Thay đổi chế độ xem", + "Storage": "Bộ nhớ", + "Go up a directory": "Đi lên một thư mục", + "Search anything..": "Tìm kiếm bất cứ điều gì...", + "Name": "Tên", + "Size": "Kích thước", + "Date": "Ngày", + "Filepath": "Đường dẫn tệp", + "Folder Name": "Tên thư mục", + "File Name": "Tên tệp", + "Move files": "Di chuyển tệp", + "Yes, Move!": "Có, Di chuyển!", + "Delete files": "Xóa tệp", + "Yes, Delete!": "Có, Xóa!", + "Upload Files": "Tải lên tệp", + "No files selected!": "Chưa chọn tệp nào!", + "Select Files": "Chọn tệp", + "Archive the files": "Lưu trữ các tệp", + "Unarchive the files": "Giải nén các tệp", + "The archive will be unarchived at": "Tệp lưu trữ sẽ được giải nén tại", + "Archive name. (.zip file will be created)": "Tên tệp lưu trữ. (Tệp .zip sẽ được tạo)", + "Vuefinder is a file manager component for vue 3.": "Vuefinder là một thành phần quản lý tệp cho Vue 3.", + "Create a new folder": "Tạo thư mục mới", + "Create a new file": "Tạo tệp mới", + "Are you sure you want to delete these files?": "Bạn có chắc chắn muốn xóa các tệp này không?", + "This action cannot be undone.": "Hành động này không thể hoàn tác.", + "Search results for": "Kết quả tìm kiếm cho", + "%s item(s) selected.": "Đã chọn %s mục.", + "%s is renamed.": "%s đã được đổi tên.", + "This is a readonly storage.": "Đây là bộ nhớ chỉ đọc.", + "%s is created.": "%s đã được tạo.", + "Files moved.": "Các tệp đã được di chuyển.", + "Files deleted.": "Các tệp đã được xóa.", + "The file unarchived.": "Tệp đã được giải nén.", + "The file(s) archived.": "Tệp đã được lưu trữ.", + "Updated.": "Đã cập nhật.", + "No search result found.": "Không tìm thấy kết quả tìm kiếm nào.", + "Are you sure you want to move these files?": "Bạn có chắc chắn muốn di chuyển các tệp này không?", + "File Size": "Kích thước tệp", + "Last Modified": "Lần sửa đổi cuối cùng", + "Select Folders": "Chọn Thư mục", + "Clear all": "Xóa tất cả", + "Clear only successful": "Chỉ xóa các mục thành công", + "Drag and drop the files/folders to here or click here.": "Kéo và thả tệp/thư mục vào đây hoặc nhấp vào đây.", + "Release to drop these files.": "Thả để tải lên các tệp này.", + "Canceled": "Đã hủy", + "Done": "Hoàn tất", + "Network Error, Unable establish connection to the server or interrupted.": "Lỗi mạng, Không thể thiết lập kết nối đến máy chủ hoặc bị gián đoạn.", + "Pending upload": "Đang chờ", + "Please select file to upload first.": "Vui lòng chọn tệp để tải lên trước.", + "About": "Giới thiệu", + "Settings": "Cài đặt", + "Shortcuts": "Phím tắt", + "Reset": "Đặt lại", + "Escape": "Thoát", + "Search": "Tìm kiếm", + "Toggle Sidebar": "Chuyển đổi Thanh bên", + "Open Settings": "Mở Cài đặt", + "Reset all settings to default": "Đặt lại tất cả cài đặt về mặc định", + "Use Metric Units": "Sử dụng Đơn vị Hệ mét", + "Saved.": "Đã lưu.", + "Reset Settings": "Đặt lại Cài đặt", + "Download doesn't work? You can try right-click \"Download\" button, select \"Save link as...\".": "Tải xuống không hoạt động? Bạn có thể thử nhấp chuột phải vào nút \"Tải xuống\", chọn \"Lưu liên kết thành...\".", + "Theme": "Chủ đề", + "Dark": "Tối", + "Light": "Sáng", + "System": "Hệ thống", + "Target Directory": "Thư mục đích", + "Select": "Chọn", + "Compact list view": "Chế độ xem danh sách gọn", + "Show thumbnails": "Hiển thị hình thu nhỏ", + "Persist path on reload": "Duy trì đường dẫn khi tải lại", + "Select All": "Chọn tất cả", + "Pinned Folders": "Thư mục đã ghim", + "No folders pinned": "Chưa có thư mục nào được ghim", + "Pin Folder": "Ghim thư mục", + "Unpin Folder": "Bỏ ghim thư mục", + "Project home": "Trang chủ dự án", + "Follow on GitHub": "Theo dõi trên GitHub", + "Customize your experience with the following settings": "Tùy chỉnh trải nghiệm của bạn với các cài đặt sau" +} \ No newline at end of file diff --git a/src/locales/ko.js b/src/locales/ko.js new file mode 100644 index 00000000..5cdda5e4 --- /dev/null +++ b/src/locales/ko.js @@ -0,0 +1,7 @@ +import locale from "./json/ko.json"; +import uppyLocale from "@uppy/locales/lib/ko_KR.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/nb.js b/src/locales/nb.js new file mode 100644 index 00000000..446e3624 --- /dev/null +++ b/src/locales/nb.js @@ -0,0 +1,7 @@ +import locale from "./json/nb.json"; +import uppyLocale from "@uppy/locales/lib/nb_NO.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/pt.js b/src/locales/pt.js new file mode 100644 index 00000000..cae3f873 --- /dev/null +++ b/src/locales/pt.js @@ -0,0 +1,7 @@ +import locale from "./json/pt.json"; +import uppyLocale from "@uppy/locales/lib/pt_PT.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/ro.js b/src/locales/ro.js new file mode 100644 index 00000000..87e183bd --- /dev/null +++ b/src/locales/ro.js @@ -0,0 +1,7 @@ +import locale from "./json/ro.json"; +import uppyLocale from "@uppy/locales/lib/ro_RO.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/sk.js b/src/locales/sk.js new file mode 100644 index 00000000..9bdf44f6 --- /dev/null +++ b/src/locales/sk.js @@ -0,0 +1,7 @@ +import locale from "./json/sk.json"; +import uppyLocale from "@uppy/locales/lib/sk_SK.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/sl.js b/src/locales/sl.js new file mode 100644 index 00000000..b9936186 --- /dev/null +++ b/src/locales/sl.js @@ -0,0 +1,7 @@ +import locale from "./json/sl.json"; +import uppyLocale from "@uppy/locales/lib/en_US.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/sr.js b/src/locales/sr.js new file mode 100644 index 00000000..7f5e8ddc --- /dev/null +++ b/src/locales/sr.js @@ -0,0 +1,7 @@ +import locale from "./json/sr.json"; +import uppyLocale from "@uppy/locales/lib/sr_RS_Latin.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/th.js b/src/locales/th.js new file mode 100644 index 00000000..46677756 --- /dev/null +++ b/src/locales/th.js @@ -0,0 +1,7 @@ +import locale from "./json/th.json"; +import uppyLocale from "@uppy/locales/lib/th_TH.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/uk.js b/src/locales/uk.js new file mode 100644 index 00000000..cac950e3 --- /dev/null +++ b/src/locales/uk.js @@ -0,0 +1,7 @@ +import locale from "./json/uk.json"; +import uppyLocale from "@uppy/locales/lib/uk_UA.js"; + +export default { + ...locale, + uppy: uppyLocale +}; diff --git a/src/locales/vi.js b/src/locales/vi.js new file mode 100644 index 00000000..94edc214 --- /dev/null +++ b/src/locales/vi.js @@ -0,0 +1,7 @@ +import locale from "./json/vi.json"; +import uppyLocale from "@uppy/locales/lib/vi_VN.js"; + +export default { + ...locale, + uppy: uppyLocale +};