Auth: Add "access_token" authentication provider type #782 #808 #3943

Signed-off-by: Michael Mayer <michael@photoprism.app>
This commit is contained in:
Michael Mayer 2024-01-19 14:41:08 +01:00
parent 4ba32a7220
commit 06a18f5818
59 changed files with 674 additions and 396 deletions

View file

@ -60,7 +60,7 @@ msgstr "'n Klik sal dit na jou knipbord kopieer."
msgid "About"
msgstr "Oor"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Toegang Token"
@ -662,7 +662,7 @@ msgstr "Ontfout logs"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1347,7 +1347,7 @@ msgstr "Laaste sinkronisering"
msgid "Latitude"
msgstr "Breedtegraad"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1394,7 +1394,7 @@ msgstr "Limiet bereik, wys eerste %{n} lêers"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Lineêr: Baie glad, beste prestasie"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Skakel"
@ -1412,7 +1412,7 @@ msgstr "Leef"
msgid "Live Photos"
msgstr "Regstreekse Foto's"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Plaaslik"
@ -1658,7 +1658,7 @@ msgstr "Geen waarskuwings of foute wat hierdie sleutelwoord bevat nie. Let daaro
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Nie-fotografiese en lae kwaliteit prente vereis 'n hersiening voordat dit in soekresultate verskyn."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Geen"
@ -1809,6 +1809,10 @@ msgstr "Permanent uitgevee"
msgid "Permanently remove files to free up storage."
msgstr "Verwyder lêers permanent om berging vry te maak."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Foon"
@ -2164,7 +2168,7 @@ msgstr "Diens-URL"
msgid "Services"
msgstr "Dienste"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sessie"

View file

@ -63,7 +63,7 @@ msgstr "نقرة للنسخ إلى الحافظة الخاصة بك."
msgid "About"
msgstr "حول"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "رمز وصول"
@ -665,7 +665,7 @@ msgstr "سجلات التصحيح"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "آخر مزامنة"
msgid "Latitude"
msgstr "خط العرض"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP / AD"
@ -1397,7 +1397,7 @@ msgstr "تم بلوغ الحد ، عرض أول %{n} ملف"
msgid "Linear: Very Smooth, Best Performance"
msgstr "الخطي: سلس جدًا ، أفضل أداء"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "نهاية لهذه الغاية"
@ -1415,7 +1415,7 @@ msgstr "يعيش"
msgid "Live Photos"
msgstr "Live Photos"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "محلي"
@ -1661,7 +1661,7 @@ msgstr "لا تحذيرات أو خطأ يحتوي على هذه الكلمة ا
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "تتطلب الصور غير الفوتوغرافية وذات الجودة المنخفضة المراجعة قبل ظهورها في نتائج البحث."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "لا أحد"
@ -1812,6 +1812,10 @@ msgstr "حذف نهائيًا"
msgid "Permanently remove files to free up storage."
msgstr "قم بإزالة الملفات بشكل دائم لتحرير مساحة التخزين."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "الهاتف"
@ -2167,7 +2171,7 @@ msgstr "URL الخدمة"
msgid "Services"
msgstr "خدمات"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "حصة"

View file

@ -60,7 +60,7 @@ msgstr "Клік скапіруе яго ў буфер абмену."
msgid "About"
msgstr "Аб"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Токен доступу"
@ -662,7 +662,7 @@ msgstr "Журналы адладкі"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1347,7 +1347,7 @@ msgstr "Апошняя сінхранізацыя"
msgid "Latitude"
msgstr "Шырата"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1394,7 +1394,7 @@ msgstr "Ліміт дасягнуты, паказваюцца першыя %{n}
msgid "Linear: Very Smooth, Best Performance"
msgstr "Лінейны: вельмі гладкі, найлепшая прадукцыйнасць"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Спасылка"
@ -1412,7 +1412,7 @@ msgstr "жыць"
msgid "Live Photos"
msgstr "Жывыя фатаграфіі"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Мясцовы"
@ -1658,7 +1658,7 @@ msgstr "Няма папярэджанняў або памылак з гэтым
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Нефатаграфічныя і нізкаякасныя выявы патрабуюць праверкі, перш чым яны з'явяцца ў выніках пошуку."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Няма"
@ -1809,6 +1809,10 @@ msgstr "Выдалены назаўсёды"
msgid "Permanently remove files to free up storage."
msgstr "Выдаліце файлы назаўсёды, каб вызваліць сховішча."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Тэлефон"
@ -2164,7 +2168,7 @@ msgstr "URL службы"
msgid "Services"
msgstr "Паслугі"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "сесія"

View file

@ -63,7 +63,7 @@ msgstr "Едно кликване ще го копира в клипборда
msgid "About"
msgstr "За"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Токен за достъп"
@ -665,7 +665,7 @@ msgstr "Протоколи за отработване"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Синхронизиране"
msgid "Latitude"
msgstr "Географска ширина"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Лимитът е достигнат, показваме първите
msgid "Linear: Very Smooth, Best Performance"
msgstr "Линейни: Много гладка, най-добра производителност"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Връзка"
@ -1415,7 +1415,7 @@ msgstr "На живо"
msgid "Live Photos"
msgstr "Снимки"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Местни"
@ -1661,7 +1661,7 @@ msgstr "Няма предупреждения или грешки, съдърж
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Нефотографските изображения и изображенията с ниско качество изискват преглед, преди да се появят в резултатите от търсенето."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Няма"
@ -1812,6 +1812,10 @@ msgstr "Постоянно изтрити"
msgid "Permanently remove files to free up storage."
msgstr "Постоянно премахване на файлове, за да освободите място за съхранение."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Телефон"
@ -2167,7 +2171,7 @@ msgstr "URL адрес на услугата"
msgid "Services"
msgstr "URL адрес на услугата"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Сесия"

View file

@ -63,7 +63,7 @@ msgstr "Un clic ho copiarà al porta-retalls."
msgid "About"
msgstr "Quant a"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Fitxa d'accés"
@ -665,7 +665,7 @@ msgstr "Registres de depuració"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Última sincronització"
msgid "Latitude"
msgstr "Latitud"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "S'ha assolit el límit, mostrant els primers %{n} fitxers"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Lineal: molt suau, millor rendiment"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Enllaç"
@ -1415,7 +1415,7 @@ msgstr "En viu"
msgid "Live Photos"
msgstr "Fotos en directe"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Local"
@ -1661,7 +1661,7 @@ msgstr "No hi ha cap advertiment ni error que contingui aquesta paraula clau. Ti
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Les imatges no fotogràfiques i de baixa qualitat requereixen una revisió abans que apareguin als resultats de la cerca."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Cap"
@ -1812,6 +1812,10 @@ msgstr "Esborrat permanentment"
msgid "Permanently remove files to free up storage."
msgstr "Suprimeix els fitxers permanentment per alliberar emmagatzematge."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telèfon"
@ -2167,7 +2171,7 @@ msgstr "URL del servei"
msgid "Services"
msgstr "Serveis"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sessió"

View file

@ -63,7 +63,7 @@ msgstr "Kliknutím zkopírujete do schránky."
msgid "About"
msgstr "O nás"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Přístupový token"
@ -665,7 +665,7 @@ msgstr "Protokoly ladění"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Poslední synchronizace"
msgid "Latitude"
msgstr "Zeměpisná šířka"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Dosaženo limitu, zobrazeno prvních %{n} souborů"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linear: Velmi vyhlazené, Nejlepší výkon"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Odkaz"
@ -1415,7 +1415,7 @@ msgstr "Živé"
msgid "Live Photos"
msgstr "Živé fotografie"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Místní"
@ -1661,7 +1661,7 @@ msgstr "Žádná varování nebo chyba obsahující toto klíčové slovo. Mějt
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Nefotografické obrázky a snímky nízké kvality vyžadují kontrolu, než se objeví ve výsledcích vyhledávání."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Žádné"
@ -1812,6 +1812,10 @@ msgstr "Trvale smazáno"
msgid "Permanently remove files to free up storage."
msgstr "Trvale odstraňte soubory, abyste uvolnili úložiště."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2167,7 +2171,7 @@ msgstr "URL služby"
msgid "Services"
msgstr "Služby"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Relace"

View file

@ -63,7 +63,7 @@ msgstr "Et klik kopierer det til dit udklipsholder."
msgid "About"
msgstr "Om"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Adgangstoken"
@ -665,7 +665,7 @@ msgstr "Fejlfindingslog"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Seneste synkronisering"
msgid "Latitude"
msgstr "Breddegrad"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Grænse nået, viser de første %{n} filer"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Lineær: Meget glat, bedste ydeevne"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Link"
@ -1415,7 +1415,7 @@ msgstr "Direkte"
msgid "Live Photos"
msgstr "Live-fotos"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Lokal"
@ -1661,7 +1661,7 @@ msgstr "Ingen advarsler eller fejl, der indeholder dette nøgleord. Bemærk, at
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Ikke-fotografiske billeder af lav kvalitet kræver en gennemgang, før de vises i søgeresultaterne."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Ingen"
@ -1812,6 +1812,10 @@ msgstr "Permanent slettet"
msgid "Permanently remove files to free up storage."
msgstr "Fjern filer permanent for at frigøre lagerplads."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2167,7 +2171,7 @@ msgstr "Service-URL"
msgid "Services"
msgstr "Tjenester"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Session"

View file

@ -63,7 +63,7 @@ msgstr "In die Zwischenablage kopieren."
msgid "About"
msgstr "Info"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Zugangs-Token"
@ -665,7 +665,7 @@ msgstr "Debug Logs"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Letzte Synchronisation"
msgid "Latitude"
msgstr "Breitengrad"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Limit erreicht, zeige die ersten %{n} Dateien"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linear: Weicher Bildeindruck, sehr gute Performance"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Link"
@ -1415,7 +1415,7 @@ msgstr "Live"
msgid "Live Photos"
msgstr "Live Photos"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Lokal"
@ -1661,7 +1661,7 @@ msgstr "Keine Warnungen oder Fehler mit diesem Suchbegriff. Bei der Suche wird z
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Nicht-fotografische Inhalte oder Bilder mit geringer Qualität werden erst nach einer Bestätigung in der Suche angezeigt."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Keine"
@ -1812,6 +1812,10 @@ msgstr "Endgültig gelöscht"
msgid "Permanently remove files to free up storage."
msgstr "Dauerhaftes Entfernen von Dateien, um Speicherplatz freizugeben."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2167,7 +2171,7 @@ msgstr "Dienst-URL"
msgid "Services"
msgstr "Dienste"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Session"

View file

