From 886baa5e3543a983b82a9efd15b9e41f7f38227d Mon Sep 17 00:00:00 2001 From: Claire Date: Thu, 26 Sep 2024 09:40:59 +0200 Subject: [PATCH 01/28] Fix typo causing incorrect error being raised in blurhash processing failure (#32104) --- lib/paperclip/blurhash_transcoder.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/paperclip/blurhash_transcoder.rb b/lib/paperclip/blurhash_transcoder.rb index 150275bc9e078f..b4ff4a12a0e0f6 100644 --- a/lib/paperclip/blurhash_transcoder.rb +++ b/lib/paperclip/blurhash_transcoder.rb @@ -7,7 +7,7 @@ def make width, height, data = blurhash_params # Guard against segfaults if data has unexpected size - raise RangeError("Invalid image data size (expected #{width * height * 3}, got #{data.size})") if data.size != width * height * 3 # TODO: should probably be another exception type + raise RangeError, "Invalid image data size (expected #{width * height * 3}, got #{data.size})" if data.size != width * height * 3 # TODO: should probably be another exception type attachment.instance.blurhash = Blurhash.encode(width, height, data, **(options[:blurhash] || {})) From 278a075b22204b72e7acb43266388c81aedfc402 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 26 Sep 2024 10:47:38 +0200 Subject: [PATCH 02/28] New Crowdin Translations (automated) (#32103) Co-authored-by: GitHub Actions --- app/javascript/mastodon/locales/ar.json | 1 - app/javascript/mastodon/locales/be.json | 1 - app/javascript/mastodon/locales/bg.json | 1 - app/javascript/mastodon/locales/ca.json | 2 +- app/javascript/mastodon/locales/cs.json | 1 - app/javascript/mastodon/locales/cy.json | 4 ++- app/javascript/mastodon/locales/da.json | 2 +- app/javascript/mastodon/locales/de.json | 2 +- app/javascript/mastodon/locales/el.json | 1 - app/javascript/mastodon/locales/en-GB.json | 1 - app/javascript/mastodon/locales/eo.json | 2 +- app/javascript/mastodon/locales/es-AR.json | 2 +- app/javascript/mastodon/locales/es-MX.json | 2 +- app/javascript/mastodon/locales/es.json | 2 +- app/javascript/mastodon/locales/et.json | 1 - app/javascript/mastodon/locales/eu.json | 1 - app/javascript/mastodon/locales/fa.json | 1 - app/javascript/mastodon/locales/fi.json | 1 - app/javascript/mastodon/locales/fil.json | 1 - app/javascript/mastodon/locales/fo.json | 2 +- app/javascript/mastodon/locales/fr-CA.json | 1 - app/javascript/mastodon/locales/fr.json | 1 - app/javascript/mastodon/locales/fy.json | 1 - app/javascript/mastodon/locales/ga.json | 1 - app/javascript/mastodon/locales/gd.json | 1 - app/javascript/mastodon/locales/gl.json | 4 +-- app/javascript/mastodon/locales/he.json | 1 - app/javascript/mastodon/locales/hu.json | 1 - app/javascript/mastodon/locales/ia.json | 1 - app/javascript/mastodon/locales/id.json | 1 - app/javascript/mastodon/locales/ie.json | 1 - app/javascript/mastodon/locales/is.json | 1 - app/javascript/mastodon/locales/it.json | 1 - app/javascript/mastodon/locales/ja.json | 1 - app/javascript/mastodon/locales/ko.json | 1 - app/javascript/mastodon/locales/la.json | 1 - app/javascript/mastodon/locales/lad.json | 1 - app/javascript/mastodon/locales/lt.json | 1 - app/javascript/mastodon/locales/lv.json | 1 - app/javascript/mastodon/locales/nl.json | 2 +- app/javascript/mastodon/locales/nn.json | 1 - app/javascript/mastodon/locales/no.json | 1 - app/javascript/mastodon/locales/pl.json | 2 +- app/javascript/mastodon/locales/pt-BR.json | 1 - app/javascript/mastodon/locales/pt-PT.json | 1 - app/javascript/mastodon/locales/ru.json | 1 - app/javascript/mastodon/locales/sk.json | 5 +++- app/javascript/mastodon/locales/sl.json | 1 - app/javascript/mastodon/locales/sq.json | 4 ++- app/javascript/mastodon/locales/sr-Latn.json | 1 - app/javascript/mastodon/locales/sr.json | 1 - app/javascript/mastodon/locales/sv.json | 1 - app/javascript/mastodon/locales/th.json | 1 - app/javascript/mastodon/locales/tok.json | 1 - app/javascript/mastodon/locales/tr.json | 2 +- app/javascript/mastodon/locales/uk.json | 1 - app/javascript/mastodon/locales/vi.json | 2 +- app/javascript/mastodon/locales/zh-CN.json | 1 - app/javascript/mastodon/locales/zh-HK.json | 1 - app/javascript/mastodon/locales/zh-TW.json | 2 +- config/locales/activerecord.sk.yml | 5 ++++ config/locales/an.yml | 1 - config/locales/ar.yml | 1 - config/locales/ast.yml | 1 - config/locales/be.yml | 1 - config/locales/bg.yml | 1 - config/locales/ca.yml | 2 +- config/locales/ckb.yml | 1 - config/locales/co.yml | 1 - config/locales/cs.yml | 1 - config/locales/cy.yml | 1 - config/locales/da.yml | 2 +- config/locales/de.yml | 1 - config/locales/doorkeeper.cy.yml | 1 + config/locales/doorkeeper.sq.yml | 1 + config/locales/el.yml | 1 - config/locales/en-GB.yml | 1 - config/locales/eo.yml | 29 +++++++++++++++++++- config/locales/es-AR.yml | 1 - config/locales/es-MX.yml | 1 - config/locales/es.yml | 1 - config/locales/et.yml | 1 - config/locales/eu.yml | 1 - config/locales/fa.yml | 1 - config/locales/fi.yml | 1 - config/locales/fo.yml | 1 - config/locales/fr-CA.yml | 1 - config/locales/fr.yml | 1 - config/locales/fy.yml | 1 - config/locales/ga.yml | 1 - config/locales/gd.yml | 1 - config/locales/gl.yml | 2 +- config/locales/he.yml | 1 - config/locales/hr.yml | 1 - config/locales/hu.yml | 1 - config/locales/hy.yml | 1 - config/locales/ia.yml | 1 - config/locales/id.yml | 1 - config/locales/ie.yml | 1 - config/locales/io.yml | 1 - config/locales/is.yml | 1 - config/locales/it.yml | 1 - config/locales/ja.yml | 1 - config/locales/ka.yml | 1 - config/locales/kab.yml | 1 - config/locales/kk.yml | 1 - config/locales/ko.yml | 2 +- config/locales/ku.yml | 1 - config/locales/lad.yml | 1 - config/locales/lt.yml | 1 - config/locales/lv.yml | 9 +++++- config/locales/ms.yml | 1 - config/locales/my.yml | 1 - config/locales/nn.yml | 1 - config/locales/no.yml | 1 - config/locales/oc.yml | 1 - config/locales/pl.yml | 1 - config/locales/pt-BR.yml | 1 - config/locales/pt-PT.yml | 1 - config/locales/ru.yml | 1 - config/locales/sc.yml | 1 - config/locales/sco.yml | 1 - config/locales/si.yml | 1 - config/locales/simple_form.es-MX.yml | 8 +++--- config/locales/simple_form.lv.yml | 1 + config/locales/simple_form.sk.yml | 2 +- config/locales/sk.yml | 7 +++-- config/locales/sl.yml | 1 - config/locales/sq.yml | 3 +- config/locales/sr-Latn.yml | 1 - config/locales/sr.yml | 1 - config/locales/sv.yml | 2 +- config/locales/th.yml | 1 - config/locales/tr.yml | 1 - config/locales/uk.yml | 1 - config/locales/vi.yml | 2 +- config/locales/zh-CN.yml | 1 - config/locales/zh-HK.yml | 1 - 138 files changed, 86 insertions(+), 140 deletions(-) diff --git a/app/javascript/mastodon/locales/ar.json b/app/javascript/mastodon/locales/ar.json index 17b288723bfdb1..18830708db615f 100644 --- a/app/javascript/mastodon/locales/ar.json +++ b/app/javascript/mastodon/locales/ar.json @@ -220,7 +220,6 @@ "domain_block_modal.they_cant_follow": "لا أحد من هذا الخادم يمكنه متابعتك.", "domain_block_modal.they_wont_know": "لن يَعرف أنه قد تم حظره.", "domain_block_modal.title": "أتريد حظر النطاق؟", - "domain_block_modal.you_will_lose_followers": "سيتم إزالة جميع متابعيك من هذا الخادم.", "domain_block_modal.you_wont_see_posts": "لن ترى منشورات أو إشعارات من المستخدمين على هذا الخادم.", "domain_pill.activitypub_lets_connect": "يتيح لك التواصل والتفاعل مع الناس ليس فقط على ماستدون، ولكن عبر تطبيقات اجتماعية مختلفة أيضا.", "domain_pill.activitypub_like_language": "إنّ ActivityPub مثل لغة ماستدون التي يتحدث بها مع شبكات اجتماعية أخرى.", diff --git a/app/javascript/mastodon/locales/be.json b/app/javascript/mastodon/locales/be.json index 098c7a7e9d458a..797d8cc22e578d 100644 --- a/app/javascript/mastodon/locales/be.json +++ b/app/javascript/mastodon/locales/be.json @@ -219,7 +219,6 @@ "domain_block_modal.they_cant_follow": "Ніхто з гэтага сервера не зможа падпісацца на вас.", "domain_block_modal.they_wont_know": "Карыстальнік не будзе ведаць пра блакіроўку.", "domain_block_modal.title": "Заблакіраваць дамен?", - "domain_block_modal.you_will_lose_followers": "Усе падпісчыкі з гэтага сервера будуць выдаленыя.", "domain_block_modal.you_wont_see_posts": "Вы не ўбачыце допісаў і апавяшчэнняў ад карыстальнікаў з гэтага сервера.", "domain_pill.activitypub_lets_connect": "Ён дазваляе вам узаемадзейнічаць не толькі з карыстальнікамі Mastodon, але і розных іншых сацыяльных платформ.", "domain_pill.activitypub_like_language": "ActivityPub — гэта мова, на якой Mastodon размаўляе з іншымі сацыяльнымі сеткамі.", diff --git a/app/javascript/mastodon/locales/bg.json b/app/javascript/mastodon/locales/bg.json index c8f8474e91b939..bf0b656f934b78 100644 --- a/app/javascript/mastodon/locales/bg.json +++ b/app/javascript/mastodon/locales/bg.json @@ -220,7 +220,6 @@ "domain_block_modal.they_cant_follow": "Никого от този сървър не може да ви последва.", "domain_block_modal.they_wont_know": "Няма да узнаят, че са били блокирани.", "domain_block_modal.title": "Блокирате ли домейн?", - "domain_block_modal.you_will_lose_followers": "Всичките ви последователи от този сървър ще се премахнат.", "domain_block_modal.you_wont_see_posts": "Няма да виждате публикации или известия от потребителите на този сървър.", "domain_pill.activitypub_lets_connect": "Позволява ви да се свързвате и взаимодействате с хора не само в Mastodon, но и през различни социални приложения.", "domain_pill.activitypub_like_language": "ActivityPub е като език на Mastodon, говорещ с други социални мрежи.", diff --git a/app/javascript/mastodon/locales/ca.json b/app/javascript/mastodon/locales/ca.json index 710ac594f5eb63..2c6dcba46917a1 100644 --- a/app/javascript/mastodon/locales/ca.json +++ b/app/javascript/mastodon/locales/ca.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Ningú d'aquest servidor us pot seguir.", "domain_block_modal.they_wont_know": "No sabran que són blocats.", "domain_block_modal.title": "Bloquem el domini?", - "domain_block_modal.you_will_lose_followers": "S'eliminaran tots els vostres seguidors d'aquest servidor.", + "domain_block_modal.you_will_lose_num_followers": "Perdreu {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidors}} i {followingCount, plural, one {{followingCountDisplay} persona} other {{followingCountDisplay} persones}} que seguiu.", "domain_block_modal.you_wont_see_posts": "No veureu ni les publicacions ni les notificacions dels usuaris d'aquest servidor.", "domain_pill.activitypub_lets_connect": "Us permet connectar i interactuar amb persones a Mastodon i també a d'altres apps socials.", "domain_pill.activitypub_like_language": "ActivityPub és el llenguatge que Mastodon parla amb altres xarxes socials.", diff --git a/app/javascript/mastodon/locales/cs.json b/app/javascript/mastodon/locales/cs.json index b70ff3ee2bfcc9..1f2804daa5f657 100644 --- a/app/javascript/mastodon/locales/cs.json +++ b/app/javascript/mastodon/locales/cs.json @@ -220,7 +220,6 @@ "domain_block_modal.they_cant_follow": "Nikdo z tohoto serveru vás nemůže sledovat.", "domain_block_modal.they_wont_know": "Nebude vědět, že je zablokován*a.", "domain_block_modal.title": "Blokovat doménu?", - "domain_block_modal.you_will_lose_followers": "Všichni vaši sledující z tohoto serveru budou odstraněni.", "domain_block_modal.you_wont_see_posts": "Neuvidíte příspěvky ani upozornění od uživatelů z tohoto serveru.", "domain_pill.activitypub_lets_connect": "Umožňuje vám spojit se a komunikovat s lidmi nejen na Mastodonu, ale i s dalšími sociálními aplikacemi.", "domain_pill.activitypub_like_language": "ActivityPub je jako jazyk, kterým Mastodon mluví s jinými sociálními sítěmi.", diff --git a/app/javascript/mastodon/locales/cy.json b/app/javascript/mastodon/locales/cy.json index ec93a5b11be109..f2d0708882fae5 100644 --- a/app/javascript/mastodon/locales/cy.json +++ b/app/javascript/mastodon/locales/cy.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Ni all neb o'r gweinydd hwn eich dilyn.", "domain_block_modal.they_wont_know": "Fyddan nhw ddim yn gwybod eu bod wedi cael eu blocio.", "domain_block_modal.title": "Blocio parth?", - "domain_block_modal.you_will_lose_followers": "Bydd eich holl ddilynwyr o'r gweinydd hwn yn cael eu tynnu.", "domain_block_modal.you_wont_see_posts": "Fyddwch chi ddim yn gweld postiadau na hysbysiadau gan ddefnyddwyr ar y gweinydd hwn.", "domain_pill.activitypub_lets_connect": "Mae'n caniatáu ichi gysylltu a rhyngweithio â phobl nid yn unig ar Mastodon, ond ar draws gwahanol apiau cymdeithasol hefyd.", "domain_pill.activitypub_like_language": "Mae ActivityPub fel yr iaith y mae Mastodon yn ei siarad â rhwydweithiau cymdeithasol eraill.", @@ -434,6 +433,8 @@ "lightbox.close": "Cau", "lightbox.next": "Nesaf", "lightbox.previous": "Blaenorol", + "lightbox.zoom_in": "Chwyddo i faint gwirioneddol", + "lightbox.zoom_out": "Chwyddo i ffitio", "limited_account_hint.action": "Dangos y proffil beth bynnag", "limited_account_hint.title": "Mae'r proffil hwn wedi cael ei guddio gan gymedrolwyr {domain}.", "link_preview.author": "Gan {name}", @@ -785,6 +786,7 @@ "status.edit": "Golygu", "status.edited": "Golygwyd ddiwethaf {date}", "status.edited_x_times": "Golygwyd {count, plural, one {count} two {count} other {{count} gwaith}}", + "status.embed": "Cael y cod mewnblannu", "status.favourite": "Ffafrio", "status.favourites": "{count, plural, one {ffefryn} other {ffefryn}}", "status.filter": "Hidlo'r postiad hwn", diff --git a/app/javascript/mastodon/locales/da.json b/app/javascript/mastodon/locales/da.json index 76752802b0e685..e7d2bcaf80c785 100644 --- a/app/javascript/mastodon/locales/da.json +++ b/app/javascript/mastodon/locales/da.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Ingen fra denne server kan følge dig.", "domain_block_modal.they_wont_know": "Vedkommende ser ikke den aktive blokering.", "domain_block_modal.title": "Blokér domæne?", - "domain_block_modal.you_will_lose_followers": "Alle følgerne fra denne server fjernes.", + "domain_block_modal.you_will_lose_num_followers": "Man vil miste {followersCount, plural, one {{followersCountDisplay} følger} other {{followersCountDisplay} følgere}} og {followingCount, plural, one {{followingCountDisplay} person, man følger} other {{followingCountDisplay} personer, man følger}}.", "domain_block_modal.you_wont_see_posts": "Indlæg eller notifikationer fra brugere på denne server vises ikke.", "domain_pill.activitypub_lets_connect": "Det muliggør at komme i forbindelse og interagere med folk ikke kun på Mastodon, men også på tværs af forskellige sociale apps.", "domain_pill.activitypub_like_language": "ActivityPub er \"sproget\", Mastodon taler med andre sociale netværk.", diff --git a/app/javascript/mastodon/locales/de.json b/app/javascript/mastodon/locales/de.json index 1931ce23f1458e..2f8c89961a7302 100644 --- a/app/javascript/mastodon/locales/de.json +++ b/app/javascript/mastodon/locales/de.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Niemand von diesem Server wird dir folgen können.", "domain_block_modal.they_wont_know": "Es wird nicht erkennbar sein, dass diese Domain blockiert wurde.", "domain_block_modal.title": "Domain blockieren?", - "domain_block_modal.you_will_lose_followers": "Alle Follower von diesem Server werden entfernt.", + "domain_block_modal.you_will_lose_num_followers": "Du wirst {followersCount, plural, one {{followersCountDisplay} Follower} other {{followersCountDisplay} Follower}} verlieren und {followingCount, plural, one {{followingCountDisplay} Profil} other {{followingCountDisplay} Profilen}} entfolgen.", "domain_block_modal.you_wont_see_posts": "Du wirst keine Beiträge oder Benachrichtigungen von Profilen auf diesem Server sehen.", "domain_pill.activitypub_lets_connect": "Somit kannst du dich nicht nur auf Mastodon mit Leuten verbinden und mit ihnen interagieren, sondern über alle sozialen Apps hinweg.", "domain_pill.activitypub_like_language": "ActivityPub ist sozusagen die Sprache, die Mastodon mit anderen sozialen Netzwerken spricht.", diff --git a/app/javascript/mastodon/locales/el.json b/app/javascript/mastodon/locales/el.json index 83f0227a0ada59..85f893c63ddc3e 100644 --- a/app/javascript/mastodon/locales/el.json +++ b/app/javascript/mastodon/locales/el.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Κανείς από αυτόν τον διακομιστή δεν μπορεί να σε ακολουθήσει.", "domain_block_modal.they_wont_know": "Δεν θα ξέρουν ότι έχουν αποκλειστεί.", "domain_block_modal.title": "Αποκλεισμός τομέα;", - "domain_block_modal.you_will_lose_followers": "Οι ακόλουθοί σου από αυτόν τον διακομιστή θα αφαιρεθούν.", "domain_block_modal.you_wont_see_posts": "Δεν θα βλέπεις αναρτήσεις ή ειδοποιήσεις από χρήστες σε αυτόν το διακομιστή.", "domain_pill.activitypub_lets_connect": "Σού επιτρέπει να συνδεθείς και να αλληλεπιδράσεις με τους ανθρώπους όχι μόνο στο Mastodon, αλλά και σε διαφορετικές κοινωνικές εφαρμογές.", "domain_pill.activitypub_like_language": "Το ActivityPub είναι σαν τη γλώσσα Mastodon μιλάει με άλλα κοινωνικά δίκτυα.", diff --git a/app/javascript/mastodon/locales/en-GB.json b/app/javascript/mastodon/locales/en-GB.json index c0335dd6b2a637..ee38b775544b1a 100644 --- a/app/javascript/mastodon/locales/en-GB.json +++ b/app/javascript/mastodon/locales/en-GB.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Nobody from this server can follow you.", "domain_block_modal.they_wont_know": "They won't know they've been blocked.", "domain_block_modal.title": "Block domain?", - "domain_block_modal.you_will_lose_followers": "All your followers from this server will be removed.", "domain_block_modal.you_wont_see_posts": "You won't see posts or notifications from users on this server.", "domain_pill.activitypub_lets_connect": "It lets you connect and interact with people not just on Mastodon, but across different social apps too.", "domain_pill.activitypub_like_language": "ActivityPub is like the language Mastodon speaks with other social networks.", diff --git a/app/javascript/mastodon/locales/eo.json b/app/javascript/mastodon/locales/eo.json index fbf74e9efaf6ab..8139e8c76dc87f 100644 --- a/app/javascript/mastodon/locales/eo.json +++ b/app/javascript/mastodon/locales/eo.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Neniu el ĉi tiu servilo povas sekvi vin.", "domain_block_modal.they_wont_know": "Ili ne scios, ke ili estas blokitaj.", "domain_block_modal.title": "Ĉu bloki la domajnon?", - "domain_block_modal.you_will_lose_followers": "Ĉiuj viaj sekvantoj de ĉi tiu servilo estos forigitaj.", + "domain_block_modal.you_will_lose_num_followers": "Vi perdos {followersCount, plural, one {{followersCountDisplay} sekvanton} other {{followersCountDisplay} sekvantojn}} kaj {followingCount, plural, one {{followingCountDisplay} homon, kiu vi sekvas} other {{followingCountDisplay} homojn, kiuj vi sekvas}}.", "domain_block_modal.you_wont_see_posts": "Vi ne vidos afiŝojn aŭ sciigojn de uzantoj sur ĉi tiu servilo.", "domain_pill.activitypub_lets_connect": "Ĝi ebligas vin konekti kaj interagi kun homoj ne nur sur Mastodon, sed ankaŭ tra diversaj sociaj apoj.", "domain_pill.activitypub_like_language": "ActivityPub estas kiel la lingvo kiun Mastodon parolas kun aliaj sociaj retoj.", diff --git a/app/javascript/mastodon/locales/es-AR.json b/app/javascript/mastodon/locales/es-AR.json index 8a37a33df2e787..26a37e76b3939e 100644 --- a/app/javascript/mastodon/locales/es-AR.json +++ b/app/javascript/mastodon/locales/es-AR.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Nadie de este servidor puede seguirte.", "domain_block_modal.they_wont_know": "No sabrán que fueron bloqueados.", "domain_block_modal.title": "¿Bloquear dominio?", - "domain_block_modal.you_will_lose_followers": "Se eliminarán todos tus seguidores de este servidor.", + "domain_block_modal.you_will_lose_num_followers": "Perderás {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} y {followingCount, plural, one {{followingCountDisplay} persona a la que sigues} other {{followingCountDisplay} personas a las que sigues}}.", "domain_block_modal.you_wont_see_posts": "No verás mensajes ni notificaciones de usuarios en este servidor.", "domain_pill.activitypub_lets_connect": "Te permite conectar e interactuar con cuentas no solo en Mastodon, sino también a través de diferentes aplicaciones sociales.", "domain_pill.activitypub_like_language": "ActivityPub es como el idioma que Mastodon habla con otras redes sociales.", diff --git a/app/javascript/mastodon/locales/es-MX.json b/app/javascript/mastodon/locales/es-MX.json index 52ebf0ae1800d6..dd3188c146c995 100644 --- a/app/javascript/mastodon/locales/es-MX.json +++ b/app/javascript/mastodon/locales/es-MX.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Nadie de este servidor puede seguirte.", "domain_block_modal.they_wont_know": "No sabrán que han sido bloqueados.", "domain_block_modal.title": "¿Bloquear dominio?", - "domain_block_modal.you_will_lose_followers": "Todos tus seguidores de este servidor serán eliminados.", + "domain_block_modal.you_will_lose_num_followers": "Perderás {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} y {followingCount, plural, one {{followingCountDisplay} persona a la que sigues} other {{followingCountDisplay} personas a las que sigues}}.", "domain_block_modal.you_wont_see_posts": "No verás publicaciones ni notificaciones de usuarios en este servidor.", "domain_pill.activitypub_lets_connect": "Te permite conectar e interactuar con personas no sólo en Mastodon, sino también a través de diferentes aplicaciones sociales.", "domain_pill.activitypub_like_language": "ActivityPub es como el idioma que Mastodon habla con otras redes sociales.", diff --git a/app/javascript/mastodon/locales/es.json b/app/javascript/mastodon/locales/es.json index 5915c333c4341b..aa282b4c5bf13a 100644 --- a/app/javascript/mastodon/locales/es.json +++ b/app/javascript/mastodon/locales/es.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Nadie de este servidor puede seguirte.", "domain_block_modal.they_wont_know": "No sabrán que han sido bloqueados.", "domain_block_modal.title": "¿Bloquear dominio?", - "domain_block_modal.you_will_lose_followers": "Se eliminarán todos tus seguidores de este servidor.", + "domain_block_modal.you_will_lose_num_followers": "Perderás {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} y {followingCount, plural, one {{followingCountDisplay} persona a la que sigues} other {{followingCountDisplay} personas a las que sigues}}.", "domain_block_modal.you_wont_see_posts": "No verás mensajes ni notificaciones de usuarios en este servidor.", "domain_pill.activitypub_lets_connect": "Te permite conectar e interactuar con personas no sólo en Mastodon, sino también a través de diferentes aplicaciones sociales.", "domain_pill.activitypub_like_language": "ActivityPub es como el idioma que Mastodon habla con otras redes sociales.", diff --git a/app/javascript/mastodon/locales/et.json b/app/javascript/mastodon/locales/et.json index 287ffb98523afe..69df3c4140ebc5 100644 --- a/app/javascript/mastodon/locales/et.json +++ b/app/javascript/mastodon/locales/et.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Sellest serverist ei saa keegi sind jälgida.", "domain_block_modal.they_wont_know": "Nad ei tea, et nad on blokeeritud.", "domain_block_modal.title": "Blokeerida domeen?", - "domain_block_modal.you_will_lose_followers": "Kõik sinu sellest serverist pärit jälgijad eemaldatakse.", "domain_block_modal.you_wont_see_posts": "Sa ei näe selle serveri kasutajate postitusi ega teavitusi.", "domain_pill.activitypub_lets_connect": "See võimaldab sul ühenduda inimestega ja nendega suhelda mitte ainult Mastodonis, vaid ka teistes suhtlusrakendustes.", "domain_pill.activitypub_like_language": "ActivityPub on nagu keel, mida Mastodon räägib teiste suhtlusvõrgustikega.", diff --git a/app/javascript/mastodon/locales/eu.json b/app/javascript/mastodon/locales/eu.json index b3137bc21a3494..35b869486bb3d7 100644 --- a/app/javascript/mastodon/locales/eu.json +++ b/app/javascript/mastodon/locales/eu.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Zerbitzari honetako inork ezin zaitu jarraitu.", "domain_block_modal.they_wont_know": "Ez dute jakingo blokeatuak izan direnik.", "domain_block_modal.title": "Domeinua blokeatu nahi duzu?", - "domain_block_modal.you_will_lose_followers": "Zerbitzari honetako jarraitzaile guztiak kenduko dira.", "domain_block_modal.you_wont_see_posts": "Ez dituzu zerbitzari honetako erabiltzaileen argitalpenik edota jakinarazpenik ikusiko.", "domain_pill.activitypub_lets_connect": "Mastodon-en ez ezik, beste sare sozialen aplikazioetako jendearekin konektatzea eta harremanetan jartzea uzten dizu.", "domain_pill.activitypub_like_language": "ActivityPub, Mastodon-ek beste sare sozialekin hitz egiteko erabiltzen duen hizkuntza bezalakoxea da.", diff --git a/app/javascript/mastodon/locales/fa.json b/app/javascript/mastodon/locales/fa.json index fbc65ec2079943..583fd4ec5a9d2b 100644 --- a/app/javascript/mastodon/locales/fa.json +++ b/app/javascript/mastodon/locales/fa.json @@ -220,7 +220,6 @@ "domain_block_modal.they_cant_follow": "هیچ‌کسی از این کارساز نمی‌تواند پیتان بگیرد.", "domain_block_modal.they_wont_know": "نخواهند دانست که مسدود شده‌اند.", "domain_block_modal.title": "انسداد دامنه؟", - "domain_block_modal.you_will_lose_followers": "همهٔ پی‌گیرندگانتان از این کارساز برداشته خواهند شد.", "domain_block_modal.you_wont_see_posts": "فرسته‌ها یا آگاهی‌ها از کاربران روی این کارساز را نخواهید دید.", "domain_pill.server": "کارساز", "domain_pill.their_handle": "شناسه‌اش:", diff --git a/app/javascript/mastodon/locales/fi.json b/app/javascript/mastodon/locales/fi.json index d4adef40f2f734..4caec3159fb321 100644 --- a/app/javascript/mastodon/locales/fi.json +++ b/app/javascript/mastodon/locales/fi.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Kukaan tältä palvelimelta ei voi seurata sinua.", "domain_block_modal.they_wont_know": "Hän ei saa tietää tulleensa estetyksi.", "domain_block_modal.title": "Estetäänkö verkkotunnus?", - "domain_block_modal.you_will_lose_followers": "Kaikki seuraajasi tältä palvelimelta poistetaan.", "domain_block_modal.you_wont_see_posts": "Et enää näe julkaisuja etkä ilmoituksia tämän palvelimen käyttäjiltä.", "domain_pill.activitypub_lets_connect": "Sen avulla voit muodostaa yhteyden ja olla vuorovaikutuksessa ihmisten kanssa, ei vain Mastodonissa vaan myös muissa sosiaalisissa sovelluksissa.", "domain_pill.activitypub_like_language": "ActivityPub on kuin kieli, jota Mastodon puhuu muiden sosiaalisten verkostojen kanssa.", diff --git a/app/javascript/mastodon/locales/fil.json b/app/javascript/mastodon/locales/fil.json index 31004560912a6e..952bc60882389c 100644 --- a/app/javascript/mastodon/locales/fil.json +++ b/app/javascript/mastodon/locales/fil.json @@ -134,7 +134,6 @@ "dismissable_banner.public_timeline": "Ito ang mga pinakamakailang nakapublikong post mula sa mga taong nasa social web na sinusundan ng mga tao sa {domain}.", "domain_block_modal.block": "Harangan ang serbiro", "domain_block_modal.title": "Harangan ang domain?", - "domain_block_modal.you_will_lose_followers": "Mabubura ang iyong mga tagasunod mula sa serbirong ito.", "domain_pill.server": "Serbiro", "embed.instructions": "I-embed ang post na ito sa iyong pook-sapot sa pamamagitan ng pagsipi ng kodigo sa ilalim.", "embed.preview": "Ito ang magiging itsura:", diff --git a/app/javascript/mastodon/locales/fo.json b/app/javascript/mastodon/locales/fo.json index 9b87f5c8d917b6..3165c101533407 100644 --- a/app/javascript/mastodon/locales/fo.json +++ b/app/javascript/mastodon/locales/fo.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Eingin frá hesum ambætara kann fylgja tær.", "domain_block_modal.they_wont_know": "Tey vita ikki, at tey eru bannað.", "domain_block_modal.title": "Banna økisnavni?", - "domain_block_modal.you_will_lose_followers": "Allir tínir fylgjarar á hesum ambætara hvørva.", + "domain_block_modal.you_will_lose_num_followers": "Tú missir {followersCount, plural, one {{followersCountDisplay} fylgjara} other {{followersCountDisplay} fylgjarar}} og {followingCount, plural, one {{followingCountDisplay} persón, sum tú fylgir} other {{followingCountDisplay} persónar, sum tú fylgir}}.", "domain_block_modal.you_wont_see_posts": "Tú sært ongar postar ella boð frá brúkarum á hesum ambætara.", "domain_pill.activitypub_lets_connect": "Tað letur teg fáa samband og samvirka við fólki ikki bara á Mastodon, men á øðrum sosialum appum eisini.", "domain_pill.activitypub_like_language": "ActivityPub er málið, sum Mastodon tosar við onnur sosial netverk.", diff --git a/app/javascript/mastodon/locales/fr-CA.json b/app/javascript/mastodon/locales/fr-CA.json index ead016dec2a239..a92cd50c67a24b 100644 --- a/app/javascript/mastodon/locales/fr-CA.json +++ b/app/javascript/mastodon/locales/fr-CA.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Personne de ce serveur ne peut vous suivre.", "domain_block_modal.they_wont_know": "Il ne saura pas qu'il a été bloqué.", "domain_block_modal.title": "Bloquer le domaine ?", - "domain_block_modal.you_will_lose_followers": "Tous vos abonnés de ce serveur seront supprimés.", "domain_block_modal.you_wont_see_posts": "Vous ne verrez plus les publications ou les notifications des utilisateurs de ce serveur.", "domain_pill.activitypub_lets_connect": "Cela vous permet de vous connecter et d'interagir avec les autres non seulement sur Mastodon, mais également sur d'autres applications de réseaux sociaux.", "domain_pill.activitypub_like_language": "ActivityPub est comme une langue que Mastodon utilise pour communiquer avec les autres réseaux sociaux.", diff --git a/app/javascript/mastodon/locales/fr.json b/app/javascript/mastodon/locales/fr.json index 9375eccc6fb1a0..a2bf4d5363fb30 100644 --- a/app/javascript/mastodon/locales/fr.json +++ b/app/javascript/mastodon/locales/fr.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Personne de ce serveur ne peut vous suivre.", "domain_block_modal.they_wont_know": "Il ne saura pas qu'il a été bloqué.", "domain_block_modal.title": "Bloquer le domaine ?", - "domain_block_modal.you_will_lose_followers": "Tous vos abonnés de ce serveur seront supprimés.", "domain_block_modal.you_wont_see_posts": "Vous ne verrez plus les publications ou les notifications des utilisateurs de ce serveur.", "domain_pill.activitypub_lets_connect": "Cela vous permet de vous connecter et d'interagir avec les autres non seulement sur Mastodon, mais également sur d'autres applications de réseaux sociaux.", "domain_pill.activitypub_like_language": "ActivityPub est comme une langue que Mastodon utilise pour communiquer avec les autres réseaux sociaux.", diff --git a/app/javascript/mastodon/locales/fy.json b/app/javascript/mastodon/locales/fy.json index e7723c95337853..1d71ef36c69d77 100644 --- a/app/javascript/mastodon/locales/fy.json +++ b/app/javascript/mastodon/locales/fy.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Net ien op dizze server kin jo folgje.", "domain_block_modal.they_wont_know": "Se krije net te witten dat se blokkearre wurde.", "domain_block_modal.title": "Domein blokkearje?", - "domain_block_modal.you_will_lose_followers": "Al jo folgers fan dizze server wurde ûntfolge.", "domain_block_modal.you_wont_see_posts": "Jo sjogge gjin berjochten of meldingen mear fan brûkers op dizze server.", "domain_pill.activitypub_lets_connect": "It soarget derfoar dat jo net allinnich mar ferbine en kommunisearje kinne mei minsken op Mastodon, mar ek mei oare sosjale apps.", "domain_pill.activitypub_like_language": "ActivityPub is de taal dy’t Mastodon mei oare sosjale netwurken sprekt.", diff --git a/app/javascript/mastodon/locales/ga.json b/app/javascript/mastodon/locales/ga.json index e05adc27325eba..2161591dcd40c7 100644 --- a/app/javascript/mastodon/locales/ga.json +++ b/app/javascript/mastodon/locales/ga.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Ní féidir le duine ar bith ón bhfreastalaí seo tú a leanúint.", "domain_block_modal.they_wont_know": "Ní bheidh a fhios acu go bhfuil bac orthu.", "domain_block_modal.title": "Blocáil fearann?", - "domain_block_modal.you_will_lose_followers": "Bainfear do leantóirí go léir ón bhfreastalaí seo.", "domain_block_modal.you_wont_see_posts": "Ní fheicfidh tú postálacha nó fógraí ó úsáideoirí ar an bhfreastalaí seo.", "domain_pill.activitypub_lets_connect": "Ligeann sé duit ceangal agus idirghníomhú le daoine, ní hamháin ar Mastodon, ach thar aipeanna sóisialta éagsúla freisin.", "domain_pill.activitypub_like_language": "Tá GníomhaíochtPub cosúil leis an teanga a labhraíonn Mastodon le líonraí sóisialta eile.", diff --git a/app/javascript/mastodon/locales/gd.json b/app/javascript/mastodon/locales/gd.json index 8f51d43ef8581b..ecbc11f3a2b7fa 100644 --- a/app/javascript/mastodon/locales/gd.json +++ b/app/javascript/mastodon/locales/gd.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Chan urrainn do neach sam bith a th’ air an fhrithealaiche seo do leantainn.", "domain_block_modal.they_wont_know": "Cha bhi fios aca gun deach am bacadh.", "domain_block_modal.title": "A bheil thu airson an àrainn a bhacadh?", - "domain_block_modal.you_will_lose_followers": "Thèid a h-uile neach-leantainn agad a th’ air an fhrithealaiche seo a thoirt air falbh.", "domain_block_modal.you_wont_see_posts": "Chan fhaic thu postaichean no brathan o chleachdaichean a th’ air an fhrithealaiche seo.", "domain_pill.activitypub_lets_connect": "Leigidh e leat ceangal a dhèanamh ri daoine chan ann air Mastodon a-mhàin ach air feadh aplacaidean sòisealta eile cuideachd agus conaltradh leotha.", "domain_pill.activitypub_like_language": "Tha ActivityPub coltach ri cànan a bhruidhneas Mastodon ri lìonraidhean sòisealta eile.", diff --git a/app/javascript/mastodon/locales/gl.json b/app/javascript/mastodon/locales/gl.json index f2ea6ee9001531..aa3a78fce8f897 100644 --- a/app/javascript/mastodon/locales/gl.json +++ b/app/javascript/mastodon/locales/gl.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Ninguén deste servidor pode seguirte.", "domain_block_modal.they_wont_know": "Non saberá que a bloqueaches.", "domain_block_modal.title": "Bloquear dominio?", - "domain_block_modal.you_will_lose_followers": "Vanse eliminar todas as túas seguidoras deste servidor.", + "domain_block_modal.you_will_lose_num_followers": "Vas perder {followersCount, plural, one {{followersCountDisplay} seguidora} other {{followersCountDisplay} seguidoras}} e {followingCount, plural, one {{followingCountDisplay} persoa que segues} other {{followingCountDisplay} persoas que segues}}.", "domain_block_modal.you_wont_see_posts": "Non verás publicacións ou notificacións das usuarias deste servidor.", "domain_pill.activitypub_lets_connect": "Permíteche conectar e interactuar con persoas non só de Mastodon, se non tamén con outras sociais.", "domain_pill.activitypub_like_language": "ActivityPub é algo así como o idioma que Mastodon fala con outras redes sociais.", @@ -527,7 +527,7 @@ "notification.poll": "Rematou a enquisa na que votaches", "notification.reblog": "{name} compartiu a túa publicación", "notification.reblog.name_and_others_with_link": "{name} e {count, plural, one {# máis} other {# máis}} promoveron a túa publicación", - "notification.relationships_severance_event": "Perdeuse a conexión con {name}", + "notification.relationships_severance_event": "Relacións perdidas con {name}", "notification.relationships_severance_event.account_suspension": "A administración de {from} suspendeu a {target}, o que significa que xa non vas recibir actualizacións de esa conta ou interactuar con ela.", "notification.relationships_severance_event.domain_block": "A administración de {from} bloqueou a {target}, que inclúe a {followersCount} das túas seguidoras e a {followingCount, plural, one {# conta} other {# contas}} que sigues.", "notification.relationships_severance_event.learn_more": "Saber máis", diff --git a/app/javascript/mastodon/locales/he.json b/app/javascript/mastodon/locales/he.json index 6503d870e51221..4ce0d41620d5dc 100644 --- a/app/javascript/mastodon/locales/he.json +++ b/app/javascript/mastodon/locales/he.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "משתמש משרת זה לא יכול לעקוב אחריך.", "domain_block_modal.they_wont_know": "הם לא ידעו כי נחסמו.", "domain_block_modal.title": "לחסום שרת?", - "domain_block_modal.you_will_lose_followers": "כל עוקביך משרת זה יוסרו.", "domain_block_modal.you_wont_see_posts": "לא תוכלו לראות הודעות ממשתמשים על שרת זה.", "domain_pill.activitypub_lets_connect": "מאפשר לך להתחבר ולהתרועע עם אחרים לא רק במסטודון, אלא גם ביישומים חברתיים שונים אחרים.", "domain_pill.activitypub_like_language": "אקטיביטיפאב היא למעשה השפה בה מסטודון מדבר עם רשתות חברתיות אחרות.", diff --git a/app/javascript/mastodon/locales/hu.json b/app/javascript/mastodon/locales/hu.json index cb3517e3a38491..2e48cb626df40b 100644 --- a/app/javascript/mastodon/locales/hu.json +++ b/app/javascript/mastodon/locales/hu.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Erről a kiszolgálóról senki sem követhet.", "domain_block_modal.they_wont_know": "Nem fogja tudni, hogy letiltották.", "domain_block_modal.title": "Letiltsuk a domaint?", - "domain_block_modal.you_will_lose_followers": "Az ezen a kiszolgálón lévő összes követődet törölni fogjuk.", "domain_block_modal.you_wont_see_posts": "Nem látsz majd bejegyzéseket vagy értesítéseket ennek a kiszolgálónak a felhasználóitól.", "domain_pill.activitypub_lets_connect": "Lehetővé teszi, hogy kapcsolatba lépj nem csak a Mastodonon, hanem a más közösségi alkalmazásokon lévő emberekkel is.", "domain_pill.activitypub_like_language": "Az ActivityPub olyan mint egy nyelv, amelyet a Mastodon a más közösségi hálózatokkal való kommunikációra használ.", diff --git a/app/javascript/mastodon/locales/ia.json b/app/javascript/mastodon/locales/ia.json index 93bee9ec798e73..35482297f03b07 100644 --- a/app/javascript/mastodon/locales/ia.json +++ b/app/javascript/mastodon/locales/ia.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Necuno de iste servitor pote sequer te.", "domain_block_modal.they_wont_know": "Ille non sapera que ille ha essite blocate.", "domain_block_modal.title": "Blocar dominio?", - "domain_block_modal.you_will_lose_followers": "Tote tu sequitores de iste servitor essera removite.", "domain_block_modal.you_wont_see_posts": "Tu non videra messages e notificationes de usatores sur iste servitor.", "domain_pill.activitypub_lets_connect": "Illo te permitte connecter e interager con personas non solmente sur Mastodon, ma tamben sur altere applicationes social.", "domain_pill.activitypub_like_language": "ActivityPub es como le linguage commun que Mastodon parla con altere retes social.", diff --git a/app/javascript/mastodon/locales/id.json b/app/javascript/mastodon/locales/id.json index b6d01ec996386a..f5c71d4a36e3ca 100644 --- a/app/javascript/mastodon/locales/id.json +++ b/app/javascript/mastodon/locales/id.json @@ -219,7 +219,6 @@ "domain_block_modal.they_cant_follow": "Tidak ada seorangpun dari server ini yang dapat mengikuti anda.", "domain_block_modal.they_wont_know": "Mereka tidak akan tahu bahwa mereka diblokir.", "domain_block_modal.title": "Blokir domain?", - "domain_block_modal.you_will_lose_followers": "Semua pengikut anda dari server ini akan dihapus.", "domain_block_modal.you_wont_see_posts": "Anda tidak akan melihat postingan atau notifikasi dari pengguna di server ini.", "domain_pill.activitypub_lets_connect": "Ini memungkinkan anda terhubung dan berinteraksi dengan orang-orang tidak hanya di Mastodon, tetapi juga di berbagai aplikasi sosial.", "domain_pill.activitypub_like_language": "ActivityPub seperti bahasa yang digunakan Mastodon dengan jejaring sosial lainnya.", diff --git a/app/javascript/mastodon/locales/ie.json b/app/javascript/mastodon/locales/ie.json index 1439b851d31a91..d91c49e83f9bcb 100644 --- a/app/javascript/mastodon/locales/ie.json +++ b/app/javascript/mastodon/locales/ie.json @@ -206,7 +206,6 @@ "domain_block_modal.they_cant_follow": "Nequi de ti-ci servitor posse sequer te.", "domain_block_modal.they_wont_know": "Ne va esser conscient pri li bloccada.", "domain_block_modal.title": "Bloccar dominia?", - "domain_block_modal.you_will_lose_followers": "Omni tui sequitores de ti-ci servitor va esser efaciat.", "domain_block_modal.you_wont_see_posts": "Tu ne va vider postas ni notificationes de usatores sur ti-ci servitor.", "domain_pill.activitypub_lets_connect": "It possibilisa tui conexiones e interactiones con persones ne solmen sur Mastodon, ma anc tra diferent social aplis.", "domain_pill.activitypub_like_language": "ActivityPub es li lingue usat de Mastodon por parlar con altri social retages.", diff --git a/app/javascript/mastodon/locales/is.json b/app/javascript/mastodon/locales/is.json index 5f32b438dd7bc7..c78c5d78428216 100644 --- a/app/javascript/mastodon/locales/is.json +++ b/app/javascript/mastodon/locales/is.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Enginn frá þessum netþjóni getur fylgst með þér.", "domain_block_modal.they_wont_know": "Viðkomandi mun ekki vita að hann hafi verið útilokaður.", "domain_block_modal.title": "Útiloka lén?", - "domain_block_modal.you_will_lose_followers": "Allir fylgjendur þínir af þessum netþjóni verða fjarlægðir.", "domain_block_modal.you_wont_see_posts": "Þú munt ekki sjá neinar færslur eða tilkynningar frá notendum á þessum netþjóni.", "domain_pill.activitypub_lets_connect": "Það gerir þér kleift að tengjast og eiga í samskiptum við fólk, ekki bara á Mastodon, heldur einnig á mörgum öðrum mismunandi samfélagsmiðlum.", "domain_pill.activitypub_like_language": "ActivityPub er eins og tungumál sem Mastodon notar til að tala við önnur samfélagsnet.", diff --git a/app/javascript/mastodon/locales/it.json b/app/javascript/mastodon/locales/it.json index ec26d80be63fd6..fdb56f542e90fe 100644 --- a/app/javascript/mastodon/locales/it.json +++ b/app/javascript/mastodon/locales/it.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Nessuno da questo server può seguirti.", "domain_block_modal.they_wont_know": "Non sapranno di essere stati bloccati.", "domain_block_modal.title": "Bloccare il dominio?", - "domain_block_modal.you_will_lose_followers": "Tutti i tuoi seguaci da questo server verranno rimossi.", "domain_block_modal.you_wont_see_posts": "Non vedrai post o notifiche dagli utenti su questo server.", "domain_pill.activitypub_lets_connect": "Ti consente di connetterti e interagire con le persone non solo su Mastodon, ma anche su diverse app social.", "domain_pill.activitypub_like_language": "ActivityPub è come la lingua che Mastodon parla con altri social network.", diff --git a/app/javascript/mastodon/locales/ja.json b/app/javascript/mastodon/locales/ja.json index c3ddeed880e35e..f5e7cc9c0484c3 100644 --- a/app/javascript/mastodon/locales/ja.json +++ b/app/javascript/mastodon/locales/ja.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "このサーバーのユーザーはあなたをフォローできなくなります。", "domain_block_modal.they_wont_know": "ドメインブロックは相手からはわかりません。", "domain_block_modal.title": "ドメインをブロックしますか?", - "domain_block_modal.you_will_lose_followers": "このサーバーのフォロワーはすべてフォロー解除されます。", "domain_block_modal.you_wont_see_posts": "このサーバーのユーザーからの投稿や通知が閲覧できなくなります。", "domain_pill.activitypub_lets_connect": "Mastodonからほかのソーシャルアプリのユーザーへ、そのまた別のアプリのユーザーへと、それぞれが互いにつながり関わり合うことをこのActivityPubの仕組みが実現しています。", "domain_pill.activitypub_like_language": "ActivityPubとは、Mastodonがほかのサーバーと会話をするときにしゃべる「言葉」のようなものです。", diff --git a/app/javascript/mastodon/locales/ko.json b/app/javascript/mastodon/locales/ko.json index af1599572bff3a..87ea3cfabf8628 100644 --- a/app/javascript/mastodon/locales/ko.json +++ b/app/javascript/mastodon/locales/ko.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "이 서버의 누구도 나를 팔로우 할 수 없습니다.", "domain_block_modal.they_wont_know": "내가 차단했다는 사실을 모를 것입니다.", "domain_block_modal.title": "도메인을 차단할까요?", - "domain_block_modal.you_will_lose_followers": "이 서버에 있는 팔로워들이 모두 제거될 것입니다.", "domain_block_modal.you_wont_see_posts": "이 서버 사용자의 게시물이나 알림을 보지 않게 됩니다.", "domain_pill.activitypub_lets_connect": "이것은 마스토돈 뿐만이 아니라 다른 소셜 앱들을 넘나들며 사람들을 연결하고 상호작용 할 수 있게 합니다.", "domain_pill.activitypub_like_language": "액티비티펍은 마스토돈이 다른 소셜 네트워크와 대화할 때 쓰는 언어 같은 것입니다.", diff --git a/app/javascript/mastodon/locales/la.json b/app/javascript/mastodon/locales/la.json index d894cc01c68788..ac95b590e3b307 100644 --- a/app/javascript/mastodon/locales/la.json +++ b/app/javascript/mastodon/locales/la.json @@ -58,7 +58,6 @@ "disabled_account_banner.text": "Ratio tua {disabledAccount} debilitata est.", "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.", "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.", - "domain_block_modal.you_will_lose_followers": "Omnes sectatores tuī ex hoc servō removēbuntur.", "domain_block_modal.you_wont_see_posts": "Nuntios aut notificātiōnēs ab usoribus in hōc servō nōn vidēbis.", "domain_pill.activitypub_like_language": "ActivityPub est velut lingua quam Mastodon cum aliīs sociālibus rētibus loquitur.", "domain_pill.your_handle": "Tuus nominulus:", diff --git a/app/javascript/mastodon/locales/lad.json b/app/javascript/mastodon/locales/lad.json index 43da2ea16fddc6..c5026fa33b7738 100644 --- a/app/javascript/mastodon/locales/lad.json +++ b/app/javascript/mastodon/locales/lad.json @@ -215,7 +215,6 @@ "domain_block_modal.they_cant_follow": "Dingun de este sirvidor puede segirte.", "domain_block_modal.they_wont_know": "No savra ke tiene sido blokado.", "domain_block_modal.title": "Bloka el domeno?", - "domain_block_modal.you_will_lose_followers": "Se efasaran todos tus suivantes de este sirvidor.", "domain_block_modal.you_wont_see_posts": "No veras publikasyones ni avizos de utilizadores en este sirvidor.", "domain_pill.server": "Sirvidor", "domain_pill.their_handle": "Su alias:", diff --git a/app/javascript/mastodon/locales/lt.json b/app/javascript/mastodon/locales/lt.json index 632c33129a1b2f..7dcc3468026d2e 100644 --- a/app/javascript/mastodon/locales/lt.json +++ b/app/javascript/mastodon/locales/lt.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Niekas iš šio serverio negali tavęs sekti.", "domain_block_modal.they_wont_know": "Jie nežinos, kad buvo užblokuoti.", "domain_block_modal.title": "Blokuoti serverį?", - "domain_block_modal.you_will_lose_followers": "Visi tavo sekėjai iš šio serverio bus pašalinti.", "domain_block_modal.you_wont_see_posts": "Nematysi naudotojų įrašų ar pranešimų šiame serveryje.", "domain_pill.activitypub_lets_connect": "Tai leidžia tau prisijungti ir bendrauti su žmonėmis ne tik „Mastodon“ platformoje, bet ir įvairiose socialinėse programėlėse.", "domain_pill.activitypub_like_language": "„ActivityPub“ – tai tarsi kalba, kuria „Mastodon“ kalba su kitais socialiniais tinklais.", diff --git a/app/javascript/mastodon/locales/lv.json b/app/javascript/mastodon/locales/lv.json index 43fa8369f4232e..1e973ffd3ea5bf 100644 --- a/app/javascript/mastodon/locales/lv.json +++ b/app/javascript/mastodon/locales/lv.json @@ -215,7 +215,6 @@ "domain_block_modal.they_cant_follow": "Neviens šajā serverī nevar Tev sekot.", "domain_block_modal.they_wont_know": "Viņi nezinās, ka tikuši bloķēti.", "domain_block_modal.title": "Bloķēt domēnu?", - "domain_block_modal.you_will_lose_followers": "Tiks noņemti visi tavi sekotāji no šī servera.", "domain_pill.server": "Serveris", "domain_pill.username": "Lietotājvārds", "embed.instructions": "Iestrādā šo ziņu savā mājaslapā, kopējot zemāk redzamo kodu.", diff --git a/app/javascript/mastodon/locales/nl.json b/app/javascript/mastodon/locales/nl.json index f5f4a0a137896f..f8e98e865bf578 100644 --- a/app/javascript/mastodon/locales/nl.json +++ b/app/javascript/mastodon/locales/nl.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Niemand op deze server kan jou volgen.", "domain_block_modal.they_wont_know": "Ze krijgen niet te weten dat ze worden geblokkeerd.", "domain_block_modal.title": "Server blokkeren?", - "domain_block_modal.you_will_lose_followers": "Al jouw volgers van deze server worden ontvolgd.", + "domain_block_modal.you_will_lose_num_followers": "Je verliest {followersCount, plural, one {{followersCountDisplay} volger} other {{followersCountDisplay} volgers}} en {followingCount, plural, one {{followingCountDisplay} persoon die jij volgt} other {{followingCountDisplay} personen die jij volgt}}.", "domain_block_modal.you_wont_see_posts": "Je ziet geen berichten of meldingen meer van gebruikers op deze server.", "domain_pill.activitypub_lets_connect": "Het zorgt ervoor dat je niet alleen maar kunt verbinden en communiceren met mensen op Mastodon, maar ook met andere sociale apps.", "domain_pill.activitypub_like_language": "ActivityPub is de taal die Mastodon met andere sociale netwerken spreekt.", diff --git a/app/javascript/mastodon/locales/nn.json b/app/javascript/mastodon/locales/nn.json index 702154927d903e..9524dfd5585e45 100644 --- a/app/javascript/mastodon/locales/nn.json +++ b/app/javascript/mastodon/locales/nn.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Ingen på denne tenaren kan fylgja deg.", "domain_block_modal.they_wont_know": "Dei veit ikkje at dei er blokkerte.", "domain_block_modal.title": "Blokker domenet?", - "domain_block_modal.you_will_lose_followers": "Alle fylgjarane dine frå denne tenaren blir fjerna.", "domain_block_modal.you_wont_see_posts": "Du vil ikkje sjå innlegg eller varslingar frå brukarar på denne tenaren.", "domain_pill.activitypub_lets_connect": "Den lar deg kople til og samhandle med folk ikkje berre på Mastodon, men òg på tvers av forskjellige sosiale appar.", "domain_pill.activitypub_like_language": "ActivityPub er som språket Mastodon snakkar med andre sosiale nettverk.", diff --git a/app/javascript/mastodon/locales/no.json b/app/javascript/mastodon/locales/no.json index 1d0294cd7c02a0..8cd3387eaf968c 100644 --- a/app/javascript/mastodon/locales/no.json +++ b/app/javascript/mastodon/locales/no.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Ingen fra denne serveren kan følge deg.", "domain_block_modal.they_wont_know": "De kommer ikke til å få vite at du har valgt å blokkere dem.", "domain_block_modal.title": "Blokker domenet?", - "domain_block_modal.you_will_lose_followers": "Alle dine følgere fra denne serveren vil bli fjernet.", "domain_block_modal.you_wont_see_posts": "Du vil ikke se innlegg eller få varsler fra brukere på denne serveren.", "domain_pill.activitypub_lets_connect": "Den lar deg koble til og samhandle med folk ikke bare på Mastodon, men også på tvers av forskjellige sosiale apper.", "domain_pill.activitypub_like_language": "ActivityPub er liksom språket Mastodon snakker med andre sosiale nettverk.", diff --git a/app/javascript/mastodon/locales/pl.json b/app/javascript/mastodon/locales/pl.json index a4ee25250a97bc..452894079701ba 100644 --- a/app/javascript/mastodon/locales/pl.json +++ b/app/javascript/mastodon/locales/pl.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Nikt z tego serwera nie może Cię obserwować.", "domain_block_modal.they_wont_know": "Użytkownik nie dowie się, że został zablokowany.", "domain_block_modal.title": "Zablokować domenę?", - "domain_block_modal.you_will_lose_followers": "Wszyscy twoi obserwujący z tego serwera zostaną usunięci.", + "domain_block_modal.you_will_lose_num_followers": "Utracisz {followersCount, plural, one {jednego obserwującego} other {{followersCountDisplay} obserwujących}} i {followingCount, plural, one {jedną osobę którą obserwujesz} few {{followingCountDisplay} osoby które obserwujesz} other {{followingCountDisplay} osób które obserwujesz}}.", "domain_block_modal.you_wont_see_posts": "Nie zobaczysz postów ani powiadomień od użytkowników na tym serwerze.", "domain_pill.activitypub_lets_connect": "Pozwala połączyć się z ludźmi na Mastodonie, jak i na innych serwisach społecznościowych.", "domain_pill.activitypub_like_language": "ActivityPub jest językiem używanym przez Mastodon do wymiany danych z innymi serwisami społecznościowymi.", diff --git a/app/javascript/mastodon/locales/pt-BR.json b/app/javascript/mastodon/locales/pt-BR.json index 1eca63ac15c8c6..402c0b38b5a750 100644 --- a/app/javascript/mastodon/locales/pt-BR.json +++ b/app/javascript/mastodon/locales/pt-BR.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Ninguém deste servidor pode lhe seguir.", "domain_block_modal.they_wont_know": "Eles não saberão que foram bloqueados.", "domain_block_modal.title": "Dominio do bloco", - "domain_block_modal.you_will_lose_followers": "Todos os seus seguidores deste servidor serão removidos.", "domain_block_modal.you_wont_see_posts": "Você não verá postagens ou notificações de usuários neste servidor.", "domain_pill.activitypub_lets_connect": "Ele permite que você se conecte e interaja com pessoas não apenas no Mastodon, mas também em diferentes aplicativos sociais.", "domain_pill.activitypub_like_language": "ActivityPub é como a linguagem que o Mastodon fala com outras redes sociais.", diff --git a/app/javascript/mastodon/locales/pt-PT.json b/app/javascript/mastodon/locales/pt-PT.json index 80f5f9f13899cd..6be7e03b393d3a 100644 --- a/app/javascript/mastodon/locales/pt-PT.json +++ b/app/javascript/mastodon/locales/pt-PT.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Ninguém deste servidor pode segui-lo.", "domain_block_modal.they_wont_know": "Eles não saberão que foram bloqueados.", "domain_block_modal.title": "Bloquear domínio?", - "domain_block_modal.you_will_lose_followers": "Todos os seus seguidores deste servidor serão removidos.", "domain_block_modal.you_wont_see_posts": "Não verá publicações ou notificações de utilizadores neste servidor.", "domain_pill.activitypub_lets_connect": "Permite-lhe conectar e interagir com pessoas não só no Mastodon, mas também em diferentes aplicações sociais.", "domain_pill.activitypub_like_language": "O ActivityPub é como a linguagem que o Mastodon fala com outras redes sociais.", diff --git a/app/javascript/mastodon/locales/ru.json b/app/javascript/mastodon/locales/ru.json index 13661149299a33..9bd2ed5b4e7be7 100644 --- a/app/javascript/mastodon/locales/ru.json +++ b/app/javascript/mastodon/locales/ru.json @@ -220,7 +220,6 @@ "domain_block_modal.they_cant_follow": "Никто из этого сервера не может подписываться на вас.", "domain_block_modal.they_wont_know": "Он не будет знать, что его заблокировали.", "domain_block_modal.title": "Заблокировать домен?", - "domain_block_modal.you_will_lose_followers": "Все ваши подписчики с этого сервера будут удалены.", "domain_block_modal.you_wont_see_posts": "Вы не будете видеть записи или уведомления от пользователей на этом сервере.", "domain_pill.activitypub_lets_connect": "Это позволяет вам общаться и взаимодействовать с людьми не только на Mastodon, но и в различных социальных приложениях.", "domain_pill.activitypub_like_language": "ActivityPub как язык Mastodon говорит с другими социальными сетями.", diff --git a/app/javascript/mastodon/locales/sk.json b/app/javascript/mastodon/locales/sk.json index c989a7314c4555..ddf341584c0d85 100644 --- a/app/javascript/mastodon/locales/sk.json +++ b/app/javascript/mastodon/locales/sk.json @@ -34,7 +34,9 @@ "account.follow_back": "Sledovať späť", "account.followers": "Sledovatelia", "account.followers.empty": "Tento účet ešte nikto nesleduje.", + "account.followers_counter": "{count, plural, one {{counter} sledujúci} other {{counter} sledujúci}}", "account.following": "Sledovaný účet", + "account.following_counter": "{count, plural, one {{counter} sledovaných} other {{counter} sledovaných}}", "account.follows.empty": "Tento účet ešte nikoho nesleduje.", "account.go_to_profile": "Prejsť na profil", "account.hide_reblogs": "Skryť zdieľania od @{name}", @@ -60,6 +62,7 @@ "account.requested_follow": "{name} vás chce sledovať", "account.share": "Zdieľaj profil @{name}", "account.show_reblogs": "Zobrazovať zdieľania od @{name}", + "account.statuses_counter": "{count, plural, one {{counter} príspevok} other {{counter} príspevkov}}", "account.unblock": "Odblokovať @{name}", "account.unblock_domain": "Odblokovať doménu {domain}", "account.unblock_short": "Odblokovať", @@ -215,7 +218,6 @@ "domain_block_modal.they_cant_follow": "Nikto z tohoto servera ťa nemôže nasledovať.", "domain_block_modal.they_wont_know": "Nebude vedieť, že bol/a zablokovaný/á.", "domain_block_modal.title": "Blokovať doménu?", - "domain_block_modal.you_will_lose_followers": "Všetci tvoji nasledovatelia z tohto servera budú odstránení.", "domain_block_modal.you_wont_see_posts": "Neuvidíš príspevky, ani oboznámenia od užívateľov na tomto serveri.", "domain_pill.activitypub_like_language": "ActivityPub je ako jazyk, ktorým Mastodon hovorí s ostatnými sociálnymi sieťami.", "domain_pill.server": "Server", @@ -418,6 +420,7 @@ "lists.subheading": "Vaše zoznamy", "load_pending": "{count, plural, one {# nová položka} few {# nové položky} many {# nových položiek} other {# nových položiek}}", "loading_indicator.label": "Načítavanie…", + "media_gallery.hide": "Skryť", "moved_to_account_banner.text": "Váš účet {disabledAccount} je momentálne deaktivovaný, pretože ste sa presunuli na {movedToAccount}.", "mute_modal.hide_from_notifications": "Ukryť z upozornení", "mute_modal.hide_options": "Skryť možnosti", diff --git a/app/javascript/mastodon/locales/sl.json b/app/javascript/mastodon/locales/sl.json index 43042ca998d4c6..71bee6822b3c64 100644 --- a/app/javascript/mastodon/locales/sl.json +++ b/app/javascript/mastodon/locales/sl.json @@ -217,7 +217,6 @@ "domain_block_modal.they_cant_follow": "Nihče s tega strežnika vam ne more slediti.", "domain_block_modal.they_wont_know": "Ne bodo vedeli, da so blokirani.", "domain_block_modal.title": "Blokiraj domeno?", - "domain_block_modal.you_will_lose_followers": "Vsi vaši sledilci s tega strežnika bodo odstranjeni.", "domain_block_modal.you_wont_see_posts": "Objav ali obvestil uporabnikov s tega strežnika ne boste videli.", "domain_pill.activitypub_lets_connect": "Omogoča vam povezovanje in interakcijo z ljudmi, ki niso samo na Mastodonu, ampak tudi na drugih družabnih platformah.", "domain_pill.activitypub_like_language": "Protokol ActivityPub je kot jezik, s katerim se Mastodon pogovarja z drugimi družabnimi omrežji.", diff --git a/app/javascript/mastodon/locales/sq.json b/app/javascript/mastodon/locales/sq.json index c5e42aae77939c..2195e6bf9abe12 100644 --- a/app/javascript/mastodon/locales/sq.json +++ b/app/javascript/mastodon/locales/sq.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "S’mund t’ju ndjekë askush nga ky shërbyes.", "domain_block_modal.they_wont_know": "S’do ta dinë se janë bllokuar.", "domain_block_modal.title": "Të bllokohet përkatësia?", - "domain_block_modal.you_will_lose_followers": "Krejt ndjekësit tuaj nga ky shërbyes do të hiqen.", + "domain_block_modal.you_will_lose_num_followers": "Do të humbni {followersCount, plural, one {{followersCountDisplay} ndjekës} other {{followersCountDisplay} ndjekës}} dhe {followingCount, plural, one {{followingCountDisplay} person që ndiqni} other {{followingCountDisplay} vetë që ndiqni}}.", "domain_block_modal.you_wont_see_posts": "S’do të shihni postime, apo njoftime nga përdorues në këtë shërbyes.", "domain_pill.activitypub_lets_connect": "Ju lejon të lidheni dhe ndërveproni me persona jo thjesht në Mastodon, por edhe nëpër aplikacione të ndryshme shoqërore.", "domain_pill.activitypub_like_language": "ActivityPub është si gjuha me të cilën Mastodon-i komunikon me rrjete të tjerë shoqërorë.", @@ -434,6 +434,8 @@ "lightbox.close": "Mbylle", "lightbox.next": "Pasuesja", "lightbox.previous": "E mëparshmja", + "lightbox.zoom_in": "Ktheje në madhësinë origjinale", + "lightbox.zoom_out": "Zmadhoje të përshtatet", "limited_account_hint.action": "Shfaqe profilin sido qoftë", "limited_account_hint.title": "Ky profil është fshehur nga moderatorët e {domain}.", "link_preview.author": "Nga {name}", diff --git a/app/javascript/mastodon/locales/sr-Latn.json b/app/javascript/mastodon/locales/sr-Latn.json index e701da60789bc9..1053d581c323f5 100644 --- a/app/javascript/mastodon/locales/sr-Latn.json +++ b/app/javascript/mastodon/locales/sr-Latn.json @@ -209,7 +209,6 @@ "domain_block_modal.they_cant_follow": "Niko sa ovog servera ne može da vas prati.", "domain_block_modal.they_wont_know": "Neće znati da su blokirani.", "domain_block_modal.title": "Blokirati domen?", - "domain_block_modal.you_will_lose_followers": "Svi vaši pratioci sa ovog servera će biti uklonjeni.", "domain_block_modal.you_wont_see_posts": "Nećete videti objave ili obaveštenja korisnika na ovom serveru.", "domain_pill.activitypub_lets_connect": "Omogućuje vam da se povežete i komunicirate sa ljudima ne samo na Mastodon-u, već i u različitim društvenim aplikacijama.", "domain_pill.activitypub_like_language": "ActivityPub je kao jezik kojim Mastodon govori sa drugim društvenim mrežama.", diff --git a/app/javascript/mastodon/locales/sr.json b/app/javascript/mastodon/locales/sr.json index fd13c4ee5c1a5c..9529c41fe301df 100644 --- a/app/javascript/mastodon/locales/sr.json +++ b/app/javascript/mastodon/locales/sr.json @@ -209,7 +209,6 @@ "domain_block_modal.they_cant_follow": "Нико са овог сервера не може да вас прати.", "domain_block_modal.they_wont_know": "Неће знати да су блокирани.", "domain_block_modal.title": "Блокирати домен?", - "domain_block_modal.you_will_lose_followers": "Сви ваши пратиоци са овог сервера ће бити уклоњени.", "domain_block_modal.you_wont_see_posts": "Нећете видети објаве или обавештења корисника на овом серверу.", "domain_pill.activitypub_lets_connect": "Омогућује вам да се повежете и комуницирате са људима не само на Mastodon-у, већ и у различитим друштвеним апликацијама.", "domain_pill.activitypub_like_language": "ActivityPub је као језик којим Mastodon говори са другим друштвеним мрежама.", diff --git a/app/javascript/mastodon/locales/sv.json b/app/javascript/mastodon/locales/sv.json index 6bb0b1424abd0d..b1e5a95edf55a2 100644 --- a/app/javascript/mastodon/locales/sv.json +++ b/app/javascript/mastodon/locales/sv.json @@ -219,7 +219,6 @@ "domain_block_modal.they_cant_follow": "Ingen från denna server kan följa dig.", "domain_block_modal.they_wont_know": "De kommer inte veta att de har blockerats.", "domain_block_modal.title": "Blockera domän?", - "domain_block_modal.you_will_lose_followers": "Alla dina följare från denna server kommer att tas bort.", "domain_block_modal.you_wont_see_posts": "Du kommer inte att se inlägg eller meddelanden från användare på den här servern.", "domain_pill.activitypub_lets_connect": "Det låter dig ansluta och interagera med människor inte bara på Mastodon, men även på andra sociala appar.", "domain_pill.activitypub_like_language": "ActivityPub är som språket Mastodon talar med andra sociala nätverk.", diff --git a/app/javascript/mastodon/locales/th.json b/app/javascript/mastodon/locales/th.json index d446cacb92dc86..68b64ca54863c3 100644 --- a/app/javascript/mastodon/locales/th.json +++ b/app/javascript/mastodon/locales/th.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "ไม่มีใครจากเซิร์ฟเวอร์นี้สามารถติดตามคุณ", "domain_block_modal.they_wont_know": "เขาจะไม่ทราบว่ามีการปิดกั้นเขา", "domain_block_modal.title": "ปิดกั้นโดเมน?", - "domain_block_modal.you_will_lose_followers": "จะเอาผู้ติดตามทั้งหมดของคุณจากเซิร์ฟเวอร์นี้ออก", "domain_block_modal.you_wont_see_posts": "คุณจะไม่เห็นโพสต์หรือการแจ้งเตือนจากผู้ใช้ในเซิร์ฟเวอร์นี้", "domain_pill.activitypub_lets_connect": "โปรโตคอลช่วยให้คุณเชื่อมต่อและโต้ตอบกับผู้คนไม่ใช่แค่ใน Mastodon แต่ทั่วทั้งแอปสังคมต่าง ๆ เช่นกัน", "domain_pill.activitypub_like_language": "ActivityPub เป็นเหมือนภาษาที่ Mastodon พูดกับเครือข่ายสังคมอื่น ๆ", diff --git a/app/javascript/mastodon/locales/tok.json b/app/javascript/mastodon/locales/tok.json index 9f203881823e93..ba5395b7bd3d0f 100644 --- a/app/javascript/mastodon/locales/tok.json +++ b/app/javascript/mastodon/locales/tok.json @@ -163,7 +163,6 @@ "dismissable_banner.explore_tags": "suni ni la jan mute li lukin e toki pi toki ni. jan mute li kepeken toki la toki ni li lon sewi.", "dismissable_banner.public_timeline": "toki ni li sin. jan li pali e toki ni la jan ante mute pi ma {domain} li kute e jan ni.", "domain_block_modal.block": "o weka e ma", - "domain_block_modal.you_will_lose_followers": "ma ni la jan alasa ale sina li weka", "domain_block_modal.you_wont_see_posts": "sina ken ala lukin e toki tan jan pi ma ni", "domain_pill.server": "ma", "domain_pill.username": "nimi jan", diff --git a/app/javascript/mastodon/locales/tr.json b/app/javascript/mastodon/locales/tr.json index bdb2de0ef11378..509dbc7a217781 100644 --- a/app/javascript/mastodon/locales/tr.json +++ b/app/javascript/mastodon/locales/tr.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Bu sunucudan hiç kimse sizi takip edemez.", "domain_block_modal.they_wont_know": "Engellendiklerini bilmeyecekler.", "domain_block_modal.title": "Alan adını engelle?", - "domain_block_modal.you_will_lose_followers": "Bu sunucudaki tüm takipçileriniz kaldırılacaktır.", + "domain_block_modal.you_will_lose_num_followers": "{followersCount, plural, one {{followersCountDisplay} takipçi} other {{followersCountDisplay} takipçi}} ve {followingCount, plural, one {{followingCountDisplay} takip ettiğiniz kişi} other {{followingCountDisplay} takip ettiğiniz kişi}} kaybedeceksiniz.", "domain_block_modal.you_wont_see_posts": "Bu sunucudaki kullanıcılardan gelen gönderileri veya bildirimleri göremezsiniz.", "domain_pill.activitypub_lets_connect": "Sadece Mastodon üzerindeki değil, diğer sosyal uygulamalardaki kişilerle de bağlantı kurmanıza ve etkileşmenize olanak sağlar.", "domain_pill.activitypub_like_language": "ActivityPub, Mastodon'un diğer sosyal ağlarla konuşmak için kullandığı dil gibidir.", diff --git a/app/javascript/mastodon/locales/uk.json b/app/javascript/mastodon/locales/uk.json index 3bf8d00248b362..1b5dbb4c9bffeb 100644 --- a/app/javascript/mastodon/locales/uk.json +++ b/app/javascript/mastodon/locales/uk.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "Ніхто з цього сервера не може слідкувати за вами.", "domain_block_modal.they_wont_know": "Вони не знають, що їх заблоковано.", "domain_block_modal.title": "Заблокувати домен?", - "domain_block_modal.you_will_lose_followers": "Усіх ваших підписників з цього сервера буде вилучено.", "domain_block_modal.you_wont_see_posts": "Ви не бачитимете дописів і сповіщень від користувачів на цьому сервері.", "domain_pill.activitypub_lets_connect": "Це дозволяє вам спілкуватися та взаємодіяти з людьми не лише на Mastodon, але й у різних соціальних застосунках.", "domain_pill.activitypub_like_language": "ActivityPub - це як мова, якою Mastodon розмовляє з іншими соціальними мережами.", diff --git a/app/javascript/mastodon/locales/vi.json b/app/javascript/mastodon/locales/vi.json index 04b73e78fa4a09..9c5c9ae1e4fc51 100644 --- a/app/javascript/mastodon/locales/vi.json +++ b/app/javascript/mastodon/locales/vi.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "Không ai trên máy chủ này có thể theo dõi bạn.", "domain_block_modal.they_wont_know": "Họ sẽ không biết đã bị bạn chặn.", "domain_block_modal.title": "Chặn máy chủ?", - "domain_block_modal.you_will_lose_followers": "Những người theo dõi bạn ở máy chủ này sẽ bị xóa.", + "domain_block_modal.you_will_lose_num_followers": "Bạn sẽ mất {followersCount, plural, other {{followersCountDisplay} người theo dõi}} và {followingCount, plural, other {{followingCountDisplay} người bạn theo dõi}}.", "domain_block_modal.you_wont_see_posts": "Bạn sẽ không thấy tút hoặc thông báo từ thành viên máy chủ này.", "domain_pill.activitypub_lets_connect": "Nó cho phép bạn kết nối và tương tác với mọi người không chỉ trên Mastodon mà còn trên các ứng dụng xã hội khác.", "domain_pill.activitypub_like_language": "ActivityPub giống như ngôn ngữ Mastodon giao tiếp với các mạng xã hội khác.", diff --git a/app/javascript/mastodon/locales/zh-CN.json b/app/javascript/mastodon/locales/zh-CN.json index a7cd0899480b1f..1f539727f96ac0 100644 --- a/app/javascript/mastodon/locales/zh-CN.json +++ b/app/javascript/mastodon/locales/zh-CN.json @@ -221,7 +221,6 @@ "domain_block_modal.they_cant_follow": "此服务器上没有人可以关注你。", "domain_block_modal.they_wont_know": "他们不会知道自己被屏蔽。", "domain_block_modal.title": "屏蔽该域名?", - "domain_block_modal.you_will_lose_followers": "该服务器上你的所有关注者都会被删除。", "domain_block_modal.you_wont_see_posts": "你将不会看到此服务器上用户的嘟文或通知。", "domain_pill.activitypub_lets_connect": "它让你不仅能与Mastodon上的人交流互动,还能与其它不同社交应用上的人联系。", "domain_pill.activitypub_like_language": "ActivityPub就像Mastodon与其它社交网络交流时使用的语言。", diff --git a/app/javascript/mastodon/locales/zh-HK.json b/app/javascript/mastodon/locales/zh-HK.json index 22f51a84134548..a081e5589706ff 100644 --- a/app/javascript/mastodon/locales/zh-HK.json +++ b/app/javascript/mastodon/locales/zh-HK.json @@ -208,7 +208,6 @@ "domain_block_modal.they_cant_follow": "此伺服器的人無法追蹤你。", "domain_block_modal.they_wont_know": "對方不會知道自己被封鎖。", "domain_block_modal.title": "封鎖網域?", - "domain_block_modal.you_will_lose_followers": "你在此伺服器的所有追蹤者都將會被移除。", "domain_block_modal.you_wont_see_posts": "你將看不到此伺服器使用者的帖文和通知。", "domain_pill.activitypub_lets_connect": "這讓你不僅能在 Mastodon 上,也能在其他社交應用程式中與人交流互動。", "domain_pill.activitypub_like_language": "ActivityPub 就像 Mastodon 與其他社交網絡溝通所用的語言。", diff --git a/app/javascript/mastodon/locales/zh-TW.json b/app/javascript/mastodon/locales/zh-TW.json index 7f2caeaf4b30c1..c585f98b6eb40d 100644 --- a/app/javascript/mastodon/locales/zh-TW.json +++ b/app/javascript/mastodon/locales/zh-TW.json @@ -221,7 +221,7 @@ "domain_block_modal.they_cant_follow": "來自此伺服器之使用者將無法跟隨您。", "domain_block_modal.they_wont_know": "他們不會知道他們已被封鎖。", "domain_block_modal.title": "是否封鎖該網域?", - "domain_block_modal.you_will_lose_followers": "所有您來自此伺服器之跟隨者將被移除。", + "domain_block_modal.you_will_lose_num_followers": "您將會失去 {followersCount, plural, other {{followersCountDisplay} 個跟隨者}} 與 {followingCount, plural, other {{followingCountDisplay} 個您跟隨之帳號}}.", "domain_block_modal.you_wont_see_posts": "您不會見到來自此伺服器使用者之任何嘟文或推播通知。", "domain_pill.activitypub_lets_connect": "它使您能於 Mastodon 及其他不同的社群應用程式與人連結及互動。", "domain_pill.activitypub_like_language": "ActivityPub 像是 Mastodon 與其他社群網路溝通時所用的語言。", diff --git a/config/locales/activerecord.sk.yml b/config/locales/activerecord.sk.yml index 809d00647146db..68a9e447b9099c 100644 --- a/config/locales/activerecord.sk.yml +++ b/config/locales/activerecord.sk.yml @@ -15,6 +15,11 @@ sk: user/invite_request: text: Dôvod errors: + attributes: + domain: + invalid: nie je platný tvar domény + messages: + invalid_domain_on_line: "%{value} nie je platný tvar domény" models: account: attributes: diff --git a/config/locales/an.yml b/config/locales/an.yml index 2f181e0757da43..2db042f1b1ad30 100644 --- a/config/locales/an.yml +++ b/config/locales/an.yml @@ -1375,7 +1375,6 @@ an: delete: Borrar cuenta development: Desembolique edit_profile: Editar perfil - export: Exportar información featured_tags: Hashtags destacaus import: Importar import_and_export: Importar y exportar diff --git a/config/locales/ar.yml b/config/locales/ar.yml index 81705acba045d6..829855776d9afa 100644 --- a/config/locales/ar.yml +++ b/config/locales/ar.yml @@ -1719,7 +1719,6 @@ ar: delete: حذف الحسابات development: التطوير edit_profile: تعديل الصفحة التعريفية - export: تصدير البيانات featured_tags: الوسوم الشائعة import: استيراد import_and_export: استيراد وتصدير diff --git a/config/locales/ast.yml b/config/locales/ast.yml index a7d4a9917eebdb..72c5d9d75254ce 100644 --- a/config/locales/ast.yml +++ b/config/locales/ast.yml @@ -774,7 +774,6 @@ ast: back: Volver a Mastodon development: Desendolcu edit_profile: Edición del perfil - export: Esportación de datos featured_tags: Etiquetes destacaes import: Importación import_and_export: Importación y esportación diff --git a/config/locales/be.yml b/config/locales/be.yml index d45f443b75f06c..d1d3e17679f2d6 100644 --- a/config/locales/be.yml +++ b/config/locales/be.yml @@ -1722,7 +1722,6 @@ be: delete: Выдаленне ўліковага запісу development: Распрацоўка edit_profile: Рэдагаваць профіль - export: Экспарт даных featured_tags: Выбраныя хэштэгі import: Імпарт import_and_export: Імпарт і экспарт diff --git a/config/locales/bg.yml b/config/locales/bg.yml index e2c246827afb4b..00b3a41167cec1 100644 --- a/config/locales/bg.yml +++ b/config/locales/bg.yml @@ -1617,7 +1617,6 @@ bg: delete: Изтриване на акаунта development: Разработка edit_profile: Редактирай профила си - export: Експортиране на данни featured_tags: Актуални хаштагове import: Импортиране import_and_export: Импортиране и експортиране diff --git a/config/locales/ca.yml b/config/locales/ca.yml index 33a1d4e88f7bfe..e0a68f7b46834e 100644 --- a/config/locales/ca.yml +++ b/config/locales/ca.yml @@ -1686,7 +1686,7 @@ ca: delete: Eliminació del compte development: Desenvolupament edit_profile: Edita el perfil - export: Exportació de dades + export: Exporta featured_tags: Etiquetes destacades import: Importació import_and_export: Importació i exportació diff --git a/config/locales/ckb.yml b/config/locales/ckb.yml index bc668d2ce4c7e4..88dadff0146769 100644 --- a/config/locales/ckb.yml +++ b/config/locales/ckb.yml @@ -907,7 +907,6 @@ ckb: delete: سڕینەوەی هەژمارە development: گەشەپێدان edit_profile: دەستکاری پرۆفایل - export: ناردن زانیاری featured_tags: هاشتاگی تایبەت import: هاوردن import_and_export: هاوردەکردن و ناردن diff --git a/config/locales/co.yml b/config/locales/co.yml index 58ddd7d01b593f..dad3e08ffd23d0 100644 --- a/config/locales/co.yml +++ b/config/locales/co.yml @@ -891,7 +891,6 @@ co: delete: Suppressione di u contu development: Sviluppu edit_profile: Mudificà u prufile - export: Spurtazione d’infurmazione featured_tags: Hashtag in vista import: Impurtazione import_and_export: Impurtazione è spurtazione diff --git a/config/locales/cs.yml b/config/locales/cs.yml index b7fc8ab1b0bc26..91fa517944d17c 100644 --- a/config/locales/cs.yml +++ b/config/locales/cs.yml @@ -1666,7 +1666,6 @@ cs: delete: Smazání účtu development: Vývoj edit_profile: Upravit profil - export: Export dat featured_tags: Zvýrazněné hashtagy import: Import import_and_export: Import a export diff --git a/config/locales/cy.yml b/config/locales/cy.yml index c2c193d9434292..1ae6aa08fff93a 100644 --- a/config/locales/cy.yml +++ b/config/locales/cy.yml @@ -1796,7 +1796,6 @@ cy: delete: Dileu cyfrif development: Datblygu edit_profile: Golygu proffil - export: Allforio data featured_tags: Prif hashnodau import: Mewnforio import_and_export: Mewnforio ac allforio diff --git a/config/locales/da.yml b/config/locales/da.yml index a177b97de76fd2..96b27c91b3a733 100644 --- a/config/locales/da.yml +++ b/config/locales/da.yml @@ -1692,7 +1692,7 @@ da: delete: Kontosletning development: Udvikling edit_profile: Redigér profil - export: Dataeksport + export: Eksport featured_tags: Udvalgte hashtags import: Import import_and_export: Import og eksport diff --git a/config/locales/de.yml b/config/locales/de.yml index 85e24c230ec339..5af77c431d6f8a 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -1692,7 +1692,6 @@ de: delete: Kontolöschung development: Entwicklung edit_profile: Profil bearbeiten - export: Exportieren featured_tags: Vorgestellte Hashtags import: Importieren import_and_export: Importieren und exportieren diff --git a/config/locales/doorkeeper.cy.yml b/config/locales/doorkeeper.cy.yml index 80cc022a0b0300..32f5055b6c0665 100644 --- a/config/locales/doorkeeper.cy.yml +++ b/config/locales/doorkeeper.cy.yml @@ -60,6 +60,7 @@ cy: error: title: Mae rhywbeth wedi mynd o'i le new: + prompt_html: Hoffai %{client_name} gael caniatâd i gael mynediad i'ch cyfrif. Dim ond os ydych chi'n adnabod ac yn ymddiried yn y ffynhonnell hon y dylech gymeradwyo'r cais hwn. review_permissions: Adolygu caniatâd title: Angen awdurdodi show: diff --git a/config/locales/doorkeeper.sq.yml b/config/locales/doorkeeper.sq.yml index 1fd9000aa2dc85..f98cf88c630c87 100644 --- a/config/locales/doorkeeper.sq.yml +++ b/config/locales/doorkeeper.sq.yml @@ -60,6 +60,7 @@ sq: error: title: Ndodhi një gabim new: + prompt_html: "%{client_name} do të donte leje të hyjë në llogarinë tuaj. Miratojeni këtë kërkesë vetëm nëse e njihni dhe e besoni këtë burim." review_permissions: Shqyrtoni leje title: Lypset autorizim show: diff --git a/config/locales/el.yml b/config/locales/el.yml index c119beec17fd7f..610ae4026512a7 100644 --- a/config/locales/el.yml +++ b/config/locales/el.yml @@ -1604,7 +1604,6 @@ el: delete: Διαγραφή λογαριασμού development: Ανάπτυξη edit_profile: Επεξεργασία προφίλ - export: Εξαγωγή δεδομένων featured_tags: Παρεχόμενες ετικέτες import: Εισαγωγή import_and_export: Εισαγωγή και εξαγωγή diff --git a/config/locales/en-GB.yml b/config/locales/en-GB.yml index 577978ce88d54f..21afcd990fc2e7 100644 --- a/config/locales/en-GB.yml +++ b/config/locales/en-GB.yml @@ -1692,7 +1692,6 @@ en-GB: delete: Account deletion development: Development edit_profile: Edit profile - export: Data export featured_tags: Featured hashtags import: Import import_and_export: Import and export diff --git a/config/locales/eo.yml b/config/locales/eo.yml index 2d03ce08a7f27c..7d0f66a0c06628 100644 --- a/config/locales/eo.yml +++ b/config/locales/eo.yml @@ -275,6 +275,7 @@ eo: filter_by_action: Filtri per ago filter_by_user: Filtri per uzanto title: Ĵurnalo de revizo + unavailable_instance: "(domajna nomo nedisponebla)" announcements: destroyed_msg: Anonco sukcese forigita! edit: @@ -412,6 +413,7 @@ eo: attempts_over_week: one: "%{count} provo ekde lasta semajno" other: "%{count} registroprovoj ekde lasta semajno" + created_msg: Sukcese blokita retpoŝta domajno delete: Forigi dns: types: @@ -420,6 +422,7 @@ eo: new: create: Aldoni domajnon resolve: Solvi domajnon + title: Bloki novan retpoŝtan domajnon not_permitted: Ne permesita resolved_through_html: Solvis tra %{domain} export_domain_allows: @@ -572,6 +575,7 @@ eo: silence_description_html: La konto estos videbla al nur personoj kiu jam sekvis ĝin au permane serĉo ĝin, ege limigante ĝian atingon. Malfermi ciujn raportojn kontra ĉi tiun konton. suspend_description_html: La konto kaj ciuj ĝiaj enhavoj estos neatingebla kaj poŝte forigitas, kaj interagi per ĝi estos neebla. Malfermi ciujn raportojn kontra ĉi tiu konto. actions_description_remote_html: Decidu kiun klopodon por solvi ĉi tiun raporton. Ĉi tiu efikas kiel nur via servilo komuniki per ĉi tiu fora konto kaj trakti ĝian enhavon. + actions_no_posts: Ĉi tiu raporto havas neniujn rilatajn afiŝojn por forigi add_to_report: Aldoni pli al raporto are_you_sure: Ĉu vi certas? assign_to_self: Asigni al mi @@ -608,6 +612,7 @@ eo: report: 'Signalo #%{id}' reported_account: Signalita konto reported_by: Signalita de + reported_with_application: Raportita per aplikaĵo resolved: Solvitaj resolved_msg: Signalo sukcese solvita! skip_to_actions: Salti al agoj @@ -804,6 +809,8 @@ eo: message_html: Estas pritraktataj datumbazaj migradoj. Bonvolu ekzekuti ilin por certigi, ke la apliko kondutas kiel atendite elasticsearch_preset: action: Legi dokumentaron + elasticsearch_preset_single_node: + action: Vidi dokumentadon elasticsearch_running_check: message_html: Ne eblas konekti Elasticsearch. Bonvolu kontroli ke ĝi funkcias, aǔ malŝaltu plentekstan serĉon elasticsearch_version_check: @@ -814,6 +821,8 @@ eo: message_html: Vi ne difinis iujn servilajn regulojn. sidekiq_process_check: message_html: Neniu Sidekiq-procezo por la %{value} vico + software_version_critical_check: + action: Vidi disponeblajn ĝisdatigojn upload_check_privacy_error: action: Klaku ĉi tie por pliaj informoj message_html: "Via retservilo estas misagordita. La privateco de viaj uzantoj estas en risko." @@ -975,7 +984,9 @@ eo: guide_link_text: Ĉiu povas kontribui. sensitive_content: Tikla enhavo application_mailer: + notification_preferences: Ŝanĝi retpoŝtajn preferojn salutation: "%{name}," + settings: 'Ŝanĝi retpoŝtajn preferojn: %{link}' unsubscribe: Malabonu view: 'Vidi:' view_profile: Vidi profilon @@ -994,8 +1005,11 @@ eo: help_html: Se vi havas problemojn solvi la CAPTCHA, vi povas kontakti nin per %{email} kaj ni povas helpi vin. title: Sekureckontrolo confirmations: + clicking_this_link: alklakante ĉi tiun ligilon login_link: ensaluti + registration_complete: Via registriĝo sur %{domain} nun finiĝis! welcome_title: Bonvenon, %{name}! + wrong_email_hint: Se tiu retadreso ne estas ĝusta, vi povas ŝanĝi ĝin en kontagordoj. delete_account: Forigi konton delete_account_html: Se vi deziras forigi vian konton, vi povas fari tion ĉi tie. Vi bezonos konfirmi vian peton. description: @@ -1016,6 +1030,7 @@ eo: or_log_in_with: Aŭ saluti per privacy_policy_agreement_html: Mi legis kaj konsentis pri privatpolitiko progress: + confirm: Konfirmi retadreson details: Viaj detaloj review: Niaj recenzoj rules: Akcepti regulojn @@ -1053,8 +1068,10 @@ eo: too_fast: Formularo sendita tro rapide, klopodu denove. use_security_key: Uzi sekurecan ŝlosilon author_attribution: + example_title: Ekzempla teksto more_from_html: Pli de %{name} s_blog: Blogo de %{name} + title: Atribuo de aŭtoro challenge: confirm: Daŭrigi hint_html: "Konsileto: Ni ne demandos pri via pasvorto ĝis 1 horo." @@ -1250,8 +1267,10 @@ eo: overwrite: Anstataŭigi overwrite_long: Anstataŭigi la nunajn registrojn per la novaj preface: Vi povas importi datumojn, kiujn vi eksportis el alia servilo, kiel liston de homoj, kiujn vi sekvas aŭ blokas. + recent_imports: Lastatempaj importoj states: finished: Finita + in_progress: Farata unconfirmed: Nekonfirmita status: Stato success: Viaj datumoj estis sukcese alŝutitaj kaj estos traktitaj kiel planite @@ -1541,7 +1560,6 @@ eo: delete: Konta forigo development: Evoluigado edit_profile: Redakti profilon - export: Eksporti datumojn featured_tags: Elstarigitaj kradvortoj import: Enporti import_and_export: Importi kaj eksporti @@ -1553,6 +1571,9 @@ eo: strikes: Kontroladmonoj two_factor_authentication: Dufaktora aŭtentigo webauthn_authentication: Sekurecaj ŝlosiloj + severed_relationships: + lost_followers: Perditaj sekvantoj + type: Evento statuses: attached: audio: @@ -1719,6 +1740,12 @@ eo: explanation: Jen kelkaj konsiloj por helpi vin komenci feature_action: Lerni pli follow_action: Sekvi + hashtags_title: Popularaj kradvortoj + hashtags_view_more: Vidi pli da popularaj kradvortoj + post_step: Salutu la mondon per teksto, fotoj, filmetoj aŭ balotenketoj. + post_title: Faru vian unuan afiŝon + share_step: Sciigu viajn amikojn kiel trovi vin sur Mastodon. + sign_in_action: Ensaluti subject: Bonvenon en Mastodon title: Bonvenon, %{name}! users: diff --git a/config/locales/es-AR.yml b/config/locales/es-AR.yml index 9f1dc46c9df8ce..01685f99fe30be 100644 --- a/config/locales/es-AR.yml +++ b/config/locales/es-AR.yml @@ -1692,7 +1692,6 @@ es-AR: delete: Eliminación de la cuenta development: Desarrollo edit_profile: Editar perfil - export: Exportación de datos featured_tags: Etiquetas destacadas import: Importar import_and_export: Importación y exportación diff --git a/config/locales/es-MX.yml b/config/locales/es-MX.yml index 0325757dca4390..a8ff5c6938be0c 100644 --- a/config/locales/es-MX.yml +++ b/config/locales/es-MX.yml @@ -1692,7 +1692,6 @@ es-MX: delete: Borrar cuenta development: Desarrollo edit_profile: Editar perfil - export: Exportar información featured_tags: Hashtags destacados import: Importar import_and_export: Importar y exportar diff --git a/config/locales/es.yml b/config/locales/es.yml index 2815ada77957ce..ab7fd3bc54de22 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -1692,7 +1692,6 @@ es: delete: Borrar cuenta development: Desarrollo edit_profile: Editar perfil - export: Exportar información featured_tags: Hashtags destacados import: Importar import_and_export: Importar y exportar diff --git a/config/locales/et.yml b/config/locales/et.yml index 60f98a471e37a2..b71e3ccb6878a9 100644 --- a/config/locales/et.yml +++ b/config/locales/et.yml @@ -1692,7 +1692,6 @@ et: delete: Konto kustutamine development: Arendus edit_profile: Muuda profiili - export: Andmete eksportimine featured_tags: Esile toodud sildid import: Impordi import_and_export: Import / eksport diff --git a/config/locales/eu.yml b/config/locales/eu.yml index 7c7f995a7143b1..e80207d46fc945 100644 --- a/config/locales/eu.yml +++ b/config/locales/eu.yml @@ -1592,7 +1592,6 @@ eu: delete: Kontuaren ezabaketa development: Garapena edit_profile: Editatu profila - export: Datuen esportazioa featured_tags: Nabarmendutako traolak import: Inportazioa import_and_export: Inportatu eta esportatu diff --git a/config/locales/fa.yml b/config/locales/fa.yml index c2c22af4c46a51..e7d932de113a84 100644 --- a/config/locales/fa.yml +++ b/config/locales/fa.yml @@ -1438,7 +1438,6 @@ fa: delete: پاک‌کردن حساب development: فرابری edit_profile: ویرایش نمایه - export: برون‌سپاری داده‌ها featured_tags: برچسب‌های برگزیده import: درون‌ریزی import_and_export: درون‌ریزی و برون‌بری diff --git a/config/locales/fi.yml b/config/locales/fi.yml index 5df82bff9fa440..9bd0f12241f6a8 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -1692,7 +1692,6 @@ fi: delete: Tilin poisto development: Kehitys edit_profile: Muokkaa profiilia - export: Vie tietoja featured_tags: Suositellut aihetunnisteet import: Tuo tietoja import_and_export: Tuonti ja vienti diff --git a/config/locales/fo.yml b/config/locales/fo.yml index ce21aa3be7c44f..50b4802bc7d78a 100644 --- a/config/locales/fo.yml +++ b/config/locales/fo.yml @@ -1692,7 +1692,6 @@ fo: delete: Striking av kontu development: Menning edit_profile: Rætta vanga - export: Útflyt dátur featured_tags: Varpaði frámerki import: Innflyt import_and_export: Innflyt og útflyt diff --git a/config/locales/fr-CA.yml b/config/locales/fr-CA.yml index 3f9252ffabff7b..6ab0ee66606d8f 100644 --- a/config/locales/fr-CA.yml +++ b/config/locales/fr-CA.yml @@ -1692,7 +1692,6 @@ fr-CA: delete: Suppression du compte development: Développement edit_profile: Modifier le profil - export: Export de données featured_tags: Hashtags mis en avant import: Import de données import_and_export: Import et export diff --git a/config/locales/fr.yml b/config/locales/fr.yml index cb76ae2243c33d..6e13466bfe0ee7 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -1692,7 +1692,6 @@ fr: delete: Suppression du compte development: Développement edit_profile: Modifier le profil - export: Export de données featured_tags: Hashtags mis en avant import: Import de données import_and_export: Import et export diff --git a/config/locales/fy.yml b/config/locales/fy.yml index 8b854494d4b555..0379af34e9afc9 100644 --- a/config/locales/fy.yml +++ b/config/locales/fy.yml @@ -1682,7 +1682,6 @@ fy: delete: Account fuortsmite development: Untwikkelers edit_profile: Profyl bewurkje - export: Eksportearje featured_tags: Utljochte hashtags import: Ymportearje import_and_export: Ymportearje en eksportearje diff --git a/config/locales/ga.yml b/config/locales/ga.yml index a6369354cd8a56..95136239328434 100644 --- a/config/locales/ga.yml +++ b/config/locales/ga.yml @@ -1770,7 +1770,6 @@ ga: delete: Scriosadh cuntais development: Forbairt edit_profile: Cuir an phróifíl in eagar - export: Easpórtáil sonraí featured_tags: Haischlib faoi thrácht import: Iompórtáil import_and_export: Iompórtáil agus easpórtáil diff --git a/config/locales/gd.yml b/config/locales/gd.yml index b5cbc4a73ed372..90d03c74e15fdb 100644 --- a/config/locales/gd.yml +++ b/config/locales/gd.yml @@ -1744,7 +1744,6 @@ gd: delete: Sguabadh às cunntais development: Leasachadh edit_profile: Deasaich a’ phròifil - export: Às-phortadh dàta featured_tags: Tagaichean hais brosnaichte import: Ion-phortadh import_and_export: Ion-phortadh ⁊ às-phortadh diff --git a/config/locales/gl.yml b/config/locales/gl.yml index 9813514a7bf6cf..2eadb2ba6b04a6 100644 --- a/config/locales/gl.yml +++ b/config/locales/gl.yml @@ -1692,7 +1692,7 @@ gl: delete: Eliminación da conta development: Desenvolvemento edit_profile: Editar perfil - export: Exportar datos + export: Exportar featured_tags: Cancelos destacados import: Importar import_and_export: Importar e exportar diff --git a/config/locales/he.yml b/config/locales/he.yml index 13a1f6f05d30d3..c7af22660f7b16 100644 --- a/config/locales/he.yml +++ b/config/locales/he.yml @@ -1744,7 +1744,6 @@ he: delete: מחיקת חשבון development: פיתוח edit_profile: עריכת פרופיל - export: יצוא מידע featured_tags: תגיות נבחרות import: יבוא import_and_export: יבוא ויצוא diff --git a/config/locales/hr.yml b/config/locales/hr.yml index 7dacf2007790f1..908cbf51c4328e 100644 --- a/config/locales/hr.yml +++ b/config/locales/hr.yml @@ -205,7 +205,6 @@ hr: delete: Brisanje računa development: Razvijanje edit_profile: Uredi profil - export: Izvoz podataka featured_tags: Istaknuti hashtagovi import: Uvezi import_and_export: Uvezi i izvezi diff --git a/config/locales/hu.yml b/config/locales/hu.yml index 9767c488345493..2f6a4c57783346 100644 --- a/config/locales/hu.yml +++ b/config/locales/hu.yml @@ -1692,7 +1692,6 @@ hu: delete: Fiók törlése development: Fejlesztőknek edit_profile: Profil szerkesztése - export: Adatok exportálása featured_tags: Kiemelt hashtagek import: Importálás import_and_export: Import és export diff --git a/config/locales/hy.yml b/config/locales/hy.yml index 1fda020c0790a4..201922d102c043 100644 --- a/config/locales/hy.yml +++ b/config/locales/hy.yml @@ -757,7 +757,6 @@ hy: delete: Հաշուի ջնջում development: Ծրագրավորում edit_profile: Խմբագրել պրոֆիլը - export: Տվյալների արտահանում featured_tags: Ընտրուած հէշթեգեր import: Ներմուծել import_and_export: Ներմուծել և արտահանել diff --git a/config/locales/ia.yml b/config/locales/ia.yml index 6632af061ec364..a8bc48b306a4b3 100644 --- a/config/locales/ia.yml +++ b/config/locales/ia.yml @@ -1675,7 +1675,6 @@ ia: delete: Deletion de conto development: Disveloppamento edit_profile: Modificar profilo - export: Exportation de datos featured_tags: Hashtags in evidentia import: Importar import_and_export: Importar e exportar diff --git a/config/locales/id.yml b/config/locales/id.yml index 96a5022a7c81da..6a005fddaae7dc 100644 --- a/config/locales/id.yml +++ b/config/locales/id.yml @@ -1347,7 +1347,6 @@ id: delete: Penghapusan akun development: Pengembangan edit_profile: Ubah profil - export: Expor data featured_tags: Tagar unggulan import: Impor import_and_export: Impor dan ekspor diff --git a/config/locales/ie.yml b/config/locales/ie.yml index 513a8eda7eb930..7e8140a374daff 100644 --- a/config/locales/ie.yml +++ b/config/locales/ie.yml @@ -1590,7 +1590,6 @@ ie: delete: Deletion de conto development: Developation edit_profile: Modificar profil - export: Exportation de data featured_tags: Recomandat hashtags import: Importar import_and_export: Importation e exportation diff --git a/config/locales/io.yml b/config/locales/io.yml index 97cc417df0f82e..dfb583450a6b88 100644 --- a/config/locales/io.yml +++ b/config/locales/io.yml @@ -1555,7 +1555,6 @@ io: delete: Kontoefaco development: Developo edit_profile: Redaktar la profilo - export: Exportacar datumi featured_tags: Estelata hashtagi import: Importacar import_and_export: Importaco e exportaco diff --git a/config/locales/is.yml b/config/locales/is.yml index 590805ad3027b0..4af26eea0b0cf6 100644 --- a/config/locales/is.yml +++ b/config/locales/is.yml @@ -1696,7 +1696,6 @@ is: delete: Eyðing notandaaðgangs development: Þróun edit_profile: Breyta notandasniði - export: Útflutningur gagna featured_tags: Myllumerki með aukið vægi import: Flytja inn import_and_export: Inn- og útflutningur diff --git a/config/locales/it.yml b/config/locales/it.yml index fe6fec17d778aa..9fdeede8bf5b91 100644 --- a/config/locales/it.yml +++ b/config/locales/it.yml @@ -1694,7 +1694,6 @@ it: delete: Cancellazione account development: Sviluppo edit_profile: Modifica profilo - export: Esportazione dati featured_tags: Hashtag in evidenza import: Importa import_and_export: Importa ed esporta diff --git a/config/locales/ja.yml b/config/locales/ja.yml index cdc1fd18a80043..41f93397da990f 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -1659,7 +1659,6 @@ ja: delete: アカウントの削除 development: 開発 edit_profile: プロフィールを編集 - export: データのエクスポート featured_tags: 注目のハッシュタグ import: データのインポート import_and_export: インポート・エクスポート diff --git a/config/locales/ka.yml b/config/locales/ka.yml index 576937507886d2..2a0365fbf52644 100644 --- a/config/locales/ka.yml +++ b/config/locales/ka.yml @@ -410,7 +410,6 @@ ka: delete: ანგარიშის გაუქმება development: დეველოპმენტი edit_profile: პროფილის ცვლილება - export: მონაცემის ექსპორტი import: იმპორტი migrate: ანგარიშის მიგრაცია preferences: პრეფერენციები diff --git a/config/locales/kab.yml b/config/locales/kab.yml index 88193f8434e19f..12bda84d463d2a 100644 --- a/config/locales/kab.yml +++ b/config/locales/kab.yml @@ -776,7 +776,6 @@ kab: delete: Tukksa n umiḍan development: Taneflit edit_profile: Ẓreg amaɣnu - export: Taktert n yisefka import: Kter import_and_export: Taktert d usifeḍ migrate: Tunigin n umiḍan diff --git a/config/locales/kk.yml b/config/locales/kk.yml index 67969d4d69eadf..537104ba51a90d 100644 --- a/config/locales/kk.yml +++ b/config/locales/kk.yml @@ -623,7 +623,6 @@ kk: delete: Аккаунт өшіру development: Жасаушы топ edit_profile: Профиль өңдеу - export: Экспорт уақыты featured_tags: Таңдаулы хэштегтер import: Импорт import_and_export: Импорт/экспорт diff --git a/config/locales/ko.yml b/config/locales/ko.yml index 216e4687620368..ba43310e02dbb0 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -1668,7 +1668,7 @@ ko: delete: 계정 삭제 development: 개발 edit_profile: 프로필 편집 - export: 데이터 내보내기 + export: 내보내기 featured_tags: 추천 해시태그 import: 데이터 가져오기 import_and_export: 가져오기 & 내보내기 diff --git a/config/locales/ku.yml b/config/locales/ku.yml index 08843f645e2078..ddd214441c352b 100644 --- a/config/locales/ku.yml +++ b/config/locales/ku.yml @@ -1369,7 +1369,6 @@ ku: delete: Jêbirina ajimêr development: Pêşdebir edit_profile: Profîlê serrast bike - export: Derxistinê daneyan featured_tags: Hashtagên bijarte import: Têxistin import_and_export: Têxistin û derxistin diff --git a/config/locales/lad.yml b/config/locales/lad.yml index 4136877edeb549..275bdab86100c7 100644 --- a/config/locales/lad.yml +++ b/config/locales/lad.yml @@ -1652,7 +1652,6 @@ lad: delete: Efasa kuento development: Dezvelopamiento edit_profile: Edita profil - export: Eksporta enformasyon featured_tags: Etiketas avaliadas import: Importo import_and_export: Importo i eksporto diff --git a/config/locales/lt.yml b/config/locales/lt.yml index fa07eb6f59dfc0..ef13817028e3c2 100644 --- a/config/locales/lt.yml +++ b/config/locales/lt.yml @@ -1090,7 +1090,6 @@ lt: delete: Paskyros trynimas development: Kūrimas edit_profile: Redaguoti profilį - export: Duomenų eksportas featured_tags: Rodomi saitažodžiai import: Importuoti import_and_export: Importas ir eksportas diff --git a/config/locales/lv.yml b/config/locales/lv.yml index 4aeec5ceca73dc..16844a95c2bd4c 100644 --- a/config/locales/lv.yml +++ b/config/locales/lv.yml @@ -1130,6 +1130,8 @@ lv: too_fast: Veidlapa ir iesniegta pārāk ātri, mēģini vēlreiz. use_security_key: Lietot drošības atslēgu author_attribution: + example_title: Parauga teksts + more_from_html: Vairāk no %{name} s_blog: "%{name} emuāri" title: Autora attiecinājums challenge: @@ -1650,20 +1652,23 @@ lv: delete: Konta dzēšana development: Izstrāde edit_profile: Labot profilu - export: Datu eksports featured_tags: Piedāvātie tēmturi import: Imports import_and_export: Imports un eksports migrate: Konta migrācija + notifications: E-pasta paziņojumi preferences: Iestatījumi profile: Profils relationships: Sekojamie un sekotāji + severed_relationships: Pārtrauktās attiecības statuses_cleanup: Automātiska ziņu dzēšana strikes: Moderācijas aizrādījumi two_factor_authentication: Divpakāpju autentifikācija webauthn_authentication: Drošības atslēgas severed_relationships: download: Lejupielādēt (%{count}) + lost_followers: Zaudētie sekotāji + lost_follows: Zaudētie sekojumi type: Notikums statuses: attached: @@ -1829,6 +1834,8 @@ lv: suspend: Konts apturēts welcome: apps_android_action: Iegūt to Google Play + apps_ios_action: Lejupielādēt no App Store + apps_step: Lejupielādēt mūsu oficiālās lietotnes. apps_title: Mastodon lietotnes edit_profile_action: Pielāgot edit_profile_title: Pielāgo savu profilu diff --git a/config/locales/ms.yml b/config/locales/ms.yml index 0c0ffb69bfc849..9994a34bb5eac5 100644 --- a/config/locales/ms.yml +++ b/config/locales/ms.yml @@ -1529,7 +1529,6 @@ ms: delete: Pemadaman akaun development: Pembangunan edit_profile: Sunting profil - export: Eksport data featured_tags: Tanda pagar terpilih import: Import import_and_export: Import dan eksport diff --git a/config/locales/my.yml b/config/locales/my.yml index 6acaa34cdc5c74..598915fad9019b 100644 --- a/config/locales/my.yml +++ b/config/locales/my.yml @@ -1529,7 +1529,6 @@ my: delete: အကောင့်ဖျက်သိမ်းခြင်း development: Development edit_profile: ပရိုဖိုင်ပြင်ဆင်ရန် - export: အချက်အလက်ထုတ်ယူခြင်း featured_tags: အသားပေးဖော်ပြထားသည့် ဟက်ရှ်တဂျ်များ import: ထည့်သွင်းခြင်း import_and_export: ထည့်သွင်းခြင်းနှင့် ထုတ်ယူခြင်း diff --git a/config/locales/nn.yml b/config/locales/nn.yml index dcf571a7923c46..98f62e123a707b 100644 --- a/config/locales/nn.yml +++ b/config/locales/nn.yml @@ -1692,7 +1692,6 @@ nn: delete: Kontosletting development: Utvikling edit_profile: Endr profil - export: Dataeksport featured_tags: Utvalgte emneknagger import: Hent inn import_and_export: Importer og eksporter diff --git a/config/locales/no.yml b/config/locales/no.yml index 1f0b6baccecfd8..ec0b14d5a3bfff 100644 --- a/config/locales/no.yml +++ b/config/locales/no.yml @@ -1584,7 +1584,6 @@ delete: Kontosletting development: Utvikling edit_profile: Endre profil - export: Dataeksport featured_tags: Utvalgte emneknagger import: Importér import_and_export: Importer og eksporter diff --git a/config/locales/oc.yml b/config/locales/oc.yml index 5cdd9240b01d97..a30126c44ba936 100644 --- a/config/locales/oc.yml +++ b/config/locales/oc.yml @@ -813,7 +813,6 @@ oc: delete: Supression de compte development: Desvolopament edit_profile: Modificar lo perfil - export: Exportar de donadas featured_tags: Etiquetas en avant import: Importar de donadas import_and_export: Import e export diff --git a/config/locales/pl.yml b/config/locales/pl.yml index 314adf885f8dc6..e68ea2b16acd1c 100644 --- a/config/locales/pl.yml +++ b/config/locales/pl.yml @@ -1744,7 +1744,6 @@ pl: delete: Usuń konto development: Tworzenie aplikacji edit_profile: Edytuj profil - export: Eksportowanie danych featured_tags: Wyróżnione hashtagi import: Importowanie danych import_and_export: Import i eksport diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml index 7742a80569c1c8..ba21dd1b3bb079 100644 --- a/config/locales/pt-BR.yml +++ b/config/locales/pt-BR.yml @@ -1692,7 +1692,6 @@ pt-BR: delete: Exclusão de conta development: Desenvolvimento edit_profile: Editar perfil - export: Exportar dados featured_tags: Hashtags em destaque import: Importar import_and_export: Importar e exportar diff --git a/config/locales/pt-PT.yml b/config/locales/pt-PT.yml index d6c5c4a6ff01f7..6b48e8de26b48e 100644 --- a/config/locales/pt-PT.yml +++ b/config/locales/pt-PT.yml @@ -1679,7 +1679,6 @@ pt-PT: delete: Eliminação da conta development: Desenvolvimento edit_profile: Editar perfil - export: Exportar dados featured_tags: Etiquetas destacadas import: Importar import_and_export: Importar e exportar diff --git a/config/locales/ru.yml b/config/locales/ru.yml index 387772749006e1..c61c7f459fcf3e 100644 --- a/config/locales/ru.yml +++ b/config/locales/ru.yml @@ -1741,7 +1741,6 @@ ru: delete: Удаление учётной записи development: Разработчикам edit_profile: Изменить профиль - export: Экспорт данных featured_tags: Избранные хэштеги import: Импорт import_and_export: Импорт и экспорт diff --git a/config/locales/sc.yml b/config/locales/sc.yml index 780270ddf17b2e..306e670b7182ca 100644 --- a/config/locales/sc.yml +++ b/config/locales/sc.yml @@ -1080,7 +1080,6 @@ sc: delete: Eliminatzione de su contu development: Isvilupu edit_profile: Modìfica profilu - export: Esportatzione de datos featured_tags: Etichetas in evidèntzia import: Importatzione import_and_export: Importatzione e esportatzione diff --git a/config/locales/sco.yml b/config/locales/sco.yml index 97eaa21ed6d0d6..8cc733a4acc2a2 100644 --- a/config/locales/sco.yml +++ b/config/locales/sco.yml @@ -1359,7 +1359,6 @@ sco: delete: Accoont deletion development: Development edit_profile: Edit profile - export: Data export featured_tags: Featured hashtags import: Import import_and_export: Import an export diff --git a/config/locales/si.yml b/config/locales/si.yml index 8460de01da9f6a..270e0ae3fc4e31 100644 --- a/config/locales/si.yml +++ b/config/locales/si.yml @@ -1234,7 +1234,6 @@ si: delete: ගිණුම මැකීම development: සංවර්ධනය edit_profile: පැතිකඩ සංස්කරණය - export: දත්ත නිර්යාතය featured_tags: විශේෂාංගගත හැෂ් ටැග් import: ආයාතය import_and_export: ආයාත හා නිර්යාත diff --git a/config/locales/simple_form.es-MX.yml b/config/locales/simple_form.es-MX.yml index f2108828d5643b..8c84e35a4d1880 100644 --- a/config/locales/simple_form.es-MX.yml +++ b/config/locales/simple_form.es-MX.yml @@ -79,14 +79,14 @@ es-MX: form_admin_settings: activity_api_enabled: Conteo de publicaciones publicadas localmente, usuarios activos, y nuevos registros en periodos semanales app_icon: WEBP, PNG, GIF o JPG. Reemplaza el icono de aplicación predeterminado en dispositivos móviles con un icono personalizado. - backups_retention_period: Los usuarios tienen la capacidad de generar archivos de sus mensajes para descargar más adelante. Cuando se establece un valor positivo, estos archivos se eliminarán automáticamente del almacenamiento después del número de días especificado. + backups_retention_period: Los usuarios tienen la posibilidad de generar archivos de sus mensajes para descargarlos más adelante. Cuando se establece en un valor positivo, estos archivos se eliminarán automáticamente del almacenamiento después del número especificado de días. bootstrap_timeline_accounts: Estas cuentas aparecerán en la parte superior de las recomendaciones de los nuevos usuarios. closed_registrations_message: Mostrado cuando los registros están cerrados - content_cache_retention_period: Todas las publicaciones de otros servidores (incluso impulsos y respuestas) se eliminarán después del número de días especificado, sin tener en cuenta la interacción del usuario local con esos mensajes. Esto incluye mensajes donde un usuario local los ha marcado como marcadores o favoritos. Las menciones privadas entre usuarios de diferentes instancias también se perderán sin posibilidad de recuperación. El uso de esta configuración está destinado a instancias de propósito especial, y rompe muchas expectativas de los usuarios cuando se implementa para un uso de propósito general. + content_cache_retention_period: Todas las publicaciones de otros servidores (incluyendo impuestos y respuestas) serán borrados después del número de días especificado, sin tener en cuenta cualquier interacción del usuario local con esas publicaciones. Esto incluye los mensajes que un usuario local haya marcado como favoritos. Las menciones privadas entre usuarios de diferentes instancias también se perderán y será imposible restaurarlas. El uso de esta configuración está pensado para instancias de propósito especial y rompe muchas expectativas de los usuarios cuando se implementa para uso general. custom_css: Puedes aplicar estilos personalizados a la versión web de Mastodon. favicon: WEBP, PNG, GIF o JPG. Reemplaza el icono predeterminado de Mastodon con un icono personalizado. mascot: Reemplaza la ilustración en la interfaz web avanzada. - media_cache_retention_period: Los archivos multimedia de las publicaciones creadas por usuarios remotos se almacenan en caché en tu servidor. Cuando se establece un valor positivo, estos archivos se eliminarán después del número especificado de días. Si los datos multimedia se solicitan después de eliminarse, se volverán a descargar, si el contenido fuente todavía está disponible. Debido a restricciones en la frecuencia con la que las tarjetas de previsualización de enlaces realizan peticiones a sitios de terceros, se recomienda establecer este valor a al menos 14 días, o las tarjetas de previsualización de enlaces no se actualizarán bajo demanda antes de ese momento. + media_cache_retention_period: Los archivos multimedia de las publicaciones realizadas por usuarios remotos se almacenan en caché en su servidor. Si se establece en un valor positivo, los archivos multimedia se eliminarán tras el número de días especificado. Si los datos multimedia se solicitan después de haber sido eliminados, se volverán a descargar, si el contenido de origen sigue estando disponible. Debido a las restricciones sobre la frecuencia con la que las tarjetas de previsualización de enlaces sondean sitios de terceros, se recomienda establecer este valor en al menos 14 días, o las tarjetas de previsualización de enlaces no se actualizarán bajo demanda antes de ese tiempo. peers_api_enabled: Una lista de nombres de dominio que este servidor ha encontrado en el fediverso. Aquí no se incluye ningún dato sobre si usted federa con un servidor determinado, sólo que su servidor lo sabe. Esto es utilizado por los servicios que recopilan estadísticas sobre la federación en un sentido general. profile_directory: El directorio de perfiles lista a todos los usuarios que han optado por que su cuenta pueda ser descubierta. require_invite_text: Cuando los registros requieren aprobación manual, hace obligatoria la entrada de texto "¿Por qué quieres unirte?" en lugar de opcional @@ -249,7 +249,7 @@ es-MX: backups_retention_period: Período de retención del archivo de usuario bootstrap_timeline_accounts: Recomendar siempre estas cuentas a nuevos usuarios closed_registrations_message: Mensaje personalizado cuando los registros no están disponibles - content_cache_retention_period: Período de retención de contenido remoto + content_cache_retention_period: Periodo de conservación de contenidos remotos custom_css: CSS personalizado favicon: Favicon mascot: Mascota personalizada (legado) diff --git a/config/locales/simple_form.lv.yml b/config/locales/simple_form.lv.yml index ed27e08bc33466..9cc32457f7465f 100644 --- a/config/locales/simple_form.lv.yml +++ b/config/locales/simple_form.lv.yml @@ -82,6 +82,7 @@ lv: backups_retention_period: Lietotājiem ir iespēja izveidot savu ierakstu arhīvu lejupielādēšanai vēlāk. Kad iestatīta pozitīva vērtība, šie arhīvi tiks automātiski izdzēsti no krātuves pēc norādītā dienu skaita. bootstrap_timeline_accounts: Šie konti tiks piesprausti jauno lietotāju ieteikumu augšdaļā. closed_registrations_message: Tiek rādīts, kad reģistrēšanās ir slēgta + content_cache_retention_period: Visi ieraksti no citiem serveriem (tajā skaitā pastiprinājumi un atbildes) tiks izdzēsti pēc norādītā dienu skaita, neņemot vērā vietēja lietotāja mijiedarbību ar šādiem ierakstiem. Tas ietver ierakstus, kurus vietējs lietotājs ir atzīmējis kā grāmatzīmi vai pievienojis izlasē. Tiks zaudēti arī privāti pieminējumi starp lietotājiem no dažādiem serveriem, un tos nebūs iespējams atgūt. Šī iestatījuma izmantošana ir paredzēta īpašam nolūkam paredzētiem serveriem un neatbilst tam, ko sagaida vairums lietotāju, kad pielietots vispārējas izmantošanas serveros. custom_css: Vari lietot pielāgotus stilus Mastodon tīmekļa versijā. favicon: WEBP, PNG, GIF vai JPG. Aizstāj noklusējuma Mastodon favikonu ar pielāgotu. mascot: Ignorē ilustrāciju uzlabotajā tīmekļa saskarnē. diff --git a/config/locales/simple_form.sk.yml b/config/locales/simple_form.sk.yml index 9d3845e7a752a6..aa8dbe76936020 100644 --- a/config/locales/simple_form.sk.yml +++ b/config/locales/simple_form.sk.yml @@ -126,7 +126,7 @@ sk: setting_system_font_ui: Použi základné systémové písmo setting_theme: Vzhľad webu setting_trends: Ukáž dnešné trendy - setting_unfollow_modal: Vyžaduj potvrdenie pred skončením sledovania iného užívateľa + setting_unfollow_modal: Vyžaduj potvrdenie pred tým, než niekoho prestaneš sledovať setting_use_blurhash: Ukáž farebné prechody pre skryté médiá setting_use_pending_items: Pomalý režim severity: Závažnosť diff --git a/config/locales/sk.yml b/config/locales/sk.yml index d7eacb68509796..8076682ed46e12 100644 --- a/config/locales/sk.yml +++ b/config/locales/sk.yml @@ -394,6 +394,7 @@ sk: resolve: Preveď doménu not_permitted: Nepovolená resolved_through_html: Prevedená cez %{domain} + title: Blokované e-mailové domény export_domain_allows: new: title: Nahraj povolené domény @@ -401,6 +402,7 @@ sk: export_domain_blocks: import: existing_relationships_warning: Existujúce vzťahy nasledovania + private_comment_template: 'Importované z: %{source} dňa %{date}' title: Nahraj zákazy domén new: title: Nahraj zákazy domén @@ -1097,7 +1099,7 @@ sk: subject: "%{name} si obľúbil/a tvoj príspevok" title: Novo obľúbené follow: - body: "%{name} ťa teraz následuje!" + body: "%{name} ťa teraz nasleduje!" subject: "%{name} ťa teraz nasleduje" title: Nový sledovateľ follow_request: @@ -1166,7 +1168,7 @@ sk: follow_failure: Nemožno nasledovať niektoré z vybraných účtov. follow_selected_followers: Následuj označených sledovatelov followers: Následovatelia - following: Následovaní + following: Nasledovaní invited: Pozvaný/á last_active: Naposledy aktívny most_recent: Najnovšie @@ -1226,7 +1228,6 @@ sk: delete: Vymazanie účtu development: Vývoj edit_profile: Uprav profil - export: Exportuj dáta featured_tags: Zvýraznené haštagy import: Importuj import_and_export: Import a export diff --git a/config/locales/sl.yml b/config/locales/sl.yml index c8e806bf35efa9..286bece8778bd1 100644 --- a/config/locales/sl.yml +++ b/config/locales/sl.yml @@ -1729,7 +1729,6 @@ sl: delete: Brisanje računa development: Razvoj edit_profile: Uredi profil - export: Izvoz podatkov featured_tags: Vključeni ključniki import: Uvozi import_and_export: Uvoz in izvoz diff --git a/config/locales/sq.yml b/config/locales/sq.yml index 294c8a888f043f..c1ed91cf96ac45 100644 --- a/config/locales/sq.yml +++ b/config/locales/sq.yml @@ -296,6 +296,7 @@ sq: filter_by_action: Filtroji sipas veprimit filter_by_user: Filtroji sipas përdoruesit title: Regjistër auditimesh + unavailable_instance: "(emër përkatësie jo i passhëm)" announcements: destroyed_msg: Lajmërimi u fshi me sukses! edit: @@ -1684,7 +1685,7 @@ sq: delete: Fshirje llogarie development: Zhvillim edit_profile: Përpunoni profilin - export: Eksportim të dhënash + export: Eksportim featured_tags: Hashtag-ë të zgjedhur import: Importo import_and_export: Importim dhe eksportim diff --git a/config/locales/sr-Latn.yml b/config/locales/sr-Latn.yml index bfb52c275b66b1..ad14d9d131f57f 100644 --- a/config/locales/sr-Latn.yml +++ b/config/locales/sr-Latn.yml @@ -1619,7 +1619,6 @@ sr-Latn: delete: Brisanje naloga development: Razvoj edit_profile: Uređivanje profila - export: Izvoz podataka featured_tags: Istaknute heš oznake import: Uvoz import_and_export: Uvoz i izvoz diff --git a/config/locales/sr.yml b/config/locales/sr.yml index af7e7ab8d6945e..fc92b98176186e 100644 --- a/config/locales/sr.yml +++ b/config/locales/sr.yml @@ -1649,7 +1649,6 @@ sr: delete: Брисање налога development: Развој edit_profile: Уређивање профила - export: Извоз података featured_tags: Истакнуте хеш ознаке import: Увоз import_and_export: Увоз и извоз diff --git a/config/locales/sv.yml b/config/locales/sv.yml index 6146cfc8d7feeb..ab545005375036 100644 --- a/config/locales/sv.yml +++ b/config/locales/sv.yml @@ -1645,7 +1645,7 @@ sv: delete: Konto radering development: Utveckling edit_profile: Redigera profil - export: Exportera data + export: Export featured_tags: Utvalda hashtaggar import: Importera import_and_export: Import och export diff --git a/config/locales/th.yml b/config/locales/th.yml index d56385f2611add..fa04b6030ac155 100644 --- a/config/locales/th.yml +++ b/config/locales/th.yml @@ -1666,7 +1666,6 @@ th: delete: การลบบัญชี development: การพัฒนา edit_profile: แก้ไขโปรไฟล์ - export: การส่งออกข้อมูล featured_tags: แฮชแท็กที่น่าสนใจ import: การนำเข้า import_and_export: การนำเข้าและการส่งออก diff --git a/config/locales/tr.yml b/config/locales/tr.yml index 16dd4c899ded7c..d2cf412cc9bd10 100644 --- a/config/locales/tr.yml +++ b/config/locales/tr.yml @@ -1692,7 +1692,6 @@ tr: delete: Hesap silme development: Geliştirme edit_profile: Profili düzenle - export: Veriyi dışa aktar featured_tags: Öne çıkan etiketler import: İçe aktar import_and_export: İçe ve dışa aktar diff --git a/config/locales/uk.yml b/config/locales/uk.yml index 0ef08a15555659..d0164d846a89ae 100644 --- a/config/locales/uk.yml +++ b/config/locales/uk.yml @@ -1744,7 +1744,6 @@ uk: delete: Видалення облікового запису development: Розробка edit_profile: Редагувати профіль - export: Експорт даних featured_tags: Рекомендовані хештеґи import: Імпорт import_and_export: Імпорт та експорт diff --git a/config/locales/vi.yml b/config/locales/vi.yml index d969ad7d4ffdc8..21fc4a3bf1a53e 100644 --- a/config/locales/vi.yml +++ b/config/locales/vi.yml @@ -1666,7 +1666,7 @@ vi: delete: Xóa tài khoản development: Lập trình edit_profile: Sửa hồ sơ - export: Xuất dữ liệu + export: Xuất featured_tags: Hashtag thường dùng import: Nhập dữ liệu import_and_export: Dữ liệu diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml index 8b34da076a0162..ade35ceb626009 100644 --- a/config/locales/zh-CN.yml +++ b/config/locales/zh-CN.yml @@ -1666,7 +1666,6 @@ zh-CN: delete: 删除账户 development: 开发 edit_profile: 更改个人资料 - export: 导出 featured_tags: 精选的话题标签 import: 导入 import_and_export: 导入和导出 diff --git a/config/locales/zh-HK.yml b/config/locales/zh-HK.yml index 598c65d0494ec7..c0726fc2f7d04e 100644 --- a/config/locales/zh-HK.yml +++ b/config/locales/zh-HK.yml @@ -1564,7 +1564,6 @@ zh-HK: delete: 刪除帳戶 development: 開發 edit_profile: 修改個人資料 - export: 匯出 featured_tags: 推薦的標籤 import: 匯入 import_and_export: 匯入及匯出 From db57fe80c8a4fcac2b0fb857c7eb959cbf82a2e0 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Thu, 26 Sep 2024 04:54:01 -0400 Subject: [PATCH 03/28] Remove `page_json` var from ap/replies spec (#32000) --- .../activitypub/replies_controller_spec.rb | 82 ++++++++++++++----- 1 file changed, 61 insertions(+), 21 deletions(-) diff --git a/spec/controllers/activitypub/replies_controller_spec.rb b/spec/controllers/activitypub/replies_controller_spec.rb index 27821b0d4ec415..d7c2c2d3b02cc1 100644 --- a/spec/controllers/activitypub/replies_controller_spec.rb +++ b/spec/controllers/activitypub/replies_controller_spec.rb @@ -66,7 +66,6 @@ context 'when status is public' do let(:parent_visibility) { :public } - let(:page_json) { response.parsed_body[:first] } it 'returns http success and correct media type' do expect(response) @@ -78,16 +77,28 @@ context 'without only_other_accounts' do it "returns items with thread author's replies" do - expect(page_json).to be_a Hash - expect(page_json[:items]).to be_an Array - expect(page_json[:items].size).to eq 1 - expect(page_json[:items].all? { |item| targets_public_collection?(item) }).to be true + expect(response.parsed_body) + .to include( + first: be_a(Hash).and( + include( + items: be_an(Array) + .and(have_attributes(size: 1)) + .and(all(satisfy { |item| targets_public_collection?(item) })) + ) + ) + ) end context 'when there are few self-replies' do it 'points next to replies from other people' do - expect(page_json).to be_a Hash - expect(parsed_uri_query_values(page_json[:next])).to include('only_other_accounts=true', 'page=true') + expect(response.parsed_body) + .to include( + first: be_a(Hash).and( + include( + next: satisfy { |value| (parsed_uri_query_values(value) & %w(only_other_accounts=true page=true)).any? } + ) + ) + ) end end @@ -97,8 +108,14 @@ end it 'points next to other self-replies' do - expect(page_json).to be_a Hash - expect(parsed_uri_query_values(page_json[:next])).to include('only_other_accounts=false', 'page=true') + expect(response.parsed_body) + .to include( + first: be_a(Hash).and( + include( + next: satisfy { |value| (parsed_uri_query_values(value) & %w(only_other_accounts=false page=true)).any? } + ) + ) + ) end end end @@ -107,26 +124,31 @@ let(:only_other_accounts) { 'true' } it 'returns items with other public or unlisted replies' do - expect(page_json).to be_a Hash - expect(page_json[:items]).to be_an Array - expect(page_json[:items].size).to eq 3 + expect(response.parsed_body) + .to include( + first: be_a(Hash).and( + include(items: be_an(Array).and(have_attributes(size: 3))) + ) + ) end it 'only inlines items that are local and public or unlisted replies' do - inlined_replies = page_json[:items].select { |x| x.is_a?(Hash) } - expect(inlined_replies.all? { |item| targets_public_collection?(item) }).to be true - expect(inlined_replies.all? { |item| ActivityPub::TagManager.instance.local_uri?(item[:id]) }).to be true + expect(inlined_replies) + .to all(satisfy { |item| targets_public_collection?(item) }) + .and all(satisfy { |item| ActivityPub::TagManager.instance.local_uri?(item[:id]) }) end it 'uses ids for remote toots' do - remote_replies = page_json[:items].reject { |x| x.is_a?(Hash) } - expect(remote_replies.all? { |item| item.is_a?(String) && !ActivityPub::TagManager.instance.local_uri?(item) }).to be true + expect(remote_replies) + .to all(satisfy { |item| item.is_a?(String) && !ActivityPub::TagManager.instance.local_uri?(item) }) end context 'when there are few replies' do it 'does not have a next page' do - expect(page_json).to be_a Hash - expect(page_json[:next]).to be_nil + expect(response.parsed_body) + .to include( + first: be_a(Hash).and(not_include(next: be_present)) + ) end end @@ -136,8 +158,14 @@ end it 'points next to other replies' do - expect(page_json).to be_a Hash - expect(parsed_uri_query_values(page_json[:next])).to include('only_other_accounts=true', 'page=true') + expect(response.parsed_body) + .to include( + first: be_a(Hash).and( + include( + next: satisfy { |value| (parsed_uri_query_values(value) & %w(only_other_accounts=true page=true)).any? } + ) + ) + ) end end end @@ -193,6 +221,18 @@ private + def inlined_replies + response + .parsed_body[:first][:items] + .select { |x| x.is_a?(Hash) } + end + + def remote_replies + response + .parsed_body[:first][:items] + .reject { |x| x.is_a?(Hash) } + end + def parsed_uri_query_values(uri) Addressable::URI .parse(uri) From 00aaf77e04ce3aeadd976b4e1726c49794b3ea89 Mon Sep 17 00:00:00 2001 From: Christian Schmidt Date: Thu, 26 Sep 2024 13:48:01 +0200 Subject: [PATCH 04/28] Use same styling for statuses in email as on web (#32073) --- app/javascript/styles/mailer.scss | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/app/javascript/styles/mailer.scss b/app/javascript/styles/mailer.scss index e5d0c05f81d97b..2c1b443cb51114 100644 --- a/app/javascript/styles/mailer.scss +++ b/app/javascript/styles/mailer.scss @@ -168,6 +168,7 @@ table + p { // Utility classes .email-w-full { + table-layout: fixed; width: 100%; } @@ -587,7 +588,10 @@ table + p { p { font-size: 14px; line-height: 20px; + margin-bottom: 20px; color: #17063b; + white-space: pre-wrap; + unicode-bidi: plaintext; } a { @@ -598,6 +602,21 @@ table + p { color: #563acc !important; } } + + .invisible { + font-size: 0; + line-height: 0; + display: inline-block; + width: 0; + height: 0; + position: absolute; + } + + .ellipsis { + &::after { + content: '…'; + } + } } .email-status-media { From 89df27a06c69818d38621c1147c6724d76beefde Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 26 Sep 2024 14:31:32 +0200 Subject: [PATCH 05/28] Change design of media tab on profiles in web UI (#31967) --- .../mastodon/components/media_gallery.jsx | 13 +- app/javascript/mastodon/components/status.jsx | 38 ++-- .../account_gallery/components/media_item.jsx | 158 -------------- .../account_gallery/components/media_item.tsx | 197 ++++++++++++++++++ .../features/account_gallery/index.jsx | 2 +- .../status/components/detailed_status.tsx | 33 +-- app/javascript/mastodon/models/status.ts | 2 + .../material-icons/400-20px/mood-fill.svg | 2 +- .../material-icons/400-20px/mood.svg | 2 +- .../material-icons/400-20px/warning-fill.svg | 2 +- .../material-icons/400-20px/warning.svg | 2 +- .../400-24px/add_photo_alternate-fill.svg | 2 +- .../400-24px/add_photo_alternate.svg | 2 +- .../400-24px/bookmarks-fill.svg | 2 +- .../material-icons/400-24px/bookmarks.svg | 2 +- .../400-24px/headphones-fill.svg | 1 + .../material-icons/400-24px/headphones.svg | 1 + .../400-24px/manufacturing-fill.svg | 1 + .../material-icons/400-24px/manufacturing.svg | 2 +- .../material-icons/400-24px/movie-fill.svg | 1 + .../material-icons/400-24px/movie.svg | 1 + .../400-24px/quiet_time-fill.svg | 2 +- .../material-icons/400-24px/quiet_time.svg | 2 +- .../material-icons/400-24px/share-fill.svg | 2 +- .../material-icons/400-24px/share.svg | 2 +- .../styles/mastodon/components.scss | 99 +++++---- app/javascript/styles/mastodon/variables.scss | 2 + 27 files changed, 330 insertions(+), 245 deletions(-) delete mode 100644 app/javascript/mastodon/features/account_gallery/components/media_item.jsx create mode 100644 app/javascript/mastodon/features/account_gallery/components/media_item.tsx create mode 100644 app/javascript/material-icons/400-24px/headphones-fill.svg create mode 100644 app/javascript/material-icons/400-24px/headphones.svg create mode 100644 app/javascript/material-icons/400-24px/manufacturing-fill.svg create mode 100644 app/javascript/material-icons/400-24px/movie-fill.svg create mode 100644 app/javascript/material-icons/400-24px/movie.svg diff --git a/app/javascript/mastodon/components/media_gallery.jsx b/app/javascript/mastodon/components/media_gallery.jsx index ba54b7f903645a..35924008b5ef00 100644 --- a/app/javascript/mastodon/components/media_gallery.jsx +++ b/app/javascript/mastodon/components/media_gallery.jsx @@ -11,6 +11,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes'; import { debounce } from 'lodash'; import { Blurhash } from 'mastodon/components/blurhash'; +import { formatTime } from 'mastodon/features/video'; import { autoPlayGif, displayMedia, useBlurhash } from '../initial_state'; @@ -57,7 +58,7 @@ class Item extends PureComponent { hoverToPlay () { const { attachment } = this.props; - return !this.getAutoPlay() && attachment.get('type') === 'gifv'; + return !this.getAutoPlay() && ['gifv', 'video'].includes(attachment.get('type')); } handleClick = (e) => { @@ -150,10 +151,15 @@ class Item extends PureComponent { /> ); - } else if (attachment.get('type') === 'gifv') { + } else if (['gifv', 'video'].includes(attachment.get('type'))) { const autoPlay = this.getAutoPlay(); + const duration = attachment.getIn(['meta', 'original', 'duration']); - badges.push(GIF); + if (attachment.get('type') === 'gifv') { + badges.push(GIF); + } else { + badges.push({formatTime(Math.floor(duration))}); + } thumbnail = (
@@ -167,6 +173,7 @@ class Item extends PureComponent { onClick={this.handleClick} onMouseEnter={this.handleMouseEnter} onMouseLeave={this.handleMouseLeave} + onLoadedData={this.handleImageLoad} autoPlay={autoPlay} playsInline loop diff --git a/app/javascript/mastodon/components/status.jsx b/app/javascript/mastodon/components/status.jsx index 6c32fd245d7a1b..46926b4aaead34 100644 --- a/app/javascript/mastodon/components/status.jsx +++ b/app/javascript/mastodon/components/status.jsx @@ -449,7 +449,25 @@ class Status extends ImmutablePureComponent { } else if (status.get('media_attachments').size > 0) { const language = status.getIn(['translation', 'language']) || status.get('language'); - if (status.getIn(['media_attachments', 0, 'type']) === 'audio') { + if (['image', 'gifv'].includes(status.getIn(['media_attachments', 0, 'type'])) || status.get('media_attachments').size > 1) { + media = ( + + {Component => ( + + )} + + ); + } else if (status.getIn(['media_attachments', 0, 'type']) === 'audio') { const attachment = status.getIn(['media_attachments', 0]); const description = attachment.getIn(['translation', 'description']) || attachment.get('description'); @@ -501,24 +519,6 @@ class Status extends ImmutablePureComponent { )} ); - } else { - media = ( - - {Component => ( - - )} - - ); } } else if (status.get('spoiler_text').length === 0 && status.get('card')) { media = ( diff --git a/app/javascript/mastodon/features/account_gallery/components/media_item.jsx b/app/javascript/mastodon/features/account_gallery/components/media_item.jsx deleted file mode 100644 index 087e7757533327..00000000000000 --- a/app/javascript/mastodon/features/account_gallery/components/media_item.jsx +++ /dev/null @@ -1,158 +0,0 @@ -import PropTypes from 'prop-types'; - -import classNames from 'classnames'; - -import ImmutablePropTypes from 'react-immutable-proptypes'; -import ImmutablePureComponent from 'react-immutable-pure-component'; - -import AudiotrackIcon from '@/material-icons/400-24px/music_note.svg?react'; -import PlayArrowIcon from '@/material-icons/400-24px/play_arrow.svg?react'; -import VisibilityOffIcon from '@/material-icons/400-24px/visibility_off.svg?react'; -import { Blurhash } from 'mastodon/components/blurhash'; -import { Icon } from 'mastodon/components/icon'; -import { autoPlayGif, displayMedia, useBlurhash } from 'mastodon/initial_state'; - -export default class MediaItem extends ImmutablePureComponent { - - static propTypes = { - attachment: ImmutablePropTypes.map.isRequired, - displayWidth: PropTypes.number.isRequired, - onOpenMedia: PropTypes.func.isRequired, - }; - - state = { - visible: displayMedia !== 'hide_all' && !this.props.attachment.getIn(['status', 'sensitive']) || displayMedia === 'show_all', - loaded: false, - }; - - handleImageLoad = () => { - this.setState({ loaded: true }); - }; - - handleMouseEnter = e => { - if (this.hoverToPlay()) { - e.target.play(); - } - }; - - handleMouseLeave = e => { - if (this.hoverToPlay()) { - e.target.pause(); - e.target.currentTime = 0; - } - }; - - hoverToPlay () { - return !autoPlayGif && ['gifv', 'video'].indexOf(this.props.attachment.get('type')) !== -1; - } - - handleClick = e => { - if (e.button === 0 && !(e.ctrlKey || e.metaKey)) { - e.preventDefault(); - - if (this.state.visible) { - this.props.onOpenMedia(this.props.attachment); - } else { - this.setState({ visible: true }); - } - } - }; - - render () { - const { attachment, displayWidth } = this.props; - const { visible, loaded } = this.state; - - const width = `${Math.floor((displayWidth - 4) / 3) - 4}px`; - const height = width; - const status = attachment.get('status'); - const title = status.get('spoiler_text') || attachment.get('description'); - - let thumbnail, label, icon, content; - - if (!visible) { - icon = ( - - - - ); - } else { - if (['audio', 'video'].includes(attachment.get('type'))) { - content = ( - {attachment.get('description')} - ); - - if (attachment.get('type') === 'audio') { - label = ; - } else { - label = ; - } - } else if (attachment.get('type') === 'image') { - const focusX = attachment.getIn(['meta', 'focus', 'x']) || 0; - const focusY = attachment.getIn(['meta', 'focus', 'y']) || 0; - const x = ((focusX / 2) + .5) * 100; - const y = ((focusY / -2) + .5) * 100; - - content = ( - {attachment.get('description')} - ); - } else if (attachment.get('type') === 'gifv') { - content = ( -
- {preview && preview.followers_count + preview.following_count > 0 && ( + {preview && + preview !== 'error' && + preview.followers_count + preview.following_count > 0 && ( +
+
+ +
+
+ + + ), + followingCount: preview.following_count, + followingCountDisplay: ( + + ), + }} + /> + +
+
+ )} + + {preview === 'error' && (
@@ -97,18 +126,8 @@ export const DomainBlockModal: React.FC<{
- ), - followingCount: preview.following_count, - followingCountDisplay: ( - - ), - }} + id='domain_block_modal.you_will_lose_relationships' + defaultMessage='You will lose all followers and people you follow from this server.' />
diff --git a/app/javascript/mastodon/locales/en.json b/app/javascript/mastodon/locales/en.json index 0dc4ccee804176..b20934388cc5b3 100644 --- a/app/javascript/mastodon/locales/en.json +++ b/app/javascript/mastodon/locales/en.json @@ -222,6 +222,7 @@ "domain_block_modal.they_wont_know": "They won't know they've been blocked.", "domain_block_modal.title": "Block domain?", "domain_block_modal.you_will_lose_num_followers": "You will lose {followersCount, plural, one {{followersCountDisplay} follower} other {{followersCountDisplay} followers}} and {followingCount, plural, one {{followingCountDisplay} person you follow} other {{followingCountDisplay} people you follow}}.", + "domain_block_modal.you_will_lose_relationships": "You will lose all followers and people you follow from this server.", "domain_block_modal.you_wont_see_posts": "You won't see posts or notifications from users on this server.", "domain_pill.activitypub_lets_connect": "It lets you connect and interact with people not just on Mastodon, but across different social apps too.", "domain_pill.activitypub_like_language": "ActivityPub is like the language Mastodon speaks with other social networks.", From a04433f995099854c06fbc7d02245a7d2a3677c0 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 26 Sep 2024 15:26:49 +0200 Subject: [PATCH 07/28] Add ability to view alt text by clicking the ALT badge in web UI (#32058) --- .../mastodon/components/alt_text_badge.tsx | 67 +++++++++++++++++++ .../mastodon/components/media_gallery.jsx | 7 +- .../account_gallery/components/media_item.tsx | 17 +++-- app/javascript/mastodon/locales/en.json | 1 + .../styles/mastodon/components.scss | 45 +++++++++++-- 5 files changed, 121 insertions(+), 16 deletions(-) create mode 100644 app/javascript/mastodon/components/alt_text_badge.tsx diff --git a/app/javascript/mastodon/components/alt_text_badge.tsx b/app/javascript/mastodon/components/alt_text_badge.tsx new file mode 100644 index 00000000000000..99bec1ee51cf71 --- /dev/null +++ b/app/javascript/mastodon/components/alt_text_badge.tsx @@ -0,0 +1,67 @@ +import { useState, useCallback, useRef } from 'react'; + +import { FormattedMessage } from 'react-intl'; + +import Overlay from 'react-overlays/Overlay'; +import type { + OffsetValue, + UsePopperOptions, +} from 'react-overlays/esm/usePopper'; + +const offset = [0, 4] as OffsetValue; +const popperConfig = { strategy: 'fixed' } as UsePopperOptions; + +export const AltTextBadge: React.FC<{ + description: string; +}> = ({ description }) => { + const anchorRef = useRef(null); + const [open, setOpen] = useState(false); + + const handleClick = useCallback(() => { + setOpen((v) => !v); + }, [setOpen]); + + const handleClose = useCallback(() => { + setOpen(false); + }, [setOpen]); + + return ( + <> + + + + {({ props }) => ( +
+
+

+ +

+

{description}

+
+
+ )} +
+ + ); +}; diff --git a/app/javascript/mastodon/components/media_gallery.jsx b/app/javascript/mastodon/components/media_gallery.jsx index 35924008b5ef00..84cb4e04dcb5db 100644 --- a/app/javascript/mastodon/components/media_gallery.jsx +++ b/app/javascript/mastodon/components/media_gallery.jsx @@ -10,6 +10,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes'; import { debounce } from 'lodash'; +import { AltTextBadge } from 'mastodon/components/alt_text_badge'; import { Blurhash } from 'mastodon/components/blurhash'; import { formatTime } from 'mastodon/features/video'; @@ -97,7 +98,7 @@ class Item extends PureComponent { } if (attachment.get('description')?.length > 0) { - badges.push(ALT); + badges.push(); } const description = attachment.getIn(['translation', 'description']) || attachment.get('description'); @@ -156,9 +157,9 @@ class Item extends PureComponent { const duration = attachment.getIn(['meta', 'original', 'duration']); if (attachment.get('type') === 'gifv') { - badges.push(GIF); + badges.push(GIF); } else { - badges.push({formatTime(Math.floor(duration))}); + badges.push({formatTime(Math.floor(duration))}); } thumbnail = ( diff --git a/app/javascript/mastodon/features/account_gallery/components/media_item.tsx b/app/javascript/mastodon/features/account_gallery/components/media_item.tsx index 1a294a74a05b40..729e40a9934d42 100644 --- a/app/javascript/mastodon/features/account_gallery/components/media_item.tsx +++ b/app/javascript/mastodon/features/account_gallery/components/media_item.tsx @@ -5,6 +5,7 @@ import classNames from 'classnames'; import HeadphonesIcon from '@/material-icons/400-24px/headphones-fill.svg?react'; import MovieIcon from '@/material-icons/400-24px/movie-fill.svg?react'; import VisibilityOffIcon from '@/material-icons/400-24px/visibility_off.svg?react'; +import { AltTextBadge } from 'mastodon/components/alt_text_badge'; import { Blurhash } from 'mastodon/components/blurhash'; import { Icon } from 'mastodon/components/icon'; import { formatTime } from 'mastodon/features/video'; @@ -77,11 +78,7 @@ export const MediaItem: React.FC<{ const badges = []; if (description && description.length > 0) { - badges.push( - - ALT - , - ); + badges.push(); } if (!visible) { @@ -156,13 +153,19 @@ export const MediaItem: React.FC<{ if (type === 'gifv') { badges.push( - + GIF , ); } else { badges.push( - + {formatTime(Math.floor(duration))} , ); diff --git a/app/javascript/mastodon/locales/en.json b/app/javascript/mastodon/locales/en.json index b20934388cc5b3..e86e300bcba7d8 100644 --- a/app/javascript/mastodon/locales/en.json +++ b/app/javascript/mastodon/locales/en.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Rate limited", "alert.unexpected.message": "An unexpected error occurred.", "alert.unexpected.title": "Oops!", + "alt_text_badge.title": "Alt text", "announcement.announcement": "Announcement", "attachments_list.unprocessed": "(unprocessed)", "audio.hide": "Hide audio", diff --git a/app/javascript/styles/mastodon/components.scss b/app/javascript/styles/mastodon/components.scss index f3464c83b7d53e..8cb63e42e63df6 100644 --- a/app/javascript/styles/mastodon/components.scss +++ b/app/javascript/styles/mastodon/components.scss @@ -6971,14 +6971,14 @@ a.status-card { inset-inline-end: 8px; display: flex; gap: 2px; + pointer-events: none; } -.media-gallery__alt__label, -.media-gallery__gifv__label { - display: flex; - align-items: center; - justify-content: center; +.media-gallery__alt__label { + display: block; + text-align: center; color: $white; + border: 0; background: rgba($black, 0.65); backdrop-filter: blur(10px) saturate(180%) contrast(75%) brightness(70%); padding: 3px 8px; @@ -6986,8 +6986,41 @@ a.status-card { font-size: 12px; font-weight: 700; z-index: 1; - pointer-events: none; line-height: 20px; + cursor: pointer; + pointer-events: auto; + + &--non-interactive { + pointer-events: none; + } +} + +.media-gallery__alt__popover { + background: rgba($black, 0.65); + backdrop-filter: blur(10px) saturate(180%) contrast(75%) brightness(70%); + border-radius: 4px; + box-shadow: var(--dropdown-shadow); + padding: 16px; + min-width: 16em; + min-height: 2em; + max-width: 22em; + max-height: 30em; + overflow-y: auto; + + h4 { + font-size: 15px; + line-height: 20px; + font-weight: 500; + color: $white; + margin-bottom: 8px; + } + + p { + font-size: 15px; + line-height: 20px; + color: rgba($white, 0.85); + white-space: pre-line; + } } .attachment-list { From 89c39e7826bee92ebc537babfc4061bd4d98c8ba Mon Sep 17 00:00:00 2001 From: Claire Date: Thu, 26 Sep 2024 16:26:04 +0200 Subject: [PATCH 08/28] Fix scrollbar width (#32091) --- app/javascript/styles/mastodon/reset.scss | 1 - 1 file changed, 1 deletion(-) diff --git a/app/javascript/styles/mastodon/reset.scss b/app/javascript/styles/mastodon/reset.scss index 5a4152826d9e4b..fc0305baf3cdb4 100644 --- a/app/javascript/styles/mastodon/reset.scss +++ b/app/javascript/styles/mastodon/reset.scss @@ -56,7 +56,6 @@ table { @supports not selector(::-webkit-scrollbar) { html { scrollbar-color: $action-button-color var(--background-border-color); - scrollbar-width: thin; } } From 106b22bd2dc2fca8561d36f849c80dd4a918ca2e Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Thu, 26 Sep 2024 15:26:40 -0400 Subject: [PATCH 09/28] Use 1 column layout for form `ul` on narrow widths (#32112) --- app/javascript/styles/mastodon/forms.scss | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/javascript/styles/mastodon/forms.scss b/app/javascript/styles/mastodon/forms.scss index 56f7b893f3953b..957a28352267e4 100644 --- a/app/javascript/styles/mastodon/forms.scss +++ b/app/javascript/styles/mastodon/forms.scss @@ -312,6 +312,10 @@ code { ul { columns: 2; + + @media screen and (max-width: $mobile-breakpoint) { + columns: 1; + } } } From ee2d966080b4e293d07acedf9385786a939432c6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 26 Sep 2024 21:27:13 +0200 Subject: [PATCH 10/28] Update dependency blurhash to v0.1.8 (#32114) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index ed217ca1464889..e1ea677dfd27aa 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -134,7 +134,7 @@ GEM bindata (2.5.0) binding_of_caller (1.0.1) debug_inspector (>= 1.2.0) - blurhash (0.1.7) + blurhash (0.1.8) bootsnap (1.18.4) msgpack (~> 1.2) brakeman (6.2.1) From 513f187dafd8ff441479a6de12c61f8bb8d4c5bf Mon Sep 17 00:00:00 2001 From: Claire Date: Thu, 26 Sep 2024 21:27:57 +0200 Subject: [PATCH 11/28] =?UTF-8?q?Add=20=E2=80=9CA=20Mastodon=20update=20is?= =?UTF-8?q?=20available.=E2=80=9D=20message=20on=20admin=20dashboard=20for?= =?UTF-8?q?=20non-bugfix=20updates=20(#32106)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/lib/admin/system_check/software_version_check.rb | 6 ++++-- config/locales/en.yml | 3 +++ spec/lib/admin/system_check/software_version_check_spec.rb | 4 ++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/app/lib/admin/system_check/software_version_check.rb b/app/lib/admin/system_check/software_version_check.rb index e142feddf0d000..e5cacfe354bbaf 100644 --- a/app/lib/admin/system_check/software_version_check.rb +++ b/app/lib/admin/system_check/software_version_check.rb @@ -14,14 +14,16 @@ def pass? def message if software_updates.any?(&:urgent?) Admin::SystemCheck::Message.new(:software_version_critical_check, nil, admin_software_updates_path, true) - else + elsif software_updates.any?(&:patch_type?) Admin::SystemCheck::Message.new(:software_version_patch_check, nil, admin_software_updates_path) + else + Admin::SystemCheck::Message.new(:software_version_check, nil, admin_software_updates_path) end end private def software_updates - @software_updates ||= SoftwareUpdate.pending_to_a.filter { |update| update.urgent? || update.patch_type? } + @software_updates ||= SoftwareUpdate.pending_to_a end end diff --git a/config/locales/en.yml b/config/locales/en.yml index 9c3bab6baa2142..bf45dff33af855 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -875,6 +875,9 @@ en: message_html: You haven't defined any server rules. sidekiq_process_check: message_html: No Sidekiq process running for the %{value} queue(s). Please review your Sidekiq configuration + software_version_check: + action: See available updates + message_html: A Mastodon update is available. software_version_critical_check: action: See available updates message_html: A critical Mastodon update is available, please update as quickly as possible. diff --git a/spec/lib/admin/system_check/software_version_check_spec.rb b/spec/lib/admin/system_check/software_version_check_spec.rb index 1affaa3a969d82..8460d9066881bf 100644 --- a/spec/lib/admin/system_check/software_version_check_spec.rb +++ b/spec/lib/admin/system_check/software_version_check_spec.rb @@ -51,8 +51,8 @@ Fabricate(:software_update, version: '99.99.99', type: 'major', urgent: false) end - it 'returns true' do - expect(check.pass?).to be true + it 'returns false' do + expect(check.pass?).to be false end end From c9b069996456fb79d41dd37d986673a07cef5187 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 27 Sep 2024 09:34:46 +0200 Subject: [PATCH 12/28] New Crowdin Translations (automated) (#32121) Co-authored-by: GitHub Actions --- app/javascript/mastodon/locales/ca.json | 2 + app/javascript/mastodon/locales/da.json | 2 + app/javascript/mastodon/locales/de.json | 2 + app/javascript/mastodon/locales/en-GB.json | 3 + app/javascript/mastodon/locales/eo.json | 2 + app/javascript/mastodon/locales/es-AR.json | 2 + app/javascript/mastodon/locales/es-MX.json | 4 +- app/javascript/mastodon/locales/es.json | 2 + app/javascript/mastodon/locales/eu.json | 1 + app/javascript/mastodon/locales/fa.json | 5 + app/javascript/mastodon/locales/fi.json | 3 + app/javascript/mastodon/locales/fo.json | 2 + app/javascript/mastodon/locales/ga.json | 1 + app/javascript/mastodon/locales/gl.json | 2 + app/javascript/mastodon/locales/hu.json | 2 + app/javascript/mastodon/locales/io.json | 206 +++++++++++++++++++++ app/javascript/mastodon/locales/it.json | 3 + app/javascript/mastodon/locales/lt.json | 7 +- app/javascript/mastodon/locales/nl.json | 4 +- app/javascript/mastodon/locales/pl.json | 2 + app/javascript/mastodon/locales/pt-BR.json | 3 + app/javascript/mastodon/locales/sq.json | 2 + app/javascript/mastodon/locales/tr.json | 2 + app/javascript/mastodon/locales/uk.json | 3 + app/javascript/mastodon/locales/vi.json | 1 + app/javascript/mastodon/locales/zh-CN.json | 3 + app/javascript/mastodon/locales/zh-TW.json | 2 + config/locales/activerecord.io.yml | 6 + config/locales/ca.yml | 3 + config/locales/da.yml | 3 + config/locales/de.yml | 4 + config/locales/devise.io.yml | 10 + config/locales/doorkeeper.ga.yml | 1 + config/locales/doorkeeper.pt-BR.yml | 1 + config/locales/en-GB.yml | 1 + config/locales/es-AR.yml | 1 + config/locales/es-MX.yml | 1 + config/locales/es.yml | 1 + config/locales/fi.yml | 1 + config/locales/fo.yml | 1 + config/locales/ga.yml | 1 + config/locales/gl.yml | 7 +- config/locales/hu.yml | 1 + config/locales/it.yml | 4 + config/locales/lt.yml | 4 + config/locales/nl.yml | 3 + config/locales/nn.yml | 3 + config/locales/pl.yml | 4 + config/locales/pt-BR.yml | 1 + config/locales/simple_form.io.yml | 20 ++ config/locales/sq.yml | 3 + config/locales/tr.yml | 1 + config/locales/uk.yml | 4 + config/locales/zh-CN.yml | 4 + config/locales/zh-TW.yml | 3 + 55 files changed, 364 insertions(+), 6 deletions(-) diff --git a/app/javascript/mastodon/locales/ca.json b/app/javascript/mastodon/locales/ca.json index 2c6dcba46917a1..1cd643842cdc2a 100644 --- a/app/javascript/mastodon/locales/ca.json +++ b/app/javascript/mastodon/locales/ca.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Límit de freqüència", "alert.unexpected.message": "S'ha produït un error inesperat.", "alert.unexpected.title": "Vaja!", + "alt_text_badge.title": "Text alternatiu", "announcement.announcement": "Anunci", "attachments_list.unprocessed": "(sense processar)", "audio.hide": "Amaga l'àudio", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "No sabran que són blocats.", "domain_block_modal.title": "Bloquem el domini?", "domain_block_modal.you_will_lose_num_followers": "Perdreu {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidors}} i {followingCount, plural, one {{followingCountDisplay} persona} other {{followingCountDisplay} persones}} que seguiu.", + "domain_block_modal.you_will_lose_relationships": "Perdreu seguidors i gent a qui seguiu d'aquest servidor.", "domain_block_modal.you_wont_see_posts": "No veureu ni les publicacions ni les notificacions dels usuaris d'aquest servidor.", "domain_pill.activitypub_lets_connect": "Us permet connectar i interactuar amb persones a Mastodon i també a d'altres apps socials.", "domain_pill.activitypub_like_language": "ActivityPub és el llenguatge que Mastodon parla amb altres xarxes socials.", diff --git a/app/javascript/mastodon/locales/da.json b/app/javascript/mastodon/locales/da.json index e7d2bcaf80c785..8223177ab93a9e 100644 --- a/app/javascript/mastodon/locales/da.json +++ b/app/javascript/mastodon/locales/da.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Hastighedsbegrænset", "alert.unexpected.message": "En uventet fejl opstod.", "alert.unexpected.title": "Ups!", + "alt_text_badge.title": "Alt text", "announcement.announcement": "Bekendtgørelse", "attachments_list.unprocessed": "(ubehandlet)", "audio.hide": "Skjul lyd", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "Vedkommende ser ikke den aktive blokering.", "domain_block_modal.title": "Blokér domæne?", "domain_block_modal.you_will_lose_num_followers": "Man vil miste {followersCount, plural, one {{followersCountDisplay} følger} other {{followersCountDisplay} følgere}} og {followingCount, plural, one {{followingCountDisplay} person, man følger} other {{followingCountDisplay} personer, man følger}}.", + "domain_block_modal.you_will_lose_relationships": "Alle følgere og personer som følges på denne server mistes.", "domain_block_modal.you_wont_see_posts": "Indlæg eller notifikationer fra brugere på denne server vises ikke.", "domain_pill.activitypub_lets_connect": "Det muliggør at komme i forbindelse og interagere med folk ikke kun på Mastodon, men også på tværs af forskellige sociale apps.", "domain_pill.activitypub_like_language": "ActivityPub er \"sproget\", Mastodon taler med andre sociale netværk.", diff --git a/app/javascript/mastodon/locales/de.json b/app/javascript/mastodon/locales/de.json index 2f8c89961a7302..30a55df05b2a83 100644 --- a/app/javascript/mastodon/locales/de.json +++ b/app/javascript/mastodon/locales/de.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Anfragelimit überschritten", "alert.unexpected.message": "Ein unerwarteter Fehler ist aufgetreten.", "alert.unexpected.title": "Oha!", + "alt_text_badge.title": "Bildbeschreibung", "announcement.announcement": "Ankündigung", "attachments_list.unprocessed": "(ausstehend)", "audio.hide": "Audio ausblenden", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "Es wird nicht erkennbar sein, dass diese Domain blockiert wurde.", "domain_block_modal.title": "Domain blockieren?", "domain_block_modal.you_will_lose_num_followers": "Du wirst {followersCount, plural, one {{followersCountDisplay} Follower} other {{followersCountDisplay} Follower}} verlieren und {followingCount, plural, one {{followingCountDisplay} Profil} other {{followingCountDisplay} Profilen}} entfolgen.", + "domain_block_modal.you_will_lose_relationships": "Du wirst von diesem Server alle Follower und Profile, denen du dort folgst, verlieren.", "domain_block_modal.you_wont_see_posts": "Du wirst keine Beiträge oder Benachrichtigungen von Profilen auf diesem Server sehen.", "domain_pill.activitypub_lets_connect": "Somit kannst du dich nicht nur auf Mastodon mit Leuten verbinden und mit ihnen interagieren, sondern über alle sozialen Apps hinweg.", "domain_pill.activitypub_like_language": "ActivityPub ist sozusagen die Sprache, die Mastodon mit anderen sozialen Netzwerken spricht.", diff --git a/app/javascript/mastodon/locales/en-GB.json b/app/javascript/mastodon/locales/en-GB.json index ee38b775544b1a..b1d61ddd3dc746 100644 --- a/app/javascript/mastodon/locales/en-GB.json +++ b/app/javascript/mastodon/locales/en-GB.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Rate limited", "alert.unexpected.message": "An unexpected error occurred.", "alert.unexpected.title": "Oops!", + "alt_text_badge.title": "Alt text", "announcement.announcement": "Announcement", "attachments_list.unprocessed": "(unprocessed)", "audio.hide": "Hide audio", @@ -221,6 +222,8 @@ "domain_block_modal.they_cant_follow": "Nobody from this server can follow you.", "domain_block_modal.they_wont_know": "They won't know they've been blocked.", "domain_block_modal.title": "Block domain?", + "domain_block_modal.you_will_lose_num_followers": "You will lose {followersCount, plural, one {{followersCountDisplay} follower} other {{followersCountDisplay} followers}} and {followingCount, plural, one {{followingCountDisplay} person you follow} other {{followingCountDisplay} people you follow}}.", + "domain_block_modal.you_will_lose_relationships": "You will lose all followers and people you follow from this server.", "domain_block_modal.you_wont_see_posts": "You won't see posts or notifications from users on this server.", "domain_pill.activitypub_lets_connect": "It lets you connect and interact with people not just on Mastodon, but across different social apps too.", "domain_pill.activitypub_like_language": "ActivityPub is like the language Mastodon speaks with other social networks.", diff --git a/app/javascript/mastodon/locales/eo.json b/app/javascript/mastodon/locales/eo.json index 8139e8c76dc87f..832bf9eda0cf95 100644 --- a/app/javascript/mastodon/locales/eo.json +++ b/app/javascript/mastodon/locales/eo.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Mesaĝkvante limigita", "alert.unexpected.message": "Neatendita eraro okazis.", "alert.unexpected.title": "Aj!", + "alt_text_badge.title": "Alt-teksto", "announcement.announcement": "Anoncoj", "attachments_list.unprocessed": "(neprilaborita)", "audio.hide": "Kaŝi aŭdion", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "Ili ne scios, ke ili estas blokitaj.", "domain_block_modal.title": "Ĉu bloki la domajnon?", "domain_block_modal.you_will_lose_num_followers": "Vi perdos {followersCount, plural, one {{followersCountDisplay} sekvanton} other {{followersCountDisplay} sekvantojn}} kaj {followingCount, plural, one {{followingCountDisplay} homon, kiu vi sekvas} other {{followingCountDisplay} homojn, kiuj vi sekvas}}.", + "domain_block_modal.you_will_lose_relationships": "Vi perdos ĉiujn sekvantojn kaj homojn, kiujn vi sekvas de ĉi tiu servilo.", "domain_block_modal.you_wont_see_posts": "Vi ne vidos afiŝojn aŭ sciigojn de uzantoj sur ĉi tiu servilo.", "domain_pill.activitypub_lets_connect": "Ĝi ebligas vin konekti kaj interagi kun homoj ne nur sur Mastodon, sed ankaŭ tra diversaj sociaj apoj.", "domain_pill.activitypub_like_language": "ActivityPub estas kiel la lingvo kiun Mastodon parolas kun aliaj sociaj retoj.", diff --git a/app/javascript/mastodon/locales/es-AR.json b/app/javascript/mastodon/locales/es-AR.json index 26a37e76b3939e..e0a4f0fc923f28 100644 --- a/app/javascript/mastodon/locales/es-AR.json +++ b/app/javascript/mastodon/locales/es-AR.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Acción limitada", "alert.unexpected.message": "Ocurrió un error.", "alert.unexpected.title": "¡Epa!", + "alt_text_badge.title": "Texto alternativo", "announcement.announcement": "Anuncio", "attachments_list.unprocessed": "[sin procesar]", "audio.hide": "Ocultar audio", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "No sabrán que fueron bloqueados.", "domain_block_modal.title": "¿Bloquear dominio?", "domain_block_modal.you_will_lose_num_followers": "Perderás {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} y {followingCount, plural, one {{followingCountDisplay} persona a la que sigues} other {{followingCountDisplay} personas a las que sigues}}.", + "domain_block_modal.you_will_lose_relationships": "Perderás a todos los seguidores y gente a la que sigas de este servidor.", "domain_block_modal.you_wont_see_posts": "No verás mensajes ni notificaciones de usuarios en este servidor.", "domain_pill.activitypub_lets_connect": "Te permite conectar e interactuar con cuentas no solo en Mastodon, sino también a través de diferentes aplicaciones sociales.", "domain_pill.activitypub_like_language": "ActivityPub es como el idioma que Mastodon habla con otras redes sociales.", diff --git a/app/javascript/mastodon/locales/es-MX.json b/app/javascript/mastodon/locales/es-MX.json index dd3188c146c995..3948de6c3277fb 100644 --- a/app/javascript/mastodon/locales/es-MX.json +++ b/app/javascript/mastodon/locales/es-MX.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Tarifa limitada", "alert.unexpected.message": "Hubo un error inesperado.", "alert.unexpected.title": "¡Ups!", + "alt_text_badge.title": "Texto alternativo", "announcement.announcement": "Anuncio", "attachments_list.unprocessed": "(sin procesar)", "audio.hide": "Ocultar audio", @@ -221,7 +222,8 @@ "domain_block_modal.they_cant_follow": "Nadie de este servidor puede seguirte.", "domain_block_modal.they_wont_know": "No sabrán que han sido bloqueados.", "domain_block_modal.title": "¿Bloquear dominio?", - "domain_block_modal.you_will_lose_num_followers": "Perderás {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} y {followingCount, plural, one {{followingCountDisplay} persona a la que sigues} other {{followingCountDisplay} personas a las que sigues}}.", + "domain_block_modal.you_will_lose_num_followers": "Vas a perder {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} y {followingCount, plural, one {{followingCountDisplay} persona a la que sigues} other {{followingCountDisplay} personas a las que sigas}}.", + "domain_block_modal.you_will_lose_relationships": "Perderás todos los seguidores y las personas que sigues de este servidor.", "domain_block_modal.you_wont_see_posts": "No verás publicaciones ni notificaciones de usuarios en este servidor.", "domain_pill.activitypub_lets_connect": "Te permite conectar e interactuar con personas no sólo en Mastodon, sino también a través de diferentes aplicaciones sociales.", "domain_pill.activitypub_like_language": "ActivityPub es como el idioma que Mastodon habla con otras redes sociales.", diff --git a/app/javascript/mastodon/locales/es.json b/app/javascript/mastodon/locales/es.json index aa282b4c5bf13a..6e7ea9c9ec72d8 100644 --- a/app/javascript/mastodon/locales/es.json +++ b/app/javascript/mastodon/locales/es.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Tráfico limitado", "alert.unexpected.message": "Hubo un error inesperado.", "alert.unexpected.title": "¡Ups!", + "alt_text_badge.title": "Texto alternativo", "announcement.announcement": "Anuncio", "attachments_list.unprocessed": "(sin procesar)", "audio.hide": "Ocultar audio", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "No sabrán que han sido bloqueados.", "domain_block_modal.title": "¿Bloquear dominio?", "domain_block_modal.you_will_lose_num_followers": "Perderás {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} y {followingCount, plural, one {{followingCountDisplay} persona a la que sigues} other {{followingCountDisplay} personas a las que sigues}}.", + "domain_block_modal.you_will_lose_relationships": "Perderás a todos los seguidores y gente a la que sigas de este servidor.", "domain_block_modal.you_wont_see_posts": "No verás mensajes ni notificaciones de usuarios en este servidor.", "domain_pill.activitypub_lets_connect": "Te permite conectar e interactuar con personas no sólo en Mastodon, sino también a través de diferentes aplicaciones sociales.", "domain_pill.activitypub_like_language": "ActivityPub es como el idioma que Mastodon habla con otras redes sociales.", diff --git a/app/javascript/mastodon/locales/eu.json b/app/javascript/mastodon/locales/eu.json index 35b869486bb3d7..63449e934210ee 100644 --- a/app/javascript/mastodon/locales/eu.json +++ b/app/javascript/mastodon/locales/eu.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Abiadura mugatua", "alert.unexpected.message": "Ustekabeko errore bat gertatu da.", "alert.unexpected.title": "Ene!", + "alt_text_badge.title": "Testu alternatiboa", "announcement.announcement": "Iragarpena", "attachments_list.unprocessed": "(prozesatu gabe)", "audio.hide": "Ezkutatu audioa", diff --git a/app/javascript/mastodon/locales/fa.json b/app/javascript/mastodon/locales/fa.json index 583fd4ec5a9d2b..d510c2a6a455c9 100644 --- a/app/javascript/mastodon/locales/fa.json +++ b/app/javascript/mastodon/locales/fa.json @@ -85,9 +85,11 @@ "alert.rate_limited.title": "محدودیت تعداد", "alert.unexpected.message": "خطایی غیرمنتظره رخ داد.", "alert.unexpected.title": "ای وای!", + "alt_text_badge.title": "متن جایگزین", "announcement.announcement": "اعلامیه", "attachments_list.unprocessed": "(پردازش نشده)", "audio.hide": "نهفتن صدا", + "block_modal.remote_users_caveat": "ما از کارساز {domain} خواهیم خواست که به تصمیم شما احترام بگذارد. با این حال، تضمینی برای رعایت آن وجود ندارد زیرا برخی کارسازها ممکن است بلوک‌ها را به‌طور متفاوتی مدیریت کنند. فرسته‌های عمومی ممکن است همچنان برای کاربران که وارد نشده قابل مشاهده باشند.", "block_modal.show_less": "نمایش کم‌تر", "block_modal.show_more": "نمایش بیش‌تر", "block_modal.they_cant_mention": "نمی‌توانند نامتان را برده یا پی‌تان بگیرند.", @@ -220,7 +222,10 @@ "domain_block_modal.they_cant_follow": "هیچ‌کسی از این کارساز نمی‌تواند پیتان بگیرد.", "domain_block_modal.they_wont_know": "نخواهند دانست که مسدود شده‌اند.", "domain_block_modal.title": "انسداد دامنه؟", + "domain_block_modal.you_will_lose_relationships": "شما تمام پیگیرکنندگان و افرادی که از این کارساز پیگیری می‌کنید را از دست خواهید داد.", "domain_block_modal.you_wont_see_posts": "فرسته‌ها یا آگاهی‌ها از کاربران روی این کارساز را نخواهید دید.", + "domain_pill.activitypub_lets_connect": "این به شما اجازه می‌دهد تا نه تنها در ماستودون، بلکه در برنامه‌های اجتماعی مختلف نیز با افراد ارتباط برقرار کرده و تعامل داشته باشید.", + "domain_pill.activitypub_like_language": "ActivityPub مانند زبانی است که ماستودون با دیگر شبکه‌های اجتماعی صحبت می‌کند.", "domain_pill.server": "کارساز", "domain_pill.their_handle": "شناسه‌اش:", "domain_pill.their_server": "خانهٔ رقمیش. جایی که همهٔ فرسته‌هایش می‌زیند.", diff --git a/app/javascript/mastodon/locales/fi.json b/app/javascript/mastodon/locales/fi.json index 4caec3159fb321..0a37a96abbcb9d 100644 --- a/app/javascript/mastodon/locales/fi.json +++ b/app/javascript/mastodon/locales/fi.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Pyyntömäärää rajoitettu", "alert.unexpected.message": "Tapahtui odottamaton virhe.", "alert.unexpected.title": "Hups!", + "alt_text_badge.title": "Vaihtoehtoinen teksti", "announcement.announcement": "Tiedote", "attachments_list.unprocessed": "(käsittelemätön)", "audio.hide": "Piilota ääni", @@ -221,6 +222,8 @@ "domain_block_modal.they_cant_follow": "Kukaan tältä palvelimelta ei voi seurata sinua.", "domain_block_modal.they_wont_know": "Hän ei saa tietää tulleensa estetyksi.", "domain_block_modal.title": "Estetäänkö verkkotunnus?", + "domain_block_modal.you_will_lose_num_followers": "Menetät {followersCount, plural, one {{followersCountDisplay} seuraajasi} other {{followersCountDisplay} seuraajaasi}} ja {followingCount, plural, one {{followingCountDisplay} seurattusi} other {{followingCountDisplay} seurattuasi}}.", + "domain_block_modal.you_will_lose_relationships": "Menetät kaikki tämän palvelimen seuraajasi ja seurattusi.", "domain_block_modal.you_wont_see_posts": "Et enää näe julkaisuja etkä ilmoituksia tämän palvelimen käyttäjiltä.", "domain_pill.activitypub_lets_connect": "Sen avulla voit muodostaa yhteyden ja olla vuorovaikutuksessa ihmisten kanssa, ei vain Mastodonissa vaan myös muissa sosiaalisissa sovelluksissa.", "domain_pill.activitypub_like_language": "ActivityPub on kuin kieli, jota Mastodon puhuu muiden sosiaalisten verkostojen kanssa.", diff --git a/app/javascript/mastodon/locales/fo.json b/app/javascript/mastodon/locales/fo.json index 3165c101533407..70908c62dc9288 100644 --- a/app/javascript/mastodon/locales/fo.json +++ b/app/javascript/mastodon/locales/fo.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Avmarkaður títtleiki", "alert.unexpected.message": "Ein óvæntaður feilur kom fyri.", "alert.unexpected.title": "Ups!", + "alt_text_badge.title": "Annar tekstur", "announcement.announcement": "Kunngerð", "attachments_list.unprocessed": "(óviðgjørt)", "audio.hide": "Fjal ljóð", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "Tey vita ikki, at tey eru bannað.", "domain_block_modal.title": "Banna økisnavni?", "domain_block_modal.you_will_lose_num_followers": "Tú missir {followersCount, plural, one {{followersCountDisplay} fylgjara} other {{followersCountDisplay} fylgjarar}} og {followingCount, plural, one {{followingCountDisplay} persón, sum tú fylgir} other {{followingCountDisplay} persónar, sum tú fylgir}}.", + "domain_block_modal.you_will_lose_relationships": "Tú fer at missa allar fylgjarar og øll tey, tú fylgir á hesum ambætaranum.", "domain_block_modal.you_wont_see_posts": "Tú sært ongar postar ella boð frá brúkarum á hesum ambætara.", "domain_pill.activitypub_lets_connect": "Tað letur teg fáa samband og samvirka við fólki ikki bara á Mastodon, men á øðrum sosialum appum eisini.", "domain_pill.activitypub_like_language": "ActivityPub er málið, sum Mastodon tosar við onnur sosial netverk.", diff --git a/app/javascript/mastodon/locales/ga.json b/app/javascript/mastodon/locales/ga.json index 2161591dcd40c7..6d64c6f712eea5 100644 --- a/app/javascript/mastodon/locales/ga.json +++ b/app/javascript/mastodon/locales/ga.json @@ -221,6 +221,7 @@ "domain_block_modal.they_cant_follow": "Ní féidir le duine ar bith ón bhfreastalaí seo tú a leanúint.", "domain_block_modal.they_wont_know": "Ní bheidh a fhios acu go bhfuil bac orthu.", "domain_block_modal.title": "Blocáil fearann?", + "domain_block_modal.you_will_lose_num_followers": "Caillfidh tú {followersCount, plural, one {{followersCountDisplay} leantóir} two {{followersCountDisplay} leantóirí} few {{followersCountDisplay} leantóirí} many {{followersCountDisplay} leantóirí} other {{followersCountDisplay} leantóirí}} agus {followingCount, plural, one {{followingCountDisplay} duine atá á leanúint agat} two {{followingCountDisplay} daoine atá á leanúint agat} few {{followingCountDisplay} daoine atá á leanúint agat} many {{followingCountDisplay} daoine atá á leanúint agat} other {{followingCountDisplay} daoine atá á leanúint agat}}.", "domain_block_modal.you_wont_see_posts": "Ní fheicfidh tú postálacha nó fógraí ó úsáideoirí ar an bhfreastalaí seo.", "domain_pill.activitypub_lets_connect": "Ligeann sé duit ceangal agus idirghníomhú le daoine, ní hamháin ar Mastodon, ach thar aipeanna sóisialta éagsúla freisin.", "domain_pill.activitypub_like_language": "Tá GníomhaíochtPub cosúil leis an teanga a labhraíonn Mastodon le líonraí sóisialta eile.", diff --git a/app/javascript/mastodon/locales/gl.json b/app/javascript/mastodon/locales/gl.json index aa3a78fce8f897..c2b645ed0f2deb 100644 --- a/app/javascript/mastodon/locales/gl.json +++ b/app/javascript/mastodon/locales/gl.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Límite de intentos", "alert.unexpected.message": "Aconteceu un fallo non agardado.", "alert.unexpected.title": "Vaites!", + "alt_text_badge.title": "Texto Alt", "announcement.announcement": "Anuncio", "attachments_list.unprocessed": "(sen procesar)", "audio.hide": "Agochar audio", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "Non saberá que a bloqueaches.", "domain_block_modal.title": "Bloquear dominio?", "domain_block_modal.you_will_lose_num_followers": "Vas perder {followersCount, plural, one {{followersCountDisplay} seguidora} other {{followersCountDisplay} seguidoras}} e {followingCount, plural, one {{followingCountDisplay} persoa que segues} other {{followingCountDisplay} persoas que segues}}.", + "domain_block_modal.you_will_lose_relationships": "Vas perder todas as seguidoras e seguimentos a persoas deste servidor.", "domain_block_modal.you_wont_see_posts": "Non verás publicacións ou notificacións das usuarias deste servidor.", "domain_pill.activitypub_lets_connect": "Permíteche conectar e interactuar con persoas non só de Mastodon, se non tamén con outras sociais.", "domain_pill.activitypub_like_language": "ActivityPub é algo así como o idioma que Mastodon fala con outras redes sociais.", diff --git a/app/javascript/mastodon/locales/hu.json b/app/javascript/mastodon/locales/hu.json index 2e48cb626df40b..34a9949afd1a1c 100644 --- a/app/javascript/mastodon/locales/hu.json +++ b/app/javascript/mastodon/locales/hu.json @@ -221,6 +221,8 @@ "domain_block_modal.they_cant_follow": "Erről a kiszolgálóról senki sem követhet.", "domain_block_modal.they_wont_know": "Nem fogja tudni, hogy letiltották.", "domain_block_modal.title": "Letiltsuk a domaint?", + "domain_block_modal.you_will_lose_num_followers": "El fogsz veszíteni {followersCount, plural, one {{followersCountDisplay} követőt} other {{followersCountDisplay} követőt}} és {followingCount, plural, one {{followingCountDisplay} követett személyt} other {{followingCountDisplay} követett személyt}}.", + "domain_block_modal.you_will_lose_relationships": "Minden követőt és követett személyt el fogsz veszíteni erről a kiszolgálóról.", "domain_block_modal.you_wont_see_posts": "Nem látsz majd bejegyzéseket vagy értesítéseket ennek a kiszolgálónak a felhasználóitól.", "domain_pill.activitypub_lets_connect": "Lehetővé teszi, hogy kapcsolatba lépj nem csak a Mastodonon, hanem a más közösségi alkalmazásokon lévő emberekkel is.", "domain_pill.activitypub_like_language": "Az ActivityPub olyan mint egy nyelv, amelyet a Mastodon a más közösségi hálózatokkal való kommunikációra használ.", diff --git a/app/javascript/mastodon/locales/io.json b/app/javascript/mastodon/locales/io.json index aa284685e72173..b47590a64c7ae6 100644 --- a/app/javascript/mastodon/locales/io.json +++ b/app/javascript/mastodon/locales/io.json @@ -1,6 +1,7 @@ { "about.blocks": "Jerata servili", "about.contact": "Kontaktajo:", + "about.disclaimer": "Mastodon esas libera, publikfonta e komercmarko di Mastodon gGmbH.", "about.domain_blocks.no_reason_available": "Expliko nedisponebla", "about.domain_blocks.preamble": "Mastodon generale permisas on vidar kontenajo e interagar kun uzanti de irga altra servilo en fediverso. Existas eceptioni quo facesis che ca partikulara servilo.", "about.domain_blocks.silenced.explanation": "On generale ne vidar profili e kontenajo de ca servilo, se on ne reale trovar o voluntale juntar per sequar.", @@ -10,6 +11,7 @@ "about.not_available": "Ca informo ne igesis che ca servilo.", "about.powered_by": "Necentraligita sociala ret quo povigesas da {mastodon}", "about.rules": "Servilreguli", + "account.account_note_header": "Personala noto", "account.add_or_remove_from_list": "Insertez o removez de listi", "account.badges.bot": "Boto", "account.badges.group": "Grupo", @@ -29,9 +31,12 @@ "account.featured_tags.last_status_never": "Nula posti", "account.featured_tags.title": "Estalita hashtagi di {name}", "account.follow": "Sequar", + "account.follow_back": "Anke sequez", "account.followers": "Sequanti", "account.followers.empty": "Nulu sequas ca uzanto til nun.", + "account.followers_counter": "{count, plural,one {{counter} sequanto} other {{counter} sequanti}}", "account.following": "Sequata", + "account.following_counter": "{count, plural,one {{counter} sequato} other {{counter} sequati}}", "account.follows.empty": "Ca uzanto ne sequa irgu til nun.", "account.go_to_profile": "Irez al profilo", "account.hide_reblogs": "Celez repeti de @{name}", @@ -47,6 +52,7 @@ "account.mute_notifications_short": "Silencigez avizi", "account.mute_short": "Silencigez", "account.muted": "Silencigata", + "account.mutual": "Mutuala", "account.no_bio": "Deskriptajo ne provizesis.", "account.open_original_page": "Apertez originala pagino", "account.posts": "Mesaji", @@ -56,6 +62,7 @@ "account.requested_follow": "{name} demandis sequar tu", "account.share": "Partigez profilo di @{name}", "account.show_reblogs": "Montrez repeti de @{name}", + "account.statuses_counter": "{count, plural,one {{counter} mesajo} other {{counter} mesaji}}", "account.unblock": "Desblokusar @{name}", "account.unblock_domain": "Desblokusar {domain}", "account.unblock_short": "Desblokusar", @@ -78,10 +85,21 @@ "alert.rate_limited.title": "Demandi limitizita", "alert.unexpected.message": "Neexpektita eroro eventis.", "alert.unexpected.title": "Problemo!", + "alt_text_badge.title": "Alternativa texto", "announcement.announcement": "Anunco", "attachments_list.unprocessed": "(neprocedita)", "audio.hide": "Celez audio", + "block_modal.remote_users_caveat": "Ni questionos {domain} di la servilo por respektar vua decido. Publika posti forsan ankore estas videbla a neenirinta uzanti.", + "block_modal.show_less": "Montrar mine", + "block_modal.show_more": "Montrar plue", + "block_modal.they_cant_mention": "Oli ne povas mencionar o sequar vu.", + "block_modal.they_cant_see_posts": "Oli ne povas vidar vua mesaji e vu ne vidos vidar olia.", + "block_modal.they_will_know": "Oli povas vidar ke oli esas blokusita.", + "block_modal.title": "Blokusar uzanto?", + "block_modal.you_wont_see_mentions": "Vu ne vidos mesaji qua mencionas oli.", "boost_modal.combo": "Vu povas pulsar {combo} por omisar co venontafoye", + "boost_modal.reblog": "Ka repetar posto?", + "boost_modal.undo_reblog": "Ka retrorepetar posto?", "bundle_column_error.copy_stacktrace": "Kopierorraporto", "bundle_column_error.error.body": "La demandita pagino ne povas strukturigesar. Forsan ol esas eroro en kodexo hike o vidilkoncilieblesproblemo.", "bundle_column_error.error.title": "Ach!", @@ -138,30 +156,47 @@ "compose_form.lock_disclaimer.lock": "klefagesas", "compose_form.placeholder": "Quo esas en tua spirito?", "compose_form.poll.duration": "Votpostoduro", + "compose_form.poll.multiple": "Multopla selekteso", + "compose_form.poll.option_placeholder": "Selektato {number}", + "compose_form.poll.single": "Selektez un", "compose_form.poll.switch_to_multiple": "Chanjez votposto por permisar multiselektaji", "compose_form.poll.switch_to_single": "Chanjez votposto por permisar una selektajo", + "compose_form.poll.type": "Stilo", + "compose_form.publish": "Posto", "compose_form.publish_form": "Publish", + "compose_form.reply": "Respondez", + "compose_form.save_changes": "Aktualigez", "compose_form.spoiler.marked": "Text is hidden behind warning", "compose_form.spoiler.unmarked": "Text is not hidden", + "compose_form.spoiler_placeholder": "Kontenajaverto (selektebla)", "confirmation_modal.cancel": "Anulez", "confirmations.block.confirm": "Restriktez", "confirmations.delete.confirm": "Efacez", "confirmations.delete.message": "Are you sure you want to delete this status?", + "confirmations.delete.title": "Ka efacar posto?", "confirmations.delete_list.confirm": "Efacez", "confirmations.delete_list.message": "Ka vu certe volas netempale efacar ca listo?", + "confirmations.delete_list.title": "Ka efacar listo?", "confirmations.discard_edit_media.confirm": "Efacez", "confirmations.discard_edit_media.message": "Vu havas nesparita chanji di mediodeskript o prevido, vu volas jus efacar?", "confirmations.edit.confirm": "Modifikez", "confirmations.edit.message": "Modifikar nun remplasos la mesajo quon vu nune skribas. Ka vu certe volas procedar?", + "confirmations.edit.title": "Ka remplasar posto?", "confirmations.logout.confirm": "Ekirez", "confirmations.logout.message": "Ka tu certe volas ekirar?", + "confirmations.logout.title": "Ka ekirar?", "confirmations.mute.confirm": "Silencigez", "confirmations.redraft.confirm": "Efacez e riskisez", "confirmations.redraft.message": "Ka vu certe volas efacar ca posto e riskisigar ol? Favoriziti e repeti esos perdita, e respondi al posto originala esos orfanigita.", + "confirmations.redraft.title": "Ka efacar & riskisar posto?", "confirmations.reply.confirm": "Respondez", "confirmations.reply.message": "Respondar nun remplos mesajo quon vu nun igas. Ka vu certe volas durar?", + "confirmations.reply.title": "Ka remplasar posto?", "confirmations.unfollow.confirm": "Desequez", "confirmations.unfollow.message": "Ka vu certe volas desequar {name}?", + "confirmations.unfollow.title": "Ka retrosequar uzanto?", + "content_warning.hide": "Celez posto", + "content_warning.show": "Montrez nur", "conversation.delete": "Efacez konverso", "conversation.mark_as_read": "Markizez quale lektita", "conversation.open": "Videz konverso", @@ -181,6 +216,28 @@ "dismissable_banner.explore_statuses": "Yen posti del tota reto sociala qui esas populara hodie. Posti plu nova kun plu repeti e favoriziti esas rangizita plu alte.", "dismissable_banner.explore_tags": "Ca hashtagi bezonas plu famoza inter personi che ca e altra servili di la necentraligita situo nun.", "dismissable_banner.public_timeline": "Yen la posti maxim recenta da personi che la reto sociala quin personi che {domain} sequas.", + "domain_block_modal.block": "Blokusez servilo", + "domain_block_modal.block_account_instead": "Blokusez @{name} vice", + "domain_block_modal.they_can_interact_with_old_posts": "Personi de ca servilo povas interagar kun vua desnova posti.", + "domain_block_modal.they_cant_follow": "Nulu de ca servilo povas sequar vu.", + "domain_block_modal.they_wont_know": "Lu ne savos ke lu blokusesis.", + "domain_block_modal.title": "Ka blokusar domeno?", + "domain_block_modal.you_will_lose_num_followers": "Vu desganos {followersCount, plural, one {{followersCountDisplay} sequanto} other {{followersCountDisplay} sequanti}} e {followingCount, plural, one {{followingCountDisplay} persono quan vu sequas} other {{followingCountDisplay} personi quan vu sequas}}.", + "domain_block_modal.you_will_lose_relationships": "Vu desganos omna sequanti e sequati de ca servilo.", + "domain_block_modal.you_wont_see_posts": "Vu ne vidos postoi o savigi de uzanti en ca servilo.", + "domain_pill.activitypub_lets_connect": "Ol povigas vu kuneskas e interagar kun personi ne nur sur Mastodon, o anke kun dessama socia softwari.", + "domain_pill.activitypub_like_language": "ActivityPub esas kam linguo quan Mastodon parolas kun altra socia reti.", + "domain_pill.server": "Servilo", + "domain_pill.their_handle": "Lua nomo:", + "domain_pill.their_server": "Lua komputala hemo, e havas omna lua posti.", + "domain_pill.their_username": "Lua unika identesilo sur lua servilo. Posible trovar uzanti kun sama uzantonomo sur dessama servili.", + "domain_pill.username": "Uzantonomo", + "domain_pill.whats_in_a_handle": "Quo esas nomo?", + "domain_pill.who_they_are": "Pro ke nomo esas deskripto di ulu, vu povas interagar kun personi tra socia interreto kun .", + "domain_pill.who_you_are": "Pro ke vua nomo esas deskripto pri vu e vua situo, personi povas interagar kun vu tra socia interreto kun .", + "domain_pill.your_handle": "Vua nomo:", + "domain_pill.your_server": "Vua komputerala hemo qua havas omna vua posti. On povas transferar a altra servili ulatempe e anke adportar vua sequanti.", + "domain_pill.your_username": "Vua unika identesilo sur lua servilo. Posible trovar uzanti kun sama uzantonomo sur dessama servili.", "embed.instructions": "Embed this status on your website by copying the code below.", "embed.preview": "Co esas quon ol semblos tale:", "emoji_button.activity": "Ago", @@ -217,6 +274,7 @@ "empty_column.list": "There is nothing in this list yet.", "empty_column.lists": "Vu ne havas irga listi til nun. Kande vu kreas talo, ol montresos hike.", "empty_column.mutes": "Vu ne silencigis irga uzanti til nun.", + "empty_column.notification_requests": "Finis. Kande vu recevas nova savigi, oli aparos hike segun vua preferaji.", "empty_column.notifications": "Tu havas ankore nula savigo. Komunikez kun altri por debutar la konverso.", "empty_column.public": "Esas nulo hike! Skribez ulo publike, o manuale sequez uzeri de altra instaluri por plenigar ol.", "error.unexpected_crash.explanation": "Pro eroro en nia kodexo o vidilkonciliebloproblemo, ca pagino ne povas korekte montresar.", @@ -247,12 +305,30 @@ "filter_modal.select_filter.subtitle": "Usez disponebla grupo o kreez novajo", "filter_modal.select_filter.title": "Filtragez ca posto", "filter_modal.title.status": "Filtragez posto", + "filter_warning.matches_filter": "Sama kam filtrilo \"{title}\"", + "filtered_notifications_banner.pending_requests": "De {count, plural,=0 {nulu} one {1 persono} other {# personi}} quan vu forsan konocas", + "filtered_notifications_banner.title": "Filtrilita savigi", "firehose.all": "Omno", "firehose.local": "Ca servilo", "firehose.remote": "Altra servili", "follow_request.authorize": "Yurizar", "follow_request.reject": "Refuzar", "follow_requests.unlocked_explanation": "Quankam vua konto ne klefklozesis, la {domain} laborero pensas ke vu forsan volas kontralar sequodemandi de ca konti manuale.", + "follow_suggestions.curated_suggestion": "Selektato de jeranto", + "follow_suggestions.dismiss": "Ne montrez pluse", + "follow_suggestions.featured_longer": "Selektesis da la grupo di {domain}", + "follow_suggestions.friends_of_friends_longer": "Populara inter personi quan vu sequas", + "follow_suggestions.hints.featured": "Ca profilo selektesis da la grupo di {domain}.", + "follow_suggestions.hints.friends_of_friends": "Ca profilo esas populara inter personi quan vu sequas.", + "follow_suggestions.hints.most_followed": "Vua profilo esas un de maxim sequita sur {domain}.", + "follow_suggestions.hints.most_interactions": "Ca profilo recente populareskis sur {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Ca profilo esas simila a la profili quan vu recente sequis.", + "follow_suggestions.personalized_suggestion": "Personalita sugestato", + "follow_suggestions.popular_suggestion": "Populara sugestato", + "follow_suggestions.popular_suggestion_longer": "Populara sur {domain}", + "follow_suggestions.similar_to_recently_followed_longer": "Simila a profili quan vu recente sequis", + "follow_suggestions.view_all": "Videz omno", + "follow_suggestions.who_to_follow": "Sequindo", "followed_tags": "Hashtagi sequita", "footer.about": "Pri co", "footer.directory": "Profilcheflisto", @@ -279,6 +355,14 @@ "hashtag.follow": "Sequez hashtago", "hashtag.unfollow": "Desequez hashtago", "hashtags.and_other": "…e {count, plural, one {# plusa}other {# plusa}}", + "hints.profiles.followers_may_be_missing": "Sequanti di ca profilo forsan ne esas hike.", + "hints.profiles.follows_may_be_missing": "Sequati di ca profilo forsan ne esas hike.", + "hints.profiles.posts_may_be_missing": "Kelka posti sur ca profilo forsan ne esas hike.", + "hints.profiles.see_more_followers": "Vidar plu multa sequanti sur {domain}", + "hints.profiles.see_more_follows": "Vidar plu multa sequati sur {domain}", + "hints.profiles.see_more_posts": "Vidar plu multa posti sur {domain}", + "hints.threads.replies_may_be_missing": "Respondi de altra servili forsan ne esas hike.", + "hints.threads.see_more": "Vidar plu multa demandi sur {domain}", "home.column_settings.show_reblogs": "Montrar repeti", "home.column_settings.show_replies": "Montrar respondi", "home.hide_announcements": "Celez anunci", @@ -286,6 +370,17 @@ "home.pending_critical_update.link": "Vidar aktualigaji", "home.pending_critical_update.title": "Sekuresala aktualigajo gravega disponebla!", "home.show_announcements": "Montrez anunci", + "ignore_notifications_modal.disclaimer": "Mastodon ne povas savigar uzanti ke vu ignoris olia savigi. Ignorar savigi ne cesos ipse mesaji sendesar.", + "ignore_notifications_modal.filter_instead": "Filtrar vice", + "ignore_notifications_modal.filter_to_act_users": "Vu povos aceptar, refuzar o raportar uzanti", + "ignore_notifications_modal.filter_to_avoid_confusion": "Filtro helpas evitar posibla konfuzo", + "ignore_notifications_modal.filter_to_review_separately": "Vu povas kontrolar filtrita savigi separe", + "ignore_notifications_modal.ignore": "Ignorez savigi", + "ignore_notifications_modal.limited_accounts_title": "Ka ignorar savigi de jerita konti?", + "ignore_notifications_modal.new_accounts_title": "Ka ignorar savigi de nova konti?", + "ignore_notifications_modal.not_followers_title": "Ka ignorar savigi de personi qua ne sequas vu?", + "ignore_notifications_modal.not_following_title": "Ka ignorar savigi de personi quan vu ne sequas?", + "ignore_notifications_modal.private_mentions_title": "Ka ignorar savigi de nekonocita privata mencionii?", "interaction_modal.description.favourite": "Kun konto che Mastodon, vu povas favorizar ca posto por savigar la autoro ke vu prizas ol e sparar ol por pose.", "interaction_modal.description.follow": "Per konto che Mastodon, vu povas sequar {name} por ganar ola posti en vua hemniuzeto.", "interaction_modal.description.reblog": "Per konto che Mastodon, vu povas repetar ca posti por dissemar lo a vua propra sequati.", @@ -341,9 +436,13 @@ "lightbox.close": "Klozar", "lightbox.next": "Nexta", "lightbox.previous": "Antea", + "lightbox.zoom_in": "Grandigez a reala grandeso", + "lightbox.zoom_out": "Grandigez por fitigar", "limited_account_hint.action": "Jus montrez profilo", "limited_account_hint.title": "Ca profilo celesas dal jereri di {domain}.", "link_preview.author": "Da {name}", + "link_preview.more_from_author": "Plua de {name}", + "link_preview.shares": "{count, plural,one {{counter} posto} other {{counter} posti}}", "lists.account.add": "Insertez a listo", "lists.account.remove": "Efacez de listo", "lists.delete": "Efacez listo", @@ -360,8 +459,19 @@ "lists.subheading": "Vua listi", "load_pending": "{count, plural, one {# nova kozo} other {# nova kozi}}", "loading_indicator.label": "Kargante…", + "media_gallery.hide": "Celez", "moved_to_account_banner.text": "Vua konto {disabledAccount} es nune desaktiva pro ke vu movis a {movedToAccount}.", + "mute_modal.hide_from_notifications": "Celez de savigi", + "mute_modal.hide_options": "Celez preferaji", + "mute_modal.indefinite": "Til me retrosilencigas lu", + "mute_modal.show_options": "Montrez preferaji", + "mute_modal.they_can_mention_and_follow": "Lu povas mencionar e sequar vu, ma vu ne vidos lu.", + "mute_modal.they_wont_know": "Lu ne savos ke lu silencigesis.", + "mute_modal.title": "Ka silencigar uzanto?", + "mute_modal.you_wont_see_mentions": "Vu ne vidos posti qua mencionas lu.", + "mute_modal.you_wont_see_posts": "Lu ankore povas vidar vua posti, ma vu ne vidos lua.", "navigation_bar.about": "Pri co", + "navigation_bar.administration": "Administro", "navigation_bar.advanced_interface": "Apertez per retintervizajo", "navigation_bar.blocks": "Blokusita uzeri", "navigation_bar.bookmarks": "Libromarki", @@ -378,6 +488,7 @@ "navigation_bar.follows_and_followers": "Sequati e sequanti", "navigation_bar.lists": "Listi", "navigation_bar.logout": "Ekirar", + "navigation_bar.moderation": "Jero", "navigation_bar.mutes": "Celita uzeri", "navigation_bar.opened_in_classic_interface": "Posti, konti e altra pagini specifika apertesas en la retovidilo klasika.", "navigation_bar.personal": "Personala", @@ -388,20 +499,71 @@ "navigation_bar.security": "Sekureso", "not_signed_in_indicator.not_signed_in": "Vu mustas enirar por acesar ca moyeno.", "notification.admin.report": "{name} raportizis {target}", + "notification.admin.report_account": "{name} raportis {count, plural,one {1 posto} other {# posti}} de {target} pro {category}", + "notification.admin.report_account_other": "{name} raportis {count, plural,one {1 posto} other {# posti}} de {target}", + "notification.admin.report_statuses": "{name} raportis {target} pro {category}", + "notification.admin.report_statuses_other": "{name} raportis {target}", "notification.admin.sign_up": "{name} registresis", + "notification.admin.sign_up.name_and_others": "{name} e {count, plural,one {# altru} other {#altri}} enrejistris", "notification.favourite": "{name} favorizis tua mesajo", + "notification.favourite.name_and_others_with_link": "{name} e {count, plural,one {# altru} other {# altri}} favorizis vua posto", "notification.follow": "{name} sequeskis tu", + "notification.follow.name_and_others": "{name} e {count, plural,one {# altru} other {#altri}} sequis vu", "notification.follow_request": "{name} demandas sequar vu", + "notification.follow_request.name_and_others": "{name} e {count, plural,one {# altru} other {# altri}} volas sequar vu", + "notification.label.mention": "Mencionez", + "notification.label.private_mention": "Privata menciono", + "notification.label.private_reply": "Privata respondo", + "notification.label.reply": "Respondez", + "notification.mention": "Mencionez", + "notification.moderation-warning.learn_more": "Lernez pluse", + "notification.moderation_warning": "Vu recevis jeraverto", + "notification.moderation_warning.action_delete_statuses": "Kelka vua posti efacesis.", + "notification.moderation_warning.action_disable": "Vua konto estas desaktivigita.", + "notification.moderation_warning.action_mark_statuses_as_sensitive": "Kelka vua posti markizesis quale sentoza.", + "notification.moderation_warning.action_none": "Vua konto recevis jeraverto.", + "notification.moderation_warning.action_sensitive": "Vua posti markizesos quale sentoza pos nun.", + "notification.moderation_warning.action_silence": "Vua konto limitizesis.", + "notification.moderation_warning.action_suspend": "Vua konto restriktesis.", "notification.own_poll": "Vua votposto finigis", + "notification.poll": "Votposto quan vu partoprenis finis", "notification.reblog": "{name} repetis tua mesajo", + "notification.reblog.name_and_others_with_link": "{name} e {count, plural,one {# altru} other {#altri}} repetis vua posto", + "notification.relationships_severance_event": "Desganis konekteso kun {name}", + "notification.relationships_severance_event.account_suspension": "Administranto de {from} restriktis {target}, do vu ne povas plue recevar novaji de lu o interagar kun lu.", + "notification.relationships_severance_event.domain_block": "Administranto de {from} blokusis {target}, e anke {followersCount} de vua sequanti e {followingCount, plural, one {# konto} other {# konti}} quan vu sequas.", + "notification.relationships_severance_event.learn_more": "Lernez pluse", + "notification.relationships_severance_event.user_domain_block": "Vu blokusis {target}, do efacis {followersCount} de vua sequanti e {followingCount, plural, one {# konto} other {#konti}} quan vu sequis.", "notification.status": "{name} nove postigis", "notification.update": "{name} modifikis posto", + "notification_requests.accept": "Aceptez", + "notification_requests.accept_multiple": "{count, plural, one {Aceptar # demando…} other {Aceptar # demandi…}}", + "notification_requests.confirm_accept_multiple.button": "{count, plural, one {Aceptar demando} other {Aceptar demandi}}", + "notification_requests.confirm_accept_multiple.message": "Vu aceptos {count, plural, one {1 savigdemando} other {# savigdemandi}}. Ka vu certe volas durar?", + "notification_requests.confirm_accept_multiple.title": "Ka aceptar savigdemandi?", + "notification_requests.confirm_dismiss_multiple.button": "{count, plural, one {Ignorez demando} other {Ignorez demandi}}", + "notification_requests.confirm_dismiss_multiple.message": "Vu ignoros {count, plural, one {1 savigdemando} other {# savigdemandi}}. Vu ne povas facile ganar {count, plural, one {ol} other {oli}} pluse. Ka vu esas certe ke vu volas durar?", + "notification_requests.confirm_dismiss_multiple.title": "Ka ignorar savigdemandi?", + "notification_requests.dismiss": "Ignorez", + "notification_requests.dismiss_multiple": "{count, plural,one {Ignorez # demando…} other {Ignorez # demandi…}}", + "notification_requests.edit_selection": "Modifikez", + "notification_requests.exit_selection": "Finas", + "notification_requests.explainer_for_limited_account": "Savigi de ca konto filtresis pro ke la konto limitizesis da jeranto.", + "notification_requests.explainer_for_limited_remote_account": "Savigi de ca konto filtresis pro ke la konto o olua servilo limitizesis da jeranto.", + "notification_requests.maximize": "Parmontrez", + "notification_requests.minimize_banner": "Celez banero di filtrita savigi", + "notification_requests.notifications_from": "Savigi de {name}", + "notification_requests.title": "Filtrita savigi", + "notification_requests.view": "Videz savigi", "notifications.clear": "Efacar savigi", "notifications.clear_confirmation": "Ka tu esas certa, ke tu volas efacar omna tua savigi?", + "notifications.clear_title": "Ka efacar savigi?", "notifications.column_settings.admin.report": "Nova raporti:", "notifications.column_settings.admin.sign_up": "Nova registranti:", "notifications.column_settings.alert": "Desktopavizi", "notifications.column_settings.favourite": "Favoriziti:", + "notifications.column_settings.filter_bar.advanced": "Montrez omna kategorii", + "notifications.column_settings.filter_bar.category": "Rapidfiltrilbaro", "notifications.column_settings.follow": "Nova sequanti:", "notifications.column_settings.follow_request": "Nova sequodemandi:", "notifications.column_settings.mention": "Mencioni:", @@ -427,6 +589,23 @@ "notifications.permission_denied": "Desktopavizi esas nedisplonebla pro antea refuzita vidilpermisdemando", "notifications.permission_denied_alert": "Desktopavizi ne povas aktivigesar pro ke vidilpermiso refuzesis", "notifications.permission_required": "Desktopavizi esas nedisplonebla pro ke bezonata permiso ne donesis.", + "notifications.policy.accept": "Aceptez", + "notifications.policy.accept_hint": "Montrez en savigi", + "notifications.policy.drop": "Ignorez", + "notifications.policy.drop_hint": "Nihiligez lu", + "notifications.policy.filter": "Filtrez", + "notifications.policy.filter_hint": "Sendez a enbuxo di filtrita savigi", + "notifications.policy.filter_limited_accounts_hint": "Limitizesis da serviljeranti", + "notifications.policy.filter_limited_accounts_title": "Jerita konti", + "notifications.policy.filter_new_accounts.hint": "Kreesis depos {days, plural, one {1 dio} other {# dii}}", + "notifications.policy.filter_new_accounts_title": "Nova konti", + "notifications.policy.filter_not_followers_hint": "Inkluzanta personi qua sequas vu min kam {days, plural, one {1 dio} other {# dii}}", + "notifications.policy.filter_not_followers_title": "Nesequanti", + "notifications.policy.filter_not_following_hint": "Til vu manuale aprobas lu", + "notifications.policy.filter_not_following_title": "Nesequati", + "notifications.policy.filter_private_mentions_hint": "Filtrita se ol ne esas respondo a vua sua menciono o se vu sequas la sendanto", + "notifications.policy.filter_private_mentions_title": "Nekonocita privata mencioni", + "notifications.policy.title": "Regular savigi de…", "notifications_permission_banner.enable": "Aktivigez desktopavizi", "notifications_permission_banner.how_to_control": "Por ganar avizi kande Mastodon ne esas apertita, aktivigez dekstopavizi. Vu povas precize regularar quale interakti facas deskstopavizi tra la supera {icon} butono pos oli aktivigesis.", "notifications_permission_banner.title": "Irga kozo ne pasas vu", @@ -464,6 +643,10 @@ "onboarding.steps.setup_profile.title": "Customize your profile", "onboarding.steps.share_profile.body": "Let your friends know how to find you on Mastodon!", "onboarding.steps.share_profile.title": "Share your profile", + "onboarding.tips.2fa": "Ka vu savas? Vu povas sekurigar vua konto per pozar 2-faktora verifiko en preferaji de vua konto. Telefonilnombro ne bezonesis!", + "onboarding.tips.accounts_from_other_servers": "Ka vu savas? Vu povas interagar kun profili sur altra servili senrupte!", + "onboarding.tips.migration": "Ka vu savas? Se vu sentas ke {domain} ne esas apta por vu en la futuro, vu povas transferar a altra servilo di Mastodon sen malganar vua sequanti!", + "onboarding.tips.verification": "Ka vu savas? Vu povas verifikar vua konto per pozi ligilo a vua profilo di Mastodon sur vua sua retsituo e adjuntar la retsituo a vua profilo. Senpage!", "password_confirmation.exceeds_maxlength": "La konfirmo dil pasvorto superesas la limito pri longeso di pasvorti", "password_confirmation.mismatching": "La konfirmo dil pasvorto ne egalesas", "picture_in_picture.restore": "Retropozez", @@ -478,7 +661,15 @@ "poll_button.add_poll": "Insertez votposto", "poll_button.remove_poll": "Efacez votposto", "privacy.change": "Aranjar privateso di mesaji", + "privacy.direct.long": "Omnu quan mencionesis en la posto", + "privacy.direct.short": "Specifika personi", + "privacy.private.long": "Nur vua sequanti", + "privacy.private.short": "Sequanti", + "privacy.public.long": "Ulu de e ne de Mastodon", "privacy.public.short": "Publike", + "privacy.unlisted.additional": "Co kondutas exakte kam publika, escepte la posto ne aparos en viva novajari o gretiketi, exploro, o sercho di Mastodon, mem se vu esas volunta totkonte.", + "privacy.unlisted.long": "Min multa algoritmoridikuli", + "privacy.unlisted.short": "Deslauta publiko", "privacy_policy.last_updated": "Antea novajo ye {date}", "privacy_policy.title": "Privatesguidilo", "recommended": "Rekomendata", @@ -496,7 +687,9 @@ "relative_time.minutes": "{number}m", "relative_time.seconds": "{number}s", "relative_time.today": "hodie", + "reply_indicator.attachments": "{count, plural, one {# atachajo} other {# atachaji}}", "reply_indicator.cancel": "Nihiligar", + "reply_indicator.poll": "Votposto", "report.block": "Restriktez", "report.block_explanation": "Vu ne vidos olia posti. Oli ne povas vidar vua posti o sequar vu. Oli savos ke oli restriktesis.", "report.categories.legal": "Legala", @@ -539,9 +732,13 @@ "report.unfollow_explanation": "Vu sequas ca konto. Por ne vidar olia posti en vua hemniuzeto pluse, desequez oli.", "report_notification.attached_statuses": "{count, plural,one {{count} posti} other {{count} posti}} adjuntesas", "report_notification.categories.legal": "Legala", + "report_notification.categories.legal_sentence": "deslegala kontenajo", "report_notification.categories.other": "Altra", + "report_notification.categories.other_sentence": "altra", "report_notification.categories.spam": "Spamo", + "report_notification.categories.spam_sentence": "sendacho", "report_notification.categories.violation": "Regulnesequo", + "report_notification.categories.violation_sentence": "regulviolaco", "report_notification.open": "Apertez raporto", "search.no_recent_searches": "Nula serchi recenta", "search.placeholder": "Serchez", @@ -569,8 +766,11 @@ "server_banner.about_active_users": "Personi quo uzas ca servilo dum antea 30 dii (monate aktiva uzanti)", "server_banner.active_users": "aktiva uzanti", "server_banner.administered_by": "Administresis da:", + "server_banner.is_one_of_many": "{domain} esas 1 de multa sendependa servili di Mastodon quan vu povas uzar por partoprenar en la fediverso.", "server_banner.server_stats": "Servilstatistiko:", "sign_in_banner.create_account": "Kreez konto", + "sign_in_banner.follow_anyone": "On povas sequar ulu sur tota fediverso e vidar omno ye kronologia ordino. Nula algoritmi, reklami o klikatrapo omnaloke.", + "sign_in_banner.mastodon_is": "Mastodon esas la maxim bona voyo por saveskar eventi.", "sign_in_banner.sign_in": "Enirez", "sign_in_banner.sso_redirect": "Enirar o krear konto", "status.admin_account": "Apertez jerintervizajo por @{name}", @@ -580,14 +780,18 @@ "status.bookmark": "Libromarko", "status.cancel_reblog_private": "Desrepetez", "status.cannot_reblog": "Ca posto ne povas repetesar", + "status.continued_thread": "Durigita postaro", "status.copy": "Copy link to status", "status.delete": "Efacar", "status.detailed_status": "Detala konversvido", "status.direct": "Private mencionez @{name}", "status.direct_indicator": "Privata menciono", "status.edit": "Modifikez", + "status.edited": "Recente modifikesis ye {date}", "status.edited_x_times": "Modifikesis {count, plural, one {{count} foyo} other {{count} foyi}}", + "status.embed": "Ganez adherkodexo", "status.favourite": "Favorizar", + "status.favourites": "{count, plural, one {favorizo} other {favorizi}}", "status.filter": "Filtragez ca posto", "status.history.created": "{name} kreis ye {date}", "status.history.edited": "{name} modifikis ye {date}", @@ -606,9 +810,11 @@ "status.reblog": "Repetez", "status.reblog_private": "Repetez kun originala videbleso", "status.reblogged_by": "{name} repetis", + "status.reblogs": "{count, plural, one {repeto} other {repeti}}", "status.reblogs.empty": "Nulu ja repetis ca posto. Kande ulu facas lo, lu montresos hike.", "status.redraft": "Efacez e riskisigez", "status.remove_bookmark": "Efacez libromarko", + "status.replied_in_thread": "Respondesis en postaro", "status.replied_to": "Respondis a {name}", "status.reply": "Respondar", "status.replyAll": "Respondar a filo", diff --git a/app/javascript/mastodon/locales/it.json b/app/javascript/mastodon/locales/it.json index fdb56f542e90fe..ef709516c23bee 100644 --- a/app/javascript/mastodon/locales/it.json +++ b/app/javascript/mastodon/locales/it.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Limitazione per eccesso di richieste", "alert.unexpected.message": "Si è verificato un errore imprevisto.", "alert.unexpected.title": "Oops!", + "alt_text_badge.title": "Testo alternativo", "announcement.announcement": "Annuncio", "attachments_list.unprocessed": "(non elaborato)", "audio.hide": "Nascondi audio", @@ -221,6 +222,8 @@ "domain_block_modal.they_cant_follow": "Nessuno da questo server può seguirti.", "domain_block_modal.they_wont_know": "Non sapranno di essere stati bloccati.", "domain_block_modal.title": "Bloccare il dominio?", + "domain_block_modal.you_will_lose_num_followers": "Perderai {followersCount, plural, one {{followersCountDisplay} seguace} other {{followersCountDisplay} seguaci}} e {followingCount, plural, one {{followingCountDisplay} persona che segui} other {{followingCountDisplay} persone che segui}}.", + "domain_block_modal.you_will_lose_relationships": "Perderai tutti i seguaci e le persone che segui da questo server.", "domain_block_modal.you_wont_see_posts": "Non vedrai post o notifiche dagli utenti su questo server.", "domain_pill.activitypub_lets_connect": "Ti consente di connetterti e interagire con le persone non solo su Mastodon, ma anche su diverse app social.", "domain_pill.activitypub_like_language": "ActivityPub è come la lingua che Mastodon parla con altri social network.", diff --git a/app/javascript/mastodon/locales/lt.json b/app/javascript/mastodon/locales/lt.json index 7dcc3468026d2e..0eb3dbf5b447fb 100644 --- a/app/javascript/mastodon/locales/lt.json +++ b/app/javascript/mastodon/locales/lt.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Sparta apribota.", "alert.unexpected.message": "Įvyko netikėta klaida.", "alert.unexpected.title": "Ups!", + "alt_text_badge.title": "Alternatyvus tekstas", "announcement.announcement": "Skelbimas", "attachments_list.unprocessed": "(neapdorotas)", "audio.hide": "Slėpti garsą", @@ -98,7 +99,7 @@ "block_modal.you_wont_see_mentions": "Nematysi įrašus, kuriuose jie paminimi.", "boost_modal.combo": "Galima paspausti {combo}, kad praleisti tai kitą kartą", "boost_modal.reblog": "Pasidalinti įrašą?", - "boost_modal.undo_reblog": "Panaikinti pasidalintą įrašą?", + "boost_modal.undo_reblog": "Nebepasidalinti įrašo?", "bundle_column_error.copy_stacktrace": "Kopijuoti klaidos ataskaitą", "bundle_column_error.error.body": "Paprašytos puslapio nepavyko atvaizduoti. Tai gali būti dėl mūsų kodo klaidos arba naršyklės suderinamumo problemos.", "bundle_column_error.error.title": "O, ne!", @@ -221,6 +222,8 @@ "domain_block_modal.they_cant_follow": "Niekas iš šio serverio negali tavęs sekti.", "domain_block_modal.they_wont_know": "Jie nežinos, kad buvo užblokuoti.", "domain_block_modal.title": "Blokuoti serverį?", + "domain_block_modal.you_will_lose_num_followers": "Prarasi {followersCount, plural, one {{followersCountDisplay} sekėją} few {{followersCountDisplay} sekėjus} many {{followersCountDisplay} sekėjo} other {{followersCountDisplay} sekėjų}} ir {followingCount, plural, one {{followingCountDisplay} žmogų, kurį seki} few {{followingCountDisplay} žmones, kuriuos seki} many {{followingCountDisplay} žmonės, kuriuos seki} other {{followingCountDisplay} žmonių, kurių seki}}.", + "domain_block_modal.you_will_lose_relationships": "Prarasi visus sekėjus ir žmones, kuriuos seki iš šio serverio.", "domain_block_modal.you_wont_see_posts": "Nematysi naudotojų įrašų ar pranešimų šiame serveryje.", "domain_pill.activitypub_lets_connect": "Tai leidžia tau prisijungti ir bendrauti su žmonėmis ne tik „Mastodon“ platformoje, bet ir įvairiose socialinėse programėlėse.", "domain_pill.activitypub_like_language": "„ActivityPub“ – tai tarsi kalba, kuria „Mastodon“ kalba su kitais socialiniais tinklais.", @@ -765,7 +768,7 @@ "status.admin_status": "Atidaryti šį įrašą prižiūrėjimo sąsajoje", "status.block": "Blokuoti @{name}", "status.bookmark": "Pridėti į žymės", - "status.cancel_reblog_private": "Nebepakelti", + "status.cancel_reblog_private": "Nebepasidalinti", "status.cannot_reblog": "Šis įrašas negali būti pakeltas.", "status.continued_thread": "Tęsiama gijoje", "status.copy": "Kopijuoti nuorodą į įrašą", diff --git a/app/javascript/mastodon/locales/nl.json b/app/javascript/mastodon/locales/nl.json index f8e98e865bf578..282c345def6b24 100644 --- a/app/javascript/mastodon/locales/nl.json +++ b/app/javascript/mastodon/locales/nl.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Dataverkeer beperkt", "alert.unexpected.message": "Er deed zich een onverwachte fout voor", "alert.unexpected.title": "Oeps!", + "alt_text_badge.title": "Alt-tekst", "announcement.announcement": "Mededeling", "attachments_list.unprocessed": "(niet verwerkt)", "audio.hide": "Audio verbergen", @@ -216,12 +217,13 @@ "dismissable_banner.explore_tags": "Deze hashtags winnen aan populariteit op het sociale web (fediverse). Hashtags die door meer verschillende mensen worden gebruikt staan hoger.", "dismissable_banner.public_timeline": "Dit zijn de meest recente openbare berichten van accounts op het sociale web (fediverse) die door mensen op {domain} worden gevolgd.", "domain_block_modal.block": "Server blokkeren", - "domain_block_modal.block_account_instead": "In plaats hiervan {name} blokkeren", + "domain_block_modal.block_account_instead": "Alleen {name} blokkeren", "domain_block_modal.they_can_interact_with_old_posts": "Mensen op deze server kunnen interactie hebben met jouw oude berichten.", "domain_block_modal.they_cant_follow": "Niemand op deze server kan jou volgen.", "domain_block_modal.they_wont_know": "Ze krijgen niet te weten dat ze worden geblokkeerd.", "domain_block_modal.title": "Server blokkeren?", "domain_block_modal.you_will_lose_num_followers": "Je verliest {followersCount, plural, one {{followersCountDisplay} volger} other {{followersCountDisplay} volgers}} en {followingCount, plural, one {{followingCountDisplay} persoon die jij volgt} other {{followingCountDisplay} personen die jij volgt}}.", + "domain_block_modal.you_will_lose_relationships": "Je verliest alle volgers en mensen die je volgt van deze server.", "domain_block_modal.you_wont_see_posts": "Je ziet geen berichten of meldingen meer van gebruikers op deze server.", "domain_pill.activitypub_lets_connect": "Het zorgt ervoor dat je niet alleen maar kunt verbinden en communiceren met mensen op Mastodon, maar ook met andere sociale apps.", "domain_pill.activitypub_like_language": "ActivityPub is de taal die Mastodon met andere sociale netwerken spreekt.", diff --git a/app/javascript/mastodon/locales/pl.json b/app/javascript/mastodon/locales/pl.json index 452894079701ba..8e9dd96baf67df 100644 --- a/app/javascript/mastodon/locales/pl.json +++ b/app/javascript/mastodon/locales/pl.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Ograniczenie liczby zapytań", "alert.unexpected.message": "Wystąpił nieoczekiwany błąd.", "alert.unexpected.title": "Ups!", + "alt_text_badge.title": "Tekst alternatywny", "announcement.announcement": "Ogłoszenie", "attachments_list.unprocessed": "(nieprzetworzone)", "audio.hide": "Ukryj dźwięk", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "Użytkownik nie dowie się, że został zablokowany.", "domain_block_modal.title": "Zablokować domenę?", "domain_block_modal.you_will_lose_num_followers": "Utracisz {followersCount, plural, one {jednego obserwującego} other {{followersCountDisplay} obserwujących}} i {followingCount, plural, one {jedną osobę którą obserwujesz} few {{followingCountDisplay} osoby które obserwujesz} other {{followingCountDisplay} osób które obserwujesz}}.", + "domain_block_modal.you_will_lose_relationships": "Utracisz wszystkich obserwujących z tego serwera i wszystkie osoby które obserwujesz na tym serwerze.", "domain_block_modal.you_wont_see_posts": "Nie zobaczysz postów ani powiadomień od użytkowników na tym serwerze.", "domain_pill.activitypub_lets_connect": "Pozwala połączyć się z ludźmi na Mastodonie, jak i na innych serwisach społecznościowych.", "domain_pill.activitypub_like_language": "ActivityPub jest językiem używanym przez Mastodon do wymiany danych z innymi serwisami społecznościowymi.", diff --git a/app/javascript/mastodon/locales/pt-BR.json b/app/javascript/mastodon/locales/pt-BR.json index 402c0b38b5a750..d1a3ecdaa73aff 100644 --- a/app/javascript/mastodon/locales/pt-BR.json +++ b/app/javascript/mastodon/locales/pt-BR.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Tentativas limitadas", "alert.unexpected.message": "Ocorreu um erro inesperado.", "alert.unexpected.title": "Eita!", + "alt_text_badge.title": "Texto alternativo", "announcement.announcement": "Comunicados", "attachments_list.unprocessed": "(não processado)", "audio.hide": "Ocultar áudio", @@ -221,6 +222,8 @@ "domain_block_modal.they_cant_follow": "Ninguém deste servidor pode lhe seguir.", "domain_block_modal.they_wont_know": "Eles não saberão que foram bloqueados.", "domain_block_modal.title": "Dominio do bloco", + "domain_block_modal.you_will_lose_num_followers": "Você perderá {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} e {followingCount, plural, one {{followingCountDisplay} pessoa que você segue} other {{followingCountDisplay} pessoas que você segue}}.", + "domain_block_modal.you_will_lose_relationships": "Você irá perder todos os seguidores e pessoas que você segue neste servidor.", "domain_block_modal.you_wont_see_posts": "Você não verá postagens ou notificações de usuários neste servidor.", "domain_pill.activitypub_lets_connect": "Ele permite que você se conecte e interaja com pessoas não apenas no Mastodon, mas também em diferentes aplicativos sociais.", "domain_pill.activitypub_like_language": "ActivityPub é como a linguagem que o Mastodon fala com outras redes sociais.", diff --git a/app/javascript/mastodon/locales/sq.json b/app/javascript/mastodon/locales/sq.json index 2195e6bf9abe12..084ac9945fae18 100644 --- a/app/javascript/mastodon/locales/sq.json +++ b/app/javascript/mastodon/locales/sq.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Shpejtësi e kufizuar", "alert.unexpected.message": "Ndodhi një gabim të papritur.", "alert.unexpected.title": "Hëm!", + "alt_text_badge.title": "Tekst alternativ", "announcement.announcement": "Lajmërim", "attachments_list.unprocessed": "(e papërpunuar)", "audio.hide": "Fshihe audion", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "S’do ta dinë se janë bllokuar.", "domain_block_modal.title": "Të bllokohet përkatësia?", "domain_block_modal.you_will_lose_num_followers": "Do të humbni {followersCount, plural, one {{followersCountDisplay} ndjekës} other {{followersCountDisplay} ndjekës}} dhe {followingCount, plural, one {{followingCountDisplay} person që ndiqni} other {{followingCountDisplay} vetë që ndiqni}}.", + "domain_block_modal.you_will_lose_relationships": "Do të humbni krejt ndjekësit dhe personat që ndiqni nga ky shërbyes.", "domain_block_modal.you_wont_see_posts": "S’do të shihni postime, apo njoftime nga përdorues në këtë shërbyes.", "domain_pill.activitypub_lets_connect": "Ju lejon të lidheni dhe ndërveproni me persona jo thjesht në Mastodon, por edhe nëpër aplikacione të ndryshme shoqërore.", "domain_pill.activitypub_like_language": "ActivityPub është si gjuha me të cilën Mastodon-i komunikon me rrjete të tjerë shoqërorë.", diff --git a/app/javascript/mastodon/locales/tr.json b/app/javascript/mastodon/locales/tr.json index 509dbc7a217781..6feae5d137d8ef 100644 --- a/app/javascript/mastodon/locales/tr.json +++ b/app/javascript/mastodon/locales/tr.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Aşırı istek gönderildi", "alert.unexpected.message": "Beklenmedik bir hata oluştu.", "alert.unexpected.title": "Hay aksi!", + "alt_text_badge.title": "Alternatif metin", "announcement.announcement": "Duyuru", "attachments_list.unprocessed": "(işlenmemiş)", "audio.hide": "Sesi gizle", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "Engellendiklerini bilmeyecekler.", "domain_block_modal.title": "Alan adını engelle?", "domain_block_modal.you_will_lose_num_followers": "{followersCount, plural, one {{followersCountDisplay} takipçi} other {{followersCountDisplay} takipçi}} ve {followingCount, plural, one {{followingCountDisplay} takip ettiğiniz kişi} other {{followingCountDisplay} takip ettiğiniz kişi}} kaybedeceksiniz.", + "domain_block_modal.you_will_lose_relationships": "Bu sunucudaki tüm takip edenleri ve takip ettiklerinizi kaybedeceksiniz.", "domain_block_modal.you_wont_see_posts": "Bu sunucudaki kullanıcılardan gelen gönderileri veya bildirimleri göremezsiniz.", "domain_pill.activitypub_lets_connect": "Sadece Mastodon üzerindeki değil, diğer sosyal uygulamalardaki kişilerle de bağlantı kurmanıza ve etkileşmenize olanak sağlar.", "domain_pill.activitypub_like_language": "ActivityPub, Mastodon'un diğer sosyal ağlarla konuşmak için kullandığı dil gibidir.", diff --git a/app/javascript/mastodon/locales/uk.json b/app/javascript/mastodon/locales/uk.json index 1b5dbb4c9bffeb..1753d0bebe44df 100644 --- a/app/javascript/mastodon/locales/uk.json +++ b/app/javascript/mastodon/locales/uk.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Швидкість обмежена", "alert.unexpected.message": "Сталася неочікувана помилка.", "alert.unexpected.title": "Ой!", + "alt_text_badge.title": "Альтернативний текст", "announcement.announcement": "Оголошення", "attachments_list.unprocessed": "(не оброблено)", "audio.hide": "Сховати аудіо", @@ -221,6 +222,8 @@ "domain_block_modal.they_cant_follow": "Ніхто з цього сервера не може слідкувати за вами.", "domain_block_modal.they_wont_know": "Вони не знають, що їх заблоковано.", "domain_block_modal.title": "Заблокувати домен?", + "domain_block_modal.you_will_lose_num_followers": "Ви втратите {followersCount, plural, one {{followersCountDisplay} підписника} few {{followersCountDisplay} підписника} many {{followersCountDisplay} підписників} other {{followersCountDisplay} підписника}} та {followingCount, plural, one {{followingCountDisplay} особу, за якою ви стежите} few {{followingCountDisplay} особи, за якими ви стежите} many {{followingCountDisplay} осіб, за якими ви стежите} other {{followingCountDisplay} особу, за якою ви стежите}}.", + "domain_block_modal.you_will_lose_relationships": "Ви втратите всіх підписників і людей, на яких ви підписані.", "domain_block_modal.you_wont_see_posts": "Ви не бачитимете дописів і сповіщень від користувачів на цьому сервері.", "domain_pill.activitypub_lets_connect": "Це дозволяє вам спілкуватися та взаємодіяти з людьми не лише на Mastodon, але й у різних соціальних застосунках.", "domain_pill.activitypub_like_language": "ActivityPub - це як мова, якою Mastodon розмовляє з іншими соціальними мережами.", diff --git a/app/javascript/mastodon/locales/vi.json b/app/javascript/mastodon/locales/vi.json index 9c5c9ae1e4fc51..12d9bd43540b31 100644 --- a/app/javascript/mastodon/locales/vi.json +++ b/app/javascript/mastodon/locales/vi.json @@ -222,6 +222,7 @@ "domain_block_modal.they_wont_know": "Họ sẽ không biết đã bị bạn chặn.", "domain_block_modal.title": "Chặn máy chủ?", "domain_block_modal.you_will_lose_num_followers": "Bạn sẽ mất {followersCount, plural, other {{followersCountDisplay} người theo dõi}} và {followingCount, plural, other {{followingCountDisplay} người bạn theo dõi}}.", + "domain_block_modal.you_will_lose_relationships": "Bạn sẽ mất tất cả người theo dõi và những người bạn theo dõi từ máy chủ này.", "domain_block_modal.you_wont_see_posts": "Bạn sẽ không thấy tút hoặc thông báo từ thành viên máy chủ này.", "domain_pill.activitypub_lets_connect": "Nó cho phép bạn kết nối và tương tác với mọi người không chỉ trên Mastodon mà còn trên các ứng dụng xã hội khác.", "domain_pill.activitypub_like_language": "ActivityPub giống như ngôn ngữ Mastodon giao tiếp với các mạng xã hội khác.", diff --git a/app/javascript/mastodon/locales/zh-CN.json b/app/javascript/mastodon/locales/zh-CN.json index 1f539727f96ac0..8ce888a0396290 100644 --- a/app/javascript/mastodon/locales/zh-CN.json +++ b/app/javascript/mastodon/locales/zh-CN.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "频率受限", "alert.unexpected.message": "发生了意外错误。", "alert.unexpected.title": "哎呀!", + "alt_text_badge.title": "替代文本", "announcement.announcement": "公告", "attachments_list.unprocessed": "(未处理)", "audio.hide": "隐藏音频", @@ -221,6 +222,8 @@ "domain_block_modal.they_cant_follow": "此服务器上没有人可以关注你。", "domain_block_modal.they_wont_know": "他们不会知道自己被屏蔽。", "domain_block_modal.title": "屏蔽该域名?", + "domain_block_modal.you_will_lose_num_followers": "你将失去 {followersCount, plural, other {{followersCountDisplay} 名关注者}}和 {followingCount, plural, other {{followingCountDisplay} 名关注}}。", + "domain_block_modal.you_will_lose_relationships": "你将失去在此实例上的所有关注和关注者。", "domain_block_modal.you_wont_see_posts": "你将不会看到此服务器上用户的嘟文或通知。", "domain_pill.activitypub_lets_connect": "它让你不仅能与Mastodon上的人交流互动,还能与其它不同社交应用上的人联系。", "domain_pill.activitypub_like_language": "ActivityPub就像Mastodon与其它社交网络交流时使用的语言。", diff --git a/app/javascript/mastodon/locales/zh-TW.json b/app/javascript/mastodon/locales/zh-TW.json index c585f98b6eb40d..530202f0a5b0fe 100644 --- a/app/javascript/mastodon/locales/zh-TW.json +++ b/app/javascript/mastodon/locales/zh-TW.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "已限速", "alert.unexpected.message": "發生非預期的錯誤。", "alert.unexpected.title": "哎呀!", + "alt_text_badge.title": "ALT 說明文字", "announcement.announcement": "公告", "attachments_list.unprocessed": "(未經處理)", "audio.hide": "隱藏音訊", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "他們不會知道他們已被封鎖。", "domain_block_modal.title": "是否封鎖該網域?", "domain_block_modal.you_will_lose_num_followers": "您將會失去 {followersCount, plural, other {{followersCountDisplay} 個跟隨者}} 與 {followingCount, plural, other {{followingCountDisplay} 個您跟隨之帳號}}.", + "domain_block_modal.you_will_lose_relationships": "您將失去所有的跟隨者與您自此伺服器跟隨之帳號。", "domain_block_modal.you_wont_see_posts": "您不會見到來自此伺服器使用者之任何嘟文或推播通知。", "domain_pill.activitypub_lets_connect": "它使您能於 Mastodon 及其他不同的社群應用程式與人連結及互動。", "domain_pill.activitypub_like_language": "ActivityPub 像是 Mastodon 與其他社群網路溝通時所用的語言。", diff --git a/config/locales/activerecord.io.yml b/config/locales/activerecord.io.yml index 6426defc55a41d..2b0d5091985242 100644 --- a/config/locales/activerecord.io.yml +++ b/config/locales/activerecord.io.yml @@ -15,6 +15,12 @@ io: user/invite_request: text: Rezono errors: + attributes: + domain: + invalid: ne esas valida domennomo + messages: + invalid_domain_on_line: "%{value} ne esas valida domennomo" + too_many_lines: esas plu kam la limito qua esas %{limit} linei models: account: attributes: diff --git a/config/locales/ca.yml b/config/locales/ca.yml index e0a68f7b46834e..965f354a35f82c 100644 --- a/config/locales/ca.yml +++ b/config/locales/ca.yml @@ -873,6 +873,9 @@ ca: message_html: No has definit cap norma del servidor. sidekiq_process_check: message_html: No hi ha cap procés de Sidekiq executant-se per a la cua (o cues) de %{value}. Reviseu la configuració de Sidekiq + software_version_check: + action: Veure les actualitzacions disponibles + message_html: Hi ha disponible una actualització de Mastodon. software_version_critical_check: action: Veure actualitzacions disponibles message_html: Hi ha disponible una actualització crítica de Mastodon, si us plau, actualitza-la el més abans possible. diff --git a/config/locales/da.yml b/config/locales/da.yml index 96b27c91b3a733..0da901d4a8c48c 100644 --- a/config/locales/da.yml +++ b/config/locales/da.yml @@ -875,6 +875,9 @@ da: message_html: Ingen serverregler defineret. sidekiq_process_check: message_html: Ingen Sidekiq-proces kører for %{value}-kø(er). Gennemgå Sidekiq-opsætningen + software_version_check: + action: Se tilgængelige opdateringer + message_html: En Mastodon-opdatering er tilgængelig. software_version_critical_check: action: Se tilgængelige opdateringer message_html: En kritisk Mastodon-opdatering er tilgængelig. Opdatér hurtigst muligt. diff --git a/config/locales/de.yml b/config/locales/de.yml index 5af77c431d6f8a..b98a96a1cd37ac 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -875,6 +875,9 @@ de: message_html: Du hast keine Serverregeln festgelegt. sidekiq_process_check: message_html: Kein Sidekiq-Prozess läuft für die %{value} Warteschlange(n). Bitte überprüfe deine Sidekiq-Konfiguration + software_version_check: + action: Verfügbare Updates ansehen + message_html: Ein Update für Mastodon ist verfügbar. software_version_critical_check: action: Verfügbare Updates ansehen message_html: Ein kritisches Mastodon-Update ist verfügbar – bitte aktualisiere so schnell wie möglich. @@ -1692,6 +1695,7 @@ de: delete: Kontolöschung development: Entwicklung edit_profile: Profil bearbeiten + export: Exportieren featured_tags: Vorgestellte Hashtags import: Importieren import_and_export: Importieren und exportieren diff --git a/config/locales/devise.io.yml b/config/locales/devise.io.yml index 6bf0b52cef18b0..49637579e4dfe8 100644 --- a/config/locales/devise.io.yml +++ b/config/locales/devise.io.yml @@ -12,6 +12,7 @@ io: last_attempt: Tu ankore povas probar unfoye ante ke tua konto esos extingita. locked: Tua konto esas extingita. not_found_in_database: Nejusta %{authentication_keys}. + omniauth_user_creation_failure: Eroro dum ke kreas konto por ca identeso. pending: Vua konti ankore kontrolesas. timeout: Vua kunsido expiris. Voluntez rienirar por avancar. unauthenticated: Tu devas enirar o membreskar por durar. @@ -47,14 +48,19 @@ io: subject: Instrucioni por chanjar la pasvorto title: Richanjo di pasvorto two_factor_disabled: + explanation: Eniro esas nun posibla per nur retpostoadreso e pasvorto. subject: 'Mastodon: 2-faktorverifiko deaktivigesis' + subtitle: 2-faktora verifiko por vua konto desaktivigesis. title: 2FA deaktivigesis two_factor_enabled: + explanation: Ficho facesis da parigita softwaro TOTP bezonesos por eniro. subject: 'Mastodon: 2-faktorverifiko aktivigesis' + subtitle: 2-faktora verifiko aktivigesis por vua konto. title: 2FA aktivigesis two_factor_recovery_codes_changed: explanation: Antea rigankodexi devalidesis e novo facesis. subject: 'Mastodon: 2-faktorrigankodexi rifacesis' + subtitle: Antea rigankodexi desvalidesis e novo facesis. title: 2FA-rigankodexi chanjesis unlock_instructions: subject: Instructioni por riacendar la konto @@ -68,9 +74,13 @@ io: subject: 'Mastodon: Sekurklefo efacesis' title: 1 de vua sekurklefi efacesis webauthn_disabled: + explanation: Verifiko per sekuresklefi desaktivigesis por vua konto. + extra: Eniro esas nun posibla per nur ficho qua facesis da parigita softwaro TOTP. subject: 'Mastodon: Verifiko per sekurklefi deaktivigesis' title: Sekurklefi deaktivigesis webauthn_enabled: + explanation: Sekuresklefoa verifiko aktivigesis por vua konto. + extra: Vua sekuresklefo povas nun uzesar por eniro. subject: 'Mastodon: Sekurklefverifiko aktivigesis' title: Sekurklefi aktivigesis omniauth_callbacks: diff --git a/config/locales/doorkeeper.ga.yml b/config/locales/doorkeeper.ga.yml index 27082028c75572..b8ee3497b79db1 100644 --- a/config/locales/doorkeeper.ga.yml +++ b/config/locales/doorkeeper.ga.yml @@ -60,6 +60,7 @@ ga: error: title: Tharla earráid new: + prompt_html: Ba mhaith le %{client_name} cead rochtain a fháil ar do chuntas. Ní cheadaigh an t-iarratas seo ach amháin má aithníonn tú an fhoinse seo agus go bhfuil muinín agat as. review_permissions: Ceadanna a athbhreithniú title: Tá údarú ag teastáil show: diff --git a/config/locales/doorkeeper.pt-BR.yml b/config/locales/doorkeeper.pt-BR.yml index f7f9dce7eacf80..85bf5d60c02a05 100644 --- a/config/locales/doorkeeper.pt-BR.yml +++ b/config/locales/doorkeeper.pt-BR.yml @@ -60,6 +60,7 @@ pt-BR: error: title: Ocorreu um erro new: + prompt_html: "%{client_name} gostaria de permissão para acessar sua conta. Aprove esta solicitação apenas se você reconhecer e confiar nesta fonte." review_permissions: Rever permissões title: Autorização necessária show: diff --git a/config/locales/en-GB.yml b/config/locales/en-GB.yml index 21afcd990fc2e7..fbd48d1c316097 100644 --- a/config/locales/en-GB.yml +++ b/config/locales/en-GB.yml @@ -1692,6 +1692,7 @@ en-GB: delete: Account deletion development: Development edit_profile: Edit profile + export: Export featured_tags: Featured hashtags import: Import import_and_export: Import and export diff --git a/config/locales/es-AR.yml b/config/locales/es-AR.yml index 01685f99fe30be..292bbbff513aac 100644 --- a/config/locales/es-AR.yml +++ b/config/locales/es-AR.yml @@ -1692,6 +1692,7 @@ es-AR: delete: Eliminación de la cuenta development: Desarrollo edit_profile: Editar perfil + export: Exportar featured_tags: Etiquetas destacadas import: Importar import_and_export: Importación y exportación diff --git a/config/locales/es-MX.yml b/config/locales/es-MX.yml index a8ff5c6938be0c..45d88645029d06 100644 --- a/config/locales/es-MX.yml +++ b/config/locales/es-MX.yml @@ -1692,6 +1692,7 @@ es-MX: delete: Borrar cuenta development: Desarrollo edit_profile: Editar perfil + export: Exportar featured_tags: Hashtags destacados import: Importar import_and_export: Importar y exportar diff --git a/config/locales/es.yml b/config/locales/es.yml index ab7fd3bc54de22..85bcf9065a8b48 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -1692,6 +1692,7 @@ es: delete: Borrar cuenta development: Desarrollo edit_profile: Editar perfil + export: Exportar featured_tags: Hashtags destacados import: Importar import_and_export: Importar y exportar diff --git a/config/locales/fi.yml b/config/locales/fi.yml index 9bd0f12241f6a8..258dda8cc421d3 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -1692,6 +1692,7 @@ fi: delete: Tilin poisto development: Kehitys edit_profile: Muokkaa profiilia + export: Vie featured_tags: Suositellut aihetunnisteet import: Tuo tietoja import_and_export: Tuonti ja vienti diff --git a/config/locales/fo.yml b/config/locales/fo.yml index 50b4802bc7d78a..034e1f6bd250e0 100644 --- a/config/locales/fo.yml +++ b/config/locales/fo.yml @@ -1692,6 +1692,7 @@ fo: delete: Striking av kontu development: Menning edit_profile: Rætta vanga + export: Flyt út featured_tags: Varpaði frámerki import: Innflyt import_and_export: Innflyt og útflyt diff --git a/config/locales/ga.yml b/config/locales/ga.yml index 95136239328434..c678e93323e7c4 100644 --- a/config/locales/ga.yml +++ b/config/locales/ga.yml @@ -1770,6 +1770,7 @@ ga: delete: Scriosadh cuntais development: Forbairt edit_profile: Cuir an phróifíl in eagar + export: Easpórtáil featured_tags: Haischlib faoi thrácht import: Iompórtáil import_and_export: Iompórtáil agus easpórtáil diff --git a/config/locales/gl.yml b/config/locales/gl.yml index 2eadb2ba6b04a6..e396761f7eb5d5 100644 --- a/config/locales/gl.yml +++ b/config/locales/gl.yml @@ -543,7 +543,7 @@ gl: total_reported: Denuncias sobre eles total_storage: Adxuntos multimedia totals_time_period_hint_html: Os totais aquí mostrados inclúen todo o historial de datos. - unknown_instance: Actualmente non temos constancia deste rexistro no servidor. + unknown_instance: Actualmente non hai rexistro deste dominio no servidor. invites: deactivate_all: Desactivar todo filter: @@ -602,7 +602,7 @@ gl: resolve_description_html: Non se van tomar accións contra a conta denunciada, nin se gardarán avisos, e pecharase a denuncia. silence_description_html: A conta será visible só para quen xa a está a seguir ou quen a buscou manualmente, limitando moito o seu alcance. Pódese cambiar. Isto pecha tódalas denuncias acerca desta conta. suspend_description_html: A conta e todo o seu contido non serán accesible e finalmente eliminaranse, será imposible interactuar con ela. A decisión é reversible durante 30 días. Isto pecha tódalas denuncias sobre esta conta. - actions_description_html: Decide a acción a tomar para resolver esta denuncia. Se tomas accións punitivas contra a conta denunciada enviaraselle un correo, excepto se está indicada a categoría Spam. + actions_description_html: Decide a acción a tomar para resolver esta denuncia. Se tomas accións punitivas contra a conta denunciada enviaráselle un correo, excepto se está indicada a categoría Spam. actions_description_remote_html: Decide a acción a tomar para resolver a denuncia. Isto só lle afecta ao xeito en que o teu servidor se comunica con esta conta remota e xestiona o seu contido. actions_no_posts: Esta denuncia non ten publicacións asociadas para eliminar add_to_report: Engadir máis á denuncia @@ -875,6 +875,9 @@ gl: message_html: Non tes definidas regras para o servidor. sidekiq_process_check: message_html: Non hai procesos Sidekiq a funcionar para a cola(s) %{value}. Revisa a túa configuración para Sidekiq + software_version_check: + action: Ver as actualizacións dispoñibles + message_html: Hai dispoñible unha actualización para Mastodon. software_version_critical_check: action: Mira as actualizacións dispoñibles message_html: Hai unha actualización crítica de Mastodon dispoñible, actualiza axiña. diff --git a/config/locales/hu.yml b/config/locales/hu.yml index 2f6a4c57783346..11f2a415f26731 100644 --- a/config/locales/hu.yml +++ b/config/locales/hu.yml @@ -1692,6 +1692,7 @@ hu: delete: Fiók törlése development: Fejlesztőknek edit_profile: Profil szerkesztése + export: Exportálás featured_tags: Kiemelt hashtagek import: Importálás import_and_export: Import és export diff --git a/config/locales/it.yml b/config/locales/it.yml index 9fdeede8bf5b91..a89fa0a53e444e 100644 --- a/config/locales/it.yml +++ b/config/locales/it.yml @@ -875,6 +875,9 @@ it: message_html: Non hai definito alcuna regola del server. sidekiq_process_check: message_html: Nessun processo di Sidekiq in esecuzione per le code di %{value}. Sei pregato di revisionare la tua configurazione di Sidekiq + software_version_check: + action: Visualizza gli aggiornamenti disponibili + message_html: È disponibile un aggiornamento per Mastodon. software_version_critical_check: action: Visualizza gli aggiornamenti disponibili message_html: Un aggiornamento critico di Mastodon è disponibile, ti preghiamo di aggiornare il più rapidamente possibile. @@ -1694,6 +1697,7 @@ it: delete: Cancellazione account development: Sviluppo edit_profile: Modifica profilo + export: Esporta featured_tags: Hashtag in evidenza import: Importa import_and_export: Importa ed esporta diff --git a/config/locales/lt.yml b/config/locales/lt.yml index ef13817028e3c2..3b63ba6dcf9fc8 100644 --- a/config/locales/lt.yml +++ b/config/locales/lt.yml @@ -608,6 +608,9 @@ lt: message_html: Tavo Elasticsearch klasteris turi tik vieną mazgą, ES_PRESET turėtų būti nustatyta į single_node_cluster. elasticsearch_running_check: message_html: Nepavyko prijungti prie Elasticsearch. Patikrink, ar ji veikia, arba išjunk viso teksto paiešką. + software_version_check: + action: Žiūrėti galimus naujinimus + message_html: Yra „Mastodon“ naujinimas. tags: moderation: not_trendable: Netendencinga @@ -1090,6 +1093,7 @@ lt: delete: Paskyros trynimas development: Kūrimas edit_profile: Redaguoti profilį + export: Eksportuoti featured_tags: Rodomi saitažodžiai import: Importuoti import_and_export: Importas ir eksportas diff --git a/config/locales/nl.yml b/config/locales/nl.yml index afc4652bf600cc..7681a04eaecdfa 100644 --- a/config/locales/nl.yml +++ b/config/locales/nl.yml @@ -875,6 +875,9 @@ nl: message_html: Je hebt voor deze server geen regels opgesteld. sidekiq_process_check: message_html: Er draait geen Sidekiqproces voor de wachtrij(en) %{value}. Controleer je Sidekiqconfiguratie + software_version_check: + action: Beschikbare updates bekijken + message_html: Er is een Mastodon-update beschikbaar. software_version_critical_check: action: Bekijk de beschikbare updates message_html: Er is een kritieke update voor Mastodon beschikbaar. Update zo snel mogelijk. diff --git a/config/locales/nn.yml b/config/locales/nn.yml index 98f62e123a707b..81047d92e7d4eb 100644 --- a/config/locales/nn.yml +++ b/config/locales/nn.yml @@ -875,6 +875,9 @@ nn: message_html: Du har ikke definert noen serverregler. sidekiq_process_check: message_html: Ingen Sidekiq-prosess kjører for %{value} køen(e). Vennligst se gjennom Sidekiq-konfigurasjonen din + software_version_check: + action: Sjå tilgjengelege oppdateringar + message_html: Ei Mastodon-oppdatering er tilgjengeleg. software_version_critical_check: action: Sjå tilgjengelege oppdateringar message_html: Ei kritisk oppdatering til Mastodon er tilgjengeleg. Oppdater så snart som mogleg. diff --git a/config/locales/pl.yml b/config/locales/pl.yml index e68ea2b16acd1c..3aaf7a5a57a2a4 100644 --- a/config/locales/pl.yml +++ b/config/locales/pl.yml @@ -903,6 +903,9 @@ pl: message_html: Nie zdefiniowano żadnych reguł serwera. sidekiq_process_check: message_html: Brak uruchomionego procesu Sidekiq dla kolejki(-ek) %{value}. Sprawdź konfigurację Sidekiq + software_version_check: + action: Pokaż dostępne aktualizacje + message_html: Dostępna aktualizacja Mastodona. software_version_critical_check: action: Pokaż dostępne aktualizacje message_html: Dostępna krytyczna aktualizacja Mastodona, zaktualizuj jak tylko będzie to możliwe. @@ -1744,6 +1747,7 @@ pl: delete: Usuń konto development: Tworzenie aplikacji edit_profile: Edytuj profil + export: Eksportowanie danych featured_tags: Wyróżnione hashtagi import: Importowanie danych import_and_export: Import i eksport diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml index ba21dd1b3bb079..30022be93ab0b9 100644 --- a/config/locales/pt-BR.yml +++ b/config/locales/pt-BR.yml @@ -1692,6 +1692,7 @@ pt-BR: delete: Exclusão de conta development: Desenvolvimento edit_profile: Editar perfil + export: Exportar featured_tags: Hashtags em destaque import: Importar import_and_export: Importar e exportar diff --git a/config/locales/simple_form.io.yml b/config/locales/simple_form.io.yml index fe8243b0e9fb57..5cbbd9d06e90e3 100644 --- a/config/locales/simple_form.io.yml +++ b/config/locales/simple_form.io.yml @@ -3,6 +3,7 @@ io: simple_form: hints: account: + attribution_domains_as_text: Protektas de falsa akreditaji. discoverable: Vua publika posti e profilo povas remarkesar o rekomendesar en diferanta parti di Mastodon e vua profilo povas sugestesar ad altra uzanti. display_name: Vua tota nomo o vua gaya nomo. fields: Vua retsituo, pronomi, evo, irgo quan vu volas. @@ -39,12 +40,14 @@ io: text: Vu povas nur apelar striko unafoye defaults: autofollow: Personi quo registresesas tra invito automatika sequos vu + avatar: WEBP, PNG, GIF o JPG. Maxime %{size}. Esos mikrigita a %{dimensions}px bot: Signalez a altra personi ke la konto precipue havas automatikigita agi e forsan ne surveyesas context: Situeso kande filtrilo debas aplikesar current_password: Por sekuresorezoni, pozez pasvorto di ca konto current_username: Por konfirmar, pozez uzantonomo di ca konto digest: Nur sendesas pos longa neaktiveso e nur se vu ganis irga mesaji dum ke vu esas neprezenta email: Vu sendesos konfirmretposto + header: WEBP, PNG, GIF o JPG. Maxime %{size}. Esos mikrigita a %{dimensions}px inbox_url: Kopiez URL de frontpagino de relayo quon vu volas uzar irreversible: Filtrita posti neinversigeble desaparos, mem se filtro efacesas pose locale: Linguo di uzantointervizajo, retposti e pulsavizi @@ -75,10 +78,15 @@ io: warn: Celez filtrita kontenajo dop avert quo montras titulo di filtrilo form_admin_settings: activity_api_enabled: Quanto de lokale publikigita posti, aktiva uzanti e nova registri, donita semanope + app_icon: WEBP, PNG, GIF o JPG. Ol remplas la originala imajeto di softwaro sur poshaparati kun personaligita imajeto. + backups_retention_period: Uzanto povas facar arkivi di sua posti por deskargar pose. Se ol esas positiva nombro, ca arkivi automate efacesis de vua konserveyo pos la decidita quanto di dii. bootstrap_timeline_accounts: Ca konti pinglagesos a super sequorekomendi di nova uzanti. closed_registrations_message: Montresas kande registradi klozesas + content_cache_retention_period: Omna posti de altra servili efacesos (anke repeti e respondi) pos decidita quanto di dii, sen ye irga lokala uzantointerago kun ti posti. Privata mencioni inter uzanto de dessanta servili anke desganos e neposible riganesos. custom_css: Vu povas pozar kustumizita staili en retverso di Mastodon. + favicon: WEBP, PNG, GIF o JPG. Ol remplas la originala imajeto di Mastodon kun personaligita imajeto. mascot: Remplas montreso en avanca retintervizajo. + media_cache_retention_period: Medidoseri de posti quan posti da deslokala uzanti retummemoresis sur vua servilo. Se medidatumo demandesas pos ol efacesas, ol rideskargesos. peers_api_enabled: Listo di domeni quin ca servilo trovis en la fediverso. Nula informo inkluzesas hike pri ka vu federas kun partikulara servilo, nur ke vua servilo savas pri lo. Co es uzata da enti qui kolektas statistiki pri federeso generale. profile_directory: La profilcheflisto montras omna uzanti quo voluntale volas esar deskovrebla. require_invite_text: Kande registradi bezonas manuala aprobo, ol kauzigas "Por quo vu volas juntas?" textoenpozo esar obliganta @@ -111,6 +119,7 @@ io: sign_up_requires_approval: Nova registro bezonos vua aprobo severity: Selektez quo eventos kun demandi de ca IP rule: + hint: Nemusta. Ol donas plu multa detali pri la regulo text: Deskriptez regulo o bezonaj por uzanti en ca servilo. Vu debas lasar lu esar korta e simpla sessions: otp: Enter the Two-factor code from your phone or use one of your recovery codes. @@ -122,6 +131,7 @@ io: name: Vu povas nur chanjar literkaso, por exemplo, por kauzigar lu divenar plu lektebla user: chosen_languages: Kande marketigesis, nur posti en selektesis lingui montresos en publika tempolinei + role: La rolo donas certena permisi a la uzanto. user_role: color: Koloro quo uzesas por rolo en tota UI, quale RGB kun hexformato highlighted: Co kauzigas rolo divenar publike videbla @@ -130,9 +140,11 @@ io: position: Plu alta rolo decidas problemsolvo en kelka situeso. Kelka agi povas nur eventar a roli kun plu basa prioreso webhook: events: Selektigez eventi por sendar + template: Facez vua sua JSON per variebla interpolo. Lasez quale nulo por originala JSON. url: Ibe eventi sendesos labels: account: + attribution_domains_as_text: Nur permisas specifika retsitui discoverable: Inkluzar profilo e posti en trovado-algoritmi fields: name: Etiketo @@ -201,6 +213,7 @@ io: setting_default_privacy: Videbleso di la mesaji setting_default_sensitive: Sempre markizez medii quale sentoza setting_delete_modal: Montrez konfirmdialogo ante efacar posto + setting_disable_hover_cards: Desaktivigez profilprevido dum klikpaso setting_disable_swiping: Desaktivigez fingromovi setting_display_media: Mediomontrajo setting_display_media_default: Originalo @@ -232,10 +245,13 @@ io: warn: Celez kun averto form_admin_settings: activity_api_enabled: Publikigez rezumstatistiko pri uzantoaktiveso en API + app_icon: Softwarimajeto backups_retention_period: Uzantoarkivretendurtempo bootstrap_timeline_accounts: Sempre rekomendez ca konti a nova uzanti closed_registrations_message: Kustumizita mesajo kande registradi ne esas disponebla + content_cache_retention_period: Fora kontenajretenperiodo custom_css: Kustumizita CSS + favicon: Imajeto mascot: Kustumizita reprezentimajo (oldo) media_cache_retention_period: Mediimemorajretendurtempo peers_api_enabled: Publikigez listo di deskovrita servili en API @@ -291,6 +307,7 @@ io: patch: Notifikar pri problemosolvanta aktualigi trending_tag: Nova tendenco bezonas kontrolo rule: + hint: Plusa informo text: Regulo settings: indexable: Inkluzar profilopagino en serchili @@ -299,6 +316,7 @@ io: listable: Permisez ca hashtago aparar en trovaji e sugestaji name: Hashtago trendable: Permisez ca hashtago aparar che tendenci + usable: Permisez posti uzar ca gretiketo lokale user: role: Rolo time_zone: Klokozono @@ -310,9 +328,11 @@ io: position: Prioreso webhook: events: Aktivigita eventi + template: Pagkargshablono url: URL di finpunto 'no': Ne not_recommended: Ne rekomendesas + overridden: Remplesis recommended: Rekomendito required: mark: "*" diff --git a/config/locales/sq.yml b/config/locales/sq.yml index c1ed91cf96ac45..2f05d7860cb3cd 100644 --- a/config/locales/sq.yml +++ b/config/locales/sq.yml @@ -871,6 +871,9 @@ sq: message_html: S’keni përcaktuar ndonjë rregull shërbyesi. sidekiq_process_check: message_html: S’ka proces Sidekiq në punë për %{value} radhë. Ju lutemi, shqyrtoni formësimin tuaj për Sidekiq-un + software_version_check: + action: Shihni përditësimet e gatshme + message_html: Ka gati një përditësim Mastodon-i. software_version_critical_check: action: Shihni përditësimet e gatshme message_html: Ka të gatshëm një përditësim kritik të Mastodon-it, ju lutemi, përditësojeni sa më shpejt të jetë e mundur. diff --git a/config/locales/tr.yml b/config/locales/tr.yml index d2cf412cc9bd10..2935948a475f31 100644 --- a/config/locales/tr.yml +++ b/config/locales/tr.yml @@ -1692,6 +1692,7 @@ tr: delete: Hesap silme development: Geliştirme edit_profile: Profili düzenle + export: Dışa Aktar featured_tags: Öne çıkan etiketler import: İçe aktar import_and_export: İçe ve dışa aktar diff --git a/config/locales/uk.yml b/config/locales/uk.yml index d0164d846a89ae..de1847a745aa05 100644 --- a/config/locales/uk.yml +++ b/config/locales/uk.yml @@ -903,6 +903,9 @@ uk: message_html: Ви не визначили будь-які правила сервера. sidekiq_process_check: message_html: Не працює процес Sidekiq для %{value} черги. Перегляньте конфігурації вашого Sidekiq + software_version_check: + action: Переглянути доступні оновлення + message_html: Доступне оновлення Mastodon. software_version_critical_check: action: Переглянути доступні оновлення message_html: Виявлено критичне оновлення Mastodon. Оновіться якнайшвидше. @@ -1744,6 +1747,7 @@ uk: delete: Видалення облікового запису development: Розробка edit_profile: Редагувати профіль + export: Експорт featured_tags: Рекомендовані хештеґи import: Імпорт import_and_export: Імпорт та експорт diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml index ade35ceb626009..a73871115b3a72 100644 --- a/config/locales/zh-CN.yml +++ b/config/locales/zh-CN.yml @@ -861,6 +861,9 @@ zh-CN: message_html: 你没有定义任何服务器规则。 sidekiq_process_check: message_html: "%{value} 队列未运行任何 Sidekiq 进程。请检查你的 Sidekiq 配置" + software_version_check: + action: 查看可用更新 + message_html: 有一个 Mastodon 更新可用。 software_version_critical_check: action: 查看可用更新 message_html: 有一个紧急Mastodon紧急更新可用,请尽快更新。 @@ -1666,6 +1669,7 @@ zh-CN: delete: 删除账户 development: 开发 edit_profile: 更改个人资料 + export: 导出 featured_tags: 精选的话题标签 import: 导入 import_and_export: 导入和导出 diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml index 41c4c8a534e482..4079f68a50c38e 100644 --- a/config/locales/zh-TW.yml +++ b/config/locales/zh-TW.yml @@ -863,6 +863,9 @@ zh-TW: message_html: 您尚未定義任何伺服器規則。 sidekiq_process_check: message_html: 沒有佇列 %{value} 的 Sidekiq 行程,請檢查您的 Sidekiq 設定組態 + software_version_check: + action: 檢視可取得的更新 + message_html: 有可取得的 Mastodon 更新。 software_version_critical_check: action: 檢視可取得的更新 message_html: 有可取得的重要 Mastodon 更新,請立即升級。 From 675ec1a0adf9b179c9b5fe407f7926c94266dd69 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Fri, 27 Sep 2024 04:18:42 -0400 Subject: [PATCH 13/28] Only show recently used tags hint when they are present (#32120) --- app/helpers/settings_helper.rb | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/app/helpers/settings_helper.rb b/app/helpers/settings_helper.rb index 64f2ad70a66e16..fd631ce92ecd30 100644 --- a/app/helpers/settings_helper.rb +++ b/app/helpers/settings_helper.rb @@ -10,16 +10,17 @@ def ui_languages end def featured_tags_hint(recently_used_tags) - safe_join( - [ - t('simple_form.hints.featured_tag.name'), - safe_join( - links_for_featured_tags(recently_used_tags), - ', ' - ), - ], - ' ' - ) + recently_used_tags.present? && + safe_join( + [ + t('simple_form.hints.featured_tag.name'), + safe_join( + links_for_featured_tags(recently_used_tags), + ', ' + ), + ], + ' ' + ) end def session_device_icon(session) From 04dd3a9eb6f28eb6387dd480b0556e5f7aba772b Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Fri, 27 Sep 2024 04:20:21 -0400 Subject: [PATCH 14/28] Wrap webhook event label with `samp` tag (#32115) --- app/views/admin/webhooks/_form.html.haml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/views/admin/webhooks/_form.html.haml b/app/views/admin/webhooks/_form.html.haml index 2b948b9a6aa210..bdba08a45425cf 100644 --- a/app/views/admin/webhooks/_form.html.haml +++ b/app/views/admin/webhooks/_form.html.haml @@ -13,7 +13,8 @@ as: :check_boxes, collection_wrapper_tag: 'ul', item_wrapper_tag: 'li', - disabled: Webhook::EVENTS.filter { |event| !current_user.role.can?(Webhook.permission_for_event(event)) } + disabled: Webhook::EVENTS.filter { |event| !current_user.role.can?(Webhook.permission_for_event(event)) }, + label_method: ->(event) { tag.samp(event) } .fields-group = form.input :template, From e02e88bff4ad5f5acd017fa340f745b87f430a46 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Fri, 27 Sep 2024 04:21:27 -0400 Subject: [PATCH 15/28] Use previously extracted model constants in form `maxlength` attributes (#32113) --- app/models/form/admin_settings.rb | 4 +++- app/views/admin/settings/branding/show.html.haml | 2 +- app/views/auth/registrations/new.html.haml | 2 +- app/views/disputes/strikes/show.html.haml | 2 +- app/views/settings/profiles/show.html.haml | 8 ++++---- 5 files changed, 10 insertions(+), 8 deletions(-) diff --git a/app/models/form/admin_settings.rb b/app/models/form/admin_settings.rb index 85b913cf80aadc..515909d5cfd2f7 100644 --- a/app/models/form/admin_settings.rb +++ b/app/models/form/admin_settings.rb @@ -73,6 +73,8 @@ class Form::AdminSettings authorized_fetch: :authorized_fetch_mode?, }.freeze + DESCRIPTION_LIMIT = 200 + attr_accessor(*KEYS) validates :registrations_mode, inclusion: { in: %w(open approved none) }, if: -> { defined?(@registrations_mode) } @@ -82,7 +84,7 @@ class Form::AdminSettings validates :show_domain_blocks, inclusion: { in: %w(disabled users all) }, if: -> { defined?(@show_domain_blocks) } validates :show_domain_blocks_rationale, inclusion: { in: %w(disabled users all) }, if: -> { defined?(@show_domain_blocks_rationale) } validates :media_cache_retention_period, :content_cache_retention_period, :backups_retention_period, numericality: { only_integer: true }, allow_blank: true, if: -> { defined?(@media_cache_retention_period) || defined?(@content_cache_retention_period) || defined?(@backups_retention_period) } - validates :site_short_description, length: { maximum: 200 }, if: -> { defined?(@site_short_description) } + validates :site_short_description, length: { maximum: DESCRIPTION_LIMIT }, if: -> { defined?(@site_short_description) } validates :status_page_url, url: true, allow_blank: true validate :validate_site_uploads diff --git a/app/views/admin/settings/branding/show.html.haml b/app/views/admin/settings/branding/show.html.haml index e03c16a25a88f8..62e9c724592d92 100644 --- a/app/views/admin/settings/branding/show.html.haml +++ b/app/views/admin/settings/branding/show.html.haml @@ -25,7 +25,7 @@ .fields-group = f.input :site_short_description, as: :text, - input_html: { rows: 2, maxlength: 200 }, + input_html: { rows: 2, maxlength: Form::AdminSettings::DESCRIPTION_LIMIT }, wrapper: :with_block_label .fields-row diff --git a/app/views/auth/registrations/new.html.haml b/app/views/auth/registrations/new.html.haml index 1e5aac2976a77e..d58f1ccf4d38bb 100644 --- a/app/views/auth/registrations/new.html.haml +++ b/app/views/auth/registrations/new.html.haml @@ -21,7 +21,7 @@ = f.simple_fields_for :account do |ff| = ff.input :username, append: "@#{site_hostname}", - input_html: { 'aria-label': t('simple_form.labels.defaults.username'), autocomplete: 'off', placeholder: t('simple_form.labels.defaults.username'), pattern: '[a-zA-Z0-9_]+', maxlength: 30 }, + input_html: { 'aria-label': t('simple_form.labels.defaults.username'), autocomplete: 'off', placeholder: t('simple_form.labels.defaults.username'), pattern: '[a-zA-Z0-9_]+', maxlength: Account::USERNAME_LENGTH_LIMIT }, label: false, required: true, wrapper: :with_label diff --git a/app/views/disputes/strikes/show.html.haml b/app/views/disputes/strikes/show.html.haml index 2bfecebbff9af2..150dc06759188d 100644 --- a/app/views/disputes/strikes/show.html.haml +++ b/app/views/disputes/strikes/show.html.haml @@ -76,7 +76,7 @@ = simple_form_for(@appeal, url: disputes_strike_appeal_path(@strike)) do |f| .fields-group - = f.input :text, wrapper: :with_label, input_html: { maxlength: 500 } + = f.input :text, wrapper: :with_label, input_html: { maxlength: Appeal::TEXT_LENGTH_LIMIT } .actions = f.button :button, t('disputes.strikes.appeals.submit'), type: :submit diff --git a/app/views/settings/profiles/show.html.haml b/app/views/settings/profiles/show.html.haml index 9790df7d05cff7..8fb21325197e3c 100644 --- a/app/views/settings/profiles/show.html.haml +++ b/app/views/settings/profiles/show.html.haml @@ -15,10 +15,10 @@ .fields-row .fields-row__column.fields-row__column-6 .fields-group - = f.input :display_name, wrapper: :with_block_label, input_html: { maxlength: 30, data: { default: @account.username } } + = f.input :display_name, wrapper: :with_block_label, input_html: { maxlength: Account::DISPLAY_NAME_LENGTH_LIMIT, data: { default: @account.username } } .fields-group - = f.input :note, wrapper: :with_block_label, input_html: { maxlength: 500 } + = f.input :note, wrapper: :with_block_label, input_html: { maxlength: Account::NOTE_LENGTH_LIMIT } .fields-row__column.fields-group.fields-row__column-6 .input.with_block_label @@ -27,8 +27,8 @@ = f.simple_fields_for :fields do |fields_f| .row - = fields_f.input :name, placeholder: t('simple_form.labels.account.fields.name'), input_html: { maxlength: 255 } - = fields_f.input :value, placeholder: t('simple_form.labels.account.fields.value'), input_html: { maxlength: 255 } + = fields_f.input :name, placeholder: t('simple_form.labels.account.fields.name'), input_html: { maxlength: Account::Field::MAX_CHARACTERS_LOCAL } + = fields_f.input :value, placeholder: t('simple_form.labels.account.fields.value'), input_html: { maxlength: Account::Field::MAX_CHARACTERS_LOCAL } .fields-row .fields-row__column.fields-row__column-6 From cdd7526531f3b2f2fa39497ce2d89002b4f428e3 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Fri, 27 Sep 2024 04:22:40 -0400 Subject: [PATCH 16/28] Remove completed TODO note in tags request spec (#32108) --- spec/requests/tags_spec.rb | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/spec/requests/tags_spec.rb b/spec/requests/tags_spec.rb index 7974a6b15267b9..fbd1f7d56ee4ae 100644 --- a/spec/requests/tags_spec.rb +++ b/spec/requests/tags_spec.rb @@ -7,18 +7,6 @@ context 'when tag exists' do let(:tag) { Fabricate :tag } - context 'with HTML format' do - # TODO: Update the have_cacheable_headers matcher to operate on capybara sessions - # Remove this example, rely on system spec (which should use matcher) - before { get tag_path(tag) } - - it 'returns http success' do - expect(response) - .to have_http_status(200) - .and have_cacheable_headers.with_vary('Accept, Accept-Language, Cookie') - end - end - context 'with JSON format' do before { get tag_path(tag, format: :json) } From 11a12e56b3480ac03921e831a7ccfcc7ade24b52 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 27 Sep 2024 17:09:39 +0200 Subject: [PATCH 17/28] Change media reordering design in the compose form in web UI (#32093) --- .../features/compose/components/upload.jsx | 81 -------- .../features/compose/components/upload.tsx | 130 ++++++++++++ .../compose/components/upload_form.jsx | 53 ----- .../compose/components/upload_form.tsx | 185 ++++++++++++++++++ app/javascript/mastodon/locales/en.json | 5 + .../mastodon/models/media_attachment.ts | 2 + .../styles/mastodon/components.scss | 59 ++++-- package.json | 3 + yarn.lock | 59 ++++++ 9 files changed, 423 insertions(+), 154 deletions(-) delete mode 100644 app/javascript/mastodon/features/compose/components/upload.jsx create mode 100644 app/javascript/mastodon/features/compose/components/upload.tsx delete mode 100644 app/javascript/mastodon/features/compose/components/upload_form.jsx create mode 100644 app/javascript/mastodon/features/compose/components/upload_form.tsx create mode 100644 app/javascript/mastodon/models/media_attachment.ts diff --git a/app/javascript/mastodon/features/compose/components/upload.jsx b/app/javascript/mastodon/features/compose/components/upload.jsx deleted file mode 100644 index 7f6ef6cfd8e418..00000000000000 --- a/app/javascript/mastodon/features/compose/components/upload.jsx +++ /dev/null @@ -1,81 +0,0 @@ -import PropTypes from 'prop-types'; -import { useCallback } from 'react'; - -import { FormattedMessage } from 'react-intl'; - -import classNames from 'classnames'; - -import { useDispatch, useSelector } from 'react-redux'; - -import spring from 'react-motion/lib/spring'; - -import CloseIcon from '@/material-icons/400-20px/close.svg?react'; -import EditIcon from '@/material-icons/400-24px/edit.svg?react'; -import WarningIcon from '@/material-icons/400-24px/warning.svg?react'; -import { undoUploadCompose, initMediaEditModal } from 'mastodon/actions/compose'; -import { Blurhash } from 'mastodon/components/blurhash'; -import { Icon } from 'mastodon/components/icon'; -import Motion from 'mastodon/features/ui/util/optional_motion'; - -export const Upload = ({ id, onDragStart, onDragEnter, onDragEnd }) => { - const dispatch = useDispatch(); - const media = useSelector(state => state.getIn(['compose', 'media_attachments']).find(item => item.get('id') === id)); - const sensitive = useSelector(state => state.getIn(['compose', 'spoiler'])); - - const handleUndoClick = useCallback(() => { - dispatch(undoUploadCompose(id)); - }, [dispatch, id]); - - const handleFocalPointClick = useCallback(() => { - dispatch(initMediaEditModal(id)); - }, [dispatch, id]); - - const handleDragStart = useCallback(() => { - onDragStart(id); - }, [onDragStart, id]); - - const handleDragEnter = useCallback(() => { - onDragEnter(id); - }, [onDragEnter, id]); - - if (!media) { - return null; - } - - const focusX = media.getIn(['meta', 'focus', 'x']); - const focusY = media.getIn(['meta', 'focus', 'y']); - const x = ((focusX / 2) + .5) * 100; - const y = ((focusY / -2) + .5) * 100; - const missingDescription = (media.get('description') || '').length === 0; - - return ( -
- - {({ scale }) => ( -
- {sensitive && } - -
- - -
- -
- -
-
- )} -
-
- ); -}; - -Upload.propTypes = { - id: PropTypes.string, - onDragEnter: PropTypes.func, - onDragStart: PropTypes.func, - onDragEnd: PropTypes.func, -}; diff --git a/app/javascript/mastodon/features/compose/components/upload.tsx b/app/javascript/mastodon/features/compose/components/upload.tsx new file mode 100644 index 00000000000000..3a24b28291e290 --- /dev/null +++ b/app/javascript/mastodon/features/compose/components/upload.tsx @@ -0,0 +1,130 @@ +import { useCallback } from 'react'; + +import { FormattedMessage } from 'react-intl'; + +import classNames from 'classnames'; + +import { useSortable } from '@dnd-kit/sortable'; +import { CSS } from '@dnd-kit/utilities'; + +import CloseIcon from '@/material-icons/400-20px/close.svg?react'; +import EditIcon from '@/material-icons/400-24px/edit.svg?react'; +import WarningIcon from '@/material-icons/400-24px/warning.svg?react'; +import { + undoUploadCompose, + initMediaEditModal, +} from 'mastodon/actions/compose'; +import { Blurhash } from 'mastodon/components/blurhash'; +import { Icon } from 'mastodon/components/icon'; +import type { MediaAttachment } from 'mastodon/models/media_attachment'; +import { useAppDispatch, useAppSelector } from 'mastodon/store'; + +export const Upload: React.FC<{ + id: string; + dragging?: boolean; + overlay?: boolean; + tall?: boolean; + wide?: boolean; +}> = ({ id, dragging, overlay, tall, wide }) => { + const dispatch = useAppDispatch(); + const media = useAppSelector( + (state) => + state.compose // eslint-disable-line @typescript-eslint/no-unsafe-call + .get('media_attachments') // eslint-disable-line @typescript-eslint/no-unsafe-member-access + .find((item: MediaAttachment) => item.get('id') === id) as // eslint-disable-line @typescript-eslint/no-unsafe-member-access + | MediaAttachment + | undefined, + ); + const sensitive = useAppSelector( + (state) => state.compose.get('spoiler') as boolean, // eslint-disable-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access + ); + + const handleUndoClick = useCallback(() => { + dispatch(undoUploadCompose(id)); + }, [dispatch, id]); + + const handleFocalPointClick = useCallback(() => { + dispatch(initMediaEditModal(id)); + }, [dispatch, id]); + + const { attributes, listeners, setNodeRef, transform, transition } = + useSortable({ id }); + + if (!media) { + return null; + } + + const focusX = media.getIn(['meta', 'focus', 'x']) as number; + const focusY = media.getIn(['meta', 'focus', 'y']) as number; + const x = (focusX / 2 + 0.5) * 100; + const y = (focusY / -2 + 0.5) * 100; + const missingDescription = + ((media.get('description') as string | undefined) ?? '').length === 0; + + const style = { + transform: CSS.Transform.toString(transform), + transition, + }; + + return ( +
+
+ {sensitive && ( + + )} + +
+ + +
+ +
+ +
+
+
+ ); +}; diff --git a/app/javascript/mastodon/features/compose/components/upload_form.jsx b/app/javascript/mastodon/features/compose/components/upload_form.jsx deleted file mode 100644 index adf5591382a49f..00000000000000 --- a/app/javascript/mastodon/features/compose/components/upload_form.jsx +++ /dev/null @@ -1,53 +0,0 @@ -import { useRef, useCallback } from 'react'; - -import { useSelector, useDispatch } from 'react-redux'; - -import { changeMediaOrder } from 'mastodon/actions/compose'; - -import { Upload } from './upload'; -import { UploadProgress } from './upload_progress'; - -export const UploadForm = () => { - const dispatch = useDispatch(); - const mediaIds = useSelector(state => state.getIn(['compose', 'media_attachments']).map(item => item.get('id'))); - const active = useSelector(state => state.getIn(['compose', 'is_uploading'])); - const progress = useSelector(state => state.getIn(['compose', 'progress'])); - const isProcessing = useSelector(state => state.getIn(['compose', 'is_processing'])); - - const dragItem = useRef(); - const dragOverItem = useRef(); - - const handleDragStart = useCallback(id => { - dragItem.current = id; - }, [dragItem]); - - const handleDragEnter = useCallback(id => { - dragOverItem.current = id; - }, [dragOverItem]); - - const handleDragEnd = useCallback(() => { - dispatch(changeMediaOrder(dragItem.current, dragOverItem.current)); - dragItem.current = null; - dragOverItem.current = null; - }, [dispatch, dragItem, dragOverItem]); - - return ( - <> - - - {mediaIds.size > 0 && ( -
- {mediaIds.map(id => ( - - ))} -
- )} - - ); -}; diff --git a/app/javascript/mastodon/features/compose/components/upload_form.tsx b/app/javascript/mastodon/features/compose/components/upload_form.tsx new file mode 100644 index 00000000000000..1c01c2bd9ccc78 --- /dev/null +++ b/app/javascript/mastodon/features/compose/components/upload_form.tsx @@ -0,0 +1,185 @@ +import { useState, useCallback, useMemo } from 'react'; + +import { useIntl, defineMessages } from 'react-intl'; + +import type { List } from 'immutable'; + +import type { + DragStartEvent, + DragEndEvent, + UniqueIdentifier, + Announcements, + ScreenReaderInstructions, +} from '@dnd-kit/core'; +import { + DndContext, + closestCenter, + KeyboardSensor, + PointerSensor, + useSensor, + useSensors, + DragOverlay, +} from '@dnd-kit/core'; +import { + SortableContext, + sortableKeyboardCoordinates, + rectSortingStrategy, +} from '@dnd-kit/sortable'; + +import { changeMediaOrder } from 'mastodon/actions/compose'; +import type { MediaAttachment } from 'mastodon/models/media_attachment'; +import { useAppSelector, useAppDispatch } from 'mastodon/store'; + +import { Upload } from './upload'; +import { UploadProgress } from './upload_progress'; + +const messages = defineMessages({ + screenReaderInstructions: { + id: 'upload_form.drag_and_drop.instructions', + defaultMessage: + 'To pick up a media attachment, press space or enter. While dragging, use the arrow keys to move the media attachment in any given direction. Press space or enter again to drop the media attachment in its new position, or press escape to cancel.', + }, + onDragStart: { + id: 'upload_form.drag_and_drop.on_drag_start', + defaultMessage: 'Picked up media attachment {item}.', + }, + onDragOver: { + id: 'upload_form.drag_and_drop.on_drag_over', + defaultMessage: 'Media attachment {item} was moved.', + }, + onDragEnd: { + id: 'upload_form.drag_and_drop.on_drag_end', + defaultMessage: 'Media attachment {item} was dropped.', + }, + onDragCancel: { + id: 'upload_form.drag_and_drop.on_drag_cancel', + defaultMessage: + 'Dragging was cancelled. Media attachment {item} was dropped.', + }, +}); + +export const UploadForm: React.FC = () => { + const dispatch = useAppDispatch(); + const intl = useIntl(); + const mediaIds = useAppSelector( + (state) => + state.compose // eslint-disable-line @typescript-eslint/no-unsafe-call + .get('media_attachments') // eslint-disable-line @typescript-eslint/no-unsafe-member-access + .map((item: MediaAttachment) => item.get('id')) as List, // eslint-disable-line @typescript-eslint/no-unsafe-member-access + ); + const active = useAppSelector( + (state) => state.compose.get('is_uploading') as boolean, // eslint-disable-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access + ); + const progress = useAppSelector( + (state) => state.compose.get('progress') as number, // eslint-disable-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access + ); + const isProcessing = useAppSelector( + (state) => state.compose.get('is_processing') as boolean, // eslint-disable-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access + ); + const [activeId, setActiveId] = useState(null); + const sensors = useSensors( + useSensor(PointerSensor, { + activationConstraint: { + distance: 5, + }, + }), + useSensor(KeyboardSensor, { + coordinateGetter: sortableKeyboardCoordinates, + }), + ); + + const handleDragStart = useCallback( + (e: DragStartEvent) => { + const { active } = e; + + setActiveId(active.id); + }, + [setActiveId], + ); + + const handleDragEnd = useCallback( + (e: DragEndEvent) => { + const { active, over } = e; + + if (over && active.id !== over.id) { + dispatch(changeMediaOrder(active.id, over.id)); + } + + setActiveId(null); + }, + [dispatch, setActiveId], + ); + + const accessibility: { + screenReaderInstructions: ScreenReaderInstructions; + announcements: Announcements; + } = useMemo( + () => ({ + screenReaderInstructions: { + draggable: intl.formatMessage(messages.screenReaderInstructions), + }, + + announcements: { + onDragStart({ active }) { + return intl.formatMessage(messages.onDragStart, { item: active.id }); + }, + + onDragOver({ active }) { + return intl.formatMessage(messages.onDragOver, { item: active.id }); + }, + + onDragEnd({ active }) { + return intl.formatMessage(messages.onDragEnd, { item: active.id }); + }, + + onDragCancel({ active }) { + return intl.formatMessage(messages.onDragCancel, { item: active.id }); + }, + }, + }), + [intl], + ); + + return ( + <> + + + {mediaIds.size > 0 && ( +
+ + + {mediaIds.map((id, idx) => ( + + ))} + + + + {activeId ? : null} + + +
+ )} + + ); +}; diff --git a/app/javascript/mastodon/locales/en.json b/app/javascript/mastodon/locales/en.json index e86e300bcba7d8..1e78745359aa28 100644 --- a/app/javascript/mastodon/locales/en.json +++ b/app/javascript/mastodon/locales/en.json @@ -852,6 +852,11 @@ "upload_error.poll": "File upload not allowed with polls.", "upload_form.audio_description": "Describe for people who are deaf or hard of hearing", "upload_form.description": "Describe for people who are blind or have low vision", + "upload_form.drag_and_drop.instructions": "To pick up a media attachment, press space or enter. While dragging, use the arrow keys to move the media attachment in any given direction. Press space or enter again to drop the media attachment in its new position, or press escape to cancel.", + "upload_form.drag_and_drop.on_drag_cancel": "Dragging was cancelled. Media attachment {item} was dropped.", + "upload_form.drag_and_drop.on_drag_end": "Media attachment {item} was dropped.", + "upload_form.drag_and_drop.on_drag_over": "Media attachment {item} was moved.", + "upload_form.drag_and_drop.on_drag_start": "Picked up media attachment {item}.", "upload_form.edit": "Edit", "upload_form.thumbnail": "Change thumbnail", "upload_form.video_description": "Describe for people who are deaf, hard of hearing, blind or have low vision", diff --git a/app/javascript/mastodon/models/media_attachment.ts b/app/javascript/mastodon/models/media_attachment.ts new file mode 100644 index 00000000000000..0e5b9ab555e354 --- /dev/null +++ b/app/javascript/mastodon/models/media_attachment.ts @@ -0,0 +1,2 @@ +// Temporary until we type it correctly +export type MediaAttachment = Immutable.Map; diff --git a/app/javascript/styles/mastodon/components.scss b/app/javascript/styles/mastodon/components.scss index 8cb63e42e63df6..14de6e6818bdd3 100644 --- a/app/javascript/styles/mastodon/components.scss +++ b/app/javascript/styles/mastodon/components.scss @@ -653,19 +653,39 @@ body > [data-popper-placement] { } &__uploads { - display: flex; - gap: 8px; padding: 0 12px; - flex-wrap: wrap; - align-self: stretch; - align-items: flex-start; - align-content: flex-start; - justify-content: center; + aspect-ratio: 3/2; + } + + .media-gallery { + gap: 8px; } &__upload { - flex: 1 1 0; - min-width: calc(50% - 8px); + position: relative; + cursor: grab; + + &.dragging { + opacity: 0; + } + + &.overlay { + height: 100%; + border-radius: 8px; + pointer-events: none; + } + + &__drag-handle { + position: absolute; + top: 50%; + inset-inline-start: 0; + transform: translateY(-50%); + color: $white; + background: transparent; + border: 0; + padding: 8px 3px; + cursor: grab; + } &__actions { display: flex; @@ -686,8 +706,7 @@ body > [data-popper-placement] { &__thumbnail { width: 100%; - height: 144px; - border-radius: 6px; + height: 100%; background-position: center; background-size: cover; background-repeat: no-repeat; @@ -7098,30 +7117,30 @@ a.status-card { gap: 2px; &--layout-2 { - .media-gallery__item:nth-child(1) { + & > .media-gallery__item:nth-child(1) { border-end-end-radius: 0; border-start-end-radius: 0; } - .media-gallery__item:nth-child(2) { + & > .media-gallery__item:nth-child(2) { border-start-start-radius: 0; border-end-start-radius: 0; } } &--layout-3 { - .media-gallery__item:nth-child(1) { + & > .media-gallery__item:nth-child(1) { border-end-end-radius: 0; border-start-end-radius: 0; } - .media-gallery__item:nth-child(2) { + & > .media-gallery__item:nth-child(2) { border-start-start-radius: 0; border-end-start-radius: 0; border-end-end-radius: 0; } - .media-gallery__item:nth-child(3) { + & > .media-gallery__item:nth-child(3) { border-start-start-radius: 0; border-end-start-radius: 0; border-start-end-radius: 0; @@ -7129,26 +7148,26 @@ a.status-card { } &--layout-4 { - .media-gallery__item:nth-child(1) { + & > .media-gallery__item:nth-child(1) { border-end-end-radius: 0; border-start-end-radius: 0; border-end-start-radius: 0; } - .media-gallery__item:nth-child(2) { + & > .media-gallery__item:nth-child(2) { border-start-start-radius: 0; border-end-start-radius: 0; border-end-end-radius: 0; } - .media-gallery__item:nth-child(3) { + & > .media-gallery__item:nth-child(3) { border-start-start-radius: 0; border-start-end-radius: 0; border-end-start-radius: 0; border-end-end-radius: 0; } - .media-gallery__item:nth-child(4) { + & > .media-gallery__item:nth-child(4) { border-start-start-radius: 0; border-end-start-radius: 0; border-start-end-radius: 0; diff --git a/package.json b/package.json index 08fec76465a85a..7a6dee131188ce 100644 --- a/package.json +++ b/package.json @@ -42,6 +42,9 @@ "@babel/preset-react": "^7.22.3", "@babel/preset-typescript": "^7.21.5", "@babel/runtime": "^7.22.3", + "@dnd-kit/core": "^6.1.0", + "@dnd-kit/sortable": "^8.0.0", + "@dnd-kit/utilities": "^3.2.2", "@formatjs/intl-pluralrules": "^5.2.2", "@gamestdio/websocket": "^0.3.2", "@github/webauthn-json": "^2.1.1", diff --git a/yarn.lock b/yarn.lock index eff88f772ec3cf..62a538b42cbe6b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2010,6 +2010,55 @@ __metadata: languageName: node linkType: hard +"@dnd-kit/accessibility@npm:^3.1.0": + version: 3.1.0 + resolution: "@dnd-kit/accessibility@npm:3.1.0" + dependencies: + tslib: "npm:^2.0.0" + peerDependencies: + react: ">=16.8.0" + checksum: 10c0/4f9d24e801d66d4fbb551ec389ed90424dd4c5bbdf527000a618e9abb9833cbd84d9a79e362f470ccbccfbd6d00217a9212c92f3cef66e01c951c7f79625b9d7 + languageName: node + linkType: hard + +"@dnd-kit/core@npm:^6.1.0": + version: 6.1.0 + resolution: "@dnd-kit/core@npm:6.1.0" + dependencies: + "@dnd-kit/accessibility": "npm:^3.1.0" + "@dnd-kit/utilities": "npm:^3.2.2" + tslib: "npm:^2.0.0" + peerDependencies: + react: ">=16.8.0" + react-dom: ">=16.8.0" + checksum: 10c0/c793eb97cb59285ca8937ebcdfcd27cff09d750ae06722e36ca5ed07925e41abc36a38cff98f9f6056f7a07810878d76909826142a2968330e7e22060e6be584 + languageName: node + linkType: hard + +"@dnd-kit/sortable@npm:^8.0.0": + version: 8.0.0 + resolution: "@dnd-kit/sortable@npm:8.0.0" + dependencies: + "@dnd-kit/utilities": "npm:^3.2.2" + tslib: "npm:^2.0.0" + peerDependencies: + "@dnd-kit/core": ^6.1.0 + react: ">=16.8.0" + checksum: 10c0/a6066c652b892c6a11320c7d8f5c18fdf723e721e8eea37f4ab657dee1ac5e7ca710ac32ce0712a57fe968bc07c13bcea5d5599d90dfdd95619e162befd4d2fb + languageName: node + linkType: hard + +"@dnd-kit/utilities@npm:^3.2.2": + version: 3.2.2 + resolution: "@dnd-kit/utilities@npm:3.2.2" + dependencies: + tslib: "npm:^2.0.0" + peerDependencies: + react: ">=16.8.0" + checksum: 10c0/9aa90526f3e3fd567b5acc1b625a63177b9e8d00e7e50b2bd0e08fa2bf4dba7e19529777e001fdb8f89a7ce69f30b190c8364d390212634e0afdfa8c395e85a0 + languageName: node + linkType: hard + "@dual-bundle/import-meta-resolve@npm:^4.1.0": version: 4.1.0 resolution: "@dual-bundle/import-meta-resolve@npm:4.1.0" @@ -2753,6 +2802,9 @@ __metadata: "@babel/preset-react": "npm:^7.22.3" "@babel/preset-typescript": "npm:^7.21.5" "@babel/runtime": "npm:^7.22.3" + "@dnd-kit/core": "npm:^6.1.0" + "@dnd-kit/sortable": "npm:^8.0.0" + "@dnd-kit/utilities": "npm:^3.2.2" "@formatjs/cli": "npm:^6.1.1" "@formatjs/intl-pluralrules": "npm:^5.2.2" "@gamestdio/websocket": "npm:^0.3.2" @@ -17205,6 +17257,13 @@ __metadata: languageName: node linkType: hard +"tslib@npm:^2.0.0": + version: 2.7.0 + resolution: "tslib@npm:2.7.0" + checksum: 10c0/469e1d5bf1af585742128827000711efa61010b699cb040ab1800bcd3ccdd37f63ec30642c9e07c4439c1db6e46345582614275daca3e0f4abae29b0083f04a6 + languageName: node + linkType: hard + "tslib@npm:^2.4.0, tslib@npm:^2.6.2": version: 2.6.3 resolution: "tslib@npm:2.6.3" From 24d3ce7bab2becc345152a143224924044ebe33c Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Fri, 27 Sep 2024 15:38:44 -0400 Subject: [PATCH 18/28] Add `no-toolbar` state for "nothing here" batch table views (#32128) --- app/javascript/styles/mastodon/tables.scss | 4 ++++ app/views/admin/tags/index.html.haml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/app/javascript/styles/mastodon/tables.scss b/app/javascript/styles/mastodon/tables.scss index 2becd85bc667ef..af8ccf5b3839ef 100644 --- a/app/javascript/styles/mastodon/tables.scss +++ b/app/javascript/styles/mastodon/tables.scss @@ -359,6 +359,10 @@ a.table-action-link { @media screen and (max-width: $no-gap-breakpoint) { border-top: 1px solid var(--background-border-color); } + + &--no-toolbar { + border-top: 1px solid var(--background-border-color); + } } @media screen and (width <= 870px) { diff --git a/app/views/admin/tags/index.html.haml b/app/views/admin/tags/index.html.haml index 8d76d8ffa7469f..be699e5ab2be53 100644 --- a/app/views/admin/tags/index.html.haml +++ b/app/views/admin/tags/index.html.haml @@ -32,7 +32,7 @@ .batch-table .batch-table__body - if @tags.empty? - = nothing_here 'nothing-here--under-tabs' + = nothing_here 'nothing-here--under-tabs nothing-here--no-toolbar' - else = render partial: 'tag', collection: @tags From 9d664f87a04b6a5157ddbe60ee33b5b7a960198e Mon Sep 17 00:00:00 2001 From: Christian Schmidt Date: Fri, 27 Sep 2024 21:41:41 +0200 Subject: [PATCH 19/28] Mailer layout fixes (#32132) --- app/javascript/styles/mailer.scss | 2 ++ app/views/user_mailer/welcome.html.haml | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/app/javascript/styles/mailer.scss b/app/javascript/styles/mailer.scss index 2c1b443cb51114..f46160889a7a49 100644 --- a/app/javascript/styles/mailer.scss +++ b/app/javascript/styles/mailer.scss @@ -366,6 +366,7 @@ table + p { .email-header-card-banner-td { border-radius: 12px 12px 0 0; + width: 236px; height: 80px; background-color: #f3f2f5 !important; background-position: center !important; @@ -523,6 +524,7 @@ table + p { height: 40px; text-align: center; mso-padding-alt: 0 35px; + word-break: normal; } .email-btn-a { diff --git a/app/views/user_mailer/welcome.html.haml b/app/views/user_mailer/welcome.html.haml index 0f9cbf36ffb263..efc6cad3934526 100644 --- a/app/views/user_mailer/welcome.html.haml +++ b/app/views/user_mailer/welcome.html.haml @@ -9,7 +9,7 @@ %td %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } %tr - %td.email-header-card-banner-td{ height: 140, background: full_asset_url(instance_presenter.thumbnail&.file&.url(:'@1x') || frontend_asset_path('images/preview.png')) } + %td.email-header-card-banner-td{ background: full_asset_url(instance_presenter.thumbnail&.file&.url(:'@1x') || frontend_asset_path('images/preview.png')) } %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } %tr %td.email-header-card-body-td From c352ce6f4550a8bea554448fd48ca657bbdc50c2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 30 Sep 2024 10:20:20 +0200 Subject: [PATCH 20/28] Fix missing permission on new embeds making them unclickable (#32135) --- public/embed.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/public/embed.js b/public/embed.js index 3fb57469a96523..53372a38904982 100644 --- a/public/embed.js +++ b/public/embed.js @@ -81,7 +81,7 @@ const allowedPrefixes = (document.currentScript && document.currentScript.tagNam embeds.set(id, iframe); iframe.allow = 'fullscreen'; - iframe.sandbox = 'allow-scripts allow-same-origin'; + iframe.sandbox = 'allow-scripts allow-same-origin allow-popups'; iframe.style.border = 0; iframe.style.overflow = 'hidden'; iframe.style.display = 'block'; @@ -112,7 +112,7 @@ const allowedPrefixes = (document.currentScript && document.currentScript.tagNam iframe.width = container.clientWidth; iframe.height = 0; iframe.allow = 'fullscreen'; - iframe.sandbox = 'allow-scripts allow-same-origin'; + iframe.sandbox = 'allow-scripts allow-same-origin allow-popups'; iframe.style.border = 0; iframe.style.overflow = 'hidden'; iframe.style.display = 'block'; From 6037714f76910dbc15f99cbf3ab97e5d3d5006d7 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 30 Sep 2024 10:47:57 +0200 Subject: [PATCH 21/28] Update dependency propshaft to v1.0.1 (#32158) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Gemfile.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index e1ea677dfd27aa..b85d97761d2dd3 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -347,7 +347,7 @@ GEM activesupport (>= 3.0) nokogiri (>= 1.6) io-console (0.7.2) - irb (1.14.0) + irb (1.14.1) rdoc (>= 4.0.0) reline (>= 0.4.2) jmespath (1.6.2) @@ -601,7 +601,7 @@ GEM actionmailer (>= 3) net-smtp premailer (~> 1.7, >= 1.7.9) - propshaft (1.0.0) + propshaft (1.0.1) actionpack (>= 7.0.0) activesupport (>= 7.0.0) rack From f477dc399e9edf9b02c2033724a6a57679c7b286 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 30 Sep 2024 08:53:29 +0000 Subject: [PATCH 22/28] New Crowdin Translations (automated) (#32140) Co-authored-by: GitHub Actions --- app/javascript/mastodon/locales/bg.json | 1 + app/javascript/mastodon/locales/ca.json | 5 +++++ app/javascript/mastodon/locales/da.json | 5 +++++ app/javascript/mastodon/locales/de.json | 9 +++++++-- app/javascript/mastodon/locales/eo.json | 5 +++++ app/javascript/mastodon/locales/es-AR.json | 9 +++++++-- app/javascript/mastodon/locales/es-MX.json | 17 +++++++++++------ app/javascript/mastodon/locales/es.json | 5 +++++ app/javascript/mastodon/locales/fi.json | 7 ++++++- app/javascript/mastodon/locales/fil.json | 8 +++++++- app/javascript/mastodon/locales/fo.json | 5 +++++ app/javascript/mastodon/locales/fr-CA.json | 5 +++++ app/javascript/mastodon/locales/fr.json | 5 +++++ app/javascript/mastodon/locales/ga.json | 7 +++++++ app/javascript/mastodon/locales/gl.json | 5 +++++ app/javascript/mastodon/locales/io.json | 11 ++++++++--- app/javascript/mastodon/locales/kab.json | 1 + app/javascript/mastodon/locales/ko.json | 10 +++++++++- app/javascript/mastodon/locales/lt.json | 7 ++++++- app/javascript/mastodon/locales/nl.json | 5 +++++ app/javascript/mastodon/locales/nn.json | 8 ++++++++ app/javascript/mastodon/locales/pl.json | 5 +++++ app/javascript/mastodon/locales/th.json | 1 + app/javascript/mastodon/locales/vi.json | 14 ++++++++++---- app/javascript/mastodon/locales/zh-CN.json | 5 +++++ app/javascript/mastodon/locales/zh-TW.json | 5 +++++ config/locales/activerecord.bg.yml | 6 ++++++ config/locales/de.yml | 6 +++--- config/locales/devise.eo.yml | 2 ++ config/locales/doorkeeper.bg.yml | 1 + config/locales/doorkeeper.es-AR.yml | 2 +- config/locales/doorkeeper.es-MX.yml | 2 +- config/locales/doorkeeper.es.yml | 2 +- config/locales/doorkeeper.fr-CA.yml | 1 + config/locales/doorkeeper.fr.yml | 1 + config/locales/doorkeeper.ko.yml | 1 + config/locales/eo.yml | 4 ++++ config/locales/es-AR.yml | 3 +++ config/locales/es-MX.yml | 3 +++ config/locales/es.yml | 3 +++ config/locales/fi.yml | 3 +++ config/locales/fo.yml | 3 +++ config/locales/fr-CA.yml | 7 +++++++ config/locales/fr.yml | 9 ++++++++- config/locales/ga.yml | 3 +++ config/locales/hu.yml | 3 +++ config/locales/ko.yml | 3 +++ config/locales/nn.yml | 1 + config/locales/pt-BR.yml | 3 +++ config/locales/simple_form.bg.yml | 3 +++ config/locales/simple_form.eo.yml | 8 ++++++++ config/locales/sv.yml | 2 ++ config/locales/th.yml | 6 +++++- config/locales/tr.yml | 3 +++ config/locales/vi.yml | 5 ++++- 55 files changed, 239 insertions(+), 30 deletions(-) diff --git a/app/javascript/mastodon/locales/bg.json b/app/javascript/mastodon/locales/bg.json index bf0b656f934b78..1e462ba752757c 100644 --- a/app/javascript/mastodon/locales/bg.json +++ b/app/javascript/mastodon/locales/bg.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Скоростта е ограничена", "alert.unexpected.message": "Възникна неочаквана грешка.", "alert.unexpected.title": "Опаа!", + "alt_text_badge.title": "Алтернативен текст", "announcement.announcement": "Оповестяване", "attachments_list.unprocessed": "(необработено)", "audio.hide": "Скриване на звука", diff --git a/app/javascript/mastodon/locales/ca.json b/app/javascript/mastodon/locales/ca.json index 1cd643842cdc2a..b79ac156e229ac 100644 --- a/app/javascript/mastodon/locales/ca.json +++ b/app/javascript/mastodon/locales/ca.json @@ -852,6 +852,11 @@ "upload_error.poll": "No es permet carregar fitxers a les enquestes.", "upload_form.audio_description": "Descriu-ho per a persones amb problemes d'audició", "upload_form.description": "Descriu-ho per a persones amb problemes de visió", + "upload_form.drag_and_drop.instructions": "Per a agafar un fitxer multimèdia adjunt, premeu l'espai o la tecla Enter. Mentre l'arrossegueu, utilitzeu les fletxes per a moure l'adjunt en qualsevol direcció. Premeu espai o Enter un altre cop per a deixar-lo anar a la seva nova posició, o premeu la tecla d'escapament per cancel·lar.", + "upload_form.drag_and_drop.on_drag_cancel": "S'ha cancel·lat l'arrossegament. S'ha deixat anar l'adjunt multimèdia {item}.", + "upload_form.drag_and_drop.on_drag_end": "S'ha deixat anar l'adjunt multimèdia {item}.", + "upload_form.drag_and_drop.on_drag_over": "S'ha mogut l'adjunt multimèdia {item}.", + "upload_form.drag_and_drop.on_drag_start": "S'ha agafat l'adjunt multimèdia {item}.", "upload_form.edit": "Edita", "upload_form.thumbnail": "Canvia la miniatura", "upload_form.video_description": "Descriu-ho per a persones amb problemes de visió o audició", diff --git a/app/javascript/mastodon/locales/da.json b/app/javascript/mastodon/locales/da.json index 8223177ab93a9e..659f807d050c59 100644 --- a/app/javascript/mastodon/locales/da.json +++ b/app/javascript/mastodon/locales/da.json @@ -852,6 +852,11 @@ "upload_error.poll": "Filupload ikke tilladt for afstemninger.", "upload_form.audio_description": "Beskrivelse til hørehæmmede", "upload_form.description": "Beskrivelse til svagtseende", + "upload_form.drag_and_drop.instructions": "For at opsamle en medievedhæftning, tryk på Mellemrum eller Retur. Mens der trækkes, benyt piletasterne til at flytte medievedhæftningen i en given retning. Tryk på Mellemrum eller Retur igen for at slippe medievedhæftningen på den nye position, eller tryk på Escape for at afbryde.", + "upload_form.drag_and_drop.on_drag_cancel": "Træk blev afbrudt. Medievedhæftningen {item} blev sluppet.", + "upload_form.drag_and_drop.on_drag_end": "Medievedhæftningen {item} er sluppet.", + "upload_form.drag_and_drop.on_drag_over": "Medievedhæftningen {item} er flyttet.", + "upload_form.drag_and_drop.on_drag_start": "Opsamlede medievedhæftningen {item}.", "upload_form.edit": "Redigér", "upload_form.thumbnail": "Skift miniature", "upload_form.video_description": "Beskrivelse for hørehæmmede eller synshandicappede personer", diff --git a/app/javascript/mastodon/locales/de.json b/app/javascript/mastodon/locales/de.json index 30a55df05b2a83..6f45d4fe5329a3 100644 --- a/app/javascript/mastodon/locales/de.json +++ b/app/javascript/mastodon/locales/de.json @@ -229,14 +229,14 @@ "domain_pill.activitypub_like_language": "ActivityPub ist sozusagen die Sprache, die Mastodon mit anderen sozialen Netzwerken spricht.", "domain_pill.server": "Server", "domain_pill.their_handle": "Deren Adresse:", - "domain_pill.their_server": "Deren digitales Zuhause. Hier „leben“ alle Beiträge von diesem Profil.", + "domain_pill.their_server": "Deren digitale Heimat. Hier „leben“ alle Beiträge von diesem Profil.", "domain_pill.their_username": "Deren eindeutigen Identität auf dem betreffenden Server. Es ist möglich, Profile mit dem gleichen Profilnamen auf verschiedenen Servern zu finden.", "domain_pill.username": "Profilname", "domain_pill.whats_in_a_handle": "Was ist Teil der Adresse?", "domain_pill.who_they_are": "Adressen teilen mit, wer jemand ist und wo sich jemand aufhält. Daher kannst du mit Leuten im gesamten Social Web interagieren, wenn es eine durch ist.", "domain_pill.who_you_are": "Deine Adresse teilt mit, wer du bist und wo du dich aufhältst. Daher können andere Leute im gesamten Social Web mit dir interagieren, wenn es eine durch ist.", "domain_pill.your_handle": "Deine Adresse:", - "domain_pill.your_server": "Dein digitales Zuhause. Hier „leben“ alle Beiträge von dir. Dir gefällt es hier nicht? Du kannst jederzeit den Server wechseln und ebenso deine Follower übertragen.", + "domain_pill.your_server": "Deine digitale Heimat. Hier „leben“ alle Beiträge von dir. Falls es dir hier nicht gefällt, kannst du jederzeit den Server wechseln und ebenso deine Follower übertragen.", "domain_pill.your_username": "Deine eindeutige Identität auf diesem Server. Es ist möglich, Profile mit dem gleichen Profilnamen auf verschiedenen Servern zu finden.", "embed.instructions": "Du kannst diesen Beitrag auf deiner Website einbetten, indem du den nachfolgenden Code kopierst.", "embed.preview": "Vorschau:", @@ -852,6 +852,11 @@ "upload_error.poll": "Medien-Anhänge sind zusammen mit Umfragen nicht erlaubt.", "upload_form.audio_description": "Beschreibe für Menschen mit Hörbehinderung", "upload_form.description": "Beschreibe für Menschen mit Sehbehinderung", + "upload_form.drag_and_drop.instructions": "Drücke zum Aufnehmen eines Medienanhangs die Eingabe- oder Leertaste. Verwende beim Ziehen die Pfeiltasten, um den Medienanhang zur gewünschten Position zu bewegen. Drücke erneut die Eingabe- oder Leertaste, um den Medienanhang an der gewünschten Position abzulegen. Mit der Escape-Taste kannst du den Vorgang abbrechen.", + "upload_form.drag_and_drop.on_drag_cancel": "Das Ziehen wurde abgebrochen und der Medienanhang {item} wurde abgelegt.", + "upload_form.drag_and_drop.on_drag_end": "Der Medienanhang {item} wurde abgelegt.", + "upload_form.drag_and_drop.on_drag_over": "Der Medienanhang {item} wurde bewegt.", + "upload_form.drag_and_drop.on_drag_start": "Der Medienanhang {item} wurde aufgenommen.", "upload_form.edit": "Bearbeiten", "upload_form.thumbnail": "Vorschaubild ändern", "upload_form.video_description": "Beschreibe für Menschen mit einer Hör- oder Sehbehinderung", diff --git a/app/javascript/mastodon/locales/eo.json b/app/javascript/mastodon/locales/eo.json index 832bf9eda0cf95..4268c385359327 100644 --- a/app/javascript/mastodon/locales/eo.json +++ b/app/javascript/mastodon/locales/eo.json @@ -852,6 +852,11 @@ "upload_error.poll": "Alŝuto de dosiero ne permesita kun balotenketo.", "upload_form.audio_description": "Priskribi por homoj kiuj malfacile aŭdi", "upload_form.description": "Priskribi por personoj, kiuj estas blindaj aŭ havas vidmalsufiĉon", + "upload_form.drag_and_drop.instructions": "Por preni amaskomunikilaron aldonaĵon, premu spacoklavon aŭ enen-klavon. Dum trenado, uzu la sagoklavojn por movi la amaskomunikilaron aldonaĵon en iu ajn direkto. Premu spacoklavon aŭ enen-klavon denove por faligi la amaskomunikilaron aldonaĵon en ĝia nova pozicio, aŭ premu eskapan klavon por nuligi.", + "upload_form.drag_and_drop.on_drag_cancel": "Trenado estis nuligita. Amaskomunikila aldonaĵo {item} estis forigita.", + "upload_form.drag_and_drop.on_drag_end": "Amaskomunikila aldonaĵo {item} estis forigita.", + "upload_form.drag_and_drop.on_drag_over": "Amaskomunikila aldonaĵo {item} estis movita.", + "upload_form.drag_and_drop.on_drag_start": "Prenis amaskomunikilan aldonaĵon {item}.", "upload_form.edit": "Redakti", "upload_form.thumbnail": "Ŝanĝi etigita bildo", "upload_form.video_description": "Priskribi por homoj kiuj malfacile aŭdi aŭ vidi", diff --git a/app/javascript/mastodon/locales/es-AR.json b/app/javascript/mastodon/locales/es-AR.json index e0a4f0fc923f28..609175d94f7460 100644 --- a/app/javascript/mastodon/locales/es-AR.json +++ b/app/javascript/mastodon/locales/es-AR.json @@ -222,8 +222,8 @@ "domain_block_modal.they_cant_follow": "Nadie de este servidor puede seguirte.", "domain_block_modal.they_wont_know": "No sabrán que fueron bloqueados.", "domain_block_modal.title": "¿Bloquear dominio?", - "domain_block_modal.you_will_lose_num_followers": "Perderás {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} y {followingCount, plural, one {{followingCountDisplay} persona a la que sigues} other {{followingCountDisplay} personas a las que sigues}}.", - "domain_block_modal.you_will_lose_relationships": "Perderás a todos los seguidores y gente a la que sigas de este servidor.", + "domain_block_modal.you_will_lose_num_followers": "Perderás {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} y {followingCount, plural, one {{followingCountDisplay} cuenta que seguís} other {{followingCountDisplay} cuentas que seguís}}.", + "domain_block_modal.you_will_lose_relationships": "Perderás a todos los seguidores y cuentas a las que seguís de este servidor.", "domain_block_modal.you_wont_see_posts": "No verás mensajes ni notificaciones de usuarios en este servidor.", "domain_pill.activitypub_lets_connect": "Te permite conectar e interactuar con cuentas no solo en Mastodon, sino también a través de diferentes aplicaciones sociales.", "domain_pill.activitypub_like_language": "ActivityPub es como el idioma que Mastodon habla con otras redes sociales.", @@ -852,6 +852,11 @@ "upload_error.poll": "No se permite la subida de archivos en encuestas.", "upload_form.audio_description": "Agregá una descripción para personas con dificultades auditivas", "upload_form.description": "Agregá una descripción para personas con dificultades visuales", + "upload_form.drag_and_drop.instructions": "Para recoger un archivo multimedia, pulsá la barra espaciadora o la tecla Enter. Mientras arrastrás, usá las teclas de flecha para mover el archivo multimedia en cualquier dirección. Volvé a pulsar la barra espaciadora o la tecla Enter para soltar el archivo multimedia en su nueva posición, o pulsá la tecla Escape para cancelar.", + "upload_form.drag_and_drop.on_drag_cancel": "Se canceló el arrastre. Se eliminó el archivo adjunto {item}.", + "upload_form.drag_and_drop.on_drag_end": "El archivo adjunto {item} ha sido eliminado.", + "upload_form.drag_and_drop.on_drag_over": "El archivo adjunto {item} fue movido.", + "upload_form.drag_and_drop.on_drag_start": "Se ha recogido el archivo adjunto {item}.", "upload_form.edit": "Editar", "upload_form.thumbnail": "Cambiar miniatura", "upload_form.video_description": "Agregá una descripción para personas con dificultades auditivas o visuales", diff --git a/app/javascript/mastodon/locales/es-MX.json b/app/javascript/mastodon/locales/es-MX.json index 3948de6c3277fb..7c2e4003380f9b 100644 --- a/app/javascript/mastodon/locales/es-MX.json +++ b/app/javascript/mastodon/locales/es-MX.json @@ -95,7 +95,7 @@ "block_modal.they_cant_mention": "No pueden mencionarte ni seguirte.", "block_modal.they_cant_see_posts": "No pueden ver tus publicaciones y tú no verás las de ellos.", "block_modal.they_will_know": "Pueden ver que están bloqueados.", - "block_modal.title": "¿Bloquear usuario?", + "block_modal.title": "¿Deseas bloquear al usuario?", "block_modal.you_wont_see_mentions": "No verás publicaciones que los mencionen.", "boost_modal.combo": "Puedes hacer clic en {combo} para saltar este aviso la próxima vez", "boost_modal.reblog": "¿Deseas impulsar la publicación?", @@ -173,9 +173,9 @@ "confirmations.block.confirm": "Bloquear", "confirmations.delete.confirm": "Eliminar", "confirmations.delete.message": "¿Estás seguro de que quieres borrar esta publicación?", - "confirmations.delete.title": "¿Eliminar publicación?", + "confirmations.delete.title": "¿Deseas eliminar la publicación?", "confirmations.delete_list.confirm": "Eliminar", - "confirmations.delete_list.message": "¿Seguro que quieres borrar esta lista permanentemente?", + "confirmations.delete_list.message": "¿Estás seguro de que quieres eliminar esta lista de forma permanente?", "confirmations.delete_list.title": "¿Deseas eliminar la lista?", "confirmations.discard_edit_media.confirm": "Descartar", "confirmations.discard_edit_media.message": "Tienes cambios sin guardar en la descripción o vista previa del archivo, ¿deseas descartarlos de cualquier manera?", @@ -191,7 +191,7 @@ "confirmations.redraft.title": "¿Borrar y volver a redactar la publicación?", "confirmations.reply.confirm": "Responder", "confirmations.reply.message": "Responder sobrescribirá el mensaje que estás escribiendo. ¿Estás seguro de que deseas continuar?", - "confirmations.reply.title": "¿Sobreescribir publicación?", + "confirmations.reply.title": "¿Deseas sobreescribir la publicación?", "confirmations.unfollow.confirm": "Dejar de seguir", "confirmations.unfollow.message": "¿Estás seguro de que quieres dejar de seguir a {name}?", "confirmations.unfollow.title": "¿Dejar de seguir al usuario?", @@ -221,7 +221,7 @@ "domain_block_modal.they_can_interact_with_old_posts": "Las personas de este servidor pueden interactuar con tus publicaciones antiguas.", "domain_block_modal.they_cant_follow": "Nadie de este servidor puede seguirte.", "domain_block_modal.they_wont_know": "No sabrán que han sido bloqueados.", - "domain_block_modal.title": "¿Bloquear dominio?", + "domain_block_modal.title": "¿Deseas bloquear el dominio?", "domain_block_modal.you_will_lose_num_followers": "Vas a perder {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} y {followingCount, plural, one {{followingCountDisplay} persona a la que sigues} other {{followingCountDisplay} personas a las que sigas}}.", "domain_block_modal.you_will_lose_relationships": "Perderás todos los seguidores y las personas que sigues de este servidor.", "domain_block_modal.you_wont_see_posts": "No verás publicaciones ni notificaciones de usuarios en este servidor.", @@ -467,7 +467,7 @@ "mute_modal.show_options": "Mostrar opciones", "mute_modal.they_can_mention_and_follow": "Pueden mencionarte y seguirte, pero no verás nada de ellos.", "mute_modal.they_wont_know": "No sabrán que han sido silenciados.", - "mute_modal.title": "¿Silenciar usuario?", + "mute_modal.title": "¿Deseas silenciar el usuario?", "mute_modal.you_wont_see_mentions": "No verás publicaciones que los mencionen.", "mute_modal.you_wont_see_posts": "Todavía pueden ver tus publicaciones, pero tú no verás las de ellos.", "navigation_bar.about": "Acerca de", @@ -852,6 +852,11 @@ "upload_error.poll": "Subida de archivos no permitida con encuestas.", "upload_form.audio_description": "Describir para personas con problemas auditivos", "upload_form.description": "Describir para los usuarios con dificultad visual", + "upload_form.drag_and_drop.instructions": "Para recoger un archivo multimedia, pulsa la barra espaciadora o la tecla Enter. Mientras arrastras, utiliza las teclas de flecha para mover el archivo multimedia en cualquier dirección. Vuelve a pulsar la barra espaciadora o la tecla Enter para soltar el archivo multimedia en su nueva posición, o pulsa Escape para cancelar.", + "upload_form.drag_and_drop.on_drag_cancel": "Se canceló el arrastre. Se eliminó el archivo adjunto {item}.", + "upload_form.drag_and_drop.on_drag_end": "El archivo adjunto {item} ha sido eliminado.", + "upload_form.drag_and_drop.on_drag_over": "El archivo adjunto {item} se ha movido.", + "upload_form.drag_and_drop.on_drag_start": "Se ha recogido el archivo adjunto {item}.", "upload_form.edit": "Editar", "upload_form.thumbnail": "Cambiar miniatura", "upload_form.video_description": "Describir para personas con problemas auditivos o visuales", diff --git a/app/javascript/mastodon/locales/es.json b/app/javascript/mastodon/locales/es.json index 6e7ea9c9ec72d8..b8414893382ace 100644 --- a/app/javascript/mastodon/locales/es.json +++ b/app/javascript/mastodon/locales/es.json @@ -852,6 +852,11 @@ "upload_error.poll": "No se permite la subida de archivos con encuestas.", "upload_form.audio_description": "Describir para personas con problemas auditivos", "upload_form.description": "Describir para personas con discapacidad visual", + "upload_form.drag_and_drop.instructions": "Para recoger un archivo multimedia, pulsa la barra espaciadora o la tecla Enter. Mientras arrastras, utiliza las teclas de flecha para mover el archivo multimedia en cualquier dirección. Vuelve a pulsar la barra espaciadora o la tecla Enter para soltar el archivo multimedia en su nueva posición, o pulsa Escape para cancelar.", + "upload_form.drag_and_drop.on_drag_cancel": "Se canceló el arrastre. Se eliminó el archivo adjunto {item}.", + "upload_form.drag_and_drop.on_drag_end": "El archivo adjunto {item} ha sido eliminado.", + "upload_form.drag_and_drop.on_drag_over": "El archivo adjunto {item} se ha movido.", + "upload_form.drag_and_drop.on_drag_start": "Se ha recogido el archivo adjunto {item}.", "upload_form.edit": "Editar", "upload_form.thumbnail": "Cambiar miniatura", "upload_form.video_description": "Describir para personas con problemas auditivos o visuales", diff --git a/app/javascript/mastodon/locales/fi.json b/app/javascript/mastodon/locales/fi.json index 0a37a96abbcb9d..2e4cd661d5049c 100644 --- a/app/javascript/mastodon/locales/fi.json +++ b/app/javascript/mastodon/locales/fi.json @@ -797,7 +797,7 @@ "status.history.edited": "{name} muokkasi {date}", "status.load_more": "Lataa lisää", "status.media.open": "Avaa napsauttamalla", - "status.media.show": "Napsauta näyttääksesi", + "status.media.show": "Näytä napsauttamalla", "status.media_hidden": "Media piilotettu", "status.mention": "Mainitse @{name}", "status.more": "Enemmän", @@ -852,6 +852,11 @@ "upload_error.poll": "Tiedostojen lisääminen äänestysten oheen ei ole sallittua.", "upload_form.audio_description": "Kuvaile sisältöä kuuroille ja kuulorajoitteisille", "upload_form.description": "Kuvaile sisältöä sokeille ja näkörajoitteisille", + "upload_form.drag_and_drop.instructions": "Valitse medialiite painamalla välilyöntiä tai enteriä. Vetäessäsi käytä nuolinäppäimiä siirtääksesi medialiitettä vastaavaan suuntaan. Paina välilyöntiä tai enteriä uudelleen pudottaaksesi medialiitteen uuteen kohtaansa, tai peru siirto painamalla escape-näppäintä.", + "upload_form.drag_and_drop.on_drag_cancel": "Veto peruttiin. Medialiitettä {item} ei siirretty.", + "upload_form.drag_and_drop.on_drag_end": "Medialiite {item} pudotettiin.", + "upload_form.drag_and_drop.on_drag_over": "Medialiitettä {item} siirrettiin.", + "upload_form.drag_and_drop.on_drag_start": "Valittiin medialiite {item}.", "upload_form.edit": "Muokkaa", "upload_form.thumbnail": "Vaihda pienoiskuva", "upload_form.video_description": "Kuvaile sisältöä kuuroille, kuulorajoitteisille, sokeille tai näkörajoitteisille", diff --git a/app/javascript/mastodon/locales/fil.json b/app/javascript/mastodon/locales/fil.json index 952bc60882389c..40292c269126e9 100644 --- a/app/javascript/mastodon/locales/fil.json +++ b/app/javascript/mastodon/locales/fil.json @@ -3,9 +3,15 @@ "about.contact": "Kontak:", "about.disclaimer": "Ang Mastodon ay software na malaya at bukas-na-pinagmulan, at isang tatak-pangkalakal ng Mastodon gGmbH.", "about.domain_blocks.no_reason_available": "Hindi makuha ang dahilan", + "about.domain_blocks.preamble": "Sa kadalasan, hinahayaan ka ng Mastodon na makita ang mga content sa, at makipag-interact sa users ng, ibang servers sa fediverse. Narito ang exceptions na ginawa sa partikular na server na ito.", + "about.domain_blocks.silenced.explanation": "Sa kadalasan, hindi mo makikita ang profiles at content mula sa server na ito, maliban na lang kung sasadyain mo silang hanapin o piliing magawa ito sa pamamagitan ng mga sumusunod.", "about.domain_blocks.silenced.title": "Limitado", + "about.domain_blocks.suspended.explanation": "Walang data mula sa server na ito ang mapoproseso, maiimbak o maipagpapaplitan. Sa gayon. imposibleng magawa ang interaksiyon o komunikasyon sa ibang users sa server na ito.", "about.domain_blocks.suspended.title": "Suspendido", + "about.not_available": "Hindi available ang impormasyong ito.", + "about.powered_by": "Decentralisadong social media na pinapagana ng {mastodon}", "about.rules": "Mga alituntunin ng server", + "account.account_note_header": "Note na personal", "account.add_or_remove_from_list": "I-dagdag o tanggalin mula sa mga listahan", "account.badges.bot": "Pakusa", "account.badges.group": "Pangkat", @@ -216,7 +222,7 @@ "link_preview.author": "Ni/ng {name}", "lists.account.add": "Idagdag sa talaan", "lists.account.remove": "Tanggalin mula sa talaan", - "lists.delete": "Burahin ang talaan", + "lists.delete": "Burahin ang listahan", "lists.new.create": "Idagdag sa talaan", "lists.new.title_placeholder": "Bagong pangalan ng talaan", "lists.replies_policy.title": "Ipakita ang mga tugon sa:", diff --git a/app/javascript/mastodon/locales/fo.json b/app/javascript/mastodon/locales/fo.json index 70908c62dc9288..c7e752d3783823 100644 --- a/app/javascript/mastodon/locales/fo.json +++ b/app/javascript/mastodon/locales/fo.json @@ -852,6 +852,11 @@ "upload_error.poll": "Ikki loyvt at leggja fílur upp í spurnarkanningum.", "upload_form.audio_description": "Lýs fyri teimum, sum eru deyv ella hava ringa hoyrn", "upload_form.description": "Lýs fyri teimum, sum eru blind ella eru sjónveik", + "upload_form.drag_and_drop.instructions": "Fyri at heinta eitt miðlaviðfesti, trýst á millumrúm ella returknapp. Meðan tú dregur, brúka pílarnar fyri at flyta miðaviðfesti í einhvønn rætning. Trýst á millumrúm ella returknapp aftur fyri at sleppa miðlaviðfestinum í nýggja staðnum ella trýst á esc-knappin fyri at angra.", + "upload_form.drag_and_drop.on_drag_cancel": "Draging varð steðgað. Miðlaviðfestið {item} varð slept.", + "upload_form.drag_and_drop.on_drag_end": "Miðlaviðfestið {item} var slept.", + "upload_form.drag_and_drop.on_drag_over": "Miðlaviðfestið {item} var flutt.", + "upload_form.drag_and_drop.on_drag_start": "Heintaði miðlaviðfestið {item}.", "upload_form.edit": "Rætta", "upload_form.thumbnail": "Broyt smámynd", "upload_form.video_description": "Lýs fyri teimum, sum eru deyv, hava ringa hoyrn, eru blind ella eru sjónveik", diff --git a/app/javascript/mastodon/locales/fr-CA.json b/app/javascript/mastodon/locales/fr-CA.json index a92cd50c67a24b..bdceb9bd30d036 100644 --- a/app/javascript/mastodon/locales/fr-CA.json +++ b/app/javascript/mastodon/locales/fr-CA.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Débit limité", "alert.unexpected.message": "Une erreur inattendue s’est produite.", "alert.unexpected.title": "Oups!", + "alt_text_badge.title": "Texte Alt", "announcement.announcement": "Annonce", "attachments_list.unprocessed": "(non traité)", "audio.hide": "Masquer l'audio", @@ -221,6 +222,8 @@ "domain_block_modal.they_cant_follow": "Personne de ce serveur ne peut vous suivre.", "domain_block_modal.they_wont_know": "Il ne saura pas qu'il a été bloqué.", "domain_block_modal.title": "Bloquer le domaine ?", + "domain_block_modal.you_will_lose_num_followers": "Vous allez perdre {followersCount, plural, one {{followersCountDisplay} abonné·e} other {{followersCountDisplay} abonné·e·s}} et {followingCount, plural, one {{followingCountDisplay} personne que vous suivez} other {{followingCountDisplay} personnes que vous suivez}}.", + "domain_block_modal.you_will_lose_relationships": "Vous allez perdre tous les abonné·e·s et les personnes que vous suivez sur ce serveur.", "domain_block_modal.you_wont_see_posts": "Vous ne verrez plus les publications ou les notifications des utilisateurs de ce serveur.", "domain_pill.activitypub_lets_connect": "Cela vous permet de vous connecter et d'interagir avec les autres non seulement sur Mastodon, mais également sur d'autres applications de réseaux sociaux.", "domain_pill.activitypub_like_language": "ActivityPub est comme une langue que Mastodon utilise pour communiquer avec les autres réseaux sociaux.", @@ -433,6 +436,8 @@ "lightbox.close": "Fermer", "lightbox.next": "Suivant", "lightbox.previous": "Précédent", + "lightbox.zoom_in": "Zoomer sur la taille réelle", + "lightbox.zoom_out": "Zoomer pour adapter", "limited_account_hint.action": "Afficher le profil quand même", "limited_account_hint.title": "Ce profil a été masqué par la modération de {domain}.", "link_preview.author": "Par {name}", diff --git a/app/javascript/mastodon/locales/fr.json b/app/javascript/mastodon/locales/fr.json index a2bf4d5363fb30..2acad020935f04 100644 --- a/app/javascript/mastodon/locales/fr.json +++ b/app/javascript/mastodon/locales/fr.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Nombre de requêtes limité", "alert.unexpected.message": "Une erreur inattendue s’est produite.", "alert.unexpected.title": "Oups !", + "alt_text_badge.title": "Texte Alt", "announcement.announcement": "Annonce", "attachments_list.unprocessed": "(non traité)", "audio.hide": "Masquer l'audio", @@ -221,6 +222,8 @@ "domain_block_modal.they_cant_follow": "Personne de ce serveur ne peut vous suivre.", "domain_block_modal.they_wont_know": "Il ne saura pas qu'il a été bloqué.", "domain_block_modal.title": "Bloquer le domaine ?", + "domain_block_modal.you_will_lose_num_followers": "Vous allez perdre {followersCount, plural, one {{followersCountDisplay} abonné·e} other {{followersCountDisplay} abonné·e·s}} et {followingCount, plural, one {{followingCountDisplay} personne que vous suivez} other {{followingCountDisplay} personnes que vous suivez}}.", + "domain_block_modal.you_will_lose_relationships": "Vous allez perdre tous les abonné·e·s et les personnes que vous suivez sur ce serveur.", "domain_block_modal.you_wont_see_posts": "Vous ne verrez plus les publications ou les notifications des utilisateurs de ce serveur.", "domain_pill.activitypub_lets_connect": "Cela vous permet de vous connecter et d'interagir avec les autres non seulement sur Mastodon, mais également sur d'autres applications de réseaux sociaux.", "domain_pill.activitypub_like_language": "ActivityPub est comme une langue que Mastodon utilise pour communiquer avec les autres réseaux sociaux.", @@ -433,6 +436,8 @@ "lightbox.close": "Fermer", "lightbox.next": "Suivant", "lightbox.previous": "Précédent", + "lightbox.zoom_in": "Zoomer sur la taille réelle", + "lightbox.zoom_out": "Zoomer pour adapter", "limited_account_hint.action": "Afficher le profil quand même", "limited_account_hint.title": "Ce profil a été masqué par la modération de {domain}.", "link_preview.author": "Par {name}", diff --git a/app/javascript/mastodon/locales/ga.json b/app/javascript/mastodon/locales/ga.json index 6d64c6f712eea5..84c76478d1b6c6 100644 --- a/app/javascript/mastodon/locales/ga.json +++ b/app/javascript/mastodon/locales/ga.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Rátatheoranta", "alert.unexpected.message": "Tharla earráid gan choinne.", "alert.unexpected.title": "Hiúps!", + "alt_text_badge.title": "Téacs alt", "announcement.announcement": "Fógra", "attachments_list.unprocessed": "(neamhphróiseáilte)", "audio.hide": "Cuir fuaim i bhfolach", @@ -222,6 +223,7 @@ "domain_block_modal.they_wont_know": "Ní bheidh a fhios acu go bhfuil bac orthu.", "domain_block_modal.title": "Blocáil fearann?", "domain_block_modal.you_will_lose_num_followers": "Caillfidh tú {followersCount, plural, one {{followersCountDisplay} leantóir} two {{followersCountDisplay} leantóirí} few {{followersCountDisplay} leantóirí} many {{followersCountDisplay} leantóirí} other {{followersCountDisplay} leantóirí}} agus {followingCount, plural, one {{followingCountDisplay} duine atá á leanúint agat} two {{followingCountDisplay} daoine atá á leanúint agat} few {{followingCountDisplay} daoine atá á leanúint agat} many {{followingCountDisplay} daoine atá á leanúint agat} other {{followingCountDisplay} daoine atá á leanúint agat}}.", + "domain_block_modal.you_will_lose_relationships": "Caillfidh tú gach leantóir agus duine a leanann tú ón bhfreastalaí seo.", "domain_block_modal.you_wont_see_posts": "Ní fheicfidh tú postálacha nó fógraí ó úsáideoirí ar an bhfreastalaí seo.", "domain_pill.activitypub_lets_connect": "Ligeann sé duit ceangal agus idirghníomhú le daoine, ní hamháin ar Mastodon, ach thar aipeanna sóisialta éagsúla freisin.", "domain_pill.activitypub_like_language": "Tá GníomhaíochtPub cosúil leis an teanga a labhraíonn Mastodon le líonraí sóisialta eile.", @@ -850,6 +852,11 @@ "upload_error.poll": "Ní cheadaítear uaslódáil comhad le pobalbhreith.", "upload_form.audio_description": "Déan cur síos ar dhaoine bodhra nó lagéisteachta", "upload_form.description": "Describe for the visually impaired", + "upload_form.drag_and_drop.instructions": "Chun ceangaltán meán a phiocadh suas, brúigh spás nó cuir isteach. Agus tú ag tarraingt, bain úsáid as na heochracha saigheada chun an ceangaltán meán a bhogadh i dtreo ar bith. Brúigh spás nó cuir isteach arís chun an ceangaltán meán a scaoileadh ina phost nua, nó brúigh éalú chun cealú.", + "upload_form.drag_and_drop.on_drag_cancel": "Cuireadh an tarraingt ar ceal. Scaoileadh ceangaltán meán {item}.", + "upload_form.drag_and_drop.on_drag_end": "Scaoileadh ceangaltán meán {item}.", + "upload_form.drag_and_drop.on_drag_over": "Bogadh ceangaltán meán {item}.", + "upload_form.drag_and_drop.on_drag_start": "Roghnaíodh ceangaltán meán {item}.", "upload_form.edit": "Cuir in eagar", "upload_form.thumbnail": "Athraigh mionsamhail", "upload_form.video_description": "Déan cur síos ar dhaoine atá bodhar, lagéisteachta, dall nó lagamhairc", diff --git a/app/javascript/mastodon/locales/gl.json b/app/javascript/mastodon/locales/gl.json index c2b645ed0f2deb..3bc9e1ee590dfd 100644 --- a/app/javascript/mastodon/locales/gl.json +++ b/app/javascript/mastodon/locales/gl.json @@ -852,6 +852,11 @@ "upload_error.poll": "Non se poden subir ficheiros nas enquisas.", "upload_form.audio_description": "Describir para persoas con problemas auditivos", "upload_form.description": "Describir para persoas cegas ou con problemas visuais", + "upload_form.drag_and_drop.instructions": "Preme en Espazo ou Enter para escoller un anexo multimedia. Ao arrastrar usa as teclas de frecha para mover o anexo en todas direccións.Preme Espazo ou Enter outra vez para soltalo na súa nova posición, ou preme Escape para desbotar.", + "upload_form.drag_and_drop.on_drag_cancel": "Cancelouse o movemento. O anexo {item} soltouse.", + "upload_form.drag_and_drop.on_drag_end": "Soltouse o anexo multimedia {item}.", + "upload_form.drag_and_drop.on_drag_over": "Moveuse o anexo multimedia {item}.", + "upload_form.drag_and_drop.on_drag_start": "Escolleuse o anexo multimedia {item}.", "upload_form.edit": "Editar", "upload_form.thumbnail": "Cambiar a miniatura", "upload_form.video_description": "Describe para persoas con problemas visuais ou auditivos", diff --git a/app/javascript/mastodon/locales/io.json b/app/javascript/mastodon/locales/io.json index b47590a64c7ae6..bfc248a845e79e 100644 --- a/app/javascript/mastodon/locales/io.json +++ b/app/javascript/mastodon/locales/io.json @@ -99,7 +99,7 @@ "block_modal.you_wont_see_mentions": "Vu ne vidos mesaji qua mencionas oli.", "boost_modal.combo": "Vu povas pulsar {combo} por omisar co venontafoye", "boost_modal.reblog": "Ka repetar posto?", - "boost_modal.undo_reblog": "Ka retrorepetar posto?", + "boost_modal.undo_reblog": "Ka desrepetar posto?", "bundle_column_error.copy_stacktrace": "Kopierorraporto", "bundle_column_error.error.body": "La demandita pagino ne povas strukturigesar. Forsan ol esas eroro en kodexo hike o vidilkoncilieblesproblemo.", "bundle_column_error.error.title": "Ach!", @@ -194,7 +194,7 @@ "confirmations.reply.title": "Ka remplasar posto?", "confirmations.unfollow.confirm": "Desequez", "confirmations.unfollow.message": "Ka vu certe volas desequar {name}?", - "confirmations.unfollow.title": "Ka retrosequar uzanto?", + "confirmations.unfollow.title": "Ka dessequar uzanto?", "content_warning.hide": "Celez posto", "content_warning.show": "Montrez nur", "conversation.delete": "Efacez konverso", @@ -463,7 +463,7 @@ "moved_to_account_banner.text": "Vua konto {disabledAccount} es nune desaktiva pro ke vu movis a {movedToAccount}.", "mute_modal.hide_from_notifications": "Celez de savigi", "mute_modal.hide_options": "Celez preferaji", - "mute_modal.indefinite": "Til me retrosilencigas lu", + "mute_modal.indefinite": "Til me dessilencigas lu", "mute_modal.show_options": "Montrez preferaji", "mute_modal.they_can_mention_and_follow": "Lu povas mencionar e sequar vu, ma vu ne vidos lu.", "mute_modal.they_wont_know": "Lu ne savos ke lu silencigesis.", @@ -852,6 +852,11 @@ "upload_error.poll": "Failadchargo ne permisesas kun votposti.", "upload_form.audio_description": "Deskriptez por personi kun audnekapableso", "upload_form.description": "Deskriptez por personi kun vidnekapableso", + "upload_form.drag_and_drop.instructions": "Por tenar mediatachajo, presez spaco o eniro. Presez spaco o eniro itere por destenar la mediatachajo en olua nova loko, o presez eskapo por anular.", + "upload_form.drag_and_drop.on_drag_cancel": "Tiro anulesis. Mediatachajo {item} destenesis.", + "upload_form.drag_and_drop.on_drag_end": "Mediatachajo {item} destenesis.", + "upload_form.drag_and_drop.on_drag_over": "Mediatachajo {item} movigesis.", + "upload_form.drag_and_drop.on_drag_start": "Tenis mediatachajo {item}.", "upload_form.edit": "Modifikez", "upload_form.thumbnail": "Chanjez imajeto", "upload_form.video_description": "Deskriptez por personi kun audnekapableso o vidnekapableso", diff --git a/app/javascript/mastodon/locales/kab.json b/app/javascript/mastodon/locales/kab.json index 89f68ab95fa2d0..9e2c9f3af8079a 100644 --- a/app/javascript/mastodon/locales/kab.json +++ b/app/javascript/mastodon/locales/kab.json @@ -73,6 +73,7 @@ "alert.rate_limited.title": "Aktum s talast", "alert.unexpected.message": "Yeḍra-d unezri ur netturaǧu ara.", "alert.unexpected.title": "Ayhuh!", + "alt_text_badge.title": "Aḍris asegzan", "announcement.announcement": "Ulɣu", "audio.hide": "Ffer amesli", "block_modal.show_less": "Ssken-d drus", diff --git a/app/javascript/mastodon/locales/ko.json b/app/javascript/mastodon/locales/ko.json index 87ea3cfabf8628..2054dfc0ff7ff1 100644 --- a/app/javascript/mastodon/locales/ko.json +++ b/app/javascript/mastodon/locales/ko.json @@ -31,7 +31,7 @@ "account.featured_tags.last_status_never": "게시물 없음", "account.featured_tags.title": "{name} 님의 추천 해시태그", "account.follow": "팔로우", - "account.follow_back": "맞팔로우 하기", + "account.follow_back": "맞팔로우", "account.followers": "팔로워", "account.followers.empty": "아직 아무도 이 사용자를 팔로우하고 있지 않습니다.", "account.followers_counter": "{count, plural, other {팔로워 {counter}명}}", @@ -85,6 +85,7 @@ "alert.rate_limited.title": "빈도 제한됨", "alert.unexpected.message": "예상하지 못한 에러가 발생했습니다.", "alert.unexpected.title": "앗!", + "alt_text_badge.title": "대체 문구", "announcement.announcement": "공지사항", "attachments_list.unprocessed": "(처리 안 됨)", "audio.hide": "소리 숨기기", @@ -221,6 +222,8 @@ "domain_block_modal.they_cant_follow": "이 서버의 누구도 나를 팔로우 할 수 없습니다.", "domain_block_modal.they_wont_know": "내가 차단했다는 사실을 모를 것입니다.", "domain_block_modal.title": "도메인을 차단할까요?", + "domain_block_modal.you_will_lose_num_followers": "{followersCount, plural, other {{followersCountDisplay} 명의 팔로워}}와 {followingCount, plural, other {{followingCountDisplay} 명의 팔로우}}를 잃게 됩니다.", + "domain_block_modal.you_will_lose_relationships": "이 서버의 팔로워와 팔로우를 모두 잃게 됩니다.", "domain_block_modal.you_wont_see_posts": "이 서버 사용자의 게시물이나 알림을 보지 않게 됩니다.", "domain_pill.activitypub_lets_connect": "이것은 마스토돈 뿐만이 아니라 다른 소셜 앱들을 넘나들며 사람들을 연결하고 상호작용 할 수 있게 합니다.", "domain_pill.activitypub_like_language": "액티비티펍은 마스토돈이 다른 소셜 네트워크와 대화할 때 쓰는 언어 같은 것입니다.", @@ -849,6 +852,11 @@ "upload_error.poll": "파일 업로드는 설문과 함께 쓸 수 없습니다.", "upload_form.audio_description": "청각장애인이나 저청각자를 위한 설명", "upload_form.description": "시각장애인이나 저시력자를 위한 설명", + "upload_form.drag_and_drop.instructions": "미디어 첨부파일을 집으려면 스페이스나 엔터를 누르세요. 드래그 하는 동안 방향키를 이용해 원하는 방향으로 이동할 수 있습니다. 스페이스나 엔터를 다시 눌러 새 위치에 놓거나 ESC를 이용해 취소할 수 있습니다.", + "upload_form.drag_and_drop.on_drag_cancel": "드래그가 취소되었습니다. 미디어 첨부파일 {item}은 이동되지 않았습니다.", + "upload_form.drag_and_drop.on_drag_end": "미디어 첨부파일 {item}은 이동되지 않았습니다.", + "upload_form.drag_and_drop.on_drag_over": "미디어 첨부파일 {item}이 이동되었습니다.", + "upload_form.drag_and_drop.on_drag_start": "미디어 첨부파일 {item}을 집었습니다.", "upload_form.edit": "수정", "upload_form.thumbnail": "썸네일 변경", "upload_form.video_description": "청각장애인, 저청각자, 시각장애인, 저시력자를 위한 설명", diff --git a/app/javascript/mastodon/locales/lt.json b/app/javascript/mastodon/locales/lt.json index 0eb3dbf5b447fb..043dcfb05d7f0c 100644 --- a/app/javascript/mastodon/locales/lt.json +++ b/app/javascript/mastodon/locales/lt.json @@ -1,7 +1,7 @@ { "about.blocks": "Prižiūrimi serveriai", "about.contact": "Kontaktai:", - "about.disclaimer": "„Mastodon“ – tai nemokama atvirojo kodo programinė įranga ir „Mastodon“ gGmbH prekės ženklas.", + "about.disclaimer": "„Mastodon“ – tai nemokama atvirojo kodo programinė įranga ir „Mastodon gGmbH“ prekės ženklas.", "about.domain_blocks.no_reason_available": "Priežastis nepateikta", "about.domain_blocks.preamble": "„Mastodon“ paprastai leidžia peržiūrėti turinį ir bendrauti su naudotojais iš bet kurio kito fediverse esančio serverio. Šios yra išimtys, kurios buvo padarytos šiame konkrečiame serveryje.", "about.domain_blocks.silenced.explanation": "Paprastai nematysi profilių ir turinio iš šio serverio, nebent jį aiškiai ieškosi arba pasirinksi jį sekant.", @@ -840,6 +840,11 @@ "upload_error.poll": "Failų įkėlimas neleidžiamas su apklausomis.", "upload_form.audio_description": "Aprašyk žmonėms, kurie yra kurtieji ar neprigirdintys.", "upload_form.description": "Aprašyk žmonėms, kurie yra aklieji arba silpnaregiai.", + "upload_form.drag_and_drop.instructions": "Kad paimtum medijos priedą, paspausk tarpo arba įvedimo klavišą. Tempant naudok rodyklių klavišus, kad perkeltum medijos priedą bet kuria kryptimi. Dar kartą paspausk tarpo arba įvedimo klavišą, kad nuleistum medijos priedą naujoje vietoje, arba paspausk grįžimo klavišą, kad atšauktum.", + "upload_form.drag_and_drop.on_drag_cancel": "Nutempimas buvo atšauktas. Medijos priedas {item} buvo nuleistas.", + "upload_form.drag_and_drop.on_drag_end": "Medijos priedas {item} buvo nuleistas.", + "upload_form.drag_and_drop.on_drag_over": "Medijos priedas {item} buvo perkeltas.", + "upload_form.drag_and_drop.on_drag_start": "Paimtas medijos priedas {item}.", "upload_form.edit": "Redaguoti", "upload_form.thumbnail": "Keisti miniatiūrą", "upload_form.video_description": "Aprašyk žmonėms, kurie yra kurtieji, neprigirdintys, aklieji ar silpnaregiai.", diff --git a/app/javascript/mastodon/locales/nl.json b/app/javascript/mastodon/locales/nl.json index 282c345def6b24..1c31574deaffe4 100644 --- a/app/javascript/mastodon/locales/nl.json +++ b/app/javascript/mastodon/locales/nl.json @@ -852,6 +852,11 @@ "upload_error.poll": "Het uploaden van bestanden is bij peilingen niet toegestaan.", "upload_form.audio_description": "Omschrijf dit voor dove of slechthorende mensen", "upload_form.description": "Omschrijf dit voor blinde of slechtziende mensen", + "upload_form.drag_and_drop.instructions": "Druk op spatie of enter om een mediabijlage op te pakken. Gebruik de pijltjestoetsen om de bijlage in een bepaalde richting te verplaatsen. Druk opnieuw op de spatiebalk of enter om de mediabijlage op de nieuwe positie te plaatsen, of druk op escape om te annuleren.", + "upload_form.drag_and_drop.on_drag_cancel": "Slepen is geannuleerd. Mediabijlage {item} is niet verplaatst.", + "upload_form.drag_and_drop.on_drag_end": "Mediabijlage {item} is niet verplaatst.", + "upload_form.drag_and_drop.on_drag_over": "Mediabijlage {item} is verplaatst.", + "upload_form.drag_and_drop.on_drag_start": "Mediabijlage {item} is opgepakt.", "upload_form.edit": "Bewerken", "upload_form.thumbnail": "Miniatuurafbeelding wijzigen", "upload_form.video_description": "Omschrijf dit voor dove, slechthorende, blinde of slechtziende mensen", diff --git a/app/javascript/mastodon/locales/nn.json b/app/javascript/mastodon/locales/nn.json index 9524dfd5585e45..69883a54953084 100644 --- a/app/javascript/mastodon/locales/nn.json +++ b/app/javascript/mastodon/locales/nn.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Redusert kapasitet", "alert.unexpected.message": "Det oppstod eit uventa problem.", "alert.unexpected.title": "Oi sann!", + "alt_text_badge.title": "Alternativ tekst", "announcement.announcement": "Kunngjering", "attachments_list.unprocessed": "(ubehandla)", "audio.hide": "Gøym lyd", @@ -221,6 +222,8 @@ "domain_block_modal.they_cant_follow": "Ingen på denne tenaren kan fylgja deg.", "domain_block_modal.they_wont_know": "Dei veit ikkje at dei er blokkerte.", "domain_block_modal.title": "Blokker domenet?", + "domain_block_modal.you_will_lose_num_followers": "Du vil mista {followersCount, plural, one {{followersCountDisplay} fylgjar} other {{followersCountDisplay} fylgjarar}} og {followingCount, plural, one {{followingCountDisplay} person du fylgjer} other {{followingCountDisplay} folk du fylgjer}}.", + "domain_block_modal.you_will_lose_relationships": "Du vil mista alle fylgjarar og folk du fylgjer på denne tenaren.", "domain_block_modal.you_wont_see_posts": "Du vil ikkje sjå innlegg eller varslingar frå brukarar på denne tenaren.", "domain_pill.activitypub_lets_connect": "Den lar deg kople til og samhandle med folk ikkje berre på Mastodon, men òg på tvers av forskjellige sosiale appar.", "domain_pill.activitypub_like_language": "ActivityPub er som språket Mastodon snakkar med andre sosiale nettverk.", @@ -849,6 +852,11 @@ "upload_error.poll": "Filopplasting er ikkje lov for rundspørjingar.", "upload_form.audio_description": "Skildre for dei med nedsett høyrsel", "upload_form.description": "Skildre for blinde og svaksynte", + "upload_form.drag_and_drop.instructions": "For å plukka opp eit medievedlegg, trykkjer du på mellomrom eller enter. Når du dreg, brukar du piltastane for å flytta vedlegget i den retninga du vil. Deretter trykkjer du mellomrom eller enter att for å sleppa vedlegget på den nye plassen, eller trykk escape for å avbryta.", + "upload_form.drag_and_drop.on_drag_cancel": "Du avbraut draginga. Medievedlegget {item} vart sleppt.", + "upload_form.drag_and_drop.on_drag_end": "Medeivedlegget {item} vart sleppt.", + "upload_form.drag_and_drop.on_drag_over": "Medievedlegget {item} vart flytta.", + "upload_form.drag_and_drop.on_drag_start": "Plukka opp medievedlegget {item}.", "upload_form.edit": "Rediger", "upload_form.thumbnail": "Bytt miniatyrbilete", "upload_form.video_description": "Skildre for dei med nedsett høyrsel eller redusert syn", diff --git a/app/javascript/mastodon/locales/pl.json b/app/javascript/mastodon/locales/pl.json index 8e9dd96baf67df..4dc74db8cbed73 100644 --- a/app/javascript/mastodon/locales/pl.json +++ b/app/javascript/mastodon/locales/pl.json @@ -852,6 +852,11 @@ "upload_error.poll": "Dołączanie plików nie dozwolone z głosowaniami.", "upload_form.audio_description": "Opisz dla osób niesłyszących i niedosłyszących", "upload_form.description": "Wprowadź opis dla niewidomych i niedowidzących", + "upload_form.drag_and_drop.instructions": "Naciśnij spację lub enter żeby podnieść załącznik. Podczas przeciągania, strzałki przesuwają załącznik. Naciśnięcie spacji lub entera upuści załącznik w nowym miejscu, a escape anuluje przesuwanie.", + "upload_form.drag_and_drop.on_drag_cancel": "Przesuwanie anulowane. Załącznik {item} upuszczony.", + "upload_form.drag_and_drop.on_drag_end": "Upuszczono załącznik {item}.", + "upload_form.drag_and_drop.on_drag_over": "Przesunięto załącznik {item}.", + "upload_form.drag_and_drop.on_drag_start": "Podniesiono załącznik {item}.", "upload_form.edit": "Edytuj", "upload_form.thumbnail": "Zmień miniaturę", "upload_form.video_description": "Opisz dla osób niesłyszących, niedosłyszących, niewidomych i niedowidzących", diff --git a/app/javascript/mastodon/locales/th.json b/app/javascript/mastodon/locales/th.json index 68b64ca54863c3..160b6ec4e69be0 100644 --- a/app/javascript/mastodon/locales/th.json +++ b/app/javascript/mastodon/locales/th.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "มีการจำกัดอัตรา", "alert.unexpected.message": "เกิดข้อผิดพลาดที่ไม่คาดคิด", "alert.unexpected.title": "อุปส์!", + "alt_text_badge.title": "ข้อความแสดงแทน", "announcement.announcement": "ประกาศ", "attachments_list.unprocessed": "(ยังไม่ได้ประมวลผล)", "audio.hide": "ซ่อนเสียง", diff --git a/app/javascript/mastodon/locales/vi.json b/app/javascript/mastodon/locales/vi.json index 12d9bd43540b31..770dcbaef55bde 100644 --- a/app/javascript/mastodon/locales/vi.json +++ b/app/javascript/mastodon/locales/vi.json @@ -85,6 +85,7 @@ "alert.rate_limited.title": "Vượt giới hạn", "alert.unexpected.message": "Đã xảy ra lỗi không mong muốn.", "alert.unexpected.title": "Ốiii!", + "alt_text_badge.title": "Văn bản thay thế", "announcement.announcement": "Có gì mới?", "attachments_list.unprocessed": "(chưa xử lí)", "audio.hide": "Ẩn âm thanh", @@ -463,7 +464,7 @@ "mute_modal.hide_from_notifications": "Ẩn thông báo", "mute_modal.hide_options": "Tùy chọn ẩn", "mute_modal.indefinite": "Cho tới khi bỏ ẩn", - "mute_modal.show_options": "Hiển thị tùy chọn", + "mute_modal.show_options": "Thêm tùy chọn", "mute_modal.they_can_mention_and_follow": "Họ có thể nhắc đến và theo dõi bạn, nhưng bạn không thấy họ.", "mute_modal.they_wont_know": "Họ sẽ không biết đã bị bạn ẩn.", "mute_modal.title": "Ẩn người này?", @@ -752,7 +753,7 @@ "search_popout.language_code": "mã ngôn ngữ ISO", "search_popout.options": "Tìm nâng cao", "search_popout.quick_actions": "Thao tác nhanh", - "search_popout.recent": "Bạn đã tìm", + "search_popout.recent": "Lượt tìm gần đây", "search_popout.specific_date": "ngày cụ thể", "search_popout.user": "địa chỉ Mastodon", "search_results.accounts": "Mọi người", @@ -779,7 +780,7 @@ "status.bookmark": "Lưu", "status.cancel_reblog_private": "Hủy đăng lại", "status.cannot_reblog": "Không thể đăng lại tút này", - "status.continued_thread": "Tiếp tục trong chủ đề", + "status.continued_thread": "Tiếp tục chủ đề", "status.copy": "Sao chép URL", "status.delete": "Xóa", "status.detailed_status": "Xem chi tiết thêm", @@ -813,7 +814,7 @@ "status.reblogs.empty": "Tút này chưa có ai đăng lại. Nếu có, nó sẽ hiển thị ở đây.", "status.redraft": "Xóa và viết lại", "status.remove_bookmark": "Bỏ lưu", - "status.replied_in_thread": "Trả lời trong chủ đề", + "status.replied_in_thread": "Trả lời thảo luận", "status.replied_to": "Trả lời {name}", "status.reply": "Trả lời", "status.replyAll": "Trả lời", @@ -851,6 +852,11 @@ "upload_error.poll": "Không cho phép đính kèm tập tin.", "upload_form.audio_description": "Mô tả cho người mất thính giác", "upload_form.description": "Mô tả cho người khiếm thị", + "upload_form.drag_and_drop.instructions": "Để chọn tập tin đính kèm, hãy nhấn phím cách hoặc phím Enter. Trong khi kéo, sử dụng các phím mũi tên để di chuyển tập tin đính kèm theo bất kỳ hướng nào. Nhấn phím cách hoặc phím Enter một lần nữa để thả tập tin đính kèm vào vị trí mới hoặc nhấn phím thoát để hủy.", + "upload_form.drag_and_drop.on_drag_cancel": "Kéo thả đã bị hủy bỏ. Tập tin đính kèm {item} bị bỏ qua.", + "upload_form.drag_and_drop.on_drag_end": "Tập tin đính kèm {item} bị bỏ qua.", + "upload_form.drag_and_drop.on_drag_over": "Tập tin đính kèm {item} đã bị dời.", + "upload_form.drag_and_drop.on_drag_start": "Đã chọn tập tin đính kèm {item}.", "upload_form.edit": "Biên tập", "upload_form.thumbnail": "Đổi ảnh thumbnail", "upload_form.video_description": "Mô tả cho người mất thị lực hoặc không thể nghe", diff --git a/app/javascript/mastodon/locales/zh-CN.json b/app/javascript/mastodon/locales/zh-CN.json index 8ce888a0396290..0a4505d4ee5482 100644 --- a/app/javascript/mastodon/locales/zh-CN.json +++ b/app/javascript/mastodon/locales/zh-CN.json @@ -852,6 +852,11 @@ "upload_error.poll": "投票中不允许上传文件。", "upload_form.audio_description": "为听障人士添加文字描述", "upload_form.description": "为视觉障碍人士添加文字说明", + "upload_form.drag_and_drop.instructions": "要选中某个媒体附件,请按空格键或回车键。在拖拽时,使用方向键将媒体附件移动到任何给定方向。再次按空格键或回车键可将媒体附件放置在新位置,或按 Esc 键取消。", + "upload_form.drag_and_drop.on_drag_cancel": "拖拽已终止。媒体附件 {item} 已被丢弃。", + "upload_form.drag_and_drop.on_drag_end": "媒体附件 {item} 已被丢弃。", + "upload_form.drag_and_drop.on_drag_over": "媒体附件 {item} 已被移动。", + "upload_form.drag_and_drop.on_drag_start": "已选中媒体附件 {item}。", "upload_form.edit": "编辑", "upload_form.thumbnail": "更改缩略图", "upload_form.video_description": "为听障人士和视障人士添加文字描述", diff --git a/app/javascript/mastodon/locales/zh-TW.json b/app/javascript/mastodon/locales/zh-TW.json index 530202f0a5b0fe..2047a69f44b8af 100644 --- a/app/javascript/mastodon/locales/zh-TW.json +++ b/app/javascript/mastodon/locales/zh-TW.json @@ -852,6 +852,11 @@ "upload_error.poll": "不允許於投票時上傳檔案。", "upload_form.audio_description": "為聽障人士增加文字說明", "upload_form.description": "為視障人士增加文字說明", + "upload_form.drag_and_drop.instructions": "請按空白鍵或 Enter 鍵取多媒體附加檔案。使用方向鍵移動多媒體附加檔案。按下空白鍵或 Enter 鍵於新位置放置多媒體附加檔案,或按下 ESC 鍵取消。", + "upload_form.drag_and_drop.on_drag_cancel": "移動已取消。多媒體附加檔案 {item} 已被放置。", + "upload_form.drag_and_drop.on_drag_end": "多媒體附加檔案 {item} 已被放置。", + "upload_form.drag_and_drop.on_drag_over": "多媒體附加檔案 {item} 已被移動。", + "upload_form.drag_and_drop.on_drag_start": "多媒體附加檔案 {item} 已被選取。", "upload_form.edit": "編輯", "upload_form.thumbnail": "更改預覽圖", "upload_form.video_description": "為聽障或視障人士增加文字說明", diff --git a/config/locales/activerecord.bg.yml b/config/locales/activerecord.bg.yml index 1e19d1effba69f..221be3f680e01a 100644 --- a/config/locales/activerecord.bg.yml +++ b/config/locales/activerecord.bg.yml @@ -15,6 +15,12 @@ bg: user/invite_request: text: Причина errors: + attributes: + domain: + invalid: не е действително име на домейн + messages: + invalid_domain_on_line: "%{value} не е действително име на домейн" + too_many_lines: е над ограничение от %{limit} реда models: account: attributes: diff --git a/config/locales/de.yml b/config/locales/de.yml index b98a96a1cd37ac..c82e65282ffe3e 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -877,7 +877,7 @@ de: message_html: Kein Sidekiq-Prozess läuft für die %{value} Warteschlange(n). Bitte überprüfe deine Sidekiq-Konfiguration software_version_check: action: Verfügbare Updates ansehen - message_html: Ein Update für Mastodon ist verfügbar. + message_html: Ein Mastodon-Update ist verfügbar. software_version_critical_check: action: Verfügbare Updates ansehen message_html: Ein kritisches Mastodon-Update ist verfügbar – bitte aktualisiere so schnell wie möglich. @@ -1425,7 +1425,7 @@ de: max_uses: one: Eine Verwendung other: "%{count} Verwendungen" - max_uses_prompt: Keine Einschränkung + max_uses_prompt: Unbegrenzt prompt: Erstelle Einladungen und teile die dazugehörigen Links, um anderen einen Zugang zu diesem Server zu gewähren table: expires_at: Läuft ab @@ -1903,7 +1903,7 @@ de: feature_action: Mehr erfahren feature_audience: Mastodon bietet dir eine einzigartige Möglichkeit, deine Reichweite ohne Mittelsperson zu verwalten. Auf deiner eigenen Infrastruktur bereitgestellt, ermöglicht Mastodon es dir, jedem anderen Mastodon-Server zu folgen und von jedem anderen Server aus gefolgt zu werden. Ebenso steht Mastodon unter deiner Kontrolle. feature_audience_title: Baue deine Reichweite mit Vertrauen auf - feature_control: Du weißt am besten, was du auf deiner Startseite sehen möchtest. Keine Algorithmen oder Werbung, die deine Zeit verschwenden. Folge Nutzer*innen von jedem Mastodon-Server von einem einzelnen Konto aus und empfange deren Beiträge in chronologischer Reihenfolge. Mache Mastodon zu deinem ganz persönlichen Fleckchen im Internet. + feature_control: Du weißt am besten, was du auf deiner Startseite sehen möchtest. Keine Algorithmen oder Werbung, die deine Zeit verschwenden. Folge Nutzer*innen auf allen Mastodon-Servern von einem einzelnen Konto aus und empfange deren Beiträge in chronologischer Reihenfolge. Mache Mastodon zu deinem ganz persönlichen Fleckchen im Internet. feature_control_title: Behalte die Kontrolle über deine eigene Timeline feature_creativity: Mastodon unterstützt Audio-, Video- und Bildbeiträge, Beschreibungen, Umfragen, Inhaltswarnungen, animierte Avatare, benutzerdefinierte Emojis, das Zuschneiden von Vorschaubildern und vieles mehr, um dir zu helfen, dich online zu entfalten. Egal, ob du deine Kunst, deine Musik oder deinen Podcast veröffentlichst – Mastodon ist für dich da. feature_creativity_title: Einzigartige Kreativität diff --git a/config/locales/devise.eo.yml b/config/locales/devise.eo.yml index f0322a60a8e9f4..9d946967e9cba9 100644 --- a/config/locales/devise.eo.yml +++ b/config/locales/devise.eo.yml @@ -72,9 +72,11 @@ eo: subject: 'Mastodon: sekureca ŝlosilo forigita' title: Unu el viaj sekurecaj ŝlosiloj estis forigita webauthn_disabled: + explanation: Aŭtentigo per sekurecaj ŝlosiloj estas malŝaltita por via konto. subject: 'Mastodon: sekureca-ŝlosila aŭtentigo malebligita' title: Sekurecaj ŝlosiloj malaktivigitaj webauthn_enabled: + extra: Via sekureca ŝlosilo nun povas esti uzata por ensaluto. subject: 'Mastodon: sekureca-ŝlosila aŭtentigo ebligita' title: Sekurecaj ŝlosiloj aktivigitaj omniauth_callbacks: diff --git a/config/locales/doorkeeper.bg.yml b/config/locales/doorkeeper.bg.yml index 25dce0ea0895fa..c3977e58441e22 100644 --- a/config/locales/doorkeeper.bg.yml +++ b/config/locales/doorkeeper.bg.yml @@ -60,6 +60,7 @@ bg: error: title: Възникна грешка new: + prompt_html: "%{client_name} желае да има достъп до акаунта ви. Одобрявайте само тази заявка, ако я разпознавате и ако имате доворерие на източника." review_permissions: Преглед на разрешенията title: Изисква се упълномощаване show: diff --git a/config/locales/doorkeeper.es-AR.yml b/config/locales/doorkeeper.es-AR.yml index 804e4a51ed88d1..a6e1a46b80718c 100644 --- a/config/locales/doorkeeper.es-AR.yml +++ b/config/locales/doorkeeper.es-AR.yml @@ -60,7 +60,7 @@ es-AR: error: title: Ocurrió un error new: - prompt_html: A %{client_name} le gustaría obtener permiso para acceder a tu cuenta. Solo aprueba esta solicitud si reconoces y confías en esta fuente. + prompt_html: A %{client_name} le gustaría obtener permiso para acceder a tu cuenta. Aprobá esta solicitud solo si reconocés y confiás en esta fuente. review_permissions: Revisar permisos title: Autorización requerida show: diff --git a/config/locales/doorkeeper.es-MX.yml b/config/locales/doorkeeper.es-MX.yml index c095777954decc..e119d71f4e7028 100644 --- a/config/locales/doorkeeper.es-MX.yml +++ b/config/locales/doorkeeper.es-MX.yml @@ -60,7 +60,7 @@ es-MX: error: title: Ha ocurrido un error new: - prompt_html: A %{client_name} le gustaría obtener permiso para acceder a tu cuenta. Solo aprueba esta solicitud si reconoces y confías en esta fuente. + prompt_html: A %{client_name} le gustaría obtener permiso para acceder a tu cuenta. Aprueba esta solicitud solo si reconoces y confías en esta fuente. review_permissions: Revisar permisos title: Se requiere autorización show: diff --git a/config/locales/doorkeeper.es.yml b/config/locales/doorkeeper.es.yml index c26f11a7a1073b..d582460d3fe7a9 100644 --- a/config/locales/doorkeeper.es.yml +++ b/config/locales/doorkeeper.es.yml @@ -60,7 +60,7 @@ es: error: title: Ha ocurrido un error new: - prompt_html: A %{client_name} le gustaría obtener permiso para acceder a tu cuenta. Solo aprueba esta solicitud si reconoces y confías en esta fuente. + prompt_html: A %{client_name} le gustaría obtener permiso para acceder a tu cuenta. Aprueba esta solicitud solo si reconoces y confías en esta fuente. review_permissions: Revisar permisos title: Se requiere autorización show: diff --git a/config/locales/doorkeeper.fr-CA.yml b/config/locales/doorkeeper.fr-CA.yml index f3dad084b56fb0..9279a8a26ace25 100644 --- a/config/locales/doorkeeper.fr-CA.yml +++ b/config/locales/doorkeeper.fr-CA.yml @@ -60,6 +60,7 @@ fr-CA: error: title: Une erreur est survenue new: + prompt_html: "%{client_name} aimerait avoir la permission d'accéder à votre compte. Approuver cette demande uniquement si vous reconnaissez et faites confiance à cette source." review_permissions: Examiner les autorisations title: Autorisation requise show: diff --git a/config/locales/doorkeeper.fr.yml b/config/locales/doorkeeper.fr.yml index fac58460c6b458..71c9605d8a9393 100644 --- a/config/locales/doorkeeper.fr.yml +++ b/config/locales/doorkeeper.fr.yml @@ -60,6 +60,7 @@ fr: error: title: Une erreur est survenue new: + prompt_html: "%{client_name} aimerait avoir la permission d'accéder à votre compte. Approuver cette demande uniquement si vous reconnaissez et faites confiance à cette source." review_permissions: Examiner les autorisations title: Autorisation requise show: diff --git a/config/locales/doorkeeper.ko.yml b/config/locales/doorkeeper.ko.yml index 4dabc19e432ad6..dc1b8c08b1baa5 100644 --- a/config/locales/doorkeeper.ko.yml +++ b/config/locales/doorkeeper.ko.yml @@ -60,6 +60,7 @@ ko: error: title: 오류가 발생하였습니다 new: + prompt_html: "%{client_name}이 계정에 접근할 권한을 요청합니다. 내가 알아볼 수 있고 신뢰할 수 있는 출처의 요청인 경우에만 승인하세요." review_permissions: 권한 검토 title: 승인 필요 show: diff --git a/config/locales/eo.yml b/config/locales/eo.yml index 7d0f66a0c06628..a3f968d1396bad 100644 --- a/config/locales/eo.yml +++ b/config/locales/eo.yml @@ -821,8 +821,12 @@ eo: message_html: Vi ne difinis iujn servilajn regulojn. sidekiq_process_check: message_html: Neniu Sidekiq-procezo por la %{value} vico + software_version_check: + message_html: Mastodon-ĝisdatigo disponeblas. software_version_critical_check: action: Vidi disponeblajn ĝisdatigojn + software_version_patch_check: + action: Vidi disponeblajn ĝisdatigojn upload_check_privacy_error: action: Klaku ĉi tie por pliaj informoj message_html: "Via retservilo estas misagordita. La privateco de viaj uzantoj estas en risko." diff --git a/config/locales/es-AR.yml b/config/locales/es-AR.yml index 292bbbff513aac..49b8f288fa0436 100644 --- a/config/locales/es-AR.yml +++ b/config/locales/es-AR.yml @@ -875,6 +875,9 @@ es-AR: message_html: No definiste ninguna regla del servidor. sidekiq_process_check: message_html: No hay ningún proceso Sidekiq en ejecución para la/s cola/s %{value}. Por favor, revisá tu configuración de Sidekiq + software_version_check: + action: Ver actualizaciones disponibles + message_html: Hay disponible una actualización de Mastodon. software_version_critical_check: action: Ver actualizaciones disponibles message_html: Una actualización crítica de Mastodon está disponible; por favor, actualizá lo antes posible. diff --git a/config/locales/es-MX.yml b/config/locales/es-MX.yml index 45d88645029d06..0f4c8452c007dc 100644 --- a/config/locales/es-MX.yml +++ b/config/locales/es-MX.yml @@ -875,6 +875,9 @@ es-MX: message_html: No ha definido ninguna regla del servidor. sidekiq_process_check: message_html: No hay ningún proceso Sidekiq en ejecución para la(s) cola(s) %{value}. Por favor, revise su configuración de Sidekiq + software_version_check: + action: Ver actualizaciones disponibles + message_html: Hay disponible una actualización de Mastodon. software_version_critical_check: action: Ver actualizaciones disponibles message_html: Una actualización crítica de Mastodon está disponible, por favor actualice lo antes posible. diff --git a/config/locales/es.yml b/config/locales/es.yml index 85bcf9065a8b48..aa18e7b52eb916 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -875,6 +875,9 @@ es: message_html: No ha definido ninguna regla del servidor. sidekiq_process_check: message_html: No hay ningún proceso Sidekiq en ejecución para la(s) cola(s) %{value}. Por favor, revise su configuración de Sidekiq + software_version_check: + action: Ver actualizaciones disponibles + message_html: Hay disponible una actualización de Mastodon. software_version_critical_check: action: Ver actualizaciones disponibles message_html: Una actualización crítica de Mastodon está disponible, por favor actualiza lo antes posible. diff --git a/config/locales/fi.yml b/config/locales/fi.yml index 258dda8cc421d3..22ccc711612746 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -875,6 +875,9 @@ fi: message_html: Et ole määritellyt palvelimen sääntöjä lainkaan. sidekiq_process_check: message_html: Ei ole Sidekiq-prosessia käynnissä jonossa %{value}. Tarkista Sidekiq-asetukset + software_version_check: + action: Näytä saatavilla olevat päivitykset + message_html: Saatavilla on Mastodon-päivitys. software_version_critical_check: action: Näytä saatavilla olevat päivitykset message_html: Kriittinen Mastodon-päivitys on saatavilla. Tee päivitys mahdollisimman ripeästi. diff --git a/config/locales/fo.yml b/config/locales/fo.yml index 034e1f6bd250e0..31eb67b3b099af 100644 --- a/config/locales/fo.yml +++ b/config/locales/fo.yml @@ -875,6 +875,9 @@ fo: message_html: Tú hevur ikki ásett nakrar ambætarareglur. sidekiq_process_check: message_html: Eingin Sidekiq gongd koyrir fyri %{value} bíðirøðina(r). Vinarliga eftirkanna Sidekiq uppsetingina + software_version_check: + action: Sí tøkar dagføringar + message_html: Ein Mastodon-dagføring er tøk. software_version_critical_check: action: Sí tøkar dagføringar message_html: Ein kritisk Mastodon-dagføring er tøk, vinarliga dagfør sum skjótast. diff --git a/config/locales/fr-CA.yml b/config/locales/fr-CA.yml index 6ab0ee66606d8f..16cdb79317cc5b 100644 --- a/config/locales/fr-CA.yml +++ b/config/locales/fr-CA.yml @@ -262,8 +262,10 @@ fr-CA: destroy_user_role_html: "%{name} a supprimé le rôle %{target}" disable_2fa_user_html: "%{name} a désactivé l'authentification à deux facteurs pour l'utilisateur·rice %{target}" disable_custom_emoji_html: "%{name} a désactivé l'émoji %{target}" + disable_sign_in_token_auth_user_html: "%{name} a désactivé l'authentification par jeton de courriel pour %{target}" disable_user_html: "%{name} a désactivé la connexion de l'utilisateur·rice %{target}" enable_custom_emoji_html: "%{name} a activé l'émoji %{target}" + enable_sign_in_token_auth_user_html: "%{name} a activé l'authentification par jeton de courriel pour %{target}" enable_user_html: "%{name} a activé la connexion de l'utilisateur·rice %{target}" memorialize_account_html: "%{name} a converti le compte de %{target} en un mémorial" promote_user_html: "%{name} a promu l'utilisateur·rice %{target}" @@ -876,6 +878,9 @@ fr-CA: message_html: Vous n'avez pas défini de règles pour le serveur. sidekiq_process_check: message_html: Aucun processus Sidekiq en cours d'exécution pour la/les file(s) d'attente %{value}. Veuillez vérifier votre configuration de Sidekiq + software_version_check: + action: Voir les mises à jour disponibles + message_html: Une mise à jour de Mastodon est disponible. software_version_critical_check: action: Voir les mises à jour disponibles message_html: Une mise à jour critique de Mastodon est disponible, veuillez mettre à jour le plus rapidement possible. @@ -1447,6 +1452,7 @@ fr-CA: unsubscribe: action: Oui, me désabonner complete: Désabonné·e + confirmation_html: Êtes-vous sûr de vouloir vous désabonner de la réception de %{type} pour Mastodon sur %{domain} à votre adresse e-mail %{email} ? Vous pouvez toujours vous réabonner à partir de vos paramètres de notification par messagerie. emails: notification_emails: favourite: e-mails de notifications de favoris @@ -1692,6 +1698,7 @@ fr-CA: delete: Suppression du compte development: Développement edit_profile: Modifier le profil + export: Exportation featured_tags: Hashtags mis en avant import: Import de données import_and_export: Import et export diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 6e13466bfe0ee7..bc57d00e658f37 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -262,8 +262,10 @@ fr: destroy_user_role_html: "%{name} a supprimé le rôle %{target}" disable_2fa_user_html: "%{name} a désactivé l'authentification à deux facteurs pour l'utilisateur·rice %{target}" disable_custom_emoji_html: "%{name} a désactivé l'émoji %{target}" + disable_sign_in_token_auth_user_html: "%{name} a désactivé l'authentification par jeton de courriel pour %{target}" disable_user_html: "%{name} a désactivé la connexion de l'utilisateur·rice %{target}" enable_custom_emoji_html: "%{name} a activé l'émoji %{target}" + enable_sign_in_token_auth_user_html: "%{name} a activé l'authentification par jeton de courriel pour %{target}" enable_user_html: "%{name} a activé la connexion de l'utilisateur·rice %{target}" memorialize_account_html: "%{name} a converti le compte de %{target} en un mémorial" promote_user_html: "%{name} a promu l'utilisateur·rice %{target}" @@ -427,7 +429,7 @@ fr: undo: Annuler le blocage de domaine view: Afficher les blocages de domaines email_domain_blocks: - add_new: Ajouter + add_new: Ajouter un nouveau allow_registrations_with_approval: Autoriser les inscriptions avec approbation attempts_over_week: one: "%{count} tentative au cours de la dernière semaine" @@ -876,6 +878,9 @@ fr: message_html: Vous n'avez pas défini de règles pour le serveur. sidekiq_process_check: message_html: Aucun processus Sidekiq en cours d'exécution pour la/les file(s) d'attente %{value}. Veuillez vérifier votre configuration de Sidekiq + software_version_check: + action: Voir les mises à jour disponibles + message_html: Une mise à jour de Mastodon est disponible. software_version_critical_check: action: Voir les mises à jour disponibles message_html: Une mise à jour critique de Mastodon est disponible, veuillez mettre à jour le plus rapidement possible. @@ -1447,6 +1452,7 @@ fr: unsubscribe: action: Oui, se désinscrire complete: Désinscrit + confirmation_html: Êtes-vous sûr de vouloir vous désabonner de la réception de %{type} pour Mastodon sur %{domain} à votre adresse e-mail %{email} ? Vous pouvez toujours vous réabonner à partir de vos paramètres de notification par messagerie. emails: notification_emails: favourite: e-mails de notifications de favoris @@ -1692,6 +1698,7 @@ fr: delete: Suppression du compte development: Développement edit_profile: Modifier le profil + export: Exportation featured_tags: Hashtags mis en avant import: Import de données import_and_export: Import et export diff --git a/config/locales/ga.yml b/config/locales/ga.yml index c678e93323e7c4..e25865903ea365 100644 --- a/config/locales/ga.yml +++ b/config/locales/ga.yml @@ -917,6 +917,9 @@ ga: message_html: Níl aon rialacha freastalaí sainmhínithe agat. sidekiq_process_check: message_html: Níl próiseas Sidekiq ag rith don scuaine/(scuainí) %{value}. Déan athbhreithniú ar do chumraíocht Sidekiq + software_version_check: + action: Féach nuashonruithe atá ar fáil + message_html: Tá nuashonrú Mastodon ar fáil. software_version_critical_check: action: Féach nuashonruithe atá ar fáil message_html: Tá nuashonrú ríthábhachtach Mastodon ar fáil, nuashonraigh chomh tapa agus is féidir le do thoil. diff --git a/config/locales/hu.yml b/config/locales/hu.yml index 11f2a415f26731..5a00db954813e8 100644 --- a/config/locales/hu.yml +++ b/config/locales/hu.yml @@ -875,6 +875,9 @@ hu: message_html: Még nem definiáltál egy szerver szabályt sem. sidekiq_process_check: message_html: Nincs Sidekiq folyamat, mely a %{value} sorhoz van rendelve. Kérlek, nézd át a Sidekiq beállításait + software_version_check: + action: Elérhető frissítések megtekintése + message_html: Egy Mastodon-frissítés elérhető. software_version_critical_check: action: Elérhető frissítések megtekintése message_html: Kritikus Mastodon frissítés érhető el, frissíts a lehető leggyorsabban. diff --git a/config/locales/ko.yml b/config/locales/ko.yml index ba43310e02dbb0..3f6c4b39b8b646 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -863,6 +863,9 @@ ko: message_html: 아직 서버 규칙을 정하지 않았습니다. sidekiq_process_check: message_html: "%{value} 큐에 대한 사이드킥 프로세스가 발견되지 않았습니다. 사이드킥 설정을 검토해주세요" + software_version_check: + action: 사용 가능한 업데이트 보기 + message_html: 마스토돈 업데이트가 있습니다. software_version_critical_check: action: 사용 가능한 업데이트 보기 message_html: 긴급 마스토돈 업데이트가 있으니, 가능한 서둘러 업데이트 해주세요. diff --git a/config/locales/nn.yml b/config/locales/nn.yml index 81047d92e7d4eb..8f6afc2426bb9b 100644 --- a/config/locales/nn.yml +++ b/config/locales/nn.yml @@ -1695,6 +1695,7 @@ nn: delete: Kontosletting development: Utvikling edit_profile: Endr profil + export: Eksporter featured_tags: Utvalgte emneknagger import: Hent inn import_and_export: Importer og eksporter diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml index 30022be93ab0b9..5e7317c5fbb730 100644 --- a/config/locales/pt-BR.yml +++ b/config/locales/pt-BR.yml @@ -875,6 +875,9 @@ pt-BR: message_html: Você não definiu nenhuma regra de servidor. sidekiq_process_check: message_html: Nenhum processo Sidekiq rodando para a(s) fila(s) %{value}. Por favor, revise a sua configuração para Sidekiq + software_version_check: + action: Ver atualizações disponíveis + message_html: Uma atualização do Mastodon está disponível. software_version_critical_check: action: Ver atualizações disponíveis message_html: Uma atualização crítica do Mastodon está disponível. Por favor, atualize o mais rápido possível. diff --git a/config/locales/simple_form.bg.yml b/config/locales/simple_form.bg.yml index a2cf8e4222543a..7b7d92995b04e8 100644 --- a/config/locales/simple_form.bg.yml +++ b/config/locales/simple_form.bg.yml @@ -3,6 +3,7 @@ bg: simple_form: hints: account: + attribution_domains_as_text: Защитава от фалшиви атрибути. discoverable: Вашите публични публикации и профил може да се представят или препоръчват в различни области на Mastodon и вашия профил може да се предлага на други потребители. display_name: Вашето пълно име или псевдоним. fields: Вашата начална страница, местоимения, години, всичко що искате. @@ -130,6 +131,7 @@ bg: name: Можете да смените само употребата на големи/малки букви, например, за да е по-четимо user: chosen_languages: Само публикации на отметнатите езици ще се показват в публичните часови оси + role: Ролята управлява какви позволения има потребителят. user_role: color: Цветът, използван за ролите в потребителския интерфейс, като RGB в шестнадесетичен формат highlighted: Това прави ролята обществено видима @@ -142,6 +144,7 @@ bg: url: До къде ще се изпращат събитията labels: account: + attribution_domains_as_text: Позволяване само на особени уебсайтове discoverable: Включване на профил и публикации в алгоритмите за откриване fields: name: Етикет diff --git a/config/locales/simple_form.eo.yml b/config/locales/simple_form.eo.yml index 053816ef881c06..cb4a9041e81eb6 100644 --- a/config/locales/simple_form.eo.yml +++ b/config/locales/simple_form.eo.yml @@ -3,6 +3,7 @@ eo: simple_form: hints: account: + attribution_domains_as_text: Protektas kontraŭ falsaj atribuoj. discoverable: Viaj publikaj afiŝoj kaj profilo povas esti prezentitaj aŭ rekomenditaj en diversaj lokoj de Mastodon kaj via profilo povas esti proponita al aliaj uzantoj. display_name: Via plena nomo aŭ via kromnomo. fields: Via retpaĝo, pronomoj, aĝo, ĉio, kion vi volas. @@ -78,6 +79,7 @@ eo: bootstrap_timeline_accounts: Ĉi tiuj kontoj pinglitas al la supro de sekvorekomendoj de novaj uzantoj. closed_registrations_message: Montrita kiam registroj fermitas custom_css: Vi povas meti propajn stilojn en la retversio de Mastodon. + favicon: WEBP, PNG, GIF aŭ JPG. Anstataŭigas la defaŭltan Mastodon-favikono kun propra bildsimbolo. mascot: Anstatauigi la ilustraĵon en la altnivela retinterfaco. peers_api_enabled: Listo de domajnaj nomoj kiujn ĉi tiu servilo renkontis en la fediverso. Neniuj datumoj estas inkluditaj ĉi tie pri ĉu vi federacias kun donita servilo, nur ke via servilo scias pri ĝi. Ĉi tio estas uzata de servoj kiuj kolektas statistikojn pri federacio en ĝenerala signifo. profile_directory: La profilujo listigas ĉiujn uzantojn kiu volonte malkovrebli. @@ -111,6 +113,7 @@ eo: sign_up_requires_approval: Novaj registriĝoj bezonos vian aprobon severity: Elektu, kio okazos pri petoj de ĉi tiu IP-adreso rule: + hint: Laŭvola. Provizu pliajn detalojn pri la regulo text: Priskribu regulon aŭ neceson por uzantoj en ĉi tiu servilo. Provu fari ĝin mallonga kaj simpla sessions: otp: 'Enmetu la kodon de dufaktora aŭtentigo el via telefono aŭ uzu unu el viaj realiraj kodoj:' @@ -122,6 +125,7 @@ eo: name: Vi povas ŝanĝi nur la majuskladon de la literoj, ekzemple, por igi ĝin pli legebla user: chosen_languages: Kun tio markita nur mesaĝoj en elektitaj lingvoj aperos en publikaj tempolinioj + role: La rolo kontrolas kiujn permesojn la uzanto havas. user_role: color: Koloro uzita por la rolo sur la UI, kun RGB-formato highlighted: Ĉi tio igi la rolon publike videbla @@ -134,6 +138,7 @@ eo: url: Kien eventoj sendotas labels: account: + attribution_domains_as_text: Permesi nur specifajn retejojn discoverable: Elstarigi profilon kaj afiŝojn en eltrovantaj algoritmoj fields: name: Etikedo @@ -239,6 +244,7 @@ eo: bootstrap_timeline_accounts: Ĉiam rekomendi ĉi tiujn kontojn al novaj uzantoj closed_registrations_message: Kutima mesaĝo kiam registroj ne estas disponeblaj custom_css: Propa CSS + favicon: Favorikono mascot: Propa maskoto media_cache_retention_period: Audovidaĵkaŝaĵretendauro peers_api_enabled: Eldonu liston de malkovritaj serviloj en la API @@ -294,6 +300,7 @@ eo: patch: Sciigi pri cimoriparaj ĝisdatigoj trending_tag: Nova furoro bezonas kontrolon rule: + hint: Pliaj informoj text: Regulo settings: indexable: Inkludi profilan paĝon en serĉiloj @@ -302,6 +309,7 @@ eo: listable: Permesi ĉi tiun kradvorton aperi en serĉoj kaj sugestoj name: Kradvorto trendable: Permesi al ĉi tiu kradvorto aperi en furoraĵoj + usable: Permesi afiŝojn uzi ĉi tiun kradvorton loke user: role: Rolo time_zone: Horzono diff --git a/config/locales/sv.yml b/config/locales/sv.yml index ab545005375036..dadd5f160030dd 100644 --- a/config/locales/sv.yml +++ b/config/locales/sv.yml @@ -860,6 +860,8 @@ sv: message_html: Du har inte definierat några serverregler. sidekiq_process_check: message_html: Ingen Sidekiq-process körs för kön/köerna %{value}. Vänligen kontrollera din Sidekiq-konfiguration + software_version_check: + message_html: En Mastodon-uppdatering är tillgänglig. software_version_critical_check: action: Se tillgängliga uppdateringar message_html: En kritisk uppdatering för Mastodon är tillgänglig. Uppdatera så snart som möjligt. diff --git a/config/locales/th.yml b/config/locales/th.yml index fa04b6030ac155..3cb802afe3e981 100644 --- a/config/locales/th.yml +++ b/config/locales/th.yml @@ -861,12 +861,15 @@ th: message_html: คุณไม่ได้กำหนดกฎของเซิร์ฟเวอร์ใด ๆ sidekiq_process_check: message_html: ไม่มีกระบวนการ Sidekiq ที่กำลังทำงานสำหรับคิว %{value} โปรดตรวจทานการกำหนดค่า Sidekiq ของคุณ + software_version_check: + action: ดูการอัปเดตที่พร้อมใช้งาน + message_html: มีการอัปเดต Mastodon ที่พร้อมใช้งาน software_version_critical_check: action: ดูการอัปเดตที่พร้อมใช้งาน message_html: มีการอัปเดต Mastodon สำคัญพร้อมใช้งาน โปรดอัปเดตโดยเร็วที่สุดเท่าที่จะเป็นไปได้ software_version_patch_check: action: ดูการอัปเดตที่พร้อมใช้งาน - message_html: มีการอัปเดต Mastodon ที่แก้ไขข้อบกพร่องพร้อมใช้งาน + message_html: มีการอัปเดต Mastodon ที่แก้ไขข้อบกพร่องที่พร้อมใช้งาน upload_check_privacy_error: action: ตรวจสอบที่นี่สำหรับข้อมูลเพิ่มเติม message_html: "เว็บเซิร์ฟเวอร์ของคุณกำหนดค่าไม่ถูกต้อง ความเป็นส่วนตัวของผู้ใช้ของคุณตกอยู่ในความเสี่ยง" @@ -1666,6 +1669,7 @@ th: delete: การลบบัญชี development: การพัฒนา edit_profile: แก้ไขโปรไฟล์ + export: ส่งออก featured_tags: แฮชแท็กที่น่าสนใจ import: การนำเข้า import_and_export: การนำเข้าและการส่งออก diff --git a/config/locales/tr.yml b/config/locales/tr.yml index 2935948a475f31..738263191150de 100644 --- a/config/locales/tr.yml +++ b/config/locales/tr.yml @@ -875,6 +875,9 @@ tr: message_html: Herhangi bir sunucu kuralı belirlemediniz. sidekiq_process_check: message_html: "%{value} kuyruk(lar)ı için herhangi bir Sidekiq süreci çalışmıyor. Lütfen Sidekiq yapılandırmanızı gözden geçirin" + software_version_check: + action: Mevcut güncellemeleri görün + message_html: Mastodon güncellemesi mevcut. software_version_critical_check: action: Mevcut güncellemeleri göster message_html: Kritik bir Mastodon güncellemesi var, lütfen en kısa sürede güncelleyin. diff --git a/config/locales/vi.yml b/config/locales/vi.yml index 21fc4a3bf1a53e..7e44e76e44e762 100644 --- a/config/locales/vi.yml +++ b/config/locales/vi.yml @@ -91,7 +91,7 @@ vi: moderation: active: Hoạt động all: Tất cả - disabled: Đã tắt + disabled: Khóa đăng nhập pending: Chờ silenced: Hạn chế suspended: Vô hiệu hóa @@ -861,6 +861,9 @@ vi: message_html: Bạn chưa cập nhật nội quy máy chủ. sidekiq_process_check: message_html: Sidekiq không hoạt động khi truy vấn %{value}. Hãy kiểm tra lại cấu hình Sidekiq + software_version_check: + action: Bản cập nhật mới + message_html: Có bản cập nhật Mastodon mới. software_version_critical_check: action: Bản cập nhật mới message_html: Có bản cập nhật quan trọng của Mastodon, vui lòng cập nhật nhanh nhất có thể. From bf7cfba48e03bf482bbdae1d92378c8cebf0702e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 30 Sep 2024 08:53:52 +0000 Subject: [PATCH 23/28] Update DefinitelyTyped types (non-major) (#32163) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/yarn.lock b/yarn.lock index 62a538b42cbe6b..f9867cc91df82d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3762,9 +3762,9 @@ __metadata: linkType: hard "@types/lodash@npm:^4.14.195": - version: 4.17.7 - resolution: "@types/lodash@npm:4.17.7" - checksum: 10c0/40c965b5ffdcf7ff5c9105307ee08b782da228c01b5c0529122c554c64f6b7168fc8f11dc79aa7bae4e67e17efafaba685dc3a47e294dbf52a65ed2b67100561 + version: 4.17.9 + resolution: "@types/lodash@npm:4.17.9" + checksum: 10c0/54de935e835508b5f835a5dfaedd2b9a299685a21d11e9c5cd2dde57331d03bc2f98b71d2424ca8460f447ecd55a673e45ccdb70e58f9f72745710f6b91abc60 languageName: node linkType: hard @@ -3983,12 +3983,12 @@ __metadata: linkType: hard "@types/react@npm:*, @types/react@npm:16 || 17 || 18, @types/react@npm:>=16.9.11, @types/react@npm:^18.2.7": - version: 18.3.8 - resolution: "@types/react@npm:18.3.8" + version: 18.3.10 + resolution: "@types/react@npm:18.3.10" dependencies: "@types/prop-types": "npm:*" csstype: "npm:^3.0.2" - checksum: 10c0/367312c9fe276639ecb142265e090a4dd04bb39f8d718cbab546de3f1ddcfddeff415e1147d0fc40f734badaa7420b7b109d511bd4304b2c4c9c36164612fdf8 + checksum: 10c0/f5be1de1b0331c1fdb33d577f4cf7f1b949d4bded5347b2351a537f03c51dade5be115e21b161dcf1b37061954d320f6a0bdf8d7b70e24eda51071fdd614383d languageName: node linkType: hard @@ -17257,20 +17257,13 @@ __metadata: languageName: node linkType: hard -"tslib@npm:^2.0.0": +"tslib@npm:^2.0.0, tslib@npm:^2.4.0, tslib@npm:^2.6.2": version: 2.7.0 resolution: "tslib@npm:2.7.0" checksum: 10c0/469e1d5bf1af585742128827000711efa61010b699cb040ab1800bcd3ccdd37f63ec30642c9e07c4439c1db6e46345582614275daca3e0f4abae29b0083f04a6 languageName: node linkType: hard -"tslib@npm:^2.4.0, tslib@npm:^2.6.2": - version: 2.6.3 - resolution: "tslib@npm:2.6.3" - checksum: 10c0/2598aef53d9dbe711af75522464b2104724d6467b26a60f2bdac8297d2b5f1f6b86a71f61717384aa8fd897240467aaa7bcc36a0700a0faf751293d1331db39a - languageName: node - linkType: hard - "tty-browserify@npm:0.0.0": version: 0.0.0 resolution: "tty-browserify@npm:0.0.0" From 431b3825639ea4087338fcd77ac1adb342b0ef4e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 30 Sep 2024 08:55:18 +0000 Subject: [PATCH 24/28] Update dependency sass to v1.79.4 (#32139) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index f9867cc91df82d..38402229bdfcc9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15520,15 +15520,15 @@ __metadata: linkType: hard "sass@npm:^1.62.1": - version: 1.79.3 - resolution: "sass@npm:1.79.3" + version: 1.79.4 + resolution: "sass@npm:1.79.4" dependencies: chokidar: "npm:^4.0.0" immutable: "npm:^4.0.0" source-map-js: "npm:>=0.6.2 <2.0.0" bin: sass: sass.js - checksum: 10c0/ad171bbbb2d7a789cc47803a59dcf2d0ac92ede34b538bb3fd683b6391a9ac3dc3eabaac264fc9582c770c4e435b85840e011785b7adfc0ac002b51ba91179c9 + checksum: 10c0/505ff0d9267d0fb990971e617acfeabf7c060c55d4cef68fe8a4bc693e7ea88ae7d7caeca3975e4b453459ba4a707b6e5b6979fc9395a7e08f0a43ca6aed06b8 languageName: node linkType: hard From e22eff890003481977ee0bcecee12c3d40aededb Mon Sep 17 00:00:00 2001 From: Claire Date: Mon, 30 Sep 2024 11:41:06 +0200 Subject: [PATCH 25/28] Remove regexp timeout feature (#32169) --- config/initializers/regexp.rb | 4 ---- 1 file changed, 4 deletions(-) delete mode 100644 config/initializers/regexp.rb diff --git a/config/initializers/regexp.rb b/config/initializers/regexp.rb deleted file mode 100644 index 4e79dc478e1241..00000000000000 --- a/config/initializers/regexp.rb +++ /dev/null @@ -1,4 +0,0 @@ -# frozen_string_literal: true - -# 2s is a fairly high default, but that should account for slow servers under load -Regexp.timeout = ENV.fetch('REGEXP_TIMEOUT', 2).to_f if Regexp.respond_to?(:timeout=) From 0c872beed4a49ca879e5899ddd96f51c69c68cb8 Mon Sep 17 00:00:00 2001 From: Claire Date: Mon, 30 Sep 2024 12:25:54 +0200 Subject: [PATCH 26/28] Merge commit from fork This should not change the set of words matched by `USERNAME_RE` but does change the one matched by `MENTION_RE`. Indeed, the previous regexp allowed a domain part to start with `.` or `-`, which the new regexp does not allow. --- app/models/account.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/models/account.rb b/app/models/account.rb index 078d7aaa056220..3b841e7c77622e 100644 --- a/app/models/account.rb +++ b/app/models/account.rb @@ -68,8 +68,8 @@ class Account < ApplicationRecord DEFAULT_FIELDS_SIZE = 4 INSTANCE_ACTOR_ID = -99 - USERNAME_RE = /[a-z0-9_]+([a-z0-9_.-]+[a-z0-9_]+)?/i - MENTION_RE = %r{(? Date: Mon, 30 Sep 2024 12:42:59 +0200 Subject: [PATCH 27/28] Bump version to 4.3.0-rc.1 (#32124) --- CHANGELOG.md | 48 ++++++++++++++++++++++++++++++----------- docker-compose.yml | 6 +++--- lib/mastodon/version.rb | 2 +- 3 files changed, 40 insertions(+), 16 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8d1e0bfcf78061..5eef082cccd83d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,12 +10,13 @@ The following changelog entries focus on changes visible to users, administrator - **Add confirmation interstitial instead of silently redirecting logged-out visitors to remote resources** (#27792, #28902, and #30651 by @ClearlyClaire and @Gargron)\ This fixes a longstanding open redirect in Mastodon, at the cost of added friction when local links to remote resources are shared. +- Fix ReDoS vulnerability on some Ruby versions ([GHSA-jpxp-r43f-rhvx](https://github.com/mastodon/mastodon/security/advisories/GHSA-jpxp-r43f-rhvx)) - Change `form-action` Content-Security-Policy directive to be more restrictive (#26897 by @ClearlyClaire) - Update dependencies ### Added -- **Add server-side notification grouping** (#29889, #30576, #30685, #30688, #30707, #30776, #30779, #30781, #30440, #31062, #31098, #31076, #31111, #31123, #31223, #31214, #31224, #31299, #31325, #31347, #31304, #31326, #31384, #31403, #31433, #31509, #31486, #31513, #31592, #31594, #31638, #31746, #31652, #31709, #31725, #31745, #31613, #31657, #31840, #31610 and #31929 by @ClearlyClaire, @Gargron, @mgmn, and @renchap)\ +- **Add server-side notification grouping** (#29889, #30576, #30685, #30688, #30707, #30776, #30779, #30781, #30440, #31062, #31098, #31076, #31111, #31123, #31223, #31214, #31224, #31299, #31325, #31347, #31304, #31326, #31384, #31403, #31433, #31509, #31486, #31513, #31592, #31594, #31638, #31746, #31652, #31709, #31725, #31745, #31613, #31657, #31840, #31610, #31929, #32089 and #32085 by @ClearlyClaire, @Gargron, @mgmn, and @renchap)\ Group notifications of the same type for the same target, so that your notifications no longer get cluttered by boost and favorite notifications as soon as a couple of your posts get traction.\ This is done server-side so that clients can efficiently get relevant groups without having to go through numerous pages of individual notifications.\ As part of this, the visual design of the entire notifications feature has been revamped.\ @@ -27,7 +28,7 @@ The following changelog entries focus on changes visible to users, administrator - `GET /api/v2/notifications/:group_key/accounts`: https://docs.joinmastodon.org/methods/grouped_notifications/#get-group-accounts - `POST /api/v2/notifications/:group_key/dimsiss`: https://docs.joinmastodon.org/methods/grouped_notifications/#dismiss-group - `GET /api/v2/notifications/:unread_count`: https://docs.joinmastodon.org/methods/grouped_notifications/#unread-group-count -- **Add notification policies, filtered notifications and notification requests** (#29366, #29529, #29433, #29565, #29567, #29572, #29575, #29588, #29646, #29652, #29658, #29666, #29693, #29699, #29737, #29706, #29570, #29752, #29810, #29826, #30114, #30251, #30559, #29868, #31008, #31011, #30996, #31149, #31220, #31222, #31225, #31242, #31262, #31250, #31273, #31310, #31316, #31322, #31329, #31324, #31331, #31343, #31342, #31309, #31358, #31378, #31406, #31256, #31456, #31419, #31457, #31508, #31540, #31541, and #31723 by @ClearlyClaire, @Gargron, @TheEssem, @mgmn, @oneiros, and @renchap)\ +- **Add notification policies, filtered notifications and notification requests** (#29366, #29529, #29433, #29565, #29567, #29572, #29575, #29588, #29646, #29652, #29658, #29666, #29693, #29699, #29737, #29706, #29570, #29752, #29810, #29826, #30114, #30251, #30559, #29868, #31008, #31011, #30996, #31149, #31220, #31222, #31225, #31242, #31262, #31250, #31273, #31310, #31316, #31322, #31329, #31324, #31331, #31343, #31342, #31309, #31358, #31378, #31406, #31256, #31456, #31419, #31457, #31508, #31540, #31541, #31723 and #32062 by @ClearlyClaire, @Gargron, @TheEssem, @mgmn, @oneiros, and @renchap)\ The old “Block notifications from non-followers”, “Block notifications from people you don't follow” and “Block direct messages from people you don't follow” notification settings have been replaced by a new set of settings found directly in the notification column.\ You can now separately filter or drop notifications from people you don't follow, people who don't follow you, accounts created within the past 30 days, as well as unsolicited private mentions, and accounts limited by the moderation.\ Instead of being outright dropped, notifications that you chose to filter are put in a separate “Filtered notifications” box that you can review separately without it clogging your main notifications.\ @@ -76,7 +77,11 @@ The following changelog entries focus on changes visible to users, administrator Clicking the domain of a user in their profile will now open a tooltip with a short explanation about servers and federation. - **Add support for Redis sentinel** (#31694, #31623, #31744, #31767, and #31768 by @ThisIsMissEm and @oneiros)\ See https://docs.joinmastodon.org/admin/scaling/#redis-sentinel -- Add ability to reorder uploaded media before posting in web UI (#28456 by @Gargron) +- **Add ability to reorder uploaded media before posting in web UI** (#28456 and #32093 by @Gargron) +- Add “A Mastodon update is available.” message on admin dashboard for non-bugfix updates (#32106 by @ClearlyClaire) +- Add ability to view alt text by clicking the ALT badge in web UI (#32058 by @Gargron) +- Add preview of followers removed in domain block modal in web UI (#32032 and #32105 by @ClearlyClaire and @Gargron) +- Add reblogs and favourites counts to statuses in ActivityPub (#32007 by @Gargron) - Add moderation interface for searching hashtags (#30880 by @ThisIsMissEm) - Add ability for admins to configure instance favicon and logo (#30040, #30208, #30259, #30375, #30734, #31016, and #30205 by @ClearlyClaire, @FawazFarid, @JasonPunyon, @mgmn, and @renchap)\ This is also exposed through the REST API: https://docs.joinmastodon.org/entities/Instance/#icon @@ -122,14 +127,14 @@ The following changelog entries focus on changes visible to users, administrator - Add Interlingue and Interlingua to interface languages (#28630 and #30828 by @Dhghomon and @renchap) - Add Kashubian, Pennsylvania Dutch, Vai, Jawi Malay, Mohawk and Low German to posting languages (#26024, #26634, #27136, #29098, #27115, and #27434 by @EngineerDali, @HelgeKrueger, and @gunchleoc) - Add option to use native Ruby driver for Redis through `REDIS_DRIVER=ruby` (#30717 by @vmstan) -- Add support for libvips in addition to ImageMagick (#30090, #30590, #30597, #30632, #30857, #30869, and #30858 by @ClearlyClaire, @Gargron, and @mjankowski)\ +- Add support for libvips in addition to ImageMagick (#30090, #30590, #30597, #30632, #30857, #30869, #30858 and #32104 by @ClearlyClaire, @Gargron, and @mjankowski)\ Server admins can now use libvips as a faster and lighter alternative to ImageMagick for processing user-uploaded images.\ This requires libvips 8.13 or newer, and needs to be enabled with `MASTODON_USE_LIBVIPS=true`.\ This is enabled by default in the official Docker images, and is intended to completely replace ImageMagick in the future. - Add validations to `Web::PushSubscription` (#30540 and #30542 by @ThisIsMissEm) - Add anchors to each authorized application in `/oauth/authorized_applications` (#31677 by @fowl2) - Add active animation to header settings button (#30221, #30307, and #30388 by @daudix) -- Add OpenTelemetry instrumentation (#30130, #30322, #30353, and #30350 by @julianocosta89, @renchap, and @robbkidd)\ +- Add OpenTelemetry instrumentation (#30130, #30322, #30353, #30350 and #31998 by @julianocosta89, @renchap, @robbkidd and @timetinytim)\ See https://docs.joinmastodon.org/admin/config/#otel for documentation - Add API to get multiple accounts and statuses (#27871 and #30465 by @ClearlyClaire)\ This adds `GET /api/v1/accounts` and `GET /api/v1/statuses` to the REST API, see https://docs.joinmastodon.org/methods/accounts/#index and https://docs.joinmastodon.org/methods/statuses/#index @@ -138,7 +143,6 @@ The following changelog entries focus on changes visible to users, administrator - Add RFC8414 OAuth 2.0 server metadata (#29191 by @ThisIsMissEm) - Add loading indicator and empty result message to advanced interface search (#30085 by @ClearlyClaire) - Add `profile` OAuth 2.0 scope, allowing more limited access to user data (#29087 and #30357 by @ThisIsMissEm) -- Add global Regexp timeout (#31928 by @ClearlyClaire) - Add the role ID to the badge component (#29707 by @renchap) - Add diagnostic message for failure during CLI search deploy (#29462 by @mjankowski) - Add pagination `Link` headers on API accounts/statuses when pinned true (#29442 by @mjankowski) @@ -167,15 +171,15 @@ The following changelog entries focus on changes visible to users, administrator - **Change icons throughout the web interface** (#27385, #27539, #27555, #27579, #27700, #27817, #28519, #28709, #28064, #28775, #28780, #27924, #29294, #29395, #29537, #29569, #29610, #29612, #29649, #29844, #27780, #30974, #30963, #30962, #30961, #31362, #31363, #31359, #31371, #31360, #31512, #31511, and #31525 by @ClearlyClaire, @Gargron, @arbolitoloco1, @mjankowski, @nclm, @renchap, @ronilaukkarinen, and @zunda)\ This changes all the interface icons from FontAwesome to Material Symbols for a more modern look, consistent with the official Mastodon Android app.\ In addition, better care is given to pixel alignment, and icon variants are used to better highlight active/inactive state. -- **Change design of compose form in web UI** (#28119, #29059, #29248, #29372, #29384, #29417, #29456, #29406, #29651, #29659, and #31889 by @ClearlyClaire, @Gargron, @eai04191, @hinaloe, and @ronilaukkarinen)\ +- **Change design of compose form in web UI** (#28119, #29059, #29248, #29372, #29384, #29417, #29456, #29406, #29651, #29659, #31889 and #32033 by @ClearlyClaire, @Gargron, @eai04191, @hinaloe, and @ronilaukkarinen)\ The compose form has been completely redesigned for a more modern and consistent look, as well as spelling out the chosen privacy setting and language name at all times.\ As part of this, the “Unlisted” privacy setting has been renamed to “Quiet public”. - **Change design of modals in the web UI** (#29576, #29614, #29640, #29644, #30131, #30884, #31399, #31555, #31752, #31801, #31883, #31844, #31864, and #31943 by @ClearlyClaire, @Gargron, @tribela and @vmstan)\ The mute, block, and domain block confirmation modals have been completely redesigned to be clearer and include more detailed information on the action to be performed.\ They also have a more modern and consistent design, along with other confirmation modals in the application. -- **Change colors throughout the web UI** (#29522, #29584, #29653, #29779, #29803, #29809, #29808, #29828, #31034, #31168, #31266, #31348, #31349, #31361, and #31510 by @ClearlyClaire, @Gargron, @renchap, and @vmstan) +- **Change colors throughout the web UI** (#29522, #29584, #29653, #29779, #29803, #29809, #29808, #29828, #31034, #31168, #31266, #31348, #31349, #31361, #31510 and #32128 by @ClearlyClaire, @Gargron, @mjankowski, @renchap, and @vmstan) - **Change onboarding prompt to follow suggestions carousel in web UI** (#28878, #29272, and #31912 by @Gargron) -- **Change email templates** (#28416, #28755, #28814, #29064, #28883, #29470, #29607, #29761, #29760, and #29879 by @ClearlyClaire, @Gargron, @hteumeuleu, and @mjankowski)\ +- **Change email templates** (#28416, #28755, #28814, #29064, #28883, #29470, #29607, #29761, #29760, #29879, #32073 and #32132 by @c960657, @ClearlyClaire, @Gargron, @hteumeuleu, and @mjankowski)\ All emails to end-users have been completely redesigned with a fresh new look, providing more information while making them easier to read and keeping maximum compatibility across mail clients. - **Change follow recommendations algorithm** (#28314, #28433, #29017, #29108, #29306, #29550, #29619, and #31474 by @ClearlyClaire, @Gargron, @kernal053, @mjankowski, and @wheatear-dev)\ This replaces the “past interactions” recommendation algorithm with a “friends of friends” algorithm that suggests accounts followed by people you follow, and a “similar profiles” algorithm that suggests accounts with a profile similar to your most recent follows.\ @@ -188,10 +192,17 @@ The following changelog entries focus on changes visible to users, administrator Administrators may need to update their setup accordingly. - Change how content warnings and filters are displayed in web UI (#31365, and #31761 by @Gargron) - Change preview card processing to ignore `undefined` as canonical url (#31882 by @oneiros) -- Change embedded posts to use web UI (#31766 by @Gargron) +- Change embedded posts to use web UI (#31766 and #32135 by @Gargron) - Change inner borders in media galleries in web UI (#31852 by @Gargron) -- Change design of hide media button in web UI (#31807 by @Gargron) +- Change design of media attachments and profile media tab in web UI (#31807, #32048, and #31967 by @Gargron) - Change labels on thread indicators in web UI (#31806 by @Gargron) +- Change label of "Data export" menu item in settings interface (#32099 by @c960657) +- Change responsive break points on navigation panel in web UI (#32034 by @Gargron) +- Change cursor to `not-allowed` on disabled buttons (#32076 by @mjankowski) +- Change OAuth authorization prompt to not refer to apps as “third-party” (#32005 by @Gargron) +- Change Mastodon to issue correct HTTP signatures by default (#31994 by @ClearlyClaire) +- Change zoom icon in web UI (#29683 by @Gargron) +- Change directory page to use URL query strings for options (#31980, #31977 and #31984 by @ClearlyClaire and @renchap) - Change report action buttons to be disabled when action has already been taken (#31773, #31822, and #31899 by @ClearlyClaire and @ThisIsMissEm) - Change width of columns in advanced web UI (#31762 by @Gargron) - Change design of unread conversations in web UI (#31763 by @Gargron) @@ -254,6 +265,7 @@ The following changelog entries focus on changes visible to users, administrator ### Removed +- Remove unused E2EE messaging code and related `crypto` OAuth scope (#31193, #31945, #31963, and #31964 by @ClearlyClaire and @mjankowski) - Remove StatsD integration (replaced by OpenTelemetry) (#30240 by @mjankowski) - Remove `CacheBuster` default options (#30718 by @mjankowski) - Remove home marker updates from the Web UI (#22721 by @davbeck)\ @@ -269,9 +281,21 @@ The following changelog entries focus on changes visible to users, administrator - Fix log out from user menu not working on Safari (#31402 by @renchap) - Fix various issues when in link preview card generation (#28748, #30017, #30362, #30173, #30853, #30929, #30933, #30957, #30987, and #31144 by @adamniedzielski, @oneiros, @phocks, @timothyjrogers, and @tribela) - Fix handling of missing links in Webfinger responses (#31030 by @adamniedzielski) +- Fix error when accepting an appeal for sensitive posts deleted in the meantime (#32037 by @ClearlyClaire) +- Fix error when encountering reblog of deleted post in feed rebuild (#32001 by @ClearlyClaire) +- Fix Safari browser glitch related to horizontal scrolling (#31960 by @Gargron) +- Fix too many requests caused by relationship look-ups in web UI (#32042 by @Gargron) +- Fix links for reblogs in moderation interface (#31979 by @ClearlyClaire) +- Fix the appearance of avatars when they do not load (#31966 by @renchap) +- Fix spurious error notifications for aborted requests in web UI (#31952 by @c960657) - Fix HTTP 500 error in `/api/v1/polls/:id/votes` when required `choices` parameter is missing (#25598 by @danielmbrasil) - Fix security context sometimes not being added in LD-Signed activities (#31871 by @ClearlyClaire) - Fix cross-origin loading of `inert.css` polyfill (#30687 by @louis77) +- Fix wrapping in dashboard quick access buttons (#32043 by @renchap) +- Fix recently used tags hint being displayed in profile edition page when there is none (#32120 by @mjankowski) +- Fix checkbox lists on narrow screens in the settings interface (#32112 by @mjankowski) +- Fix the position of status action buttons being affected by interaction counters (#32084 by @renchap) +- Fix the summary of converted ActivityPub object types to be treated as HTML (#28629 by @Menrath) - Fix cutoff of instance name in sign-up form (#30598 by @oneiros) - Fix invalid date searches returning 503 errors (#31526 by @notchairmk) - Fix invalid `visibility` values in `POST /api/v1/statuses` returning 500 errors (#31571 by @c960657) @@ -285,7 +309,7 @@ The following changelog entries focus on changes visible to users, administrator - Fix “Redirect URI” field not being marked as required in “New application” form (#30311 by @ThisIsMissEm) - Fix right-to-left text in preview cards (#30930 by @ClearlyClaire) - Fix rack attack `match_type` value typo in logging config (#30514 by @mjankowski) -- Fix various cases of duplicate, missing, or inconsistent borders or scrollbar styles (#31068, #31286, #31268, #31275, #31284, #31305, #31346, #31372, #31373, #31389, #31432, #31391, and #31445 by @valtlai and @vmstan) +- Fix various cases of duplicate, missing, or inconsistent borders or scrollbar styles (#31068, #31286, #31268, #31275, #31284, #31305, #31346, #31372, #31373, #31389, #31432, #31391, #31445 and #32091 by @ClearlyClaire, @valtlai and @vmstan) - Fix race condition in `POST /api/v1/push/subscription` (#30166 by @ClearlyClaire) - Fix post deletion not being delayed when those are part of an account warning (#30163 by @ClearlyClaire) - Fix rendering error on `/start` when not logged in (#30023 by @timothyjrogers) diff --git a/docker-compose.yml b/docker-compose.yml index c4e8cb73748122..41876d26f99e23 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -59,7 +59,7 @@ services: web: # You can uncomment the following line if you want to not use the prebuilt image, for example if you have local code changes # build: . - image: ghcr.io/mastodon/mastodon:v4.3.0-beta.2 + image: ghcr.io/mastodon/mastodon:v4.3.0-rc.1 restart: always env_file: .env.production command: bundle exec puma -C config/puma.rb @@ -83,7 +83,7 @@ services: # build: # dockerfile: ./streaming/Dockerfile # context: . - image: ghcr.io/mastodon/mastodon-streaming:v4.3.0-beta.2 + image: ghcr.io/mastodon/mastodon-streaming:v4.3.0-rc.1 restart: always env_file: .env.production command: node ./streaming/index.js @@ -101,7 +101,7 @@ services: sidekiq: build: . - image: ghcr.io/mastodon/mastodon:v4.3.0-beta.2 + image: ghcr.io/mastodon/mastodon:v4.3.0-rc.1 restart: always env_file: .env.production command: bundle exec sidekiq diff --git a/lib/mastodon/version.rb b/lib/mastodon/version.rb index 9b6ea2e4e56c27..8ee37c683ffaf6 100644 --- a/lib/mastodon/version.rb +++ b/lib/mastodon/version.rb @@ -17,7 +17,7 @@ def patch end def default_prerelease - 'beta.2' + 'rc.1' end def prerelease From 07cd1fd1efe0c47e4738189297a484cc2662aebf Mon Sep 17 00:00:00 2001 From: Claire Date: Mon, 30 Sep 2024 19:32:23 +0200 Subject: [PATCH 28/28] Support translation branches in Crowdin (#32174) --- .github/workflows/crowdin-download-stable.yml | 69 +++++++++++++++++++ .github/workflows/crowdin-upload.yml | 2 +- 2 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/crowdin-download-stable.yml diff --git a/.github/workflows/crowdin-download-stable.yml b/.github/workflows/crowdin-download-stable.yml new file mode 100644 index 00000000000000..c0b402a5b9300e --- /dev/null +++ b/.github/workflows/crowdin-download-stable.yml @@ -0,0 +1,69 @@ +name: Crowdin / Download translations (stable branches) +on: + workflow_dispatch: + +permissions: + contents: write + pull-requests: write + +jobs: + download-translations-stable: + runs-on: ubuntu-latest + if: github.repository == 'mastodon/mastodon' + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Increase Git http.postBuffer + # This is needed due to a bug in Ubuntu's cURL version? + # See https://github.com/orgs/community/discussions/55820 + run: | + git config --global http.version HTTP/1.1 + git config --global http.postBuffer 157286400 + + # Download the translation files from Crowdin + - name: crowdin action + uses: crowdin/github-action@v2 + with: + upload_sources: false + upload_translations: false + download_translations: true + crowdin_branch_name: ${{ github.base_ref || github.ref_name }} + push_translations: false + create_pull_request: false + env: + CROWDIN_PROJECT_ID: ${{ vars.CROWDIN_PROJECT_ID }} + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} + + # As the files are extracted from a Docker container, they belong to root:root + # We need to fix this before the next steps + - name: Fix file permissions + run: sudo chown -R runner:docker . + + # This is needed to run the normalize step + - name: Set up Ruby environment + uses: ./.github/actions/setup-ruby + + - name: Run i18n normalize task + run: bundle exec i18n-tasks normalize + + # Create or update the pull request + - name: Create Pull Request + uses: peter-evans/create-pull-request@v7.0.1 + with: + commit-message: 'New Crowdin translations' + title: 'New Crowdin Translations for ${{ github.base_ref || github.ref_name }} (automated)' + author: 'GitHub Actions ' + body: | + New Crowdin translations, automated with GitHub Actions + + See `.github/workflows/crowdin-download.yml` + + This PR will be updated every day with new translations. + + Due to a limitation in GitHub Actions, checks are not running on this PR without manual action. + If you want to run the checks, then close and re-open it. + branch: i18n/crowdin/translations-${{ github.base_ref || github.ref_name }} + base: ${{ github.base_ref || github.ref_name }} + labels: i18n diff --git a/.github/workflows/crowdin-upload.yml b/.github/workflows/crowdin-upload.yml index b7a0a2b8199e06..62ad1150bca414 100644 --- a/.github/workflows/crowdin-upload.yml +++ b/.github/workflows/crowdin-upload.yml @@ -31,7 +31,7 @@ jobs: upload_sources: true upload_translations: false download_translations: false - crowdin_branch_name: main + crowdin_branch_name: ${{ github.base_ref || github.ref_name }} env: CROWDIN_PROJECT_ID: ${{ vars.CROWDIN_PROJECT_ID }}