From e991a3c757f7e27d1d03ec1159c3f5eed5eb39ff Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 14 Apr 2025 08:52:39 +0200 Subject: [PATCH 01/15] fix(deps): update dependency jsdom to v26.1.0 (#34446) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 49 ++++++++++++++++++++++++------------------------- 1 file changed, 24 insertions(+), 25 deletions(-) diff --git a/yarn.lock b/yarn.lock index 5ad52872a3..7a505f8f1f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7274,10 +7274,10 @@ __metadata: languageName: node linkType: hard -"decimal.js@npm:^10.4.2, decimal.js@npm:^10.4.3": - version: 10.4.3 - resolution: "decimal.js@npm:10.4.3" - checksum: 10c0/6d60206689ff0911f0ce968d40f163304a6c1bc739927758e6efc7921cfa630130388966f16bf6ef6b838cb33679fbe8e7a78a2f3c478afce841fd55ac8fb8ee +"decimal.js@npm:^10.4.2, decimal.js@npm:^10.4.3, decimal.js@npm:^10.5.0": + version: 10.5.0 + resolution: "decimal.js@npm:10.5.0" + checksum: 10c0/785c35279df32762143914668df35948920b6c1c259b933e0519a69b7003fc0a5ed2a766b1e1dda02574450c566b21738a45f15e274b47c2ac02072c0d1f3ac3 languageName: node linkType: hard @@ -8996,7 +8996,7 @@ __metadata: languageName: node linkType: hard -"form-data@npm:^4.0.0, form-data@npm:^4.0.1": +"form-data@npm:^4.0.0": version: 4.0.1 resolution: "form-data@npm:4.0.1" dependencies: @@ -11373,13 +11373,12 @@ __metadata: linkType: hard "jsdom@npm:^26.0.0": - version: 26.0.0 - resolution: "jsdom@npm:26.0.0" + version: 26.1.0 + resolution: "jsdom@npm:26.1.0" dependencies: cssstyle: "npm:^4.2.1" data-urls: "npm:^5.0.0" - decimal.js: "npm:^10.4.3" - form-data: "npm:^4.0.1" + decimal.js: "npm:^10.5.0" html-encoding-sniffer: "npm:^4.0.0" http-proxy-agent: "npm:^7.0.2" https-proxy-agent: "npm:^7.0.6" @@ -11389,12 +11388,12 @@ __metadata: rrweb-cssom: "npm:^0.8.0" saxes: "npm:^6.0.0" symbol-tree: "npm:^3.2.4" - tough-cookie: "npm:^5.0.0" + tough-cookie: "npm:^5.1.1" w3c-xmlserializer: "npm:^5.0.0" webidl-conversions: "npm:^7.0.0" whatwg-encoding: "npm:^3.1.1" whatwg-mimetype: "npm:^4.0.0" - whatwg-url: "npm:^14.1.0" + whatwg-url: "npm:^14.1.1" ws: "npm:^8.18.0" xml-name-validator: "npm:^5.0.0" peerDependencies: @@ -11402,7 +11401,7 @@ __metadata: peerDependenciesMeta: canvas: optional: true - checksum: 10c0/e48725ba4027edcfc9bca5799eaec72c6561ecffe3675a8ff87fe9c3541ca4ff9f82b4eff5b3d9c527302da0d859b2f60e9364347a5d42b77f5c76c436c569dc + checksum: 10c0/5b14a5bc32ce077a06fb42d1ab95b1191afa5cbbce8859e3b96831c5143becbbcbf0511d4d4934e922d2901443ced2cdc3b734c1cf30b5f73b3e067ce457d0f4 languageName: node linkType: hard @@ -17446,12 +17445,12 @@ __metadata: languageName: node linkType: hard -"tough-cookie@npm:^5.0.0": - version: 5.0.0 - resolution: "tough-cookie@npm:5.0.0" +"tough-cookie@npm:^5.1.1": + version: 5.1.2 + resolution: "tough-cookie@npm:5.1.2" dependencies: tldts: "npm:^6.1.32" - checksum: 10c0/4a69c885bf6f45c5a64e60262af99e8c0d58a33bd3d0ce5da62121eeb9c00996d0128a72df8fc4614cbde59cc8b70aa3e21e4c3c98c2bbde137d7aba7fa00124 + checksum: 10c0/5f95023a47de0f30a902bba951664b359725597d8adeabc66a0b93a931c3af801e1e697dae4b8c21a012056c0ea88bd2bf4dfe66b2adcf8e2f42cd9796fe0626 languageName: node linkType: hard @@ -17480,12 +17479,12 @@ __metadata: languageName: node linkType: hard -"tr46@npm:^5.0.0": - version: 5.0.0 - resolution: "tr46@npm:5.0.0" +"tr46@npm:^5.1.0": + version: 5.1.0 + resolution: "tr46@npm:5.1.0" dependencies: punycode: "npm:^2.3.1" - checksum: 10c0/1521b6e7bbc8adc825c4561480f9fe48eb2276c81335eed9fa610aa4c44a48a3221f78b10e5f18b875769eb3413e30efbf209ed556a17a42aa8d690df44b7bee + checksum: 10c0/d761f7144e0cb296187674ef245c74f761e334d7cf25ca73ef60e4c72c097c75051031c093fa1a2fee04b904977b316716a7915854bcae8fb1a371746513cbe8 languageName: node linkType: hard @@ -18520,13 +18519,13 @@ __metadata: languageName: node linkType: hard -"whatwg-url@npm:^14.0.0, whatwg-url@npm:^14.1.0": - version: 14.1.0 - resolution: "whatwg-url@npm:14.1.0" +"whatwg-url@npm:^14.0.0, whatwg-url@npm:^14.1.1": + version: 14.2.0 + resolution: "whatwg-url@npm:14.2.0" dependencies: - tr46: "npm:^5.0.0" + tr46: "npm:^5.1.0" webidl-conversions: "npm:^7.0.0" - checksum: 10c0/f00104f1c67ce086ba8ffedab529cbbd9aefd8c0a6555320026de7aeff31f91c38680f95818b140a7c9cc657cde3781e567835dda552ddb1e2b8faaba0ac3cb6 + checksum: 10c0/f746fc2f4c906607d09537de1227b13f9494c171141e5427ed7d2c0dd0b6a48b43d8e71abaae57d368d0c06b673fd8ec63550b32ad5ed64990c7b0266c2b4272 languageName: node linkType: hard From 0f26ab9eee28dd034f10031a2400419cf2f61a29 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 14 Apr 2025 08:52:43 +0200 Subject: [PATCH 02/15] chore(deps): update dependency csv to v3.3.4 (#34445) 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 1ed4b71318..f12647a403 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -170,7 +170,7 @@ GEM crass (1.0.6) css_parser (1.21.1) addressable - csv (3.3.3) + csv (3.3.4) database_cleaner-active_record (2.2.0) activerecord (>= 5.a) database_cleaner-core (~> 2.0.0) From 20f4b7638949c9d953cb99f7807cce348cad3dbb Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 14 Apr 2025 09:07:34 +0200 Subject: [PATCH 03/15] fix(deps): update dependency ioredis to v5.6.1 (#34442) 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 7a505f8f1f..a0cb7eb717 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10092,8 +10092,8 @@ __metadata: linkType: hard "ioredis@npm:^5.3.2": - version: 5.6.0 - resolution: "ioredis@npm:5.6.0" + version: 5.6.1 + resolution: "ioredis@npm:5.6.1" dependencies: "@ioredis/commands": "npm:^1.1.1" cluster-key-slot: "npm:^1.1.0" @@ -10104,7 +10104,7 @@ __metadata: redis-errors: "npm:^1.2.0" redis-parser: "npm:^3.0.0" standard-as-callback: "npm:^2.1.0" - checksum: 10c0/a885e5146640fc448706871290ef424ffa39af561f7ee3cf1590085209a509f85e99082bdaaf3cd32fa66758aea3fc2055d1109648ddca96fac4944bf2092c30 + checksum: 10c0/26ae49cf448e807e454a9bdea5a9dfdcf669e2fdbf2df341900a0fb693c5662fea7e39db3227ce8972d1bda0ba7da9b7410e5163b12d8878a579548d847220ac languageName: node linkType: hard From 3d2f47498e9a09140f9e73b5196aac1ab1d7b905 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 14 Apr 2025 09:10:20 +0200 Subject: [PATCH 04/15] fix(deps): update dependency marky to v1.3.0 (#34449) 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 a0cb7eb717..79ffcc5b9e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12000,9 +12000,9 @@ __metadata: linkType: hard "marky@npm:^1.2.5": - version: 1.2.5 - resolution: "marky@npm:1.2.5" - checksum: 10c0/ca8a011f287dab1ac3291df720fc32b366c4cd767347b63722966650405ce71ec6566f71d1e22e1768bf6461a7fd689b9038e7df0fcfb62eacf3a5a6dcac249e + version: 1.3.0 + resolution: "marky@npm:1.3.0" + checksum: 10c0/6619cdb132fdc4f7cd3e2bed6eebf81a38e50ff4b426bbfb354db68731e4adfebf35ebfd7c8e5a6e846cbf9b872588c4f76db25782caee8c1529ec9d483bf98b languageName: node linkType: hard From 6d94c9f4e70008fcff09072985a3c058f362251f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 14 Apr 2025 09:17:58 +0200 Subject: [PATCH 05/15] New Crowdin Translations (automated) (#34437) Co-authored-by: GitHub Actions --- app/javascript/mastodon/locales/bg.json | 7 ++ app/javascript/mastodon/locales/ca.json | 5 + app/javascript/mastodon/locales/cs.json | 7 ++ app/javascript/mastodon/locales/da.json | 3 + app/javascript/mastodon/locales/de.json | 3 + app/javascript/mastodon/locales/es-AR.json | 3 + app/javascript/mastodon/locales/es-MX.json | 3 + app/javascript/mastodon/locales/es.json | 3 + app/javascript/mastodon/locales/fi.json | 3 + app/javascript/mastodon/locales/fo.json | 3 + app/javascript/mastodon/locales/fr-CA.json | 11 ++- app/javascript/mastodon/locales/fr.json | 11 ++- app/javascript/mastodon/locales/gl.json | 3 + app/javascript/mastodon/locales/he.json | 7 ++ app/javascript/mastodon/locales/hu.json | 3 + app/javascript/mastodon/locales/is.json | 3 + app/javascript/mastodon/locales/kab.json | 8 +- app/javascript/mastodon/locales/ko.json | 8 ++ app/javascript/mastodon/locales/ms.json | 102 ++++++++++++++------- app/javascript/mastodon/locales/nan.json | 69 ++++++++++++++ app/javascript/mastodon/locales/nl.json | 3 + app/javascript/mastodon/locales/ru.json | 2 + app/javascript/mastodon/locales/sk.json | 4 + app/javascript/mastodon/locales/sq.json | 3 + app/javascript/mastodon/locales/tr.json | 3 + app/javascript/mastodon/locales/uk.json | 1 + app/javascript/mastodon/locales/vi.json | 3 + app/javascript/mastodon/locales/zh-CN.json | 14 ++- app/javascript/mastodon/locales/zh-TW.json | 3 + config/locales/cs.yml | 1 + config/locales/da.yml | 1 + config/locales/de.yml | 2 + config/locales/doorkeeper.ms.yml | 10 +- config/locales/es-AR.yml | 1 + config/locales/es-MX.yml | 1 + config/locales/es.yml | 3 +- config/locales/fi.yml | 1 + config/locales/fo.yml | 1 + config/locales/fr-CA.yml | 9 ++ config/locales/fr.yml | 9 ++ config/locales/gl.yml | 1 + config/locales/he.yml | 1 + config/locales/hu.yml | 1 + config/locales/is.yml | 1 + config/locales/ms.yml | 14 ++- config/locales/nl.yml | 1 + config/locales/sq.yml | 1 + config/locales/tr.yml | 1 + config/locales/uk.yml | 1 + config/locales/vi.yml | 1 + config/locales/zh-CN.yml | 25 +++++ config/locales/zh-TW.yml | 1 + 52 files changed, 341 insertions(+), 48 deletions(-) diff --git a/app/javascript/mastodon/locales/bg.json b/app/javascript/mastodon/locales/bg.json index 5c032755ff..2e4c8593d4 100644 --- a/app/javascript/mastodon/locales/bg.json +++ b/app/javascript/mastodon/locales/bg.json @@ -27,6 +27,9 @@ "account.edit_profile": "Редактиране на профила", "account.enable_notifications": "Известяване при публикуване от @{name}", "account.endorse": "Представи в профила", + "account.featured": "Препоръчано", + "account.featured.hashtags": "Хаштагове", + "account.featured.posts": "Публикации", "account.featured_tags.last_status_at": "Последна публикация на {date}", "account.featured_tags.last_status_never": "Няма публикации", "account.follow": "Последване", @@ -293,6 +296,7 @@ "emoji_button.search_results": "Резултати от търсене", "emoji_button.symbols": "Символи", "emoji_button.travel": "Пътуване и места", + "empty_column.account_featured": "Списъкът е празен", "empty_column.account_hides_collections": "Този потребител е избрал да не дава тази информация", "empty_column.account_suspended": "Спрян акаунт", "empty_column.account_timeline": "Тук няма публикации!", @@ -377,6 +381,8 @@ "generic.saved": "Запазено", "getting_started.heading": "Първи стъпки", "hashtag.admin_moderation": "Отваряне на модериращия интерфейс за #{name}", + "hashtag.browse": "Разглеждане на публикации в #{hashtag}", + "hashtag.browse_from_account": "Разглеждане на публикации от @{name} из #{hashtag}", "hashtag.column_header.tag_mode.all": "и {additional}", "hashtag.column_header.tag_mode.any": "или {additional}", "hashtag.column_header.tag_mode.none": "без {additional}", @@ -390,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} публикация} other {{counter} публикации}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} публикация} other {{counter} публикации}} днес", "hashtag.follow": "Следване на хаштаг", + "hashtag.mute": "Заглушаване на #{hashtag}", "hashtag.unfollow": "Спиране на следване на хаштаг", "hashtags.and_other": "…и {count, plural, other {# още}}", "hints.profiles.followers_may_be_missing": "Последователи за този профил може да липсват.", diff --git a/app/javascript/mastodon/locales/ca.json b/app/javascript/mastodon/locales/ca.json index d6ebbbc1d8..60e3066d0e 100644 --- a/app/javascript/mastodon/locales/ca.json +++ b/app/javascript/mastodon/locales/ca.json @@ -27,6 +27,9 @@ "account.edit_profile": "Edita el perfil", "account.enable_notifications": "Notifica'm els tuts de @{name}", "account.endorse": "Recomana en el perfil", + "account.featured": "Destacat", + "account.featured.hashtags": "Etiquetes", + "account.featured.posts": "Publicacions", "account.featured_tags.last_status_at": "Darrer tut el {date}", "account.featured_tags.last_status_never": "No hi ha tuts", "account.follow": "Segueix", @@ -293,6 +296,7 @@ "emoji_button.search_results": "Resultats de la cerca", "emoji_button.symbols": "Símbols", "emoji_button.travel": "Viatges i llocs", + "empty_column.account_featured": "Aquesta llista està buida", "empty_column.account_hides_collections": "Aquest usuari ha decidit no mostrar aquesta informació", "empty_column.account_suspended": "Compte suspès", "empty_column.account_timeline": "No hi ha tuts aquí!", @@ -390,6 +394,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} tut} other {{counter} tuts}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} tut} other {{counter} tuts}} avui", "hashtag.follow": "Segueix l'etiqueta", + "hashtag.mute": "Silencia #{hashtag}", "hashtag.unfollow": "Deixa de seguir l'etiqueta", "hashtags.and_other": "…i {count, plural, other {# més}}", "hints.profiles.followers_may_be_missing": "Es poden haver perdut seguidors d'aquest perfil.", diff --git a/app/javascript/mastodon/locales/cs.json b/app/javascript/mastodon/locales/cs.json index 25657f9cbf..0d8653d412 100644 --- a/app/javascript/mastodon/locales/cs.json +++ b/app/javascript/mastodon/locales/cs.json @@ -27,6 +27,9 @@ "account.edit_profile": "Upravit profil", "account.enable_notifications": "Oznamovat mi příspěvky @{name}", "account.endorse": "Zvýraznit na profilu", + "account.featured": "Doporučené", + "account.featured.hashtags": "Hashtagy", + "account.featured.posts": "Příspěvky", "account.featured_tags.last_status_at": "Poslední příspěvek {date}", "account.featured_tags.last_status_never": "Žádné příspěvky", "account.follow": "Sledovat", @@ -293,6 +296,7 @@ "emoji_button.search_results": "Výsledky hledání", "emoji_button.symbols": "Symboly", "emoji_button.travel": "Cestování a místa", + "empty_column.account_featured": "Tento seznam je prázdný", "empty_column.account_hides_collections": "Tento uživatel se rozhodl tuto informaci nezveřejňovat", "empty_column.account_suspended": "Účet je pozastaven", "empty_column.account_timeline": "Nejsou tu žádné příspěvky!", @@ -377,6 +381,8 @@ "generic.saved": "Uloženo", "getting_started.heading": "Začínáme", "hashtag.admin_moderation": "Otevřít moderátorské rozhraní pro #{name}", + "hashtag.browse": "Procházet příspěvky na #{hashtag}", + "hashtag.browse_from_account": "Procházet příspěvky od @{name} v #{hashtag}", "hashtag.column_header.tag_mode.all": "a {additional}", "hashtag.column_header.tag_mode.any": "nebo {additional}", "hashtag.column_header.tag_mode.none": "bez {additional}", @@ -390,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} příspěvek} few {{counter} příspěvky} other {{counter} příspěvků}}", "hashtag.counter_by_uses_today": "Dnes {count, plural, one {{counter} příspěvek} few {{counter} příspěvky} other {{counter} příspěvků}}", "hashtag.follow": "Sledovat hashtag", + "hashtag.mute": "Skrýt #{hashtag}", "hashtag.unfollow": "Přestat sledovat hashtag", "hashtags.and_other": "…a {count, plural, one {# další} few {# další} other {# dalších}}", "hints.profiles.followers_may_be_missing": "Sledující mohou pro tento profil chybět.", diff --git a/app/javascript/mastodon/locales/da.json b/app/javascript/mastodon/locales/da.json index b72e40eaf7..e1d8e7aec2 100644 --- a/app/javascript/mastodon/locales/da.json +++ b/app/javascript/mastodon/locales/da.json @@ -381,6 +381,8 @@ "generic.saved": "Gemt", "getting_started.heading": "Startmenu", "hashtag.admin_moderation": "Åbn modereringsbrugerflade for #{name}", + "hashtag.browse": "Gennemse indlæg i #{hashtag}", + "hashtag.browse_from_account": "Gennemse indlæg fra @{name} i #{hashtag}", "hashtag.column_header.tag_mode.all": "og {additional}", "hashtag.column_header.tag_mode.any": "eller {additional}", "hashtag.column_header.tag_mode.none": "uden {additional}", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} indlæg} other {{counter} indlæg}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} indlæg} other {{counter} indlæg}} i dag", "hashtag.follow": "Følg etiket", + "hashtag.mute": "Tavsgør #{hashtag}", "hashtag.unfollow": "Stop med at følge etiket", "hashtags.and_other": "…og {count, plural, one {}other {# flere}}", "hints.profiles.followers_may_be_missing": "Der kan mangle følgere for denne profil.", diff --git a/app/javascript/mastodon/locales/de.json b/app/javascript/mastodon/locales/de.json index 943c5ae8b2..0d5f2f2104 100644 --- a/app/javascript/mastodon/locales/de.json +++ b/app/javascript/mastodon/locales/de.json @@ -381,6 +381,8 @@ "generic.saved": "Gespeichert", "getting_started.heading": "Auf gehts!", "hashtag.admin_moderation": "#{name} moderieren", + "hashtag.browse": "Beiträge mit #{hashtag} suchen", + "hashtag.browse_from_account": "Beiträge von @{name} mit #{hashtag} suchen", "hashtag.column_header.tag_mode.all": "und {additional}", "hashtag.column_header.tag_mode.any": "oder {additional}", "hashtag.column_header.tag_mode.none": "ohne {additional}", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} Beitrag} other {{counter} Beiträge}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} Beitrag} other {{counter} Beiträge}} heute", "hashtag.follow": "Hashtag folgen", + "hashtag.mute": "#{hashtag} stummschalten", "hashtag.unfollow": "Hashtag entfolgen", "hashtags.and_other": "… und {count, plural, one{# weiterer} other {# weitere}}", "hints.profiles.followers_may_be_missing": "Möglicherweise werden für dieses Profil nicht alle Follower angezeigt.", diff --git a/app/javascript/mastodon/locales/es-AR.json b/app/javascript/mastodon/locales/es-AR.json index cc694ebfe7..bf6d620474 100644 --- a/app/javascript/mastodon/locales/es-AR.json +++ b/app/javascript/mastodon/locales/es-AR.json @@ -381,6 +381,8 @@ "generic.saved": "Guardado", "getting_started.heading": "Inicio de Mastodon", "hashtag.admin_moderation": "Abrir interface de moderación para #{name}", + "hashtag.browse": "Ver publicaciones con #{hashtag}", + "hashtag.browse_from_account": "Ver publicaciones de @{name} con #{hashtag}", "hashtag.column_header.tag_mode.all": "y {additional}", "hashtag.column_header.tag_mode.any": "o {additional}", "hashtag.column_header.tag_mode.none": "sin {additional}", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} mensaje} other {{counter} mensajes}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} mensaje} other {{counter} mensajes}} hoy", "hashtag.follow": "Seguir etiqueta", + "hashtag.mute": "Silenciar #{hashtag}", "hashtag.unfollow": "Dejar de seguir etiqueta", "hashtags.and_other": "…y {count, plural, other {# más}}", "hints.profiles.followers_may_be_missing": "Es posible que falten seguidores de este perfil.", diff --git a/app/javascript/mastodon/locales/es-MX.json b/app/javascript/mastodon/locales/es-MX.json index 45b002ce0f..69e20fc016 100644 --- a/app/javascript/mastodon/locales/es-MX.json +++ b/app/javascript/mastodon/locales/es-MX.json @@ -381,6 +381,8 @@ "generic.saved": "Guardado", "getting_started.heading": "Primeros pasos", "hashtag.admin_moderation": "Abrir interfaz de moderación para #{name}", + "hashtag.browse": "Explorar publicaciones en #{hashtag}", + "hashtag.browse_from_account": "Explorar publicaciones desde @{name} en #{hashtag}", "hashtag.column_header.tag_mode.all": "y {additional}", "hashtag.column_header.tag_mode.any": "o {additional}", "hashtag.column_header.tag_mode.none": "sin {additional}", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} publicación} other {{counter} publicaciones}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} publicación} other {{counter} publicaciones}} hoy", "hashtag.follow": "Seguir etiqueta", + "hashtag.mute": "Silenciar #{hashtag}", "hashtag.unfollow": "Dejar de seguir etiqueta", "hashtags.and_other": "…y {count, plural, other {# más}}", "hints.profiles.followers_may_be_missing": "Puede que no se muestren todos los seguidores de este perfil.", diff --git a/app/javascript/mastodon/locales/es.json b/app/javascript/mastodon/locales/es.json index 2575d901f5..4f9d91ce11 100644 --- a/app/javascript/mastodon/locales/es.json +++ b/app/javascript/mastodon/locales/es.json @@ -381,6 +381,8 @@ "generic.saved": "Guardado", "getting_started.heading": "Primeros pasos", "hashtag.admin_moderation": "Abrir interfaz de moderación para #{name}", + "hashtag.browse": "Explorar publicaciones en #{hashtag}", + "hashtag.browse_from_account": "Explorar publicaciones desde @{name} en #{hashtag}", "hashtag.column_header.tag_mode.all": "y {additional}", "hashtag.column_header.tag_mode.any": "o {additional}", "hashtag.column_header.tag_mode.none": "sin {additional}", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} publicación} other {{counter} publicaciones}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} publicación} other {{counter} publicaciones}} hoy", "hashtag.follow": "Seguir etiqueta", + "hashtag.mute": "Silenciar #{hashtag}", "hashtag.unfollow": "Dejar de seguir etiqueta", "hashtags.and_other": "…y {count, plural, other {# más}}", "hints.profiles.followers_may_be_missing": "Puede que no se muestren todos los seguidores de este perfil.", diff --git a/app/javascript/mastodon/locales/fi.json b/app/javascript/mastodon/locales/fi.json index b33e9f6163..cc42780f94 100644 --- a/app/javascript/mastodon/locales/fi.json +++ b/app/javascript/mastodon/locales/fi.json @@ -380,6 +380,8 @@ "generic.saved": "Tallennettu", "getting_started.heading": "Näin pääset alkuun", "hashtag.admin_moderation": "Avaa tunnisteen #{name} moderointinäkymä", + "hashtag.browse": "Selaa julkaisuja tunnisteella #{hashtag}", + "hashtag.browse_from_account": "Selaa julkaisuja käyttäjältä @{name} tunnisteella #{hashtag}", "hashtag.column_header.tag_mode.all": "ja {additional}", "hashtag.column_header.tag_mode.any": "tai {additional}", "hashtag.column_header.tag_mode.none": "ilman {additional}", @@ -393,6 +395,7 @@ "hashtag.counter_by_uses": "{count, plural, one{{counter} julkaisu} other {{counter} julkaisua}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} julkaisu} other {{counter} julkaisua}} tänään", "hashtag.follow": "Seuraa aihetunnistetta", + "hashtag.mute": "Mykistä #{hashtag}", "hashtag.unfollow": "Lopeta aihetunnisteen seuraaminen", "hashtags.and_other": "…ja {count, plural, other {# lisää}}", "hints.profiles.followers_may_be_missing": "Tämän profiilin seuraajia saattaa puuttua.", diff --git a/app/javascript/mastodon/locales/fo.json b/app/javascript/mastodon/locales/fo.json index 82939adcce..b472fd8bd2 100644 --- a/app/javascript/mastodon/locales/fo.json +++ b/app/javascript/mastodon/locales/fo.json @@ -381,6 +381,8 @@ "generic.saved": "Goymt", "getting_started.heading": "At byrja", "hashtag.admin_moderation": "Lat umsjónarmarkamót upp fyri #{name}", + "hashtag.browse": "Blaða gjøgnum postar í #{hashtag}", + "hashtag.browse_from_account": "Blaða gjøgnum postar frá @{name} í #{hashtag}", "hashtag.column_header.tag_mode.all": "og {additional}", "hashtag.column_header.tag_mode.any": "ella {additional}", "hashtag.column_header.tag_mode.none": "uttan {additional}", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} postur} other {{counter} postar}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} postur} other {{counter} postar}} í dag", "hashtag.follow": "Fylg frámerki", + "hashtag.mute": "Doyv @#{hashtag}", "hashtag.unfollow": "Gevst at fylgja frámerki", "hashtags.and_other": "…og {count, plural, other {# afturat}}", "hints.profiles.followers_may_be_missing": "Fylgjarar hjá hesum vanganum kunnu mangla.", diff --git a/app/javascript/mastodon/locales/fr-CA.json b/app/javascript/mastodon/locales/fr-CA.json index ad71d98ff8..f63a1d2cba 100644 --- a/app/javascript/mastodon/locales/fr-CA.json +++ b/app/javascript/mastodon/locales/fr-CA.json @@ -27,6 +27,9 @@ "account.edit_profile": "Modifier le profil", "account.enable_notifications": "Me notifier quand @{name} publie", "account.endorse": "Inclure sur profil", + "account.featured": "En vedette", + "account.featured.hashtags": "Hashtags", + "account.featured.posts": "Messages", "account.featured_tags.last_status_at": "Dernière publication {date}", "account.featured_tags.last_status_never": "Aucune publication", "account.follow": "Suivre", @@ -64,6 +67,7 @@ "account.statuses_counter": "{count, plural, one {{counter} message} other {{counter} messages}}", "account.unblock": "Débloquer @{name}", "account.unblock_domain": "Débloquer le domaine {domain}", + "account.unblock_domain_short": "Débloquer", "account.unblock_short": "Débloquer", "account.unendorse": "Ne pas inclure sur profil", "account.unfollow": "Ne plus suivre", @@ -292,6 +296,7 @@ "emoji_button.search_results": "Résultats", "emoji_button.symbols": "Symboles", "emoji_button.travel": "Voyage et lieux", + "empty_column.account_featured": "Cette liste est vide", "empty_column.account_hides_collections": "Cet utilisateur·ice préfère ne pas rendre publiques ces informations", "empty_column.account_suspended": "Compte suspendu", "empty_column.account_timeline": "Aucune publication ici!", @@ -904,6 +909,10 @@ "video.expand": "Agrandir la vidéo", "video.fullscreen": "Plein écran", "video.hide": "Masquer la vidéo", + "video.mute": "Couper le son", "video.pause": "Pause", - "video.play": "Lecture" + "video.play": "Lecture", + "video.unmute": "Rétablir le son", + "video.volume_down": "Baisser le volume", + "video.volume_up": "Augmenter le volume" } diff --git a/app/javascript/mastodon/locales/fr.json b/app/javascript/mastodon/locales/fr.json index de653eec8f..f9c616627f 100644 --- a/app/javascript/mastodon/locales/fr.json +++ b/app/javascript/mastodon/locales/fr.json @@ -27,6 +27,9 @@ "account.edit_profile": "Modifier le profil", "account.enable_notifications": "Me notifier quand @{name} publie quelque chose", "account.endorse": "Recommander sur votre profil", + "account.featured": "En vedette", + "account.featured.hashtags": "Hashtags", + "account.featured.posts": "Messages", "account.featured_tags.last_status_at": "Dernier message le {date}", "account.featured_tags.last_status_never": "Aucun message", "account.follow": "Suivre", @@ -64,6 +67,7 @@ "account.statuses_counter": "{count, plural, one {{counter} message} other {{counter} messages}}", "account.unblock": "Débloquer @{name}", "account.unblock_domain": "Débloquer le domaine {domain}", + "account.unblock_domain_short": "Débloquer", "account.unblock_short": "Débloquer", "account.unendorse": "Ne plus recommander sur le profil", "account.unfollow": "Ne plus suivre", @@ -292,6 +296,7 @@ "emoji_button.search_results": "Résultats de la recherche", "emoji_button.symbols": "Symboles", "emoji_button.travel": "Voyage et lieux", + "empty_column.account_featured": "Cette liste est vide", "empty_column.account_hides_collections": "Cet utilisateur·ice préfère ne pas rendre publiques ces informations", "empty_column.account_suspended": "Compte suspendu", "empty_column.account_timeline": "Aucun message ici !", @@ -904,6 +909,10 @@ "video.expand": "Agrandir la vidéo", "video.fullscreen": "Plein écran", "video.hide": "Masquer la vidéo", + "video.mute": "Couper le son", "video.pause": "Pause", - "video.play": "Lecture" + "video.play": "Lecture", + "video.unmute": "Rétablir le son", + "video.volume_down": "Baisser le volume", + "video.volume_up": "Augmenter le volume" } diff --git a/app/javascript/mastodon/locales/gl.json b/app/javascript/mastodon/locales/gl.json index 57e7b5ee5a..50dc2437c6 100644 --- a/app/javascript/mastodon/locales/gl.json +++ b/app/javascript/mastodon/locales/gl.json @@ -381,6 +381,8 @@ "generic.saved": "Gardado", "getting_started.heading": "Primeiros pasos", "hashtag.admin_moderation": "Abrir interface de moderación para ##{name}", + "hashtag.browse": "Ver publicacións con #{hashtag}", + "hashtag.browse_from_account": "Ver as publicacións de @{name} con #{hashtag}", "hashtag.column_header.tag_mode.all": "e {additional}", "hashtag.column_header.tag_mode.any": "ou {additional}", "hashtag.column_header.tag_mode.none": "sen {additional}", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} publicación} other {{counter} publicacións}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} publicación} other {{counter} publicacións}} hoxe", "hashtag.follow": "Seguir cancelo", + "hashtag.mute": "Acalar a #{hashtag}", "hashtag.unfollow": "Deixar de seguir cancelo", "hashtags.and_other": "…e {count, plural, one {}other {# máis}}", "hints.profiles.followers_may_be_missing": "Poderían faltar seguidoras deste perfil.", diff --git a/app/javascript/mastodon/locales/he.json b/app/javascript/mastodon/locales/he.json index 89d36dc962..d1a2c014a5 100644 --- a/app/javascript/mastodon/locales/he.json +++ b/app/javascript/mastodon/locales/he.json @@ -27,6 +27,9 @@ "account.edit_profile": "עריכת פרופיל", "account.enable_notifications": "שלח לי התראות כש@{name} מפרסם", "account.endorse": "קדם את החשבון בפרופיל", + "account.featured": "מומלץ", + "account.featured.hashtags": "תגיות", + "account.featured.posts": "הודעות", "account.featured_tags.last_status_at": "חצרוץ אחרון בתאריך {date}", "account.featured_tags.last_status_never": "אין חצרוצים", "account.follow": "לעקוב", @@ -293,6 +296,7 @@ "emoji_button.search_results": "תוצאות חיפוש", "emoji_button.symbols": "סמלים", "emoji_button.travel": "טיולים ואתרים", + "empty_column.account_featured": "הרשימה ריקה", "empty_column.account_hides_collections": "המשתמש.ת בחר.ה להסתיר מידע זה", "empty_column.account_suspended": "חשבון מושעה", "empty_column.account_timeline": "אין עדיין אף הודעה!", @@ -377,6 +381,8 @@ "generic.saved": "נשמר", "getting_started.heading": "בואו נתחיל", "hashtag.admin_moderation": "פתיחת ממשק פיקוח דיון עבור #{name}", + "hashtag.browse": "קריאת הודעות תחת #{hashtag}", + "hashtag.browse_from_account": "קריאת הודעות מאת @{name} תחת #{hashtag}", "hashtag.column_header.tag_mode.all": "ו- {additional}", "hashtag.column_header.tag_mode.any": "או {additional}", "hashtag.column_header.tag_mode.none": "ללא {additional}", @@ -390,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {הודעה אחת} two {הודעותיים} many {{counter} הודעות} other {{counter} הודעות}}", "hashtag.counter_by_uses_today": "{count, plural, one {הודעה אחת} two {הודעותיים} many {{counter} הודעות} other {{counter} הודעות}} היום", "hashtag.follow": "לעקוב אחרי תגית", + "hashtag.mute": "להשתיק את #{hashtag}", "hashtag.unfollow": "להפסיק לעקוב אחרי תגית", "hashtags.and_other": "…{count, plural,other {ועוד #}}", "hints.profiles.followers_may_be_missing": "יתכן כי עוקבים של פרופיל זה חסרים.", diff --git a/app/javascript/mastodon/locales/hu.json b/app/javascript/mastodon/locales/hu.json index 826dca6137..b311dffa72 100644 --- a/app/javascript/mastodon/locales/hu.json +++ b/app/javascript/mastodon/locales/hu.json @@ -381,6 +381,8 @@ "generic.saved": "Elmentve", "getting_started.heading": "Első lépések", "hashtag.admin_moderation": "Moderációs felület megnyitása a következőhöz: #{name}", + "hashtag.browse": "Bejegyzések ebben: #{hashtag}", + "hashtag.browse_from_account": "@{name} bejegyzéseinek tallózása ebben: #{hashtag}", "hashtag.column_header.tag_mode.all": "és {additional}", "hashtag.column_header.tag_mode.any": "vagy {additional}", "hashtag.column_header.tag_mode.none": "{additional} nélkül", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} bejegyzés} other {{counter} bejegyzés}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} bejegyzés} other {{counter} bejegyzés}} ma", "hashtag.follow": "Hashtag követése", + "hashtag.mute": "#{hashtag} némítása", "hashtag.unfollow": "Hashtag követésének megszüntetése", "hashtags.and_other": "…és {count, plural, other {# további}}", "hints.profiles.followers_may_be_missing": "A profil követői lehet, hogy hiányoznak.", diff --git a/app/javascript/mastodon/locales/is.json b/app/javascript/mastodon/locales/is.json index 5f956c71f6..50f31dd623 100644 --- a/app/javascript/mastodon/locales/is.json +++ b/app/javascript/mastodon/locales/is.json @@ -381,6 +381,8 @@ "generic.saved": "Vistað", "getting_started.heading": "Komast í gang", "hashtag.admin_moderation": "Opna umsjónarviðmót fyrir #{name}", + "hashtag.browse": "Skoða færslur með #{hashtag}", + "hashtag.browse_from_account": "Skoða færslur frá @{name} í #{hashtag}", "hashtag.column_header.tag_mode.all": "og {additional}", "hashtag.column_header.tag_mode.any": "eða {additional}", "hashtag.column_header.tag_mode.none": "án {additional}", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} færsla} other {{counter} færslur}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} færsla} other {{counter} færslur}} í dag", "hashtag.follow": "Fylgjast með myllumerki", + "hashtag.mute": "Þagga #{hashtag}", "hashtag.unfollow": "Hætta að fylgjast með myllumerki", "hashtags.and_other": "…og {count, plural, other {# til viðbótar}}", "hints.profiles.followers_may_be_missing": "Fylgjendur frá þessum notanda gæti vantað.", diff --git a/app/javascript/mastodon/locales/kab.json b/app/javascript/mastodon/locales/kab.json index a29bd33468..bb97a18bd2 100644 --- a/app/javascript/mastodon/locales/kab.json +++ b/app/javascript/mastodon/locales/kab.json @@ -74,7 +74,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", + "alt_text_badge.title": "Aḍris amlellay", "alt_text_modal.add_alt_text": "Rnu aḍris amlellay", "alt_text_modal.add_text_from_image": "Rnu aḍris amlellay seg tugna", "alt_text_modal.cancel": "Semmet", @@ -172,6 +172,7 @@ "confirmations.logout.title": "Tebɣiḍ ad teffɣeḍ ssya?", "confirmations.missing_alt_text.confirm": "Rnu aḍris amlellay", "confirmations.missing_alt_text.secondary": "Suffeɣ akken yebɣu yili", + "confirmations.missing_alt_text.title": "Rnu aḍris amlellay?", "confirmations.mute.confirm": "Sgugem", "confirmations.redraft.confirm": "Kkes sakin ɛiwed tira", "confirmations.reply.confirm": "Err", @@ -259,8 +260,11 @@ "follow_request.reject": "Agi", "follow_suggestions.dismiss": "Dayen ur t-id-skan ara", "follow_suggestions.featured_longer": "Yettwafraned s ufus sɣur agraw n {domain}", + "follow_suggestions.friends_of_friends_longer": "D aɣeṛfan ar wid i teṭṭafareḍ", "follow_suggestions.hints.featured": "Amaɣnu-a ifren-it-id wegraw n {domain} s ufus.", - "follow_suggestions.popular_suggestion_longer": "Yettwassen deg {domain}", + "follow_suggestions.hints.friends_of_friends": "Amaɣnu-a d aɣeṛfan ɣer wid i teṭṭafaṛeḍ.", + "follow_suggestions.popular_suggestion": "Asumer aɣeṛfan", + "follow_suggestions.popular_suggestion_longer": "D aɣeṛfan deg {domain}", "follow_suggestions.view_all": "Wali-ten akk", "follow_suggestions.who_to_follow": "Ad tḍefreḍ?", "followed_tags": "Ihacṭagen yettwaḍfaren", diff --git a/app/javascript/mastodon/locales/ko.json b/app/javascript/mastodon/locales/ko.json index be6e4be7e1..544278e519 100644 --- a/app/javascript/mastodon/locales/ko.json +++ b/app/javascript/mastodon/locales/ko.json @@ -27,6 +27,9 @@ "account.edit_profile": "프로필 편집", "account.enable_notifications": "@{name} 의 게시물 알림 켜기", "account.endorse": "프로필에 추천하기", + "account.featured": "추천", + "account.featured.hashtags": "해시태그", + "account.featured.posts": "게시물", "account.featured_tags.last_status_at": "{date}에 마지막으로 게시", "account.featured_tags.last_status_never": "게시물 없음", "account.follow": "팔로우", @@ -64,6 +67,7 @@ "account.statuses_counter": "{count, plural, other {게시물 {counter}개}}", "account.unblock": "차단 해제", "account.unblock_domain": "도메인 {domain} 차단 해제", + "account.unblock_domain_short": "차단 해제", "account.unblock_short": "차단 해제", "account.unendorse": "프로필에 추천하지 않기", "account.unfollow": "언팔로우", @@ -292,6 +296,7 @@ "emoji_button.search_results": "검색 결과", "emoji_button.symbols": "기호", "emoji_button.travel": "여행과 장소", + "empty_column.account_featured": "목록이 비어있습니다", "empty_column.account_hides_collections": "이 사용자는 이 정보를 사용할 수 없도록 설정했습니다", "empty_column.account_suspended": "계정 정지됨", "empty_column.account_timeline": "이곳에는 게시물이 없습니다!", @@ -376,6 +381,8 @@ "generic.saved": "저장됨", "getting_started.heading": "시작하기", "hashtag.admin_moderation": "#{name}에 대한 중재화면 열기", + "hashtag.browse": "#{hashtag}의 게시물 둘러보기", + "hashtag.browse_from_account": "@{name}의 #{hashtag} 게시물 둘러보기", "hashtag.column_header.tag_mode.all": "및 {additional}", "hashtag.column_header.tag_mode.any": "또는 {additional}", "hashtag.column_header.tag_mode.none": "{additional}를 제외하고", @@ -389,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, other {게시물 {counter}개}}", "hashtag.counter_by_uses_today": "오늘 {count, plural, other {{counter} 개의 게시물}}", "hashtag.follow": "해시태그 팔로우", + "hashtag.mute": "#{hashtag} 뮤트", "hashtag.unfollow": "해시태그 팔로우 해제", "hashtags.and_other": "…및 {count, plural,other {#개}}", "hints.profiles.followers_may_be_missing": "이 프로필의 팔로워 목록은 일부 누락되었을 수 있습니다.", diff --git a/app/javascript/mastodon/locales/ms.json b/app/javascript/mastodon/locales/ms.json index f6a34116e8..483261da6b 100644 --- a/app/javascript/mastodon/locales/ms.json +++ b/app/javascript/mastodon/locales/ms.json @@ -1,5 +1,5 @@ { - "about.blocks": "Pelayan yang disederhanakan", + "about.blocks": "Pelayan yang diselaraskan", "about.contact": "Hubungi:", "about.disclaimer": "Mastodon ialah perisian sumber terbuka percuma, dan merupakan tanda dagangan Mastodon gGmbH.", "about.domain_blocks.no_reason_available": "Sebab tidak tersedia", @@ -11,13 +11,13 @@ "about.not_available": "Maklumat ini belum tersedia pada pelayan ini.", "about.powered_by": "Media sosial terpencar yang dikuasakan oleh {mastodon}", "about.rules": "Peraturan pelayan", - "account.account_note_header": "Personal note", + "account.account_note_header": "Catatan peribadi", "account.add_or_remove_from_list": "Tambah atau Buang dari senarai", - "account.badges.bot": "Bot", + "account.badges.bot": "Automatik", "account.badges.group": "Kumpulan", "account.block": "Sekat @{name}", "account.block_domain": "Sekat domain {domain}", - "account.block_short": "Malay", + "account.block_short": "Sekat", "account.blocked": "Disekat", "account.cancel_follow_request": "Batalkan permintaan ikut", "account.copy": "Salin pautan ke profil", @@ -33,24 +33,24 @@ "account.follow_back": "Ikut balik", "account.followers": "Pengikut", "account.followers.empty": "Belum ada yang mengikuti pengguna ini.", - "account.followers_counter": "{count, plural, one {{counter} Diikuti} other {{counter} Diikuti}}", - "account.following": "Mengikuti", - "account.following_counter": "{count, plural, other {{counter} following}}", + "account.followers_counter": "{count, plural, one {{counter} pengikut} other {{counter} pengikut}}", + "account.following": "Ikutan", + "account.following_counter": "{count, plural, other {{counter} ikutan}}", "account.follows.empty": "Pengguna ini belum mengikuti sesiapa.", "account.go_to_profile": "Pergi ke profil", "account.hide_reblogs": "Sembunyikan galakan daripada @{name}", - "account.in_memoriam": "Dalam Memoriam.", - "account.joined_short": "Menyertai", - "account.languages": "Tukar bahasa yang dilanggan", + "account.in_memoriam": "Dalam kenangan.", + "account.joined_short": "Tarikh penyertaan", + "account.languages": "Tukar bahasa langganan", "account.link_verified_on": "Pemilikan pautan ini telah disemak pada {date}", - "account.locked_info": "Status privasi akaun ini dikunci. Pemiliknya menyaring sendiri siapa yang boleh mengikutinya.", + "account.locked_info": "Taraf privasi akaun ini dikunci. Pemiliknya menyaring sendiri siapa yang boleh mengikutinya.", "account.media": "Media", "account.mention": "Sebut @{name}", "account.moved_to": "{name} telah menandakan bahawa akaun baru mereka sekarang ialah:", - "account.mute": "Bisukan @{name}", - "account.mute_notifications_short": "Redam pemberitahuan", + "account.mute": "Redamkan @{name}", + "account.mute_notifications_short": "Redamkan pemberitahuan", "account.mute_short": "Redam", - "account.muted": "Dibisukan", + "account.muted": "Diredamkan", "account.mutual": "Rakan kongsi", "account.no_bio": "Tiada penerangan diberikan.", "account.open_original_page": "Buka halaman asal", @@ -64,12 +64,13 @@ "account.statuses_counter": "{count, plural, other {{counter} siaran}}", "account.unblock": "Nyahsekat @{name}", "account.unblock_domain": "Nyahsekat domain {domain}", + "account.unblock_domain_short": "Nyahsekat", "account.unblock_short": "Nyahsekat", "account.unendorse": "Jangan tampilkan di profil", "account.unfollow": "Nyahikut", "account.unmute": "Nyahbisukan @{name}", - "account.unmute_notifications_short": "Nyahredam notifikasi", - "account.unmute_short": "Nyahbisu", + "account.unmute_notifications_short": "Nyahredamkan pemberitahuan", + "account.unmute_short": "Nyahredam", "account_note.placeholder": "Klik untuk menambah catatan", "admin.dashboard.daily_retention": "Kadar pengekalan pengguna mengikut hari selepas mendaftar", "admin.dashboard.monthly_retention": "Kadar pengekalan pengguna mengikut bulan selepas mendaftar", @@ -115,6 +116,8 @@ "attachments_list.unprocessed": "(belum diproses)", "audio.hide": "Sembunyikan audio", "block_modal.remote_users_caveat": "Kami akan meminta pelayan {domain} untuk menghormati keputusan anda. Bagaimanapun, pematuhan tidak dijamin kerana ada pelayan yang mungkin menangani sekatan dengan cara berbeza. Hantaran awam mungkin masih tampak kepada pengguna yang tidak log masuk.", + "block_modal.show_less": "Tunjuk kurang", + "block_modal.show_more": "Tunjuk lebih", "block_modal.they_cant_mention": "Dia tidak boleh menyebut tentang anda atau mengikut anda.", "block_modal.they_cant_see_posts": "Dia tidak boleh melihat hantaran anda dan sebaliknya.", "block_modal.they_will_know": "Dia boleh lihat bahawa dia disekat.", @@ -141,13 +144,13 @@ "closed_registrations_modal.preamble": "Mastodon adalah terpencar, oleh itu di mana-mana anda mencipta akaun anda, anda boleh mengikut dan berinteraksi dengan sesiapa pada pelayan ini. Anda juga boleh hos sendiri!", "closed_registrations_modal.title": "Mendaftar pada Mastodon", "column.about": "Perihal", - "column.blocks": "Pengguna yang disekat", + "column.blocks": "Pengguna tersekat", "column.bookmarks": "Tanda buku", "column.community": "Garis masa tempatan", "column.create_list": "Cipta senarai", "column.direct": "Sebutan peribadi", "column.directory": "Layari profil", - "column.domain_blocks": "Domain disekat", + "column.domain_blocks": "Domain tersekat", "column.edit_list": "Sunting senarai", "column.favourites": "Sukaan", "column.firehose": "Suapan langsung", @@ -155,7 +158,7 @@ "column.home": "Laman Utama", "column.list_members": "Urus ahli senarai", "column.lists": "Senarai", - "column.mutes": "Pengguna yang dibisukan", + "column.mutes": "Pengguna teredam", "column.notifications": "Pemberitahuan", "column.pins": "Hantaran disemat", "column.public": "Garis masa bersekutu", @@ -217,13 +220,21 @@ "confirmations.logout.title": "Log keluar?", "confirmations.missing_alt_text.confirm": "Tambah teks alternatif", "confirmations.missing_alt_text.message": "Hantaran anda mempunyai media tanpa teks alternatif. Kandungan anda akan lebih mudah tercapai jika anda menambah keterangan.", - "confirmations.mute.confirm": "Bisukan", + "confirmations.missing_alt_text.secondary": "Hantar saja", + "confirmations.missing_alt_text.title": "Tambah teks alternatif?", + "confirmations.mute.confirm": "Redamkan", "confirmations.redraft.confirm": "Padam & rangka semula", "confirmations.redraft.message": "Adakah anda pasti anda ingin memadam hantaran ini dan gubal semula? Sukaan dan galakan akan hilang, dan balasan ke hantaran asal akan menjadi yatim.", + "confirmations.redraft.title": "Padam & gubah semula hantaran?", "confirmations.reply.confirm": "Balas", "confirmations.reply.message": "Membalas sekarang akan menulis ganti mesej yang anda sedang karang. Adakah anda pasti anda ingin teruskan?", + "confirmations.reply.title": "Tulis ganti hantaran?", "confirmations.unfollow.confirm": "Nyahikut", "confirmations.unfollow.message": "Adakah anda pasti anda ingin nyahikuti {name}?", + "confirmations.unfollow.title": "Berhenti mengikut pengguna?", + "content_warning.hide": "Sorok hantaran", + "content_warning.show": "Tunjuk saja", + "content_warning.show_more": "Tunjuk lebih", "conversation.delete": "Padam perbualan", "conversation.mark_as_read": "Tanda sudah dibaca", "conversation.open": "Lihat perbualan", @@ -240,6 +251,22 @@ "dismissable_banner.community_timeline": "Inilah hantaran awam terkini daripada orang yang akaun dihos oleh {domain}.", "dismissable_banner.dismiss": "Ketepikan", "dismissable_banner.explore_statuses": "Hantaran-hantaran dari seluruh alam bersekutu ini sedang sohor. Hantaran terbaharu dengan lebih banyak galakan dan sukaan diberi kedudukan lebih tinggi.", + "dismissable_banner.public_timeline": "Hantaran-hantaran awam terkini ini dari pengguna alam bersekutu yang diikuti oleh pengguna dari {domain}.", + "domain_block_modal.block": "Sekat pelayan", + "domain_block_modal.block_account_instead": "Sekat @{name} sahaja", + "domain_block_modal.they_can_interact_with_old_posts": "Pengguna dari pelayan ini boleh berinteraksi dengan hantaran lama anda.", + "domain_block_modal.they_cant_follow": "Pengguna dari pelayan ini tidak boleh mengikuti anda.", + "domain_block_modal.they_wont_know": "Dia tidak akan tahu bahawa dia telah disekat.", + "domain_block_modal.title": "Sekat domain?", + "domain_block_modal.you_will_lose_num_followers": "Anda akan kehilangan {followersCount, plural, other {{followersCountDisplay} pengikut}} dan {followingCount, plural, other {{followingCountDisplay} ikutan}}.", + "domain_block_modal.you_will_lose_relationships": "Anda akan kehilangan semua pengikut dan ikutan anda dari pelayan ini.", + "domain_block_modal.you_wont_see_posts": "Anda tidak akan melihat hantaran atau pemberitahuan dari pengguna pada pelayan ini.", + "domain_pill.activitypub_lets_connect": "Hal ini membolehkan anda berhubung dan berinteraksi bukan sahaja dengan pengguna Mastodon tetapi melintasi pelbagai aplikasi sosial juga.", + "domain_pill.activitypub_like_language": "ActivityPub adalah seperti bahasa yang digunakan oleh Mastodon untuk berhubung dengan jaringan sosial lain.", + "domain_pill.server": "Pelayan", + "domain_pill.your_handle": "Pemegang anda:", + "domain_pill.your_server": "Rumah maya anda, tempatnya hantaran anda disimpan. Tidak berkenan dengan yang ini? Pindah antara pelayan pada bila-bila masa dan bawa pengikut anda sekali.", + "domain_pill.your_username": "Pengenal unik anda pada pelayan ini. Anda mungkin akan berkongsi nama pengguna dengan pengguna daripada pelayan lain.", "embed.instructions": "Benam hantaran ini di laman sesawang anda dengan menyalin kod berikut.", "embed.preview": "Begini rupanya nanti:", "emoji_button.activity": "Aktiviti", @@ -257,6 +284,7 @@ "emoji_button.search_results": "Hasil carian", "emoji_button.symbols": "Simbol", "emoji_button.travel": "Kembara & Tempat", + "empty_column.account_featured": "Senarai ini kosong", "empty_column.account_hides_collections": "Pengguna ini telah memilih untuk tidak menyediakan informasi tersebut", "empty_column.account_suspended": "Akaun digantung", "empty_column.account_timeline": "Tiada hantaran di sini!", @@ -274,7 +302,7 @@ "empty_column.hashtag": "Belum ada apa-apa dengan tanda pagar ini.", "empty_column.home": "Garis masa laman utama anda kosong! Ikuti lebih ramai orang untuk mengisinya. {suggestions}", "empty_column.list": "Tiada apa-apa di senarai ini lagi. Apabila ahli senarai ini menerbitkan hantaran baharu, ia akan dipaparkan di sini.", - "empty_column.mutes": "Anda belum membisukan sesiapa.", + "empty_column.mutes": "Anda belum meredamkan sesiapa.", "empty_column.notifications": "Anda belum ada sebarang pemberitahuan. Apabila orang lain berinteraksi dengan anda, ia akan muncul di sini.", "empty_column.public": "Tiada apa-apa di sini! Tulis sesuatu secara awam, atau ikuti pengguna daripada pelayan lain secara manual untuk mengisinya", "error.unexpected_crash.explanation": "Disebabkan pepijat dalam kod kami atau masalah keserasian pelayar, halaman ini tidak dapat dipaparkan dengan betulnya.", @@ -341,6 +369,7 @@ "hashtag.counter_by_uses": "{count, plural, other {{counter} siaran}}", "hashtag.counter_by_uses_today": "{count, plural, other {{counter} siaran}} hari ini", "hashtag.follow": "Ikuti hashtag", + "hashtag.mute": "Redamkan #{hashtag}", "hashtag.unfollow": "Nyahikut tanda pagar", "hashtags.and_other": "…dan {count, plural, other {# more}}", "home.column_settings.show_reblogs": "Tunjukkan galakan", @@ -361,7 +390,7 @@ "intervals.full.hours": "{number, plural, other {# jam}}", "intervals.full.minutes": "{number, plural, other {# minit}}", "keyboard_shortcuts.back": "to navigate back", - "keyboard_shortcuts.blocked": "to open blocked users list", + "keyboard_shortcuts.blocked": "Buka senarai pengguna tersekat", "keyboard_shortcuts.boost": "to boost", "keyboard_shortcuts.column": "Tumpu pada lajur", "keyboard_shortcuts.compose": "to focus the compose textarea", @@ -378,7 +407,7 @@ "keyboard_shortcuts.legend": "to display this legend", "keyboard_shortcuts.local": "to open local timeline", "keyboard_shortcuts.mention": "to mention author", - "keyboard_shortcuts.muted": "to open muted users list", + "keyboard_shortcuts.muted": "Buka senarai pengguna teredam", "keyboard_shortcuts.my_profile": "to open your profile", "keyboard_shortcuts.notifications": "to open notifications column", "keyboard_shortcuts.open_media": "to open media", @@ -408,24 +437,27 @@ "load_pending": "{count, plural, one {# item baharu} other {# item baharu}}", "loading_indicator.label": "Memuatkan…", "moved_to_account_banner.text": "Akaun anda {disabledAccount} kini dinyahdayakan kerana anda berpindah ke {movedToAccount}.", + "mute_modal.indefinite": "Sehingga dinyahredamkan", + "mute_modal.they_wont_know": "Dia tidak akan tahu bahawa dia telah diredam.", + "mute_modal.title": "Redamkan pengguna?", "navigation_bar.about": "Perihal", "navigation_bar.advanced_interface": "Buka dalam antara muka web lanjutan", - "navigation_bar.blocks": "Pengguna yang disekat", + "navigation_bar.blocks": "Pengguna tersekat", "navigation_bar.bookmarks": "Tanda buku", "navigation_bar.community_timeline": "Garis masa tempatan", "navigation_bar.compose": "Karang hantaran baharu", "navigation_bar.direct": "Sebutan peribadi", "navigation_bar.discover": "Teroka", - "navigation_bar.domain_blocks": "Domain disekat", + "navigation_bar.domain_blocks": "Domain tersekat", "navigation_bar.explore": "Teroka", "navigation_bar.favourites": "Sukaan", - "navigation_bar.filters": "Perkataan yang dibisukan", + "navigation_bar.filters": "Perkataan teredam", "navigation_bar.follow_requests": "Permintaan ikutan", "navigation_bar.followed_tags": "Ikuti hashtag", "navigation_bar.follows_and_followers": "Ikutan dan pengikut", "navigation_bar.lists": "Senarai", "navigation_bar.logout": "Log keluar", - "navigation_bar.mutes": "Pengguna yang dibisukan", + "navigation_bar.mutes": "Pengguna teredam", "navigation_bar.opened_in_classic_interface": "Kiriman, akaun dan halaman tertentu yang lain dibuka secara lalai di antara muka web klasik.", "navigation_bar.personal": "Peribadi", "navigation_bar.pins": "Hantaran disemat", @@ -445,6 +477,8 @@ "notification.own_poll": "Undian anda telah tamat", "notification.reblog": "{name} menggalak hantaran anda", "notification.reblog.name_and_others_with_link": "{name} dan {count, plural, other {# orang lain}} telah galakkan hantaran anda", + "notification.relationships_severance_event.domain_block": "Pentadbir dari {from} telah menyekat {target} termasuk {followersCount} pengikut anda dan {followingCount, plural, other {# akaun}} ikutan anda.", + "notification.relationships_severance_event.user_domain_block": "Anda telah menyekat {target} termasuk {followersCount} pengikut anda dan {followingCount, plural, other {# akaun}} ikutan anda.", "notification.status": "{name} baru sahaja mengirim hantaran", "notification.update": "{name} menyunting hantaran", "notifications.clear": "Buang pemberitahuan", @@ -524,7 +558,7 @@ "reply_indicator.cancel": "Batal", "reply_indicator.poll": "Undian", "report.block": "Sekat", - "report.block_explanation": "Anda tidak akan melihat hantaran mereka. Mereka tidak dapat melihat hantaran anda atau mengikuti anda. Mereka akan sedar bahawa mereka disekat.", + "report.block_explanation": "Anda tidak akan melihat hantarannya. Dia tidak akan dapat melihat hantaran anda atau mengikuti anda. Dia akan sedar bahawa dia disekat.", "report.categories.legal": "Sah", "report.categories.other": "Lain-lain", "report.categories.spam": "Spam", @@ -537,7 +571,7 @@ "report.comment.title": "Adakah ada hal-hal lain yang perlu kita ketahui?", "report.forward": "Panjangkan ke {target}", "report.forward_hint": "Akaun ini daripada pelayan lain. Hantar salinan laporan yang ditanpanamakan ke sana juga?", - "report.mute": "Bisukan", + "report.mute": "Redam", "report.mute_explanation": "Anda tidak akan melihat siaran mereka. Mereka masih boleh mengikuti dan melihat siaran anda dan tidak akan mengetahui bahawa mereka telah dibisukan.", "report.next": "Seterusnya", "report.placeholder": "Ulasan tambahan", @@ -621,8 +655,8 @@ "status.media_hidden": "Media disembunyikan", "status.mention": "Sebut @{name}", "status.more": "Lagi", - "status.mute": "Bisukan @{name}", - "status.mute_conversation": "Bisukan perbualan", + "status.mute": "Redamkan @{name}", + "status.mute_conversation": "Redamkan perbualan", "status.open": "Kembangkan hantaran ini", "status.pin": "Semat di profil", "status.pinned": "Hantaran disemat", @@ -648,7 +682,7 @@ "status.translate": "Menterjemah", "status.translated_from_with": "Diterjemah daripada {lang} dengan {provider}", "status.uncached_media_warning": "Pratonton tidak tersedia", - "status.unmute_conversation": "Nyahbisukan perbualan", + "status.unmute_conversation": "Nyahredamkan perbualan", "status.unpin": "Nyahsemat daripada profil", "subscribed_languages.lead": "Hanya hantaran dalam bahasa-bahasa terpilih akan dipaparkan pada garis masa rumah dan senarai selepas perubahan. Pilih tiada untuk menerima hantaran dalam semua bahasa.", "subscribed_languages.save": "Simpan perubahan", @@ -682,6 +716,8 @@ "video.expand": "Besarkan video", "video.fullscreen": "Skrin penuh", "video.hide": "Sembunyikan video", + "video.mute": "Redam", "video.pause": "Jeda", - "video.play": "Main" + "video.play": "Main", + "video.unmute": "Nyahredam" } diff --git a/app/javascript/mastodon/locales/nan.json b/app/javascript/mastodon/locales/nan.json index 1ae348871f..2c5af1d406 100644 --- a/app/javascript/mastodon/locales/nan.json +++ b/app/javascript/mastodon/locales/nan.json @@ -27,6 +27,9 @@ "account.edit_profile": "編輯個人資料", "account.enable_notifications": "佇 {name} PO文ê時通知我", "account.endorse": "用個人資料推薦對方", + "account.featured": "精選ê", + "account.featured.hashtags": "Hashtag", + "account.featured.posts": "PO文", "account.featured_tags.last_status_at": "頂kái tī {date} Po文", "account.featured_tags.last_status_never": "無PO文", "account.follow": "跟tuè", @@ -293,6 +296,7 @@ "emoji_button.search_results": "Tshiau-tshuē ê結果", "emoji_button.symbols": "符號", "emoji_button.travel": "旅行kap地點", + "empty_column.account_featured": "Tsit ê列單是空ê", "empty_column.account_hides_collections": "Tsit位用者選擇無愛公開tsit ê資訊", "empty_column.account_suspended": "口座已經受停止", "empty_column.account_timeline": "Tsia無PO文!", @@ -377,6 +381,8 @@ "generic.saved": "儲存ah", "getting_started.heading": "開始用", "hashtag.admin_moderation": "Phah開 #{name} ê管理界面", + "hashtag.browse": "瀏覽佇 #{hashtag} ê PO文", + "hashtag.browse_from_account": "瀏覽 @{name} 佇 #{hashtag} 所寫ê PO文", "hashtag.column_header.tag_mode.all": "kap {additional}", "hashtag.column_header.tag_mode.any": "á是 {additional}", "hashtag.column_header.tag_mode.none": "無需要 {additional}", @@ -390,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} 篇} other {{counter} 篇}} PO文", "hashtag.counter_by_uses_today": "Kin-á日有 {count, plural, one {{counter} 篇} other {{counter} 篇}} PO文", "hashtag.follow": "跟tuè hashtag", + "hashtag.mute": "消音 #{hashtag}", "hashtag.unfollow": "取消跟tuè hashtag", "hashtags.and_other": "……kap 其他 {count, plural, other {# ê}}", "hints.profiles.followers_may_be_missing": "Tsit ê個人資料ê跟tuè者資訊可能有落勾ê。", @@ -517,8 +524,70 @@ "mute_modal.hide_options": "Khàm掉選項", "mute_modal.indefinite": "直到我取消消音", "mute_modal.show_options": "顯示選項", + "mute_modal.they_can_mention_and_follow": "In iáu ē當提起á是跟tuè lí,毋過lí看buē著in。", + "mute_modal.they_wont_know": "In buē知影in受消音。", + "mute_modal.title": "Kā用者消音?", + "mute_modal.you_wont_see_mentions": "Lí buē看見提起in ê PO文。", + "mute_modal.you_wont_see_posts": "In iáu ē當看著lí ê PO文,毋過lí看bē tio̍h in ê。", + "navigation_bar.about": "概要", + "navigation_bar.administration": "管理", + "navigation_bar.advanced_interface": "用進階ê網頁界面開", + "navigation_bar.blocks": "封鎖ê用者", + "navigation_bar.bookmarks": "冊籤", + "navigation_bar.community_timeline": "本地ê時間線", + "navigation_bar.compose": "寫新ê PO文", + "navigation_bar.direct": "私人ê提起", + "navigation_bar.discover": "發現", + "navigation_bar.domain_blocks": "封鎖ê域名", + "navigation_bar.explore": "探查", + "navigation_bar.favourites": "Siōng kah意", + "navigation_bar.filters": "消音ê詞", + "navigation_bar.follow_requests": "跟tuè請求", + "navigation_bar.followed_tags": "跟tuè ê hashtag", + "navigation_bar.follows_and_followers": "Leh跟tuè ê kap跟tuè lí ê", + "navigation_bar.lists": "列單", + "navigation_bar.logout": "登出", + "navigation_bar.moderation": "審核", + "navigation_bar.mutes": "消音ê用者", + "navigation_bar.opened_in_classic_interface": "PO文、口座kap其他指定ê頁面,預設ē佇經典ê網頁界面內phah開。", + "navigation_bar.personal": "個人", + "navigation_bar.pins": "釘起來ê PO文", + "navigation_bar.preferences": "偏愛ê設定", + "navigation_bar.public_timeline": "聯邦ê時間線", + "navigation_bar.search": "Tshiau-tshuē", + "navigation_bar.security": "安全", + "not_signed_in_indicator.not_signed_in": "Lí著登入來接近使用tsit ê資源。", + "notification.admin.report": "{name} kā {target} 檢舉ah", + "notification.admin.report_account": "{name} kā {target} 所寫ê {count, plural, other {# 篇PO文}}檢舉ah,原因是:{category}", + "notification.admin.report_account_other": "{name} kā {target} 所寫ê {count, plural, other {# 篇PO文}}檢舉ah", + "notification.admin.report_statuses": "{name} kā {target} 檢舉ah,原因是:{category}", + "notification.admin.report_statuses_other": "{name} kā {target} 檢舉ah", + "notification.admin.sign_up": "口座 {name} 有開ah。", + "notification.admin.sign_up.name_and_others": "{name} kap {count, plural, other {其他 # ê lâng}} ê口座有開ah", + "notification.annual_report.message": "Lí ê {year} #Wrapstodon teh等lí!緊來看tsit年lí佇Mastodon頂ê上精彩ê內容,kap難忘ê時刻!", + "notification.annual_report.view": "Kā #Wrapstodon 看māi。", + "notification.favourite": "{name} kah意lí ê PO文", + "notification.favourite.name_and_others_with_link": "{name} kap{count, plural, other {另外 # ê lâng}}kah意lí ê PO文", "notification.favourite_pm": "{name} kah意lí ê私人提起", "notification.favourite_pm.name_and_others_with_link": "{name} kap{count, plural, other {另外 # ê lâng}}kah意lí ê私人提起", + "notification.follow": "{name}跟tuè lí", + "notification.follow.name_and_others": "{name} kap{count, plural, other {另外 # ê lâng}}跟tuè lí", + "notification.follow_request": "{name} 請求跟tuè lí", + "notification.follow_request.name_and_others": "{name} kap{count, plural, other {另外 # ê lâng}}請求跟tuè lí", + "notification.label.mention": "提起", + "notification.label.private_mention": "私人ê提起", + "notification.label.private_reply": "私人ê回應", + "notification.label.reply": "回應", + "notification.mention": "提起", + "notification.mentioned_you": "{name}kā lí提起", + "notification.moderation-warning.learn_more": "看詳細", + "notification.moderation_warning": "Lí有收著審核ê警告", + "notification.moderation_warning.action_delete_statuses": "Lí ê一寡PO文hōo lâng thâi掉ah。", + "notification.moderation_warning.action_disable": "Lí ê口座hōo lâng停止使用ah。", + "notification.moderation_warning.action_mark_statuses_as_sensitive": "Lí ê一寡PO文,hōo lâng標做敏感ê內容。", + "notification.moderation_warning.action_none": "Lí ê口座有收著審核ê警告。", + "notification_requests.edit_selection": "編輯", + "notification_requests.exit_selection": "做好ah", "search_popout.language_code": "ISO語言代碼", "status.translated_from_with": "用 {provider} 翻譯 {lang}" } diff --git a/app/javascript/mastodon/locales/nl.json b/app/javascript/mastodon/locales/nl.json index e22b7b3774..30f4777f61 100644 --- a/app/javascript/mastodon/locales/nl.json +++ b/app/javascript/mastodon/locales/nl.json @@ -381,6 +381,8 @@ "generic.saved": "Opgeslagen", "getting_started.heading": "Aan de slag", "hashtag.admin_moderation": "Moderatie-omgeving van #{name} openen", + "hashtag.browse": "Berichten met #{hashtag} bekijken", + "hashtag.browse_from_account": "Berichten van @{name} met #{hashtag} bekijken", "hashtag.column_header.tag_mode.all": "en {additional}", "hashtag.column_header.tag_mode.any": "of {additional}", "hashtag.column_header.tag_mode.none": "zonder {additional}", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} bericht} other {{counter} berichten}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} bericht} other {{counter} berichten}} vandaag", "hashtag.follow": "Hashtag volgen", + "hashtag.mute": "#{hashtag} negeren", "hashtag.unfollow": "Hashtag ontvolgen", "hashtags.and_other": "…en {count, plural, one {}other {# meer}}", "hints.profiles.followers_may_be_missing": "Volgers voor dit profiel kunnen ontbreken.", diff --git a/app/javascript/mastodon/locales/ru.json b/app/javascript/mastodon/locales/ru.json index 6763a354f3..aaa73f51be 100644 --- a/app/javascript/mastodon/locales/ru.json +++ b/app/javascript/mastodon/locales/ru.json @@ -28,6 +28,8 @@ "account.enable_notifications": "Уведомлять о постах от @{name}", "account.endorse": "Рекомендовать в профиле", "account.featured": "Избранное", + "account.featured.hashtags": "Хэштеги", + "account.featured.posts": "Посты", "account.featured_tags.last_status_at": "Последний пост {date}", "account.featured_tags.last_status_never": "Нет постов", "account.follow": "Подписаться", diff --git a/app/javascript/mastodon/locales/sk.json b/app/javascript/mastodon/locales/sk.json index 57fc3be484..6cbf799328 100644 --- a/app/javascript/mastodon/locales/sk.json +++ b/app/javascript/mastodon/locales/sk.json @@ -27,6 +27,7 @@ "account.edit_profile": "Upraviť profil", "account.enable_notifications": "Zapnúť upozornenia na príspevky od @{name}", "account.endorse": "Zobraziť na vlastnom profile", + "account.featured.posts": "Príspevky", "account.featured_tags.last_status_at": "Posledný príspevok dňa {date}", "account.featured_tags.last_status_never": "Žiadne príspevky", "account.follow": "Sledovať", @@ -263,6 +264,7 @@ "emoji_button.search_results": "Výsledky hľadania", "emoji_button.symbols": "Symboly", "emoji_button.travel": "Cestovanie a miesta", + "empty_column.account_featured": "Tento zoznam je prázdny", "empty_column.account_hides_collections": "Tento účet sa rozhodol túto informáciu nesprístupniť", "empty_column.account_suspended": "Účet bol pozastavený", "empty_column.account_timeline": "Nie sú tu žiadne príspevky.", @@ -345,6 +347,7 @@ "generic.saved": "Uložené", "getting_started.heading": "Začíname", "hashtag.admin_moderation": "Otvor moderovacie rozhranie pre #{name}", + "hashtag.browse": "Prehľadávať príspevky pod #{hashtag}", "hashtag.column_header.tag_mode.all": "a {additional}", "hashtag.column_header.tag_mode.any": "alebo {additional}", "hashtag.column_header.tag_mode.none": "bez {additional}", @@ -358,6 +361,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} príspevok} few {{counter} príspevky} many {{counter} príspevkov} other {{counter} príspevkov}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} príspevok} few {{counter} príspevky} many {{counter} príspevkov} other {{counter} príspevkov}} dnes", "hashtag.follow": "Sledovať hashtag", + "hashtag.mute": "Utlmiť #{hashtag}", "hashtag.unfollow": "Prestať sledovať hashtag", "hashtags.and_other": "…a {count, plural, other {# ďalších}}", "hints.profiles.followers_may_be_missing": "Nasledovatelia tohto profilu môžu chýbať.", diff --git a/app/javascript/mastodon/locales/sq.json b/app/javascript/mastodon/locales/sq.json index bb1668b2ef..a42a25b374 100644 --- a/app/javascript/mastodon/locales/sq.json +++ b/app/javascript/mastodon/locales/sq.json @@ -376,6 +376,8 @@ "generic.saved": "U ruajt", "getting_started.heading": "Si t’ia fillohet", "hashtag.admin_moderation": "Hap ndërfaqe moderimi për #{name}", + "hashtag.browse": "Shfletoni postime me #{hashtag}", + "hashtag.browse_from_account": "Shfletoni postime nga @{name} me #{hashtag}", "hashtag.column_header.tag_mode.all": "dhe {additional}", "hashtag.column_header.tag_mode.any": "ose {additional}", "hashtag.column_header.tag_mode.none": "pa {additional}", @@ -389,6 +391,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} postim} other {{counter} postime}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} postim} other {{counter} postime}} sot", "hashtag.follow": "Ndiqe hashtag-un", + "hashtag.mute": "Heshtoje #{hashtag}", "hashtag.unfollow": "Hiqe ndjekjen e hashtag-ut", "hashtags.and_other": "…dhe {count, plural, one {}other {# më tepër}}", "hints.profiles.followers_may_be_missing": "Mund të mungojnë ndjekës për këtë profil.", diff --git a/app/javascript/mastodon/locales/tr.json b/app/javascript/mastodon/locales/tr.json index fa5a84dd68..1f703e0748 100644 --- a/app/javascript/mastodon/locales/tr.json +++ b/app/javascript/mastodon/locales/tr.json @@ -381,6 +381,8 @@ "generic.saved": "Kaydet", "getting_started.heading": "Başlarken", "hashtag.admin_moderation": "#{name} için denetim arayüzünü açın", + "hashtag.browse": "#{hashtag} gönderilerine gözat", + "hashtag.browse_from_account": "@{name} kişisinin #{hashtag} gönderilerine gözat", "hashtag.column_header.tag_mode.all": "ve {additional}", "hashtag.column_header.tag_mode.any": "ya da {additional}", "hashtag.column_header.tag_mode.none": "{additional} olmadan", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} gönderi} other {{counter} gönderi}}", "hashtag.counter_by_uses_today": "bugün {count, plural, one {{counter} gönderi} other {{counter} gönderi}}", "hashtag.follow": "Etiketi takip et", + "hashtag.mute": "#{hashtag} gönderilerini sessize al", "hashtag.unfollow": "Etiketi takibi bırak", "hashtags.and_other": "…ve {count, plural, one {}other {# fazlası}}", "hints.profiles.followers_may_be_missing": "Bu profilin takipçileri eksik olabilir.", diff --git a/app/javascript/mastodon/locales/uk.json b/app/javascript/mastodon/locales/uk.json index b995713c52..6d37e0e1db 100644 --- a/app/javascript/mastodon/locales/uk.json +++ b/app/javascript/mastodon/locales/uk.json @@ -394,6 +394,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} допис} few {{counter} дописи} many {{counter} дописів} other {{counter} допис}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} допис} few {{counter} дописи} many {{counter} дописів} other {{counter} допис}} сьогодні", "hashtag.follow": "Стежити за хештегом", + "hashtag.mute": "Ігнорувати #{hashtag}", "hashtag.unfollow": "Не стежити за хештегом", "hashtags.and_other": "…і {count, plural, other {ще #}}", "hints.profiles.followers_may_be_missing": "Підписники цього профілю можуть бути не показані.", diff --git a/app/javascript/mastodon/locales/vi.json b/app/javascript/mastodon/locales/vi.json index a608b3ed85..cabf3a5a82 100644 --- a/app/javascript/mastodon/locales/vi.json +++ b/app/javascript/mastodon/locales/vi.json @@ -381,6 +381,8 @@ "generic.saved": "Đã lưu", "getting_started.heading": "Quản lý", "hashtag.admin_moderation": "Mở giao diện quản trị #{name}", + "hashtag.browse": "Tìm tút #{hashtag}", + "hashtag.browse_from_account": "Tìm tút của @{name} có chứa #{hashtag}", "hashtag.column_header.tag_mode.all": "và {additional}", "hashtag.column_header.tag_mode.any": "hoặc {additional}", "hashtag.column_header.tag_mode.none": "mà không {additional}", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, other {{counter} tút}}", "hashtag.counter_by_uses_today": "{count, plural, other {{counter} tút}} hôm nay", "hashtag.follow": "Theo dõi hashtag", + "hashtag.mute": "Ẩn #{hashtag}", "hashtag.unfollow": "Bỏ theo dõi hashtag", "hashtags.and_other": "…và {count, plural, other {# nữa}}", "hints.profiles.followers_may_be_missing": "Số người theo dõi có thể không đầy đủ.", diff --git a/app/javascript/mastodon/locales/zh-CN.json b/app/javascript/mastodon/locales/zh-CN.json index 48f12d241a..fc3f914e6a 100644 --- a/app/javascript/mastodon/locales/zh-CN.json +++ b/app/javascript/mastodon/locales/zh-CN.json @@ -27,6 +27,9 @@ "account.edit_profile": "修改个人资料", "account.enable_notifications": "当 @{name} 发布嘟文时通知我", "account.endorse": "在个人资料中推荐此用户", + "account.featured": "精选", + "account.featured.hashtags": "话题", + "account.featured.posts": "嘟文", "account.featured_tags.last_status_at": "上次发言于 {date}", "account.featured_tags.last_status_never": "暂无嘟文", "account.follow": "关注", @@ -64,6 +67,7 @@ "account.statuses_counter": "{count, plural, other {{counter} 条嘟文}}", "account.unblock": "取消屏蔽 @{name}", "account.unblock_domain": "取消屏蔽 {domain} 域名", + "account.unblock_domain_short": "取消屏蔽", "account.unblock_short": "取消屏蔽", "account.unendorse": "不在个人资料中推荐此用户", "account.unfollow": "取消关注", @@ -292,6 +296,7 @@ "emoji_button.search_results": "搜索结果", "emoji_button.symbols": "符号", "emoji_button.travel": "旅行与地点", + "empty_column.account_featured": "这个列表为空", "empty_column.account_hides_collections": "该用户选择不公开此信息", "empty_column.account_suspended": "账号已被停用", "empty_column.account_timeline": "这里没有嘟文!", @@ -389,6 +394,7 @@ "hashtag.counter_by_uses": "{count, plural, other {{counter} 条嘟文}}", "hashtag.counter_by_uses_today": "今日 {count, plural, other {{counter} 条嘟文}}", "hashtag.follow": "关注话题", + "hashtag.mute": "停止提醒 #{hashtag}", "hashtag.unfollow": "取消关注话题", "hashtags.and_other": "… 和另外 {count, plural, other {# 个话题}}", "hints.profiles.followers_may_be_missing": "该账号的关注者列表可能没有完全显示。", @@ -904,6 +910,12 @@ "video.expand": "展开视频", "video.fullscreen": "全屏", "video.hide": "隐藏视频", + "video.mute": "停止提醒", "video.pause": "暂停", - "video.play": "播放" + "video.play": "播放", + "video.skip_backward": "后退", + "video.skip_forward": "前进", + "video.unmute": "恢复提醒", + "video.volume_down": "音量减小", + "video.volume_up": "提高音量" } diff --git a/app/javascript/mastodon/locales/zh-TW.json b/app/javascript/mastodon/locales/zh-TW.json index 3bb8ed4cbc..0d37e7f6c5 100644 --- a/app/javascript/mastodon/locales/zh-TW.json +++ b/app/javascript/mastodon/locales/zh-TW.json @@ -381,6 +381,8 @@ "generic.saved": "已儲存", "getting_started.heading": "開始使用", "hashtag.admin_moderation": "開啟 #{name} 的管理介面", + "hashtag.browse": "瀏覽於 #{hashtag} 之嘟文", + "hashtag.browse_from_account": "瀏覽來自 @{name} 於 #{hashtag} 之嘟文", "hashtag.column_header.tag_mode.all": "以及 {additional}", "hashtag.column_header.tag_mode.any": "或是 {additional}", "hashtag.column_header.tag_mode.none": "而無需 {additional}", @@ -394,6 +396,7 @@ "hashtag.counter_by_uses": "{count, plural, one {{counter} 則} other {{counter} 則}}嘟文", "hashtag.counter_by_uses_today": "本日有 {count, plural, one {{counter} 則} other {{counter} 則}}嘟文", "hashtag.follow": "跟隨主題標籤", + "hashtag.mute": "靜音 #{hashtag}", "hashtag.unfollow": "取消跟隨主題標籤", "hashtags.and_other": "…及其他 {count, plural, other {# 個}}", "hints.profiles.followers_may_be_missing": "此個人檔案之跟隨者或有缺失。", diff --git a/config/locales/cs.yml b/config/locales/cs.yml index 1bdf202fca..37cd0b3bf6 100644 --- a/config/locales/cs.yml +++ b/config/locales/cs.yml @@ -325,6 +325,7 @@ cs: create: Vytvořit oznámení title: Nové oznámení preview: + disclaimer: Vzhledem k tomu, že se od nich uživatelé nemohou odhlásit, měla by být e-mailová upozornění omezena na důležitá oznámení, jako je narušení osobních údajů nebo oznámení o uzavření serveru. explanation_html: 'E-mail bude odeslán %{display_count} uživatelům. Následující text bude zahrnut do onoho e-mailu:' title: Náhled oznámení publish: Zveřejnit diff --git a/config/locales/da.yml b/config/locales/da.yml index b0314e0f74..63a414811e 100644 --- a/config/locales/da.yml +++ b/config/locales/da.yml @@ -319,6 +319,7 @@ da: create: Opret bekendtgørelse title: Ny bekendtgørelse preview: + disclaimer: Da brugere ikke kan fravælge e-mailnotifikationer, bør disse begrænses til vigtige emner som f.eks. personlige databrud eller serverlukninger. explanation_html: 'E-mailen sendes til %{display_count} brugere. Flg. tekst medtages i e-mailen:' title: Forhåndsvis annonceringsnotifikation publish: Publicér diff --git a/config/locales/de.yml b/config/locales/de.yml index ab0bc53fcc..0842ab73d7 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -319,6 +319,7 @@ de: create: Ankündigung erstellen title: Neue Ankündigung preview: + disclaimer: Da sich Profile nicht davon abmelden können, sollten Benachrichtigungen per E-Mail auf wichtige Ankündigungen wie z. B. zu Datenpannen oder Serverabschaltung beschränkt sein. explanation_html: 'Die E-Mail wird an %{display_count} Nutzer*innen gesendet. Folgendes wird in der E-Mail enthalten sein:' title: Vorschau der Ankündigung publish: Veröffentlichen @@ -497,6 +498,7 @@ de: registration_requested: Registrierung angefordert registrations: confirm: Bestätigen + description: Sie haben eine Registrierung von einer FASP erhalten. Lehnen Sie ab, wenn Sie dies nicht initiiert haben. Wenn Sie dies initiiert haben, vergleichen Sie Namen und Fingerabdruck vor der Bestätigung der Registrierung. reject: Ablehnen title: FASP-Registrierung bestätigen save: Speichern diff --git a/config/locales/doorkeeper.ms.yml b/config/locales/doorkeeper.ms.yml index f89def7b85..aadce76efd 100644 --- a/config/locales/doorkeeper.ms.yml +++ b/config/locales/doorkeeper.ms.yml @@ -128,11 +128,11 @@ ms: crypto: Penyulitan hujung ke hujung favourites: Sukaan filters: Penapis - follow: Ikut, Senyap dan Blok + follow: Ikutan, Redaman dan Sekatan follows: Ikutan lists: Senarai media: Lampiran media - mutes: Senyapkan + mutes: Redaman notifications: Pemberitahuan push: Pemberitahuan segera reports: Laporan @@ -173,7 +173,7 @@ ms: read:filters: lihat penapis anda read:follows: lihat senarai yang anda ikuti read:lists: lihat senarai anda - read:mutes: lihat senarai yang anda senyapkan + read:mutes: lihat redamanku read:notifications: lihat notifikasi anda read:reports: lihat laporan anda read:search: cari bagi pihak anda @@ -182,13 +182,13 @@ ms: write:accounts: ubaisuai profail anda write:blocks: domain dan akaun blok write:bookmarks: menandabuku hantaran - write:conversations: senyapkan dan padamkan perbualan + write:conversations: redamkan dan padamkan perbualan write:favourites: hantaran disukai write:filters: cipta penapis write:follows: ikut orang write:lists: cipta senarai write:media: memuat naik fail media - write:mutes: membisukan orang dan perbualan + write:mutes: redamkan orang dan perbualan write:notifications: kosongkan pemberitahuan anda write:reports: melaporkan orang lain write:statuses: terbitkan hantaran diff --git a/config/locales/es-AR.yml b/config/locales/es-AR.yml index dd92aed5f6..ab3d307fd8 100644 --- a/config/locales/es-AR.yml +++ b/config/locales/es-AR.yml @@ -319,6 +319,7 @@ es-AR: create: Crear anuncio title: Nuevo anuncio preview: + disclaimer: Como los usuarios no pueden excluirse de ellas, las notificaciones por correo electrónico deberían limitarse a anuncios importantes como la violación de datos personales o las notificaciones de cierre del servidor. explanation_html: 'El correo electrónico se enviará a %{display_count} usuarios. En el correo electrónico se incluirá el siguiente texto:' title: Previsualizar la notificación del anuncio publish: Publicar diff --git a/config/locales/es-MX.yml b/config/locales/es-MX.yml index a9192740fe..3032b663a1 100644 --- a/config/locales/es-MX.yml +++ b/config/locales/es-MX.yml @@ -319,6 +319,7 @@ es-MX: create: Crear anuncio title: Nuevo anuncio preview: + disclaimer: Como los usuarios no pueden optar por no recibirlas, las notificaciones por correo electrónico deben limitarse a anuncios importantes, como la violación de datos personales o las notificaciones de cierre de servidores. explanation_html: 'El correo electrónico se enviará a %{display_count} usuarios. En el correo electrónico se incluirá el siguiente texto:' title: Vista previa de la notificación del anuncio publish: Publicar diff --git a/config/locales/es.yml b/config/locales/es.yml index ed09dfb76b..9e0feb9d18 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -3,7 +3,7 @@ es: about: about_mastodon_html: 'La red social del futuro: ¡Sin anuncios, sin vigilancia corporativa, diseño ético, y descentralización! ¡Sé dueño de tu información con Mastodon!' contact_missing: No establecido - contact_unavailable: No disponible + contact_unavailable: N/D hosted_on: Mastodon alojado en %{domain} title: Acerca de accounts: @@ -319,6 +319,7 @@ es: create: Crear anuncio title: Nuevo anuncio preview: + disclaimer: Como los usuarios no pueden optar por no recibirlas, las notificaciones por correo electrónico deben limitarse a anuncios importantes, como la violación de datos personales o las notificaciones de cierre de servidores. explanation_html: 'El correo electrónico se enviará a %{display_count} usuarios. En el correo electrónico se incluirá el siguiente texto:' title: Vista previa de la notificación del anuncio publish: Publicar diff --git a/config/locales/fi.yml b/config/locales/fi.yml index fcb180518f..9a5bf97afe 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -319,6 +319,7 @@ fi: create: Luo tiedote title: Uusi tiedote preview: + disclaimer: Koska käyttäjät eivät voi kieltäytyä niistä, sähköposti-ilmoitukset tulee rajata tärkeisiin tiedotteisiin, kuten ilmoituksiin henkilötietojen tietoturvaloukkauksista tai palvelimen sulkeutumisesta. explanation_html: "%{display_count} käyttäjälle lähetetään sähköpostia. Sähköpostiviestiin sisällytetään seuraava teksti:" title: Esikatsele tiedoteilmoitus publish: Julkaise diff --git a/config/locales/fo.yml b/config/locales/fo.yml index ec38374070..8e611c346d 100644 --- a/config/locales/fo.yml +++ b/config/locales/fo.yml @@ -319,6 +319,7 @@ fo: create: Stovna kunngerð title: Nýggj kunngerð preview: + disclaimer: Av tí at brúkarar ikki kunnu velja tær frá, eiga teldupostfráboðanir at vera avmarkaðar til týdningarmiklar kunngerðir, sosum trygdarbrot og boð um at ambætarin verður tikin niður. explanation_html: 'Teldubrævið verður sent til %{display_count} brúkarar. Fylgjandi tekstur kemur við í teldubrævið:' title: Undanvís fráboðan um kunngerð publish: Legg út diff --git a/config/locales/fr-CA.yml b/config/locales/fr-CA.yml index dd751c0678..e85952f91c 100644 --- a/config/locales/fr-CA.yml +++ b/config/locales/fr-CA.yml @@ -482,6 +482,15 @@ fr-CA: new: title: Importer des blocages de domaine no_file: Aucun fichier sélectionné + fasp: + providers: + registrations: + confirm: Confirmer + reject: Rejeter + save: Enregistrer + select_capabilities: Sélectionnez les Capacités + sign_in: Se connecter + status: État follow_recommendations: description_html: "Les recommandations d'abonnement aident les nouvelles personnes à trouver rapidement du contenu intéressant. Si un·e utilisateur·rice n'a pas assez interagi avec les autres pour avoir des recommandations personnalisées, ces comptes sont alors recommandés. La sélection est mise à jour quotidiennement depuis un mélange de comptes ayant le plus d'interactions récentes et le plus grand nombre d'abonné·e·s locaux pour une langue donnée." language: Pour la langue diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 6ad2733f3e..25218bd019 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -482,6 +482,15 @@ fr: new: title: Importer des blocages de domaine no_file: Aucun fichier sélectionné + fasp: + providers: + registrations: + confirm: Confirmer + reject: Rejeter + save: Enregistrer + select_capabilities: Sélectionnez les Capacités + sign_in: Se connecter + status: État follow_recommendations: description_html: "Les recommandations d'abonnement aident les nouvelles personnes à trouver rapidement du contenu intéressant. Si un·e utilisateur·rice n'a pas assez interagi avec les autres pour avoir des recommandations personnalisées, ces comptes sont alors recommandés. La sélection est mise à jour quotidiennement depuis un mélange de comptes ayant le plus d'interactions récentes et le plus grand nombre d'abonné·e·s locaux pour une langue donnée." language: Pour la langue diff --git a/config/locales/gl.yml b/config/locales/gl.yml index 1da5c146c7..ed51799e8a 100644 --- a/config/locales/gl.yml +++ b/config/locales/gl.yml @@ -319,6 +319,7 @@ gl: create: Crear anuncio title: Novo anuncio preview: + disclaimer: As usuarias non poden omitilas, as notificiacións por correo deberían limitarse a anuncios importantes como fugas de datos personais ou notificación do cese do servizo. explanation_html: 'Vaise enviar o correo a %{display_count} usuarias. Incluirase o seguinte texto no correo:' title: Previsualización da notificación do anuncio publish: Publicar diff --git a/config/locales/he.yml b/config/locales/he.yml index 6d575bc564..457569d05a 100644 --- a/config/locales/he.yml +++ b/config/locales/he.yml @@ -325,6 +325,7 @@ he: create: יצירת הכרזה title: הכרזה חדשה preview: + disclaimer: כיוון שהמשתמשים לא יכולים לבטל אותם, הודעות דוא"ל צריכות להיות מוגבלות בשימוש להודעות חשובות כגון הודעות על גניבת מידע אישי או הודעות על סגירת השרת. explanation_html: 'הדואל ישלח אל %{display_count} משתמשיםות. להלן המלל שישלח בדואל:' title: צפיה מקדימה בהודעה publish: פרסום diff --git a/config/locales/hu.yml b/config/locales/hu.yml index 272dc0eb21..ef5d8d97e6 100644 --- a/config/locales/hu.yml +++ b/config/locales/hu.yml @@ -319,6 +319,7 @@ hu: create: Közlemény létrehozása title: Új közlemény preview: + disclaimer: Mivel a felhasználók nem iratkozhatnak le róluk, az e-mailes értesítéseket érdemes a fontos bejelentésekre korlátozni, mint a személyes adatokat érintő adatvédelmi incidensek vagy a kiszolgáló bezárására vonatkozó értesítések. explanation_html: 'Az e-mail %{display_count} felhasználónak lesz elküldve. A következő szöveg fog szerepelni a levélben:' title: Közleményértesítés előnézete publish: Közzététel diff --git a/config/locales/is.yml b/config/locales/is.yml index ef407a6a0e..0516fa4eb8 100644 --- a/config/locales/is.yml +++ b/config/locales/is.yml @@ -319,6 +319,7 @@ is: create: Búa til auglýsingu title: Ný auglýsing preview: + disclaimer: Þar sem notendur geta ekki afþakkað þær ætti aðeins að nota tilkynningar í tölvupósti fyrir mikilvægar upplýsingar á borð við persónuleg gagnabrot eða lokanir á netþjónum. explanation_html: 'Tölvupósturinn verður sendur til %{display_count} notenda. Eftirfarandi texti verður í meginmáli póstsins:' title: Forskoða tilkynninguna publish: Birta diff --git a/config/locales/ms.yml b/config/locales/ms.yml index 7fc8adcf41..68f4e872b6 100644 --- a/config/locales/ms.yml +++ b/config/locales/ms.yml @@ -28,6 +28,7 @@ ms: created_msg: Catatan penyederhanaan telah berjaya dicipta! destroyed_msg: Catatan penyederhanaan telah berjaya dipadam! accounts: + add_email_domain_block: Sekat domain e-mel approve: Luluskan approved_msg: Berjaya meluluskan permohonan pendaftaran %{username} are_you_sure: Adakah anda pasti? @@ -146,7 +147,7 @@ ms: suspension_irreversible: Data akaun ini telah dipadam secara kekal. Anda boleh nyahgantungkannya untuk membuatkan akaun ini boleh digunakan semula tetapi data lama tidak akan diperolehi. suspension_reversible_hint_html: Akaun ini telah digantung, dan datanya akan dibuang pada %{date}. Sebelum tarikh itu, akaun ini boleh diperoleh semula tanpa kesan buruk. Jika anda mahu memadamkan kesemua data akaun ini serta-merta, anda boleh melakukannya di bawah. title: Akaun - unblock_email: Menyahsekat alamat e-mel + unblock_email: Nyahsekat alamat e-mel unblocked_email_msg: Alamat e-mel %{username} berjaya dinyahsekat unconfirmed_email: E-mel belum disahkan undo_sensitized: Nyahtanda sensitif @@ -169,17 +170,21 @@ ms: confirm_user: Sahkan Pengguna create_account_warning: Cipta Amaran create_announcement: Cipta Pengumuman + create_canonical_email_block: Cipta Penyekatan E-mel create_custom_emoji: Cipta Emoji Tersendiri create_domain_allow: Cipta Pelepasan Domain create_domain_block: Cipta Penyekatan Domain + create_email_domain_block: Cipta Penyekatan Domain E-mel create_ip_block: Cipta peraturan alamat IP create_unavailable_domain: Cipta Domain Tidak Tersedia create_user_role: Cipta Peranan demote_user: Turunkan Taraf Pengguna destroy_announcement: Padam Pengumuman + destroy_canonical_email_block: Padam Penyekatan E-mel destroy_custom_emoji: Padam Emoji Tersendiri destroy_domain_allow: Padam Pelepasan Domain destroy_domain_block: Padam Penyekatan Domain + destroy_email_domain_block: Padam Penyekatan Domain E-mel destroy_instance: Padamkan Domain destroy_ip_block: Padam peraturan alamat IP destroy_status: Padam Hantaran @@ -203,7 +208,7 @@ ms: silence_account: Diamkan Akaun suspend_account: Gantungkan Akaun unassigned_report: Menyahtugaskan Laporan - unblock_email_account: Menyahsekat alamat e-mel + unblock_email_account: Nyahsekat alamat e-mel unsensitive_account: Nyahtanda media di akaun anda sebagai sensitif unsilence_account: Nyahdiamkan Akaun unsuspend_account: Nyahgantungkan Akaun @@ -1144,7 +1149,7 @@ ms: csv: CSV domain_blocks: Domain disekat lists: Senarai - mutes: Awak bisu + mutes: Redaman anda storage: Storan Media featured_tags: add_new: Tambah baharu @@ -1235,10 +1240,11 @@ ms: domain_blocking: Mengimport domain yang disekat following: Mengimport akaun diikuti lists: Mengimport senarai - muting: Mengimport akaun diredam + muting: Mengimport akaun teredam type: Jenis import type_groups: constructive: Ikutan & Penanda Halaman + destructive: Sekatan dan redaman types: blocking: Senarai menyekat bookmarks: Penanda buku diff --git a/config/locales/nl.yml b/config/locales/nl.yml index 84608307d4..5acd93ca13 100644 --- a/config/locales/nl.yml +++ b/config/locales/nl.yml @@ -319,6 +319,7 @@ nl: create: Mededeling aanmaken title: Nieuwe mededeling preview: + disclaimer: Omdat gebruikers zich niet voor deze e-mails kunnen afmelden, moeten e-mailmeldingen worden beperkt tot belangrijke aankondigingen, zoals het lekken van gebruikersgegevens of meldingen over het sluiten van deze server. explanation_html: 'De e-mail wordt verzonden naar %{display_count} gebruikers. De volgende tekst wordt in het bericht opgenomen:' title: Voorbeeld van mededeling publish: Inschakelen diff --git a/config/locales/sq.yml b/config/locales/sq.yml index dd96ddb88d..01884c10e9 100644 --- a/config/locales/sq.yml +++ b/config/locales/sq.yml @@ -319,6 +319,7 @@ sq: create: Krijoni lajmërim title: Lajmërim i ri preview: + disclaimer: Ngaqë përdoruesit s’mund të zgjedhin lënien jashtë tyre, njoftimet me email do të kufizohen te njoftime të rëndësishme, të tilla si cenim të dhënash personale, ose njoftime mbylljesh shërbyesish. explanation_html: 'Email-i do të dërgohet te %{display_count} përdorues. Te email-i do të përfshihet teksti vijues:' title: Bëni paraparje të shënimit për njoftimin publish: Publikoje diff --git a/config/locales/tr.yml b/config/locales/tr.yml index d943462d0c..751e6ae22f 100644 --- a/config/locales/tr.yml +++ b/config/locales/tr.yml @@ -319,6 +319,7 @@ tr: create: Duyuru oluştur title: Yeni duyuru preview: + disclaimer: Kullanıcılar bu bildirimleri almayı iptal edemediği için, e-posta bildirimleri kişisel veri ihlali veya sunucu kapatma bildirimleri gibi önemli duyurularla sınırlandırılmalıdır. explanation_html: 'E-posta, %{display_count} kullanıcıya gönderilecektir. E-posta içerisinde aşağıdaki metin yer alacaktır:' title: Duyuru bildiriminin önizlemesine bak publish: Yayınla diff --git a/config/locales/uk.yml b/config/locales/uk.yml index 788c84fb27..0256773d32 100644 --- a/config/locales/uk.yml +++ b/config/locales/uk.yml @@ -325,6 +325,7 @@ uk: create: Створити оголошення title: Нове оголошення preview: + disclaimer: Оскільки користувачі не можуть відмовитися від них, сповіщення по електронній пошті повинні обмежуватися важливими оголошеннями, такими як порушення особистих даних або повідомлення про закриття серверу. explanation_html: 'Електронний лист буде надіслано %{display_count} користувачам. До електронного листа буде включено такий текст:' title: Попередній перегляд сповіщення publish: Опублікувати diff --git a/config/locales/vi.yml b/config/locales/vi.yml index 25f423d37a..a255973a10 100644 --- a/config/locales/vi.yml +++ b/config/locales/vi.yml @@ -316,6 +316,7 @@ vi: create: Tạo thông báo title: Tạo thông báo mới preview: + disclaimer: Vì người dùng không thể chọn không nhận thông báo qua email nên thông báo qua email chỉ nên giới hạn ở những thông báo quan trọng như thông báo vi phạm dữ liệu cá nhân hoặc thông báo đóng máy chủ. explanation_html: 'Gửi email tới %{display_count} thành viên. Nội dung sau đây sẽ được đưa vào email:' title: Xem trước thông báo sẽ gửi publish: Đăng diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml index 5542975143..3b87654041 100644 --- a/config/locales/zh-CN.yml +++ b/config/locales/zh-CN.yml @@ -316,6 +316,7 @@ zh-CN: create: 创建公告 title: 新公告 preview: + disclaimer: 由于用户无法选择退出,电子邮件通知应仅限于重要公告,例如个人数据泄露或服务器关闭通知。 explanation_html: 此电子邮件将发送给 %{display_count} 用户。电子邮件将包含以下文本: title: 预览公告通知 publish: 发布 @@ -471,6 +472,30 @@ zh-CN: new: title: 导入域名列表 no_file: 没有选择文件 + fasp: + debug: + callbacks: + created_at: 创建于 + delete: 刪除 + ip: IP 地址 + request_body: 请求正文 + title: 调试回调 + providers: + active: 有效 + base_url: 基础 URL + callback: 回调 + delete: 刪除 + edit: 编辑提供商 + finish_registration: 完成注册 + name: 名称 + providers: 提供商 + public_key_fingerprint: 公钥指纹 + registrations: + confirm: 确认 + reject: 拒绝 + save: 保存 + sign_in: 登录 + status: 状态 follow_recommendations: description_html: "“关注推荐”可帮助新用户快速找到有趣的内容。 当用户与他人的互动不足以形成个性化的建议时,就会推荐关注这些账号。推荐会每日更新,基于选定语言的近期最高互动数和最多本站关注者数综合评估得出。" language: 选择语言 diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml index 029aa33214..fae08b3216 100644 --- a/config/locales/zh-TW.yml +++ b/config/locales/zh-TW.yml @@ -316,6 +316,7 @@ zh-TW: create: 新增公告 title: 新增公告 preview: + disclaimer: 由於使用者無法選擇退出,電子郵件通知應僅限於重要公告,例如個人資料洩露或伺服器關閉通知。 explanation_html: 此 email 將寄至 %{display_count} 名使用者。以下文字將被包含於 e-mail 中: title: 預覽公告通知 publish: 發布 From aadff24099aced99c880a1dd65ea6fced9f7dff6 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Mon, 14 Apr 2025 03:28:11 -0400 Subject: [PATCH 06/15] Enable `validate: true` on `CustomFilter#action` (#34434) --- app/models/custom_filter.rb | 2 +- spec/requests/api/v2/filters_spec.rb | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/app/models/custom_filter.rb b/app/models/custom_filter.rb index d653c55310..07bbfd4373 100644 --- a/app/models/custom_filter.rb +++ b/app/models/custom_filter.rb @@ -33,7 +33,7 @@ class CustomFilter < ApplicationRecord include Expireable include Redisable - enum :action, { warn: 0, hide: 1, blur: 2 }, suffix: :action + enum :action, { warn: 0, hide: 1, blur: 2 }, suffix: :action, validate: true belongs_to :account has_many :keywords, class_name: 'CustomFilterKeyword', inverse_of: :custom_filter, dependent: :destroy diff --git a/spec/requests/api/v2/filters_spec.rb b/spec/requests/api/v2/filters_spec.rb index 3b5c44cefa..304afc7bd8 100644 --- a/spec/requests/api/v2/filters_spec.rb +++ b/spec/requests/api/v2/filters_spec.rb @@ -115,6 +115,21 @@ RSpec.describe 'Filters' do .to start_with('application/json') end end + + context 'when the given filter_action value is invalid' do + let(:params) { { title: 'magic', filter_action: 'imaginary_value', keywords_attributes: [keyword: 'magic'] } } + + it 'returns http unprocessable entity' do + subject + + expect(response) + .to have_http_status(422) + expect(response.content_type) + .to start_with('application/json') + expect(response.parsed_body) + .to include(error: /Action is not included/) + end + end end describe 'GET /api/v2/filters/:id' do From f47ad7814a63e2d26325ca7e7eb067b99017e80b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 14 Apr 2025 09:29:44 +0200 Subject: [PATCH 07/15] Fix "Feature on profile" option on profile dropdown menu in web UI (#34422) --- .../features/account_timeline/components/account_header.tsx | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/app/javascript/mastodon/features/account_timeline/components/account_header.tsx b/app/javascript/mastodon/features/account_timeline/components/account_header.tsx index c8fb3d2ae7..457cbcdcc4 100644 --- a/app/javascript/mastodon/features/account_timeline/components/account_header.tsx +++ b/app/javascript/mastodon/features/account_timeline/components/account_header.tsx @@ -495,9 +495,7 @@ export const AccountHeader: React.FC<{ arr.push({ text: intl.formatMessage( - account.getIn(['relationship', 'endorsed']) - ? messages.unendorse - : messages.endorse, + relationship.endorsed ? messages.unendorse : messages.endorse, ), action: handleEndorseToggle, }); @@ -746,7 +744,7 @@ export const AccountHeader: React.FC<{ badges.push(); } - account.get('roles', []).forEach((role) => { + account.roles.forEach((role) => { badges.push( Date: Mon, 14 Apr 2025 09:31:44 +0200 Subject: [PATCH 08/15] chore(deps): update yarn to v4.9.0 (#34410) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- streaming/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index cd4eb712d7..9835639f19 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@mastodon/mastodon", "license": "AGPL-3.0-or-later", - "packageManager": "yarn@4.8.1", + "packageManager": "yarn@4.9.0", "engines": { "node": ">=18" }, diff --git a/streaming/package.json b/streaming/package.json index f376b89c3a..4b3aa72579 100644 --- a/streaming/package.json +++ b/streaming/package.json @@ -1,7 +1,7 @@ { "name": "@mastodon/streaming", "license": "AGPL-3.0-or-later", - "packageManager": "yarn@4.8.1", + "packageManager": "yarn@4.9.0", "engines": { "node": ">=18" }, From 5991caae87f741f389ae4992b1d2be182d779d47 Mon Sep 17 00:00:00 2001 From: SASAGAWA Hiroto Date: Mon, 14 Apr 2025 19:57:21 +0900 Subject: [PATCH 09/15] Disable kerning for Japanese text to preserve monospaced alignment for readability (#34448) --- app/javascript/styles/mastodon/basics.scss | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/javascript/styles/mastodon/basics.scss b/app/javascript/styles/mastodon/basics.scss index 8d3e641eda..dc3466b7f3 100644 --- a/app/javascript/styles/mastodon/basics.scss +++ b/app/javascript/styles/mastodon/basics.scss @@ -17,7 +17,12 @@ body { font-weight: 400; color: $primary-text-color; text-rendering: optimizelegibility; - font-feature-settings: 'kern'; + + // Disable kerning for Japanese text to preserve monospaced alignment for readability + &:not(:lang(ja)) { + font-feature-settings: 'kern'; + } + text-size-adjust: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0%); -webkit-tap-highlight-color: transparent; From 2eaef09166396af3d8367a7d9b7b3b9d4d51103f Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Mon, 14 Apr 2025 17:11:10 -0400 Subject: [PATCH 10/15] Use enum validation instead of `ArgumentError` rescue for `List` replies policy check (#34452) --- app/controllers/api/v1/lists_controller.rb | 4 ---- app/models/list.rb | 2 +- spec/requests/api/v1/lists_spec.rb | 5 ++++- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/app/controllers/api/v1/lists_controller.rb b/app/controllers/api/v1/lists_controller.rb index 4bbbed2673..6bb884faa0 100644 --- a/app/controllers/api/v1/lists_controller.rb +++ b/app/controllers/api/v1/lists_controller.rb @@ -7,10 +7,6 @@ class Api::V1::ListsController < Api::BaseController before_action :require_user! before_action :set_list, except: [:index, :create] - rescue_from ArgumentError do |e| - render json: { error: e.to_s }, status: 422 - end - def index @lists = List.where(account: current_account).all render json: @lists, each_serializer: REST::ListSerializer diff --git a/app/models/list.rb b/app/models/list.rb index cd01774539..76c116ce24 100644 --- a/app/models/list.rb +++ b/app/models/list.rb @@ -18,7 +18,7 @@ class List < ApplicationRecord PER_ACCOUNT_LIMIT = 50 - enum :replies_policy, { list: 0, followed: 1, none: 2 }, prefix: :show + enum :replies_policy, { list: 0, followed: 1, none: 2 }, prefix: :show, validate: true belongs_to :account diff --git a/spec/requests/api/v1/lists_spec.rb b/spec/requests/api/v1/lists_spec.rb index 20f27a7431..226632c5ac 100644 --- a/spec/requests/api/v1/lists_spec.rb +++ b/spec/requests/api/v1/lists_spec.rb @@ -132,9 +132,12 @@ RSpec.describe 'Lists' do it 'returns http unprocessable entity' do subject - expect(response).to have_http_status(422) + expect(response) + .to have_http_status(422) expect(response.content_type) .to start_with('application/json') + expect(response.parsed_body) + .to include(error: /Replies policy is not included/) end end end From f115c7b3a20f4aa7afd47ae187360af9ce5766ae Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 15 Apr 2025 11:02:21 +0200 Subject: [PATCH 11/15] chore(deps): update yarn to v4.9.1 (#34451) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- streaming/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 9835639f19..b0a5382aee 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@mastodon/mastodon", "license": "AGPL-3.0-or-later", - "packageManager": "yarn@4.9.0", + "packageManager": "yarn@4.9.1", "engines": { "node": ">=18" }, diff --git a/streaming/package.json b/streaming/package.json index 4b3aa72579..fa33b575db 100644 --- a/streaming/package.json +++ b/streaming/package.json @@ -1,7 +1,7 @@ { "name": "@mastodon/streaming", "license": "AGPL-3.0-or-later", - "packageManager": "yarn@4.9.0", + "packageManager": "yarn@4.9.1", "engines": { "node": ">=18" }, From ba0bd3da4a9d55150f0165eef1cf33f69a2bde62 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 15 Apr 2025 11:19:49 +0200 Subject: [PATCH 12/15] New Crowdin Translations (automated) (#34456) Co-authored-by: GitHub Actions --- config/locales/ko.yml | 1 + config/locales/simple_form.ko.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/config/locales/ko.yml b/config/locales/ko.yml index c4ba1fa9e7..1ce5ef2da9 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -316,6 +316,7 @@ ko: create: 공지사항 생성 title: 새 공지사항 preview: + disclaimer: 사용자들은 수신설정을 끌 수 없기 때문에 이메일 알림은 개인정보 유출이나 서버 종료와 같은 중요한 공지사항에만 사용해야 합니다. explanation_html: "%{display_count} 명의 사용자에게 이메일이 발송됩니다. 다음 내용이 이메일에 포함됩니다:" title: 공지사항 알림 미리보기 publish: 게시 diff --git a/config/locales/simple_form.ko.yml b/config/locales/simple_form.ko.yml index a823604584..661028fff0 100644 --- a/config/locales/simple_form.ko.yml +++ b/config/locales/simple_form.ko.yml @@ -146,6 +146,7 @@ ko: min_age: 관할지역의 법률에서 요구하는 최저 연령보다 작으면 안 됩니다. user: chosen_languages: 체크하면, 선택 된 언어로 작성된 게시물들만 공개 타임라인에 보여집니다 + date_of_birth: 마스토돈을 사용하려면 %{age}세 이상임을 확인해야 합니다. 이 정보는 저장되지 않습니다. role: 역할은 사용자가 어떤 권한을 가지게 될 지 결정합니다. user_role: color: 색상은 사용자 인터페이스에서 역할을 나타내기 위해 사용되며, RGB 16진수 형식입니다 From ff0990ec9f9dfb6da8706157dab636ad5f955933 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 16 Apr 2025 07:39:20 +0200 Subject: [PATCH 13/15] Add REST API for fetching an account's endorsed accounts (#34421) --- .../v1/accounts/endorsements_controller.rb | 66 +++++++++++++++++++ .../v1/accounts/featured_tags_controller.rb | 2 +- .../api/v1/accounts/pins_controller.rb | 30 --------- config/routes/api.rb | 7 +- .../{pins_spec.rb => endorsements_spec.rb} | 30 +++++++-- 5 files changed, 98 insertions(+), 37 deletions(-) create mode 100644 app/controllers/api/v1/accounts/endorsements_controller.rb delete mode 100644 app/controllers/api/v1/accounts/pins_controller.rb rename spec/requests/api/v1/accounts/{pins_spec.rb => endorsements_spec.rb} (57%) diff --git a/app/controllers/api/v1/accounts/endorsements_controller.rb b/app/controllers/api/v1/accounts/endorsements_controller.rb new file mode 100644 index 0000000000..1e21994a90 --- /dev/null +++ b/app/controllers/api/v1/accounts/endorsements_controller.rb @@ -0,0 +1,66 @@ +# frozen_string_literal: true + +class Api::V1::Accounts::EndorsementsController < Api::BaseController + include Authorization + + before_action -> { authorize_if_got_token! :read, :'read:accounts' }, only: :index + before_action -> { doorkeeper_authorize! :write, :'write:accounts' }, except: :index + before_action :require_user!, except: :index + before_action :set_account + before_action :set_endorsed_accounts, only: :index + after_action :insert_pagination_headers, only: :index + + def index + cache_if_unauthenticated! + render json: @endorsed_accounts, each_serializer: REST::AccountSerializer + end + + def create + AccountPin.find_or_create_by!(account: current_account, target_account: @account) + render json: @account, serializer: REST::RelationshipSerializer, relationships: relationships_presenter + end + + def destroy + pin = AccountPin.find_by(account: current_account, target_account: @account) + pin&.destroy! + render json: @account, serializer: REST::RelationshipSerializer, relationships: relationships_presenter + end + + private + + def set_account + @account = Account.find(params[:account_id]) + end + + def set_endorsed_accounts + @endorsed_accounts = @account.unavailable? ? [] : paginated_endorsed_accounts + end + + def paginated_endorsed_accounts + @account.endorsed_accounts.without_suspended.includes(:account_stat, :user).paginate_by_max_id( + limit_param(DEFAULT_ACCOUNTS_LIMIT), + params[:max_id], + params[:since_id] + ) + end + + def relationships_presenter + AccountRelationshipsPresenter.new([@account], current_user.account_id) + end + + def next_path + api_v1_account_endorsements_url pagination_params(max_id: pagination_max_id) if records_continue? + end + + def prev_path + api_v1_account_endorsements_url pagination_params(since_id: pagination_since_id) unless @endorsed_accounts.empty? + end + + def pagination_collection + @endorsed_accounts + end + + def records_continue? + @endorsed_accounts.size == limit_param(DEFAULT_ACCOUNTS_LIMIT) + end +end diff --git a/app/controllers/api/v1/accounts/featured_tags_controller.rb b/app/controllers/api/v1/accounts/featured_tags_controller.rb index 0101fb469b..f95846366c 100644 --- a/app/controllers/api/v1/accounts/featured_tags_controller.rb +++ b/app/controllers/api/v1/accounts/featured_tags_controller.rb @@ -17,6 +17,6 @@ class Api::V1::Accounts::FeaturedTagsController < Api::BaseController end def set_featured_tags - @featured_tags = @account.suspended? ? [] : @account.featured_tags + @featured_tags = @account.unavailable? ? [] : @account.featured_tags end end diff --git a/app/controllers/api/v1/accounts/pins_controller.rb b/app/controllers/api/v1/accounts/pins_controller.rb deleted file mode 100644 index 0eb13c048c..0000000000 --- a/app/controllers/api/v1/accounts/pins_controller.rb +++ /dev/null @@ -1,30 +0,0 @@ -# frozen_string_literal: true - -class Api::V1::Accounts::PinsController < Api::BaseController - include Authorization - - before_action -> { doorkeeper_authorize! :write, :'write:accounts' } - before_action :require_user! - before_action :set_account - - def create - AccountPin.find_or_create_by!(account: current_account, target_account: @account) - render json: @account, serializer: REST::RelationshipSerializer, relationships: relationships_presenter - end - - def destroy - pin = AccountPin.find_by(account: current_account, target_account: @account) - pin&.destroy! - render json: @account, serializer: REST::RelationshipSerializer, relationships: relationships_presenter - end - - private - - def set_account - @account = Account.find(params[:account_id]) - end - - def relationships_presenter - AccountRelationshipsPresenter.new([@account], current_user.account_id) - end -end diff --git a/config/routes/api.rb b/config/routes/api.rb index c7be8c8e45..8fb8f5d0af 100644 --- a/config/routes/api.rb +++ b/config/routes/api.rb @@ -190,6 +190,7 @@ namespace :api, format: false do resources :lists, only: :index resources :identity_proofs, only: :index resources :featured_tags, only: :index + resources :endorsements, only: :index end member do @@ -203,8 +204,10 @@ namespace :api, format: false do end scope module: :accounts do - resource :pin, only: :create - post :unpin, to: 'pins#destroy' + post :pin, to: 'endorsements#create' + post :endorse, to: 'endorsements#create' + post :unpin, to: 'endorsements#destroy' + post :unendorse, to: 'endorsements#destroy' resource :note, only: :create end end diff --git a/spec/requests/api/v1/accounts/pins_spec.rb b/spec/requests/api/v1/accounts/endorsements_spec.rb similarity index 57% rename from spec/requests/api/v1/accounts/pins_spec.rb rename to spec/requests/api/v1/accounts/endorsements_spec.rb index 8ebcb27d28..6e0996a1f1 100644 --- a/spec/requests/api/v1/accounts/pins_spec.rb +++ b/spec/requests/api/v1/accounts/endorsements_spec.rb @@ -13,8 +13,30 @@ RSpec.describe 'Accounts Pins API' do kevin.account.followers << user.account end - describe 'POST /api/v1/accounts/:account_id/pin' do - subject { post "/api/v1/accounts/#{kevin.account.id}/pin", headers: headers } + describe 'GET /api/v1/accounts/:account_id/endorsements' do + subject { get "/api/v1/accounts/#{user.account.id}/endorsements", headers: headers } + + let(:scopes) { 'read:accounts' } + + before do + user.account.endorsed_accounts << kevin.account + end + + it 'returns the expected accounts', :aggregate_failures do + subject + + expect(response).to have_http_status(200) + expect(response.content_type) + .to start_with('application/json') + expect(response.parsed_body) + .to contain_exactly( + hash_including(id: kevin.account_id.to_s) + ) + end + end + + describe 'POST /api/v1/accounts/:account_id/endorse' do + subject { post "/api/v1/accounts/#{kevin.account.id}/endorse", headers: headers } it 'creates account_pin', :aggregate_failures do expect do @@ -26,8 +48,8 @@ RSpec.describe 'Accounts Pins API' do end end - describe 'POST /api/v1/accounts/:account_id/unpin' do - subject { post "/api/v1/accounts/#{kevin.account.id}/unpin", headers: headers } + describe 'POST /api/v1/accounts/:account_id/unendorse' do + subject { post "/api/v1/accounts/#{kevin.account.id}/unendorse", headers: headers } before do Fabricate(:account_pin, account: user.account, target_account: kevin.account) From 2fc38f524ed700609469842458f43cf42503ea8a Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Wed, 16 Apr 2025 02:40:25 -0400 Subject: [PATCH 14/15] Use bundler version 2.6.8 (#34453) --- Gemfile.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index f12647a403..f13df0c43f 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -94,7 +94,7 @@ GEM ast (2.4.3) attr_required (1.0.2) aws-eventstream (1.3.2) - aws-partitions (1.1080.0) + aws-partitions (1.1087.0) aws-sdk-core (3.215.1) aws-eventstream (~> 1, >= 1.3.0) aws-partitions (~> 1, >= 1.992.0) @@ -120,7 +120,7 @@ GEM rack (>= 0.9.0) rouge (>= 1.0.0) bigdecimal (3.1.9) - bindata (2.5.0) + bindata (2.5.1) binding_of_caller (1.0.1) debug_inspector (>= 1.2.0) blurhash (0.1.8) @@ -227,7 +227,7 @@ GEM fabrication (2.31.0) faker (3.5.1) i18n (>= 1.8.11, < 2) - faraday (2.12.2) + faraday (2.13.0) faraday-net_http (>= 2.0, < 3.5) json logger @@ -239,7 +239,7 @@ GEM net-http (>= 0.5.0) fast_blank (1.0.1) fastimage (2.4.0) - ffi (1.17.1) + ffi (1.17.2) ffi-compiler (1.3.2) ffi (>= 1.15.5) rake @@ -426,7 +426,7 @@ GEM mime-types (3.6.2) logger mime-types-data (~> 3.2015) - mime-types-data (3.2025.0402) + mime-types-data (3.2025.0408) mini_mime (1.1.5) mini_portile2 (2.8.8) minitest (5.25.5) @@ -585,8 +585,8 @@ GEM ostruct (0.6.1) ox (2.14.22) bigdecimal (>= 3.0) - parallel (1.26.3) - parser (3.3.7.4) + parallel (1.27.0) + parser (3.3.8.0) ast (~> 2.4.1) racc parslet (2.0.0) @@ -751,7 +751,7 @@ GEM rubocop-ast (>= 1.44.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.44.0) + rubocop-ast (1.44.1) parser (>= 3.3.7.2) prism (~> 1.4) rubocop-capybara (2.22.1) @@ -1085,4 +1085,4 @@ RUBY VERSION ruby 3.4.1p0 BUNDLED WITH - 2.6.7 + 2.6.8 From a324edabdfc19b6978ed31800b92e36022006cd5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 16 Apr 2025 08:53:05 +0200 Subject: [PATCH 15/15] chore(deps): update dependency ruby to v3.4.3 (#34459) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .ruby-version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.ruby-version b/.ruby-version index 4d9d11cf50..6cb9d3dd0d 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.4.2 +3.4.3