@ -60,7 +60,7 @@ msgstr "Ένα κλικ θα το αντιγράψει στο πρόχειρο."
msgid "About"
msgstr "Σχετικά"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Token πρόσβασης"
@ -662,7 +662,7 @@ msgstr "Αρχεία καταγραφής σφαλμάτων"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1347,7 +1347,7 @@ msgstr "Τελευταίος συγχρονισμός"
msgid "Latitude"
msgstr "Γεωγραφικό πλάτος"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1394,7 +1394,7 @@ msgstr "Επίτευξη ορίου, εμφάνιση των πρώτων %{n}
msgid "Linear: Very Smooth, Best Performance"
msgstr "Γραμμικό: Πολύ ομοιόμορφο, βέλτιστη επίδοση"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Σύνδεσμος"
@ -1412,7 +1412,7 @@ msgstr "Ζωντανό"
msgid "Live Photos"
msgstr "Φωτογραφίες"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Τοπικό"
@ -1658,7 +1658,7 @@ msgstr "Δεν υπάρχουν προειδοποιήσεις ή σφάλματ
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Οι μη φωτογραφικές εικόνες και οι εικόνες χαμηλής ποιότητας απαιτούν επανεξέταση προτού εμφανιστούν στα αποτελέσματα αναζήτησης."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Κανένα"
@ -1809,6 +1809,10 @@ msgstr "Διαγράφηκε μόνιμα"
msgid "Permanently remove files to free up storage."
msgstr "Αφαιρέστε μόνιμα αρχεία για να ελευθερώσετε χώρο αποθήκευσης."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Τηλέφωνο"
@ -2164,7 +2168,7 @@ msgstr "URL υπηρεσίας"
msgid "Services"
msgstr "URL υπηρεσίας"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Σύνοδος"

View file

@ -62,7 +62,7 @@ msgstr ""
msgid "About"
msgstr ""
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr ""
@ -664,7 +664,7 @@ msgstr ""
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1349,7 +1349,7 @@ msgstr ""
msgid "Latitude"
msgstr ""
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr ""
@ -1396,7 +1396,7 @@ msgstr ""
msgid "Linear: Very Smooth, Best Performance"
msgstr ""
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr ""
@ -1414,7 +1414,7 @@ msgstr ""
msgid "Live Photos"
msgstr ""
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr ""
@ -1660,7 +1660,7 @@ msgstr ""
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr ""
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr ""
@ -1811,6 +1811,10 @@ msgstr ""
msgid "Permanently remove files to free up storage."
msgstr ""
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr ""
@ -2166,7 +2170,7 @@ msgstr ""
msgid "Services"
msgstr ""
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr ""

View file

@ -63,7 +63,7 @@ msgstr "Un clic lo copiará al portapapeles."
msgid "About"
msgstr "Acerca de"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Ficha de acceso"
@ -665,7 +665,7 @@ msgstr "Registros de depuración"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Última sincronización"
msgid "Latitude"
msgstr "Latitud"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1398,7 +1398,7 @@ msgstr "Límite alcanzado, mostrando los primeros %{n} archivos"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Lineal: Muy suave, el mejor rendimiento"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Enlace"
@ -1416,7 +1416,7 @@ msgstr "En vivo"
msgid "Live Photos"
msgstr "Fotos en vivo"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Local"
@ -1662,7 +1662,7 @@ msgstr "No hay advertencias ni errores que contengan esta palabra clave. Tenga e
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Las imágenes no fotográficas y de baja calidad requieren una revisión antes que aparezcan en los resultados de la búsqueda."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Ninguno"
@ -1813,6 +1813,10 @@ msgstr "Eliminado permanentemente"
msgid "Permanently remove files to free up storage."
msgstr "Elimina permanentemente los archivos para liberar almacenamiento."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Teléfono"
@ -2168,7 +2172,7 @@ msgstr "URL del servicio"
msgid "Services"
msgstr "Servicios"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sesión"

View file

@ -60,7 +60,7 @@ msgstr "Klõpsamine kopeerib selle lõikelauale."
msgid "About"
msgstr "Teave"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Juurdepääsutunnus"
@ -662,7 +662,7 @@ msgstr "Tõrkeotsingu logid"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1347,7 +1347,7 @@ msgstr "Viimane sünkroonimine"
msgid "Latitude"
msgstr "Laiuskraad"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1394,7 +1394,7 @@ msgstr "Limiit saavutatud, näidatakse esimest %{n} faili"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Lineaarne: väga sujuv, parim jõudlus"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Link"
@ -1412,7 +1412,7 @@ msgstr "Live"
msgid "Live Photos"
msgstr "Liikuvad fotod"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Kohalik"
@ -1658,7 +1658,7 @@ msgstr "Seda märksõna sisaldavaid hoiatusi või vigu ei ole. Pane tähele, et
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Mittefotograafilised ja madala kvaliteediga pildid tuleb üle vaadata, enne kui nad otsingutulemustes ilmuvad."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Puudub"
@ -1809,6 +1809,10 @@ msgstr "Lõplikult kustutatud"
msgid "Permanently remove files to free up storage."
msgstr "Kustuta failid lõplikult, et vabastada salvestusruumi."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2164,7 +2168,7 @@ msgstr "Teenuse URL"
msgid "Services"
msgstr "Teenused"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sessioon"

View file

@ -60,7 +60,7 @@ msgstr "Klik eginez gero, arbelean kopiatuko da."
msgid "About"
msgstr "Buruz"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Sarbide-tokena"
@ -662,7 +662,7 @@ msgstr "Arazte-erregistroak"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1347,7 +1347,7 @@ msgstr "Azken sinkronizazioa"
msgid "Latitude"
msgstr "Latitudea"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1394,7 +1394,7 @@ msgstr "Muga iritsi da, lehen %{n} fitxategi erakusten"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Lineala: oso leuna, errendimendu onena"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Esteka"
@ -1412,7 +1412,7 @@ msgstr "Zuzenean"
msgid "Live Photos"
msgstr "Zuzeneko Argazkiak"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Tokikoa"
@ -1658,7 +1658,7 @@ msgstr "Ez dago gako-hitz hau duen abisurik edo errorerik. Kontuan izan bilaketa
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Argazkiak ez diren eta kalitate baxuko irudiak berrikusi behar dira bilaketa-emaitzetan agertu aurretik."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Bat ere ez"
@ -1809,6 +1809,10 @@ msgstr "Betiko ezabatu da"
msgid "Permanently remove files to free up storage."
msgstr "Kendu fitxategiak betiko biltegia askatzeko."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Mugikorra"
@ -2164,7 +2168,7 @@ msgstr "Zerbitzuaren URLa"
msgid "Services"
msgstr "Zerbitzuak"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Saioa"

View file

@ -63,7 +63,7 @@ msgstr "یک کلیک آن را در کلیپ بورد شما کپی می کند
msgid "About"
msgstr "درباره"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "نشانه دسترسی"
@ -665,7 +665,7 @@ msgstr "گزارش‌های اشکال زدایی"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "آخرین همگام سازی"
msgid "Latitude"
msgstr "عرض جغرافیایی"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "به حد مجاز رسیده است، اولین %{n} فایل را ن
msgid "Linear: Very Smooth, Best Performance"
msgstr "خطی: بسیار روان، بهترین عملکرد"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "لینک"
@ -1415,7 +1415,7 @@ msgstr "زنده"
msgid "Live Photos"
msgstr "تصاویر"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "محلی"
@ -1661,7 +1661,7 @@ msgstr "هیچ هشدار یا خطایی حاوی این کلمه کلیدی ن
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "تصاویر غیرعکاسی و با کیفیت پایین قبل از اینکه در نتایج جستجو ظاهر شوند نیاز به بررسی دارند."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "هیچ یک"
@ -1812,6 +1812,10 @@ msgstr "برای همیشه حذف شد"
msgid "Permanently remove files to free up storage."
msgstr "برای آزاد کردن فضای ذخیره سازی، فایل ها را برای همیشه حذف کنید."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "تلفن"
@ -2167,7 +2171,7 @@ msgstr "URL سرویس"
msgid "Services"
msgstr "URL سرویس"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "جلسه"

View file

@ -60,7 +60,7 @@ msgstr "Napsauttamalla sitä voit kopioida sen leikepöydälle."
msgid "About"
msgstr "Tietoja"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Access Token"
@ -662,7 +662,7 @@ msgstr "Vianmäärityslokit"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1347,7 +1347,7 @@ msgstr "Viimeisin synkronointi"
msgid "Latitude"
msgstr "Leveysaste"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1394,7 +1394,7 @@ msgstr "Raja saavutettu, näytetään ensimmäiset %{n} tiedostoa"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Lineaarinen: Erittäin tasainen, paras suorituskyky"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Linkki"
@ -1412,7 +1412,7 @@ msgstr "Live Photo -kuva"
msgid "Live Photos"
msgstr "Kuvat"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Paikallinen"
@ -1658,7 +1658,7 @@ msgstr "Ei varoituksia tai virheitä, jotka sisältävät tämän avainsanan. Hu
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Muut kuin valokuvat ja heikkolaatuiset kuvat edellyttävät tarkistusta, ennen kuin ne näkyvät hakutuloksissa."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Ei mitään"
@ -1809,6 +1809,10 @@ msgstr "Poistettu pysyvästi"
msgid "Permanently remove files to free up storage."
msgstr "Poista tiedostot pysyvästi vapauttaaksesi tallennustilaa."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Puhelin"
@ -2164,7 +2168,7 @@ msgstr "Palvelun URL-osoite"
msgid "Services"
msgstr "Palvelun URL-osoite"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Istunto"

View file

@ -63,7 +63,7 @@ msgstr "Cliquez pour copier vers votre presse-papier."
msgid "About"
msgstr "À propos"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Jeton d'accès"
@ -665,7 +665,7 @@ msgstr "Journaux de débogage"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Dernière synchro"
msgid "Latitude"
msgstr "Latitude"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Limite atteinte, affichage des %{n} premiers fichiers"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linéaire : Très lisse, meilleure performance"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Lien"
@ -1415,7 +1415,7 @@ msgstr "Live"
msgid "Live Photos"
msgstr "Photos en direct"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Locale"
@ -1661,7 +1661,7 @@ msgstr "Aucun avertissement ou erreur contenant ce mot-clé. Notez que la recher
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Les images non photographiques ou de mauvaise qualité doivent faire l'objet d'un examen avant d'apparaître dans les résultats de recherche."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Aucun"
@ -1812,6 +1812,10 @@ msgstr "Supprimé définitivement"
msgid "Permanently remove files to free up storage."
msgstr "Supprimer définitivement les fichiers pour récupérer de la place de stockage."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Téléphone"
@ -2167,7 +2171,7 @@ msgstr "URL du service"
msgid "Services"
msgstr "Services"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Session"

View file

