feat: add VitePress docs site, music file picker modal, Dockerfile optimization, i18n keys for 14 locales
- Add docs/ with VitePress site (19 pages): guide, config, architecture, FAQ - Add GitHub Actions workflow for auto-deploy to GitHub Pages - Replace music 'Add Tracks' upload picker with in-app audio file browser modal - Add music picker CSS styles with dark theme support - Add missing i18n keys (search_audio, no_audio_files, etc.) to all 14 locales - Optimize Dockerfile: shared base stage, COPY --chmod, consolidated RUN, HEALTHCHECK - Improve README: docs links, updated stats (222+ tests, 14 languages), feature status
This commit is contained in:
@@ -62,7 +62,13 @@
|
||||
"add_error": "تعذر إضافة المقاطع",
|
||||
"no_playlists_yet": "لا توجد قوائم بعد. أنشئ واحدة أولاً!",
|
||||
"selected_files": "محدد:",
|
||||
"error": "خطأ"
|
||||
"error": "خطأ",
|
||||
"search_audio": "البحث عن ملفات صوتية…",
|
||||
"no_audio_files": "لم يتم العثور على ملفات صوتية",
|
||||
"selected": "محدد",
|
||||
"loading": "جارٍ التحميل…",
|
||||
"search_error": "تعذر تحميل الملفات الصوتية",
|
||||
"adding": "جارٍ الإضافة…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "البحث في الملفات...",
|
||||
|
||||
@@ -62,7 +62,13 @@
|
||||
"add_error": "Tracks konnten nicht hinzugefügt werden",
|
||||
"no_playlists_yet": "Noch keine Playlists. Erstellen Sie zuerst eine!",
|
||||
"selected_files": "Ausgewählt:",
|
||||
"error": "Fehler"
|
||||
"error": "Fehler",
|
||||
"search_audio": "Audiodateien suchen…",
|
||||
"no_audio_files": "Keine Audiodateien gefunden",
|
||||
"selected": "ausgewählt",
|
||||
"loading": "Wird geladen…",
|
||||
"search_error": "Audiodateien konnten nicht geladen werden",
|
||||
"adding": "Wird hinzugefügt…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "Dateien suchen...",
|
||||
|
||||
@@ -79,7 +79,13 @@
|
||||
"make_public": "Make public",
|
||||
"make_private": "Make private",
|
||||
"set_cover": "Set cover",
|
||||
"cover_updated": "Cover updated"
|
||||
"cover_updated": "Cover updated",
|
||||
"search_audio": "Search audio files…",
|
||||
"no_audio_files": "No audio files found",
|
||||
"selected": "selected",
|
||||
"loading": "Loading…",
|
||||
"search_error": "Could not load audio files",
|
||||
"adding": "Adding…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "Search files...",
|
||||
|
||||
@@ -79,7 +79,13 @@
|
||||
"make_public": "Hacer pública",
|
||||
"make_private": "Hacer privada",
|
||||
"set_cover": "Establecer portada",
|
||||
"cover_updated": "Portada actualizada"
|
||||
"cover_updated": "Portada actualizada",
|
||||
"search_audio": "Buscar archivos de audio…",
|
||||
"no_audio_files": "No se encontraron archivos de audio",
|
||||
"selected": "seleccionados",
|
||||
"loading": "Cargando…",
|
||||
"search_error": "No se pudieron cargar los archivos de audio",
|
||||
"adding": "Añadiendo…"
|
||||
},
|
||||
"share": {
|
||||
"dialogTitle": "Compartir Enlace",
|
||||
|
||||
@@ -62,7 +62,13 @@
|
||||
"add_error": "امکان افزودن آهنگها به فهرست پخش نیست",
|
||||
"no_playlists_yet": "فهرست پخشی وجود ندارد. اول یکی بسازید!",
|
||||
"selected_files": "انتخاب شده:",
|
||||
"error": "خطا"
|
||||
"error": "خطا",
|
||||
"search_audio": "جستجوی فایلهای صوتی…",
|
||||
"no_audio_files": "فایل صوتی یافت نشد",
|
||||
"selected": "انتخاب شده",
|
||||
"loading": "در حال بارگذاری…",
|
||||
"search_error": "بارگذاری فایلهای صوتی ممکن نشد",
|
||||
"adding": "در حال افزودن…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "جستوجوی پروندهها..",
|
||||
|
||||
@@ -62,7 +62,13 @@
|
||||
"add_error": "Impossible d'ajouter les pistes",
|
||||
"no_playlists_yet": "Pas encore de playlists. Créez-en une d'abord !",
|
||||
"selected_files": "Sélectionnés :",
|
||||
"error": "Erreur"
|
||||
"error": "Erreur",
|
||||
"search_audio": "Rechercher des fichiers audio…",
|
||||
"no_audio_files": "Aucun fichier audio trouvé",
|
||||
"selected": "sélectionnés",
|
||||
"loading": "Chargement…",
|
||||
"search_error": "Impossible de charger les fichiers audio",
|
||||
"adding": "Ajout en cours…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "Rechercher des fichiers...",
|
||||
|
||||
@@ -62,7 +62,13 @@
|
||||
"add_error": "प्लेलिस्ट में ट्रैक नहीं जोड़े जा सके",
|
||||
"no_playlists_yet": "अभी तक कोई प्लेलिस्ट नहीं। पहले एक बनाएं!",
|
||||
"selected_files": "चयनित:",
|
||||
"error": "त्रुटि"
|
||||
"error": "त्रुटि",
|
||||
"search_audio": "ऑडियो फ़ाइलें खोजें…",
|
||||
"no_audio_files": "कोई ऑडियो फ़ाइल नहीं मिली",
|
||||
"selected": "चयनित",
|
||||
"loading": "लोड हो रहा है…",
|
||||
"search_error": "ऑडियो फ़ाइलें लोड नहीं हो सकीं",
|
||||
"adding": "जोड़ा जा रहा है…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "फ़ाइलें खोजें...",
|
||||
|
||||
@@ -62,7 +62,13 @@
|
||||
"add_error": "Impossibile aggiungere le tracce",
|
||||
"no_playlists_yet": "Nessuna playlist ancora. Creane una prima!",
|
||||
"selected_files": "Selezionati:",
|
||||
"error": "Errore"
|
||||
"error": "Errore",
|
||||
"search_audio": "Cerca file audio…",
|
||||
"no_audio_files": "Nessun file audio trovato",
|
||||
"selected": "selezionati",
|
||||
"loading": "Caricamento…",
|
||||
"search_error": "Impossibile caricare i file audio",
|
||||
"adding": "Aggiunta in corso…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "Cerca file...",
|
||||
|
||||
@@ -62,7 +62,13 @@
|
||||
"add_error": "曲を追加できませんでした",
|
||||
"no_playlists_yet": "プレイリストがありません。最初に作成してください!",
|
||||
"selected_files": "選択中:",
|
||||
"error": "エラー"
|
||||
"error": "エラー",
|
||||
"search_audio": "オーディオファイルを検索…",
|
||||
"no_audio_files": "オーディオファイルが見つかりません",
|
||||
"selected": "件選択中",
|
||||
"loading": "読み込み中…",
|
||||
"search_error": "オーディオファイルを読み込めませんでした",
|
||||
"adding": "追加中…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "ファイルを検索...",
|
||||
|
||||
@@ -62,7 +62,13 @@
|
||||
"add_error": "트랙을 플레이리스트에 추가할 수 없습니다",
|
||||
"no_playlists_yet": "플레이리스트가 없습니다. 먼저 하나를 만드세요!",
|
||||
"selected_files": "선택됨:",
|
||||
"error": "오류"
|
||||
"error": "오류",
|
||||
"search_audio": "오디오 파일 검색…",
|
||||
"no_audio_files": "오디오 파일을 찾을 수 없습니다",
|
||||
"selected": "선택됨",
|
||||
"loading": "로딩 중…",
|
||||
"search_error": "오디오 파일을 불러올 수 없습니다",
|
||||
"adding": "추가 중…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "파일 검색...",
|
||||
|
||||
@@ -62,7 +62,13 @@
|
||||
"add_error": "Kon tracks niet toevoegen aan playlist",
|
||||
"no_playlists_yet": "Nog geen playlists. Maak er eerst een!",
|
||||
"selected_files": "Geselecteerd:",
|
||||
"error": "Fout"
|
||||
"error": "Fout",
|
||||
"search_audio": "Audiobestanden zoeken…",
|
||||
"no_audio_files": "Geen audiobestanden gevonden",
|
||||
"selected": "geselecteerd",
|
||||
"loading": "Laden…",
|
||||
"search_error": "Kan audiobestanden niet laden",
|
||||
"adding": "Toevoegen…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "Zoek bestanden...",
|
||||
|
||||
@@ -62,7 +62,13 @@
|
||||
"add_error": "Não foi possível adicionar as faixas",
|
||||
"no_playlists_yet": "Nenhuma playlist ainda. Crie uma primeiro!",
|
||||
"selected_files": "Selecionados:",
|
||||
"error": "Erro"
|
||||
"error": "Erro",
|
||||
"search_audio": "Pesquisar ficheiros de áudio…",
|
||||
"no_audio_files": "Nenhum ficheiro de áudio encontrado",
|
||||
"selected": "selecionados",
|
||||
"loading": "A carregar…",
|
||||
"search_error": "Não foi possível carregar os ficheiros de áudio",
|
||||
"adding": "A adicionar…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "Pesquisar arquivos...",
|
||||
|
||||
@@ -62,7 +62,13 @@
|
||||
"add_error": "Не удалось добавить треки в плейлист",
|
||||
"no_playlists_yet": "Плейлистов пока нет. Создайте сначала!",
|
||||
"selected_files": "Выбрано:",
|
||||
"error": "Ошибка"
|
||||
"error": "Ошибка",
|
||||
"search_audio": "Поиск аудиофайлов…",
|
||||
"no_audio_files": "Аудиофайлы не найдены",
|
||||
"selected": "выбрано",
|
||||
"loading": "Загрузка…",
|
||||
"search_error": "Не удалось загрузить аудиофайлы",
|
||||
"adding": "Добавление…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "Поиск файлов...",
|
||||
|
||||
@@ -62,7 +62,13 @@
|
||||
"add_error": "无法将曲目添加到播放列表",
|
||||
"no_playlists_yet": "暂无播放列表。请先创建一个!",
|
||||
"selected_files": "已选择:",
|
||||
"error": "错误"
|
||||
"error": "错误",
|
||||
"search_audio": "搜索音频文件…",
|
||||
"no_audio_files": "未找到音频文件",
|
||||
"selected": "已选择",
|
||||
"loading": "加载中…",
|
||||
"search_error": "无法加载音频文件",
|
||||
"adding": "添加中…"
|
||||
},
|
||||
"actions": {
|
||||
"search": "搜索文件...",
|
||||
|
||||
Reference in New Issue
Block a user