From e557769a3c30246b1ea4bd8d633d4199346d9e8a Mon Sep 17 00:00:00 2001 From: Claire Date: Sun, 8 Jun 2025 15:58:53 +0200 Subject: [PATCH 01/19] Remove broken link to `/start/share` in welcome e-mail (#34962) --- app/views/user_mailer/welcome.html.haml | 1 - app/views/user_mailer/welcome.text.erb | 6 +----- config/locales/ar.yml | 1 - config/locales/be.yml | 1 - config/locales/bg.yml | 1 - config/locales/br.yml | 1 - config/locales/ca.yml | 1 - config/locales/cs.yml | 1 - config/locales/cy.yml | 1 - config/locales/da.yml | 1 - config/locales/de.yml | 1 - config/locales/el.yml | 1 - config/locales/en-GB.yml | 1 - config/locales/en.yml | 1 - config/locales/eo.yml | 1 - config/locales/es-AR.yml | 1 - config/locales/es-MX.yml | 1 - config/locales/es.yml | 1 - config/locales/et.yml | 1 - config/locales/eu.yml | 1 - config/locales/fa.yml | 1 - config/locales/fi.yml | 1 - config/locales/fo.yml | 1 - config/locales/fr-CA.yml | 1 - config/locales/fr.yml | 1 - config/locales/fy.yml | 1 - config/locales/ga.yml | 1 - config/locales/gd.yml | 1 - config/locales/gl.yml | 1 - config/locales/he.yml | 1 - config/locales/hu.yml | 1 - config/locales/ia.yml | 1 - config/locales/ie.yml | 1 - config/locales/is.yml | 1 - config/locales/it.yml | 1 - config/locales/ja.yml | 1 - config/locales/kab.yml | 1 - config/locales/ko.yml | 1 - config/locales/lad.yml | 1 - config/locales/lt.yml | 1 - config/locales/lv.yml | 1 - config/locales/nl.yml | 1 - config/locales/nn.yml | 1 - config/locales/no.yml | 1 - config/locales/pl.yml | 1 - config/locales/pt-BR.yml | 1 - config/locales/pt-PT.yml | 1 - config/locales/ru.yml | 1 - config/locales/sc.yml | 1 - config/locales/sk.yml | 1 - config/locales/sl.yml | 1 - config/locales/sq.yml | 1 - config/locales/sr-Latn.yml | 1 - config/locales/sr.yml | 1 - config/locales/sv.yml | 1 - config/locales/th.yml | 1 - config/locales/tr.yml | 1 - config/locales/uk.yml | 1 - config/locales/vi.yml | 1 - config/locales/zh-CN.yml | 1 - config/locales/zh-HK.yml | 1 - config/locales/zh-TW.yml | 1 - 62 files changed, 1 insertion(+), 66 deletions(-) diff --git a/app/views/user_mailer/welcome.html.haml b/app/views/user_mailer/welcome.html.haml index c37104da79..fd37cfe26a 100644 --- a/app/views/user_mailer/welcome.html.haml +++ b/app/views/user_mailer/welcome.html.haml @@ -28,7 +28,6 @@ = render 'application/mailer/checklist', key: 'edit_profile', checked: @has_account_fields, button_text: t('user_mailer.welcome.edit_profile_action'), button_url: web_url('start/profile') = render 'application/mailer/checklist', key: 'follow', checked: @has_active_relationships, button_text: t('user_mailer.welcome.follow_action'), button_url: web_url('start/follows') = render 'application/mailer/checklist', key: 'post', checked: @has_statuses, button_text: t('user_mailer.welcome.post_action'), button_url: web_url - = render 'application/mailer/checklist', key: 'share', checked: false, button_text: t('user_mailer.welcome.share_action'), button_url: web_url('start/share') = render 'application/mailer/checklist', key: 'apps', checked: false, show_apps_buttons: true %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } %tr diff --git a/app/views/user_mailer/welcome.text.erb b/app/views/user_mailer/welcome.text.erb index 383f436f8e..ac7c0f09f2 100644 --- a/app/views/user_mailer/welcome.text.erb +++ b/app/views/user_mailer/welcome.text.erb @@ -24,11 +24,7 @@ <%= t('user_mailer.welcome.post_step') %> * <%= web_url %> -4. <%= t('user_mailer.welcome.share_title') %> - <%= t('user_mailer.welcome.share_step') %> - * <%= web_url('start/share') %> - -5. <%= t('user_mailer.welcome.apps_title') %> +4. <%= t('user_mailer.welcome.apps_title') %> <%= t('user_mailer.welcome.apps_step') %> * iOS: <%= app_store_url_ios %> * Android: <%= app_store_url_android %> diff --git a/config/locales/ar.yml b/config/locales/ar.yml index b6bba218db..6df034d5b7 100644 --- a/config/locales/ar.yml +++ b/config/locales/ar.yml @@ -1942,7 +1942,6 @@ ar: post_action: إنشاء post_step: قل مرحبا للعالَم عبر نصّ أو صور أو فيديوهات أو استطلاعات رأي. post_title: قم بإنشاء منشورك الأول - share_action: شارِك share_step: أخبر أصدقائك بكيفية العثور عليك على مَستُدون. share_title: شارك مِلَفّ مَستُدون التعريفي الخاص بك sign_in_action: تسجيل الدخول diff --git a/config/locales/be.yml b/config/locales/be.yml index 1e6394fa42..978328ffd6 100644 --- a/config/locales/be.yml +++ b/config/locales/be.yml @@ -1974,7 +1974,6 @@ be: post_action: Стварыць post_step: Скажыце ўсім прывітанне з дапамогай тэксту, фатаграфій, відэа і апытанняў. post_title: Стварыце свой першы допіс - share_action: Абагуліць share_step: Няхай вашыя сябры ведаюць, як знайсці вас у Mastodon. share_title: Абагульце ваш профіль у Mastodon sign_in_action: Увайсці diff --git a/config/locales/bg.yml b/config/locales/bg.yml index a55603516d..5a41164c06 100644 --- a/config/locales/bg.yml +++ b/config/locales/bg.yml @@ -2031,7 +2031,6 @@ bg: post_action: Съставяне post_step: Поздравете света с текст, снимки, видео или анкети. post_title: Направете първата си публикация - share_action: Споделяне share_step: Позволете на приятелите си да знаят как да ви намират в Mastodon. share_title: Споделете профила си в Mastodon sign_in_action: Вход diff --git a/config/locales/br.yml b/config/locales/br.yml index 5d039852d0..9f0cf07ab9 100644 --- a/config/locales/br.yml +++ b/config/locales/br.yml @@ -607,7 +607,6 @@ br: edit_profile_title: Personelaat ho profil feature_action: Gouzout hiroc'h follow_action: Heuliañ - share_action: Rannañ sign_in_action: Kevreañ subject: Donemat e Mastodon title: Degemer mat e bourzh, %{name}! diff --git a/config/locales/ca.yml b/config/locales/ca.yml index 0c113febeb..0d0d60cf52 100644 --- a/config/locales/ca.yml +++ b/config/locales/ca.yml @@ -2043,7 +2043,6 @@ ca: post_action: Redacteu post_step: Saludeu el món amb text, fotos, vídeos o enquestes. post_title: Feu la primera publicació - share_action: Compartiu share_step: Permeteu als vostres amics de saber com trobar-vos a Mastodon. share_title: Compartiu el perfil sign_in_action: Inicieu sessió diff --git a/config/locales/cs.yml b/config/locales/cs.yml index d557d1e6e3..c06917629c 100644 --- a/config/locales/cs.yml +++ b/config/locales/cs.yml @@ -2156,7 +2156,6 @@ cs: post_action: Sepsat post_step: Řekněte světu ahoj pomocí textu, fotografií, videí nebo anket. post_title: Vytvořte svůj první příspěvek - share_action: Sdílet share_step: Dejte přátelům vědět, jak vás mohou na Mastodonu najít. share_title: Sdílejte svůj Mastodon profil sign_in_action: Přihlásit se diff --git a/config/locales/cy.yml b/config/locales/cy.yml index ceff1b9bb9..87db8b6031 100644 --- a/config/locales/cy.yml +++ b/config/locales/cy.yml @@ -2244,7 +2244,6 @@ cy: post_action: Creu post_step: Dywedwch helo wrth y byd gyda thestun, lluniau, fideos neu arolygon barn. post_title: Creu'ch postiad cyntaf - share_action: Rhannu share_step: Gadewch i'ch ffrindiau wybod sut i ddod o hyd i chi ar Mastodon. share_title: Rhannwch eich proffil Mastodon sign_in_action: Mewngofnodi diff --git a/config/locales/da.yml b/config/locales/da.yml index e192f57c74..5257d9dee7 100644 --- a/config/locales/da.yml +++ b/config/locales/da.yml @@ -2068,7 +2068,6 @@ da: post_action: Skriv post_step: Sig hej til verden med tekst, fotos, videoer eller afstemninger. post_title: Opret det første indlæg - share_action: Del share_step: Lad vennerne vide, hvor man kan findes på Mastodon. share_title: Del Mastodon-profilen sign_in_action: Log ind diff --git a/config/locales/de.yml b/config/locales/de.yml index cc60c1dd02..ad025b95e7 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -2068,7 +2068,6 @@ de: post_action: Verfassen post_step: Begrüße die Welt mit Text, Fotos, Videos oder Umfragen. post_title: Erstelle deinen ersten Beitrag - share_action: Teilen share_step: Lass deine Freund*innen wissen, wie sie dich auf Mastodon finden können. share_title: Teile dein Mastodon-Profil sign_in_action: Anmelden diff --git a/config/locales/el.yml b/config/locales/el.yml index 2f7b66796a..f5a01af592 100644 --- a/config/locales/el.yml +++ b/config/locales/el.yml @@ -2047,7 +2047,6 @@ el: post_action: Σύνθεση post_step: Πες γεια στον κόσμο με κείμενο, φωτογραφίες, βίντεο ή δημοσκοπήσεις. post_title: Κάνε την πρώτη σου ανάρτηση - share_action: Κοινοποίηση share_step: Πες στους φίλους σου πώς να σε βρουν στο Mastodon. share_title: Μοιραστείτε το προφίλ σας στο Mastodon sign_in_action: Σύνδεση diff --git a/config/locales/en-GB.yml b/config/locales/en-GB.yml index 52e2ca68b9..f44404502e 100644 --- a/config/locales/en-GB.yml +++ b/config/locales/en-GB.yml @@ -2005,7 +2005,6 @@ en-GB: post_action: Compose post_step: Say hello to the world with text, photos, videos, or polls. post_title: Make your first post - share_action: Share share_step: Let your friends know how to find you on Mastodon. share_title: Share your Mastodon profile sign_in_action: Sign in diff --git a/config/locales/en.yml b/config/locales/en.yml index 2ab8f015d3..5fcdbe4c96 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -2069,7 +2069,6 @@ en: post_action: Compose post_step: Say hello to the world with text, photos, videos, or polls. post_title: Make your first post - share_action: Share share_step: Let your friends know how to find you on Mastodon. share_title: Share your Mastodon profile sign_in_action: Sign in diff --git a/config/locales/eo.yml b/config/locales/eo.yml index d0a75c7db7..69c6c361bf 100644 --- a/config/locales/eo.yml +++ b/config/locales/eo.yml @@ -2055,7 +2055,6 @@ eo: post_action: Redakti post_step: Salutu la mondon per teksto, fotoj, filmetoj aŭ balotenketoj. post_title: Faru vian unuan afiŝon - share_action: Kundividi share_step: Sciigu viajn amikojn kiel trovi vin sur Mastodon. share_title: Kunhavigu vian Mastodon-profilon sign_in_action: Ensaluti diff --git a/config/locales/es-AR.yml b/config/locales/es-AR.yml index b61b9b0b9e..0be9b84699 100644 --- a/config/locales/es-AR.yml +++ b/config/locales/es-AR.yml @@ -2068,7 +2068,6 @@ es-AR: post_action: Redactar post_step: Decile "Hola" al mundo con textos, fotos, videos o encuestas. post_title: Escribí tu primer mensaje - share_action: Compartir share_step: Hacé que tus amistades sepan cómo encontrarte en Mastodon. share_title: Compartí tu perfil de Mastodon sign_in_action: Iniciá sesión diff --git a/config/locales/es-MX.yml b/config/locales/es-MX.yml index 38a9b7f1e7..24a3af1d30 100644 --- a/config/locales/es-MX.yml +++ b/config/locales/es-MX.yml @@ -2068,7 +2068,6 @@ es-MX: post_action: Redacta post_step: Di hola al mundo con texto, fotos, vídeos o encuestas. post_title: Haz tu primera publicación - share_action: Comparte share_step: Dile a tus amigos cómo encontrarte en Mastodon. share_title: Comparte tu perfil de Mastodon sign_in_action: Regístrate diff --git a/config/locales/es.yml b/config/locales/es.yml index 2c7698548d..749104d691 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -2068,7 +2068,6 @@ es: post_action: Redactar post_step: Di hola al mundo con texto, fotos, vídeos o encuestas. post_title: Escribe tu primera publicación - share_action: Compartir share_step: Dile a tus amigos cómo encontrarte en Mastodon. share_title: Comparte tu perfil de Mastodon sign_in_action: Regístrate diff --git a/config/locales/et.yml b/config/locales/et.yml index 952677f08c..afbb429bb5 100644 --- a/config/locales/et.yml +++ b/config/locales/et.yml @@ -1997,7 +1997,6 @@ et: post_action: Postita post_step: Tervita maailma teksti, fotode, videote või küsitlustega. post_title: Tee oma esimene postitus - share_action: Jaga share_step: Anna sõpradele teada, kuidas Sind Mastodonis leida. share_title: Jaga oma Mastodoni profiili sign_in_action: Sisene diff --git a/config/locales/eu.yml b/config/locales/eu.yml index 90a3ef4938..79080c7bfb 100644 --- a/config/locales/eu.yml +++ b/config/locales/eu.yml @@ -1814,7 +1814,6 @@ eu: post_action: Idatzi post_step: Agurtu munduari testu, argazki, bideo zein inkesta batekin. post_title: Idatzi zeure lehen argitalpena - share_action: Partekatu share_step: Esaiezu lagunei nola aurki zaitzaketen Mastodon-en. share_title: Partekatu Mastodon profila sign_in_action: Hasi saioa diff --git a/config/locales/fa.yml b/config/locales/fa.yml index 0ee4e6dd22..4d341939a6 100644 --- a/config/locales/fa.yml +++ b/config/locales/fa.yml @@ -2058,7 +2058,6 @@ fa: post_action: ایجاد post_step: سلام کردن به جهان با متن، عکس، ویدیو یا نظرسنجی. post_title: ساخت نخستین نظرسنجیتان - share_action: هم‌رسانی share_step: بگذارید دوستانتان بدانند چگونه روی ماستودون بیابندتان. share_title: هم‌رسانی نمایهٔ ماستودونتان sign_in_action: ورود diff --git a/config/locales/fi.yml b/config/locales/fi.yml index d23e43e84e..5e64c035f2 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -2066,7 +2066,6 @@ fi: post_action: Kirjoita post_step: Tervehdi maailmaa sanoin, kuvin, videoin ja äänestyksin. post_title: Tee ensimmäinen julkaisusi - share_action: Jaa share_step: Kerro ystävillesi, kuinka sinut voi löytää Mastodonista. share_title: Jaa Mastodon-profiilisi sign_in_action: Kirjaudu sisään diff --git a/config/locales/fo.yml b/config/locales/fo.yml index ca10cbe710..7e3866dcb1 100644 --- a/config/locales/fo.yml +++ b/config/locales/fo.yml @@ -2063,7 +2063,6 @@ fo: post_action: Skriva post_step: Sig hey við verðina við teksti, myndum, video ella spurnarkanningum. post_title: Stovna tín fyrsta post - share_action: Deil share_step: Lat vinir tínar vita, hvussu tey finna teg á Mastodon. share_title: Deil tín Mastodon vanga sign_in_action: Rita inn diff --git a/config/locales/fr-CA.yml b/config/locales/fr-CA.yml index 4de99762d8..a011723461 100644 --- a/config/locales/fr-CA.yml +++ b/config/locales/fr-CA.yml @@ -2032,7 +2032,6 @@ fr-CA: post_action: Rédiger post_step: Dites bonjour au monde avec du texte, des photos, des vidéos ou des sondages. post_title: Rédiger votre premier message - share_action: Partager share_step: Faites savoir à vos ami·e·s comment vous trouver sur Mastodon. share_title: Partager votre profil Mastodon sign_in_action: Se connecter diff --git a/config/locales/fr.yml b/config/locales/fr.yml index b89fed362e..30090fef2c 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -2032,7 +2032,6 @@ fr: post_action: Rédiger post_step: Dites bonjour au monde avec du texte, des photos, des vidéos ou des sondages. post_title: Rédiger votre premier message - share_action: Partager share_step: Faites savoir à vos ami·e·s comment vous trouver sur Mastodon. share_title: Partager votre profil Mastodon sign_in_action: Se connecter diff --git a/config/locales/fy.yml b/config/locales/fy.yml index 9fe53b7951..71d9f64285 100644 --- a/config/locales/fy.yml +++ b/config/locales/fy.yml @@ -2049,7 +2049,6 @@ fy: post_action: Opstelle post_step: Sis hallo tsjin de wrâld mei tekst, foto’s, fideo’s of peilingen. post_title: Jo earste berjocht meitsje - share_action: Diele share_step: Lit jo freonen witte hoe’t jo te finen binne op Mastodon. share_title: Jo Mastodon-profyl diele sign_in_action: Oanmelde diff --git a/config/locales/ga.yml b/config/locales/ga.yml index 230f9c92bf..223b0cd08d 100644 --- a/config/locales/ga.yml +++ b/config/locales/ga.yml @@ -2200,7 +2200,6 @@ ga: post_action: Cum post_step: Abair hello leis an domhan le téacs, grianghraif, físeáin, nó pobalbhreith. post_title: Déan do chéad phostáil - share_action: Comhroinn share_step: Cuir in iúl do do chairde conas tú a aimsiú ar Mastodon. share_title: Roinn do phróifíl Mastodon sign_in_action: Sínigh isteach diff --git a/config/locales/gd.yml b/config/locales/gd.yml index 0815ae9dcb..32cf7403e9 100644 --- a/config/locales/gd.yml +++ b/config/locales/gd.yml @@ -2156,7 +2156,6 @@ gd: post_action: Sgrìobh post_step: Cuir an aithne air an t-saoghal le teacsa, dealbhan, videothan no cunntasan-bheachd. post_title: Cruthaich a’ chiad phost agad - share_action: Co-roinn share_step: Leig fios dha do charaidean mar a gheibh iad grèim ort air Mastodon. share_title: Co-roinn a’ phròifil Mastodon agad sign_in_action: Clàraich a-steach diff --git a/config/locales/gl.yml b/config/locales/gl.yml index b9fc4ee911..420e26e285 100644 --- a/config/locales/gl.yml +++ b/config/locales/gl.yml @@ -2068,7 +2068,6 @@ gl: post_action: Escribir post_step: Saúda a todo o mundo con texto, fotos, vídeos ou enquisas. post_title: Escribe a túa primeira publicación - share_action: Compartir share_step: Dille ás amizades como poden atoparte en Mastodon. share_title: Comparte o teu perfil en Mastodon sign_in_action: Acceder diff --git a/config/locales/he.yml b/config/locales/he.yml index 4a2de26fd1..12287c7256 100644 --- a/config/locales/he.yml +++ b/config/locales/he.yml @@ -2156,7 +2156,6 @@ he: post_action: חיבור הודעה post_step: ברכו לשלום את העולם עם מלל, תמונות, חוזי או משאלים. post_title: כתבו את הפוסט הראשון שלכםן - share_action: שיתוף share_step: ספרו לחברים איך למצוא אתכם במסטודון. share_title: שיתוף פרופיל מסטודון sign_in_action: התחברות diff --git a/config/locales/hu.yml b/config/locales/hu.yml index 8e66e934f8..c224f5da4a 100644 --- a/config/locales/hu.yml +++ b/config/locales/hu.yml @@ -2068,7 +2068,6 @@ hu: post_action: Bejegyzés írása post_step: Köszöntsd a világot szöveggel, fotókkal, videókkal vagy szavazásokkal. post_title: Az első bejegyzés létrehozása - share_action: Megosztás share_step: Tudasd az ismerőseiddel, hogyan találhatnak meg a Mastodonon. share_title: Oszd meg a Mastodon profilodat sign_in_action: Bejelentkezés diff --git a/config/locales/ia.yml b/config/locales/ia.yml index 592f66864a..35dd56aad1 100644 --- a/config/locales/ia.yml +++ b/config/locales/ia.yml @@ -2032,7 +2032,6 @@ ia: post_action: Scriber post_step: Saluta le mundo con texto, photos, videos o sondages. post_title: Face tu prime message - share_action: Compartir share_step: Face saper a tu amicos como trovar te sur Mastodon. share_title: Compartir tu profilo de Mastodon sign_in_action: Initiar session diff --git a/config/locales/ie.yml b/config/locales/ie.yml index a694ae95ad..2ca8e9ed0a 100644 --- a/config/locales/ie.yml +++ b/config/locales/ie.yml @@ -1797,7 +1797,6 @@ ie: post_action: Composir post_step: Saluta li munde con textu, images, videos o balotationes. post_title: Crear tui unesim posta - share_action: Compartir share_step: Informar tui amics qualmen trovar te che Mastodon. share_title: Partir tui profil Mastodon sign_in_action: Intrar diff --git a/config/locales/is.yml b/config/locales/is.yml index 3dae3a3aa1..440df415c2 100644 --- a/config/locales/is.yml +++ b/config/locales/is.yml @@ -2072,7 +2072,6 @@ is: post_action: Skrifa post_step: Heilsaðu heiminum með texta, ljósmyndum, myndskeiðum eða könnunum. post_title: Gerðu fyrstu færsluna þína - share_action: Deila share_step: Láttu vini þína vita hvernig þeir geta fundið þig á Mastodon. share_title: Deildu notandasniðinu þínu sign_in_action: Skrá inn diff --git a/config/locales/it.yml b/config/locales/it.yml index 7a03a993a0..26f1c2f168 100644 --- a/config/locales/it.yml +++ b/config/locales/it.yml @@ -2070,7 +2070,6 @@ it: post_action: Scrivi post_step: Salutate il mondo con testo, foto, video o sondaggi. post_title: Scrivi il tuo primo post - share_action: Condividi share_step: Fai sapere ai tuoi amici come trovarti su Mastodon. share_title: Condividi il tuo profilo Mastodon sign_in_action: Accedi diff --git a/config/locales/ja.yml b/config/locales/ja.yml index 18ab8a2d05..f3c4d3089a 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -2024,7 +2024,6 @@ ja: post_action: 作成 post_step: 試しになにか書いてみましょう。写真、ビデオ、アンケートなど、なんでも大丈夫です. post_title: はじめての投稿 - share_action: 共有 share_step: Mastodon アカウントをほかの人に紹介しましょう。 share_title: プロフィールをシェアする sign_in_action: ログイン diff --git a/config/locales/kab.yml b/config/locales/kab.yml index 4860655c90..a7ad9b356f 100644 --- a/config/locales/kab.yml +++ b/config/locales/kab.yml @@ -908,7 +908,6 @@ kab: hashtags_view_more: Sken-d ugar n yihacṭagen mucaɛen post_step: Ini-as azul i umaḍal s uḍris, s tiwlafin, s tividyutin neɣ s tefranin. post_title: Aru tasuffeɣt-inek·inem tamezwarut - share_action: Bḍu share_step: Init-asen i yimeddukal-nwen amek ara ken-id-afen deg Mastodon. share_title: Bḍu amaɣnu-inek·inem n Mastodon sign_in_action: Qqen diff --git a/config/locales/ko.yml b/config/locales/ko.yml index c1c38c7259..7f2267e2e5 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -2025,7 +2025,6 @@ ko: post_action: 작성 post_step: 글, 사진, 영상, 또는 투표로 세상에 인사해보세요. post_title: 첫번째 게시물 쓰기 - share_action: 공유 share_step: 친구에게 마스토돈에서 나를 찾을 수 있는 방법을 알려주세요. share_title: 마스토돈 프로필을 공유하세요 sign_in_action: 로그인 diff --git a/config/locales/lad.yml b/config/locales/lad.yml index c83d336338..642c234892 100644 --- a/config/locales/lad.yml +++ b/config/locales/lad.yml @@ -1888,7 +1888,6 @@ lad: post_action: Eskrive post_step: Puedes introdusirte al mundo kon teksto, fotos, videos o anketas. post_title: Eskrive tu primera publikasyon - share_action: Partaja share_step: Informa a tus amigos komo toparte en Mastodon. share_title: Partaja tu profil de Mastodon sign_in_action: Konektate diff --git a/config/locales/lt.yml b/config/locales/lt.yml index 5d97bf5246..41cf7cae96 100644 --- a/config/locales/lt.yml +++ b/config/locales/lt.yml @@ -1300,7 +1300,6 @@ lt: post_action: Sukurti post_step: Sakyk labas pasauliui tekstu, nuotraukomis, vaizdo įrašais arba apklausomis. post_title: Sukūrk savo pirmąjį įrašą - share_action: Bendrinti share_step: Leisk draugams sužinoti, kaip tave rasti Mastodon. share_title: Bendrink savo Mastodon profilį sign_in_action: Prisijungti diff --git a/config/locales/lv.yml b/config/locales/lv.yml index 4d00631e8c..f7db52a40f 100644 --- a/config/locales/lv.yml +++ b/config/locales/lv.yml @@ -2100,7 +2100,6 @@ lv: post_action: Rakstīt post_step: Pasveicini pasauli ar tekstu, fotoattēliem, video vai aptaujām! post_title: Izveido savu pirmo ierakstu - share_action: Kopīgot share_step: Dari saviem draugiem zināmu, kā Tevi atrast Mastodon! share_title: Kopīgo savu Mastodon profilu sign_in_action: Pieteikties diff --git a/config/locales/nl.yml b/config/locales/nl.yml index 7b72df5f3e..246642109e 100644 --- a/config/locales/nl.yml +++ b/config/locales/nl.yml @@ -2068,7 +2068,6 @@ nl: post_action: Opstellen post_step: Zeg hallo tegen de wereld met tekst, foto's, video's of peilingen. post_title: Je eerste bericht schrijven - share_action: Delen share_step: Laat je vrienden weten waar je op Mastodon bent te vinden. share_title: Je Mastodonprofiel delen sign_in_action: Inloggen diff --git a/config/locales/nn.yml b/config/locales/nn.yml index 29893bb21c..e52768469d 100644 --- a/config/locales/nn.yml +++ b/config/locales/nn.yml @@ -2068,7 +2068,6 @@ nn: post_action: Skriv post_step: Sei hei til verda med tekst, bilete, filmar eller meiningsmålingar. post_title: Skriv ditt fyrste innlegg - share_action: Del share_step: Fortel venene dine korleis dei finn deg på Mastodon. share_title: Del Mastodon-profilen din sign_in_action: Logg inn diff --git a/config/locales/no.yml b/config/locales/no.yml index 620fe828ea..ddf087b7f9 100644 --- a/config/locales/no.yml +++ b/config/locales/no.yml @@ -1788,7 +1788,6 @@ post_action: Sett sammen post_step: Si hallo til verdenen med tekst, bilder, videoer, eller meningsmålinger. post_title: Lag ditt første innlegg - share_action: Del share_step: La vennene dine vite hvordan finne deg på Mastodon. share_title: Del Mastadon-profilen din sign_in_action: Logg inn diff --git a/config/locales/pl.yml b/config/locales/pl.yml index a77f82d634..36897280f5 100644 --- a/config/locales/pl.yml +++ b/config/locales/pl.yml @@ -2093,7 +2093,6 @@ pl: post_action: Utwórz wpis post_step: Przywitaj się ze światem. post_title: Utwórz swój pierwszy post - share_action: Udostępnij share_step: Poinformuj swoich przyjaciół jak znaleźć cię na Mastodonie. share_title: Udostępnij swój profil sign_in_action: Zaloguj się diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml index 6f6b9258d4..27d2c860e1 100644 --- a/config/locales/pt-BR.yml +++ b/config/locales/pt-BR.yml @@ -2068,7 +2068,6 @@ pt-BR: post_action: Escrever post_step: Diga olá para o mundo com texto, fotos, vídeos ou enquetes. post_title: Crie sua primeira publicação - share_action: Compartilhar share_step: Deixe seus amigos saberem como te encontrar no Mastodon. share_title: Compartilhe seu perfil do Mastodon sign_in_action: Entrar diff --git a/config/locales/pt-PT.yml b/config/locales/pt-PT.yml index b391f65315..8a5d2771ff 100644 --- a/config/locales/pt-PT.yml +++ b/config/locales/pt-PT.yml @@ -2068,7 +2068,6 @@ pt-PT: post_action: Compor post_step: Diz olá para o mundo com texto, fotos, vídeos ou sondagens. post_title: Faz a tua primeira publicação - share_action: Partilhar share_step: Diz aos teus amigos como te podem encontrar no Mastodon. share_title: Partilha o teu perfil de Mastodon sign_in_action: Iniciar sessão diff --git a/config/locales/ru.yml b/config/locales/ru.yml index 67b3aa09d4..bb9d274a47 100644 --- a/config/locales/ru.yml +++ b/config/locales/ru.yml @@ -2112,7 +2112,6 @@ ru: post_action: Составить post_step: Поприветствуйте мир с помощью текста, фотографий, видео или опросов. post_title: Сделайте свой первый пост - share_action: Поделиться share_step: Пусть ваши друзья знают, как найти вас на Mastodon. share_title: Поделитесь информацией о компании Mastodon sign_in_action: Зарегистрироваться diff --git a/config/locales/sc.yml b/config/locales/sc.yml index c9f0053bc4..c6b80847a4 100644 --- a/config/locales/sc.yml +++ b/config/locales/sc.yml @@ -1242,7 +1242,6 @@ sc: follow_title: Personaliza s'ischermu printzipale post_action: Iscrie post_title: Pùblica pro sa primu borta - share_action: Cumpartzi share_title: Cumpartzi su profilu tuo de Mastodon sign_in_action: Intra subject: Ti donamus su benebènnidu a Mastodon diff --git a/config/locales/sk.yml b/config/locales/sk.yml index a34013bd61..c3c091dd39 100644 --- a/config/locales/sk.yml +++ b/config/locales/sk.yml @@ -1373,7 +1373,6 @@ sk: follow_title: Prispôsob svoj domáci kanál follows_title: Koho nasledovať post_title: Vytvor svoj prvý príspevok - share_action: Zdieľaj sign_in_action: Prihlás sa subject: Vitaj na Mastodone title: Vitaj na palube, %{name}! diff --git a/config/locales/sl.yml b/config/locales/sl.yml index 9cbd5453b8..e6339e2249 100644 --- a/config/locales/sl.yml +++ b/config/locales/sl.yml @@ -2104,7 +2104,6 @@ sl: post_action: Sestavi post_step: Pozdravite cel svet z besedilom, fotografijami, videoposnetki ali anketami. post_title: Ustvarite svojo prvo objavo - share_action: Delite share_step: Naj prijatelji izvejo, kako vas najdejo na Mastodonu. share_title: Delite svoj profil Mastodon z drugimi sign_in_action: Prijava diff --git a/config/locales/sq.yml b/config/locales/sq.yml index f6ee3b0f28..ea9a2ea4cc 100644 --- a/config/locales/sq.yml +++ b/config/locales/sq.yml @@ -2058,7 +2058,6 @@ sq: post_action: Hartoni post_step: Përshëndetni botën me tekst, foto, video, ose pyetësorë. post_title: Shkruani postimin tuaj të parë - share_action: Ndajeni me të tjerë share_step: Bëjuni të ditur shokëve si t’ju gjejnë në Mastodon. share_title: Ndani me të tjerët profilin tuaj Mastodon sign_in_action: Hyni diff --git a/config/locales/sr-Latn.yml b/config/locales/sr-Latn.yml index 6833b7fdc1..79d823ebb8 100644 --- a/config/locales/sr-Latn.yml +++ b/config/locales/sr-Latn.yml @@ -1831,7 +1831,6 @@ sr-Latn: post_action: Napišite post_step: Pozdravite svet tekstom, fotografijama, video zapisima ili anketama. post_title: Napišite svoju prvu objavu - share_action: Podelite share_step: Neka vaši prijatelji znaju kako da vas pronađu na Mastodon-u. share_title: Podelite svoj Mastodon profil sign_in_action: Prijavite se diff --git a/config/locales/sr.yml b/config/locales/sr.yml index a2b6559515..2e8a3364be 100644 --- a/config/locales/sr.yml +++ b/config/locales/sr.yml @@ -1861,7 +1861,6 @@ sr: post_action: Напишите post_step: Поздравите свет текстом, фотографијама, видео записима или анкетама. post_title: Напишите своју прву објаву - share_action: Поделите share_step: Нека ваши пријатељи знају како да вас пронађу на Mastodon-у. share_title: Поделите свој Mastodon профил sign_in_action: Пријавите се diff --git a/config/locales/sv.yml b/config/locales/sv.yml index df75ace088..055c3457e2 100644 --- a/config/locales/sv.yml +++ b/config/locales/sv.yml @@ -2066,7 +2066,6 @@ sv: post_action: Skriv post_step: Säg hej till världen med text, foton, videor eller omröstningar. post_title: Skapa ditt första inlägg - share_action: Dela share_step: Låt dina vänner veta hur de hittar dig på Mastodon. share_title: Dela din Mastodon-profil sign_in_action: Logga in diff --git a/config/locales/th.yml b/config/locales/th.yml index 6e4e769b5d..558e95249b 100644 --- a/config/locales/th.yml +++ b/config/locales/th.yml @@ -1949,7 +1949,6 @@ th: post_action: เขียน post_step: กล่าวสวัสดีชาวโลกด้วยข้อความ, รูปภาพ, วิดีโอ หรือการสำรวจความคิดเห็น post_title: สร้างโพสต์แรกของคุณ - share_action: แชร์ share_step: แจ้งให้เพื่อน ๆ ของคุณทราบวิธีค้นหาคุณใน Mastodon share_title: แชร์โปรไฟล์ Mastodon ของคุณ sign_in_action: ลงชื่อเข้า diff --git a/config/locales/tr.yml b/config/locales/tr.yml index 1dfb8980a0..383d185dc9 100644 --- a/config/locales/tr.yml +++ b/config/locales/tr.yml @@ -2068,7 +2068,6 @@ tr: post_action: Oluştur post_step: Dünyaya metin, fotoğraf, video ve anketlerle merhaba deyin. post_title: İlk gönderinizi oluşturun - share_action: Paylaş share_step: Arkadaşlarınıza Mastodon'da size nasıl ulaşabileceklerini söyleyin. share_title: Mastodon profilinizi paylaşın sign_in_action: Oturum aç diff --git a/config/locales/uk.yml b/config/locales/uk.yml index 55cc9820e2..6ca9a39944 100644 --- a/config/locales/uk.yml +++ b/config/locales/uk.yml @@ -2038,7 +2038,6 @@ uk: post_action: Створити post_step: Привітайтеся зі світом, з текстом, світлинами, відео та опитуваннями. post_title: Напишіть свій перший допис - share_action: Поділитися share_step: Розкажіть друзям, як знайти вас на Mastodon. share_title: Поділіться своїм профілем Mastodon sign_in_action: Увійти diff --git a/config/locales/vi.yml b/config/locales/vi.yml index 8db46b22ba..9ecefe3e4f 100644 --- a/config/locales/vi.yml +++ b/config/locales/vi.yml @@ -2024,7 +2024,6 @@ vi: post_action: Soạn tút post_step: Chào cộng đồng bằng lời nói, ảnh hoặc video. post_title: Đăng tút đầu tiên - share_action: Chia sẻ share_step: Hãy để bạn bè của bạn biết cách tìm thấy bạn trên Mastodon. share_title: Chia sẻ hồ sơ Mastodon của bạn sign_in_action: Đăng nhập diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml index bba3eea3e5..cce57c1285 100644 --- a/config/locales/zh-CN.yml +++ b/config/locales/zh-CN.yml @@ -2019,7 +2019,6 @@ zh-CN: post_action: 撰写 post_step: 向世界打个招呼吧。 post_title: 发布你的第一条嘟文 - share_action: 分享 share_step: 让你的朋友知道如何在 Mastodon 找到你。 share_title: 分享你的 Mastodon 个人资料 sign_in_action: 登录 diff --git a/config/locales/zh-HK.yml b/config/locales/zh-HK.yml index 10228b4245..2e45461038 100644 --- a/config/locales/zh-HK.yml +++ b/config/locales/zh-HK.yml @@ -1774,7 +1774,6 @@ zh-HK: post_action: 撰寫 post_step: 用文字、相片、影片或投票跟大家打個招呼吧。 post_title: 發表你的第一則帖文 - share_action: 分享 share_step: 讓你的朋友知道如何在 Mastodon 上找到你。 share_title: 分享你的 Mastodon 個人檔案 sign_in_action: 登入 diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml index d71f4c271d..9d2441e5b9 100644 --- a/config/locales/zh-TW.yml +++ b/config/locales/zh-TW.yml @@ -2030,7 +2030,6 @@ zh-TW: post_action: 撰寫 post_step: 透過文字、照片、影片或投票向新世界打聲招呼吧。 post_title: 撰寫您第一則嘟文 - share_action: 分享 share_step: 讓您的朋友們知道如何於 Mastodon 找到您。 share_title: 分享您 Mastodon 個人檔案 sign_in_action: 登入 From 132f32dd708c0b104c8d0402bb33b181a81afe6c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 10 Jun 2025 09:37:16 +0200 Subject: [PATCH 02/19] chore(deps): update dependency libvips to v8.17.0 (#34956) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 8d746ef308..6cb4a2a1c0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -186,7 +186,7 @@ FROM build AS libvips # libvips version to compile, change with [--build-arg VIPS_VERSION="8.15.2"] # renovate: datasource=github-releases depName=libvips packageName=libvips/libvips -ARG VIPS_VERSION=8.16.1 +ARG VIPS_VERSION=8.17.0 # libvips download URL, change with [--build-arg VIPS_URL="https://github.com/libvips/libvips/releases/download"] ARG VIPS_URL=https://github.com/libvips/libvips/releases/download From 66a42c11baceab2938b69a993a40014e94419d6c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 10 Jun 2025 07:38:00 +0000 Subject: [PATCH 03/19] fix(deps): update dependency rollup-plugin-visualizer to v6.0.3 (#34974) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 504 ++++-------------------------------------------------- 1 file changed, 31 insertions(+), 473 deletions(-) diff --git a/yarn.lock b/yarn.lock index 5fd34aa3e4..8ebd624921 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19,17 +19,7 @@ __metadata: languageName: node linkType: hard -"@ampproject/remapping@npm:^2.2.0": - version: 2.2.1 - resolution: "@ampproject/remapping@npm:2.2.1" - dependencies: - "@jridgewell/gen-mapping": "npm:^0.3.0" - "@jridgewell/trace-mapping": "npm:^0.3.9" - checksum: 10c0/92ce5915f8901d8c7cd4f4e6e2fe7b9fd335a29955b400caa52e0e5b12ca3796ada7c2f10e78c9c5b0f9c2539dff0ffea7b19850a56e1487aa083531e1e46d43 - languageName: node - linkType: hard - -"@ampproject/remapping@npm:^2.3.0": +"@ampproject/remapping@npm:^2.2.0, @ampproject/remapping@npm:^2.3.0": version: 2.3.0 resolution: "@ampproject/remapping@npm:2.3.0" dependencies: @@ -65,7 +55,7 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.26.2, @babel/code-frame@npm:^7.27.1": +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.27.1": version: 7.27.1 resolution: "@babel/code-frame@npm:7.27.1" dependencies: @@ -83,7 +73,7 @@ __metadata: languageName: node linkType: hard -"@babel/core@npm:^7.18.9": +"@babel/core@npm:^7.18.9, @babel/core@npm:^7.21.3, @babel/core@npm:^7.24.4, @babel/core@npm:^7.26.10": version: 7.27.4 resolution: "@babel/core@npm:7.27.4" dependencies: @@ -106,42 +96,6 @@ __metadata: languageName: node linkType: hard -"@babel/core@npm:^7.21.3, @babel/core@npm:^7.24.4, @babel/core@npm:^7.26.10": - version: 7.26.10 - resolution: "@babel/core@npm:7.26.10" - dependencies: - "@ampproject/remapping": "npm:^2.2.0" - "@babel/code-frame": "npm:^7.26.2" - "@babel/generator": "npm:^7.26.10" - "@babel/helper-compilation-targets": "npm:^7.26.5" - "@babel/helper-module-transforms": "npm:^7.26.0" - "@babel/helpers": "npm:^7.26.10" - "@babel/parser": "npm:^7.26.10" - "@babel/template": "npm:^7.26.9" - "@babel/traverse": "npm:^7.26.10" - "@babel/types": "npm:^7.26.10" - convert-source-map: "npm:^2.0.0" - debug: "npm:^4.1.0" - gensync: "npm:^1.0.0-beta.2" - json5: "npm:^2.2.3" - semver: "npm:^6.3.1" - checksum: 10c0/e046e0e988ab53841b512ee9d263ca409f6c46e2a999fe53024688b92db394346fa3aeae5ea0866331f62133982eee05a675d22922a4603c3f603aa09a581d62 - languageName: node - linkType: hard - -"@babel/generator@npm:^7.26.10, @babel/generator@npm:^7.27.1": - version: 7.27.1 - resolution: "@babel/generator@npm:7.27.1" - dependencies: - "@babel/parser": "npm:^7.27.1" - "@babel/types": "npm:^7.27.1" - "@jridgewell/gen-mapping": "npm:^0.3.5" - "@jridgewell/trace-mapping": "npm:^0.3.25" - jsesc: "npm:^3.0.2" - checksum: 10c0/c4156434b21818f558ebd93ce45f027c53ee570ce55a84fd2d9ba45a79ad204c17e0bff753c886fb6c07df3385445a9e34dc7ccb070d0ac7e80bb91c8b57f423 - languageName: node - linkType: hard - "@babel/generator@npm:^7.27.3": version: 7.27.3 resolution: "@babel/generator@npm:7.27.3" @@ -164,7 +118,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.26.5, @babel/helper-compilation-targets@npm:^7.27.1, @babel/helper-compilation-targets@npm:^7.27.2": +"@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.27.1, @babel/helper-compilation-targets@npm:^7.27.2": version: 7.27.2 resolution: "@babel/helper-compilation-targets@npm:7.27.2" dependencies: @@ -242,20 +196,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.26.0, @babel/helper-module-transforms@npm:^7.27.1": - version: 7.27.1 - resolution: "@babel/helper-module-transforms@npm:7.27.1" - dependencies: - "@babel/helper-module-imports": "npm:^7.27.1" - "@babel/helper-validator-identifier": "npm:^7.27.1" - "@babel/traverse": "npm:^7.27.1" - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 10c0/196ab29635fe6eb5ba6ead2972d41b1c0d40f400f99bd8fc109cef21440de24c26c972fabf932585e618694d590379ab8d22def8da65a54459d38ec46112ead7 - languageName: node - linkType: hard - -"@babel/helper-module-transforms@npm:^7.27.3": +"@babel/helper-module-transforms@npm:^7.27.1, @babel/helper-module-transforms@npm:^7.27.3": version: 7.27.3 resolution: "@babel/helper-module-transforms@npm:7.27.3" dependencies: @@ -352,16 +293,6 @@ __metadata: languageName: node linkType: hard -"@babel/helpers@npm:^7.26.10": - version: 7.27.0 - resolution: "@babel/helpers@npm:7.27.0" - dependencies: - "@babel/template": "npm:^7.27.0" - "@babel/types": "npm:^7.27.0" - checksum: 10c0/a3c64fd2d8b164c041808826cc00769d814074ea447daaacaf2e3714b66d3f4237ef6e420f61d08f463d6608f3468c2ac5124ab7c68f704e20384def5ade95f4 - languageName: node - linkType: hard - "@babel/helpers@npm:^7.27.4": version: 7.27.4 resolution: "@babel/helpers@npm:7.27.4" @@ -372,18 +303,7 @@ __metadata: languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.26.10, @babel/parser@npm:^7.27.1": - version: 7.27.1 - resolution: "@babel/parser@npm:7.27.1" - dependencies: - "@babel/types": "npm:^7.27.1" - bin: - parser: ./bin/babel-parser.js - checksum: 10c0/ae4a5eda3ada3fd54c9942d9f14385df7a18e71b386cf2652505bb9a40a32250dfde3bdda71fb08af00b1e154f0a6213e6cdaaa88e9941229ec0003f7fead759 - languageName: node - linkType: hard - -"@babel/parser@npm:^7.25.4, @babel/parser@npm:^7.27.2, @babel/parser@npm:^7.27.3, @babel/parser@npm:^7.27.4": +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.25.4, @babel/parser@npm:^7.27.2, @babel/parser@npm:^7.27.3, @babel/parser@npm:^7.27.4": version: 7.27.4 resolution: "@babel/parser@npm:7.27.4" dependencies: @@ -1226,18 +1146,7 @@ __metadata: languageName: node linkType: hard -"@babel/template@npm:^7.26.9, @babel/template@npm:^7.27.0, @babel/template@npm:^7.27.1": - version: 7.27.1 - resolution: "@babel/template@npm:7.27.1" - dependencies: - "@babel/code-frame": "npm:^7.27.1" - "@babel/parser": "npm:^7.27.1" - "@babel/types": "npm:^7.27.1" - checksum: 10c0/155a8e056e82f1f1e2413b7bf9d96890e371d617c7f77f25621fb0ddb32128958d86bc5c3356f00be266e9f8c121d886de5b4143dbb72eac362377f53aba72a2 - languageName: node - linkType: hard - -"@babel/template@npm:^7.27.2": +"@babel/template@npm:^7.27.1, @babel/template@npm:^7.27.2": version: 7.27.2 resolution: "@babel/template@npm:7.27.2" dependencies: @@ -1248,7 +1157,7 @@ __metadata: languageName: node linkType: hard -"@babel/traverse@npm:^7.18.9, @babel/traverse@npm:^7.27.3, @babel/traverse@npm:^7.27.4": +"@babel/traverse@npm:^7.18.9, @babel/traverse@npm:^7.26.10, @babel/traverse@npm:^7.27.1, @babel/traverse@npm:^7.27.3, @babel/traverse@npm:^7.27.4": version: 7.27.4 resolution: "@babel/traverse@npm:7.27.4" dependencies: @@ -1263,32 +1172,7 @@ __metadata: languageName: node linkType: hard -"@babel/traverse@npm:^7.26.10, @babel/traverse@npm:^7.27.1": - version: 7.27.1 - resolution: "@babel/traverse@npm:7.27.1" - dependencies: - "@babel/code-frame": "npm:^7.27.1" - "@babel/generator": "npm:^7.27.1" - "@babel/parser": "npm:^7.27.1" - "@babel/template": "npm:^7.27.1" - "@babel/types": "npm:^7.27.1" - debug: "npm:^4.3.1" - globals: "npm:^11.1.0" - checksum: 10c0/d912110037b03b1d70a2436cfd51316d930366a5f54252da2bced1ba38642f644f848240a951e5caf12f1ef6c40d3d96baa92ea6e84800f2e891c15e97b25d50 - languageName: node - linkType: hard - -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.21.3, @babel/types@npm:^7.26.10, @babel/types@npm:^7.27.0, @babel/types@npm:^7.27.1, @babel/types@npm:^7.4.4": - version: 7.27.1 - resolution: "@babel/types@npm:7.27.1" - dependencies: - "@babel/helper-string-parser": "npm:^7.27.1" - "@babel/helper-validator-identifier": "npm:^7.27.1" - checksum: 10c0/ed736f14db2fdf0d36c539c8e06b6bb5e8f9649a12b5c0e1c516fed827f27ef35085abe08bf4d1302a4e20c9a254e762eed453bce659786d4a6e01ba26a91377 - languageName: node - linkType: hard - -"@babel/types@npm:^7.18.9, @babel/types@npm:^7.25.4, @babel/types@npm:^7.27.3": +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.18.9, @babel/types@npm:^7.20.7, @babel/types@npm:^7.21.3, @babel/types@npm:^7.25.4, @babel/types@npm:^7.26.10, @babel/types@npm:^7.27.1, @babel/types@npm:^7.27.3, @babel/types@npm:^7.4.4": version: 7.27.3 resolution: "@babel/types@npm:7.27.3" dependencies: @@ -2031,13 +1915,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/aix-ppc64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/aix-ppc64@npm:0.25.2" - conditions: os=aix & cpu=ppc64 - languageName: node - linkType: hard - "@esbuild/aix-ppc64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/aix-ppc64@npm:0.25.5" @@ -2045,13 +1922,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/android-arm64@npm:0.25.2" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/android-arm64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/android-arm64@npm:0.25.5" @@ -2059,13 +1929,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/android-arm@npm:0.25.2" - conditions: os=android & cpu=arm - languageName: node - linkType: hard - "@esbuild/android-arm@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/android-arm@npm:0.25.5" @@ -2073,13 +1936,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-x64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/android-x64@npm:0.25.2" - conditions: os=android & cpu=x64 - languageName: node - linkType: hard - "@esbuild/android-x64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/android-x64@npm:0.25.5" @@ -2087,13 +1943,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/darwin-arm64@npm:0.25.2" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/darwin-arm64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/darwin-arm64@npm:0.25.5" @@ -2101,13 +1950,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/darwin-x64@npm:0.25.2" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - "@esbuild/darwin-x64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/darwin-x64@npm:0.25.5" @@ -2115,13 +1957,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/freebsd-arm64@npm:0.25.2" - conditions: os=freebsd & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/freebsd-arm64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/freebsd-arm64@npm:0.25.5" @@ -2129,13 +1964,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/freebsd-x64@npm:0.25.2" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - "@esbuild/freebsd-x64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/freebsd-x64@npm:0.25.5" @@ -2143,13 +1971,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/linux-arm64@npm:0.25.2" - conditions: os=linux & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/linux-arm64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/linux-arm64@npm:0.25.5" @@ -2157,13 +1978,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/linux-arm@npm:0.25.2" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - "@esbuild/linux-arm@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/linux-arm@npm:0.25.5" @@ -2171,13 +1985,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/linux-ia32@npm:0.25.2" - conditions: os=linux & cpu=ia32 - languageName: node - linkType: hard - "@esbuild/linux-ia32@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/linux-ia32@npm:0.25.5" @@ -2185,13 +1992,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/linux-loong64@npm:0.25.2" - conditions: os=linux & cpu=loong64 - languageName: node - linkType: hard - "@esbuild/linux-loong64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/linux-loong64@npm:0.25.5" @@ -2199,13 +1999,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/linux-mips64el@npm:0.25.2" - conditions: os=linux & cpu=mips64el - languageName: node - linkType: hard - "@esbuild/linux-mips64el@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/linux-mips64el@npm:0.25.5" @@ -2213,13 +2006,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/linux-ppc64@npm:0.25.2" - conditions: os=linux & cpu=ppc64 - languageName: node - linkType: hard - "@esbuild/linux-ppc64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/linux-ppc64@npm:0.25.5" @@ -2227,13 +2013,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-riscv64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/linux-riscv64@npm:0.25.2" - conditions: os=linux & cpu=riscv64 - languageName: node - linkType: hard - "@esbuild/linux-riscv64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/linux-riscv64@npm:0.25.5" @@ -2241,13 +2020,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/linux-s390x@npm:0.25.2" - conditions: os=linux & cpu=s390x - languageName: node - linkType: hard - "@esbuild/linux-s390x@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/linux-s390x@npm:0.25.5" @@ -2255,13 +2027,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/linux-x64@npm:0.25.2" - conditions: os=linux & cpu=x64 - languageName: node - linkType: hard - "@esbuild/linux-x64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/linux-x64@npm:0.25.5" @@ -2269,13 +2034,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/netbsd-arm64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/netbsd-arm64@npm:0.25.2" - conditions: os=netbsd & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/netbsd-arm64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/netbsd-arm64@npm:0.25.5" @@ -2283,13 +2041,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/netbsd-x64@npm:0.25.2" - conditions: os=netbsd & cpu=x64 - languageName: node - linkType: hard - "@esbuild/netbsd-x64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/netbsd-x64@npm:0.25.5" @@ -2297,13 +2048,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-arm64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/openbsd-arm64@npm:0.25.2" - conditions: os=openbsd & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/openbsd-arm64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/openbsd-arm64@npm:0.25.5" @@ -2311,13 +2055,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/openbsd-x64@npm:0.25.2" - conditions: os=openbsd & cpu=x64 - languageName: node - linkType: hard - "@esbuild/openbsd-x64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/openbsd-x64@npm:0.25.5" @@ -2325,13 +2062,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/sunos-x64@npm:0.25.2" - conditions: os=sunos & cpu=x64 - languageName: node - linkType: hard - "@esbuild/sunos-x64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/sunos-x64@npm:0.25.5" @@ -2339,13 +2069,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/win32-arm64@npm:0.25.2" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/win32-arm64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/win32-arm64@npm:0.25.5" @@ -2353,13 +2076,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/win32-ia32@npm:0.25.2" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - "@esbuild/win32-ia32@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/win32-ia32@npm:0.25.5" @@ -2367,13 +2083,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.25.2": - version: 0.25.2 - resolution: "@esbuild/win32-x64@npm:0.25.2" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - "@esbuild/win32-x64@npm:0.25.5": version: 0.25.5 resolution: "@esbuild/win32-x64@npm:0.25.5" @@ -2381,18 +2090,7 @@ __metadata: languageName: node linkType: hard -"@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": - version: 4.4.0 - resolution: "@eslint-community/eslint-utils@npm:4.4.0" - dependencies: - eslint-visitor-keys: "npm:^3.3.0" - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - checksum: 10c0/7e559c4ce59cd3a06b1b5a517b593912e680a7f981ae7affab0d01d709e99cd5647019be8fafa38c350305bc32f1f7d42c7073edde2ab536c745e365f37b607e - languageName: node - linkType: hard - -"@eslint-community/eslint-utils@npm:^4.7.0": +"@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0, @eslint-community/eslint-utils@npm:^4.7.0": version: 4.7.0 resolution: "@eslint-community/eslint-utils@npm:4.7.0" dependencies: @@ -2739,7 +2437,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/gen-mapping@npm:^0.3.0, @jridgewell/gen-mapping@npm:^0.3.5": +"@jridgewell/gen-mapping@npm:^0.3.5": version: 0.3.5 resolution: "@jridgewell/gen-mapping@npm:0.3.5" dependencies: @@ -2781,7 +2479,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.23, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25, @jridgewell/trace-mapping@npm:^0.3.9": +"@jridgewell/trace-mapping@npm:^0.3.23, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": version: 0.3.25 resolution: "@jridgewell/trace-mapping@npm:0.3.25" dependencies: @@ -4664,7 +4362,7 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:8.29.1, @typescript-eslint/utils@npm:^8.27.0": +"@typescript-eslint/utils@npm:8.29.1": version: 8.29.1 resolution: "@typescript-eslint/utils@npm:8.29.1" dependencies: @@ -4679,7 +4377,7 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:^8.8.1": +"@typescript-eslint/utils@npm:^8.27.0, @typescript-eslint/utils@npm:^8.8.1": version: 8.33.0 resolution: "@typescript-eslint/utils@npm:8.33.0" dependencies: @@ -4981,7 +4679,7 @@ __metadata: languageName: node linkType: hard -"@vitest/pretty-format@npm:3.2.1, @vitest/pretty-format@npm:^3.2.1": +"@vitest/pretty-format@npm:3.2.1": version: 3.2.1 resolution: "@vitest/pretty-format@npm:3.2.1" dependencies: @@ -4990,7 +4688,7 @@ __metadata: languageName: node linkType: hard -"@vitest/pretty-format@npm:3.2.2": +"@vitest/pretty-format@npm:3.2.2, @vitest/pretty-format@npm:^3.2.1": version: 3.2.2 resolution: "@vitest/pretty-format@npm:3.2.2" dependencies: @@ -5470,14 +5168,7 @@ __metadata: languageName: node linkType: hard -"axe-core@npm:^4.10.0": - version: 4.10.0 - resolution: "axe-core@npm:4.10.0" - checksum: 10c0/732c171d48caaace5e784895c4dacb8ca6155e9d98045138ebe3952f78457dd05b92c57d05b41ce2a570aff87dbd0471e8398d2c0f6ebe79617b746c8f658998 - languageName: node - linkType: hard - -"axe-core@npm:^4.2.0": +"axe-core@npm:^4.10.0, axe-core@npm:^4.2.0": version: 4.10.3 resolution: "axe-core@npm:4.10.3" checksum: 10c0/1b1c24f435b2ffe89d76eca0001cbfff42dbf012ad9bd37398b70b11f0d614281a38a28bc3069e8972e3c90ec929a8937994bd24b0ebcbaab87b8d1e241ab0c7 @@ -6363,15 +6054,15 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4, debug@npm:^4.3.6, debug@npm:^4.3.7, debug@npm:^4.4.0": - version: 4.4.0 - resolution: "debug@npm:4.4.0" +"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4, debug@npm:^4.3.6, debug@npm:^4.3.7, debug@npm:^4.4.0, debug@npm:^4.4.1": + version: 4.4.1 + resolution: "debug@npm:4.4.1" dependencies: ms: "npm:^2.1.3" peerDependenciesMeta: supports-color: optional: true - checksum: 10c0/db94f1a182bf886f57b4755f85b3a74c39b5114b9377b7ab375dc2cfa3454f09490cc6c30f829df3fc8042bc8b8995f6567ce5cd96f3bc3688bd24027197d9de + checksum: 10c0/d2b44bc1afd912b49bb7ebb0d50a860dc93a4dd7d946e8de94abc957bb63726b7dd5aa48c18c2386c379ec024c46692e15ed3ed97d481729f929201e671fcd55 languageName: node linkType: hard @@ -6384,18 +6075,6 @@ __metadata: languageName: node linkType: hard -"debug@npm:^4.4.1": - version: 4.4.1 - resolution: "debug@npm:4.4.1" - dependencies: - ms: "npm:^2.1.3" - peerDependenciesMeta: - supports-color: - optional: true - checksum: 10c0/d2b44bc1afd912b49bb7ebb0d50a860dc93a4dd7d946e8de94abc957bb63726b7dd5aa48c18c2386c379ec024c46692e15ed3ed97d481729f929201e671fcd55 - languageName: node - linkType: hard - "decimal.js@npm:^10.4.3, decimal.js@npm:^10.5.0": version: 10.5.0 resolution: "decimal.js@npm:10.5.0" @@ -6901,7 +6580,7 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0 || ^0.25.0": +"esbuild@npm:^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0 || ^0.25.0, esbuild@npm:^0.25.0": version: 0.25.5 resolution: "esbuild@npm:0.25.5" dependencies: @@ -6987,92 +6666,6 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:^0.25.0": - version: 0.25.2 - resolution: "esbuild@npm:0.25.2" - dependencies: - "@esbuild/aix-ppc64": "npm:0.25.2" - "@esbuild/android-arm": "npm:0.25.2" - "@esbuild/android-arm64": "npm:0.25.2" - "@esbuild/android-x64": "npm:0.25.2" - "@esbuild/darwin-arm64": "npm:0.25.2" - "@esbuild/darwin-x64": "npm:0.25.2" - "@esbuild/freebsd-arm64": "npm:0.25.2" - "@esbuild/freebsd-x64": "npm:0.25.2" - "@esbuild/linux-arm": "npm:0.25.2" - "@esbuild/linux-arm64": "npm:0.25.2" - "@esbuild/linux-ia32": "npm:0.25.2" - "@esbuild/linux-loong64": "npm:0.25.2" - "@esbuild/linux-mips64el": "npm:0.25.2" - "@esbuild/linux-ppc64": "npm:0.25.2" - "@esbuild/linux-riscv64": "npm:0.25.2" - "@esbuild/linux-s390x": "npm:0.25.2" - "@esbuild/linux-x64": "npm:0.25.2" - "@esbuild/netbsd-arm64": "npm:0.25.2" - "@esbuild/netbsd-x64": "npm:0.25.2" - "@esbuild/openbsd-arm64": "npm:0.25.2" - "@esbuild/openbsd-x64": "npm:0.25.2" - "@esbuild/sunos-x64": "npm:0.25.2" - "@esbuild/win32-arm64": "npm:0.25.2" - "@esbuild/win32-ia32": "npm:0.25.2" - "@esbuild/win32-x64": "npm:0.25.2" - dependenciesMeta: - "@esbuild/aix-ppc64": - optional: true - "@esbuild/android-arm": - optional: true - "@esbuild/android-arm64": - optional: true - "@esbuild/android-x64": - optional: true - "@esbuild/darwin-arm64": - optional: true - "@esbuild/darwin-x64": - optional: true - "@esbuild/freebsd-arm64": - optional: true - "@esbuild/freebsd-x64": - optional: true - "@esbuild/linux-arm": - optional: true - "@esbuild/linux-arm64": - optional: true - "@esbuild/linux-ia32": - optional: true - "@esbuild/linux-loong64": - optional: true - "@esbuild/linux-mips64el": - optional: true - "@esbuild/linux-ppc64": - optional: true - "@esbuild/linux-riscv64": - optional: true - "@esbuild/linux-s390x": - optional: true - "@esbuild/linux-x64": - optional: true - "@esbuild/netbsd-arm64": - optional: true - "@esbuild/netbsd-x64": - optional: true - "@esbuild/openbsd-arm64": - optional: true - "@esbuild/openbsd-x64": - optional: true - "@esbuild/sunos-x64": - optional: true - "@esbuild/win32-arm64": - optional: true - "@esbuild/win32-ia32": - optional: true - "@esbuild/win32-x64": - optional: true - bin: - esbuild: bin/esbuild - checksum: 10c0/87ce0b78699c4d192b8cf7e9b688e9a0da10e6f58ff85a368bf3044ca1fa95626c98b769b5459352282e0065585b6f994a5e6699af5cccf9d31178960e2b58fd - languageName: node - linkType: hard - "escalade@npm:^3.1.1, escalade@npm:^3.2.0": version: 3.2.0 resolution: "escalade@npm:3.2.0" @@ -7304,7 +6897,7 @@ __metadata: languageName: node linkType: hard -"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.3": +"eslint-visitor-keys@npm:^3.4.3": version: 3.4.3 resolution: "eslint-visitor-keys@npm:3.4.3" checksum: 10c0/92708e882c0a5ffd88c23c0b404ac1628cf20104a108c745f240a13c332a11aac54f49a22d5762efbffc18ecbc9a580d1b7ad034bf5f3cc3307e5cbff2ec9820 @@ -11822,15 +11415,15 @@ __metadata: linkType: hard "rollup-plugin-visualizer@npm:^6.0.0": - version: 6.0.1 - resolution: "rollup-plugin-visualizer@npm:6.0.1" + version: 6.0.3 + resolution: "rollup-plugin-visualizer@npm:6.0.3" dependencies: open: "npm:^8.0.0" picomatch: "npm:^4.0.2" source-map: "npm:^0.7.4" yargs: "npm:^17.5.1" peerDependencies: - rolldown: 1.x + rolldown: 1.x || ^1.0.0-beta rollup: 2.x || 3.x || 4.x peerDependenciesMeta: rolldown: @@ -11839,7 +11432,7 @@ __metadata: optional: true bin: rollup-plugin-visualizer: dist/bin/cli.js - checksum: 10c0/c938224b2027b3f490569c439d400b8fc80a0ad07b58720771b23623efe1efc7eb61f3de4506fb4520ce95ef4ea3c93153c31130559e017606c046c052690d1c + checksum: 10c0/595d68936a6338744e8facd165fceedf7f2ebedc44863e640e725198001ed62948cc4a5d8403aa74e679de92957e4def3b1dffc4a9f8de71e4245929566553a3 languageName: node linkType: hard @@ -12071,16 +11664,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.3.5, semver@npm:^7.6.0, semver@npm:^7.6.3, semver@npm:^7.7.1": - version: 7.7.1 - resolution: "semver@npm:7.7.1" - bin: - semver: bin/semver.js - checksum: 10c0/fd603a6fb9c399c6054015433051bdbe7b99a940a8fb44b85c2b524c4004b023d7928d47cb22154f8d054ea7ee8597f586605e05b52047f048278e4ac56ae958 - languageName: node - linkType: hard - -"semver@npm:^7.5.3, semver@npm:^7.6.2": +"semver@npm:^7.3.5, semver@npm:^7.5.3, semver@npm:^7.6.0, semver@npm:^7.6.2, semver@npm:^7.6.3, semver@npm:^7.7.1": version: 7.7.2 resolution: "semver@npm:7.7.2" bin: @@ -13102,14 +12686,7 @@ __metadata: languageName: node linkType: hard -"tiny-invariant@npm:^1.0.2": - version: 1.3.1 - resolution: "tiny-invariant@npm:1.3.1" - checksum: 10c0/5b87c1d52847d9452b60d0dcb77011b459044e0361ca8253bfe7b43d6288106e12af926adb709a6fc28900e3864349b91dad9a4ac93c39aa15f360b26c2ff4db - languageName: node - linkType: hard - -"tiny-invariant@npm:^1.3.3": +"tiny-invariant@npm:^1.0.2, tiny-invariant@npm:^1.3.3": version: 1.3.3 resolution: "tiny-invariant@npm:1.3.3" checksum: 10c0/65af4a07324b591a059b35269cd696aba21bef2107f29b9f5894d83cc143159a204b299553435b03874ebb5b94d019afa8b8eff241c8a4cfee95872c2e1c1c4a @@ -13144,17 +12721,7 @@ __metadata: languageName: node linkType: hard -"tinyglobby@npm:^0.2.10, tinyglobby@npm:^0.2.12, tinyglobby@npm:^0.2.13": - version: 0.2.13 - resolution: "tinyglobby@npm:0.2.13" - dependencies: - fdir: "npm:^6.4.4" - picomatch: "npm:^4.0.2" - checksum: 10c0/ef07dfaa7b26936601d3f6d999f7928a4d1c6234c5eb36896bb88681947c0d459b7ebe797022400e555fe4b894db06e922b95d0ce60cb05fd827a0a66326b18c - languageName: node - linkType: hard - -"tinyglobby@npm:^0.2.14": +"tinyglobby@npm:^0.2.10, tinyglobby@npm:^0.2.12, tinyglobby@npm:^0.2.13, tinyglobby@npm:^0.2.14": version: 0.2.14 resolution: "tinyglobby@npm:0.2.14" dependencies: @@ -13274,16 +12841,7 @@ __metadata: languageName: node linkType: hard -"ts-api-utils@npm:^2.0.1": - version: 2.0.1 - resolution: "ts-api-utils@npm:2.0.1" - peerDependencies: - typescript: ">=4.8.4" - checksum: 10c0/23fd56a958b332cac00150a652e4c84730df30571bd2faa1ba6d7b511356d1a61656621492bb6c7f15dd6e18847a1408357a0e406671d358115369a17f5bfedd - languageName: node - linkType: hard - -"ts-api-utils@npm:^2.1.0": +"ts-api-utils@npm:^2.0.1, ts-api-utils@npm:^2.1.0": version: 2.1.0 resolution: "ts-api-utils@npm:2.1.0" peerDependencies: From 1dd8a99d9fdbc45abd02f7a8c38c863b42f52345 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 10 Jun 2025 07:38:19 +0000 Subject: [PATCH 04/19] fix(deps): update dependency use-debounce to v10.0.5 (#34982) 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 8ebd624921..429d03b2fa 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13271,11 +13271,11 @@ __metadata: linkType: hard "use-debounce@npm:^10.0.0": - version: 10.0.4 - resolution: "use-debounce@npm:10.0.4" + version: 10.0.5 + resolution: "use-debounce@npm:10.0.5" peerDependencies: react: "*" - checksum: 10c0/73494fc44b2bd58a7ec799a528fc20077c45fe2e94fedff6dcd88d136f7a39f417d77f584d5613aac615ed32aeb2ea393797ae1f7d5b2645eab57cb497a6d0cb + checksum: 10c0/8232538aa2e2b1252716ef2918204709f16bd53661b56a3a29ad790bf61bc7cbf3bb1126d888408db276a2b05fa6a941e9452149be14bfe438aa22054ccf4e4a languageName: node linkType: hard From f3d60a4a6fd26a0b82b099fccb5ef8c16228c457 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Jun 2025 09:42:29 +0200 Subject: [PATCH 05/19] Fix wrong styles on action bar in media modal in web UI (#34989) --- app/javascript/styles/mastodon/components.scss | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/javascript/styles/mastodon/components.scss b/app/javascript/styles/mastodon/components.scss index d31b6f0e3d..f732f85922 100644 --- a/app/javascript/styles/mastodon/components.scss +++ b/app/javascript/styles/mastodon/components.scss @@ -5819,7 +5819,9 @@ a.status-card { .picture-in-picture__footer { border-radius: 0; + border: none; background: transparent; + backdrop-filter: none; padding: 16px; .icon-button { From c3022fe10f858f420f4dba2f089285dc99d4b35b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 10 Jun 2025 07:52:52 +0000 Subject: [PATCH 06/19] New Crowdin Translations (automated) (#34973) Co-authored-by: GitHub Actions --- app/javascript/mastodon/locales/ca.json | 1 + app/javascript/mastodon/locales/da.json | 1 + app/javascript/mastodon/locales/en-GB.json | 47 ++++++++++++++++++- app/javascript/mastodon/locales/es-MX.json | 1 + app/javascript/mastodon/locales/es.json | 1 + app/javascript/mastodon/locales/et.json | 47 ++++++++++++++++++- app/javascript/mastodon/locales/he.json | 1 + app/javascript/mastodon/locales/lv.json | 1 + app/javascript/mastodon/locales/nan.json | 1 + app/javascript/mastodon/locales/nn.json | 1 + app/javascript/mastodon/locales/no.json | 9 ++++ app/javascript/mastodon/locales/pt-PT.json | 9 ++-- app/javascript/mastodon/locales/tok.json | 52 +++++++++++++++++----- app/javascript/mastodon/locales/tr.json | 1 + app/javascript/mastodon/locales/vi.json | 1 + app/javascript/mastodon/locales/zh-CN.json | 3 ++ config/locales/nan.yml | 9 ++++ config/locales/simple_form.et.yml | 1 + 18 files changed, 169 insertions(+), 18 deletions(-) diff --git a/app/javascript/mastodon/locales/ca.json b/app/javascript/mastodon/locales/ca.json index f52c24c70f..9d1fdbabae 100644 --- a/app/javascript/mastodon/locales/ca.json +++ b/app/javascript/mastodon/locales/ca.json @@ -430,6 +430,7 @@ "hints.profiles.see_more_posts": "Vegeu més publicacions a {domain}", "hints.threads.replies_may_be_missing": "Es poden haver perdut respostes d'altres servidors.", "hints.threads.see_more": "Vegeu més respostes a {domain}", + "home.column_settings.show_quotes": "Mostrar les cites", "home.column_settings.show_reblogs": "Mostra els impulsos", "home.column_settings.show_replies": "Mostra les respostes", "home.hide_announcements": "Amaga els anuncis", diff --git a/app/javascript/mastodon/locales/da.json b/app/javascript/mastodon/locales/da.json index 066a368b9c..6053408b9b 100644 --- a/app/javascript/mastodon/locales/da.json +++ b/app/javascript/mastodon/locales/da.json @@ -430,6 +430,7 @@ "hints.profiles.see_more_posts": "Se flere indlæg på {domain}", "hints.threads.replies_may_be_missing": "Der kan mangle svar fra andre servere.", "hints.threads.see_more": "Se flere svar på {domain}", + "home.column_settings.show_quotes": "Vis citater", "home.column_settings.show_reblogs": "Vis fremhævelser", "home.column_settings.show_replies": "Vis svar", "home.hide_announcements": "Skjul bekendtgørelser", diff --git a/app/javascript/mastodon/locales/en-GB.json b/app/javascript/mastodon/locales/en-GB.json index 77c5a30976..5bb855983e 100644 --- a/app/javascript/mastodon/locales/en-GB.json +++ b/app/javascript/mastodon/locales/en-GB.json @@ -30,6 +30,12 @@ "account.edit_profile": "Edit profile", "account.enable_notifications": "Notify me when @{name} posts", "account.endorse": "Feature on profile", + "account.familiar_followers_many": "Followed by {name1}, {name2}, and {othersCount, plural, one {one other you know} other {# others you know}}", + "account.familiar_followers_one": "Followed by {name1}", + "account.familiar_followers_two": "Followed by {name1} and {name2}", + "account.featured": "Featured", + "account.featured.accounts": "Profiles", + "account.featured.hashtags": "Hashtags", "account.featured_tags.last_status_at": "Last post on {date}", "account.featured_tags.last_status_never": "No posts", "account.follow": "Follow", @@ -37,9 +43,11 @@ "account.followers": "Followers", "account.followers.empty": "No one follows this user yet.", "account.followers_counter": "{count, plural, one {{counter} follower} other {{counter} followers}}", + "account.followers_you_know_counter": "{counter} you know", "account.following": "Following", "account.following_counter": "{count, plural, one {{counter} following} other {{counter} following}}", "account.follows.empty": "This user doesn't follow anyone yet.", + "account.follows_you": "Follows you", "account.go_to_profile": "Go to profile", "account.hide_reblogs": "Hide boosts from @{name}", "account.in_memoriam": "In Memoriam.", @@ -54,18 +62,23 @@ "account.mute_notifications_short": "Mute notifications", "account.mute_short": "Mute", "account.muted": "Muted", + "account.muting": "Muting", + "account.mutual": "You follow each other", "account.no_bio": "No description provided.", "account.open_original_page": "Open original page", "account.posts": "Posts", "account.posts_with_replies": "Posts and replies", + "account.remove_from_followers": "Remove {name} from followers", "account.report": "Report @{name}", "account.requested": "Awaiting approval. Click to cancel follow request", "account.requested_follow": "{name} has requested to follow you", + "account.requests_to_follow_you": "Requests to follow you", "account.share": "Share @{name}'s profile", "account.show_reblogs": "Show boosts from @{name}", "account.statuses_counter": "{count, plural, one {{counter} post} other {{counter} posts}}", "account.unblock": "Unblock @{name}", "account.unblock_domain": "Unblock domain {domain}", + "account.unblock_domain_short": "Unblock", "account.unblock_short": "Unblock", "account.unendorse": "Don't feature on profile", "account.unfollow": "Unfollow", @@ -227,6 +240,9 @@ "confirmations.redraft.confirm": "Delete & redraft", "confirmations.redraft.message": "Are you sure you want to delete this post and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned.", "confirmations.redraft.title": "Delete & redraft post?", + "confirmations.remove_from_followers.confirm": "Remove follower", + "confirmations.remove_from_followers.message": "{name} will stop following you. Are you sure you want to proceed?", + "confirmations.remove_from_followers.title": "Remove follower?", "confirmations.reply.confirm": "Reply", "confirmations.reply.message": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?", "confirmations.reply.title": "Overwrite post?", @@ -294,6 +310,9 @@ "emoji_button.search_results": "Search results", "emoji_button.symbols": "Symbols", "emoji_button.travel": "Travel & Places", + "empty_column.account_featured.me": "You have not featured anything yet. Did you know that you can feature your hashtags you use the most, and even your friend’s accounts on your profile?", + "empty_column.account_featured.other": "{acct} has not featured anything yet. Did you know that you can feature your hashtags you use the most, and even your friend’s accounts on your profile?", + "empty_column.account_featured_other.unknown": "This account has not featured anything yet.", "empty_column.account_hides_collections": "This user has chosen to not make this information available", "empty_column.account_suspended": "Account suspended", "empty_column.account_timeline": "No posts here!", @@ -326,6 +345,11 @@ "explore.trending_links": "News", "explore.trending_statuses": "Posts", "explore.trending_tags": "Hashtags", + "featured_carousel.header": "{count, plural, one {Pinned Post} other {Pinned Posts}}", + "featured_carousel.next": "Next", + "featured_carousel.post": "Post", + "featured_carousel.previous": "Previous", + "featured_carousel.slide": "{index} of {total}", "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.", "filter_modal.added.context_mismatch_title": "Context mismatch!", "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.", @@ -378,6 +402,8 @@ "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.admin_moderation": "Open moderation interface for #{name}", + "hashtag.browse": "Browse posts in #{hashtag}", + "hashtag.browse_from_account": "Browse posts from @{name} in #{hashtag}", "hashtag.column_header.tag_mode.all": "and {additional}", "hashtag.column_header.tag_mode.any": "or {additional}", "hashtag.column_header.tag_mode.none": "without {additional}", @@ -390,7 +416,10 @@ "hashtag.counter_by_accounts": "{count, plural, one {{counter} Following} other {{counter} Following}}", "hashtag.counter_by_uses": "{count, plural, one {{counter} post} other {{counter} posts}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} post} other {{counter} posts}} today", + "hashtag.feature": "Feature on profile", "hashtag.follow": "Follow hashtag", + "hashtag.mute": "Mute #{hashtag}", + "hashtag.unfeature": "Don't feature on profile", "hashtag.unfollow": "Unfollow hashtag", "hashtags.and_other": "…and {count, plural, one {one more} other {# more}}", "hints.profiles.followers_may_be_missing": "Followers for this profile may be missing.", @@ -401,6 +430,7 @@ "hints.profiles.see_more_posts": "See more posts on {domain}", "hints.threads.replies_may_be_missing": "Replies from other servers may be missing.", "hints.threads.see_more": "See more replies on {domain}", + "home.column_settings.show_quotes": "Show quotes", "home.column_settings.show_reblogs": "Show boosts", "home.column_settings.show_replies": "Show replies", "home.hide_announcements": "Hide announcements", @@ -841,6 +871,13 @@ "status.mute_conversation": "Mute conversation", "status.open": "Expand this post", "status.pin": "Pin on profile", + "status.quote_error.filtered": "Hidden due to one of your filters", + "status.quote_error.not_found": "This post cannot be displayed.", + "status.quote_error.pending_approval": "This post is pending approval from the original author.", + "status.quote_error.rejected": "This post cannot be displayed as the original author does not allow it to be quoted.", + "status.quote_error.removed": "This post was removed by its author.", + "status.quote_error.unauthorized": "This post cannot be displayed as you are not authorised", + "status.quote_post_author": "Post by {name}", "status.read_more": "Read more", "status.reblog": "Boost", "status.reblog_private": "Boost with original visibility", @@ -871,7 +908,9 @@ "subscribed_languages.target": "Change subscribed languages for {target}", "tabs_bar.home": "Home", "tabs_bar.notifications": "Notifications", + "terms_of_service.effective_as_of": "Effective as of {date}", "terms_of_service.title": "Terms of Service", + "terms_of_service.upcoming_changes_on": "Upcoming changes on {date}", "time_remaining.days": "{number, plural, one {# day} other {# days}} left", "time_remaining.hours": "{number, plural, one {# hour} other {# hours}} left", "time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left", @@ -902,6 +941,12 @@ "video.expand": "Expand video", "video.fullscreen": "Full screen", "video.hide": "Hide video", + "video.mute": "Mute", "video.pause": "Pause", - "video.play": "Play" + "video.play": "Play", + "video.skip_backward": "Skip backward", + "video.skip_forward": "Skip forward", + "video.unmute": "Unmute", + "video.volume_down": "Volume down", + "video.volume_up": "Volume up" } diff --git a/app/javascript/mastodon/locales/es-MX.json b/app/javascript/mastodon/locales/es-MX.json index 67e30ec55b..f2a8215e89 100644 --- a/app/javascript/mastodon/locales/es-MX.json +++ b/app/javascript/mastodon/locales/es-MX.json @@ -430,6 +430,7 @@ "hints.profiles.see_more_posts": "Ver más publicaciones en {domain}", "hints.threads.replies_may_be_missing": "Puede que no se muestren algunas respuestas de otros servidores.", "hints.threads.see_more": "Ver más respuestas en {domain}", + "home.column_settings.show_quotes": "Mostrar citas", "home.column_settings.show_reblogs": "Mostrar impulsos", "home.column_settings.show_replies": "Mostrar respuestas", "home.hide_announcements": "Ocultar anuncios", diff --git a/app/javascript/mastodon/locales/es.json b/app/javascript/mastodon/locales/es.json index 63043b8736..95914b60dc 100644 --- a/app/javascript/mastodon/locales/es.json +++ b/app/javascript/mastodon/locales/es.json @@ -430,6 +430,7 @@ "hints.profiles.see_more_posts": "Ver más publicaciones en {domain}", "hints.threads.replies_may_be_missing": "Puede que no se muestren algunas respuestas de otros servidores.", "hints.threads.see_more": "Ver más respuestas en {domain}", + "home.column_settings.show_quotes": "Mostrar citas", "home.column_settings.show_reblogs": "Mostrar impulsos", "home.column_settings.show_replies": "Mostrar respuestas", "home.hide_announcements": "Ocultar comunicaciones", diff --git a/app/javascript/mastodon/locales/et.json b/app/javascript/mastodon/locales/et.json index 576424e856..fb9673c5ea 100644 --- a/app/javascript/mastodon/locales/et.json +++ b/app/javascript/mastodon/locales/et.json @@ -28,6 +28,12 @@ "account.edit_profile": "Muuda profiili", "account.enable_notifications": "Teavita mind @{name} postitustest", "account.endorse": "Too profiilil esile", + "account.familiar_followers_many": "Jälgijateks {name1}, {name2} ja veel {othersCount, plural, one {üks kasutaja, keda tead} other {# kasutajat, keda tead}}", + "account.familiar_followers_one": "Jälgijaks {name1}", + "account.familiar_followers_two": "Jälgijateks {name1} ja {name2}", + "account.featured": "Esiletõstetud", + "account.featured.accounts": "Profiilid", + "account.featured.hashtags": "Sildid", "account.featured_tags.last_status_at": "Viimane postitus {date}", "account.featured_tags.last_status_never": "Postitusi pole", "account.follow": "Jälgi", @@ -38,6 +44,7 @@ "account.following": "Jälgib", "account.following_counter": "{count, plural, one {{counter} jälgib} other {{counter} jälgib}}", "account.follows.empty": "See kasutaja ei jälgi veel kedagi.", + "account.follows_you": "Jälgib sind", "account.go_to_profile": "Mine profiilile", "account.hide_reblogs": "Peida @{name} jagamised", "account.in_memoriam": "In Memoriam.", @@ -52,18 +59,22 @@ "account.mute_notifications_short": "Vaigista teavitused", "account.mute_short": "Vaigista", "account.muted": "Vaigistatud", + "account.mutual": "Te jälgite teineteist", "account.no_bio": "Kirjeldust pole lisatud.", "account.open_original_page": "Ava algne leht", "account.posts": "Postitused", "account.posts_with_replies": "Postitused ja vastused", + "account.remove_from_followers": "Eemalda {name} jälgijate seast", "account.report": "Raporteeri @{name}", "account.requested": "Ootab kinnitust. Klõpsa jälgimise soovi tühistamiseks", "account.requested_follow": "{name} on taodelnud sinu jälgimist", + "account.requests_to_follow_you": "soovib sind jälgida", "account.share": "Jaga @{name} profiili", "account.show_reblogs": "Näita @{name} jagamisi", "account.statuses_counter": "{count, plural, one {{counter} postitus} other {{counter} postitust}}", "account.unblock": "Eemalda blokeering @{name}", "account.unblock_domain": "Tee {domain} nähtavaks", + "account.unblock_domain_short": "Lõpeta blokeerimine", "account.unblock_short": "Eemalda blokeering", "account.unendorse": "Ära kuva profiilil", "account.unfollow": "Jälgid", @@ -225,6 +236,9 @@ "confirmations.redraft.confirm": "Kustuta & taasalusta", "confirmations.redraft.message": "Kindel, et soovid postituse kustutada ja võtta uue aluseks? Lemmikuks märkimised ja jagamised lähevad kaotsi ning vastused jäävad ilma algse postituseta.", "confirmations.redraft.title": "Kustudada ja luua postituse mustand?", + "confirmations.remove_from_followers.confirm": "Eemalda jälgija", + "confirmations.remove_from_followers.message": "{name} lõpetab sellega sinu jälgimise. Kas oled kindel, et soovid jätkata?", + "confirmations.remove_from_followers.title": "Kas eemaldame jälgija?", "confirmations.reply.confirm": "Vasta", "confirmations.reply.message": "Praegu vastamine kirjutab hetkel koostatava sõnumi üle. Oled kindel, et soovid jätkata?", "confirmations.reply.title": "Kirjutada postitus üle?", @@ -292,6 +306,9 @@ "emoji_button.search_results": "Otsitulemused", "emoji_button.symbols": "Sümbolid", "emoji_button.travel": "Reisimine & kohad", + "empty_column.account_featured.me": "Sa pole veel midagi esile tõstnud. Kas sa teadsid, et oma profiilis saad esile tõsta enamkasutatavaid silte või või sõbra kasutajakontot?", + "empty_column.account_featured.other": "{acct} pole veel midagi esile tõstnud. Kas sa teadsid, et oma profiilis saad esile tõsta enamkasutatavaid silte või või sõbra kasutajakontot?", + "empty_column.account_featured_other.unknown": "See kasutajakonto pole veel midagi esile tõstnud.", "empty_column.account_hides_collections": "See kasutaja otsustas mitte teha seda infot saadavaks", "empty_column.account_suspended": "Konto kustutatud", "empty_column.account_timeline": "Siin postitusi ei ole!", @@ -324,8 +341,10 @@ "explore.trending_links": "Uudised", "explore.trending_statuses": "Postitused", "explore.trending_tags": "Sildid", + "featured_carousel.header": "{count, plural, one {Esiletõstetud postitus} other {Esiletõstetud postitust}}", "featured_carousel.next": "Järgmine", "featured_carousel.previous": "Eelmine", + "featured_carousel.slide": "{index} / {total}", "filter_modal.added.context_mismatch_explanation": "See filtrikategooria ei rakendu kontekstis, kuidas postituseni jõudsid. Kui tahad postitust ka selles kontekstis filtreerida, pead muutma filtrit.", "filter_modal.added.context_mismatch_title": "Konteksti mittesobivus!", "filter_modal.added.expired_explanation": "Selle filtri kategooria on aegunud. pead muutma aegumiskuupäeva, kui tahad, et filter kehtiks.", @@ -378,6 +397,8 @@ "generic.saved": "Salvestatud", "getting_started.heading": "Alustamine", "hashtag.admin_moderation": "Ava modereerimisliides #{name} jaoks", + "hashtag.browse": "Sirvi #{hashtag} sildiga postitusi", + "hashtag.browse_from_account": "Sirvi @{name} kasutaja #{hashtag} sildiga postitusi", "hashtag.column_header.tag_mode.all": "ja {additional}", "hashtag.column_header.tag_mode.any": "või {additional}", "hashtag.column_header.tag_mode.none": "ilma {additional}", @@ -390,8 +411,10 @@ "hashtag.counter_by_accounts": "{count, plural, one {{counter} osalejaga} other {{counter} osalejaga}}", "hashtag.counter_by_uses": "{count, plural, one {{counter} postitusega} other {{counter} postitusega}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} postitust} other {{counter} postitust}} täna", + "hashtag.feature": "Tõsta profiilis esile", "hashtag.follow": "Jälgi silti", "hashtag.mute": "Vaigista @#{hashtag}", + "hashtag.unfeature": "Ära tõsta profiilis esile", "hashtag.unfollow": "Lõpeta sildi jälgimine", "hashtags.and_other": "…ja {count, plural, one {}other {# veel}}", "hints.profiles.followers_may_be_missing": "Selle profiili jälgijaid võib olla puudu.", @@ -402,6 +425,7 @@ "hints.profiles.see_more_posts": "Vaata rohkem postitusi kohas {domain}", "hints.threads.replies_may_be_missing": "Vastuseid teistest serveritest võib olla puudu.", "hints.threads.see_more": "Vaata rohkem vastuseid kohas {domain}", + "home.column_settings.show_quotes": "Näita tsiteeritut", "home.column_settings.show_reblogs": "Näita jagamisi", "home.column_settings.show_replies": "Näita vastuseid", "home.hide_announcements": "Peida teadaanded", @@ -710,6 +734,8 @@ "privacy_policy.title": "Isikuandmete kaitse", "recommended": "Soovitatud", "refresh": "Värskenda", + "regeneration_indicator.please_stand_by": "Palun oota.", + "regeneration_indicator.preparing_your_home_feed": "Valmistan ette sinu avalehe lõime…", "relative_time.days": "{number}p", "relative_time.full.days": "{number, plural, one {# päev} other {# päeva}} tagasi", "relative_time.full.hours": "{number, plural, one {# tund} other {# tundi}} tagasi", @@ -763,7 +789,7 @@ "report.thanks.title": "Ei taha seda näha?", "report.thanks.title_actionable": "Täname teavitamise eest, uurime seda.", "report.unfollow": "Lõpeta @{name} jälgimine", - "report.unfollow_explanation": "Jälgid seda kontot. Et mitte näha tema postitusi oma koduvoos, lõpeta ta jälgimine.", + "report.unfollow_explanation": "Jälgid seda kontot. Et mitte näha tema postitusi oma avalehe lõimes, lõpeta ta jälgimine.", "report_notification.attached_statuses": "{count, plural, one {{count} postitus} other {{count} postitust}} listatud", "report_notification.categories.legal": "Õiguslik", "report_notification.categories.legal_sentence": "ebaseaduslik sisu", @@ -793,8 +819,11 @@ "search_results.accounts": "Profiilid", "search_results.all": "Kõik", "search_results.hashtags": "Sildid", + "search_results.no_results": "Tulemusi pole.", + "search_results.no_search_yet": "Proovi otsida postitusi, profiile või silte.", "search_results.see_all": "Vaata kõiki", "search_results.statuses": "Postitused", + "search_results.title": "Otsi märksõna: {q}", "server_banner.about_active_users": "Inimesed, kes kasutavad seda serverit viimase 30 päeva jooksul (kuu aktiivsed kasutajad)", "server_banner.active_users": "aktiivsed kasutajad", "server_banner.administered_by": "Administraator:", @@ -837,6 +866,13 @@ "status.mute_conversation": "Vaigista vestlus", "status.open": "Laienda postitus", "status.pin": "Kinnita profiilile", + "status.quote_error.filtered": "Peidetud mõne kasutatud filtri tõttu", + "status.quote_error.not_found": "Seda postitust ei saa näidata.", + "status.quote_error.pending_approval": "See postitus on algse autori kinnituse ootel.", + "status.quote_error.rejected": "Seda postitust ei saa näidata, kuina algne autor ei luba teda tsiteerida.", + "status.quote_error.removed": "Autor kustutas selle postituse.", + "status.quote_error.unauthorized": "Kuna sul pole luba selle postituse nägemiseks, siis seda ei saa kuvada.", + "status.quote_post_author": "Postitajaks {name}", "status.read_more": "Loe veel", "status.reblog": "Jaga", "status.reblog_private": "Jaga algse nähtavusega", @@ -845,6 +881,7 @@ "status.reblogs.empty": "Keegi pole seda postitust veel jaganud. Kui keegi seda teeb, näeb seda siin.", "status.redraft": "Kustuta & alga uuesti", "status.remove_bookmark": "Eemalda järjehoidja", + "status.remove_favourite": "Eemalda lemmikute seast", "status.replied_in_thread": "Vastatud lõimes", "status.replied_to": "Vastas kasutajale {name}", "status.reply": "Vasta", @@ -866,7 +903,9 @@ "subscribed_languages.target": "Muuda tellitud keeli {target} jaoks", "tabs_bar.home": "Kodu", "tabs_bar.notifications": "Teated", + "terms_of_service.effective_as_of": "Kehtib alates {date}", "terms_of_service.title": "Teenuse tingimused", + "terms_of_service.upcoming_changes_on": "Muudatused alates {date}", "time_remaining.days": "{number, plural, one {# päev} other {# päeva}} jäänud", "time_remaining.hours": "{number, plural, one {# tund} other {# tundi}} jäänud", "time_remaining.minutes": "{number, plural, one {# minut} other {# minutit}} jäänud", @@ -900,5 +939,9 @@ "video.mute": "Vaigista", "video.pause": "Paus", "video.play": "Mängi", - "video.unmute": "Lõpeta vaigistamine" + "video.skip_backward": "Keri tagasi", + "video.skip_forward": "Keri edasi", + "video.unmute": "Lõpeta vaigistamine", + "video.volume_down": "Heli vaiksemaks", + "video.volume_up": "Heli valjemaks" } diff --git a/app/javascript/mastodon/locales/he.json b/app/javascript/mastodon/locales/he.json index 069a6e2d64..c3b549033a 100644 --- a/app/javascript/mastodon/locales/he.json +++ b/app/javascript/mastodon/locales/he.json @@ -430,6 +430,7 @@ "hints.profiles.see_more_posts": "צפיה בעוד פרסומים בשרת {domain}", "hints.threads.replies_may_be_missing": "תגובות משרתים אחרים עלולות להיות חסרות.", "hints.threads.see_more": "צפיה בעוד תגובות משרת {domain}", + "home.column_settings.show_quotes": "הצגת ציטוטים", "home.column_settings.show_reblogs": "הצגת הדהודים", "home.column_settings.show_replies": "הצגת תגובות", "home.hide_announcements": "הסתר הכרזות", diff --git a/app/javascript/mastodon/locales/lv.json b/app/javascript/mastodon/locales/lv.json index c309cdd34f..3492d83cfa 100644 --- a/app/javascript/mastodon/locales/lv.json +++ b/app/javascript/mastodon/locales/lv.json @@ -399,6 +399,7 @@ "hints.profiles.see_more_posts": "Skatīt vairāk ierakstu {domain}", "hints.threads.replies_may_be_missing": "Var trūkt atbilžu no citiem serveriem.", "hints.threads.see_more": "Skatīt vairāk atbilžu {domain}", + "home.column_settings.show_quotes": "Rādīt citātus", "home.column_settings.show_reblogs": "Rādīt pastiprinātos ierakstus", "home.column_settings.show_replies": "Rādīt atbildes", "home.hide_announcements": "Slēpt paziņojumus", diff --git a/app/javascript/mastodon/locales/nan.json b/app/javascript/mastodon/locales/nan.json index 7c29ffe58a..38f0790499 100644 --- a/app/javascript/mastodon/locales/nan.json +++ b/app/javascript/mastodon/locales/nan.json @@ -430,6 +430,7 @@ "hints.profiles.see_more_posts": "佇 {domain} 看koh khah tsē ê PO文", "hints.threads.replies_may_be_missing": "Tuì其他ê服侍器來ê回應可能有phah m̄見。", "hints.threads.see_more": "佇 {domain} 看koh khah tsē ê回應", + "home.column_settings.show_quotes": "顯示引用", "home.column_settings.show_reblogs": "顯示轉PO", "home.column_settings.show_replies": "顯示回應", "home.hide_announcements": "Khàm掉公告", diff --git a/app/javascript/mastodon/locales/nn.json b/app/javascript/mastodon/locales/nn.json index 445c8fd51e..67bf02c1ec 100644 --- a/app/javascript/mastodon/locales/nn.json +++ b/app/javascript/mastodon/locales/nn.json @@ -430,6 +430,7 @@ "hints.profiles.see_more_posts": "Sjå fleire innlegg på {domain}", "hints.threads.replies_may_be_missing": "Svar frå andre tenarar manglar kanskje.", "hints.threads.see_more": "Sjå fleire svar på {domain}", + "home.column_settings.show_quotes": "Vis sitat", "home.column_settings.show_reblogs": "Vis framhevingar", "home.column_settings.show_replies": "Vis svar", "home.hide_announcements": "Skjul kunngjeringar", diff --git a/app/javascript/mastodon/locales/no.json b/app/javascript/mastodon/locales/no.json index b3fc00cadf..c9c8e794de 100644 --- a/app/javascript/mastodon/locales/no.json +++ b/app/javascript/mastodon/locales/no.json @@ -277,6 +277,7 @@ "domain_block_modal.they_cant_follow": "Ingen fra denne serveren kan følge deg.", "domain_block_modal.they_wont_know": "De kommer ikke til å få vite at du har valgt å blokkere dem.", "domain_block_modal.title": "Blokker domenet?", + "domain_block_modal.you_will_lose_num_followers": "Du kommer til å miste {followersCount, plural, one {{followersCountDisplay} følger} other {{followersCountDisplay} følgere}} og {followingCount, plural, one {{followingCountDisplay} du følger} other {{followingCountDisplay} du følger}}.", "domain_block_modal.you_will_lose_relationships": "Du vil miste alle følgere og folk du følger fra denne serveren.", "domain_block_modal.you_wont_see_posts": "Du vil ikke se innlegg eller få varsler fra brukere på denne serveren.", "domain_pill.activitypub_lets_connect": "Den lar deg koble til og samhandle med folk ikke bare på Mastodon, men også på tvers av forskjellige sosiale apper.", @@ -309,6 +310,9 @@ "emoji_button.search_results": "Søkeresultat", "emoji_button.symbols": "Symboler", "emoji_button.travel": "Reise & steder", + "empty_column.account_featured.me": "Du har ikke fremhevet noe ennå. Visste du at du kan fremheve emneknaggene du bruker mest, eller til og med dine venners profilsider?", + "empty_column.account_featured.other": "{acct} har ikke fremhevet noe ennå. Visste du at du kan fremheve emneknaggene du bruker mest, eller til og med dine venners profilsider?", + "empty_column.account_featured_other.unknown": "Denne kontoen har ikke fremhevet noe ennå.", "empty_column.account_hides_collections": "Denne brukeren har valgt å ikke gjøre denne informasjonen tilgjengelig", "empty_column.account_suspended": "Kontoen er suspendert", "empty_column.account_timeline": "Ingen innlegg her!", @@ -341,6 +345,7 @@ "explore.trending_links": "Nyheter", "explore.trending_statuses": "Innlegg", "explore.trending_tags": "Emneknagger", + "featured_carousel.header": "{count, plural, one {{counter} festet innlegg} other {{counter} festede innlegg}}", "featured_carousel.next": "Neste", "featured_carousel.post": "Innlegg", "featured_carousel.previous": "Forrige", @@ -410,8 +415,10 @@ "hashtag.counter_by_accounts": "{count, plural, one {{counter} deltaker} other {{counter} deltakere}}", "hashtag.counter_by_uses": "{count, plural, one {ett innlegg} other {{counter} innlegg}}", "hashtag.counter_by_uses_today": "{count, plural, one {ett innlegg} other {{counter} innlegg}} i dag", + "hashtag.feature": "Fremhev på din profil", "hashtag.follow": "Følg emneknagg", "hashtag.mute": "Demp #{hashtag}", + "hashtag.unfeature": "Ikke fremhev på din profil", "hashtag.unfollow": "Slutt å følge emneknagg", "hashtags.and_other": "…og {count, plural, one{en til} other {# til}}", "hints.profiles.followers_may_be_missing": "Følgere for denne profilen mangler kanskje.", @@ -422,6 +429,7 @@ "hints.profiles.see_more_posts": "Se flere innlegg på {domain}", "hints.threads.replies_may_be_missing": "Svar fra andre servere mangler kanskje.", "hints.threads.see_more": "Se flere svar på {domain}", + "home.column_settings.show_quotes": "Vis sitater", "home.column_settings.show_reblogs": "Vis fremhevinger", "home.column_settings.show_replies": "Vis svar", "home.hide_announcements": "Skjul kunngjøring", @@ -441,6 +449,7 @@ "ignore_notifications_modal.not_following_title": "Overse varsler fra folk du ikke følger?", "ignore_notifications_modal.private_mentions_title": "Overse varsler fra uoppfordrede private omtaler?", "info_button.label": "Hjelp", + "info_button.what_is_alt_text": "

Hva er alternativ tekst?

Alternativ tekst gir en bildebeskrivelse til folk med nedsatt syn, lav båndbredde eller de som vil ha mer kontekst.

Du kan forbedre tilgjengeligheten og forståelsen for alle ved å skive en tydelig, konsis og objektiv alternativ tekst.

  • Få med deg viktige elementer
  • Summér tekst i bilder
  • Bruk vanlige setningsstrukturer
  • Unngå overflødig informasjon
  • Fokuser på trender og viktige funn i komplekse grafiske fremstillinger (som diagram og kart)
", "interaction_modal.action.favourite": "Favoriser fra din konto for å fortsette.", "interaction_modal.action.follow": "Følg fra din konto for å fortsette.", "interaction_modal.action.reply": "Svar fra kontoen din for å fortsette.", diff --git a/app/javascript/mastodon/locales/pt-PT.json b/app/javascript/mastodon/locales/pt-PT.json index 7436b12afa..d3078108d2 100644 --- a/app/javascript/mastodon/locales/pt-PT.json +++ b/app/javascript/mastodon/locales/pt-PT.json @@ -2,9 +2,9 @@ "about.blocks": "Servidores moderados", "about.contact": "Contacto:", "about.default_locale": "Padrão", - "about.disclaimer": "O Mastodon é um software livre, de código aberto e uma marca registada de Mastodon gGmbH.", + "about.disclaimer": "O Mastodon é um ‘software’ livre, de código aberto e uma marca registada de Mastodon gGmbH.", "about.domain_blocks.no_reason_available": "Motivo não disponível", - "about.domain_blocks.preamble": "O Mastodon geralmente permite ver e interagir com o conteúdo de utilizadores de qualquer outra instância no fediverso. Estas são as exceções desta instância em específico.", + "about.domain_blocks.preamble": "O Mastodon ver e interagir com o conteúdo de utilizadores de qualquer outra instância no fediverso. Estas são as exceções desta instância em específico.", "about.domain_blocks.silenced.explanation": "Normalmente não verás perfis e conteúdos deste servidor, a não ser que os procures explicitamente ou optes por segui-los.", "about.domain_blocks.silenced.title": "Limitados", "about.domain_blocks.suspended.explanation": "Nenhum dado deste servidor será processado, armazenado ou trocado, tornando impossível qualquer interação ou comunicação com os utilizadores a partir deste servidor.", @@ -132,8 +132,8 @@ "block_modal.remote_users_caveat": "Vamos pedir ao servidor {domain} para respeitar a tua decisão. No entanto, não é garantido o seu cumprimento, uma vez que alguns servidores podem tratar os bloqueios de forma diferente. As publicações públicas podem continuar a ser visíveis para utilizadores não autenticados.", "block_modal.show_less": "Mostrar menos", "block_modal.show_more": "Mostrar mais", - "block_modal.they_cant_mention": "Ele não te pode mencionar nem seguir.", - "block_modal.they_cant_see_posts": "Não verás as publicações dele e ele não poderá ver as tuas publicações.", + "block_modal.they_cant_mention": "Ele não o pode mencionar nem seguir.", + "block_modal.they_cant_see_posts": "Eles não podem ver as suas publicações e você não verá as deles.", "block_modal.they_will_know": "Ele pode ver que o bloqueaste.", "block_modal.title": "Bloquear utilizador?", "block_modal.you_wont_see_mentions": "Não verás publicações que mencionem este utilizador.", @@ -430,6 +430,7 @@ "hints.profiles.see_more_posts": "Ver mais publicações em {domain}", "hints.threads.replies_may_be_missing": "É possível que não estejam a ser mostradas todas as respostas de outros servidores.", "hints.threads.see_more": "Ver mais respostas em {domain}", + "home.column_settings.show_quotes": "Mostrar citações", "home.column_settings.show_reblogs": "Mostrar impulsos", "home.column_settings.show_replies": "Mostrar respostas", "home.hide_announcements": "Ocultar mensagens de manutenção", diff --git a/app/javascript/mastodon/locales/tok.json b/app/javascript/mastodon/locales/tok.json index 39b638b87c..696954eea3 100644 --- a/app/javascript/mastodon/locales/tok.json +++ b/app/javascript/mastodon/locales/tok.json @@ -264,6 +264,7 @@ "dismissable_banner.explore_links": "tenpo poka la jan pi kulupu ale li toki e ijo sin ni. ijo sin pi jan ante mute li sewi lon lipu ni.", "dismissable_banner.explore_statuses": "tenpo poka la jan pi kulupu ale li toki e ijo ni. ijo sin pi jan ante mute li sewi lon lipu ni.", "dismissable_banner.explore_tags": "tenpo poka la jan pi kulupu ale li toki e ijo ni. ijo sin pi jan ante mute li sewi lon lipu ni.", + "dismissable_banner.public_timeline": "toki ni li sin. jan li pali e toki ni la jan ante mute pi ma {domain} li kute e jan ni.", "domain_block_modal.block": "o len e ma", "domain_block_modal.block_account_instead": "o len e @{name} a", "domain_block_modal.they_can_interact_with_old_posts": "jan pi ma ni li ken ijo e toki sina.", @@ -330,12 +331,14 @@ "filter_modal.added.settings_link": "lipu lawa", "filter_modal.select_filter.expired": "tenpo pini", "filter_modal.select_filter.search": "o alasa anu pali", + "filtered_notifications_banner.pending_requests": "ni li tan {count, plural, =0 {jan sina ala} other {jan sina #}}", "firehose.all": "ale", "firehose.local": "kulupu ni", "firehose.remote": "kulupu ante", "follow_request.authorize": "o ken", - "follow_request.reject": "o ala", + "follow_request.reject": "o weka kute", "follow_suggestions.dismiss": "mi wile lukin sin ala e ni", + "follow_suggestions.friends_of_friends_longer": "ni li suli tawa kulupu jan ni: sina kute e ona", "follow_suggestions.hints.friends_of_friends": "jan kute sina li lukin mute e toki pi jan ni.", "follow_suggestions.hints.most_followed": "jan mute lon ma {domain} li kute e jan ni.", "follow_suggestions.hints.most_interactions": "tenpo poka la jan mute pi ma {domain} li lukin mute e toki pi jan ni.", @@ -366,58 +369,85 @@ "hashtag.follow": "o kute e kulupu lipu", "hashtag.mute": "o kute ala e kulupu #{hashtag}", "hashtag.unfollow": "o kute ala e kulupu lipu", - "home.column_settings.show_reblogs": "lukin e wawa", + "hints.profiles.followers_may_be_missing": "jan kute li ken weka.", + "hints.profiles.see_more_posts": "o lukin e toki ante lon ma {domain}", + "hints.threads.see_more": "o lukin e toki ante lon ma {domain}", + "home.column_settings.show_reblogs": "o lukin e wawa toki", + "home.hide_announcements": "o lukin ala e toki lawa suli", "home.pending_critical_update.link": "o lukin e ijo ilo sin", + "home.show_announcements": "o lukin e toki lawa suli", "info_button.label": "sona", - "interaction_modal.go": "o tawa ma ni", + "interaction_modal.go": "o tawa", + "interaction_modal.no_account_yet": "sina jo ala e sijelo anu seme?", "interaction_modal.on_another_server": "lon ma ante", "interaction_modal.on_this_server": "lon ma ni", - "interaction_modal.title.favourite": "o suli e toki {name}", + "interaction_modal.title.favourite": "o pona tawa {name}", "interaction_modal.title.follow": "o kute e {name}", - "interaction_modal.title.reblog": "o wawa e toki {name}", - "interaction_modal.title.reply": "o toki lon toki pi jan {name}", - "interaction_modal.title.vote": "o pana tawa wile sona pi jan {name}", + "interaction_modal.title.reblog": "o pana wawa e toki tan {name}", + "interaction_modal.title.reply": "o toki lon lipu tawa {name}", + "interaction_modal.title.vote": "o pana e sona wile tawa {name}", "interaction_modal.username_prompt": "ni li sama ni: {example}", - "intervals.full.days": "{number, plural, other {suni #}}", - "intervals.full.hours": "{number, plural, other {tenpo suli #}}", + "intervals.full.days": "ni li pini lon {number, plural, other {tenpo suno #}}", + "intervals.full.hours": "ni li pini lon {number, plural, other {tenpo ilo #}}", + "intervals.full.minutes": "ni li pini lon {number, plural, other {tenpo ilo lili #}}", + "keyboard_shortcuts.back": "o tawa pini", "keyboard_shortcuts.blocked": "o lukin e lipu pi len sina", "keyboard_shortcuts.boost": "o pana sin e toki", "keyboard_shortcuts.down": "o tawa anpa lon lipu", "keyboard_shortcuts.enter": "o lukin e toki", "keyboard_shortcuts.favourite": "o sitelen pona e toki", "keyboard_shortcuts.favourites": "o lukin e lipu sina pi toki suli", + "keyboard_shortcuts.federated": "o lukin e linja toki pi ma ale", "keyboard_shortcuts.muted": "o lukin e lipu sina pi jan len", "keyboard_shortcuts.my_profile": "o lukin e lipu sina", "keyboard_shortcuts.open_media": "o lukin e sitelen", "keyboard_shortcuts.pinned": "o lukin pi lipu sina pi toki sewi", "keyboard_shortcuts.reply": "o toki lon ijo ni", - "keyboard_shortcuts.toggle_sensitivity": "o ante e ken lukin", - "keyboard_shortcuts.toot": "o toki", + "keyboard_shortcuts.toggle_hidden": "o lukin ala lukin e toki len", + "keyboard_shortcuts.toggle_sensitivity": "o lukin ala lukin e sitelen", + "keyboard_shortcuts.toot": "o toki sin", + "keyboard_shortcuts.translate": "o ante e toki lipu", "keyboard_shortcuts.up": "o tawa sewi lon lipu", "lightbox.close": "o pini", "lightbox.next": "sinpin", "lightbox.previous": "monsi", "link_preview.author": "tan {name}", + "link_preview.shares": "{count, plural, other {toki {counter}}}", + "lists.add_member": "o pana", + "lists.add_to_list": "o pana tawa kulupu jan", + "lists.add_to_lists": "o pana e {name} tawa kulupu jan", "lists.create": "o lipu e kulupu jan", + "lists.create_a_list_to_organize": "o lipu e kulupu tawa nasin pi ilo sina", + "lists.create_list": "o lipu e kulupu jan", "lists.delete": "o weka e kulupu lipu", "lists.done": "ale li pini", "lists.edit": "o ante e kulupu lipu", + "lists.find_users_to_add": "o alasa e jan", "lists.list_members_count": "{count, plural, other {jan #}}", "lists.list_name": "nimi kulupu", "lists.new_list_name": "nimi pi kulupu sin", "lists.no_lists_yet": "kulupu li lon ala.", + "lists.no_members_yet": "jan ala li lon.", + "lists.no_results_found": "jan ala li lon.", "lists.remove_member": "o weka", "lists.replies_policy.followed": "jan kute ale", "lists.replies_policy.list": "jan pi kulupu ni taso", "lists.replies_policy.none": "jan ala", + "lists.save": "o awen", "lists.search": "o alasa", "load_pending": "{count, plural, other {ijo sin #}}", "loading_indicator.label": "ni li kama…", + "media_gallery.hide": "o len", + "moved_to_account_banner.text": "sina ante e sijelo tawa sijelo {movedToAccount}. ni la sijelo {disabledAccount} li pini.", + "mute_modal.hide_from_notifications": "o len tan mu", + "mute_modal.indefinite": "ni li pini ala", "mute_modal.title": "sina wile ala wile kute e jan ni?", "navigation_bar.about": "sona", "navigation_bar.blocks": "jan len", "navigation_bar.compose": "o pali e toki sin", + "navigation_bar.discover": "o alasa", "navigation_bar.domain_blocks": "ma len", + "navigation_bar.explore": "o alasa", "navigation_bar.favourites": "ijo pona", "navigation_bar.filters": "nimi len", "navigation_bar.lists": "kulupu lipu", diff --git a/app/javascript/mastodon/locales/tr.json b/app/javascript/mastodon/locales/tr.json index 7d22877030..b68854b883 100644 --- a/app/javascript/mastodon/locales/tr.json +++ b/app/javascript/mastodon/locales/tr.json @@ -430,6 +430,7 @@ "hints.profiles.see_more_posts": "{domain} adresinde daha fazla gönderi gör", "hints.threads.replies_may_be_missing": "Diğer sunuculardan yanıtlar eksik olabilir.", "hints.threads.see_more": "{domain} adresinde daha fazla yanıt gör", + "home.column_settings.show_quotes": "Alıntıları göster", "home.column_settings.show_reblogs": "Yeniden paylaşımları göster", "home.column_settings.show_replies": "Yanıtları göster", "home.hide_announcements": "Duyuruları gizle", diff --git a/app/javascript/mastodon/locales/vi.json b/app/javascript/mastodon/locales/vi.json index 5c79bcd7fa..747d02a473 100644 --- a/app/javascript/mastodon/locales/vi.json +++ b/app/javascript/mastodon/locales/vi.json @@ -430,6 +430,7 @@ "hints.profiles.see_more_posts": "Xem thêm tút ở {domain}", "hints.threads.replies_may_be_missing": "Lượt trả lời từ máy chủ khác có thể không đầy đủ.", "hints.threads.see_more": "Xem thêm ở {domain}", + "home.column_settings.show_quotes": "Hiện các trích dẫn", "home.column_settings.show_reblogs": "Hiện những lượt đăng lại", "home.column_settings.show_replies": "Hiện những tút dạng trả lời", "home.hide_announcements": "Ẩn thông báo máy chủ", diff --git a/app/javascript/mastodon/locales/zh-CN.json b/app/javascript/mastodon/locales/zh-CN.json index a9e5844fe9..4f4909ad7f 100644 --- a/app/javascript/mastodon/locales/zh-CN.json +++ b/app/javascript/mastodon/locales/zh-CN.json @@ -341,6 +341,8 @@ "explore.trending_links": "新闻", "explore.trending_statuses": "嘟文", "explore.trending_tags": "话题", + "featured_carousel.next": "下一步", + "featured_carousel.previous": "上一步", "filter_modal.added.context_mismatch_explanation": "这条过滤规则不适用于你当前访问此嘟文的场景。要在此场景下过滤嘟文,你必须编辑此过滤规则。", "filter_modal.added.context_mismatch_title": "场景不匹配!", "filter_modal.added.expired_explanation": "此过滤规则类别已过期,你需要修改到期日期才能应用。", @@ -418,6 +420,7 @@ "hints.profiles.see_more_posts": "在 {domain} 查看更多嘟文", "hints.threads.replies_may_be_missing": "来自其它实例的回复可能没有完全显示。", "hints.threads.see_more": "在 {domain} 查看更多回复", + "home.column_settings.show_quotes": "显示引用", "home.column_settings.show_reblogs": "显示转嘟", "home.column_settings.show_replies": "显示回复", "home.hide_announcements": "隐藏公告", diff --git a/config/locales/nan.yml b/config/locales/nan.yml index ff534f2277..6f9824e3b1 100644 --- a/config/locales/nan.yml +++ b/config/locales/nan.yml @@ -151,11 +151,15 @@ nan: subscribe: 訂 suspend: 中止權限 suspended: 權限中止ah + suspension_irreversible: Tsit ê口座ê資料已經thâi掉,bē當回復。Lí ē當取消停止tsit ê口座ê權限,予伊ē當使用,但是bē當回復任何khah早ê資料。 + title: 口座 + unblock_email: 取消封鎖電子phue ê地址 unblocked_email_msg: 成功取消封鎖 %{username} ê電子phue地址 unconfirmed_email: 無驗證ê電子phue undo_sensitized: 取消強制標做敏感ê undo_silenced: 取消限制 undo_suspension: 取消停止權限 + unsilenced_msg: 成功kā %{username} ê口座取消限制 unsubscribe: 取消訂 unsuspended_msg: 成功kā %{username} ê口座取消停止權限 username: 用者ê名 @@ -179,6 +183,11 @@ nan: create_domain_block: 加添封鎖ê域名 create_email_domain_block: 加添電子phue域名ê封鎖 create_ip_block: 加添IP規則 + create_relay: 建立中繼 + create_unavailable_domain: 建立bē當用ê域名 + create_user_role: 建立角色 + demote_user: Kā用者降級 + destroy_announcement: Thâi掉公告 remove_avatar_user: Thâi掉標頭 actions: remove_avatar_user_html: "%{name} thâi掉 %{target} ê標頭" diff --git a/config/locales/simple_form.et.yml b/config/locales/simple_form.et.yml index 57eddb0692..f61f7d8a84 100644 --- a/config/locales/simple_form.et.yml +++ b/config/locales/simple_form.et.yml @@ -3,6 +3,7 @@ et: simple_form: hints: account: + attribution_domains: Üks rea kohta. See kaitseb pahatahtlike viidete eest. discoverable: Su profiili ja avalikke postitusi võidakse Mastodoni erinevates piirkondades esile tõsta või soovitada ning su profiili soovitada teistele kasutajatele. display_name: Su täisnimi või naljanimi. fields: Su koduleht, sugu, vanus. Mistahes, mida soovid. From 90183b6c27a660069e79ab3c3737f54d64ad88ba Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 10 Jun 2025 07:55:27 +0000 Subject: [PATCH 07/19] chore(deps): update dependency rubocop to v1.76.1 (#34991) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Gemfile.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index f897865bf4..16fdaf5777 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -751,7 +751,7 @@ GEM rspec-mocks (~> 3.0) sidekiq (>= 5, < 9) rspec-support (3.13.3) - rubocop (1.76.0) + rubocop (1.76.1) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -762,7 +762,7 @@ GEM rubocop-ast (>= 1.45.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.45.0) + rubocop-ast (1.45.1) parser (>= 3.3.7.2) prism (~> 1.4) rubocop-capybara (2.22.1) From 24803db2bc6db6f1e560dc7181f4b44f7d8be40f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 10 Jun 2025 10:11:21 +0200 Subject: [PATCH 08/19] fix(deps): update dependency @vitejs/plugin-react to v4.5.2 (#34992) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/yarn.lock b/yarn.lock index 429d03b2fa..3dbbbc2495 100644 --- a/yarn.lock +++ b/yarn.lock @@ -73,7 +73,7 @@ __metadata: languageName: node linkType: hard -"@babel/core@npm:^7.18.9, @babel/core@npm:^7.21.3, @babel/core@npm:^7.24.4, @babel/core@npm:^7.26.10": +"@babel/core@npm:^7.18.9, @babel/core@npm:^7.21.3, @babel/core@npm:^7.24.4, @babel/core@npm:^7.26.10, @babel/core@npm:^7.27.4": version: 7.27.4 resolution: "@babel/core@npm:7.27.4" dependencies: @@ -877,7 +877,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-self@npm:^7.25.9": +"@babel/plugin-transform-react-jsx-self@npm:^7.27.1": version: 7.27.1 resolution: "@babel/plugin-transform-react-jsx-self@npm:7.27.1" dependencies: @@ -888,7 +888,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-source@npm:^7.25.9": +"@babel/plugin-transform-react-jsx-source@npm:^7.27.1": version: 7.27.1 resolution: "@babel/plugin-transform-react-jsx-source@npm:7.27.1" dependencies: @@ -3068,10 +3068,10 @@ __metadata: languageName: node linkType: hard -"@rolldown/pluginutils@npm:1.0.0-beta.9": - version: 1.0.0-beta.9 - resolution: "@rolldown/pluginutils@npm:1.0.0-beta.9" - checksum: 10c0/21aebb7ebd093282efd96f63ddd465f76746b1d70282366d6ccc7fff6eb4da5c2f8f4bfaaaeb4283c2432600e5609e39e9897864575e593efc11d376ca1a6fa1 +"@rolldown/pluginutils@npm:1.0.0-beta.11": + version: 1.0.0-beta.11 + resolution: "@rolldown/pluginutils@npm:1.0.0-beta.11" + checksum: 10c0/140088e33a4dd3bc21d06fa0cbe79b52e95487c9737d425aa5729e52446dc70f066fbce632489a53e45bb567f1e86c19835677c98fe5d4123ae1e2fef53f8d97 languageName: node linkType: hard @@ -4557,18 +4557,18 @@ __metadata: linkType: hard "@vitejs/plugin-react@npm:^4.2.1": - version: 4.5.1 - resolution: "@vitejs/plugin-react@npm:4.5.1" + version: 4.5.2 + resolution: "@vitejs/plugin-react@npm:4.5.2" dependencies: - "@babel/core": "npm:^7.26.10" - "@babel/plugin-transform-react-jsx-self": "npm:^7.25.9" - "@babel/plugin-transform-react-jsx-source": "npm:^7.25.9" - "@rolldown/pluginutils": "npm:1.0.0-beta.9" + "@babel/core": "npm:^7.27.4" + "@babel/plugin-transform-react-jsx-self": "npm:^7.27.1" + "@babel/plugin-transform-react-jsx-source": "npm:^7.27.1" + "@rolldown/pluginutils": "npm:1.0.0-beta.11" "@types/babel__core": "npm:^7.20.5" react-refresh: "npm:^0.17.0" peerDependencies: - vite: ^4.2.0 || ^5.0.0 || ^6.0.0 - checksum: 10c0/51b28c02905228cc5b1dd16f5d008cf08175e47d22ff37b0959a9ee20a46a5215698b20405f39e6b73ae2a63c2a005d74c94b3456083ad038b59932d682b9165 + vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0-beta.0 + checksum: 10c0/37c58e6a9c953ab27eb6de42f0d317d26901117d4e4bec067b098c48353065888d240b819efc5b47e325f83532305d3cc51996fd3eb53f8649b199ecc4424746 languageName: node linkType: hard From a2a6117143583dd180e2d8e1f4e1206cc83134b0 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Jun 2025 10:11:46 +0200 Subject: [PATCH 09/19] Fix wrong dimensions on blurhash previews of news articles in web UI (#34990) --- app/javascript/mastodon/features/explore/components/story.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/javascript/mastodon/features/explore/components/story.jsx b/app/javascript/mastodon/features/explore/components/story.jsx index 125df412a1..449591eace 100644 --- a/app/javascript/mastodon/features/explore/components/story.jsx +++ b/app/javascript/mastodon/features/explore/components/story.jsx @@ -66,7 +66,7 @@ export const Story = ({ {thumbnail ? ( <> -
+ {!thumbnailLoaded && } {thumbnailDescription} ) : } From dc2cfd50a0c94bbdc5c158f6c891658b7e34cc2d Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Tue, 10 Jun 2025 04:17:35 -0400 Subject: [PATCH 10/19] Fix `Style/OptionalBooleanParameter` cop (#34968) --- .rubocop_todo.yml | 12 ------------ app/lib/admin/system_check/media_privacy_check.rb | 2 +- app/lib/admin/system_check/message.rb | 2 +- app/lib/admin/system_check/software_version_check.rb | 2 +- app/lib/request.rb | 2 +- app/lib/webfinger.rb | 4 ++-- app/services/block_domain_service.rb | 2 +- app/services/fetch_resource_service.rb | 4 ++-- app/workers/domain_block_worker.rb | 4 ++-- app/workers/unfollow_follow_worker.rb | 2 +- .../admin/system_check/media_privacy_check_spec.rb | 4 ++-- spec/lib/admin/system_check/message_spec.rb | 2 +- .../system_check/software_version_check_spec.rb | 2 +- spec/workers/domain_block_worker_spec.rb | 2 +- 14 files changed, 17 insertions(+), 29 deletions(-) diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 641a7ec69a..4897fae040 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -38,15 +38,3 @@ Style/FetchEnvVar: # Configuration parameters: MinBodyLength, AllowConsecutiveConditionals. Style/GuardClause: Enabled: false - -# Configuration parameters: AllowedMethods. -# AllowedMethods: respond_to_missing? -Style/OptionalBooleanParameter: - Exclude: - - 'app/lib/admin/system_check/message.rb' - - 'app/lib/request.rb' - - 'app/lib/webfinger.rb' - - 'app/services/block_domain_service.rb' - - 'app/services/fetch_resource_service.rb' - - 'app/workers/domain_block_worker.rb' - - 'app/workers/unfollow_follow_worker.rb' diff --git a/app/lib/admin/system_check/media_privacy_check.rb b/app/lib/admin/system_check/media_privacy_check.rb index 378a8ce294..01bffcff16 100644 --- a/app/lib/admin/system_check/media_privacy_check.rb +++ b/app/lib/admin/system_check/media_privacy_check.rb @@ -13,7 +13,7 @@ class Admin::SystemCheck::MediaPrivacyCheck < Admin::SystemCheck::BaseCheck end def message - Admin::SystemCheck::Message.new(@failure_message, @failure_value, @failure_action, true) + Admin::SystemCheck::Message.new(@failure_message, @failure_value, @failure_action, critical: true) end private diff --git a/app/lib/admin/system_check/message.rb b/app/lib/admin/system_check/message.rb index ad8d4b6073..60f14bdfd9 100644 --- a/app/lib/admin/system_check/message.rb +++ b/app/lib/admin/system_check/message.rb @@ -3,7 +3,7 @@ class Admin::SystemCheck::Message attr_reader :key, :value, :action, :critical - def initialize(key, value = nil, action = nil, critical = false) + def initialize(key, value = nil, action = nil, critical: false) @key = key @value = value @action = action diff --git a/app/lib/admin/system_check/software_version_check.rb b/app/lib/admin/system_check/software_version_check.rb index e5cacfe354..014c3290d8 100644 --- a/app/lib/admin/system_check/software_version_check.rb +++ b/app/lib/admin/system_check/software_version_check.rb @@ -13,7 +13,7 @@ class Admin::SystemCheck::SoftwareVersionCheck < Admin::SystemCheck::BaseCheck def message if software_updates.any?(&:urgent?) - Admin::SystemCheck::Message.new(:software_version_critical_check, nil, admin_software_updates_path, true) + Admin::SystemCheck::Message.new(:software_version_critical_check, nil, admin_software_updates_path, critical: true) elsif software_updates.any?(&:patch_type?) Admin::SystemCheck::Message.new(:software_version_patch_check, nil, admin_software_updates_path) else diff --git a/app/lib/request.rb b/app/lib/request.rb index 212acf64d0..4858aa4bc2 100644 --- a/app/lib/request.rb +++ b/app/lib/request.rb @@ -20,7 +20,7 @@ class PerOperationWithDeadline < HTTP::Timeout::PerOperation @read_deadline = options.fetch(:read_deadline, READ_DEADLINE) end - def connect(socket_class, host, port, nodelay = false) + def connect(socket_class, host, port, nodelay = false) # rubocop:disable Style/OptionalBooleanParameter @socket = socket_class.open(host, port) @socket.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1) if nodelay end diff --git a/app/lib/webfinger.rb b/app/lib/webfinger.rb index 01a5dbc21d..83b5415a33 100644 --- a/app/lib/webfinger.rb +++ b/app/lib/webfinger.rb @@ -65,7 +65,7 @@ class Webfinger private - def body_from_webfinger(url = standard_url, use_fallback = true) + def body_from_webfinger(url = standard_url, use_fallback: true) webfinger_request(url).perform do |res| if res.code == 200 body = res.body_with_limit @@ -85,7 +85,7 @@ class Webfinger def body_from_host_meta host_meta_request.perform do |res| if res.code == 200 - body_from_webfinger(url_from_template(res.body_with_limit), false) + body_from_webfinger(url_from_template(res.body_with_limit), use_fallback: false) else raise Webfinger::Error, "Request for #{@uri} returned HTTP #{res.code}" end diff --git a/app/services/block_domain_service.rb b/app/services/block_domain_service.rb index 5f7230678a..ca6cbec0b6 100644 --- a/app/services/block_domain_service.rb +++ b/app/services/block_domain_service.rb @@ -3,7 +3,7 @@ class BlockDomainService < BaseService attr_reader :domain_block - def call(domain_block, update = false) + def call(domain_block, update: false) @domain_block = domain_block @domain_block_event = nil diff --git a/app/services/fetch_resource_service.rb b/app/services/fetch_resource_service.rb index 3fde78455c..2382e126bd 100644 --- a/app/services/fetch_resource_service.rb +++ b/app/services/fetch_resource_service.rb @@ -22,7 +22,7 @@ class FetchResourceService < BaseService def process(url, terminal: false) @url = url - perform_request { |response| process_response(response, terminal) } + perform_request { |response| process_response(response, terminal:) } end def perform_request(&block) @@ -40,7 +40,7 @@ class FetchResourceService < BaseService end.perform(&block) end - def process_response(response, terminal = false) + def process_response(response, terminal: false) @response_code = response.code return nil if response.code != 200 diff --git a/app/workers/domain_block_worker.rb b/app/workers/domain_block_worker.rb index 3c601cd832..d89eba7c13 100644 --- a/app/workers/domain_block_worker.rb +++ b/app/workers/domain_block_worker.rb @@ -3,10 +3,10 @@ class DomainBlockWorker include Sidekiq::Worker - def perform(domain_block_id, update = false) + def perform(domain_block_id, update = false) # rubocop:disable Style/OptionalBooleanParameter domain_block = DomainBlock.find_by(id: domain_block_id) return true if domain_block.nil? - BlockDomainService.new.call(domain_block, update) + BlockDomainService.new.call(domain_block, update:) end end diff --git a/app/workers/unfollow_follow_worker.rb b/app/workers/unfollow_follow_worker.rb index a4d57839de..accfcc903e 100644 --- a/app/workers/unfollow_follow_worker.rb +++ b/app/workers/unfollow_follow_worker.rb @@ -5,7 +5,7 @@ class UnfollowFollowWorker sidekiq_options queue: 'pull' - def perform(follower_account_id, old_target_account_id, new_target_account_id, bypass_locked = false) + def perform(follower_account_id, old_target_account_id, new_target_account_id, bypass_locked = false) # rubocop:disable Style/OptionalBooleanParameter follower_account = Account.find(follower_account_id) old_target_account = Account.find(old_target_account_id) new_target_account = Account.find(new_target_account_id) diff --git a/spec/lib/admin/system_check/media_privacy_check_spec.rb b/spec/lib/admin/system_check/media_privacy_check_spec.rb index 0d5bcdb3e8..34eb79e36c 100644 --- a/spec/lib/admin/system_check/media_privacy_check_spec.rb +++ b/spec/lib/admin/system_check/media_privacy_check_spec.rb @@ -23,11 +23,11 @@ RSpec.describe Admin::SystemCheck::MediaPrivacyCheck do describe 'message' do it 'sends values to message instance' do - allow(Admin::SystemCheck::Message).to receive(:new).with(nil, nil, nil, true) + allow(Admin::SystemCheck::Message).to receive(:new).with(nil, nil, nil, critical: true) check.message - expect(Admin::SystemCheck::Message).to have_received(:new).with(nil, nil, nil, true) + expect(Admin::SystemCheck::Message).to have_received(:new).with(nil, nil, nil, critical: true) end end end diff --git a/spec/lib/admin/system_check/message_spec.rb b/spec/lib/admin/system_check/message_spec.rb index 81ef4f2f09..d64c17354c 100644 --- a/spec/lib/admin/system_check/message_spec.rb +++ b/spec/lib/admin/system_check/message_spec.rb @@ -3,7 +3,7 @@ require 'rails_helper' RSpec.describe Admin::SystemCheck::Message do - subject(:check) { described_class.new(:key_value, :value_value, :action_value, :critical_value) } + subject(:check) { described_class.new(:key_value, :value_value, :action_value, critical: :critical_value) } it 'providers readers when initialized' do expect(check.key).to eq :key_value diff --git a/spec/lib/admin/system_check/software_version_check_spec.rb b/spec/lib/admin/system_check/software_version_check_spec.rb index 75dc1a4732..1f95284747 100644 --- a/spec/lib/admin/system_check/software_version_check_spec.rb +++ b/spec/lib/admin/system_check/software_version_check_spec.rb @@ -127,7 +127,7 @@ RSpec.describe Admin::SystemCheck::SoftwareVersionCheck do check.message expect(Admin::SystemCheck::Message).to have_received(:new) - .with(:software_version_critical_check, nil, admin_software_updates_path, true) + .with(:software_version_critical_check, nil, admin_software_updates_path, critical: true) end end end diff --git a/spec/workers/domain_block_worker_spec.rb b/spec/workers/domain_block_worker_spec.rb index c55aa2c0c3..cb0f98a29b 100644 --- a/spec/workers/domain_block_worker_spec.rb +++ b/spec/workers/domain_block_worker_spec.rb @@ -14,7 +14,7 @@ RSpec.describe DomainBlockWorker do result = subject.perform(domain_block.id) expect(result).to be_nil - expect(service).to have_received(:call).with(domain_block, false) + expect(service).to have_received(:call).with(domain_block, update: false) end it 'returns true for non-existent domain block' do From 1bf8a642f06d86fbc5132fa8ebf3535fc264fdbf Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 10 Jun 2025 10:36:27 +0200 Subject: [PATCH 11/19] fix(deps): update dependency sass to v1.89.2 (#34993) 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 3dbbbc2495..0346cd7901 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11597,8 +11597,8 @@ __metadata: linkType: hard "sass@npm:^1.62.1": - version: 1.89.1 - resolution: "sass@npm:1.89.1" + version: 1.89.2 + resolution: "sass@npm:1.89.2" dependencies: "@parcel/watcher": "npm:^2.4.1" chokidar: "npm:^4.0.0" @@ -11609,7 +11609,7 @@ __metadata: optional: true bin: sass: sass.js - checksum: 10c0/4406c441f71f5e0ec056345e6091cef51fd1786dac6e5b3eb1e87df464c40b3278219cc51df98309c36794503787ab0fe88fd45f2b0464f22000b68e755883ee + checksum: 10c0/752ccc7581b0c6395f63918116c20924e99943a86d79e94f5c4a0d41b1e981fe1f0ecd1ee82fff21496f81dbc91f68fb35a498166562ec8ec53e7aad7c3dbd9d languageName: node linkType: hard From 1824b1fd29fe6a74f4da4cf16ec8fdb28816f1be Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Jun 2025 10:36:42 +0200 Subject: [PATCH 12/19] Fix broken colors in some themed SVGs in web UI (#34988) --- app/javascript/styles/mastodon/_functions.scss | 10 ++++++++++ app/javascript/styles/mastodon/basics.scss | 8 -------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/app/javascript/styles/mastodon/_functions.scss b/app/javascript/styles/mastodon/_functions.scss index 7190a6233e..a9911edb9d 100644 --- a/app/javascript/styles/mastodon/_functions.scss +++ b/app/javascript/styles/mastodon/_functions.scss @@ -1,4 +1,6 @@ @use 'sass:color'; +@use 'sass:string'; +@use 'sass:meta'; $darken-multiplier: -1 !default; $lighten-multiplier: 1 !default; @@ -19,3 +21,11 @@ $lighten-multiplier: 1 !default; $space: hsl ); } + +@function hex-color($color) { + @if meta.type-of($color) == 'color' { + $color: string.slice(color.ie-hex-str($color), 4); + } + + @return '%23' + string.unquote($color); +} diff --git a/app/javascript/styles/mastodon/basics.scss b/app/javascript/styles/mastodon/basics.scss index dc3466b7f3..a699ee18e0 100644 --- a/app/javascript/styles/mastodon/basics.scss +++ b/app/javascript/styles/mastodon/basics.scss @@ -1,14 +1,6 @@ @use 'variables' as *; @use 'functions' as *; -@function hex-color($color) { - @if type-of($color) == 'color' { - $color: str-slice(ie-hex-str($color), 4); - } - - @return '%23' + unquote($color); -} - body { font-family: $font-sans-serif, sans-serif; background: var(--background-color); From c7277018394335f5950e1f235b0995c53b129f85 Mon Sep 17 00:00:00 2001 From: Claire Date: Tue, 10 Jun 2025 15:25:24 +0200 Subject: [PATCH 13/19] Fix crash in `/about` when server returns cached rules without `translations` attribute (#34997) --- .../mastodon/features/about/components/rules.tsx | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/app/javascript/mastodon/features/about/components/rules.tsx b/app/javascript/mastodon/features/about/components/rules.tsx index 063b6b48ec..e413adb310 100644 --- a/app/javascript/mastodon/features/about/components/rules.tsx +++ b/app/javascript/mastodon/features/about/components/rules.tsx @@ -29,7 +29,7 @@ interface BaseRule { interface Rule extends BaseRule { id: string; - translations: Record; + translations?: Record; } export const RulesSection: FC = ({ isLoading = false }) => { @@ -113,15 +113,23 @@ const rulesSelector = createSelector( (rules, locale): Rule[] => { return rules.map((rule) => { const translations = rule.translations; - if (translations[locale]) { - rule.text = translations[locale].text; - rule.hint = translations[locale].hint; + + // Handle cached responses from earlier versions + if (!translations) { + return rule; } + const partialLocale = locale.split('-')[0]; if (partialLocale && translations[partialLocale]) { rule.text = translations[partialLocale].text; rule.hint = translations[partialLocale].hint; } + + if (translations[locale]) { + rule.text = translations[locale].text; + rule.hint = translations[locale].hint; + } + return rule; }); }, From 7a7e0ba4cd23b2bb2def2b85530fe6c3a9308d7d Mon Sep 17 00:00:00 2001 From: Claire Date: Tue, 10 Jun 2025 15:26:29 +0200 Subject: [PATCH 14/19] Add basic support for remote attachments with multiple media types (#34996) --- app/helpers/json_ld_helper.rb | 11 ++++ .../parser/media_attachment_parser.rb | 4 +- .../parser/media_attachment_parser_spec.rb | 51 +++++++++++++++++++ 3 files changed, 64 insertions(+), 2 deletions(-) create mode 100644 spec/lib/activitypub/parser/media_attachment_parser_spec.rb diff --git a/app/helpers/json_ld_helper.rb b/app/helpers/json_ld_helper.rb index 212894d0cd..078aba456a 100644 --- a/app/helpers/json_ld_helper.rb +++ b/app/helpers/json_ld_helper.rb @@ -26,6 +26,8 @@ module JsonLdHelper # The url attribute can be a string, an array of strings, or an array of objects. # The objects could include a mimeType. Not-included mimeType means it's text/html. def url_to_href(value, preferred_type = nil) + value = [value] if value.is_a?(Hash) + single_value = if value.is_a?(Array) && !value.first.is_a?(String) value.find { |link| preferred_type.nil? || ((link['mimeType'].presence || 'text/html') == preferred_type) } elsif value.is_a?(Array) @@ -41,6 +43,15 @@ module JsonLdHelper end end + def url_to_media_type(value, preferred_type = nil) + value = [value] if value.is_a?(Hash) + return unless value.is_a?(Array) && !value.first.is_a?(String) + + single_value = value.find { |link| preferred_type.nil? || ((link['mimeType'].presence || 'text/html') == preferred_type) } + + single_value['mediaType'] unless single_value.nil? + end + def as_array(value) if value.nil? [] diff --git a/app/lib/activitypub/parser/media_attachment_parser.rb b/app/lib/activitypub/parser/media_attachment_parser.rb index bcbf92214f..1f4f43cb15 100644 --- a/app/lib/activitypub/parser/media_attachment_parser.rb +++ b/app/lib/activitypub/parser/media_attachment_parser.rb @@ -15,7 +15,7 @@ class ActivityPub::Parser::MediaAttachmentParser end def remote_url - url = Addressable::URI.parse(@json['url'])&.normalize&.to_s + url = Addressable::URI.parse(url_to_href(@json['url']))&.normalize&.to_s url unless unsupported_uri_scheme?(url) rescue Addressable::URI::InvalidURIError nil @@ -43,7 +43,7 @@ class ActivityPub::Parser::MediaAttachmentParser end def file_content_type - @json['mediaType'] + @json['mediaType'] || url_to_media_type(@json['url']) end private diff --git a/spec/lib/activitypub/parser/media_attachment_parser_spec.rb b/spec/lib/activitypub/parser/media_attachment_parser_spec.rb new file mode 100644 index 0000000000..9456b5e648 --- /dev/null +++ b/spec/lib/activitypub/parser/media_attachment_parser_spec.rb @@ -0,0 +1,51 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe ActivityPub::Parser::MediaAttachmentParser do + subject { described_class.new(json) } + + let(:json) do + { + '@context': 'https://www.w3.org/ns/activitystreams', + type: 'Document', + mediaType: 'image/png', + url: 'http://example.com/attachment.png', + }.deep_stringify_keys + end + + it 'correctly parses media attachment' do + expect(subject).to have_attributes( + remote_url: 'http://example.com/attachment.png', + file_content_type: 'image/png' + ) + end + + context 'when the URL is a link with multiple options' do + let(:json) do + { + '@context': 'https://www.w3.org/ns/activitystreams', + type: 'Document', + url: [ + { + type: 'Link', + mediaType: 'image/png', + href: 'http://example.com/attachment.png', + }, + { + type: 'Link', + mediaType: 'image/avif', + href: 'http://example.com/attachment.avif', + }, + ], + }.deep_stringify_keys + end + + it 'returns the first option' do + expect(subject).to have_attributes( + remote_url: 'http://example.com/attachment.png', + file_content_type: 'image/png' + ) + end + end +end From c543e823ab55d7df6c92434981509d50038aa7fb Mon Sep 17 00:00:00 2001 From: Echo Date: Tue, 10 Jun 2025 15:28:41 +0200 Subject: [PATCH 15/19] Ensure featured carousel respects tags (#34995) --- app/javascript/mastodon/features/account_timeline/index.jsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/javascript/mastodon/features/account_timeline/index.jsx b/app/javascript/mastodon/features/account_timeline/index.jsx index 7f4b546904..70e607d5f2 100644 --- a/app/javascript/mastodon/features/account_timeline/index.jsx +++ b/app/javascript/mastodon/features/account_timeline/index.jsx @@ -135,7 +135,7 @@ class AccountTimeline extends ImmutablePureComponent { }; render () { - const { accountId, statusIds, isLoading, hasMore, blockedBy, suspended, isAccount, hidden, multiColumn, remote, remoteUrl } = this.props; + const { accountId, statusIds, isLoading, hasMore, blockedBy, suspended, isAccount, hidden, multiColumn, remote, remoteUrl, params: { tagged } } = this.props; if (isLoading && statusIds.isEmpty()) { return ( @@ -172,8 +172,8 @@ class AccountTimeline extends ImmutablePureComponent { - - {!forceEmptyState && } + + {!forceEmptyState && } } alwaysPrepend From bb89a64af037d8ed77bf579498e3c2a2fa20c58f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 10 Jun 2025 16:12:44 +0200 Subject: [PATCH 16/19] chore(deps): update dependency http to '~> 5.3.0' (#34994) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Gemfile | 2 +- Gemfile.lock | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/Gemfile b/Gemfile index 76e4340c86..5e8cee24b6 100644 --- a/Gemfile +++ b/Gemfile @@ -53,7 +53,7 @@ gem 'fastimage' gem 'hiredis', '~> 0.6' gem 'hiredis-client' gem 'htmlentities', '~> 4.3' -gem 'http', '~> 5.2.0' +gem 'http', '~> 5.3.0' gem 'http_accept_language', '~> 2.1' gem 'httplog', '~> 1.7.0', require: false gem 'i18n' diff --git a/Gemfile.lock b/Gemfile.lock index 16fdaf5777..1cd6210f40 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -111,7 +111,7 @@ GEM aws-eventstream (~> 1, >= 1.0.2) azure-blob (0.5.8) rexml - base64 (0.2.0) + base64 (0.3.0) bcp47_spec (0.2.1) bcrypt (3.1.20) benchmark (0.4.0) @@ -297,9 +297,8 @@ GEM redis-client (= 0.24.0) hkdf (0.3.0) htmlentities (4.3.4) - http (5.2.0) + http (5.3.1) addressable (~> 2.8) - base64 (~> 0.1) http-cookie (~> 1.0) http-form_data (~> 2.2) llhttp-ffi (~> 0.5.0) @@ -692,7 +691,7 @@ GEM thor (~> 1.0, >= 1.2.2) zeitwerk (~> 2.6) rainbow (3.1.1) - rake (13.2.1) + rake (13.3.0) rdf (3.3.2) bcp47_spec (~> 0.2) bigdecimal (~> 3.1, >= 3.1.5) @@ -987,7 +986,7 @@ DEPENDENCIES hiredis (~> 0.6) hiredis-client htmlentities (~> 4.3) - http (~> 5.2.0) + http (~> 5.3.0) http_accept_language (~> 2.1) httplog (~> 1.7.0) i18n From 2c085ea0441a7d7f6b4c2e9a1d63bbbc8afd8608 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 10 Jun 2025 16:12:53 +0200 Subject: [PATCH 17/19] fix(deps): update dependency core-js to v3.43.0 (#34999) 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 0346cd7901..775d67e96b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5805,9 +5805,9 @@ __metadata: linkType: hard "core-js@npm:^3.30.2, core-js@npm:^3.41.0": - version: 3.42.0 - resolution: "core-js@npm:3.42.0" - checksum: 10c0/2913d3d5452d54ad92f058d66046782d608c05e037bcc523aab79c04454fe640998f94e6011292969d66dfa472f398b085ce843dcb362056532a5799c627184e + version: 3.43.0 + resolution: "core-js@npm:3.43.0" + checksum: 10c0/9d4ad66296e60380777de51d019b5c3e6cce023b7999750a5094f9a4b0ea53bf3600beb4ef11c56548f2c8791d43d4056e270d1cf55ba87273011aa7d4597871 languageName: node linkType: hard From b8cc9b32908f616fa520b0540e7856b069ab9e31 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 10 Jun 2025 16:12:56 +0200 Subject: [PATCH 18/19] fix(deps): update dependency postcss-preset-env to v10.2.2 (#34998) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/yarn.lock b/yarn.lock index 775d67e96b..72c8f94439 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1416,15 +1416,15 @@ __metadata: languageName: node linkType: hard -"@csstools/postcss-is-pseudo-class@npm:^5.0.1": - version: 5.0.1 - resolution: "@csstools/postcss-is-pseudo-class@npm:5.0.1" +"@csstools/postcss-is-pseudo-class@npm:^5.0.2": + version: 5.0.2 + resolution: "@csstools/postcss-is-pseudo-class@npm:5.0.2" dependencies: "@csstools/selector-specificity": "npm:^5.0.0" postcss-selector-parser: "npm:^7.0.0" peerDependencies: postcss: ^8.4 - checksum: 10c0/3aaab18ebb2dcf5565efa79813eaa987d40de1e086765358524392a09631c68ad1ee952e6aff8f42513b2c18ab84891787e065fe287f696128498fc641520b6c + checksum: 10c0/79b4149b9718799c240b72680f5a37dd4b04a50d8b4a05b3fb35b921d03b2338a7ffa1324019681101c1023076bb0d4950cec1da49cd305e9ab154aad199ff92 languageName: node linkType: hard @@ -1667,12 +1667,12 @@ __metadata: languageName: node linkType: hard -"@csstools/selector-resolve-nested@npm:^3.0.0": - version: 3.0.0 - resolution: "@csstools/selector-resolve-nested@npm:3.0.0" +"@csstools/selector-resolve-nested@npm:^3.1.0": + version: 3.1.0 + resolution: "@csstools/selector-resolve-nested@npm:3.1.0" peerDependencies: postcss-selector-parser: ^7.0.0 - checksum: 10c0/2b01c36b3fa81388d5bddd8db962766465d76b021a815c8bb5a48c3a42c530154cc155fc496707ade627dbba6745eb8ecd9fa840c1972133c0f7d8811e0a959d + checksum: 10c0/c2b1a930ad03c1427ab90b28c4940424fb39e8175130148f16209be3a3937f7a146d5483ca1da1dfc100aa7ae86df713f0ee82d4bbaa9b986e7f47f35cb67cca languageName: node linkType: hard @@ -10206,16 +10206,16 @@ __metadata: languageName: node linkType: hard -"postcss-nesting@npm:^13.0.1": - version: 13.0.1 - resolution: "postcss-nesting@npm:13.0.1" +"postcss-nesting@npm:^13.0.2": + version: 13.0.2 + resolution: "postcss-nesting@npm:13.0.2" dependencies: - "@csstools/selector-resolve-nested": "npm:^3.0.0" + "@csstools/selector-resolve-nested": "npm:^3.1.0" "@csstools/selector-specificity": "npm:^5.0.0" postcss-selector-parser: "npm:^7.0.0" peerDependencies: postcss: ^8.4 - checksum: 10c0/549307c272cdd4cb5105d8fbcd582f15a1cb74e5bba240b05b27f77fe0422730be966699a49a9ad15fd9d1bc551c1edbaefb21a69686a9b131b585dbc9d90ebf + checksum: 10c0/bfa0578b3b686c6374f5a7b2f6ef955cb7e13400de95a919975a982ae43c1e25db37385618f210715ff15393dc7ff8c26c7b156f06b8fb3118a426099cf7f1f2 languageName: node linkType: hard @@ -10260,8 +10260,8 @@ __metadata: linkType: hard "postcss-preset-env@npm:^10.1.5": - version: 10.2.1 - resolution: "postcss-preset-env@npm:10.2.1" + version: 10.2.2 + resolution: "postcss-preset-env@npm:10.2.2" dependencies: "@csstools/postcss-cascade-layers": "npm:^5.0.1" "@csstools/postcss-color-function": "npm:^4.0.10" @@ -10275,7 +10275,7 @@ __metadata: "@csstools/postcss-hwb-function": "npm:^4.0.10" "@csstools/postcss-ic-unit": "npm:^4.0.2" "@csstools/postcss-initial": "npm:^2.0.1" - "@csstools/postcss-is-pseudo-class": "npm:^5.0.1" + "@csstools/postcss-is-pseudo-class": "npm:^5.0.2" "@csstools/postcss-light-dark-function": "npm:^2.0.9" "@csstools/postcss-logical-float-and-clear": "npm:^3.0.0" "@csstools/postcss-logical-overflow": "npm:^2.0.0" @@ -10319,7 +10319,7 @@ __metadata: postcss-image-set-function: "npm:^7.0.0" postcss-lab-function: "npm:^7.0.10" postcss-logical: "npm:^8.1.0" - postcss-nesting: "npm:^13.0.1" + postcss-nesting: "npm:^13.0.2" postcss-opacity-percentage: "npm:^3.0.0" postcss-overflow-shorthand: "npm:^6.0.0" postcss-page-break: "npm:^3.0.4" @@ -10329,7 +10329,7 @@ __metadata: postcss-selector-not: "npm:^8.0.1" peerDependencies: postcss: ^8.4 - checksum: 10c0/1a78eb86bca8f7c2bf7686ee9ed354b21d1316a7d12ae9aec2ce4b4810f6d32e23d0787d7450e55145f14f76b715df758bb54af0ea6a151858b045bd429f596e + checksum: 10c0/314774ed0cfb2880d82d0056e1a26ab5c04b9e5584e5c41045231374a7e080eda7ed6e5506fbc1c1c6bc7a05700576bfb0b5f334ae25f125bcbb772e2aa337e8 languageName: node linkType: hard From 629bb74451242060298c6fb305c5337002379cc2 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Tue, 10 Jun 2025 12:33:46 -0400 Subject: [PATCH 19/19] Replace selenium-webdriver with playwright (#34867) --- .github/workflows/test-ruby.yml | 15 +++++++++++++++ Gemfile | 2 +- Gemfile.lock | 16 ++++++++-------- spec/support/browser_errors.rb | 21 ++++++++++++++------- spec/support/capybara.rb | 32 ++++++-------------------------- spec/system/log_out_spec.rb | 2 +- 6 files changed, 45 insertions(+), 43 deletions(-) diff --git a/.github/workflows/test-ruby.yml b/.github/workflows/test-ruby.yml index 0dd55c77e4..63d3172504 100644 --- a/.github/workflows/test-ruby.yml +++ b/.github/workflows/test-ruby.yml @@ -332,6 +332,21 @@ jobs: - name: Load database schema run: './bin/rails db:create db:schema:load db:seed' + - name: Cache Playwright Chromium browser + id: playwright-cache + uses: actions/cache@v4 + with: + path: ~/.cache/ms-playwright + key: playwright-browsers-${{ runner.os }}-${{ hashFiles('yarn.lock') }} + + - name: Install Playwright Chromium browser (with deps) + if: steps.playwright-cache.outputs.cache-hit != 'true' + run: yarn run playwright install --with-deps chromium + + - name: Install Playwright Chromium browser deps + if: steps.playwright-cache.outputs.cache-hit == 'true' + run: yarn run playwright install-deps chromium + - run: bin/rspec spec/system --tag streaming --tag js - name: Archive logs diff --git a/Gemfile b/Gemfile index 5e8cee24b6..db2b82955b 100644 --- a/Gemfile +++ b/Gemfile @@ -137,7 +137,7 @@ group :test do # Browser integration testing gem 'capybara', '~> 3.39' - gem 'selenium-webdriver' + gem 'capybara-playwright-driver' # Used to reset the database between system tests gem 'database_cleaner-active_record' diff --git a/Gemfile.lock b/Gemfile.lock index 1cd6210f40..a144ba021d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -142,6 +142,10 @@ GEM rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) + capybara-playwright-driver (0.5.6) + addressable + capybara + playwright-ruby-client (>= 1.16.0) case_transform (0.2) activesupport cbor (0.5.9.8) @@ -603,6 +607,9 @@ GEM pg (1.5.9) pghero (3.7.0) activerecord (>= 7.1) + playwright-ruby-client (1.52.0) + concurrent-ruby (>= 1.1.6) + mime-types (>= 3.0) pp (0.6.2) prettyprint premailer (1.27.0) @@ -808,12 +815,6 @@ GEM activerecord (>= 4.0.0) railties (>= 4.0.0) securerandom (0.4.1) - selenium-webdriver (4.33.0) - base64 (~> 0.2) - logger (~> 1.4) - rexml (~> 3.2, >= 3.2.5) - rubyzip (>= 1.2.2, < 3.0) - websocket (~> 1.0) shoulda-matchers (6.5.0) activesupport (>= 5.2.0) sidekiq (7.3.9) @@ -927,7 +928,6 @@ GEM crack (>= 0.3.2) hashdiff (>= 0.4.0, < 2.0.0) webrick (1.9.1) - websocket (1.2.11) websocket-driver (0.7.7) base64 websocket-extensions (>= 0.1.0) @@ -955,6 +955,7 @@ DEPENDENCIES browser bundler-audit (~> 0.9) capybara (~> 3.39) + capybara-playwright-driver charlock_holmes (~> 0.7.7) chewy (~> 7.3) climate_control @@ -1070,7 +1071,6 @@ DEPENDENCIES rubyzip (~> 2.3) sanitize (~> 7.0) scenic (~> 1.7) - selenium-webdriver shoulda-matchers sidekiq (< 8) sidekiq-bulk (~> 0.2.0) diff --git a/spec/support/browser_errors.rb b/spec/support/browser_errors.rb index 8a31ba3ab6..6c101540a3 100644 --- a/spec/support/browser_errors.rb +++ b/spec/support/browser_errors.rb @@ -9,29 +9,36 @@ end RSpec.configure do |config| config.include BrowserErrorsHelpers, :js, type: :system - config.before(:each, :js, type: :system) do + config.before(:each, :js, type: :system) do |example| @ignored_js_errors_for_spec = [] + + example.metadata[:js_console_messages] ||= [] + Capybara.current_session.driver.with_playwright_page do |page| + page.on('console', lambda { |msg| + example.metadata[:js_console_messages] << { type: msg.type, text: msg.text, location: msg.location } + }) + end end - config.after(:each, :js, type: :system) do + config.after(:each, :js, type: :system) do |example| # Classes of intermittent ignorable errors ignored_errors = [ /Error while trying to use the following icon from the Manifest/, # https://github.com/mastodon/mastodon/pull/30793 /Manifest: Line: 1, column: 1, Syntax error/, # Similar parsing/interruption issue as above ].concat(@ignored_js_errors_for_spec) - errors = page.driver.browser.logs.get(:browser).reject do |error| - ignored_errors.any? { |pattern| pattern.match(error.message) } + errors = example.metadata[:js_console_messages].reject do |msg| + ignored_errors.any? { |pattern| pattern.match(msg[:text]) } end if errors.present? aggregate_failures 'browser errrors' do errors.each do |error| - expect(error.level).to_not eq('SEVERE'), error.message - next unless error.level == 'WARNING' + expect(error[:type]).to_not eq('error'), error[:text] + next unless error[:type] == 'warning' warn 'WARN: browser warning' - warn error.message + warn error[:text] end end end diff --git a/spec/support/capybara.rb b/spec/support/capybara.rb index e8cb852c7b..aa548c3782 100644 --- a/spec/support/capybara.rb +++ b/spec/support/capybara.rb @@ -4,36 +4,16 @@ Capybara.server_host = 'localhost' Capybara.server_port = 3000 Capybara.app_host = "http://#{Capybara.server_host}:#{Capybara.server_port}" -require 'selenium/webdriver' - -def common_chrome_options - options = Selenium::WebDriver::Chrome::Options.new - options.add_argument '--window-size=1680,1050' - options.add_argument '--disable-search-engine-choice-screen' - options +Capybara.register_driver(:playwright) do |app| + Capybara::Playwright::Driver.new(app) end +Capybara.javascript_driver = :playwright -Capybara.register_driver :chrome do |app| - Capybara::Selenium::Driver.new(app, browser: :chrome, options: common_chrome_options) +if ENV['CI'].present? + # Reduce intermittent failures from slow CI runner environment + Capybara.default_max_wait_time = 2**3 end -Capybara.register_driver :headless_chrome do |app| - options = common_chrome_options - options.add_argument '--headless=new' - - Capybara::Selenium::Driver.new( - app, - browser: :chrome, - options: options - ) -end - -Capybara.javascript_driver = :headless_chrome - -# Some of the flaky tests seem to be caused by github runners being too slow for the -# default timeout of 2 seconds -Capybara.default_max_wait_time = 8 - RSpec.configure do |config| config.before(:each, type: :system) do driven_by :rack_test diff --git a/spec/system/log_out_spec.rb b/spec/system/log_out_spec.rb index ebbf5a5772..94c8ddbee5 100644 --- a/spec/system/log_out_spec.rb +++ b/spec/system/log_out_spec.rb @@ -26,7 +26,7 @@ RSpec.describe 'Log out' do describe 'Logging out from the JS app', :js, :streaming do it 'logs the user out' do # The frontend tries to load announcements after a short delay, but the session might be expired by then, and the browser will output an error. - ignore_js_error(/Failed to load resource: the server responded with a status of 422/) + ignore_js_error(/Failed to load resource: the server responded with a status/) visit root_path expect(page)