@ -63,7 +63,7 @@ msgstr "לחיצה תעתיק את זה."
msgid "About"
msgstr "אודות"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "אסימון גישה"
@ -665,7 +665,7 @@ msgstr "Debug Logs"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "סנכרון אחרון"
msgid "Latitude"
msgstr "קו רוחב"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "לא ניתן להציג יותר, מציג את ה-%{n} קבצים הר
msgid "Linear: Very Smooth, Best Performance"
msgstr "ליניארי: חלק מאוד, הביצועים הטובים ביותר"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "קישור"
@ -1415,7 +1415,7 @@ msgstr "חי"
msgid "Live Photos"
msgstr "תמונות חיות"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "מְקוֹמִי"
@ -1661,7 +1661,7 @@ msgstr "אין אזהרות או שגיאות המכילות מילת מפתח
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "תמונות שאינן נראות צילום או באיכות נמוכה דורשות בדיקה לפני שהן מופיעות בתוצאות החיפוש."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "ללא"
@ -1812,6 +1812,10 @@ msgstr "נמחק לצמיתות"
msgid "Permanently remove files to free up storage."
msgstr "מחק קבצים לצמיתות בכדי לשחרר נפח אחסון"
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "טלפון"
@ -2167,7 +2171,7 @@ msgstr "נתיב השרות"
msgid "Services"
msgstr "שירותים"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "מוֹשָׁב"

View file

@ -63,7 +63,7 @@ msgstr "एक क्लिक इसे आपके क्लिपबोर
msgid "About"
msgstr "के बारे में"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "एक्सेस टोकन"
@ -665,7 +665,7 @@ msgstr "दोषमार्जन लॉग"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "अंतिम सिंक"
msgid "Latitude"
msgstr "अक्षांश"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "एलडीएपी/एडी"
@ -1397,7 +1397,7 @@ msgstr "पहले %{n} फ़ाइलों को दिखाते हु
msgid "Linear: Very Smooth, Best Performance"
msgstr "रैखिक: बहुत चिकना, सर्वश्रेष्ठ प्रदर्शन"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "संपर्क"
@ -1415,7 +1415,7 @@ msgstr "लाइव"
msgid "Live Photos"
msgstr "लाइव तस्वीरें"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "स्थानीय"
@ -1661,7 +1661,7 @@ msgstr "इस कीवर्ड से कोई चेतावनी या
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "गैर-फोटोग्राफिक और निम्न-गुणवत्ता वाली छवियों को खोज परिणामों में प्रदर्शित होने से पहले समीक्षा की आवश्यकता होती है।"
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "कोई नहीं"
@ -1812,6 +1812,10 @@ msgstr "स्थायी रूप से हटा दिया गया"
msgid "Permanently remove files to free up storage."
msgstr "मेमोरी खाली करने के लिए फ़ाइलें हमेशा के लिए हटाएं."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "फ़ोन"
@ -2167,7 +2171,7 @@ msgstr "सेवा URL"
msgid "Services"
msgstr "सेवाएं"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "सत्र"

View file

@ -63,7 +63,7 @@ msgstr "Klik će kopirati u međuspremnik."
msgid "About"
msgstr "O programu"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Pristupni token"
@ -665,7 +665,7 @@ msgstr "Zapisnici otklanjanja pogrešaka"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Zadnja sinkronizacija"
msgid "Latitude"
msgstr "Zemljopisna širina"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Dosegnuto je ograničenje, prikazuje prvih %{n} datoteka"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linearno: vrlo glatko, najbolja izvedba"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Poveznica"
@ -1415,7 +1415,7 @@ msgstr "Uživo"
msgid "Live Photos"
msgstr "Slike"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Lokalni"
@ -1661,7 +1661,7 @@ msgstr "Nema upozorenja ili pogreške koje sadrže ovu ključnu riječ. Imajte n
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Nefotografske slike i slike niske kvalitete zahtijevaju pregled prije nego što se pojave u rezultatima pretraživanja."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Nijedan"
@ -1812,6 +1812,10 @@ msgstr "Trajno izbrisano"
msgid "Permanently remove files to free up storage."
msgstr "Trajno uklonite datoteke da biste oslobodili prostor za pohranu."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2167,7 +2171,7 @@ msgstr "URL usluge"
msgid "Services"
msgstr "URL usluge"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sjednica"

View file

@ -62,7 +62,7 @@ msgstr "A kattintás egy másolatot helyez a vágólapra."
msgid "About"
msgstr "Rólunk"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Hozzáférési jelszó"
@ -664,7 +664,7 @@ msgstr "Hibakeresési naplók"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1349,7 +1349,7 @@ msgstr "Utolsó szinkronizálás"
msgid "Latitude"
msgstr "Szélességi kör"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1396,7 +1396,7 @@ msgstr "Elérte a korlátot, az első %{n} fájl látható"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Lineáris: Nagyon sima, a legjobb teljesítmény"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Link"
@ -1414,7 +1414,7 @@ msgstr "Élő"
msgid "Live Photos"
msgstr "Fényképek"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Helyi"
@ -1660,7 +1660,7 @@ msgstr "Nincsenek figyelmeztetések vagy hibák, amelyek ezt a kulcsszót tartal
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "A rossz minőségű képek ellenörzésre kerülnek, mielőtt megjelennének a keresési eredmények között."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Egyik sem"
@ -1811,6 +1811,10 @@ msgstr "Véglegesen törölve"
msgid "Permanently remove files to free up storage."
msgstr "A tárhely felszabadításához távolítsa el véglegesen a fájlokat."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2166,7 +2170,7 @@ msgstr "Szolgáltatás URL-je"
msgid "Services"
msgstr "Szolgáltatások"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Ülés"

View file

@ -63,7 +63,7 @@ msgstr "Satu klik akan menyalinnya ke clipboard Anda."
msgid "About"
msgstr "Tentang"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Token Akses"
@ -665,7 +665,7 @@ msgstr "Log Debug"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Sinkronisasi Terakhir"
msgid "Latitude"
msgstr "Lintang"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Batas tercapai, menampilkan %{n} file pertama"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linear: Sangat Halus, Performa Terbaik"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Tautan"
@ -1415,7 +1415,7 @@ msgstr "Langsung"
msgid "Live Photos"
msgstr "Foto"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Lokal"
@ -1661,7 +1661,7 @@ msgstr "Tidak ada peringatan atau kesalahan yang mengandung kata kunci ini. Perh
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Gambar non-fotografis dan berkualitas rendah memerlukan peninjauan sebelum muncul di hasil pencarian."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Tidak ada"
@ -1812,6 +1812,10 @@ msgstr "Dihapus permanen"
msgid "Permanently remove files to free up storage."
msgstr "Hapus file secara permanen untuk mengosongkan penyimpanan."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telepon"
@ -2167,7 +2171,7 @@ msgstr "URL Layanan"
msgid "Services"
msgstr "URL Layanan"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sesi"

View file

@ -63,7 +63,7 @@ msgstr "Un click lo copierà negli appunti."
msgid "About"
msgstr "Informazioni"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Gettone di accesso"
@ -665,7 +665,7 @@ msgstr "Registri di debug"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Ultima sincronizzazione"
msgid "Latitude"
msgstr "Latitudine"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Limite raggiunto, vengono mostrati i primi %{n} file"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Lineare: Molto uniforme, migliori prestazioni"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Link"
@ -1415,7 +1415,7 @@ msgstr "Live"
msgid "Live Photos"
msgstr "Foto dal vivo"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Locale"
@ -1661,7 +1661,7 @@ msgstr "Nessun warning o errore contiene questa parola chiave. Tieni presente ch
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Le immagini non fotografiche e di bassa qualità richiedono una revisione prima di essere visualizzate nei risultati di ricerca."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Nessuno"
@ -1812,6 +1812,10 @@ msgstr "Eliminato permanentemente"
msgid "Permanently remove files to free up storage."
msgstr "Elimina permanentemente i file per liberare spazio."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefono"
@ -2167,7 +2171,7 @@ msgstr "URL Servizio"
msgid "Services"
msgstr "Servizi"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sessione"

View file

@ -63,7 +63,7 @@ msgstr "クリックすると、クリップボードにコピーされます。
msgid "About"
msgstr "概要"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "アクセス・トークン"
@ -665,7 +665,7 @@ msgstr "デバッグログ"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "最終同期"
msgid "Latitude"
msgstr "緯度"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "制限に達しました、最初の %{n} 個のファイルを表示し
msgid "Linear: Very Smooth, Best Performance"
msgstr "線形: とても滑らか、最高のパフォーマンス"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "リンク"
@ -1415,7 +1415,7 @@ msgstr "ライブ"
msgid "Live Photos"
msgstr "ライブ写真"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "ローカル"
@ -1661,7 +1661,7 @@ msgstr "このキーワードを含む警告やエラーは1つも見つかり
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "写真ではないものや、低品質な画像は検索結果に現れる前にレビューが必要です。"
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "なし"
@ -1812,6 +1812,10 @@ msgstr "永久に削除"
msgid "Permanently remove files to free up storage."
msgstr "ファイルを永久的に削除して、ストレージを空けることができます。"
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "電話番号"
@ -2167,7 +2171,7 @@ msgstr "サービス URL"
msgid "Services"
msgstr "サービス"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "セッション"

View file

@ -63,7 +63,7 @@ msgstr "클릭하면 클립보드에 복사됩니다."
msgid "About"
msgstr "정보"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "액세스 토큰"
@ -665,7 +665,7 @@ msgstr "디버그 로그"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "마지막 동기화"
msgid "Latitude"
msgstr "위도"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "한도에 도달하여 처음 %{n} 파일을 표시합니다"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linear: 매우 부드럽고 최고의 성능"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "링크"
@ -1415,7 +1415,7 @@ msgstr "라이브"
msgid "Live Photos"
msgstr "라이브 포토"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "로컬"
@ -1661,7 +1661,7 @@ msgstr "이 키워드를 포함하는 경고 또는 오류가 없습니다. 검
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "사진이 아닌 저품질 이미지는 검색 결과에 표시되기 전에 검토가 필요합니다."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "없음"
@ -1812,6 +1812,10 @@ msgstr "영구 삭제됨"
msgid "Permanently remove files to free up storage."
msgstr "파일을 영구적으로 제거하여 저장 공간을 확보하십시오."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "전화"
@ -2167,7 +2171,7 @@ msgstr "서비스 URL"
msgid "Services"
msgstr "서비스"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "세션"

View file

