From bab95530c8c3d7a4b4cec5b059da8b79ad50223e Mon Sep 17 00:00:00 2001 From: advplyr Date: Fri, 12 Dec 2025 17:12:39 -0600 Subject: [PATCH 01/27] Update WrappingMarquee to use textContent --- assets/WrappingMarquee.js | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/assets/WrappingMarquee.js b/assets/WrappingMarquee.js index 6b8883d7..3bbef676 100644 --- a/assets/WrappingMarquee.js +++ b/assets/WrappingMarquee.js @@ -3,7 +3,7 @@ class WrappingMarquee { #scrollSpeed = 30 /** - * @param {HTMLElement} el + * @param {HTMLElement} el */ constructor(el) { this.el = el @@ -21,8 +21,8 @@ class WrappingMarquee { /** * Transparent gradient mask shown when text is scrolling left and overflowing right - * - * @param {boolean} showLeft + * + * @param {boolean} showLeft */ setMask(showLeft) { if (!this.el) return @@ -39,11 +39,11 @@ class WrappingMarquee { this.setMask(true) let textScrollAmount = this.el.scrollWidth - this.pEl.innerHTML = this.innerText + ' '.repeat(15) + this.pEl.textContent = this.innerText + '\u00A0'.repeat(15) // \u00A0 = non-breaking space let totalScrollAmount = this.el.scrollWidth let scrollDuration = totalScrollAmount * this.#scrollSpeed - this.pEl.innerHTML = this.pEl.innerHTML + this.innerText + this.pEl.textContent = this.pEl.textContent + this.innerText let done = false let start, previousTimeStamp @@ -55,13 +55,14 @@ class WrappingMarquee { const elapsed = timeStamp - start if (this.isScrolling && previousTimeStamp !== timeStamp) { - const amountToMove = Math.min(elapsed / scrollDuration * totalScrollAmount, totalScrollAmount) + const amountToMove = Math.min((elapsed / scrollDuration) * totalScrollAmount, totalScrollAmount) this.pEl.style.transform = `translateX(-${amountToMove}px)` if (amountToMove === totalScrollAmount) done = true if (amountToMove > textScrollAmount) this.setMask(false) } - if (!this.isScrolling || done) { // canceled or done + if (!this.isScrolling || done) { + // canceled or done this.isScrolling = false this.pEl.style.transform = 'translateX(0px)' this.pEl.innerText = this.innerText @@ -69,7 +70,8 @@ class WrappingMarquee { if (done) { this.startTimer() } - } else if (elapsed < scrollDuration) { // step + } else if (elapsed < scrollDuration) { + // step previousTimeStamp = timeStamp this.animationId = window.requestAnimationFrame(step) } @@ -94,8 +96,8 @@ class WrappingMarquee { /** * Initialize and start marquee if text overflows container * resets the marquee if already active - * - * @param {string} innerText + * + * @param {string} innerText */ init(innerText) { if (!this.el || !this.pEl) return @@ -114,4 +116,4 @@ class WrappingMarquee { } } } -export default WrappingMarquee \ No newline at end of file +export default WrappingMarquee From 61c3fafd94efde0c5e7080aa3715bc6bd8059440 Mon Sep 17 00:00:00 2001 From: FiendFEARing Date: Sun, 23 Nov 2025 09:41:29 +0100 Subject: [PATCH 02/27] Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/zh_Hans/ --- strings/zh-cn.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/strings/zh-cn.json b/strings/zh-cn.json index ce7bdd61..60de0b2c 100644 --- a/strings/zh-cn.json +++ b/strings/zh-cn.json @@ -155,6 +155,9 @@ "LabelFinished": "已听完", "LabelFolder": "文件夹", "LabelFontBoldness": "字体粗细", + "LabelFontFamily": "字体", + "LabelFontFamilySans": "无衬线字体", + "LabelFontFamilySerif": "衬线字体", "LabelFontScale": "字体比例", "LabelGenre": "流派", "LabelGenres": "流派", From 4c657c66d0ec7f0feb83a85d7015f86037b83212 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9C=D0=B0=D0=BA=D1=81=D0=B8=D0=BC=20=D0=93=D0=BE=D1=80?= =?UTF-8?q?=D0=BF=D0=B8=D0=BD=D1=96=D1=87?= Date: Sat, 22 Nov 2025 16:56:04 +0100 Subject: [PATCH 03/27] Translated using Weblate (Ukrainian) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/uk/ --- strings/uk.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/strings/uk.json b/strings/uk.json index d4f74fa2..c47e03cb 100644 --- a/strings/uk.json +++ b/strings/uk.json @@ -155,6 +155,9 @@ "LabelFinished": "Завершено", "LabelFolder": "Тека", "LabelFontBoldness": "Товщина шрифту", + "LabelFontFamily": "Сімейство шрифтів", + "LabelFontFamilySans": "Санс", + "LabelFontFamilySerif": "Засічка", "LabelFontScale": "Розмір шрифту", "LabelGenre": "Жанр", "LabelGenres": "Жанри", From 51a7ce41dee8bc8ac07f354bbbe2ac937794760a Mon Sep 17 00:00:00 2001 From: ugyes Date: Mon, 24 Nov 2025 12:23:31 +0100 Subject: [PATCH 04/27] Translated using Weblate (Hungarian) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/hu/ --- strings/hu.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/strings/hu.json b/strings/hu.json index 436e39e1..e2abaef3 100644 --- a/strings/hu.json +++ b/strings/hu.json @@ -155,6 +155,9 @@ "LabelFinished": "Befejezve", "LabelFolder": "Mappa", "LabelFontBoldness": "Betű vastagság", + "LabelFontFamily": "Betűcsalád", + "LabelFontFamilySans": "Sans", + "LabelFontFamilySerif": "Serif", "LabelFontScale": "Betűméret skála", "LabelGenre": "Műfaj", "LabelGenres": "Műfajok", From 9712d3f5271a749e05a8281e7b16b7a0097d92cc Mon Sep 17 00:00:00 2001 From: Jan-Eric Myhrgren Date: Mon, 24 Nov 2025 07:40:30 +0100 Subject: [PATCH 05/27] Translated using Weblate (Swedish) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/sv/ --- strings/sv.json | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/strings/sv.json b/strings/sv.json index 7baa0712..1635f8a5 100644 --- a/strings/sv.json +++ b/strings/sv.json @@ -155,10 +155,13 @@ "LabelFinished": "Avslutad", "LabelFolder": "Mapp", "LabelFontBoldness": "Fetstil", - "LabelFontScale": "Teckensnittsskala", + "LabelFontFamily": "Typsnittsfamilj", + "LabelFontFamilySans": "Utan klackar", + "LabelFontFamilySerif": "Med klackar", + "LabelFontScale": "Storlek på typsnitt", "LabelGenre": "Genre", "LabelGenres": "Genrer", - "LabelHapticFeedback": "Haptisk feedback", + "LabelHapticFeedback": "Haptisk återkoppling", "LabelHasEbook": "Har e-bok", "LabelHasSupplementaryEbook": "Har kompletterande e-bok", "LabelHeavy": "Tung", @@ -234,7 +237,7 @@ "LabelSeason": "Säsong", "LabelSelectADevice": "Välj en enhet", "LabelSequenceAscending": "Stigande", - "LabelSequenceDescending": "Sekvens Fallande", + "LabelSequenceDescending": "Fallande", "LabelSeries": "Serie", "LabelServerAddress": "Server-adress", "LabelSetEbookAsPrimary": "Ange som primär", From a861c880ba6a02dd0bc77b8aabb99b9ddeb6e1e3 Mon Sep 17 00:00:00 2001 From: B0rax Date: Mon, 24 Nov 2025 07:47:36 +0100 Subject: [PATCH 06/27] Translated using Weblate (German) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/de/ --- strings/de.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/strings/de.json b/strings/de.json index b389bede..1cc6bfc6 100644 --- a/strings/de.json +++ b/strings/de.json @@ -155,6 +155,9 @@ "LabelFinished": "Beendet", "LabelFolder": "Ordner", "LabelFontBoldness": "Schriftstärke", + "LabelFontFamily": "Schrift Familie", + "LabelFontFamilySans": "Sans", + "LabelFontFamilySerif": "Serifen", "LabelFontScale": "Schriftgröße", "LabelGenre": "Kategorie", "LabelGenres": "Kategorien", From fb270cb50b521d4f590138e1b89e4eb79fd04a71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A8lia=20Garriga?= Date: Mon, 24 Nov 2025 12:17:16 +0100 Subject: [PATCH 07/27] Translated using Weblate (Catalan) Currently translated at 78.0% (281 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/ca/ --- strings/ca.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/strings/ca.json b/strings/ca.json index 8c1b44ff..2b349fcb 100644 --- a/strings/ca.json +++ b/strings/ca.json @@ -126,7 +126,7 @@ "LabelCustomTime": "Temps personalitzat", "LabelDescription": "Descripció", "LabelDisableAudioFadeOut": "Desactivar desaparició d'àudio", - "LabelDisableAudioFadeOutHelp": "El volum de l'audio començara a reduïr-se quan quede menys d'1 minut del temporitzador d'anar a dormir. Habilita este ajustament per a no reduïr el volum.", + "LabelDisableAudioFadeOutHelp": "El volum de l'audio començara a reduïr-se quan quedi menys d'1 minut del temporitzador d'anar a dormir. Habilita aquest ajustament per a no reduïr el volum.", "LabelDisableAutoRewind": "Desactivar rebobinatge automàtic", "LabelDisableShakeToReset": "Desactivar sacsejar per reiniciar", "LabelDisableShakeToResetHelp": "Si sacseges el teu dispositiu quan el temporitzador és actiu o durant els 2 minuts després que hagi expirat, el temporitzador es reinicia. Activa aquesta opció per evitar-ho.", From 229298df1bcfe54025c66c9bb67e27db50a89f7a Mon Sep 17 00:00:00 2001 From: Artur Date: Mon, 24 Nov 2025 22:55:06 +0100 Subject: [PATCH 08/27] Translated using Weblate (Polish) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/pl/ --- strings/pl.json | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/strings/pl.json b/strings/pl.json index 5bce9c22..d06611c8 100644 --- a/strings/pl.json +++ b/strings/pl.json @@ -48,7 +48,7 @@ "ButtonSaveOrder": "Zapisz kolejność", "ButtonSearch": "Szukaj", "ButtonSendEbookToDevice": "Wyślij ebook do urządzenia", - "ButtonSeries": "Seria", + "ButtonSeries": "Serial", "ButtonSetTimer": "Ustaw wyłącznik", "ButtonStream": "Strumieniuj", "ButtonSubmit": "Zapisz", @@ -79,7 +79,7 @@ "HeaderPlaybackSettings": "Ustawienia odtwarzania", "HeaderPlaylist": "Playlista", "HeaderPlaylistItems": "Pozycje listy odtwarzania", - "HeaderProgressSyncFailed": "Błąd synchronizacji postępów", + "HeaderProgressSyncFailed": "Synchronizacja postępu nie powiodła się", "HeaderRSSFeed": "Kanał RSS", "HeaderRSSFeedGeneral": "Szczegóły RSS", "HeaderRSSFeedIsOpen": "Kanał RSS jest otwarty", @@ -146,6 +146,7 @@ "LabelEndOfChapter": "Koniec rozdziału", "LabelEndTime": "Koniec czasu", "LabelEpisode": "Odcinek", + "LabelExplicit": "18+", "LabelFeedURL": "URL kanału", "LabelFile": "Plik", "LabelFileBirthtime": "Data utworzenia pliku", @@ -154,6 +155,9 @@ "LabelFinished": "Zakończone", "LabelFolder": "Katalog", "LabelFontBoldness": "Grubość czcionki", + "LabelFontFamily": "Krój pisma", + "LabelFontFamilySans": "Pismo bezszeryfowe", + "LabelFontFamilySerif": "Pismo szeryfowe", "LabelFontScale": "Rozmiar czcionki", "LabelGenre": "Gatunek", "LabelGenres": "Gatunki", @@ -168,7 +172,7 @@ "LabelInternalAppStorage": "Pamięć wewnętrzna aplikacji", "LabelJumpBackwardsTime": "Przeskok wstecz", "LabelJumpForwardsTime": "Przeskok w przód", - "LabelKeepScreenAwake": "Utrzymuj włączony ekran", + "LabelKeepScreenAwake": "Utrzymuj ekran w stanie czuwania", "LabelLanguage": "Język", "LabelLayout": "Układ", "LabelLayoutAuto": "Automatycznie", @@ -297,14 +301,15 @@ "MessageDownloading": "Pobieranie...", "MessageDownloadingEpisode": "Pobieranie odcinka", "MessageEpisodesQueuedForDownload": "{0} odcinki w kolejce do pobrania", - "MessageFailedToRefreshToken": "Odświeżenie tokenu nie powiodło się. Wymagane jest ponowne zalogowanie.", + "MessageFailedToRefreshToken": "Odświeżenie tokenu nie powiodło się. Wymagane jest ponowne zalogowanie", "MessageFeedURLWillBe": "URL kanału: {0}", "MessageFetching": "Pobieranie...", "MessageFollowTheProjectOnGithub": "Obserwuj projekt na Github'ie", "MessageItemDownloadCompleteFailedToCreate": "Pobieranie elementu zostało zakończone, ale nie udało się utworzyć elementu biblioteki", - "MessageItemMissing": "Brakujący element, należy go naprawić na serwerze. Zazwyczaj element jest oznaczany jako brakujący, ponieważ ścieżki do plików nie są dostępne.", + "MessageItemMissing": "Brakuje elementu i należy go naprawić na serwerze. Zazwyczaj element jest oznaczany jako brakujący, ponieważ ścieżki do plików nie są dostępne.", "MessageLoading": "Ładowanie...", "MessageLoadingServerData": "Ładowanie danych serwera...", + "MessageLocalFolderDescription": "„Wewnętrzna pamięć aplikacji” jest dostępna tylko dla tej aplikacji. Ta aplikacja obsługuje wyłącznie multimedia pobrane bezpośrednio za jej pośrednictwem. Udostępnione foldery pamięci można wykorzystać, aby umożliwić innym aplikacjom dostęp do multimediów pobranych przez tę aplikację.", "MessageMarkAsFinished": "Oznacz jako ukończone", "MessageMediaLinkedToADifferentServer": "Multimedia są połączone z serwerem Audiobookshelf pod innym adresem ({0}). Postęp zostanie zsynchronizowany po nawiązaniu połączenia z tym adresem serwera.", "MessageMediaLinkedToADifferentUser": "Multimedia są połączone z tym serwerem, ale zostały pobrane przez innego użytkownika. Postęp zostanie zsynchronizowany tylko z użytkownikiem, który je pobrał.", From b84555db6c435b900490a705318303f4f22e3674 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Renaldas=20Repe=C4=8Dka?= Date: Tue, 25 Nov 2025 17:01:30 +0100 Subject: [PATCH 09/27] Translated using Weblate (Lithuanian) Currently translated at 51.9% (187 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/lt/ --- strings/lt.json | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/strings/lt.json b/strings/lt.json index 3e3443b0..cf93d3d9 100644 --- a/strings/lt.json +++ b/strings/lt.json @@ -68,6 +68,8 @@ "LabelAddToPlaylist": "Pridėti į grojaraštį", "LabelAddedAt": "Pridėta {0}", "LabelAll": "Visi", + "LabelAlways": "Visada", + "LabelAskConfirmation": "Prašyti patvirtinimo", "LabelAuthor": "Autorius", "LabelAuthorFirstLast": "Autorius (Vardas Pavardė)", "LabelAuthorLastFirst": "Autorius (Pavardė, Vardas)", @@ -80,10 +82,13 @@ "LabelComplete": "Baigta", "LabelDescription": "Aprašymas", "LabelDownload": "Atsisiųsti", + "LabelDownloaded": "Atsisiųsta", "LabelDuration": "Trukmė", "LabelEbook": "Elektroninė knyga", + "LabelEbooks": "El. knygos", "LabelEnable": "Įjungti", "LabelEnd": "Pabaiga", + "LabelEndOfChapter": "Skyriaus pabaiga", "LabelEpisode": "Epizodas", "LabelFeedURL": "Srauto URL", "LabelFile": "Failas", @@ -95,6 +100,8 @@ "LabelFontScale": "Šrifto mastelis", "LabelGenre": "Žanras", "LabelGenres": "Žanrai", + "LabelHasEbook": "Turi el. knygą", + "LabelHasSupplementaryEbook": "Turi papildomą el. knygą", "LabelHost": "Serveris", "LabelInProgress": "Vyksta", "LabelIncomplete": "Nebaigta", From 23133194b22187bfd9e9251a018263468af95fdd Mon Sep 17 00:00:00 2001 From: Plazec Date: Mon, 24 Nov 2025 23:30:55 +0100 Subject: [PATCH 10/27] Translated using Weblate (Czech) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/cs/ --- strings/cs.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/strings/cs.json b/strings/cs.json index 2f6ce2db..43c41555 100644 --- a/strings/cs.json +++ b/strings/cs.json @@ -155,6 +155,9 @@ "LabelFinished": "Dokončeno", "LabelFolder": "Složka", "LabelFontBoldness": "Výraznost písma", + "LabelFontFamily": "Rodina písem", + "LabelFontFamilySans": "Bezpatkové", + "LabelFontFamilySerif": "Patkové", "LabelFontScale": "Měřítko písma", "LabelGenre": "Žánr", "LabelGenres": "Žánry", From a3028127ce49021deece18a0100f429385d71969 Mon Sep 17 00:00:00 2001 From: zard Kim Date: Thu, 27 Nov 2025 01:21:10 +0100 Subject: [PATCH 11/27] Translated using Weblate (Korean) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/ko/ --- strings/ko.json | 363 +++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 362 insertions(+), 1 deletion(-) diff --git a/strings/ko.json b/strings/ko.json index 0967ef42..e1112419 100644 --- a/strings/ko.json +++ b/strings/ko.json @@ -1 +1,362 @@ -{} +{ + "ButtonAdd": "추가", + "ButtonAddNewServer": "새로운 서버 추가", + "ButtonAuthors": "작가", + "ButtonBack": "뒤로", + "ButtonCancel": "취소", + "ButtonCancelTimer": "타이머 취소", + "ButtonClearFilter": "필터 지우기", + "ButtonClearLogs": "로그 지우기", + "ButtonCloseFeed": "피드 닫기", + "ButtonCollections": "컬렉션", + "ButtonConnect": "접속", + "ButtonConnectToServer": "서버에 연결", + "ButtonCreate": "만들기", + "ButtonCreateBookmark": "북마크 만들기", + "ButtonCreateNewPlaylist": "새로운 재생목록 만들기", + "ButtonDelete": "삭제", + "ButtonDeleteLocalEpisode": "로컬 에피소드 삭제", + "ButtonDeleteLocalFile": "로컬 파일 삭제", + "ButtonDeleteLocalItem": "로컬 항목 삭제", + "ButtonDisableAutoTimer": "자동 타이머 비활성화", + "ButtonDisconnect": "연결 해제", + "ButtonGoToWebClient": "웹 클라이언트로 이동", + "ButtonHistory": "히스토리", + "ButtonHome": "홈", + "ButtonIssues": "이슈", + "ButtonLatest": "최신", + "ButtonLibrary": "라이브러리", + "ButtonLocalMedia": "로컬 미디어", + "ButtonLogs": "로그", + "ButtonManageLocalFiles": "로컬 파일 관리", + "ButtonMaskServerAddress": "마스크 서버 주소", + "ButtonNewFolder": "새 폴더", + "ButtonNextEpisode": "다음 에피소드", + "ButtonOk": "확인", + "ButtonOpenFeed": "피드 열기", + "ButtonOverride": "Override", + "ButtonPause": "일시정지", + "ButtonPlay": "재생", + "ButtonPlayEpisode": "에피소드 재생", + "ButtonPlaylists": "재생목록", + "ButtonRead": "읽기", + "ButtonReadLess": "덜 읽기", + "ButtonReadMore": "더 읽기", + "ButtonRemove": "제거", + "ButtonRemoveFromServer": "서버에서 제거", + "ButtonSave": "저장", + "ButtonSaveOrder": "저장 순서", + "ButtonSearch": "검색", + "ButtonSendEbookToDevice": "기기로 전자책 보내기", + "ButtonSeries": "시리즈", + "ButtonSetTimer": "타이머 설정", + "ButtonStream": "스트림", + "ButtonSubmit": "제출", + "ButtonSwitchServerUser": "서버/사용자 전환", + "ButtonUnmaskServerAddress": "서버 주소 마스크 해제", + "ButtonUserStats": "사용자 통계", + "ButtonYes": "예", + "HeaderAccount": "계정", + "HeaderAdvanced": "고급", + "HeaderAndroidAutoSettings": "안드로이드 오토 설정", + "HeaderAudioTracks": "오디오 트랙", + "HeaderChapters": "챕터", + "HeaderCollection": "컬렉션", + "HeaderCollectionItems": "컬렉션 항목", + "HeaderConnectionStatus": "연결 상태", + "HeaderDataSettings": "데이터 설정", + "HeaderDetails": "세부사항", + "HeaderDownloads": "다운로드", + "HeaderEbookFiles": "전자책 파일", + "HeaderEpisodes": "에피소드", + "HeaderEreaderSettings": "전자책 리더 설정", + "HeaderLatestEpisodes": "최신 에피소드", + "HeaderLibraries": "라이브러리", + "HeaderLocalFolders": "로컬 폴더", + "HeaderLocalLibraryItems": "로컬 라이브러리 항목", + "HeaderNewPlaylist": "새로운 플레이리스트", + "HeaderOpenRSSFeed": "RSS 피드 열기", + "HeaderPlaybackSettings": "재생 설정", + "HeaderPlaylist": "재생목록", + "HeaderPlaylistItems": "재생 목록 항목", + "HeaderProgressSyncFailed": "진행률 동기화 실패", + "HeaderRSSFeed": "RSS 피드", + "HeaderRSSFeedGeneral": "RSS 자세히", + "HeaderRSSFeedIsOpen": "RSS 피드가 열려 있습니다", + "HeaderSelectDownloadLocation": "다운로드 위치 선택", + "HeaderSettings": "설정", + "HeaderSleepTimer": "슬립 타이머", + "HeaderSleepTimerSettings": "슬립 타이머 설정", + "HeaderStatsMinutesListeningChart": "청취 시간(지난 7일)", + "HeaderStatsRecentSessions": "최근 세션", + "HeaderTableOfContents": "목차", + "HeaderUserInterfaceSettings": "사용자 인터페이스 설정", + "HeaderYourStats": "내 통계", + "LabelAddToPlaylist": "재생목록에 추가", + "LabelAddedAt": "추가됨", + "LabelAddedDate": "{0} 추가됨", + "LabelAll": "모두", + "LabelAllowSeekingOnMediaControls": "미디어 알림 컨트롤에서 위치 탐색 허용", + "LabelAlways": "항상", + "LabelAndroidAutoBrowseLimitForGrouping": "알파벳별 인출 한도", + "LabelAndroidAutoBrowseLimitForGroupingHelp": "표시할 항목 수가 이 금액보다 적을 경우 알파벳 순으로 삭감하지 마십시오.", + "LabelAndroidAutoBrowseSeriesSequenceOrder": "시리즈 책 주문", + "LabelAskConfirmation": "확인을 요청하세요", + "LabelAuthor": "작가", + "LabelAuthorFirstLast": "작가 (이름 성)", + "LabelAuthorLastFirst": "작가 (성, 이름)", + "LabelAuthors": "작가", + "LabelAutoDownloadEpisodes": "에피소드 자동 다운로드", + "LabelAutoRewindTime": "자동 되감기 시간", + "LabelAutoSleepTimer": "자동 슬립 타이머", + "LabelAutoSleepTimerAutoRewind": "자동 슬립 타이머 자동 되감기", + "LabelAutoSleepTimerAutoRewindHelp": "자동 슬립 타이머가 끝나면 해당 항목을 다시 재생하면 자동으로 위치가 되돌려집니다.", + "LabelAutoSleepTimerHelp": "지정된 시작 및 종료 시간 사이에 미디어를 재생하면 슬립 타이머가 자동으로 시작됩니다.", + "LabelBooks": "전자책", + "LabelChapterTrack": "챕터 트랙", + "LabelChapters": "챕터", + "LabelClosePlayer": "플레이어 닫기", + "LabelCollapseSeries": "시리즈 펴기", + "LabelComplete": "완료", + "LabelContinueBooks": "책 계속 읽기", + "LabelContinueEpisodes": "에피소드 계속하기", + "LabelContinueListening": "계속 듣기", + "LabelContinueReading": "계속 읽기", + "LabelContinueSeries": "시리즈 계속하기", + "LabelCustomTime": "사용자 지정 시간", + "LabelDescription": "설명", + "LabelDisableAudioFadeOut": "오디오 페이드아웃 비활성화", + "LabelDisableAudioFadeOutHelp": "슬립 타이머가 1분 미만으로 남았을 때 오디오 볼륨이 감소하기 시작합니다. 이 설정을 활성화하면 볼륨이 점점 작아지지 않습니다.", + "LabelDisableAutoRewind": "자동 되감기 비활성화", + "LabelDisableShakeToReset": "흔들어서 재설정을 해제하세요", + "LabelDisableShakeToResetHelp": "타이머가 작동하는 동안 또는 타이머가 만료되기 2분 전에 기기를 흔들면 슬립 타이머가 재설정됩니다. 이 설정을 활성화하면 흔들어서 재설정하는 기능을 비활성화할 수 있습니다.", + "LabelDisableVibrateOnReset": "재설정 시 진동 비활성화", + "LabelDisableVibrateOnResetHelp": "슬립 타이머가 재설정되면 기기가 진동합니다. 슬립 타이머가 재설정될 때 진동하지 않도록 하려면 이 설정을 활성화하세요.", + "LabelDiscover": "발견", + "LabelDownload": "다운로드", + "LabelDownloadUsingCellular": "셀룰러를 사용하여 다운로드", + "LabelDownloaded": "다운로드됨", + "LabelDuration": "Duration", + "LabelEbook": "전자책", + "LabelEbooks": "전자책", + "LabelEnable": "활성화", + "LabelEnableMp3IndexSeeking": "mp3 인덱스 검색 활성화", + "LabelEnableMp3IndexSeekingHelp": "이 설정은 MP3 파일의 탐색이 제대로 이루어지지 않는 경우에만 활성화해야 합니다. 탐색이 부정확한 이유는 가변 비트레이트(VBR) MP3 파일 때문일 가능성이 높습니다. 이 설정은 파일을 읽을 때 시간-바이트 매핑이 생성되는 인덱스 탐색을 강제로 실행합니다. 대용량 MP3 파일의 경우 파일 끝부분을 탐색할 때 지연이 발생할 수 있습니다.", + "LabelEnd": "마지막", + "LabelEndOfChapter": "챕터의 마지작", + "LabelEndTime": "종료 시간", + "LabelEpisode": "에피소드", + "LabelExplicit": "명백한", + "LabelFeedURL": "피드 URL", + "LabelFile": "파일", + "LabelFileBirthtime": "파일 생년월일", + "LabelFileModified": "파일 수정됨", + "LabelFilename": "파일 이름", + "LabelFinished": "완료됨", + "LabelFolder": "폴더", + "LabelFontBoldness": "글꼴 굵기", + "LabelFontFamily": "글꼴 모양", + "LabelFontFamilySans": "Sans", + "LabelFontFamilySerif": "Serif", + "LabelFontScale": "글꼴 크기", + "LabelGenre": "장르", + "LabelGenres": "장르", + "LabelHapticFeedback": "햅틱 피드백", + "LabelHasEbook": "보유한 전자책", + "LabelHasSupplementaryEbook": "보유한 보충 전자책", + "LabelHeavy": "무거운", + "LabelHigh": "높게", + "LabelHost": "호스트", + "LabelInProgress": "진행 중", + "LabelIncomplete": "불완전한", + "LabelInternalAppStorage": "내부 앱 저장소", + "LabelJumpBackwardsTime": "뒤로 시간 점프", + "LabelJumpForwardsTime": "앞으로 시간 점프", + "LabelKeepScreenAwake": "화면 항상 켜기", + "LabelLanguage": "언어", + "LabelLayout": "레이아웃", + "LabelLayoutAuto": "자동", + "LabelLayoutSinglePage": "단일 페이지", + "LabelLight": "Light", + "LabelLineSpacing": "줄 간격", + "LabelListenAgain": "다시 듣기", + "LabelLocalBooks": "로컬 전자책", + "LabelLocalPodcasts": "로컬 팟케스트", + "LabelLockOrientation": "잠금 방향", + "LabelLockPlayer": "플레이어 잠금", + "LabelLow": "낮게", + "LabelMediaType": "미디어 유형", + "LabelMedium": "중간", + "LabelMissing": "누락", + "LabelMore": "더보기", + "LabelMoreInfo": "정보 더 보기", + "LabelName": "이름", + "LabelNarrator": "내레이터", + "LabelNarrators": "내레이터", + "LabelNavigateWithVolume": "볼륨 키로 탐색", + "LabelNavigateWithVolumeMirrored": "미러링됨", + "LabelNavigateWithVolumeWhilePlaying": "재생 중 볼륨 키를 사용하여 탐색할 수 있도록 허용", + "LabelNavigateWithVolumeWhilePlayingDisabled": "오프", + "LabelNavigateWithVolumeWhilePlayingEnabled": "온", + "LabelNever": "Never", + "LabelNewestAuthors": "최신 작가", + "LabelNewestEpisodes": "최신 에피소드", + "LabelNo": "아니오", + "LabelNotFinished": "완료되지 않음", + "LabelNotStarted": "시작되지 않음", + "LabelNumEpisodes": "{0}개 에피소드", + "LabelNumEpisodesIncomplete": "{0}개 에피소드, {1}개 미완료", + "LabelNumberOfEpisodes": "# 의 에피소드", + "LabelOff": "오프", + "LabelOn": "온", + "LabelPassword": "비밀번호", + "LabelPath": "경로", + "LabelPlaybackDirect": "직접", + "LabelPlaybackLocal": "로컬", + "LabelPlaybackSpeed": "재생 속도", + "LabelPlaybackTranscode": "트랜스코드", + "LabelPodcast": "팟케스트", + "LabelPodcasts": "팟케스트", + "LabelPreventIndexing": "iTunes 및 Google Podcast 디렉토리에서 피드가 인덱싱되는 것을 방지합니다.", + "LabelProgress": "진행", + "LabelPubDate": "출판 날짜", + "LabelPublishYear": "출판 연도", + "LabelPublishedDate": "출판됨 {0}", + "LabelRSSFeedCustomOwnerEmail": "사용자 정의 이메일", + "LabelRSSFeedCustomOwnerName": "사용자 정의 이름", + "LabelRSSFeedOpen": "RSS 피드 열기", + "LabelRSSFeedPreventIndexing": "인덱싱 방지", + "LabelRSSFeedSlug": "RSS 피드 슬러그", + "LabelRandomly": "무작위로", + "LabelRead": "읽기", + "LabelReadAgain": "다시 읽기", + "LabelRecentSeries": "최근 시리즈", + "LabelRecentlyAdded": "최근 추가됨", + "LabelRemoveFromPlaylist": "재생 목록에서 제거", + "LabelScaleElapsedTimeBySpeed": "속도에 따른 경과 시간 스케일링", + "LabelSeason": "시즌", + "LabelSelectADevice": "기기를 선택하세요", + "LabelSequenceAscending": "시퀀스 오름차순", + "LabelSequenceDescending": "시퀀스 내림차순", + "LabelSeries": "시리즈", + "LabelServerAddress": "서버 주소", + "LabelSetEbookAsPrimary": "기본으로 설정", + "LabelSetEbookAsSupplementary": "보충으로 설정", + "LabelShakeSensitivity": "흔들림 감도", + "LabelShowAll": "모두 표시", + "LabelSize": "크기", + "LabelSleepTimer": "슬립 타이머", + "LabelSleepTimerAlmostDoneChime": "거의 끝나면 차임벨을 울리세요", + "LabelSleepTimerAlmostDoneChimeHelp": "슬립 타이머가 30초 남았을 때 차임음을 재생합니다.", + "LabelStart": "시작", + "LabelStartTime": "시작 시간", + "LabelStatsBestDay": "최고의 날", + "LabelStatsDailyAverage": "일일 평균", + "LabelStatsDays": "일", + "LabelStatsDaysListened": "청취 일수", + "LabelStatsInARow": "in a row", + "LabelStatsItemsFinished": "완료된 항목", + "LabelStatsMinutes": "분", + "LabelStatsMinutesListening": "청취 분수", + "LabelStatsWeekListening": "주간 청취", + "LabelStreamingUsingCellular": "셀룰러를 이용한 스트리밍", + "LabelTag": "태그", + "LabelTags": "태그", + "LabelTheme": "테마", + "LabelThemeBlack": "Black", + "LabelThemeDark": "Dark", + "LabelThemeLight": "Light", + "LabelTimeRemaining": "{0} 남음", + "LabelTitle": "제목", + "LabelTotalSize": "전체 크기", + "LabelTotalTrack": "총 트랙", + "LabelTracks": "트랙", + "LabelType": "유형", + "LabelUnknown": "미상", + "LabelUnlockPlayer": "플레이어 잠금 해제", + "LabelUseBookshelfView": "bookshelf view 사용", + "LabelUser": "사용자", + "LabelUsername": "사용자 이름", + "LabelVeryHigh": "매우 높음", + "LabelVeryLow": "매우 낮음", + "LabelYearReviewHide": "연간 리뷰 숨기기", + "LabelYearReviewShow": "올해의 리뷰 보기", + "LabelYourBookmarks": "내 북마크", + "LabelYourProgress": "내 진행 상황", + "MessageAndroid10Downloads": "Android 10 이하에서는 다운로드를 위해 내부 앱 저장소를 사용합니다.", + "MessageAttemptingServerConnection": "서버 연결을 시도 중입니다...", + "MessageAudiobookshelfServerNotConnected": "Audiobookshelf 서버가 연결되지 않았습니다", + "MessageAudiobookshelfServerRequired": "중요! 이 앱은 본인이나 아는 사람이 호스팅하는 Audiobookshelf 서버와 함께 사용하도록 설계되었습니다. 이 앱은 어떠한 콘텐츠도 제공하지 않습니다.", + "MessageBookshelfEmpty": "책장이 비어 있음", + "MessageConfirmDeleteLocalEpisode": "기기에서 로컬 에피소드 \"{0}\"을(를) 삭제하시겠습니까? 서버에 있는 파일은 영향을 받지 않습니다.", + "MessageConfirmDeleteLocalFiles": "이 항목의 로컬 파일을 기기에서 제거하시겠습니까? 서버의 파일과 진행 상황에는 아무런 영향이 없습니다.", + "MessageConfirmDisableAutoTimer": "오늘 남은 시간 동안 자동 타이머를 비활성화하시겠습니까? 자동 슬립 타이머 기간이 끝나거나 앱을 다시 시작하면 타이머가 다시 활성화됩니다.", + "MessageConfirmDiscardProgress": "진행 상황을 재설정하시겠습니까?", + "MessageConfirmDownloadUsingCellular": "셀룰러 데이터를 사용하여 다운로드하려고 합니다. 이동통신사 데이터 요금이 부과될 수 있습니다. 계속하시겠습니까?", + "MessageConfirmMarkAsFinished": "이 항목을 완료로 표시하시겠습니까?", + "MessageConfirmRemoveBookmark": "북마크를 삭제하시겠습니까?", + "MessageConfirmStreamingUsingCellular": "셀룰러 데이터를 사용하여 스트리밍하려고 합니다. 이동통신사 데이터 요금이 부과될 수 있습니다. 계속하시겠습니까?", + "MessageDiscardProgress": "진행 상황 삭제", + "MessageDownloadCompleteProcessing": "다운로드가 완료되었습니다. 처리 중입니다...", + "MessageDownloading": "다운로드 중...", + "MessageDownloadingEpisode": "에피소드 다운로드 중", + "MessageEpisodesQueuedForDownload": "{0}개의 에피소드가 다운로드 대기 중입니다.", + "MessageFailedToRefreshToken": "토큰 새로 고침에 실패했습니다. 다시 로그인해야 합니다.", + "MessageFeedURLWillBe": "피드 URL은 {0}입니다.", + "MessageFetching": "가져오는 중...", + "MessageFollowTheProjectOnGithub": "Github에서 프로젝트를 팔로우하세요", + "MessageItemDownloadCompleteFailedToCreate": "항목 다운로드가 완료되었지만 라이브러리 항목을 생성하지 못했습니다.", + "MessageItemMissing": "항목이 누락되어 서버에서 수정해야 합니다. 일반적으로 파일 경로에 접근할 수 없기 때문에 항목이 누락으로 표시됩니다.", + "MessageLoading": "로딩중...", + "MessageLoadingServerData": "서버 데이터를 로딩 중입니다...", + "MessageLocalFolderDescription": "''내부 앱 저장소'는 이 앱에서만 접근할 수 있습니다. 이 앱은 앱을 통해 직접 다운로드한 미디어만 지원합니다. 공유 저장소 폴더를 사용하면 다른 앱이 이 앱에서 다운로드한 미디어에 접근할 수 있습니다.", + "MessageMarkAsFinished": "완료로 표시", + "MessageMediaLinkedToADifferentServer": "미디어가 다른 주소({0})의 오디오북셸프 서버에 연결되어 있습니다. 이 서버 주소에 연결되면 진행 상황이 동기화됩니다.", + "MessageMediaLinkedToADifferentUser": "미디어가 이 서버에 연결되어 있지만 다른 사용자가 다운로드했습니다. 진행 상황은 해당 미디어를 다운로드한 사용자에게만 동기화됩니다.", + "MessageMediaLinkedToServer": "서버 {0}에 연결됨", + "MessageMediaLinkedToThisServer": "다운로드한 미디어가 이 서버에 연결되었습니다.", + "MessageMediaNotLinkedToServer": "미디어가 오디오북 셸프 서버에 연결되지 않았습니다. 진행 상황이 동기화되지 않습니다.", + "MessageNoBookmarks": "북마크 없음", + "MessageNoChapters": "챕터 없음", + "MessageNoCollections": "컬렉션 없음", + "MessageNoItems": "항목 없음", + "MessageNoItemsFound": "항목을 찾을 수 없음", + "MessageNoListeningSessions": "청취 세션 없음", + "MessageNoLogs": "로그 없음", + "MessageNoMediaFolders": "미디어 폴더 없음", + "MessageNoNetworkConnection": "네트워크 연결이 없음", + "MessageNoPodcastsFound": "팟캐스트를 찾을 수 없음", + "MessageNoSeries": "시리즈 없음", + "MessageNoUpdatesWereNecessary": "업데이트가 필요하지 않음", + "MessageNoUserPlaylists": "재생목록이 없음", + "MessageOldServerAuthReLoginRequired": "서버 v2.26.0에서는 보안을 위해 인증 기능이 개선되었습니다. 모든 사용자는 다시 로그인해야 합니다.", + "MessageOldServerAuthWarning": "서버가 오래된 인증을 사용하고 있습니다.", + "MessageOldServerAuthWarningHelp": "이 서버는 v2.26.0 이전 버전을 사용하고 있습니다. v2.26.0에서는 더욱 안전한 인증 시스템이 추가되었습니다. 서버를 최신 버전으로 업데이트하는 것을 강력히 권장합니다. 이미 서버를 업데이트하셨다면, 새로운 인증을 사용하려면 다시 로그인하세요.", + "MessageOldServerConnectionWarning": "서버 연결 구성에서 이전 사용자 ID를 사용하고 있습니다. 이 서버 연결을 삭제하고 다시 추가하세요.", + "MessageOldServerConnectionWarningHelp": "2023년 6월에 출시된 2.3.0 버전의 데이터베이스 마이그레이션 이전에 이 서버에 대한 연결을 설정했습니다. 향후 서버 업데이트에서는 이 이전 연결로 로그인할 수 있는 기능이 제거됩니다. 기존 서버 연결을 삭제하고 동일한 서버 주소와 사용자 인증 정보를 사용하여 다시 연결하세요. 이 기기에 다운로드한 미디어가 있는 경우, 서버와 동기화하려면 미디어를 다시 다운로드해야 합니다.", + "MessagePodcastSearchField": "검색어 또는 RSS 피드 URL을 입력하세요", + "MessageProgressSyncFailed": "서버에 청취 진행 상황을 보고하려는 최근 시도가 실패했습니다. 미디어 재생 중에는 15초에서 1분 간격으로 진행 상황 동기화 요청이 계속 시도됩니다.", + "MessageReportBugsAndContribute": "버그 보고, 기능 요청 및 기여", + "MessageSeriesAlreadyDownloaded": "이 시리즈의 모든 책을 이미 다운로드했습니다.", + "MessageSeriesDownloadConfirm": "{1}개의 파일과 함께 누락된 {0}권의 책, 총 {2}권을 {3} 폴더로 다운로드하시겠습니까?", + "MessageSeriesDownloadConfirmIos": "{1}개의 파일과 함께 누락된 {0}권의 책을 다운로드하시겠습니까? 총 {2}개입니다.", + "MessageSocketConnectedOverMeteredCellular": "미터링된 셀룰러를 통해 연결된 소켓", + "MessageSocketConnectedOverMeteredWifi": "미터기 Wi-Fi로 연결된 소켓", + "MessageSocketConnectedOverUnmeteredCellular": "무제한 셀룰러를 통해 연결된 소켓", + "MessageSocketConnectedOverUnmeteredWifi": "무제한 Wi-Fi로 연결된 소켓", + "MessageSocketNotConnected": "소켓이 연결되지 않음", + "NoteRSSFeedPodcastAppsHttps": "경고: 대부분의 팟캐스트 앱에서는 RSS 피드 URL이 HTTPS를 사용해야 합니다.", + "NoteRSSFeedPodcastAppsPubDate": "경고: 1개 이상의 에피소드에 게시 날짜가 없습니다. 일부 팟캐스트 앱에서는 게시 날짜가 필요합니다.", + "ToastBookmarkCreateFailed": "북마크를 생성하지 못했습니다.", + "ToastBookmarkRemoveFailed": "북마크를 삭제하지 못했습니다.", + "ToastBookmarkUpdateFailed": "북마크 업데이트에 실패했습니다", + "ToastDownloadNotAllowedOnCellular": "셀룰러 데이터에서는 다운로드가 허용되지 않습니다.", + "ToastItemMarkedAsFinishedFailed": "완료로 표시하지 못했습니다.", + "ToastItemMarkedAsNotFinishedFailed": "완료되지 않음으로 표시하는 데 실패했습니다.", + "ToastPlaylistCreateFailed": "플레이리스트를 생성하지 못했습니다", + "ToastPodcastCreateFailed": "팟캐스트를 만들지 못했습니다", + "ToastPodcastCreateSuccess": "팟캐스트가 성공적으로 생성되었습니다.", + "ToastRSSFeedCloseFailed": "RSS 피드를 닫지 못했습니다.", + "ToastRSSFeedCloseSuccess": "RSS 피드가 닫혔습니다", + "ToastStreamingNotAllowedOnCellular": "셀룰러 데이터에서는 스트리밍이 허용되지 않습니다." +} From c9af9582e3544d0a697c31a18c8b82f7e4623c85 Mon Sep 17 00:00:00 2001 From: Ivan Smoliakov Date: Fri, 28 Nov 2025 18:21:27 +0100 Subject: [PATCH 12/27] Translated using Weblate (Russian) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/ru/ --- strings/ru.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/strings/ru.json b/strings/ru.json index b9e50108..ac11616c 100644 --- a/strings/ru.json +++ b/strings/ru.json @@ -155,6 +155,9 @@ "LabelFinished": "Закончен", "LabelFolder": "Папка", "LabelFontBoldness": "Жирность шрифта", + "LabelFontFamily": "Семейство шрифта", + "LabelFontFamilySans": "Sans", + "LabelFontFamilySerif": "Serif", "LabelFontScale": "Масштаб шрифта", "LabelGenre": "Жанр", "LabelGenres": "Жанры", From ca222d4110c9351f71083cc73271fed76b2a2405 Mon Sep 17 00:00:00 2001 From: advplyr Date: Sat, 29 Nov 2025 16:32:48 +0100 Subject: [PATCH 13/27] Added translation using Weblate (Icelandic) --- strings/is.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 strings/is.json diff --git a/strings/is.json b/strings/is.json new file mode 100644 index 00000000..0967ef42 --- /dev/null +++ b/strings/is.json @@ -0,0 +1 @@ +{} From 6dd466a9ce1a7fd30a937d27d5eafe1613e785b2 Mon Sep 17 00:00:00 2001 From: "J. Lavoie" Date: Sat, 29 Nov 2025 22:02:47 +0100 Subject: [PATCH 14/27] Translated using Weblate (French) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/fr/ --- strings/fr.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/strings/fr.json b/strings/fr.json index c126ddb0..ad8c03da 100644 --- a/strings/fr.json +++ b/strings/fr.json @@ -155,7 +155,10 @@ "LabelFinished": "Fini(e)", "LabelFolder": "Dossier", "LabelFontBoldness": "Graisse de la police", - "LabelFontScale": "Taille de la police de caractère", + "LabelFontFamily": "Famille de caractères", + "LabelFontFamilySans": "Sans", + "LabelFontFamilySerif": "Avec empattements", + "LabelFontScale": "Taille de la police", "LabelGenre": "Genre", "LabelGenres": "Genres", "LabelHapticFeedback": "Retour haptique", From dcf172bd9838202560a4645db7a9b52d1752ef71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petri=20H=C3=A4m=C3=A4l=C3=A4inen?= Date: Sat, 29 Nov 2025 16:41:22 +0100 Subject: [PATCH 15/27] Translated using Weblate (Finnish) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/fi/ --- strings/fi.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/strings/fi.json b/strings/fi.json index e1bf7452..2a0d10e5 100644 --- a/strings/fi.json +++ b/strings/fi.json @@ -155,6 +155,9 @@ "LabelFinished": "Valmis", "LabelFolder": "Kansio", "LabelFontBoldness": "Kirjasintyyppien lihavointi", + "LabelFontFamily": "Fonttiperhe", + "LabelFontFamilySans": "Sans", + "LabelFontFamilySerif": "Serif", "LabelFontScale": "Kirjasintyyppien skaalautuminen", "LabelGenre": "Lajityyppi", "LabelGenres": "Lajityypit", From 68893ab1f440e1303e234aec8c9538124d793924 Mon Sep 17 00:00:00 2001 From: "J. Lavoie" Date: Sat, 29 Nov 2025 22:02:08 +0100 Subject: [PATCH 16/27] Translated using Weblate (German) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/de/ --- strings/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/strings/de.json b/strings/de.json index 1cc6bfc6..10fb763d 100644 --- a/strings/de.json +++ b/strings/de.json @@ -155,7 +155,7 @@ "LabelFinished": "Beendet", "LabelFolder": "Ordner", "LabelFontBoldness": "Schriftstärke", - "LabelFontFamily": "Schrift Familie", + "LabelFontFamily": "Schriftfamilie", "LabelFontFamilySans": "Sans", "LabelFontFamilySerif": "Serifen", "LabelFontScale": "Schriftgröße", From 1d8a23922e4afe61ae8debd96faf58b98b4da1ee Mon Sep 17 00:00:00 2001 From: Alessandro Burzio Date: Mon, 1 Dec 2025 23:03:11 +0100 Subject: [PATCH 17/27] Translated using Weblate (Italian) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/it/ --- strings/it.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/strings/it.json b/strings/it.json index 4640fe0b..f8eac048 100644 --- a/strings/it.json +++ b/strings/it.json @@ -155,6 +155,9 @@ "LabelFinished": "Finita", "LabelFolder": "Cartella", "LabelFontBoldness": "Grassetto", + "LabelFontFamily": "Famiglia caratteri", + "LabelFontFamilySans": "Sans", + "LabelFontFamilySerif": "Serif", "LabelFontScale": "Dimensione font", "LabelGenre": "Genere", "LabelGenres": "Generi", From c21af649c3e4b224fbd119786e6385d1895f3f87 Mon Sep 17 00:00:00 2001 From: thehijacker Date: Tue, 2 Dec 2025 12:58:18 +0100 Subject: [PATCH 18/27] Translated using Weblate (Slovenian) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/sl/ --- strings/sl.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/strings/sl.json b/strings/sl.json index cf273c72..cdef95dd 100644 --- a/strings/sl.json +++ b/strings/sl.json @@ -155,6 +155,9 @@ "LabelFinished": "Zaključeno", "LabelFolder": "Mapa", "LabelFontBoldness": "Krepkost pisave", + "LabelFontFamily": "Družina pisav", + "LabelFontFamilySans": "Sans", + "LabelFontFamilySerif": "Serif", "LabelFontScale": "Merilo pisave", "LabelGenre": "Žanr", "LabelGenres": "Žanri", From 5fd6f5e4ccb2a298eb4ea2706b5f5c26471f7ad7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Igor=20Dobra=C4=8Da?= Date: Sat, 6 Dec 2025 08:15:35 +0100 Subject: [PATCH 19/27] Translated using Weblate (Croatian) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/hr/ --- strings/hr.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/strings/hr.json b/strings/hr.json index c36c2d7a..485150e1 100644 --- a/strings/hr.json +++ b/strings/hr.json @@ -155,6 +155,9 @@ "LabelFinished": "Završeno", "LabelFolder": "Mapa", "LabelFontBoldness": "Debljina slova", + "LabelFontFamily": "Skup pisma", + "LabelFontFamilySans": "Sans", + "LabelFontFamilySerif": "Serif", "LabelFontScale": "Veličina slova", "LabelGenre": "Žanr", "LabelGenres": "Žanrovi", From 24b98f10e358141138099eced6e522cd065e6f48 Mon Sep 17 00:00:00 2001 From: advplyr Date: Sat, 6 Dec 2025 22:32:27 +0100 Subject: [PATCH 20/27] Added translation using Weblate (Greek) --- strings/el.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 strings/el.json diff --git a/strings/el.json b/strings/el.json new file mode 100644 index 00000000..0967ef42 --- /dev/null +++ b/strings/el.json @@ -0,0 +1 @@ +{} From d7b48b4f617f7a1df270ef63fa0aeccbf503b544 Mon Sep 17 00:00:00 2001 From: zard Kim Date: Mon, 8 Dec 2025 05:42:35 +0100 Subject: [PATCH 21/27] Translated using Weblate (Korean) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/ko/ --- strings/ko.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/strings/ko.json b/strings/ko.json index e1112419..06880451 100644 --- a/strings/ko.json +++ b/strings/ko.json @@ -136,7 +136,7 @@ "LabelDownload": "다운로드", "LabelDownloadUsingCellular": "셀룰러를 사용하여 다운로드", "LabelDownloaded": "다운로드됨", - "LabelDuration": "Duration", + "LabelDuration": "기간", "LabelEbook": "전자책", "LabelEbooks": "전자책", "LabelEnable": "활성화", From 2e29daab1dc6ff0219019ab44ffe23b1e55de029 Mon Sep 17 00:00:00 2001 From: kfctatertot Date: Mon, 8 Dec 2025 01:54:24 +0100 Subject: [PATCH 22/27] Translated using Weblate (Spanish) Currently translated at 99.7% (359 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/es/ --- strings/es.json | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/strings/es.json b/strings/es.json index b6af11ef..f24b3a8c 100644 --- a/strings/es.json +++ b/strings/es.json @@ -155,6 +155,9 @@ "LabelFinished": "Terminado", "LabelFolder": "Carpeta", "LabelFontBoldness": "Peso tipográfico", + "LabelFontFamily": "Familia tipográfica", + "LabelFontFamilySans": "Sans", + "LabelFontFamilySerif": "Serif", "LabelFontScale": "Escala de letra", "LabelGenre": "Género", "LabelGenres": "Géneros", @@ -221,6 +224,7 @@ "LabelPublishedDate": "Publicado {0}", "LabelRSSFeedCustomOwnerEmail": "Correo electrónico de dueño personalizado", "LabelRSSFeedCustomOwnerName": "Nombre de dueño personalizado", + "LabelRSSFeedOpen": "Fuente RSS Abierta", "LabelRSSFeedPreventIndexing": "Evitar indización", "LabelRSSFeedSlug": "«Slug» de suministro RSS", "LabelRandomly": "Aleatorio", @@ -297,6 +301,7 @@ "MessageDownloading": "Descargando...", "MessageDownloadingEpisode": "Descargando episodio", "MessageEpisodesQueuedForDownload": "{0} episodio(s) en cola para descargar", + "MessageFailedToRefreshToken": "No se pudo actualizar el token, se requiere reiniciar la sesión", "MessageFeedURLWillBe": "El URL del suministro será {0}", "MessageFetching": "Recuperando...", "MessageFollowTheProjectOnGithub": "Siga el proyecto en GitHub", @@ -324,6 +329,8 @@ "MessageNoSeries": "Ninguna serie", "MessageNoUpdatesWereNecessary": "No fue necesario actualizar", "MessageNoUserPlaylists": "No tiene ninguna lista de reproducción", + "MessageOldServerAuthReLoginRequired": "La autenticación se ha mejorado para seguridad en la versión v2.26.0 del servidor. Todos los usuarios deberán reiniciar sesión.", + "MessageOldServerAuthWarning": "El servidor está utilizando un método de autenticación anticuado", "MessageOldServerConnectionWarning": "La configuración de la conexión al servidor utiliza un identificador de usuario antiguo. Elimine y vuelva a añadir esta conexión al servidor.", "MessageOldServerConnectionWarningHelp": "Usted configuró originalmente la conexión a este servidor antes de la migración de la base de datos en la versión 2.3.0, publicada en junio de 2023. Una futura actualización del servidor eliminará la posibilidad de iniciar sesión con esta conexión antigua. Por favor, elimine la conexión existente al servidor y conéctese de nuevo (utilizando la misma dirección del servidor y las mismas credenciales). Si tiene algún medio descargado en este dispositivo, será necesario descargarlo de nuevo para sincronizarlo con el servidor.", "MessagePodcastSearchField": "Introduzca el término de búsqueda o el URL del suministro RSS", From 730d0306230a9a9789429c3d745ab92e900cd85c Mon Sep 17 00:00:00 2001 From: kfctatertot Date: Sun, 7 Dec 2025 22:23:17 +0100 Subject: [PATCH 23/27] Translated using Weblate (Arabic) Currently translated at 99.7% (359 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/ar/ --- strings/ar.json | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/strings/ar.json b/strings/ar.json index 93e9e4e7..f709ffaa 100644 --- a/strings/ar.json +++ b/strings/ar.json @@ -146,6 +146,7 @@ "LabelEndOfChapter": "نهاية الفصل", "LabelEndTime": "وقت النهاية", "LabelEpisode": "الحلقة", + "LabelExplicit": "محتوى صريح", "LabelFeedURL": "عنوان التغذية", "LabelFile": "الملف", "LabelFileBirthtime": "وقت انشاء الملف", @@ -154,6 +155,9 @@ "LabelFinished": "المنجزة", "LabelFolder": "المجلد", "LabelFontBoldness": "تعريض الخط", + "LabelFontFamily": "عائلة الخطوط", + "LabelFontFamilySans": "سانس", + "LabelFontFamilySerif": "سارف", "LabelFontScale": "نطاق الخط", "LabelGenre": "التصنيف", "LabelGenres": "التصانيف", @@ -297,6 +301,7 @@ "MessageDownloading": "جاري التنزيل...", "MessageDownloadingEpisode": "جاري تنزيل الحلقة", "MessageEpisodesQueuedForDownload": "تمت إضافة {0} حلقة (حلقات) إلى قائمة انتظار التنزيل", + "MessageFailedToRefreshToken": "فشل في تحديث الرمز، إعادة تسجيل الدخول مطلوب", "MessageFeedURLWillBe": "سيكون رابط التغذية هو {0}", "MessageFetching": "جاري الجلب...", "MessageFollowTheProjectOnGithub": "تابع المشروع على Github", @@ -324,6 +329,8 @@ "MessageNoSeries": "لا توجد سلاسل", "MessageNoUpdatesWereNecessary": "لا حاجة لأي تحديثات", "MessageNoUserPlaylists": "ليس لديك أي قوائم تشغيل", + "MessageOldServerAuthReLoginRequired": "تم تحسين المصادقة في الخادم v2.26.0 لضمان الأمان. يُطلب من جميع المستخدمين إعادة تسجيل الدخول.", + "MessageOldServerAuthWarning": "الخادم يستخدم مصادقة قديمة", "MessageOldServerConnectionWarning": "تكوين اتصال الخادم يستخدم معرّف مستخدم قديم. يرجى حذف اتصال الخادم هذا وإعادة إضافته.", "MessageOldServerConnectionWarningHelp": "لقد قمتَ بإعداد الاتصال بهذا الخادم قبل ترحيل قاعدة البيانات في الإصدار 2.3.0، الصادر في يونيو 2023. سيؤدي تحديث الخادم المستقبلي إلى إلغاء إمكانية تسجيل الدخول باستخدام هذا الاتصال القديم. يُرجى حذف اتصال الخادم الحالي والاتصال مرة أخرى (باستخدام نفس عنوان الخادم وبيانات الاعتماد). إذا كانت لديك أي وسائط مُنزّلة على هذا الجهاز، فيجب تنزيلها مرة أخرى لمزامنتها مع الخادم.", "MessagePodcastSearchField": "أدخل مصطلح البحث أو عنوان URL الخاص بتغذية RSS", From 2d973298363d146c36ae07f4a45077eabef1ad1c Mon Sep 17 00:00:00 2001 From: Lucas Jaksys Date: Fri, 12 Dec 2025 17:54:00 +0100 Subject: [PATCH 24/27] Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (360 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/pt_BR/ --- strings/pt-br.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/strings/pt-br.json b/strings/pt-br.json index a4ff60d9..f0ae3699 100644 --- a/strings/pt-br.json +++ b/strings/pt-br.json @@ -155,6 +155,9 @@ "LabelFinished": "Concluído", "LabelFolder": "Pasta", "LabelFontBoldness": "Intensidade do negrito", + "LabelFontFamily": "Família de fontes", + "LabelFontFamilySans": "Sans", + "LabelFontFamilySerif": "Serif", "LabelFontScale": "Escala de fonte", "LabelGenre": "Gênero", "LabelGenres": "Gêneros", From 332d9f203eaef11ff59bfca816712aa8be435de4 Mon Sep 17 00:00:00 2001 From: lambolighting Date: Thu, 11 Dec 2025 14:20:36 +0100 Subject: [PATCH 25/27] Translated using Weblate (Greek) Currently translated at 8.3% (30 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/el/ --- strings/el.json | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/strings/el.json b/strings/el.json index 0967ef42..602cc5e7 100644 --- a/strings/el.json +++ b/strings/el.json @@ -1 +1,32 @@ -{} +{ + "ButtonAdd": "Προσθήκη", + "ButtonAddNewServer": "Προσθήκη Νέου Διακομιστή", + "ButtonAuthors": "Συγγραφείς", + "ButtonBack": "Πίσω", + "ButtonCancel": "Ακύρωση", + "ButtonCancelTimer": "Ακύρωση Χρονόμετρου", + "ButtonClearFilter": "Διαγραφή Φίλτρου", + "ButtonClearLogs": "Διαγραφή Αρχείων Καταγραφής", + "ButtonCloseFeed": "Κλείσιμο Τροφοδοσίας", + "ButtonCollections": "Συλλογές", + "ButtonConnect": "Σύνδεση", + "ButtonConnectToServer": "Σύνδεση σε Διακομιστή", + "ButtonCreate": "Δημιουργία", + "ButtonCreateBookmark": "Δημιουργία Σελιδοδείκτη", + "ButtonCreateNewPlaylist": "Δημιουργία Νέας Λίστας Αναπαραγωγής", + "ButtonDelete": "Διαγραφή", + "ButtonDeleteLocalEpisode": "Διαγραφή τοπικού επεισοδίου", + "ButtonDeleteLocalFile": "Διαγραφή τοπικού αρχείου", + "ButtonDeleteLocalItem": "Διαγραφή τοπικού αντικειμένου", + "ButtonDisableAutoTimer": "Απενεργοποίηση Αυτόματου Χρονόμετρου", + "ButtonDisconnect": "Αποσύνδεση", + "ButtonGoToWebClient": "Μετάβαση στον Web Client", + "ButtonHistory": "Ιστορικό", + "ButtonHome": "Αρχική", + "ButtonIssues": "Θέματα", + "ButtonLatest": "Τελευταία", + "ButtonLibrary": "Βιβλιοθήκη", + "ButtonLocalMedia": "Τοπικά Μέσα", + "ButtonLogs": "Αρχεία Καταγραφής", + "ButtonManageLocalFiles": "Διαχείριση Τοπικών Αρχείων" +} From a040a731749b36bac21e32169bddb42c5952c414 Mon Sep 17 00:00:00 2001 From: lambolighting Date: Sat, 13 Dec 2025 11:01:10 +0100 Subject: [PATCH 26/27] Translated using Weblate (Greek) Currently translated at 24.4% (88 of 360 strings) Translation: Audiobookshelf/Abs Mobile App Translate-URL: https://hosted.weblate.org/projects/audiobookshelf/abs-mobile-app/el/ --- strings/el.json | 62 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 60 insertions(+), 2 deletions(-) diff --git a/strings/el.json b/strings/el.json index 602cc5e7..f2136e0b 100644 --- a/strings/el.json +++ b/strings/el.json @@ -19,7 +19,7 @@ "ButtonDeleteLocalFile": "Διαγραφή τοπικού αρχείου", "ButtonDeleteLocalItem": "Διαγραφή τοπικού αντικειμένου", "ButtonDisableAutoTimer": "Απενεργοποίηση Αυτόματου Χρονόμετρου", - "ButtonDisconnect": "Αποσύνδεση", + "ButtonDisconnect": "Αποσύνδεση Σύνδσης", "ButtonGoToWebClient": "Μετάβαση στον Web Client", "ButtonHistory": "Ιστορικό", "ButtonHome": "Αρχική", @@ -28,5 +28,63 @@ "ButtonLibrary": "Βιβλιοθήκη", "ButtonLocalMedia": "Τοπικά Μέσα", "ButtonLogs": "Αρχεία Καταγραφής", - "ButtonManageLocalFiles": "Διαχείριση Τοπικών Αρχείων" + "ButtonManageLocalFiles": "Διαχείριση Τοπικών Αρχείων", + "ButtonMaskServerAddress": "Απόκρυψη διέθυνσης διακομιστή", + "ButtonNewFolder": "Νέος Φάκελος", + "ButtonNextEpisode": "Επόμενο Επεισόδιο", + "ButtonOk": "Εντάξει", + "ButtonOpenFeed": "Άνοιγμα Τροφοδοσίας", + "ButtonOverride": "Παράκαμψη", + "ButtonPause": "Παύση", + "ButtonPlay": "Αναπαραγωγή", + "ButtonPlayEpisode": "Αναπαραγωγή Επεισοδίου", + "ButtonPlaylists": "Λίστες Αναπαραγωγής", + "ButtonRead": "Ανάγνωση", + "ButtonReadLess": "Ανάγνωση λιγότερων", + "ButtonReadMore": "Διάβασε περισσότερα", + "ButtonRemove": "Αφαίρεση", + "ButtonRemoveFromServer": "Αφαίρεση απ'τον Διακομιστή", + "ButtonSave": "Αποθήκευση", + "ButtonSaveOrder": "Αποθήκευση Ταξινόμησης", + "ButtonSearch": "Αναζήτηση", + "ButtonSendEbookToDevice": "Αποστολή Ebook σε Συσκευή", + "ButtonSeries": "Σειρά", + "ButtonSetTimer": "Ορισμός Χρονοδιακόπτη", + "ButtonSubmit": "Υποβολή", + "ButtonSwitchServerUser": "Αλλαγή Διακομιστή/Χρήστη", + "ButtonUnmaskServerAddress": "Αφαίρεση απόκρυψης διακομιστή", + "ButtonUserStats": "Στατιστικά Χρήστη", + "ButtonYes": "Ναι", + "HeaderAccount": "Λογαριασμός", + "HeaderAdvanced": "Για Προχωρημένους", + "HeaderAndroidAutoSettings": "Αυτόματες Ρυθμίσεις Διαχειριστή", + "HeaderAudioTracks": "Κομμάτια Ήχου", + "HeaderChapters": "Κεφάλαια", + "HeaderCollection": "Συλλογή", + "HeaderCollectionItems": "Αντικείμενα Συλλογής", + "HeaderConnectionStatus": "Στατιστικά Σύνδεσης", + "HeaderDataSettings": "Ρυθμίσεις Δεδομένων", + "HeaderDetails": "Λεπτομέρειες", + "HeaderDownloads": "Λήψεις", + "HeaderEbookFiles": "Αρχεία Ebook", + "HeaderEpisodes": "Επεισόδια", + "HeaderEreaderSettings": "Ρυθμίσεις Ereader", + "HeaderLatestEpisodes": "Τελευταία Επεισόδια", + "HeaderLibraries": "Βιβλιοθήκες", + "HeaderLocalFolders": "Τοπικοί Φάκελοι", + "HeaderLocalLibraryItems": "Αντικείμενα Τοπικής Βιβλιοθήκης", + "HeaderNewPlaylist": "Νέα Λίστα Αναπαραγωγής", + "HeaderOpenRSSFeed": "Άνοιγμα Τροφοδοσίας RSS", + "HeaderPlaybackSettings": "Ρυθμίσεις Αναπαραγωγής", + "HeaderPlaylist": "Λίστα Αναπαραγωγής", + "HeaderPlaylistItems": "Αντικείμενα Λίστας Αναπαραγωγής", + "HeaderProgressSyncFailed": "Αποτυχία Συγχρονισμού Προόδου", + "HeaderRSSFeed": "Τροφοδοσία RSS", + "HeaderRSSFeedGeneral": "Λεπτομέρειες RSS", + "HeaderRSSFeedIsOpen": "Η Τροφοδοσία RSS είναι Ανοιχτή", + "HeaderSelectDownloadLocation": "Επιλογή Τοποθεσίας Λήψης", + "HeaderSettings": "Ρυθμίσεις", + "HeaderStatsMinutesListeningChart": "Λεπτά Ακρόασης (τελευταίες 7 ημέρες)", + "HeaderStatsRecentSessions": "Πρόσφατες Συνεδρίες", + "HeaderTableOfContents": "Πίνακας Περιεχομένων" } From b2c2b625e3cf586562397f4c02e38059f2b8ef5c Mon Sep 17 00:00:00 2001 From: advplyr Date: Tue, 16 Dec 2025 17:44:34 -0600 Subject: [PATCH 27/27] Cleanup ItemSearchCard remove unused match properties, add LabelByAuthor string --- components/cards/ItemSearchCard.vue | 49 ++++------------------------- pages/search.vue | 6 ++-- strings/en-us.json | 1 + 3 files changed, 10 insertions(+), 46 deletions(-) diff --git a/components/cards/ItemSearchCard.vue b/components/cards/ItemSearchCard.vue index 8586b8ba..190a7b4b 100644 --- a/components/cards/ItemSearchCard.vue +++ b/components/cards/ItemSearchCard.vue @@ -1,16 +1,10 @@ @@ -22,9 +16,7 @@ export default { type: Object, default: () => {} }, - search: String, - matchKey: String, - matchText: String + search: String }, data() { return {} @@ -58,35 +50,6 @@ export default { authorName() { if (this.isPodcast) return this.mediaMetadata.author return this.mediaMetadata.authorName - }, - matchHtml() { - if (!this.matchText || !this.search) return '' - if (this.matchKey === 'subtitle') return '' - var matchSplit = this.matchText.toLowerCase().split(this.search.toLowerCase().trim()) - if (matchSplit.length < 2) return '' - - var html = '' - var totalLenSoFar = 0 - for (let i = 0; i < matchSplit.length - 1; i++) { - var indexOf = matchSplit[i].length - var firstPart = this.matchText.substr(totalLenSoFar, indexOf) - var actualWasThere = this.matchText.substr(totalLenSoFar + indexOf, this.search.length) - totalLenSoFar += indexOf + this.search.length - - html += `${firstPart}${actualWasThere}` - } - var lastPart = this.matchText.substr(totalLenSoFar) - html += lastPart - - if (this.matchKey === 'episode') return `

Episode: ${html}

` - if (this.matchKey === 'tags') return `

Tags: ${html}

` - if (this.matchKey === 'subtitle') return `

${html}

` - if (this.matchKey === 'authors') return `by ${html}` - if (this.matchKey === 'isbn') return `

ISBN: ${html}

` - if (this.matchKey === 'asin') return `

ASIN: ${html}

` - if (this.matchKey === 'series') return `

Series: ${html}

` - if (this.matchKey === 'narrators') return `

Narrator: ${html}

` - return `${html}` } }, methods: {}, @@ -101,4 +64,4 @@ export default { flex-direction: column; justify-content: center; } - \ No newline at end of file + diff --git a/pages/search.vue b/pages/search.vue index 6367bf8e..0827bd58 100644 --- a/pages/search.vue +++ b/pages/search.vue @@ -14,7 +14,7 @@ @@ -23,7 +23,7 @@ @@ -160,4 +160,4 @@ export default { height: calc(100% - 108px); max-height: calc(100% - 108px); } - \ No newline at end of file + diff --git a/strings/en-us.json b/strings/en-us.json index 4cef2acf..57fd2491 100644 --- a/strings/en-us.json +++ b/strings/en-us.json @@ -113,6 +113,7 @@ "LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.", "LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.", "LabelBooks": "Books", + "LabelByAuthor": "by {0}", "LabelChapterTrack": "Chapter Track", "LabelChapters": "Chapters", "LabelClosePlayer": "Close player",