@ -63,7 +63,7 @@ msgstr "کرتەیەک کۆپی دەکاتە کلیپ بۆردەکەت"
msgid "About"
msgstr "دەربارە"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Access Token"
@ -665,7 +665,7 @@ msgstr "تۆماری هەڵەکان"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "هاوکاتگەری"
msgid "Latitude"
msgstr "هێڵی پانیی"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "سنوور گەیشتن، یەکەمین ٪{n} پەڕگە پیشان د
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linear: Very Smooth, Best Performance"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "بەستەر"
@ -1415,7 +1415,7 @@ msgstr "زیندوو"
msgid "Live Photos"
msgstr "وێنەکان"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Herêmî"
@ -1661,7 +1661,7 @@ msgstr "هیچ ئاگادارییەک یان هەڵەیەک نیە کە ئەم
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "وێنە نافۆتۆگرافی و کوالێتی نزمەکان پێویستی بە پێداچونەوە هەیە پێش ئەوەی لە ئەنجامی گەڕاندا دەرکەون."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "هیچ"
@ -1812,6 +1812,10 @@ msgstr "بە هەمیشەیی سڕاوەتەوە"
msgid "Permanently remove files to free up storage."
msgstr "سڕینەوەی پەڕگەکان بە شێوەیەکی هەمیشەیی بۆ بەتاڵکردنی بیرگە."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2167,7 +2171,7 @@ msgstr "بەستەری خزمەتگوزاری"
msgid "Services"
msgstr "بەستەری خزمەتگوزاری"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Rûniştinî"

View file

@ -63,7 +63,7 @@ msgstr "Paspaudę jį nukopijuosite į iškarpinę."
msgid "About"
msgstr "Apie"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Prieigos žetonas"
@ -665,7 +665,7 @@ msgstr "Derinimo žurnalai"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Sinchronizavimas"
msgid "Latitude"
msgstr "Platuma"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Limitas pasiektas, rodomi pirmieji %{n} failai"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linijinis: Labai sklandus, geriausias našumas"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Nuoroda"
@ -1415,7 +1415,7 @@ msgstr "Gyvai"
msgid "Live Photos"
msgstr "Nuotraukos"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Vietinis"
@ -1661,7 +1661,7 @@ msgstr "Jokių įspėjimų ar klaidų su šiuo raktažodžiu nėra. Atkreipkite
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Prieš rodant nefotografuotus ir prastos kokybės vaizdus paieškos rezultatuose, juos reikia peržiūrėti."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Nėra"
@ -1812,6 +1812,10 @@ msgstr "Visam laikui ištrintas"
msgid "Permanently remove files to free up storage."
msgstr "Visam laikui pašalinkite failus, kad atlaisvintumėte saugyklą."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefonas"
@ -2167,7 +2171,7 @@ msgstr "Paslaugos URL"
msgid "Services"
msgstr "Paslaugos URL"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sesija"

View file

@ -63,7 +63,7 @@ msgstr "Satu klik akan menyalinnya ke papan klip anda."
msgid "About"
msgstr "Mengenai"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Token akses"
@ -665,7 +665,7 @@ msgstr "Log Nyahpepijat"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Penyegerakan Terakhir"
msgid "Latitude"
msgstr "Latitud"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Had dicapai, menunjukkan %{n} fail pertama"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linear: Sangat Lancar, Prestasi Terbaik"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Pautan"
@ -1415,7 +1415,7 @@ msgstr "Langsung"
msgid "Live Photos"
msgstr "Foto"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Tempatan"
@ -1661,7 +1661,7 @@ msgstr "Tiada amaran atau ralat yang mengandungi kata kunci ini. Ambil perhatian
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Imej bukan fotografi dan berkualiti rendah memerlukan semakan sebelum ia muncul dalam hasil carian."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Tiada"
@ -1812,6 +1812,10 @@ msgstr "Dipadamkan secara kekal"
msgid "Permanently remove files to free up storage."
msgstr "Alih keluar fail secara kekal untuk mengosongkan storan."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "telefon"
@ -2167,7 +2171,7 @@ msgstr "URL perkhidmatan"
msgid "Services"
msgstr "URL perkhidmatan"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sesi"

View file

@ -63,7 +63,7 @@ msgstr "Et klikk vil kopiere det til utklippstavlen."
msgid "About"
msgstr "Om"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Tilgangstoken"
@ -665,7 +665,7 @@ msgstr "Feilsøkingslogger"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Siste synkronisering"
msgid "Latitude"
msgstr "Breddegrad"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Grensen nådd, viser de første €{n} filene"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Lineær: Veldig jevn, beste ytelse"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Lenke"
@ -1415,7 +1415,7 @@ msgstr "Direkte"
msgid "Live Photos"
msgstr "Fotoer"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Lokalt"
@ -1661,7 +1661,7 @@ msgstr "Ingen advarsler eller feilmeldinger inneholder dette nøkkelordet. Merk
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Bilder som ikke er fotografiske eller har lav kvalitet må gjennomgås før de kommer i søkeresultater."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Ingen"
@ -1812,6 +1812,10 @@ msgstr "Permanent slettet"
msgid "Permanently remove files to free up storage."
msgstr "Permanent fjern bilder for å frigjøre lagringsplass."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2167,7 +2171,7 @@ msgstr "Tjeneste-URL"
msgid "Services"
msgstr "Tjenester"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sesjon"

View file

@ -63,7 +63,7 @@ msgstr "Een klik zal het naar uw klembord kopiëren."
msgid "About"
msgstr "Over"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Toegangssleutel"
@ -665,7 +665,7 @@ msgstr "Debug-logs"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Laatste synchronisatie"
msgid "Latitude"
msgstr "Breedtegraad"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Limiet bereikt, toont eerste %{n} bestanden"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Lineair: Zeer glad, beste prestaties"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Link"
@ -1415,7 +1415,7 @@ msgstr "Live"
msgid "Live Photos"
msgstr "Live foto's"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Lokaal"
@ -1661,7 +1661,7 @@ msgstr "Geen waarschuwingen of fouten met dit trefwoord. Let op: zoeken is hoofd
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Niet-fotografische beelden en beelden van lage kwaliteit moeten worden beoordeeld voordat ze in de zoekresultaten verschijnen."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Geen"
@ -1812,6 +1812,10 @@ msgstr "Permanent verwijderd"
msgid "Permanently remove files to free up storage."
msgstr "Bestanden permanent verwijderen om opslagruimte vrij te maken."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefoon"
@ -2167,7 +2171,7 @@ msgstr "Service URL"
msgid "Services"
msgstr "Diensten"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sessie"

View file

@ -63,7 +63,7 @@ msgstr "Kliknięcie na link powyżej skopiuje go do schowka."
msgid "About"
msgstr "O programie"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Token dostępu"
@ -665,7 +665,7 @@ msgstr "Logi debugowania"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Ostatnia synchronizacja"
msgid "Latitude"
msgstr "Szerokość geograficzna"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Osiągnięto limit, pokazuję pierwsze %{n} plików"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linear: bardzo gładki, najlepsza wydajność"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Link"
@ -1415,7 +1415,7 @@ msgstr "Live"
msgid "Live Photos"
msgstr "Zdjęcia na żywo"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Lokalnie"
@ -1661,7 +1661,7 @@ msgstr "Brak ostrzeżeń lub błędów zawierających to słowo kluczowe. Zwró
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Obrazy niebędące fotografiami lub posiadające niską jakość wymagają zatwierdzenia, zanim pojawią się w wynikach wyszukiwania."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Brak"
@ -1812,6 +1812,10 @@ msgstr "Trwale usunięto"
msgid "Permanently remove files to free up storage."
msgstr "Usuń pliki permanentnie, aby zwolnić miejsce na dysku."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2167,7 +2171,7 @@ msgstr "Adres URL do usługi"
msgid "Services"
msgstr "Usługi"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sesja"

View file

@ -63,7 +63,7 @@ msgstr "Um clique irá copiar para a área de transferência."
msgid "About"
msgstr "Sobre"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Token de acesso"
@ -665,7 +665,7 @@ msgstr "Registros de depuração"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Última Sincronia"
msgid "Latitude"
msgstr "Latitude"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Limite alcançado, mostrando os primeiros %{n} arquivos"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linear: Suave, melhor desempenho"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Link"
@ -1415,7 +1415,7 @@ msgstr "Ao vivo"
msgid "Live Photos"
msgstr "Fotos ao vivo"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Local"
@ -1661,7 +1661,7 @@ msgstr "Nenhum alerta ou erro contendo esta palavra-chave. Note que a pesquisa d
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Imagens de baixa qualidade ou não-fotográficas necessitam de revisão antes de aparecerem nos resultados da pesquisa."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Nenhum"
@ -1812,6 +1812,10 @@ msgstr "Permanentemente excluídas"
msgid "Permanently remove files to free up storage."
msgstr "Remover ficheiros permanentemente para poupar armazenamento."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefone"
@ -2167,7 +2171,7 @@ msgstr "URL do serviço"
msgid "Services"
msgstr "Serviços"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sessão"

View file

@ -63,7 +63,7 @@ msgstr "Um clique copiará para sua área de transferência."
msgid "About"
msgstr "Sobre"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Token de acesso"
@ -665,7 +665,7 @@ msgstr "Registros de depuração"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Última Sincronia"
msgid "Latitude"
msgstr "Latitude"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Limite alcançado, mostrando os primeiros %{n} arquivos"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linear: Suave, melhor desempenho"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Link"
@ -1415,7 +1415,7 @@ msgstr "Ao vivo"
msgid "Live Photos"
msgstr "Fotos ao vivo"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Local"
@ -1661,7 +1661,7 @@ msgstr "Nenhum alerta ou erro contento esta palavra-chave. Note que a busca dife
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Imagens de baixa qualidade ou não-fotográficas necessitam de revisão antes de aparecerem nos resultados de busca."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Nenhum"
@ -1812,6 +1812,10 @@ msgstr "Permanentemente excluídas"
msgid "Permanently remove files to free up storage."
msgstr "Remover arquivos permanentemente para poupar armazenamento."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefone"
@ -2167,7 +2171,7 @@ msgstr "URL do serviço"
msgid "Services"
msgstr "Serviços"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sessão"

View file

@ -63,7 +63,7 @@ msgstr "Un clic îl va copia în clipboard."
msgid "About"
msgstr "Despre"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Token de acces"
@ -665,7 +665,7 @@ msgstr "Jurnalele de depanare"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Ultima sincronizare"
msgid "Latitude"
msgstr "Latitudine"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Limita a fost atinsă, afișând primele %{n} fișiere"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Liniare: Foarte netedă, cea mai bună performanță"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Link"
@ -1415,7 +1415,7 @@ msgstr "Live"
msgid "Live Photos"
msgstr "Fotografii în direct"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Local"
@ -1661,7 +1661,7 @@ msgstr "Nu există avertismente sau erori care să conțină acest cuvânt cheie
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Imaginile nefotografice și de slabă calitate necesită o revizuire înainte de a apărea în rezultatele căutării."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Nici unul"
@ -1812,6 +1812,10 @@ msgstr "Șterse definitiv"
msgid "Permanently remove files to free up storage."
msgstr "Eliminați permanent fișierele pentru a elibera spațiu de stocare."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2167,7 +2171,7 @@ msgstr "URL de serviciu"
msgid "Services"
msgstr "Servicii"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sesiunea"

View file

@ -63,7 +63,7 @@ msgstr "Клик скопирует это в буфер обмена."
msgid "About"
msgstr "О нас"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Токен доступа"
@ -665,7 +665,7 @@ msgstr "Отладочные Логи"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Последняя синхронизация"
msgid "Latitude"
msgstr "Широта"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Лимит превышен, отображение первых %{n} ф
msgid "Linear: Very Smooth, Best Performance"
msgstr "Линейный: очень сглаженный, лучшая производительность"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Ссылка"
@ -1415,7 +1415,7 @@ msgstr "Прямой эфир"
msgid "Live Photos"
msgstr "Живые фотографии"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Местный"
@ -1661,7 +1661,7 @@ msgstr "Нет предупреждений или ошибок содержащ
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Файлы, не являющиеся фотографиями, или изображения низкого качества нужно одобрить, чтобы они появились в результатах поиска."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Ничего"
@ -1812,6 +1812,10 @@ msgstr "Удалено насовсем"
msgid "Permanently remove files to free up storage."
msgstr "Удаление файлов насовсем для освобождения дискового пространства."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Телефон"
@ -2167,7 +2171,7 @@ msgstr "URL сервиса"
msgid "Services"
msgstr "Сервисы"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Сессия"

View file

@ -63,7 +63,7 @@ msgstr "Kliknutím skopírujete obsah."
msgid "About"
msgstr "O nás"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Prístupový token"
@ -665,7 +665,7 @@ msgstr "Denníky ladenia"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Posledná synchronizácia"
msgid "Latitude"
msgstr "Šírka"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Limit bol dosiahnutý, zobrazovanie prvých %{n} súborov"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Lineárne: Veľmi hladké, Najlepší výkon"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Odkaz"
@ -1415,7 +1415,7 @@ msgstr "Živé"
msgid "Live Photos"
msgstr "Živé fotografie"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Miestne stránky"
@ -1661,7 +1661,7 @@ msgstr "Nenašli sa žiadne upozornenia ani chyby ktoré by obsahovali toto kľ
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Nefotografické a fotografie nízkej kvality vyžadujú skontrolovanie pred tým než sa zobrazia vo výsledkoch vyhľadávania."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Žiadne"
@ -1812,6 +1812,10 @@ msgstr "Trvalo odstránené"
msgid "Permanently remove files to free up storage."
msgstr "Trvalo odstráňte súbory aby ste uvoľnili miesto."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefón"
@ -2167,7 +2171,7 @@ msgstr "URL Služby"
msgid "Services"
msgstr "Služby"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Zasadnutie"

View file

@ -60,7 +60,7 @@ msgstr "S klikom ga boste kopirali v odložišče."
msgid "About"
msgstr "Podrobno"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Žeton za dostop"
@ -662,7 +662,7 @@ msgstr "Dnevniki za odpravljanje napak"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1347,7 +1347,7 @@ msgstr "Zadnja sinhronizacija"
msgid "Latitude"
msgstr "Zemljepisna širina"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1394,7 +1394,7 @@ msgstr "Omejitev je dosežena, prikazovanje prvih %{n} datotekek"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linearno: Zelo gladko, najboljša zmogljivost"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Povezava"
@ -1412,7 +1412,7 @@ msgstr "V živo"
msgid "Live Photos"
msgstr "Fotografije"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Lokalni"
@ -1658,7 +1658,7 @@ msgstr "Ni opozoril ali napak, ki bi vsebovale to ključno besedo. Upoštevajte,
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Nefotografske slike in slike nizke kakovosti je treba pred prikazom v rezultatih iskanja pregledati."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Ni"
@ -1809,6 +1809,10 @@ msgstr "Trajno izbrisano"
msgid "Permanently remove files to free up storage."
msgstr "Trajno odstranite datoteke in sprostite prostor za shranjevanje."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2164,7 +2168,7 @@ msgstr "URL storitve"
msgid "Services"
msgstr "URL storitve"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Seja"

View file

@ -63,7 +63,7 @@ msgstr "Ett klick kopierar den till urklippshanteraren."
msgid "About"
msgstr "Om"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Token för åtkomst"
@ -665,7 +665,7 @@ msgstr "Felsökningsloggar"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Senaste synkronisering"
msgid "Latitude"
msgstr "Latitud"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Gränsen är nådd, visar de första %{n} filerna"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linjär: Mycket jämn, bästa prestanda"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Länk"
@ -1415,7 +1415,7 @@ msgstr "Live"
msgid "Live Photos"
msgstr "Foton"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Lokal"
@ -1661,7 +1661,7 @@ msgstr "Inga varningar eller fel som innehåller detta nyckelord. Observera att
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Bilder som inte är fotografiska eller av låg kvalitet måste granskas innan de visas i sökresultaten."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Ingen"
@ -1812,6 +1812,10 @@ msgstr "Permanent borttagen"
msgid "Permanently remove files to free up storage."
msgstr "Ta bort filer permanent för att frigöra lagringsutrymme."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2167,7 +2171,7 @@ msgstr "Tjänstens URL"
msgid "Services"
msgstr "Tjänstens URL"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Sammanträde"

View file

@ -63,7 +63,7 @@ msgstr "คลิกเพื่อคัดลอกไปยังคลิป
msgid "About"
msgstr "เกี่ยวกับ"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "โทเค็นการเข้าถึง"
@ -665,7 +665,7 @@ msgstr "บันทึกการดีบัก"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "ซิงค์ล่าสุด"
msgid "Latitude"
msgstr "ละติจูด"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "แอลดีเอพี/ค.ศ"
@ -1397,7 +1397,7 @@ msgstr "ถึงขีดจำกัดแล้ว กำลังแสด
msgid "Linear: Very Smooth, Best Performance"
msgstr "เชิงเส้น: ราบรื่นมาก ประสิทธิภาพดีที่สุด"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "ลิงค์"
@ -1415,7 +1415,7 @@ msgstr "สด"
msgid "Live Photos"
msgstr "ภาพถ่าย"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "ท้องถิ่น"
@ -1661,7 +1661,7 @@ msgstr "ไม่มีคำเตือนหรือข้อผิดพล
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "รูปภาพที่ไม่ใช่ภาพถ่ายและคุณภาพต่ำต้องได้รับการตรวจสอบก่อนที่จะปรากฏในผลการค้นหา"
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "ไม่มี"
@ -1812,6 +1812,10 @@ msgstr "ลบอย่างถาวร"
msgid "Permanently remove files to free up storage."
msgstr "ลบไฟล์อย่างถาวรเพื่อเพิ่มพื้นที่จัดเก็บ"
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "โทรศัพท์"
@ -2167,7 +2171,7 @@ msgstr "URL บริการ"
msgid "Services"
msgstr "URL บริการ"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "การประชุม"

View file

@ -63,7 +63,7 @@ msgstr "Tıklayarak panoya kopyalayabilirsiniz."
msgid "About"
msgstr "Hakkında"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Erişim Belirteci"
@ -665,7 +665,7 @@ msgstr "Hata Kayıtları"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Son Senkronizasyon"
msgid "Latitude"
msgstr "Enlem"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Sınıra ulaşıldı, ilk %{n} dosya gösteriliyor"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Doğrusal: Çok Pürüzsüz, En İyi Performans"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Link"
@ -1415,7 +1415,7 @@ msgstr "Canlı"
msgid "Live Photos"
msgstr "Canlı Fotoğraflar"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Yerel"
@ -1661,7 +1661,7 @@ msgstr "Bu anahtar kelimeyi içeren uyarı veya hata yok. Aramanın büyük/kü
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Fotoğrafik olmayan ve düşük kaliteli görseller, arama sonuçlarında görünmeden önce bir inceleme gerektirir."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Hiçbiri"
@ -1812,6 +1812,10 @@ msgstr "Kalıcı olarak silindi"
msgid "Permanently remove files to free up storage."
msgstr "Depolama alanını boşaltmak için dosyaları kalıcı olarak kaldırın."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Telefon"
@ -2167,7 +2171,7 @@ msgstr "Hizmet URL'si"
msgid "Services"
msgstr "Hizmetler"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Oturum"

View file

@ -62,7 +62,8 @@ msgstr ""
msgid "About"
msgstr ""
#: src/options/auth.js:38
#: src/options/auth.js:25
#: src/options/auth.js:40
msgid "Access Token"
msgstr ""
@ -776,8 +777,8 @@ msgstr ""
#: src/model/session.js:61
#: src/options/auth.js:20
#: src/options/auth.js:21
#: src/options/auth.js:36
#: src/options/auth.js:37
#: src/options/auth.js:38
#: src/options/options.js:317
#: src/options/options.js:381
#: src/options/themes.js:492
@ -1582,7 +1583,7 @@ msgid "Latitude"
msgstr ""
#: src/options/admin.js:39
#: src/options/auth.js:26
#: src/options/auth.js:27
msgid "LDAP/AD"
msgstr ""
@ -1642,8 +1643,8 @@ msgid "Linear: Very Smooth, Best Performance"
msgstr ""
#: src/model/link.js:119
#: src/options/auth.js:27
#: src/options/auth.js:28
#: src/options/auth.js:29
msgid "Link"
msgstr ""
@ -1667,7 +1668,7 @@ msgstr ""
#: src/options/admin.js:35
#: src/options/auth.js:22
#: src/options/auth.js:25
#: src/options/auth.js:26
msgid "Local"
msgstr ""
@ -1979,7 +1980,7 @@ msgid "Non-photographic and low-quality images require a review before they appe
msgstr ""
#: src/options/admin.js:43
#: src/options/auth.js:29
#: src/options/auth.js:30
#: src/options/options.js:297
#: src/options/options.js:393
msgid "None"
@ -2152,6 +2153,10 @@ msgstr ""
msgid "Permanently remove files to free up storage."
msgstr ""
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793
#: src/page/settings/account.vue:647
msgid "Phone"
@ -2568,7 +2573,7 @@ msgid "Services"
msgstr ""
#: src/model/session.js:98
#: src/options/auth.js:39
#: src/options/auth.js:41
msgid "Session"
msgstr ""

View file

@ -63,7 +63,7 @@ msgstr "Копіювання до буферу обміну по кліку."
msgid "About"
msgstr "Про"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Токен доступу"
@ -665,7 +665,7 @@ msgstr "Журнали налагодження"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "Остання синхронізація"
msgid "Latitude"
msgstr "Широта"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "Ліміт досягнуто, показано перші %{n} файл
msgid "Linear: Very Smooth, Best Performance"
msgstr "Лінійний: дуже плавний, найкраща продуктивність"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "Посилання"
@ -1415,7 +1415,7 @@ msgstr "Live фото"
msgid "Live Photos"
msgstr "Живі фото"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Місцевий"
@ -1661,7 +1661,7 @@ msgstr "Немає попереджень або помилок із цим кл
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Нефотографічні та низькоякісні зображення потребують перевірки, перш ніж з’являться в результатах пошуку."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Жодного"
@ -1812,6 +1812,10 @@ msgstr "Остаточно видалено"
msgid "Permanently remove files to free up storage."
msgstr "Видалити файли назавжди, щоб звільнити пам’ять."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Телефон"
@ -2167,7 +2171,7 @@ msgstr "URL служби"
msgid "Services"
msgstr "Послуги"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Сесія"

View file

@ -55,7 +55,7 @@ msgstr "Một cú nhấp chuột sẽ sao chép nó vào clipboard của bạn."
msgid "About"
msgstr "Về"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "Truy cập thẻ"
@ -657,7 +657,7 @@ msgstr "Nhật ký gỡ lỗi"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1342,7 +1342,7 @@ msgstr "Đồng bộ hóa lần cuối"
msgid "Latitude"
msgstr "Vĩ độ"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/QUẢNG CÁO"
@ -1389,7 +1389,7 @@ msgstr "Đã đạt đến giới hạn, hiển thị tệp %{n} đầu tiên"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Tuyến tính: Rất mượt mà, hiệu suất tốt nhất"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "liên kết"
@ -1407,7 +1407,7 @@ msgstr "Sống"
msgid "Live Photos"
msgstr "Ảnh trực tiếp"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "Địa phương"
@ -1653,7 +1653,7 @@ msgstr "Không có cảnh báo hoặc lỗi có chứa từ khóa này. Lưu ý
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "Hình ảnh không phải ảnh và chất lượng thấp cần được xem xét trước khi chúng xuất hiện trong kết quả tìm kiếm."
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "Không có"
@ -1804,6 +1804,10 @@ msgstr "Đã xóa vĩnh viễn"
msgid "Permanently remove files to free up storage."
msgstr "Xóa vĩnh viễn các tập tin để giải phóng bộ nhớ."
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "Điện thoại"
@ -2159,7 +2163,7 @@ msgstr "URL dịch vụ"
msgid "Services"
msgstr "Dịch vụ"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "Phiên họp"

View file

@ -63,7 +63,7 @@ msgstr "点击复制到剪贴板。"
msgid "About"
msgstr "关于"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "访问令牌"
@ -665,7 +665,7 @@ msgstr "调试日志"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "上次同步"
msgid "Latitude"
msgstr "纬度"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "已达到限制,显示前 %{n} 个文件"
msgid "Linear: Very Smooth, Best Performance"
msgstr "Linear: 非常平滑,性能最佳"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "链接"
@ -1415,7 +1415,7 @@ msgstr "实况"
msgid "Live Photos"
msgstr "现场照片"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "当地"
@ -1661,7 +1661,7 @@ msgstr "没有包含此关键字的警告或错误,请注意,搜索区分大
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "非照片和低质量图像出现在搜索结果中前需要进行审查。"
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "无"
@ -1813,6 +1813,10 @@ msgstr "已永久删除"
msgid "Permanently remove files to free up storage."
msgstr "永久删除文件以释放存储空间。"
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "电话"
@ -2169,7 +2173,7 @@ msgstr "服务 URL"
msgid "Services"
msgstr "服务"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "会议"

View file

@ -63,7 +63,7 @@ msgstr "點擊以複製到剪貼簿。"
msgid "About"
msgstr "關於"
#: src/options/auth.js:38
#: src/options/auth.js:25 src/options/auth.js:40
msgid "Access Token"
msgstr "访问令牌"
@ -665,7 +665,7 @@ msgstr "除錯紀錄"
#: src/options/admin.js:31 src/page/admin/sessions.vue:60
#: src/page/admin/users.vue:100 src/model/session.js:61 src/options/auth.js:20
#: src/options/auth.js:21 src/options/auth.js:36 src/options/auth.js:37
#: src/options/auth.js:21 src/options/auth.js:37 src/options/auth.js:38
#: src/options/options.js:317 src/options/options.js:381
#: src/options/themes.js:492 src/page/places.vue:142
msgid "Default"
@ -1350,7 +1350,7 @@ msgstr "上次同步"
msgid "Latitude"
msgstr "緯度"
#: src/options/admin.js:39 src/options/auth.js:26
#: src/options/admin.js:39 src/options/auth.js:27
msgid "LDAP/AD"
msgstr "LDAP/AD"
@ -1397,7 +1397,7 @@ msgstr "到達上限,顯示前 %{n} 個檔案"
msgid "Linear: Very Smooth, Best Performance"
msgstr "線性:非常平滑,最佳性能"
#: src/model/link.js:119 src/options/auth.js:27 src/options/auth.js:28
#: src/model/link.js:119 src/options/auth.js:28 src/options/auth.js:29
msgid "Link"
msgstr "連結"
@ -1415,7 +1415,7 @@ msgstr "即時"
msgid "Live Photos"
msgstr "原況照片"
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:25
#: src/options/admin.js:35 src/options/auth.js:22 src/options/auth.js:26
msgid "Local"
msgstr "当地"
@ -1661,7 +1661,7 @@ msgstr "沒有包含此關鍵字的警告或錯誤。請注意,搜尋區分大
msgid "Non-photographic and low-quality images require a review before they appear in search results."
msgstr "非照片和低品質圖像需要進行手動確認,才會出現在搜尋結果中。"
#: src/options/admin.js:43 src/options/auth.js:29 src/options/options.js:297
#: src/options/admin.js:43 src/options/auth.js:30 src/options/options.js:297
#: src/options/options.js:393
msgid "None"
msgstr "無"
@ -1812,6 +1812,10 @@ msgstr "永久刪除"
msgid "Permanently remove files to free up storage."
msgstr "永久刪除檔案以釋放儲存空間。"
#: src/options/auth.js:39
msgid "Personal"
msgstr ""
#: src/page/settings/account.vue:793 src/page/settings/account.vue:647
msgid "Phone"
msgstr "電話"
@ -2167,7 +2171,7 @@ msgstr "服務 URL"
msgid "Services"
msgstr "服務"
#: src/model/session.js:98 src/options/auth.js:39
#: src/model/session.js:98 src/options/auth.js:41
msgid "Session"
msgstr "工作階段"

View file

@ -22,6 +22,7 @@ export const Providers = () => {
local: $gettext("Local"),
client: $gettext("Client"),
client_credentials: $gettext("Client Credentials"),
access_token: $gettext("Access Token"),
password: $gettext("Local"),
ldap: $gettext("LDAP/AD"),
link: $gettext("Link"),
@ -35,6 +36,7 @@ export const Methods = () => {
return {
"": $gettext("Default"),
default: $gettext("Default"),
personal: $gettext("Personal"),
access_token: $gettext("Access Token"),
session: $gettext("Session"),
totp: "TOTP/2FA",

View file

@ -13,6 +13,7 @@ const (
ClientNameUsage = "`CLIENT` name to help identify the application"
ClientRoleUsage = "client authorization `ROLE`"
ClientAuthScope = "client authorization `SCOPES` e.g. \"metrics\" or \"photos albums\" (\"*\" to allow all)"
ClientAuthProvider = "client authentication `PROVIDER`"
ClientAuthMethod = "client authentication `METHOD`"
ClientAuthExpires = "authentication `LIFETIME` in seconds, after which a new access token must be requested (-1 to disable the limit)"
ClientAuthTokens = "maximum 'NUMBER' of access tokens that the client can request (-1 to disable the limit)"
@ -51,6 +52,12 @@ var ClientAddFlags = []cli.Flag{
Name: "scope, s",
Usage: ClientAuthScope,
},
cli.StringFlag{
Name: "provider, p",
Usage: ClientAuthProvider,
Value: authn.ProviderClientCredentials.String(),
Hidden: true,
},
cli.StringFlag{
Name: "method, m",
Usage: ClientAuthMethod,
@ -84,6 +91,12 @@ var ClientModFlags = []cli.Flag{
Name: "scope, s",
Usage: ClientAuthScope,
},
cli.StringFlag{
Name: "provider, p",
Usage: ClientAuthProvider,
Value: authn.ProviderClientCredentials.String(),
Hidden: true,
},
cli.StringFlag{
Name: "method, m",
Usage: ClientAuthMethod,

View file

@ -393,6 +393,10 @@ func (m *Client) SetFormValues(frm form.Client) *Client {
m.SetRole(frm.ClientRole)
}
if frm.AuthProvider != "" {
m.AuthProvider = frm.Provider().String()
}
if frm.AuthMethod != "" {
m.AuthMethod = frm.Method().String()
}

View file

@ -15,13 +15,15 @@ func NewClientAccessToken(clientName string, lifetime int64, scope string, user
}
sess.SetClientName(clientName)
sess.SetProvider(authn.ProviderClient)
sess.SetMethod(authn.MethodAccessToken)
sess.SetProvider(authn.ProviderAccessToken)
sess.SetScope(scope)
if user != nil {
sess.SetUser(user)
sess.SetAuthToken(rnd.AuthSecret())
sess.SetMethod(authn.MethodPersonal)
} else {
sess.SetMethod(authn.MethodDefault)
}
return sess

View file

@ -9,7 +9,12 @@ import (
func Test_AddClient(t *testing.T) {
t.Run("Success", func(t *testing.T) {
m := form.Client{ClientName: "test", AuthMethod: "basic", AuthScope: "all"}
m := form.Client{
ClientName: "test",
AuthProvider: "client_credentials",
AuthMethod: "oauth2",
AuthScope: "all",
}
c, err := AddClient(m)
@ -20,7 +25,12 @@ func Test_AddClient(t *testing.T) {
assert.Equal(t, "test", c.ClientName)
})
t.Run("ClientNameEmpty", func(t *testing.T) {
m := form.Client{ClientName: "", AuthMethod: "basic", AuthScope: "all"}
m := form.Client{
ClientName: "",
AuthProvider: "client_credentials",
AuthMethod: "oauth2",
AuthScope: "all",
}
c, err := AddClient(m)

View file

@ -419,11 +419,15 @@ func TestClient_SetFormValues(t *testing.T) {
t.Fatal(err)
}
var values = form.Client{ClientName: "New Name", AuthMethod: authn.MethodOAuth2.String(),
AuthScope: "test",
AuthExpires: 4000,
AuthTokens: 3,
AuthEnabled: false}
var values = form.Client{
ClientName: "New Name",
AuthProvider: authn.ProviderClientCredentials.String(),
AuthMethod: authn.MethodOAuth2.String(),
AuthScope: "test",
AuthExpires: 4000,
AuthTokens: 3,
AuthEnabled: false,
}
c := m.SetFormValues(values)
@ -439,11 +443,15 @@ func TestClient_SetFormValues(t *testing.T) {
t.Fatal(err)
}
var values = form.Client{ClientName: "Annika", AuthMethod: authn.MethodOAuth2.String(),
AuthScope: "metrics",
AuthExpires: -4000,
AuthTokens: -5,
AuthEnabled: true}
var values = form.Client{
ClientName: "Annika",
AuthProvider: authn.ProviderClientCredentials.String(),
AuthMethod: authn.MethodOAuth2.String(),
AuthScope: "metrics",
AuthExpires: -4000,
AuthTokens: -5,
AuthEnabled: true,
}
c := m.SetFormValues(values)
@ -459,13 +467,16 @@ func TestClient_SetFormValues(t *testing.T) {
t.Fatal(err)
}
var values = form.Client{ClientName: "Friend",
AuthMethod: authn.MethodOAuth2.String(),
AuthScope: "test",
AuthExpires: 4000000,
AuthTokens: 3000000000,
AuthEnabled: true,
UserUID: "uqxqg7i1kperxvu7"}
var values = form.Client{
ClientName: "Friend",
AuthProvider: authn.ProviderClientCredentials.String(),
AuthMethod: authn.MethodOAuth2.String(),
AuthScope: "test",
AuthExpires: 4000000,
AuthTokens: 3000000000,
AuthEnabled: true,
UserUID: "uqxqg7i1kperxvu7",
}
c := m.SetFormValues(values)
@ -478,7 +489,13 @@ func TestClient_SetFormValues(t *testing.T) {
func TestClient_Validate(t *testing.T) {
t.Run("Success", func(t *testing.T) {
m := Client{ClientName: "test", ClientType: "test", AuthMethod: "basic", AuthScope: "all"}
m := Client{
ClientName: "test",
ClientType: "test",
AuthProvider: authn.ProviderClientCredentials.String(),
AuthMethod: "basic",
AuthScope: "all",
}
err := m.Validate()
@ -487,7 +504,13 @@ func TestClient_Validate(t *testing.T) {
}
})
t.Run("ClientNameEmpty", func(t *testing.T) {
m := Client{ClientName: "", ClientType: "test", AuthMethod: "basic", AuthScope: "all"}
m := Client{
ClientName: "",
ClientType: "test",
AuthProvider: authn.ProviderClientCredentials.String(),
AuthMethod: "basic",
AuthScope: "all",
}
err := m.Validate()
@ -496,7 +519,13 @@ func TestClient_Validate(t *testing.T) {
}
})
t.Run("ClientTypeEmpty", func(t *testing.T) {
m := Client{ClientName: "test", ClientType: "", AuthMethod: "basic", AuthScope: "all"}
m := Client{
ClientName: "test",
ClientType: "",
AuthProvider: authn.ProviderClientCredentials.String(),
AuthMethod: "basic",
AuthScope: "all",
}
err := m.Validate()
@ -505,7 +534,13 @@ func TestClient_Validate(t *testing.T) {
}
})
t.Run("AuthMethodEmpty", func(t *testing.T) {
m := Client{ClientName: "test", ClientType: "test", AuthMethod: "", AuthScope: "all"}
m := Client{
ClientName: "test",
ClientType: "test",
AuthProvider: authn.ProviderClientCredentials.String(),
AuthMethod: "",
AuthScope: "all",
}
err := m.Validate()
@ -514,7 +549,13 @@ func TestClient_Validate(t *testing.T) {
}
})
t.Run("AuthScopeEmpty", func(t *testing.T) {
m := Client{ClientName: "test", ClientType: "test", AuthMethod: "basic", AuthScope: ""}
m := Client{
ClientName: "test",
ClientType: "test",
AuthProvider: authn.ProviderClientCredentials.String(),
AuthMethod: "basic",
AuthScope: "",
}
err := m.Validate()

View file

@ -291,7 +291,7 @@ func (m *Session) SetClient(c *Client) *Session {
m.client = c
m.ClientUID = c.UID()
m.ClientName = c.ClientName
m.AuthProvider = authn.ProviderClient.String()
m.AuthProvider = c.Provider().String()
m.AuthMethod = c.Method().String()
m.AuthScope = c.Scope()
m.SetUser(c.User())

View file

@ -42,8 +42,8 @@ var SessionFixtures = SessionMap{
SessTimeout: -1,
SessExpires: UnixTime() + UnixDay,
AuthScope: clean.Scope("*"),
AuthProvider: authn.ProviderClient.String(),
AuthMethod: authn.MethodAccessToken.String(),
AuthProvider: authn.ProviderAccessToken.String(),
AuthMethod: authn.MethodDefault.String(),
ClientName: "alice_token",
LastActive: -1,
user: UserFixtures.Pointer("alice"),
@ -57,8 +57,8 @@ var SessionFixtures = SessionMap{
SessTimeout: -1,
SessExpires: UnixTime() + UnixDay,
AuthScope: clean.Scope("*"),
AuthProvider: authn.ProviderClient.String(),
AuthMethod: authn.MethodAccessToken.String(),
AuthProvider: authn.ProviderAccessToken.String(),
AuthMethod: authn.MethodPersonal.String(),
ClientName: "alice_token_personal",
LastActive: -1,
user: UserFixtures.Pointer("alice"),
@ -72,8 +72,8 @@ var SessionFixtures = SessionMap{
SessTimeout: -1,
SessExpires: UnixTime() + UnixDay,
AuthScope: clean.Scope("webdav"),
AuthProvider: authn.ProviderClient.String(),
AuthMethod: authn.MethodAccessToken.String(),
AuthProvider: authn.ProviderAccessToken.String(),
AuthMethod: authn.MethodPersonal.String(),
ClientName: "alice_token_webdav",
LastActive: -1,
user: UserFixtures.Pointer("alice"),
@ -87,8 +87,8 @@ var SessionFixtures = SessionMap{
SessTimeout: 0,
SessExpires: UnixTime() + UnixDay,
AuthScope: clean.Scope("metrics photos albums videos"),
AuthProvider: authn.ProviderClient.String(),
AuthMethod: authn.MethodAccessToken.String(),
AuthProvider: authn.ProviderAccessToken.String(),
AuthMethod: authn.MethodDefault.String(),
ClientName: "alice_token_scope",
user: UserFixtures.Pointer("alice"),
UserUID: UserFixtures.Pointer("alice").UserUID,
@ -138,8 +138,8 @@ var SessionFixtures = SessionMap{
SessTimeout: 0,
SessExpires: UnixTime() + UnixWeek,
AuthScope: clean.Scope("metrics"),
AuthProvider: authn.ProviderClient.String(),
AuthMethod: authn.MethodAccessToken.String(),
AuthProvider: authn.ProviderAccessToken.String(),
AuthMethod: authn.MethodDefault.String(),
ClientName: "visitor_token_metrics",
user: &Visitor,
UserUID: Visitor.UserUID,
@ -162,7 +162,7 @@ var SessionFixtures = SessionMap{
SessTimeout: 0,
SessExpires: UnixTime() + UnixWeek,
AuthScope: clean.Scope("metrics"),
AuthProvider: authn.ProviderClient.String(),
AuthProvider: authn.ProviderClientCredentials.String(),
AuthMethod: authn.MethodOAuth2.String(),
ClientUID: ClientFixtures.Get("metrics").ClientUID,
ClientName: ClientFixtures.Get("metrics").ClientName,
@ -179,8 +179,8 @@ var SessionFixtures = SessionMap{
SessTimeout: 0,
SessExpires: UnixTime() + UnixWeek,
AuthScope: clean.Scope("metrics"),
AuthProvider: authn.ProviderClient.String(),
AuthMethod: authn.MethodAccessToken.String(),
AuthProvider: authn.ProviderAccessToken.String(),
AuthMethod: authn.MethodDefault.String(),
ClientName: "token_metrics",
user: nil,
UserUID: "",
@ -195,8 +195,8 @@ var SessionFixtures = SessionMap{
SessTimeout: 0,
SessExpires: UnixTime() + UnixWeek,
AuthScope: clean.Scope("settings"),
AuthProvider: authn.ProviderClient.String(),
AuthMethod: authn.MethodAccessToken.String(),
AuthProvider: authn.ProviderAccessToken.String(),
AuthMethod: authn.MethodDefault.String(),
ClientName: "token_settings",
user: nil,
UserUID: "",

View file

@ -117,7 +117,7 @@ func AuthLocal(user *User, f form.Login, m *Session, c *gin.Context) (authn.Prov
event.LoginError(clientIp, "api", userName, m.UserAgent, message)
m.Status = http.StatusUnauthorized
return authn.ProviderNone, i18n.Error(i18n.ErrInvalidCredentials)
} else if !authSess.IsClient() || authSess.Method() != authn.MethodAccessToken || !authSess.HasScope(acl.ResourceSessions.String()) {
} else if !authSess.IsClient() || !authSess.HasScope(acl.ResourceSessions.String()) {
message := "unauthorized"
limiter.Login.Reserve(clientIp)
event.AuditErr([]string{clientIp, "session %s", "login as %s with auth secret", message}, m.RefID, clean.LogQuote(userName))

View file

@ -479,7 +479,7 @@ func TestSession_AuthInfo(t *testing.T) {
i := m.AuthInfo()
assert.Equal(t, "Client (Access Token)", i)
assert.Equal(t, "Access Token (Personal)", i)
})
}
@ -534,27 +534,44 @@ func TestSession_SetScope(t *testing.T) {
}
func TestSession_SetMethod(t *testing.T) {
t.Run("EmptyMethod", func(t *testing.T) {
t.Run("Empty", func(t *testing.T) {
s := &Session{
UserName: "test",
RefID: "sessxkkcxxxz",
AuthMethod: "Access Token",
UserName: "test",
RefID: "sessxkkcxxxz",
AuthProvider: authn.ProviderAccessToken.String(),
AuthMethod: authn.MethodPersonal.String(),
}
m := s.SetMethod("")
assert.Equal(t, "Access Token", m.AuthMethod)
assert.Equal(t, authn.ProviderAccessToken, m.Provider())
assert.Equal(t, authn.MethodPersonal, m.Method())
})
t.Run("NewMethod", func(t *testing.T) {
t.Run("Test", func(t *testing.T) {
s := &Session{
UserName: "test",
RefID: "sessxkkcxxxz",
AuthMethod: "Access Token",
UserName: "test",
RefID: "sessxkkcxxxz",
AuthProvider: authn.ProviderAccessToken.String(),
AuthMethod: authn.MethodPersonal.String(),
}
m := s.SetMethod("Test")
assert.Equal(t, "Test", m.AuthMethod)
assert.Equal(t, authn.ProviderAccessToken, m.Provider())
assert.Equal(t, authn.Method("Test"), m.Method())
})
t.Run("Test", func(t *testing.T) {
s := &Session{
UserName: "test",
RefID: "sessxkkcxxxz",
AuthProvider: authn.ProviderAccessToken.String(),
AuthMethod: authn.MethodPersonal.String(),
}
m := s.SetMethod(authn.MethodSession)
assert.Equal(t, authn.ProviderAccessToken, m.Provider())
assert.Equal(t, authn.MethodSession, m.Method())
})
}

View file

@ -10,28 +10,30 @@ import (
// Client represents client application settings.
type Client struct {
UserUID string `json:"UserUID,omitempty" yaml:"UserUID,omitempty"`
UserName string `gorm:"size:64;index;" json:"UserName" yaml:"UserName,omitempty"`
ClientName string `json:"ClientName,omitempty" yaml:"ClientName,omitempty"`
ClientRole string `json:"ClientRole,omitempty" yaml:"ClientRole,omitempty"`
AuthMethod string `json:"AuthMethod,omitempty" yaml:"AuthMethod,omitempty"`
AuthScope string `json:"AuthScope,omitempty" yaml:"AuthScope,omitempty"`
AuthExpires int64 `json:"AuthExpires,omitempty" yaml:"AuthExpires,omitempty"`
AuthTokens int64 `json:"AuthTokens,omitempty" yaml:"AuthTokens,omitempty"`
AuthEnabled bool `json:"AuthEnabled,omitempty" yaml:"AuthEnabled,omitempty"`
UserUID string `json:"UserUID,omitempty" yaml:"UserUID,omitempty"`
UserName string `gorm:"size:64;index;" json:"UserName" yaml:"UserName,omitempty"`
ClientName string `json:"ClientName,omitempty" yaml:"ClientName,omitempty"`
ClientRole string `json:"ClientRole,omitempty" yaml:"ClientRole,omitempty"`
AuthProvider string `json:"AuthProvider,omitempty" yaml:"AuthProvider,omitempty"`
AuthMethod string `json:"AuthMethod,omitempty" yaml:"AuthMethod,omitempty"`
AuthScope string `json:"AuthScope,omitempty" yaml:"AuthScope,omitempty"`
AuthExpires int64 `json:"AuthExpires,omitempty" yaml:"AuthExpires,omitempty"`
AuthTokens int64 `json:"AuthTokens,omitempty" yaml:"AuthTokens,omitempty"`
AuthEnabled bool `json:"AuthEnabled,omitempty" yaml:"AuthEnabled,omitempty"`
}
// NewClient creates new client application settings.
func NewClient() Client {
return Client{
UserUID: "",
UserName: "",
ClientName: "",
AuthMethod: authn.MethodOAuth2.String(),
AuthScope: "",
AuthExpires: 3600,
AuthTokens: 5,
AuthEnabled: true,
UserUID: "",
UserName: "",
ClientName: "",
AuthProvider: authn.ProviderClientCredentials.String(),
AuthMethod: authn.MethodOAuth2.String(),
AuthScope: "",
AuthExpires: 3600,
AuthTokens: 5,
AuthEnabled: true,
}
}
@ -41,8 +43,9 @@ func NewClientFromCli(ctx *cli.Context) Client {
f.ClientName = clean.Name(ctx.String("name"))
f.ClientRole = clean.Name(ctx.String("role"))
f.AuthScope = clean.Scope(ctx.String("scope"))
f.AuthProvider = authn.Provider(ctx.String("provider")).String()
f.AuthMethod = authn.Method(ctx.String("method")).String()
f.AuthScope = clean.Scope(ctx.String("scope"))
if authn.MethodOAuth2.NotEqual(f.AuthMethod) {
f.AuthScope = "webdav"
@ -67,6 +70,11 @@ func (f *Client) Role() string {
return clean.Role(f.ClientRole)
}
// Provider returns the sanitized auth provider name.
func (f *Client) Provider() authn.ProviderType {
return authn.Provider(f.AuthProvider)
}
// Method returns the sanitized auth method name.
func (f *Client) Method() authn.MethodType {
return authn.Method(f.AuthMethod)

View file

@ -14,6 +14,7 @@ import (
func TestNewClient(t *testing.T) {
t.Run("Defaults", func(t *testing.T) {
client := NewClient()
assert.Equal(t, authn.ProviderClientCredentials, client.Provider())
assert.Equal(t, authn.MethodOAuth2, client.Method())
assert.Equal(t, "", client.Scope())
assert.Equal(t, "", client.Name())
@ -25,6 +26,7 @@ func TestNewClientFromCli(t *testing.T) {
globalSet := flag.NewFlagSet("test", 0)
globalSet.String("name", "Test", "")
globalSet.String("scope", "*", "")
globalSet.String("provider", "client_credentials", "")
globalSet.String("method", "totp", "")
app := cli.NewApp()
@ -33,6 +35,7 @@ func TestNewClientFromCli(t *testing.T) {
c := cli.NewContext(app, globalSet, nil)
client := NewClientFromCli(c)
assert.Equal(t, authn.ProviderClientCredentials, client.Provider())
assert.Equal(t, authn.MethodTOTP, client.Method())
assert.Equal(t, "webdav", client.Scope())
assert.Equal(t, "Test", client.Name())

View file

@ -12,13 +12,13 @@ type MethodType string
// Authentication methods.
const (
MethodDefault MethodType = "default"
MethodSession MethodType = "session"
MethodAccessToken MethodType = "access_token"
MethodOAuth2 MethodType = "oauth2"
MethodOIDC MethodType = "oidc"
MethodTOTP MethodType = "totp"
MethodUnknown MethodType = ""
MethodDefault MethodType = "default"
MethodSession MethodType = "session"
MethodPersonal MethodType = "personal"
MethodOAuth2 MethodType = "oauth2"
MethodOIDC MethodType = "oidc"
MethodTOTP MethodType = "totp"
MethodUnknown MethodType = ""
)
// IsDefault checks if this is the default method.
@ -29,7 +29,7 @@ func (t MethodType) IsDefault() bool {
// String returns the provider identifier as a string.
func (t MethodType) String() string {
switch t {
case "":
case "", "access_token":
return string(MethodDefault)
case "oauth":
return string(MethodOAuth2)
@ -55,8 +55,6 @@ func (t MethodType) NotEqual(s string) bool {
// Pretty returns the provider identifier in an easy-to-read format.
func (t MethodType) Pretty() string {
switch t {
case MethodAccessToken:
return "Access Token"
case MethodOAuth2:
return "OAuth2"
case MethodOIDC:
@ -79,6 +77,8 @@ func Method(s string) MethodType {
return MethodOIDC
case "TOTP/2FA", "2FA", "2fa", "OTP", "otp":
return MethodTOTP
case "access_token":
return MethodDefault
default:
return MethodType(clean.TypeLower(s))
}

View file

@ -8,7 +8,7 @@ import (
func TestMethodType_String(t *testing.T) {
assert.Equal(t, "default", MethodDefault.String())
assert.Equal(t, "access_token", MethodAccessToken.String())
assert.Equal(t, "personal", MethodPersonal.String())
assert.Equal(t, "oauth2", MethodOAuth2.String())
assert.Equal(t, "oidc", MethodOIDC.String())
assert.Equal(t, "totp", MethodTOTP.String())
@ -17,7 +17,7 @@ func TestMethodType_String(t *testing.T) {
func TestMethodType_IsDefault(t *testing.T) {
assert.Equal(t, true, MethodDefault.IsDefault())
assert.Equal(t, false, MethodAccessToken.IsDefault())
assert.Equal(t, false, MethodPersonal.IsDefault())
assert.Equal(t, false, MethodOAuth2.IsDefault())
assert.Equal(t, false, MethodOIDC.IsDefault())
assert.Equal(t, false, MethodTOTP.IsDefault())
@ -26,7 +26,7 @@ func TestMethodType_IsDefault(t *testing.T) {
func TestMethodType_Pretty(t *testing.T) {
assert.Equal(t, "Default", MethodDefault.Pretty())
assert.Equal(t, "Access Token", MethodAccessToken.Pretty())
assert.Equal(t, "Personal", MethodPersonal.Pretty())
assert.Equal(t, "OAuth2", MethodOAuth2.Pretty())
assert.Equal(t, "OIDC", MethodOIDC.Pretty())
assert.Equal(t, "TOTP/2FA", MethodTOTP.Pretty())
@ -36,19 +36,16 @@ func TestMethodType_Pretty(t *testing.T) {
func TestMethodType_Equal(t *testing.T) {
assert.True(t, MethodTOTP.Equal("totp"))
assert.False(t, MethodTOTP.Equal("2fa"))
assert.False(t, MethodAccessToken.Equal("2fa"))
}
func TestMethodType_NotEqual(t *testing.T) {
assert.True(t, MethodTOTP.NotEqual("2fa"))
assert.False(t, MethodTOTP.NotEqual("totp"))
assert.True(t, MethodAccessToken.NotEqual("2fa"))
}
func TestMethod(t *testing.T) {
assert.Equal(t, MethodDefault, Method("default"))
assert.Equal(t, MethodDefault, Method(""))
assert.Equal(t, MethodAccessToken, Method("access_token"))
assert.Equal(t, MethodOAuth2, Method("oauth2"))
assert.Equal(t, MethodOIDC, Method("oidc"))
assert.Equal(t, MethodOIDC, Method("sso"))

View file

@ -16,6 +16,7 @@ const (
ProviderDefault ProviderType = "default"
ProviderClient ProviderType = "client"
ProviderClientCredentials ProviderType = "client_credentials"
ProviderAccessToken ProviderType = "access_token"
ProviderLocal ProviderType = "local"
ProviderLDAP ProviderType = "ldap"
ProviderLink ProviderType = "link"
@ -37,6 +38,7 @@ var LocalProviders = list.List{
var ClientProviders = list.List{
string(ProviderClient),
string(ProviderClientCredentials),
string(ProviderAccessToken),
}
// IsRemote checks if the provider is external.
@ -92,6 +94,8 @@ func (t ProviderType) Pretty() string {
return "LDAP/AD"
case ProviderClient:
return "Client"
case ProviderAccessToken:
return "Access Token"
case ProviderClientCredentials:
return "Client Credentials"
default: