From e5fbb490339b022997524f1af15659872538cc77 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 09:10:20 +0100 Subject: [PATCH 01/31] New Crowdin Translations (automated) (#36697) Co-authored-by: GitHub Actions --- app/javascript/mastodon/locales/cy.json | 11 +++++++++++ app/javascript/mastodon/locales/da.json | 2 +- app/javascript/mastodon/locales/nl.json | 2 +- app/javascript/mastodon/locales/sq.json | 2 ++ app/javascript/mastodon/locales/zh-TW.json | 6 +++--- config/locales/be.yml | 1 + config/locales/cy.yml | 5 +++++ config/locales/da.yml | 1 + config/locales/de.yml | 1 + config/locales/el.yml | 1 + config/locales/es-AR.yml | 1 + config/locales/fi.yml | 1 + config/locales/he.yml | 1 + config/locales/is.yml | 1 + config/locales/nl.yml | 1 + config/locales/simple_form.cy.yml | 2 ++ config/locales/sq.yml | 1 + config/locales/vi.yml | 1 + config/locales/zh-TW.yml | 1 + 19 files changed, 37 insertions(+), 5 deletions(-) diff --git a/app/javascript/mastodon/locales/cy.json b/app/javascript/mastodon/locales/cy.json index eb3fb66a08..5afe25a8c9 100644 --- a/app/javascript/mastodon/locales/cy.json +++ b/app/javascript/mastodon/locales/cy.json @@ -157,6 +157,8 @@ "bundle_modal_error.close": "Cau", "bundle_modal_error.message": "Aeth rhywbeth o'i le wrth lwytho'r sgrin hon.", "bundle_modal_error.retry": "Ceisiwch eto", + "carousel.current": "Sleid {current, number} / {max, number}", + "carousel.slide": "Sleid {current, number} o {max, number}", "closed_registrations.other_server_instructions": "Gan fod Mastodon yn ddatganoledig, gallwch greu cyfrif ar weinydd arall a dal i ryngweithio gyda hwn.", "closed_registrations_modal.description": "Ar hyn o bryd nid yw'n bosib creu cyfrif ar {domain}, ond cadwch mewn cof nad oes raid i chi gael cyfrif yn benodol ar {domain} i ddefnyddio Mastodon.", "closed_registrations_modal.find_another_server": "Dod o hyd i weinydd arall", @@ -173,6 +175,8 @@ "column.edit_list": "Golygu rhestr", "column.favourites": "Ffefrynnau", "column.firehose": "Ffrydiau byw", + "column.firehose_local": "Ffrwd fyw ar gyfer y gweinydd hwn", + "column.firehose_singular": "Ffrwd fyw", "column.follow_requests": "Ceisiadau dilyn", "column.home": "Cartref", "column.list_members": "Rheoli aelodau rhestr", @@ -192,6 +196,7 @@ "community.column_settings.local_only": "Lleol yn unig", "community.column_settings.media_only": "Cyfryngau yn unig", "community.column_settings.remote_only": "Pell yn unig", + "compose.error.blank_post": "Gall postiad ddim bod yn wag.", "compose.language.change": "Newid iaith", "compose.language.search": "Chwilio ieithoedd...", "compose.published.body": "Postiad wedi ei gyhoeddi.", @@ -358,7 +363,9 @@ "explore.trending_links": "Newyddion", "explore.trending_statuses": "Postiadau", "explore.trending_tags": "Hashnodau", + "featured_carousel.current": "Postiad {current, number} / {max, number}", "featured_carousel.header": "{count, plural, one {Postiad wedi'i binio} other {Postiadau wedi'u pinio}}", + "featured_carousel.slide": "Postiad {current, number} of {max, number}", "filter_modal.added.context_mismatch_explanation": "Dyw'r categori hidlo hwn ddim yn berthnasol i'r cyd-destun yr ydych wedi cyrchu'r postiad hwn ynddo. Os ydych chi am i'r postiad gael ei hidlo yn y cyd-destun hwn hefyd, bydd yn rhaid i chi olygu'r hidlydd.", "filter_modal.added.context_mismatch_title": "Diffyg cyfatebiaeth cyd-destun!", "filter_modal.added.expired_explanation": "Mae'r categori hidlydd hwn wedi dod i ben, bydd angen i chi newid y dyddiad dod i ben er mwyn iddo fod yn berthnasol.", @@ -401,6 +408,7 @@ "follow_suggestions.who_to_follow": "Pwy i ddilyn", "followed_tags": "Hashnodau rydych yn eu dilyn", "footer.about": "Ynghylch", + "footer.about_this_server": "Ynghylch", "footer.directory": "Cyfeiriadur proffiliau", "footer.get_app": "Llwytho'r ap i lawr", "footer.keyboard_shortcuts": "Bysellau brys", @@ -905,9 +913,12 @@ "status.pin": "Pinio ar y proffil", "status.quote": "Dyfynnu", "status.quote.cancel": "Diddymu'r dyfyniad", + "status.quote_error.blocked_account_hint.title": "Mae'r postiad hwn wedi'i guddio oherwydd eich bod wedi rhwystro @{name}.", + "status.quote_error.blocked_domain_hint.title": "Mae'r postiad hwn wedi'i guddio oherwydd eich bod wedi rhwystro {domain}.", "status.quote_error.filtered": "Wedi'i guddio oherwydd un o'ch hidlwyr", "status.quote_error.limited_account_hint.action": "Dangos beth bynnag", "status.quote_error.limited_account_hint.title": "Mae'r cyfrif hwn wedi'i guddio gan gymedrolwyr {domain}.", + "status.quote_error.muted_account_hint.title": "Mae'r postiad hwn wedi'i guddio oherwydd eich bod wedi mudo @{name}.", "status.quote_error.not_available": "Postiad ddim ar gael", "status.quote_error.pending_approval": "Postiad yn yr arfaeth", "status.quote_error.pending_approval_popout.body": "Ar Mastodon, gallwch reoli os yw rhywun yn gallu eich dyfynnu. Mae'r postiad hwn yn cael ei ddal nôl tra'n bod yn cael cymeradwyaeth yr awdur gwreiddiol.", diff --git a/app/javascript/mastodon/locales/da.json b/app/javascript/mastodon/locales/da.json index 8e4acf58fb..eea0052695 100644 --- a/app/javascript/mastodon/locales/da.json +++ b/app/javascript/mastodon/locales/da.json @@ -284,7 +284,7 @@ "directory.recently_active": "Aktive for nyligt", "disabled_account_banner.account_settings": "Kontoindstillinger", "disabled_account_banner.text": "Din konto {disabledAccount} er pt. deaktiveret.", - "dismissable_banner.community_timeline": "Disse er de seneste offentlige indlæg fra personer med konti hostet af {domain}.", + "dismissable_banner.community_timeline": "Dette er de seneste offentlige indlæg fra personer med konti hostet af {domain}.", "dismissable_banner.dismiss": "Afvis", "dismissable_banner.public_timeline": "Dette er de seneste offentlige indlæg fra personer på fediverset, som folk på {domain} følger.", "domain_block_modal.block": "Blokér server", diff --git a/app/javascript/mastodon/locales/nl.json b/app/javascript/mastodon/locales/nl.json index b9f969bf61..3e8f8f84a3 100644 --- a/app/javascript/mastodon/locales/nl.json +++ b/app/javascript/mastodon/locales/nl.json @@ -743,7 +743,7 @@ "poll.votes": "{votes, plural, one {# stem} other {# stemmen}}", "poll_button.add_poll": "Peiling toevoegen", "poll_button.remove_poll": "Peiling verwijderen", - "privacy.change": "Privacy voor een bericht aanpassen", + "privacy.change": "Privacy van dit bericht aanpassen", "privacy.direct.long": "Alleen voor mensen die specifiek in het bericht worden vermeld", "privacy.direct.short": "Privébericht", "privacy.private.long": "Alleen jouw volgers", diff --git a/app/javascript/mastodon/locales/sq.json b/app/javascript/mastodon/locales/sq.json index 2a6101e981..f8a1ff36f6 100644 --- a/app/javascript/mastodon/locales/sq.json +++ b/app/javascript/mastodon/locales/sq.json @@ -192,6 +192,7 @@ "community.column_settings.local_only": "Vetëm vendore", "community.column_settings.media_only": "Vetëm Media", "community.column_settings.remote_only": "Vetëm të largëta", + "compose.error.blank_post": "Postimi s’mund të jetë i zbrazët.", "compose.language.change": "Ndryshoni gjuhën", "compose.language.search": "Kërkoni te gjuhët…", "compose.published.body": "Postimi u botua.", @@ -403,6 +404,7 @@ "follow_suggestions.who_to_follow": "Cilët të ndiqen", "followed_tags": "Hashtag-ë të ndjekur", "footer.about": "Mbi", + "footer.about_this_server": "Mbi", "footer.directory": "Drejtori profilesh", "footer.get_app": "Merreni aplikacionin", "footer.keyboard_shortcuts": "Shkurtore tastiere", diff --git a/app/javascript/mastodon/locales/zh-TW.json b/app/javascript/mastodon/locales/zh-TW.json index fc9ddd2dbd..202670b30a 100644 --- a/app/javascript/mastodon/locales/zh-TW.json +++ b/app/javascript/mastodon/locales/zh-TW.json @@ -606,8 +606,8 @@ "notification.annual_report.view": "檢視 #Wrapstodon", "notification.favourite": "{name} 已將您的嘟文加入最愛", "notification.favourite.name_and_others_with_link": "{name} 與{count, plural, other {其他 # 個人}}已將您的嘟文加入最愛", - "notification.favourite_pm": "{name} 將您的私人提及加入最愛", - "notification.favourite_pm.name_and_others_with_link": "{name} 與{count, plural, other {其他 # 個人}}已將您的私人提及加入最愛", + "notification.favourite_pm": "{name} 將您的私訊加入最愛", + "notification.favourite_pm.name_and_others_with_link": "{name} 與{count, plural, other {其他 # 個人}}已將您的私訊加入最愛", "notification.follow": "{name} 已跟隨您", "notification.follow.name_and_others": "{name} 與{count, plural, other {其他 # 個人}}已跟隨您", "notification.follow_request": "{name} 要求跟隨您", @@ -1014,7 +1014,7 @@ "video.volume_up": "提高音量", "visibility_modal.button_title": "設定可見性", "visibility_modal.header": "可見性與互動", - "visibility_modal.helper.direct_quoting": "Mastodon 上發佈之私人提及嘟文無法被其他使用者引用。", + "visibility_modal.helper.direct_quoting": "Mastodon 上發佈之私訊嘟文無法被其他使用者引用。", "visibility_modal.helper.privacy_editing": "嘟文發布後無法變更可見性。", "visibility_modal.helper.privacy_private_self_quote": "自我引用之私嘟無法設為公開可見。", "visibility_modal.helper.private_quoting": "Mastodon 上發佈之僅限跟隨者嘟文無法被其他使用者引用。", diff --git a/config/locales/be.yml b/config/locales/be.yml index 2a9a61c347..dd46c81c8f 100644 --- a/config/locales/be.yml +++ b/config/locales/be.yml @@ -2015,6 +2015,7 @@ be: errors: in_reply_not_found: Здаецца, допіс, на які вы спрабуеце адказаць, не існуе. quoted_status_not_found: Выглядае, што допісу, які Вы спрабуеце цытаваць, не існуе. + quoted_user_not_mentioned: Немагчыма цытаваць незгаданага карыстальніка ў допісе прыватнага згадвання. over_character_limit: перавышаная колькасць сімвалаў у %{max} pin_errors: direct: Допісы, бачныя толькі згаданым карыстальнікам, нельга замацаваць diff --git a/config/locales/cy.yml b/config/locales/cy.yml index 4b875b2c02..54973fe9cc 100644 --- a/config/locales/cy.yml +++ b/config/locales/cy.yml @@ -911,6 +911,11 @@ cy: authenticated: Defnyddwyr dilys yn unig disabled: Gofyn am rôl defnyddiwr penodol public: Pawb + landing_page: + values: + about: Ynghylch + local_feed: Ffrwd leol + trends: Trendiau registrations: moderation_recommandation: Gwnewch yn siŵr bod gennych chi dîm cymedroli digonol ac adweithiol cyn i chi agor cofrestriadau i bawb! preamble: Rheoli pwy all greu cyfrif ar eich gweinydd. diff --git a/config/locales/da.yml b/config/locales/da.yml index c6a30afaae..45f3a9365a 100644 --- a/config/locales/da.yml +++ b/config/locales/da.yml @@ -1929,6 +1929,7 @@ da: errors: in_reply_not_found: Indlægget, der forsøges besvaret, ser ikke ud til at eksistere. quoted_status_not_found: Indlægget, du forsøger at citere, ser ikke ud til at eksistere. + quoted_user_not_mentioned: Kan ikke citere en ikke-omtalt bruger i et privat omtale-indlæg. over_character_limit: grænsen på %{max} tegn overskredet pin_errors: direct: Indlæg, som kun kan ses af omtalte brugere, kan ikke fastgøres diff --git a/config/locales/de.yml b/config/locales/de.yml index 4b2c10fa31..f24d79d7a7 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -1929,6 +1929,7 @@ de: errors: in_reply_not_found: Der Beitrag, auf den du antworten möchtest, scheint nicht zu existieren. quoted_status_not_found: Der Beitrag, den du zitieren möchtest, scheint nicht zu existieren. + quoted_user_not_mentioned: Ein nicht erwähnter Nutzer kann in einem privaten Erwähnungsbeitrag nicht zitiert werden. over_character_limit: Begrenzung von %{max} Zeichen überschritten pin_errors: direct: Beiträge, die nur für erwähnte Profile sichtbar sind, können nicht angeheftet werden diff --git a/config/locales/el.yml b/config/locales/el.yml index 0f2339b1ca..0bbffd2a13 100644 --- a/config/locales/el.yml +++ b/config/locales/el.yml @@ -1929,6 +1929,7 @@ el: errors: in_reply_not_found: Η ανάρτηση στην οποία προσπαθείς να απαντήσεις δεν φαίνεται να υπάρχει. quoted_status_not_found: Η ανάρτηση την οποία προσπαθείς να παραθέσεις δεν φαίνεται να υπάρχει. + quoted_user_not_mentioned: Δεν είναι δυνατή η παράθεση ενός μη επισημασμένου χρήστη σε μια ανάρτηση Ιδιωτικής επισήμανσης. over_character_limit: υπέρβαση μέγιστου ορίου %{max} χαρακτήρων pin_errors: direct: Αναρτήσεις που είναι ορατές μόνο στους αναφερόμενους χρήστες δεν μπορούν να καρφιτσωθούν diff --git a/config/locales/es-AR.yml b/config/locales/es-AR.yml index eec0c3f465..cce8987f75 100644 --- a/config/locales/es-AR.yml +++ b/config/locales/es-AR.yml @@ -1929,6 +1929,7 @@ es-AR: errors: in_reply_not_found: El mensaje al que intentás responder no existe. quoted_status_not_found: El mensaje al que intentás citar parece que no existe. + quoted_user_not_mentioned: No se puede citar a un usuario no mencionado en un mensaje de mención privada. over_character_limit: se excedió el límite de %{max} caracteres pin_errors: direct: Los mensajes que sólo son visibles para los usuarios mencionados no pueden ser fijados diff --git a/config/locales/fi.yml b/config/locales/fi.yml index e8c9a2568a..d1203fbee6 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -1929,6 +1929,7 @@ fi: errors: in_reply_not_found: Julkaisua, johon yrität vastata, ei näytä olevan olemassa. quoted_status_not_found: Julkaisua, jota yrität lainata, ei näytä olevan olemassa. + quoted_user_not_mentioned: Mainitsematonta käyttäjää ei voi lainata yksityismaininnassa. over_character_limit: merkkimäärän rajoitus %{max} ylitetty pin_errors: direct: Vain mainituille käyttäjille näkyviä julkaisuja ei voi kiinnittää diff --git a/config/locales/he.yml b/config/locales/he.yml index eebc9000da..2670f51266 100644 --- a/config/locales/he.yml +++ b/config/locales/he.yml @@ -2015,6 +2015,7 @@ he: errors: in_reply_not_found: נראה שההודעה שנסית להגיב לה לא קיימת. quoted_status_not_found: נראה שההודעה שנסית לצטט לא קיימת. + quoted_user_not_mentioned: לא ניתן לצטט משתמש שאיננו מאוזכר בהודעה פרטית. over_character_limit: חריגה מגבול התווים של %{max} pin_errors: direct: לא ניתן לקבע הודעות שנראותן מוגבלת למכותבים בלבד diff --git a/config/locales/is.yml b/config/locales/is.yml index 104bd63894..7f3b2290f5 100644 --- a/config/locales/is.yml +++ b/config/locales/is.yml @@ -1933,6 +1933,7 @@ is: errors: in_reply_not_found: Færslan sem þú ert að reyna að svara að er líklega ekki til. quoted_status_not_found: Færslan sem þú ert að reyna að vitna í virðist ekki vera til. + quoted_user_not_mentioned: Ekki er hægt að vitna í aðila sem ekki er minnst á í einkaspjalli. over_character_limit: hámarksfjölda stafa (%{max}) náð pin_errors: direct: Ekki er hægt að festa færslur sem einungis eru sýnilegar þeim notendum sem minnst er á diff --git a/config/locales/nl.yml b/config/locales/nl.yml index 9179337c6f..ede7eb69c3 100644 --- a/config/locales/nl.yml +++ b/config/locales/nl.yml @@ -1929,6 +1929,7 @@ nl: errors: in_reply_not_found: Het bericht waarop je probeert te reageren lijkt niet te bestaan. quoted_status_not_found: Het bericht die je probeert te citeren lijkt niet te bestaan. + quoted_user_not_mentioned: Een niet-vermelde gebruiker kan niet in een privébericht worden geciteerd. over_character_limit: Limiet van %{max} tekens overschreden pin_errors: direct: Berichten die alleen zichtbaar zijn voor vermelde gebruikers, kunnen niet worden vastgezet diff --git a/config/locales/simple_form.cy.yml b/config/locales/simple_form.cy.yml index 0f79229caa..58b07f787b 100644 --- a/config/locales/simple_form.cy.yml +++ b/config/locales/simple_form.cy.yml @@ -93,6 +93,7 @@ cy: content_cache_retention_period: Bydd yr holl bostiadau gan weinyddion eraill (gan gynnwys hwb ac atebion) yn cael eu dileu ar ôl y nifer penodedig o ddyddiau, heb ystyried unrhyw ryngweithio defnyddiwr lleol â'r postiadau hynny. Mae hyn yn cynnwys postiadau lle mae defnyddiwr lleol wedi ei farcio fel nodau tudalen neu ffefrynnau. Bydd cyfeiriadau preifat rhwng defnyddwyr o wahanol achosion hefyd yn cael eu colli ac yn amhosibl eu hadfer. Mae'r defnydd o'r gosodiad hwn wedi'i fwriadu ar gyfer achosion pwrpas arbennig ac mae'n torri llawer o ddisgwyliadau defnyddwyr pan gaiff ei weithredu at ddibenion cyffredinol. custom_css: Gallwch gymhwyso arddulliau cyfaddas ar fersiwn gwe Mastodon. favicon: WEBP, PNG, GIF neu JPG. Yn diystyru'r favicon Mastodon rhagosodedig gydag eicon cyfaddas. + landing_page: Yn dewis pa dudalen y mae ymwelwyr newydd yn ei gweld pan fyddan nhw'n cyrraedd eich gweinydd am y tro cyntaf. Os dewiswch "Trendio", yna mae angen galluogi tueddiadau yn y Gosodiadau Darganfod. Os dewiswch "Ffrydiau lleol", yna mae angen gosod "Mynediad i ffrydiau byw sy'n cynnwys postiadau lleol" i "Pawb" yn y Gosodiadau Darganfod. mascot: Yn diystyru'r darlun yn y rhyngwyneb gwe uwch. media_cache_retention_period: Mae ffeiliau cyfryngau o bostiadau a wneir gan ddefnyddwyr o bell yn cael eu storio ar eich gweinydd. Pan gaiff ei osod i werth positif, bydd y cyfryngau yn cael eu dileu ar ôl y nifer penodedig o ddyddiau. Os gofynnir am y data cyfryngau ar ôl iddo gael ei ddileu, caiff ei ail-lwytho i lawr, os yw'r cynnwys ffynhonnell yn dal i fod ar gael. Oherwydd cyfyngiadau ar ba mor aml y mae cardiau rhagolwg cyswllt yn pleidleisio i wefannau trydydd parti, argymhellir gosod y gwerth hwn i o leiaf 14 diwrnod, neu ni fydd cardiau rhagolwg cyswllt yn cael eu diweddaru ar alw cyn yr amser hwnnw. min_age: Mae gofyn i ddefnyddwyr gadarnhau eu dyddiad geni wrth gofrestru @@ -290,6 +291,7 @@ cy: content_cache_retention_period: Cyfnod cadw cynnwys o bell custom_css: CSS cyfaddas favicon: Favicon + landing_page: Tudalen cychwyn ar gyfer ymwelwyr newydd local_live_feed_access: Mynediad i ffrydiau byw sy'n cynnwys postiadau lleol local_topic_feed_access: Mynediad i ffrydiau hashnod a dolenni sy'n cynnwys postiadau lleol mascot: Mascot cyfaddas (hen) diff --git a/config/locales/sq.yml b/config/locales/sq.yml index 6aa95821d4..819dcd5556 100644 --- a/config/locales/sq.yml +++ b/config/locales/sq.yml @@ -1914,6 +1914,7 @@ sq: errors: in_reply_not_found: Gjendja të cilës po provoni t’i përgjigjeni s’duket se ekziston. quoted_status_not_found: Postimi që po rrekeni të citoni nuk duket se ekziston. + quoted_user_not_mentioned: S’mund të citohet një përdorues që s’është përmendur në një postim Përmendje Private. over_character_limit: u tejkalua kufi shenjash prej %{max} pin_errors: direct: Postimet që janë të dukshme vetëm për përdoruesit e përmendur s’mund të fiksohen diff --git a/config/locales/vi.yml b/config/locales/vi.yml index 0d3866f652..ea21c767af 100644 --- a/config/locales/vi.yml +++ b/config/locales/vi.yml @@ -1886,6 +1886,7 @@ vi: errors: in_reply_not_found: Bạn đang trả lời một tút không còn tồn tại. quoted_status_not_found: Bạn đang trích dẫn một tút không còn tồn tại. + quoted_user_not_mentioned: Không thể trích dẫn người dùng không được nhắc đến trong tút Nhắn riêng. over_character_limit: vượt quá giới hạn %{max} ký tự pin_errors: direct: Không thể ghim những tút nhắn riêng diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml index 6c56aaf90f..7c522752a6 100644 --- a/config/locales/zh-TW.yml +++ b/config/locales/zh-TW.yml @@ -1888,6 +1888,7 @@ zh-TW: errors: in_reply_not_found: 您嘗試回覆之嘟文似乎不存在。 quoted_status_not_found: 您嘗試引用之嘟文似乎不存在。 + quoted_user_not_mentioned: 無法於私訊嘟文中引用無提及之使用者。 over_character_limit: 已超過 %{max} 字的限制 pin_errors: direct: 無法釘選只有僅提及使用者可見之嘟文 From 5ac3cceaf5a263a8294613d5ed138584d33f5ffe Mon Sep 17 00:00:00 2001 From: Claire Date: Tue, 4 Nov 2025 09:29:27 +0100 Subject: [PATCH 02/31] Increase number of quote approval job retries (#36698) --- app/workers/activitypub/refetch_and_verify_quote_worker.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/workers/activitypub/refetch_and_verify_quote_worker.rb b/app/workers/activitypub/refetch_and_verify_quote_worker.rb index e2df023103..1a8dd40541 100644 --- a/app/workers/activitypub/refetch_and_verify_quote_worker.rb +++ b/app/workers/activitypub/refetch_and_verify_quote_worker.rb @@ -5,7 +5,7 @@ class ActivityPub::RefetchAndVerifyQuoteWorker include ExponentialBackoff include JsonLdHelper - sidekiq_options queue: 'pull', retry: 3 + sidekiq_options queue: 'pull', retry: 5 def perform(quote_id, quoted_uri, options = {}) quote = Quote.find(quote_id) From 24aa5d0460df90a7cd7b20c8ecda93a29b90fdfc Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 09:41:19 +0100 Subject: [PATCH 03/31] fix(deps): update dependency @rails/ujs to v7.1.600 (#36634) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 0a550b435d..c2137034b7 100644 --- a/package.json +++ b/package.json @@ -48,7 +48,7 @@ "@gamestdio/websocket": "^0.3.2", "@github/webauthn-json": "^2.1.1", "@optimize-lodash/rollup-plugin": "^5.0.2", - "@rails/ujs": "7.1.502", + "@rails/ujs": "7.1.600", "@react-spring/web": "^9.7.5", "@reduxjs/toolkit": "^2.0.1", "@use-gesture/react": "^10.3.1", diff --git a/yarn.lock b/yarn.lock index 6decc071cb..8339d8d862 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2816,7 +2816,7 @@ __metadata: "@gamestdio/websocket": "npm:^0.3.2" "@github/webauthn-json": "npm:^2.1.1" "@optimize-lodash/rollup-plugin": "npm:^5.0.2" - "@rails/ujs": "npm:7.1.502" + "@rails/ujs": "npm:7.1.600" "@react-spring/web": "npm:^9.7.5" "@reduxjs/toolkit": "npm:^2.0.1" "@storybook/addon-a11y": "npm:^9.1.1" @@ -3314,10 +3314,10 @@ __metadata: languageName: node linkType: hard -"@rails/ujs@npm:7.1.502": - version: 7.1.502 - resolution: "@rails/ujs@npm:7.1.502" - checksum: 10c0/79b46e8abd03e3fc633d93cc4e4c23838c628b775802fb38c2ce68b0e609ce287a67b81db112a93cc78c07ec82ca3b4cf87e74eb556d35148ce5f64c8be9201f +"@rails/ujs@npm:7.1.600": + version: 7.1.600 + resolution: "@rails/ujs@npm:7.1.600" + checksum: 10c0/0ccaa68a08fbc7b084ab89a1fe49520a5cba6d99f4b0feaf0cb3d00334c59d8d798932d7e49b84aa388875d039ea1e17eb115ed96a80ad157e408a13eceef53e languageName: node linkType: hard From 5b880a20468b47c600d61f3497fe6b4e4edc2440 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 10:32:38 +0100 Subject: [PATCH 04/31] chore(deps): update dependency brakeman to v7.1.1 (#35434) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 54fcff1efc..a3e1dbb995 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -128,7 +128,7 @@ GEM blurhash (0.1.8) bootsnap (1.18.6) msgpack (~> 1.2) - brakeman (7.0.2) + brakeman (7.1.1) racc browser (6.2.0) builder (3.3.0) From 966aaaaf56cd55d311bc5968a1654f6621fbe8df Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 10:41:59 +0100 Subject: [PATCH 05/31] chore(deps): update dependency sidekiq to v8.0.9 (#36699) 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 a3e1dbb995..a8b2ad03cd 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -621,7 +621,7 @@ GEM activesupport (>= 3.0.0) raabro (1.4.0) racc (1.8.1) - rack (3.2.3) + rack (3.2.4) rack-attack (6.8.0) rack (>= 1.0, < 4) rack-cors (3.0.0) @@ -805,7 +805,7 @@ GEM securerandom (0.4.1) shoulda-matchers (6.5.0) activesupport (>= 5.2.0) - sidekiq (8.0.8) + sidekiq (8.0.9) connection_pool (>= 2.5.0) json (>= 2.9.0) logger (>= 1.6.2) From cf87da25add5fa9c7771cd5bbcac316d5180b96c Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Tue, 4 Nov 2025 04:42:27 -0500 Subject: [PATCH 06/31] Update storybook to version 10.0.2 (#36657) --- .storybook/main.ts | 2 +- package.json | 12 +- yarn.lock | 279 ++++++++++++++++++--------------------------- 3 files changed, 119 insertions(+), 174 deletions(-) diff --git a/.storybook/main.ts b/.storybook/main.ts index bb69f0c664..c249d1c06d 100644 --- a/.storybook/main.ts +++ b/.storybook/main.ts @@ -31,7 +31,7 @@ const config: StorybookConfig = { viteFinal(config) { // For an unknown reason, Storybook does not use the root // from the Vite config so we need to set it manually. - config.root = resolve(__dirname, '../app/javascript'); + config.root = resolve(import.meta.dirname, '../app/javascript'); return config; }, }; diff --git a/package.json b/package.json index c2137034b7..456f6ec560 100644 --- a/package.json +++ b/package.json @@ -133,10 +133,10 @@ "devDependencies": { "@eslint/js": "^9.23.0", "@formatjs/cli": "^6.1.1", - "@storybook/addon-a11y": "^9.1.1", - "@storybook/addon-docs": "^9.1.1", - "@storybook/addon-vitest": "^9.1.1", - "@storybook/react-vite": "^9.1.1", + "@storybook/addon-a11y": "^10.0.2", + "@storybook/addon-docs": "^10.0.2", + "@storybook/addon-vitest": "^10.0.2", + "@storybook/react-vite": "^10.0.2", "@testing-library/dom": "^10.4.1", "@testing-library/react": "^16.3.0", "@types/debug": "^4", @@ -176,7 +176,7 @@ "eslint-plugin-promise": "~7.2.1", "eslint-plugin-react": "^7.37.4", "eslint-plugin-react-hooks": "^5.2.0", - "eslint-plugin-storybook": "^9.0.4", + "eslint-plugin-storybook": "^10.0.2", "fake-indexeddb": "^6.0.1", "globals": "^16.0.0", "husky": "^9.0.11", @@ -186,7 +186,7 @@ "playwright": "^1.56.1", "prettier": "^3.3.3", "react-test-renderer": "^18.2.0", - "storybook": "^9.1.1", + "storybook": "^10.0.2", "stylelint": "^16.19.1", "stylelint-config-prettier-scss": "^1.0.0", "stylelint-config-standard-scss": "^16.0.0", diff --git a/yarn.lock b/yarn.lock index 8339d8d862..e0e60e83f1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2819,10 +2819,10 @@ __metadata: "@rails/ujs": "npm:7.1.600" "@react-spring/web": "npm:^9.7.5" "@reduxjs/toolkit": "npm:^2.0.1" - "@storybook/addon-a11y": "npm:^9.1.1" - "@storybook/addon-docs": "npm:^9.1.1" - "@storybook/addon-vitest": "npm:^9.1.1" - "@storybook/react-vite": "npm:^9.1.1" + "@storybook/addon-a11y": "npm:^10.0.2" + "@storybook/addon-docs": "npm:^10.0.2" + "@storybook/addon-vitest": "npm:^10.0.2" + "@storybook/react-vite": "npm:^10.0.2" "@testing-library/dom": "npm:^10.4.1" "@testing-library/react": "npm:^16.3.0" "@types/debug": "npm:^4" @@ -2883,7 +2883,7 @@ __metadata: eslint-plugin-promise: "npm:~7.2.1" eslint-plugin-react: "npm:^7.37.4" eslint-plugin-react-hooks: "npm:^5.2.0" - eslint-plugin-storybook: "npm:^9.0.4" + eslint-plugin-storybook: "npm:^10.0.2" fake-indexeddb: "npm:^6.0.1" fast-glob: "npm:^3.3.3" fuzzysort: "npm:^3.0.0" @@ -2933,7 +2933,7 @@ __metadata: sass: "npm:^1.62.1" scroll-behavior: "npm:^0.11.0" stacktrace-js: "npm:^2.0.2" - storybook: "npm:^9.1.1" + storybook: "npm:^10.0.2" stringz: "npm:^2.1.0" stylelint: "npm:^16.19.1" stylelint-config-prettier-scss: "npm:^1.0.0" @@ -3687,80 +3687,96 @@ __metadata: languageName: node linkType: hard -"@storybook/addon-a11y@npm:^9.1.1": - version: 9.1.7 - resolution: "@storybook/addon-a11y@npm:9.1.7" +"@storybook/addon-a11y@npm:^10.0.2": + version: 10.0.2 + resolution: "@storybook/addon-a11y@npm:10.0.2" dependencies: "@storybook/global": "npm:^5.0.0" axe-core: "npm:^4.2.0" peerDependencies: - storybook: ^9.1.7 - checksum: 10c0/c34f057acec41d6116669663e2a18b230c8905c409de6ef7fcff2cfe00741b8c435165c43301565e99ff275e541180de866c48c26d2676313334e2dd4696f5a3 + storybook: ^10.0.2 + checksum: 10c0/a47fed1aa098328bea173f257a0140dff4a5e2d2d6c90b0fa88a33a82583658afa09fa04d012930900fe87453a48d781847b7f5193da0f09b0b8598032596ca2 languageName: node linkType: hard -"@storybook/addon-docs@npm:^9.1.1": - version: 9.1.7 - resolution: "@storybook/addon-docs@npm:9.1.7" +"@storybook/addon-docs@npm:^10.0.2": + version: 10.0.2 + resolution: "@storybook/addon-docs@npm:10.0.2" dependencies: "@mdx-js/react": "npm:^3.0.0" - "@storybook/csf-plugin": "npm:9.1.7" - "@storybook/icons": "npm:^1.4.0" - "@storybook/react-dom-shim": "npm:9.1.7" + "@storybook/csf-plugin": "npm:10.0.2" + "@storybook/icons": "npm:^1.6.0" + "@storybook/react-dom-shim": "npm:10.0.2" react: "npm:^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" react-dom: "npm:^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" ts-dedent: "npm:^2.0.0" peerDependencies: - storybook: ^9.1.7 - checksum: 10c0/81f530b1230c60d344662aedb4839baa099da287c0188e8d5e10ab8cac0b02bb747e7d6475dbb1a85cba0cb5c475b8d48936355dd359020652ccbaba7d664aa0 + storybook: ^10.0.2 + checksum: 10c0/167e8b4b230431ac8afcb6dfceedc8450d8d2d5a84c61e7a5f8e28a1a47d1031194a780f16ed697bce03cce10c71a6aa9bb1f102bf68693c96cfc710f4b5dadb languageName: node linkType: hard -"@storybook/addon-vitest@npm:^9.1.1": - version: 9.1.7 - resolution: "@storybook/addon-vitest@npm:9.1.7" +"@storybook/addon-vitest@npm:^10.0.2": + version: 10.0.2 + resolution: "@storybook/addon-vitest@npm:10.0.2" dependencies: "@storybook/global": "npm:^5.0.0" - "@storybook/icons": "npm:^1.4.0" + "@storybook/icons": "npm:^1.6.0" prompts: "npm:^2.4.0" ts-dedent: "npm:^2.2.0" peerDependencies: - "@vitest/browser": ^3.0.0 - "@vitest/runner": ^3.0.0 - storybook: ^9.1.7 - vitest: ^3.0.0 + "@vitest/browser": ^3.0.0 || ^4.0.0 + "@vitest/browser-playwright": ^4.0.0 + "@vitest/runner": ^3.0.0 || ^4.0.0 + storybook: ^10.0.2 + vitest: ^3.0.0 || ^4.0.0 peerDependenciesMeta: "@vitest/browser": optional: true + "@vitest/browser-playwright": + optional: true "@vitest/runner": optional: true vitest: optional: true - checksum: 10c0/744358491481d21e7728d07bd244038d378b5883257c3a2291b2fa5abef917493c1421921bc020fecfb15740a1b6331fdf598b15c91961ffc7ea924f8d945957 + checksum: 10c0/b97b6b01b242f1c71a44eadbe4d993a355954dab2515b6d21771bc1ff55636ffd32474ba4138d2f6d45a752c2b11cf6ac7aef68b9213f5188bc2ba90ee5d12c0 languageName: node linkType: hard -"@storybook/builder-vite@npm:9.1.7": - version: 9.1.7 - resolution: "@storybook/builder-vite@npm:9.1.7" +"@storybook/builder-vite@npm:10.0.2": + version: 10.0.2 + resolution: "@storybook/builder-vite@npm:10.0.2" dependencies: - "@storybook/csf-plugin": "npm:9.1.7" + "@storybook/csf-plugin": "npm:10.0.2" ts-dedent: "npm:^2.0.0" peerDependencies: - storybook: ^9.1.7 + storybook: ^10.0.2 vite: ^5.0.0 || ^6.0.0 || ^7.0.0 - checksum: 10c0/39306d65373a934c4274196d5451467acb4128252c61b7abb801153fdf9b8278ca4ee8c9911def229f9c6045f24d39610fb5f0e553892478e9f541cdb9287859 + checksum: 10c0/a93bbb763c1f5d47b7b6c36f9225ca9a1f9f70c9f07c7b4ee61dd97f77a676b7d31c5c27b6ca48bb237fbaed626f592653380c2999bf9ae48be1071c0c007acf languageName: node linkType: hard -"@storybook/csf-plugin@npm:9.1.7": - version: 9.1.7 - resolution: "@storybook/csf-plugin@npm:9.1.7" +"@storybook/csf-plugin@npm:10.0.2": + version: 10.0.2 + resolution: "@storybook/csf-plugin@npm:10.0.2" dependencies: - unplugin: "npm:^1.3.1" + unplugin: "npm:^2.3.5" peerDependencies: - storybook: ^9.1.7 - checksum: 10c0/059fa960174a3f421eb09b41d0da43c43a46548a2535acc17a0e7989bb78f954180212a43b58392dfec6e92a3482621a13ec1b6ff00d1157a2355d369129842a + esbuild: "*" + rollup: "*" + storybook: ^10.0.2 + vite: "*" + webpack: "*" + peerDependenciesMeta: + esbuild: + optional: true + rollup: + optional: true + vite: + optional: true + webpack: + optional: true + checksum: 10c0/422823c3635c5bab48a258d8f6e7dadf02484afdfb48b08005be962d8bb5b4c8f507f3d68b79523ff11901178a7e913f98c047ec7aced5bcdf47a846c2bcd66f languageName: node linkType: hard @@ -3771,64 +3787,64 @@ __metadata: languageName: node linkType: hard -"@storybook/icons@npm:^1.4.0": - version: 1.4.0 - resolution: "@storybook/icons@npm:1.4.0" +"@storybook/icons@npm:^1.6.0": + version: 1.6.0 + resolution: "@storybook/icons@npm:1.6.0" peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - checksum: 10c0/fd0514fb3fa431a8b5939fe1d9fc336b253ef2c25b34792d2d4ee59e13321108d34f8bf223a0981482f54f83c5ef47ffd1a98c376ca9071011c1b8afe2b01d43 + checksum: 10c0/bbec9201a78a730195f9cf377b15856dc414a54d04e30d16c379d062425cc617bfd0d6586ba1716012cfbdab461f0c9693a6a52920f9bd09c7b4291fb116f59c languageName: node linkType: hard -"@storybook/react-dom-shim@npm:9.1.7": - version: 9.1.7 - resolution: "@storybook/react-dom-shim@npm:9.1.7" +"@storybook/react-dom-shim@npm:10.0.2": + version: 10.0.2 + resolution: "@storybook/react-dom-shim@npm:10.0.2" peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^9.1.7 - checksum: 10c0/bed0ebf47f2d2027a28d82be1af5c2413297bfae928b0c6d6a0752f3e30819821660c6abdcc75fa97e15593dc1c181dc36b36f488c8710db3adcabaf70695964 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + storybook: ^10.0.2 + checksum: 10c0/8d915c4c0f4e88cc582fe653aadc9b7797105081e84bb22d4911dbb72c6dd4df0054bb074ae92ad1634a92332f4331d250431ca654f621de9f7f0a53e0eefff6 languageName: node linkType: hard -"@storybook/react-vite@npm:^9.1.1": - version: 9.1.7 - resolution: "@storybook/react-vite@npm:9.1.7" +"@storybook/react-vite@npm:^10.0.2": + version: 10.0.2 + resolution: "@storybook/react-vite@npm:10.0.2" dependencies: "@joshwooding/vite-plugin-react-docgen-typescript": "npm:0.6.1" "@rollup/pluginutils": "npm:^5.0.2" - "@storybook/builder-vite": "npm:9.1.7" - "@storybook/react": "npm:9.1.7" - find-up: "npm:^7.0.0" + "@storybook/builder-vite": "npm:10.0.2" + "@storybook/react": "npm:10.0.2" + empathic: "npm:^2.0.0" magic-string: "npm:^0.30.0" react-docgen: "npm:^8.0.0" resolve: "npm:^1.22.8" tsconfig-paths: "npm:^4.2.0" peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^9.1.7 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + storybook: ^10.0.2 vite: ^5.0.0 || ^6.0.0 || ^7.0.0 - checksum: 10c0/be74d1cacafc83f0c9dc22019aeb1e62a3c6faa2bcf98c1cd109ba3219fb61387d1be9875ffa5a59e824e7b7182c3491de47b2dcb4136368ee6c2189cff74e20 + checksum: 10c0/982e903ce89d5a87676bd345abee1cf26d4c78d477c5659b7c279ab5af80e3b1246610fd5f434e33895ca2dcd2efd06f7238c82b1b84f6fdec9e3ed0907f4cb3 languageName: node linkType: hard -"@storybook/react@npm:9.1.7": - version: 9.1.7 - resolution: "@storybook/react@npm:9.1.7" +"@storybook/react@npm:10.0.2": + version: 10.0.2 + resolution: "@storybook/react@npm:10.0.2" dependencies: "@storybook/global": "npm:^5.0.0" - "@storybook/react-dom-shim": "npm:9.1.7" + "@storybook/react-dom-shim": "npm:10.0.2" peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^9.1.7 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + storybook: ^10.0.2 typescript: ">= 4.9.x" peerDependenciesMeta: typescript: optional: true - checksum: 10c0/6ba0d3877075c380d8ab47423cc8e93ff297018fadbbe2ecd224e3d60e6a0fdba561ea84c1ffb39228cb2efd1d8d432710c6ec0337b30f74a62dc2384df96c91 + checksum: 10c0/298054e8c5e61f6d7392154e704f5db26ce22c9cdc1cd178c020eb6abd30dc380e10be28269b8d9c7706b8edefaa737360af906d7e0d6ffc4cbac76f1d835805 languageName: node linkType: hard @@ -5135,7 +5151,7 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.14.0, acorn@npm:^8.15.0, acorn@npm:^8.8.2": +"acorn@npm:^8.15.0, acorn@npm:^8.8.2": version: 8.15.0 resolution: "acorn@npm:8.15.0" bin: @@ -5624,15 +5640,6 @@ __metadata: languageName: node linkType: hard -"better-opn@npm:^3.0.2": - version: 3.0.2 - resolution: "better-opn@npm:3.0.2" - dependencies: - open: "npm:^8.0.4" - checksum: 10c0/911ef25d44da75aabfd2444ce7a4294a8000ebcac73068c04a60298b0f7c7506b60421aa4cd02ac82502fb42baaff7e4892234b51e6923eded44c5a11185f2f5 - languageName: node - linkType: hard - "bidi-js@npm:^1.0.3": version: 1.0.3 resolution: "bidi-js@npm:1.0.3" @@ -6737,6 +6744,13 @@ __metadata: languageName: node linkType: hard +"empathic@npm:^2.0.0": + version: 2.0.0 + resolution: "empathic@npm:2.0.0" + checksum: 10c0/7d3b14b04a93b35c47bcc950467ec914fd241cd9acc0269b0ea160f13026ec110f520c90fae64720fde72cc1757b57f3f292fb606617b7fccac1f4d008a76506 + languageName: node + linkType: hard + "encodeurl@npm:~1.0.2": version: 1.0.2 resolution: "encodeurl@npm:1.0.2" @@ -6981,17 +6995,6 @@ __metadata: languageName: node linkType: hard -"esbuild-register@npm:^3.5.0": - version: 3.6.0 - resolution: "esbuild-register@npm:3.6.0" - dependencies: - debug: "npm:^4.3.4" - peerDependencies: - esbuild: ">=0.12 <1" - checksum: 10c0/77193b7ca32ba9f81b35ddf3d3d0138efb0b1429d71b39480cfee932e1189dd2e492bd32bf04a4d0bc3adfbc7ec7381ceb5ffd06efe35f3e70904f1f686566d5 - 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.25.0": version: 0.25.5 resolution: "esbuild@npm:0.25.5" @@ -7306,15 +7309,15 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-storybook@npm:^9.0.4": - version: 9.1.1 - resolution: "eslint-plugin-storybook@npm:9.1.1" +"eslint-plugin-storybook@npm:^10.0.2": + version: 10.0.2 + resolution: "eslint-plugin-storybook@npm:10.0.2" dependencies: "@typescript-eslint/utils": "npm:^8.8.1" peerDependencies: eslint: ">=8" - storybook: ^9.1.1 - checksum: 10c0/4cf80aa078633021b153a3a5b790a39c9919b5fa7203727c15d8ae066e75d6e134d7d718e66a6a5db9815275f32942a2deae1979aeb36be2543572507faced2c + storybook: ^10.0.2 + checksum: 10c0/1a0adbc60c7f589914f08ad57d79804c56f6e156a7561c73c6bfa0549f3bccb1fdaa08bbad19c871f79418fe9bd5b5c7dbb712f858e93584a18de041357ed787 languageName: node linkType: hard @@ -7700,17 +7703,6 @@ __metadata: languageName: node linkType: hard -"find-up@npm:^7.0.0": - version: 7.0.0 - resolution: "find-up@npm:7.0.0" - dependencies: - locate-path: "npm:^7.2.0" - path-exists: "npm:^5.0.0" - unicorn-magic: "npm:^0.1.0" - checksum: 10c0/e6ee3e6154560bc0ab3bc3b7d1348b31513f9bdf49a5dd2e952495427d559fa48cdf33953e85a309a323898b43fa1bfbc8b80c880dfc16068384783034030008 - languageName: node - linkType: hard - "flat-cache@npm:^4.0.0": version: 4.0.1 resolution: "flat-cache@npm:4.0.1" @@ -9365,15 +9357,6 @@ __metadata: languageName: node linkType: hard -"locate-path@npm:^7.2.0": - version: 7.2.0 - resolution: "locate-path@npm:7.2.0" - dependencies: - p-locate: "npm:^6.0.0" - checksum: 10c0/139e8a7fe11cfbd7f20db03923cacfa5db9e14fa14887ea121345597472b4a63c1a42a8a5187defeeff6acf98fd568da7382aa39682d38f0af27433953a97751 - languageName: node - linkType: hard - "lodash.camelcase@npm:^4.3.0": version: 4.3.0 resolution: "lodash.camelcase@npm:4.3.0" @@ -10164,7 +10147,7 @@ __metadata: languageName: node linkType: hard -"open@npm:^8.0.0, open@npm:^8.0.4": +"open@npm:^8.0.0": version: 8.4.2 resolution: "open@npm:8.4.2" dependencies: @@ -10225,15 +10208,6 @@ __metadata: languageName: node linkType: hard -"p-limit@npm:^4.0.0": - version: 4.0.0 - resolution: "p-limit@npm:4.0.0" - dependencies: - yocto-queue: "npm:^1.0.0" - checksum: 10c0/a56af34a77f8df2ff61ddfb29431044557fcbcb7642d5a3233143ebba805fc7306ac1d448de724352861cb99de934bc9ab74f0d16fe6a5460bdbdf938de875ad - languageName: node - linkType: hard - "p-locate@npm:^5.0.0": version: 5.0.0 resolution: "p-locate@npm:5.0.0" @@ -10243,15 +10217,6 @@ __metadata: languageName: node linkType: hard -"p-locate@npm:^6.0.0": - version: 6.0.0 - resolution: "p-locate@npm:6.0.0" - dependencies: - p-limit: "npm:^4.0.0" - checksum: 10c0/d72fa2f41adce59c198270aa4d3c832536c87a1806e0f69dffb7c1a7ca998fb053915ca833d90f166a8c082d3859eabfed95f01698a3214c20df6bb8de046312 - languageName: node - linkType: hard - "p-map@npm:^7.0.2, p-map@npm:^7.0.3": version: 7.0.3 resolution: "p-map@npm:7.0.3" @@ -10347,13 +10312,6 @@ __metadata: languageName: node linkType: hard -"path-exists@npm:^5.0.0": - version: 5.0.0 - resolution: "path-exists@npm:5.0.0" - checksum: 10c0/b170f3060b31604cde93eefdb7392b89d832dfbc1bed717c9718cbe0f230c1669b7e75f87e19901da2250b84d092989a0f9e44d2ef41deb09aa3ad28e691a40a - languageName: node - linkType: hard - "path-is-absolute@npm:^1.0.0": version: 1.0.1 resolution: "path-is-absolute@npm:1.0.1" @@ -12872,19 +12830,18 @@ __metadata: languageName: node linkType: hard -"storybook@npm:^9.1.1": - version: 9.1.7 - resolution: "storybook@npm:9.1.7" +"storybook@npm:^10.0.2": + version: 10.0.2 + resolution: "storybook@npm:10.0.2" dependencies: "@storybook/global": "npm:^5.0.0" + "@storybook/icons": "npm:^1.6.0" "@testing-library/jest-dom": "npm:^6.6.3" "@testing-library/user-event": "npm:^14.6.1" "@vitest/expect": "npm:3.2.4" "@vitest/mocker": "npm:3.2.4" "@vitest/spy": "npm:3.2.4" - better-opn: "npm:^3.0.2" 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-register: "npm:^3.5.0" recast: "npm:^0.23.5" semver: "npm:^7.6.2" ws: "npm:^8.18.0" @@ -12894,8 +12851,8 @@ __metadata: prettier: optional: true bin: - storybook: ./bin/index.cjs - checksum: 10c0/daf3fb47ada1368604db7a1bc53775a5ceb485cd103351670e74d3378cb7bc1e396f72530a4821f3919207fb55ce7904ce894f55566844f9a14279553a8bd534 + storybook: ./dist/bin/dispatcher.js + checksum: 10c0/abf796718bff0a848959f9dcfdb2699ce8aa824c3d190c401fcff325db0a0fcd5d0436be5628a93284e03a6f8bc5d2be3147eeef352cf9b879e3b7644875dcf5 languageName: node linkType: hard @@ -13923,13 +13880,6 @@ __metadata: languageName: node linkType: hard -"unicorn-magic@npm:^0.1.0": - version: 0.1.0 - resolution: "unicorn-magic@npm:0.1.0" - checksum: 10c0/e4ed0de05b0a05e735c7d8a2930881e5efcfc3ec897204d5d33e7e6247f4c31eac92e383a15d9a6bccb7319b4271ee4bea946e211bf14951fec6ff2cbbb66a92 - languageName: node - linkType: hard - "unique-filename@npm:^4.0.0": version: 4.0.0 resolution: "unique-filename@npm:4.0.0" @@ -13971,13 +13921,15 @@ __metadata: languageName: node linkType: hard -"unplugin@npm:^1.3.1": - version: 1.16.1 - resolution: "unplugin@npm:1.16.1" +"unplugin@npm:^2.3.5": + version: 2.3.10 + resolution: "unplugin@npm:2.3.10" dependencies: - acorn: "npm:^8.14.0" + "@jridgewell/remapping": "npm:^2.3.5" + acorn: "npm:^8.15.0" + picomatch: "npm:^4.0.3" webpack-virtual-modules: "npm:^0.6.2" - checksum: 10c0/dd5f8c5727d0135847da73cf03fb199107f1acf458167034886fda3405737dab871ad3926431b4f70e1e82cdac482ac1383cea4019d782a68515c8e3e611b6cc + checksum: 10c0/29dcd738772aeff91c6f0154f156c95c58a37a4674fcb7cc34d6868af763834f0f447a1c3af074818c0c5602baead49bd3b9399a13f0425d69a00a527e58ddda languageName: node linkType: hard @@ -14955,13 +14907,6 @@ __metadata: languageName: node linkType: hard -"yocto-queue@npm:^1.0.0": - version: 1.2.1 - resolution: "yocto-queue@npm:1.2.1" - checksum: 10c0/5762caa3d0b421f4bdb7a1926b2ae2189fc6e4a14469258f183600028eb16db3e9e0306f46e8ebf5a52ff4b81a881f22637afefbef5399d6ad440824e9b27f9f - languageName: node - linkType: hard - "yoctocolors-cjs@npm:^2.1.2": version: 2.1.2 resolution: "yoctocolors-cjs@npm:2.1.2" From 8e4c9cf933dfff4847ba2add6c4f87c79026dea5 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Tue, 4 Nov 2025 04:43:38 -0500 Subject: [PATCH 07/31] Update lint-staged to version 16.2.6 (#36668) --- package.json | 2 +- yarn.lock | 70 ++++++++++++++++++++++++++-------------------------- 2 files changed, 36 insertions(+), 36 deletions(-) diff --git a/package.json b/package.json index 456f6ec560..74db883c56 100644 --- a/package.json +++ b/package.json @@ -180,7 +180,7 @@ "fake-indexeddb": "^6.0.1", "globals": "^16.0.0", "husky": "^9.0.11", - "lint-staged": "^16.0.0", + "lint-staged": "^16.2.6", "msw": "^2.10.2", "msw-storybook-addon": "^2.0.5", "playwright": "^1.56.1", diff --git a/yarn.lock b/yarn.lock index e0e60e83f1..bdadfdf1eb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2897,7 +2897,7 @@ __metadata: intl-messageformat: "npm:^10.7.16" js-yaml: "npm:^4.1.0" lande: "npm:^1.0.10" - lint-staged: "npm:^16.0.0" + lint-staged: "npm:^16.2.6" lodash: "npm:^4.17.21" marky: "npm:^1.2.5" msw: "npm:^2.10.2" @@ -6075,10 +6075,10 @@ __metadata: languageName: node linkType: hard -"commander@npm:14.0.1": - version: 14.0.1 - resolution: "commander@npm:14.0.1" - checksum: 10c0/64439c0651ddd01c1d0f48c8f08e97c18a0a1fa693879451f1203ad01132af2c2aa85da24cf0d8e098ab9e6dc385a756be670d2999a3c628ec745c3ec124587b +"commander@npm:^14.0.1": + version: 14.0.2 + resolution: "commander@npm:14.0.2" + checksum: 10c0/245abd1349dbad5414cb6517b7b5c584895c02c4f7836ff5395f301192b8566f9796c82d7bd6c92d07eba8775fe4df86602fca5d86d8d10bcc2aded1e21c2aeb languageName: node linkType: hard @@ -9317,26 +9317,26 @@ __metadata: languageName: node linkType: hard -"lint-staged@npm:^16.0.0": - version: 16.2.0 - resolution: "lint-staged@npm:16.2.0" +"lint-staged@npm:^16.2.6": + version: 16.2.6 + resolution: "lint-staged@npm:16.2.6" dependencies: - commander: "npm:14.0.1" - listr2: "npm:9.0.4" - micromatch: "npm:4.0.8" - nano-spawn: "npm:1.0.3" - pidtree: "npm:0.6.0" - string-argv: "npm:0.3.2" - yaml: "npm:2.8.1" + commander: "npm:^14.0.1" + listr2: "npm:^9.0.5" + micromatch: "npm:^4.0.8" + nano-spawn: "npm:^2.0.0" + pidtree: "npm:^0.6.0" + string-argv: "npm:^0.3.2" + yaml: "npm:^2.8.1" bin: lint-staged: bin/lint-staged.js - checksum: 10c0/0903eea526d390fd04ec10c2b6c3c3accdff53647d1918d3c30236d46fa7714a4a109d1aeda7364ecc689728c7b188bc430911b170834228fe0010d938c9a631 + checksum: 10c0/6bae38082a0fcb3f699b144d1a4b85394f259f17a1f8a58b22122b9f1c6bb5e8340d6ee4bff12e52dbc4267377d6dde9e5c206157f381f1924a2640717f769c1 languageName: node linkType: hard -"listr2@npm:9.0.4": - version: 9.0.4 - resolution: "listr2@npm:9.0.4" +"listr2@npm:^9.0.5": + version: 9.0.5 + resolution: "listr2@npm:9.0.5" dependencies: cli-truncate: "npm:^5.0.0" colorette: "npm:^2.0.20" @@ -9344,7 +9344,7 @@ __metadata: log-update: "npm:^6.1.0" rfdc: "npm:^1.4.1" wrap-ansi: "npm:^9.0.0" - checksum: 10c0/69feca532f5b3317112a74bc7589ad29f98ccfbe1a582bdab556d536978b094e5841b94069e01cf59ea919684dfb68218754526ddd317b1dc829ab57f7450e45 + checksum: 10c0/46448d1ba0addc9d71aeafd05bb8e86ded9641ccad930ac302c2bd2ad71580375604743e18586fcb8f11906edf98e8e17fca75ba0759947bf275d381f68e311d languageName: node linkType: hard @@ -9629,7 +9629,7 @@ __metadata: languageName: node linkType: hard -"micromatch@npm:4.0.8, micromatch@npm:^4.0.5, micromatch@npm:^4.0.8": +"micromatch@npm:^4.0.5, micromatch@npm:^4.0.8": version: 4.0.8 resolution: "micromatch@npm:4.0.8" dependencies: @@ -9870,10 +9870,10 @@ __metadata: languageName: node linkType: hard -"nano-spawn@npm:1.0.3": - version: 1.0.3 - resolution: "nano-spawn@npm:1.0.3" - checksum: 10c0/ea18857e493710a50ded333dd71677953bd9bd9e6a17ade74af957763c50a9a02205ef31bc0d6784f5b3ad82db3d9f47531e9baac2acf01118f9b7c35bd9d5de +"nano-spawn@npm:^2.0.0": + version: 2.0.0 + resolution: "nano-spawn@npm:2.0.0" + checksum: 10c0/d00f9b5739f86e28cb732ffd774793e110810cded246b8393c75c4f22674af47f98ee37b19f022ada2d8c9425f800e841caa0662fbff4c0930a10e39339fb366 languageName: node linkType: hard @@ -10489,7 +10489,7 @@ __metadata: languageName: node linkType: hard -"pidtree@npm:0.6.0": +"pidtree@npm:^0.6.0": version: 0.6.0 resolution: "pidtree@npm:0.6.0" bin: @@ -12863,7 +12863,7 @@ __metadata: languageName: node linkType: hard -"string-argv@npm:0.3.2": +"string-argv@npm:^0.3.2": version: 0.3.2 resolution: "string-argv@npm:0.3.2" checksum: 10c0/75c02a83759ad1722e040b86823909d9a2fc75d15dd71ec4b537c3560746e33b5f5a07f7332d1e3f88319909f82190843aa2f0a0d8c8d591ec08e93d5b8dec82 @@ -14862,7 +14862,14 @@ __metadata: languageName: node linkType: hard -"yaml@npm:2.8.1": +"yaml@npm:^1.10.0, yaml@npm:^1.10.2": + version: 1.10.2 + resolution: "yaml@npm:1.10.2" + checksum: 10c0/5c28b9eb7adc46544f28d9a8d20c5b3cb1215a886609a2fd41f51628d8aaa5878ccd628b755dbcd29f6bb4921bd04ffbc6dcc370689bb96e594e2f9813d2605f + languageName: node + linkType: hard + +"yaml@npm:^2.8.1": version: 2.8.1 resolution: "yaml@npm:2.8.1" bin: @@ -14871,13 +14878,6 @@ __metadata: languageName: node linkType: hard -"yaml@npm:^1.10.0, yaml@npm:^1.10.2": - version: 1.10.2 - resolution: "yaml@npm:1.10.2" - checksum: 10c0/5c28b9eb7adc46544f28d9a8d20c5b3cb1215a886609a2fd41f51628d8aaa5878ccd628b755dbcd29f6bb4921bd04ffbc6dcc370689bb96e594e2f9813d2605f - languageName: node - linkType: hard - "yargs-parser@npm:^21.1.1": version: 21.1.1 resolution: "yargs-parser@npm:21.1.1" From 8f37f9d012c30316b433cdac184632b4d838e119 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Tue, 4 Nov 2025 04:47:30 -0500 Subject: [PATCH 08/31] Update vitest to version 4.0.5 (#36652) --- package.json | 9 +- vitest.config.mts | 3 +- yarn.lock | 404 ++++++++++++++++++++++++++-------------------- 3 files changed, 239 insertions(+), 177 deletions(-) diff --git a/package.json b/package.json index 74db883c56..0bd06c9021 100644 --- a/package.json +++ b/package.json @@ -163,9 +163,10 @@ "@types/react-toggle": "^4.0.3", "@types/redux-immutable": "^4.0.3", "@types/requestidlecallback": "^0.3.5", - "@vitest/browser": "^3.2.4", - "@vitest/coverage-v8": "^3.2.4", - "@vitest/ui": "^3.2.4", + "@vitest/browser": "^4.0.5", + "@vitest/browser-playwright": "^4.0.5", + "@vitest/coverage-v8": "^4.0.5", + "@vitest/ui": "^4.0.5", "chromatic": "^13.1.3", "eslint": "^9.23.0", "eslint-import-resolver-typescript": "^4.2.5", @@ -193,7 +194,7 @@ "typescript": "~5.9.0", "typescript-eslint": "^8.45.0", "typescript-plugin-css-modules": "^5.2.0", - "vitest": "^3.2.4" + "vitest": "^4.0.5" }, "resolutions": { "@types/react": "^18.2.7", diff --git a/vitest.config.mts b/vitest.config.mts index b129c293f4..16c1ba2e9e 100644 --- a/vitest.config.mts +++ b/vitest.config.mts @@ -1,6 +1,7 @@ import { resolve } from 'node:path'; import { storybookTest } from '@storybook/addon-vitest/vitest-plugin'; +import { playwright } from '@vitest/browser-playwright'; import { configDefaults, defineConfig, @@ -23,7 +24,7 @@ const storybookTests: TestProjectInlineConfiguration = { browser: { enabled: true, headless: true, - provider: 'playwright', + provider: playwright(), instances: [{ browser: 'chromium' }], }, setupFiles: [resolve(__dirname, '.storybook/vitest.setup.ts')], diff --git a/yarn.lock b/yarn.lock index bdadfdf1eb..6bf5e52574 100644 --- a/yarn.lock +++ b/yarn.lock @@ -33,16 +33,6 @@ __metadata: languageName: node linkType: hard -"@ampproject/remapping@npm:^2.3.0": - version: 2.3.0 - resolution: "@ampproject/remapping@npm:2.3.0" - dependencies: - "@jridgewell/gen-mapping": "npm:^0.3.5" - "@jridgewell/trace-mapping": "npm:^0.3.24" - checksum: 10c0/81d63cca5443e0f0c72ae18b544cc28c7c0ec2cea46e7cb888bb0e0f411a1191d0d6b7af798d54e30777d8d1488b2ec0732aac2be342d3d7d3ffd271c6f489ed - languageName: node - linkType: hard - "@apideck/better-ajv-errors@npm:^0.3.1": version: 0.3.6 resolution: "@apideck/better-ajv-errors@npm:0.3.6" @@ -2708,13 +2698,6 @@ __metadata: languageName: node linkType: hard -"@istanbuljs/schema@npm:^0.1.2": - version: 0.1.3 - resolution: "@istanbuljs/schema@npm:0.1.3" - checksum: 10c0/61c5286771676c9ca3eb2bd8a7310a9c063fb6e0e9712225c8471c582d157392c88f5353581c8c9adbe0dff98892317d2fdfc56c3499aa42e0194405206a963a - languageName: node - linkType: hard - "@joshwooding/vite-plugin-react-docgen-typescript@npm:0.6.1": version: 0.6.1 resolution: "@joshwooding/vite-plugin-react-docgen-typescript@npm:0.6.1" @@ -2776,6 +2759,13 @@ __metadata: languageName: node linkType: hard +"@jridgewell/sourcemap-codec@npm:^1.5.5": + version: 1.5.5 + resolution: "@jridgewell/sourcemap-codec@npm:1.5.5" + checksum: 10c0/f9e538f302b63c0ebc06eecb1dd9918dd4289ed36147a0ddce35d6ea4d7ebbda243cda7b2213b6a5e1d8087a298d5cf630fb2bd39329cdecb82017023f6081a0 + 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.28": version: 0.3.29 resolution: "@jridgewell/trace-mapping@npm:0.3.29" @@ -2786,6 +2776,16 @@ __metadata: languageName: node linkType: hard +"@jridgewell/trace-mapping@npm:^0.3.31": + version: 0.3.31 + resolution: "@jridgewell/trace-mapping@npm:0.3.31" + dependencies: + "@jridgewell/resolve-uri": "npm:^3.1.0" + "@jridgewell/sourcemap-codec": "npm:^1.4.14" + checksum: 10c0/4b30ec8cd56c5fd9a661f088230af01e0c1a3888d11ffb6b47639700f71225be21d1f7e168048d6d4f9449207b978a235c07c8f15c07705685d16dc06280e9d9 + languageName: node + linkType: hard + "@keyv/bigmap@npm:^1.0.0": version: 1.0.2 resolution: "@keyv/bigmap@npm:1.0.2" @@ -2852,9 +2852,10 @@ __metadata: "@use-gesture/react": "npm:^10.3.1" "@vitejs/plugin-legacy": "npm:^7.2.1" "@vitejs/plugin-react": "npm:^5.0.0" - "@vitest/browser": "npm:^3.2.4" - "@vitest/coverage-v8": "npm:^3.2.4" - "@vitest/ui": "npm:^3.2.4" + "@vitest/browser": "npm:^4.0.5" + "@vitest/browser-playwright": "npm:^4.0.5" + "@vitest/coverage-v8": "npm:^4.0.5" + "@vitest/ui": "npm:^4.0.5" arrow-key-navigation: "npm:^1.2.0" async-mutex: "npm:^0.5.0" axios: "npm:^1.4.0" @@ -2952,7 +2953,7 @@ __metadata: vite-plugin-static-copy: "npm:^3.1.1" vite-plugin-svgr: "npm:^4.3.0" vite-tsconfig-paths: "npm:^5.1.4" - vitest: "npm:^3.2.4" + vitest: "npm:^4.0.5" wicg-inert: "npm:^3.1.2" workbox-expiration: "npm:^7.3.0" workbox-routing: "npm:^7.3.0" @@ -3987,7 +3988,7 @@ __metadata: languageName: node linkType: hard -"@testing-library/dom@npm:^10.4.0, @testing-library/dom@npm:^10.4.1": +"@testing-library/dom@npm:^10.4.1": version: 10.4.1 resolution: "@testing-library/dom@npm:10.4.1" dependencies: @@ -4971,57 +4972,63 @@ __metadata: languageName: node linkType: hard -"@vitest/browser@npm:^3.2.4": - version: 3.2.4 - resolution: "@vitest/browser@npm:3.2.4" +"@vitest/browser-playwright@npm:^4.0.5": + version: 4.0.5 + resolution: "@vitest/browser-playwright@npm:4.0.5" dependencies: - "@testing-library/dom": "npm:^10.4.0" - "@testing-library/user-event": "npm:^14.6.1" - "@vitest/mocker": "npm:3.2.4" - "@vitest/utils": "npm:3.2.4" - magic-string: "npm:^0.30.17" - sirv: "npm:^3.0.1" - tinyrainbow: "npm:^2.0.0" - ws: "npm:^8.18.2" + "@vitest/browser": "npm:4.0.5" + "@vitest/mocker": "npm:4.0.5" + tinyrainbow: "npm:^3.0.3" peerDependencies: playwright: "*" - vitest: 3.2.4 - webdriverio: ^7.0.0 || ^8.0.0 || ^9.0.0 + vitest: 4.0.5 peerDependenciesMeta: playwright: - optional: true - safaridriver: - optional: true - webdriverio: - optional: true - checksum: 10c0/0db39daad675aad187eff27d5a7f17a9f533d7abc7476ee1a0b83a9c62a7227b24395f4814e034ecb2ebe39f1a2dec0a8c6a7f79b8d5680c3ac79e408727d742 + optional: false + checksum: 10c0/401dd2eca6b24bc1b764f2c4ac3388203082844f81df2dd67aa1e595fb46316a9646346e01f5fb1a7973b2b89444356bd18abe1f7d475206603ed1a39e80cabd languageName: node linkType: hard -"@vitest/coverage-v8@npm:^3.2.4": - version: 3.2.4 - resolution: "@vitest/coverage-v8@npm:3.2.4" +"@vitest/browser@npm:4.0.5, @vitest/browser@npm:^4.0.5": + version: 4.0.5 + resolution: "@vitest/browser@npm:4.0.5" + dependencies: + "@vitest/mocker": "npm:4.0.5" + "@vitest/utils": "npm:4.0.5" + magic-string: "npm:^0.30.19" + pixelmatch: "npm:7.1.0" + pngjs: "npm:^7.0.0" + sirv: "npm:^3.0.2" + tinyrainbow: "npm:^3.0.3" + ws: "npm:^8.18.3" + peerDependencies: + vitest: 4.0.5 + checksum: 10c0/a696061589b9715d44e16e6cf0552e0da727c1f2c9c353c02157e86f6345f5bdbcaf65b5135296e588fc40a444543e552dc93fb2ec37811cdbe0685e036fb976 + languageName: node + linkType: hard + +"@vitest/coverage-v8@npm:^4.0.5": + version: 4.0.5 + resolution: "@vitest/coverage-v8@npm:4.0.5" dependencies: - "@ampproject/remapping": "npm:^2.3.0" "@bcoe/v8-coverage": "npm:^1.0.2" - ast-v8-to-istanbul: "npm:^0.3.3" - debug: "npm:^4.4.1" + "@vitest/utils": "npm:4.0.5" + ast-v8-to-istanbul: "npm:^0.3.5" + debug: "npm:^4.4.3" istanbul-lib-coverage: "npm:^3.2.2" istanbul-lib-report: "npm:^3.0.1" istanbul-lib-source-maps: "npm:^5.0.6" - istanbul-reports: "npm:^3.1.7" - magic-string: "npm:^0.30.17" + istanbul-reports: "npm:^3.2.0" magicast: "npm:^0.3.5" std-env: "npm:^3.9.0" - test-exclude: "npm:^7.0.1" - tinyrainbow: "npm:^2.0.0" + tinyrainbow: "npm:^3.0.3" peerDependencies: - "@vitest/browser": 3.2.4 - vitest: 3.2.4 + "@vitest/browser": 4.0.5 + vitest: 4.0.5 peerDependenciesMeta: "@vitest/browser": optional: true - checksum: 10c0/cae3e58d81d56e7e1cdecd7b5baab7edd0ad9dee8dec9353c52796e390e452377d3f04174d40b6986b17c73241a5e773e422931eaa8102dcba0605ff24b25193 + checksum: 10c0/6c93ff8a4c38f9a1cb8044eaae9553badfd7e82a8f46c642769fef47ebdd7ea9cc1f05e9e9c31feeb76f32f65ca76396ab35a285604648e02283793c8bd655a4 languageName: node linkType: hard @@ -5038,6 +5045,20 @@ __metadata: languageName: node linkType: hard +"@vitest/expect@npm:4.0.5": + version: 4.0.5 + resolution: "@vitest/expect@npm:4.0.5" + dependencies: + "@standard-schema/spec": "npm:^1.0.0" + "@types/chai": "npm:^5.2.2" + "@vitest/spy": "npm:4.0.5" + "@vitest/utils": "npm:4.0.5" + chai: "npm:^6.0.1" + tinyrainbow: "npm:^3.0.3" + checksum: 10c0/297235c7032ddf0f3673ec81fecd8cb31f8203b079f6e664094f3479f93bda02f919dcfa8cd3c4380e461f91ee1e232eaf945c0c2447df3bfde685c400f95eda + languageName: node + linkType: hard + "@vitest/mocker@npm:3.2.4": version: 3.2.4 resolution: "@vitest/mocker@npm:3.2.4" @@ -5057,7 +5078,26 @@ __metadata: languageName: node linkType: hard -"@vitest/pretty-format@npm:3.2.4, @vitest/pretty-format@npm:^3.2.4": +"@vitest/mocker@npm:4.0.5": + version: 4.0.5 + resolution: "@vitest/mocker@npm:4.0.5" + dependencies: + "@vitest/spy": "npm:4.0.5" + estree-walker: "npm:^3.0.3" + magic-string: "npm:^0.30.19" + peerDependencies: + msw: ^2.4.9 + vite: ^6.0.0 || ^7.0.0-0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + checksum: 10c0/d98a30c2c2313771b7c02b23273f9bcbfa154d9389dc1c513889eab6de5be447e672109571e20cfff63d849bf1b1373e1540c331699b90b650fae38b20cc73b6 + languageName: node + linkType: hard + +"@vitest/pretty-format@npm:3.2.4": version: 3.2.4 resolution: "@vitest/pretty-format@npm:3.2.4" dependencies: @@ -5066,25 +5106,33 @@ __metadata: languageName: node linkType: hard -"@vitest/runner@npm:3.2.4": - version: 3.2.4 - resolution: "@vitest/runner@npm:3.2.4" +"@vitest/pretty-format@npm:4.0.5": + version: 4.0.5 + resolution: "@vitest/pretty-format@npm:4.0.5" dependencies: - "@vitest/utils": "npm:3.2.4" - pathe: "npm:^2.0.3" - strip-literal: "npm:^3.0.0" - checksum: 10c0/e8be51666c72b3668ae3ea348b0196656a4a5adb836cb5e270720885d9517421815b0d6c98bfdf1795ed02b994b7bfb2b21566ee356a40021f5bf4f6ed4e418a + tinyrainbow: "npm:^3.0.3" + checksum: 10c0/76b36512ba8978475223a4f15041f66aeda32a54b9426b372d75f3584243521e3a8976eeb82b50534c48271f30023ee6345213e22add750ffb49a69098bc8619 languageName: node linkType: hard -"@vitest/snapshot@npm:3.2.4": - version: 3.2.4 - resolution: "@vitest/snapshot@npm:3.2.4" +"@vitest/runner@npm:4.0.5": + version: 4.0.5 + resolution: "@vitest/runner@npm:4.0.5" dependencies: - "@vitest/pretty-format": "npm:3.2.4" - magic-string: "npm:^0.30.17" + "@vitest/utils": "npm:4.0.5" pathe: "npm:^2.0.3" - checksum: 10c0/f8301a3d7d1559fd3d59ed51176dd52e1ed5c2d23aa6d8d6aa18787ef46e295056bc726a021698d8454c16ed825ecba163362f42fa90258bb4a98cfd2c9424fc + checksum: 10c0/935d55cf587301ed88ff698759bcfbc150d7a7c9d89fdb6dd80fcc6120c2edddcb3e4c7d6e5d8ae13abb01eb0f0f42e6e25d637dbf2576b973c332ee47032fda + languageName: node + linkType: hard + +"@vitest/snapshot@npm:4.0.5": + version: 4.0.5 + resolution: "@vitest/snapshot@npm:4.0.5" + dependencies: + "@vitest/pretty-format": "npm:4.0.5" + magic-string: "npm:^0.30.19" + pathe: "npm:^2.0.3" + checksum: 10c0/9faa7589d147c1b36d4020a3764420e5464c8c4838369491398d9e5938fc3ba4a647f3cdc994d630ab106790b7c5bda8fd52236e131b1fcf09e8bc5ee4c3bb2b languageName: node linkType: hard @@ -5097,20 +5145,27 @@ __metadata: languageName: node linkType: hard -"@vitest/ui@npm:^3.2.4": - version: 3.2.4 - resolution: "@vitest/ui@npm:3.2.4" +"@vitest/spy@npm:4.0.5": + version: 4.0.5 + resolution: "@vitest/spy@npm:4.0.5" + checksum: 10c0/f07cf4506b80839b61f2fedf2b68330906f5d019e60beb42abea0a66672d69b31cfc8576a1d22f42ea4707429dcb96677321b222da272e29e6b3a0d6c0d67057 + languageName: node + linkType: hard + +"@vitest/ui@npm:^4.0.5": + version: 4.0.5 + resolution: "@vitest/ui@npm:4.0.5" dependencies: - "@vitest/utils": "npm:3.2.4" + "@vitest/utils": "npm:4.0.5" fflate: "npm:^0.8.2" flatted: "npm:^3.3.3" pathe: "npm:^2.0.3" - sirv: "npm:^3.0.1" - tinyglobby: "npm:^0.2.14" - tinyrainbow: "npm:^2.0.0" + sirv: "npm:^3.0.2" + tinyglobby: "npm:^0.2.15" + tinyrainbow: "npm:^3.0.3" peerDependencies: - vitest: 3.2.4 - checksum: 10c0/c3de1b757905d050706c7ab0199185dd8c7e115f2f348b8d5a7468528c6bf90c2c46096e8901602349ac04f5ba83ac23cd98c38827b104d5151cf8ba21739a0c + vitest: 4.0.5 + checksum: 10c0/586be4700915fde0163158dc20790ab734707ac3a950e6131184886328ad735c66fccd574f03f6dd6858c498b7d94ab3597c9c274f5c920127d4a4bb7fc0b92d languageName: node linkType: hard @@ -5125,6 +5180,16 @@ __metadata: languageName: node linkType: hard +"@vitest/utils@npm:4.0.5": + version: 4.0.5 + resolution: "@vitest/utils@npm:4.0.5" + dependencies: + "@vitest/pretty-format": "npm:4.0.5" + tinyrainbow: "npm:^3.0.3" + checksum: 10c0/1b772533bb7020c14c22036f94027afa9b51aad683abf048f377af776186ecc41d6abd716daf18ac7f5654b4569409c5f5668b8e0f2ac3a33fe291bcd839cb8c + languageName: node + linkType: hard + "abbrev@npm:^3.0.0": version: 3.0.1 resolution: "abbrev@npm:3.0.1" @@ -5437,14 +5502,14 @@ __metadata: languageName: node linkType: hard -"ast-v8-to-istanbul@npm:^0.3.3": - version: 0.3.3 - resolution: "ast-v8-to-istanbul@npm:0.3.3" +"ast-v8-to-istanbul@npm:^0.3.5": + version: 0.3.8 + resolution: "ast-v8-to-istanbul@npm:0.3.8" dependencies: - "@jridgewell/trace-mapping": "npm:^0.3.25" + "@jridgewell/trace-mapping": "npm:^0.3.31" estree-walker: "npm:^3.0.3" js-tokens: "npm:^9.0.1" - checksum: 10c0/ffc39bc3ab4b8c1f7aea945960ce6b1e518bab3da7c800277eab2da07d397eeae4a2cb8a5a5f817225646c8ea495c1e4434fbe082c84bae8042abddef53f50b2 + checksum: 10c0/6f7d74fc36011699af6d4ad88ecd8efc7d74bd90b8e8dbb1c69d43c8f4bec0ed361fb62a5b5bd98bbee02ee87c62cd8bcc25a39634964e45476bf5489dfa327f languageName: node linkType: hard @@ -5777,13 +5842,6 @@ __metadata: languageName: node linkType: hard -"cac@npm:^6.7.14": - version: 6.7.14 - resolution: "cac@npm:6.7.14" - checksum: 10c0/4ee06aaa7bab8981f0d54e5f5f9d4adcd64058e9697563ce336d8a3878ed018ee18ebe5359b2430eceae87e0758e62ea2019c3f52ae6e211b1bd2e133856cd10 - languageName: node - linkType: hard - "cacache@npm:^19.0.1": version: 19.0.1 resolution: "cacache@npm:19.0.1" @@ -5883,6 +5941,13 @@ __metadata: languageName: node linkType: hard +"chai@npm:^6.0.1": + version: 6.2.0 + resolution: "chai@npm:6.2.0" + checksum: 10c0/a4b7d7f5907187e09f1847afa838d6d1608adc7d822031b7900813c4ed5d9702911ac2468bf290676f22fddb3d727b1be90b57c1d0a69b902534ee29cdc6ff8a + languageName: node + linkType: hard + "chalk@npm:^3.0.0": version: 3.0.0 resolution: "chalk@npm:3.0.0" @@ -7485,10 +7550,10 @@ __metadata: languageName: node linkType: hard -"expect-type@npm:^1.2.1": - version: 1.2.1 - resolution: "expect-type@npm:1.2.1" - checksum: 10c0/b775c9adab3c190dd0d398c722531726cdd6022849b4adba19dceab58dda7e000a7c6c872408cd73d665baa20d381eca36af4f7b393a4ba60dd10232d1fb8898 +"expect-type@npm:^1.2.2": + version: 1.2.2 + resolution: "expect-type@npm:1.2.2" + checksum: 10c0/6019019566063bbc7a690d9281d920b1a91284a4a093c2d55d71ffade5ac890cf37a51e1da4602546c4b56569d2ad2fc175a2ccee77d1ae06cb3af91ef84f44b languageName: node linkType: hard @@ -7989,7 +8054,7 @@ __metadata: languageName: node linkType: hard -"glob@npm:^10.0.0, glob@npm:^10.2.2, glob@npm:^10.4.1": +"glob@npm:^10.0.0, glob@npm:^10.2.2": version: 10.4.5 resolution: "glob@npm:10.4.5" dependencies: @@ -8927,13 +8992,13 @@ __metadata: languageName: node linkType: hard -"istanbul-reports@npm:^3.1.7": - version: 3.1.7 - resolution: "istanbul-reports@npm:3.1.7" +"istanbul-reports@npm:^3.2.0": + version: 3.2.0 + resolution: "istanbul-reports@npm:3.2.0" dependencies: html-escaper: "npm:^2.0.0" istanbul-lib-report: "npm:^3.0.0" - checksum: 10c0/a379fadf9cf8dc5dfe25568115721d4a7eb82fbd50b005a6672aff9c6989b20cc9312d7865814e0859cd8df58cbf664482e1d3604be0afde1f7fc3ccc1394a51 + checksum: 10c0/d596317cfd9c22e1394f22a8d8ba0303d2074fe2e971887b32d870e4b33f8464b10f8ccbe6847808f7db485f084eba09e6c2ed706b3a978e4b52f07085b8f9bc languageName: node linkType: hard @@ -9503,6 +9568,15 @@ __metadata: languageName: node linkType: hard +"magic-string@npm:^0.30.19": + version: 0.30.21 + resolution: "magic-string@npm:0.30.21" + dependencies: + "@jridgewell/sourcemap-codec": "npm:^1.5.5" + checksum: 10c0/299378e38f9a270069fc62358522ddfb44e94244baa0d6a8980ab2a9b2490a1d03b236b447eee309e17eb3bddfa482c61259d47960eb018a904f0ded52780c4a + languageName: node + linkType: hard + "magicast@npm:^0.3.5": version: 0.3.5 resolution: "magicast@npm:0.3.5" @@ -10577,6 +10651,17 @@ __metadata: languageName: node linkType: hard +"pixelmatch@npm:7.1.0": + version: 7.1.0 + resolution: "pixelmatch@npm:7.1.0" + dependencies: + pngjs: "npm:^7.0.0" + bin: + pixelmatch: bin/pixelmatch + checksum: 10c0/ff069f92edaa841ac9b58b0ab74e1afa1f3b5e770eea0218c96bac1da4e752f5f6b79a0f9c4ba6b02afb955d39b8c78bcc3cc884f8122b67a1f2efbbccbe1a73 + languageName: node + linkType: hard + "playwright-core@npm:1.56.1": version: 1.56.1 resolution: "playwright-core@npm:1.56.1" @@ -10601,6 +10686,13 @@ __metadata: languageName: node linkType: hard +"pngjs@npm:^7.0.0": + version: 7.0.0 + resolution: "pngjs@npm:7.0.0" + checksum: 10c0/0d4c7a0fd476a9c33df7d0a2a73e1d56537628a668841f6995c2bca070cf30819f9254a64363266bc14ef2fee47659dd3b4f2b18eec7ab65143015139f497b38 + languageName: node + linkType: hard + "possible-typed-array-names@npm:^1.0.0": version: 1.0.0 resolution: "possible-typed-array-names@npm:1.0.0" @@ -12540,14 +12632,14 @@ __metadata: languageName: node linkType: hard -"sirv@npm:^3.0.1": - version: 3.0.1 - resolution: "sirv@npm:3.0.1" +"sirv@npm:^3.0.2": + version: 3.0.2 + resolution: "sirv@npm:3.0.2" dependencies: "@polka/url": "npm:^1.0.0-next.24" mrmime: "npm:^2.0.0" totalist: "npm:^3.0.0" - checksum: 10c0/7cf64b28daa69b15f77b38b0efdd02c007b72bb3ec5f107b208ebf59f01b174ef63a1db3aca16d2df925501831f4c209be6ece3302b98765919ef5088b45bf80 + checksum: 10c0/5930e4397afdb14fbae13751c3be983af4bda5c9aadec832607dc2af15a7162f7d518c71b30e83ae3644b9a24cea041543cc969e5fe2b80af6ce8ea3174b2d04 languageName: node linkType: hard @@ -13077,15 +13169,6 @@ __metadata: languageName: node linkType: hard -"strip-literal@npm:^3.0.0": - version: 3.0.0 - resolution: "strip-literal@npm:3.0.0" - dependencies: - js-tokens: "npm:^9.0.1" - checksum: 10c0/d81657f84aba42d4bbaf2a677f7e7f34c1f3de5a6726db8bc1797f9c0b303ba54d4660383a74bde43df401cf37cce1dff2c842c55b077a4ceee11f9e31fba828 - languageName: node - linkType: hard - "stylelint-config-prettier-scss@npm:^1.0.0": version: 1.0.0 resolution: "stylelint-config-prettier-scss@npm:1.0.0" @@ -13393,17 +13476,6 @@ __metadata: languageName: node linkType: hard -"test-exclude@npm:^7.0.1": - version: 7.0.1 - resolution: "test-exclude@npm:7.0.1" - dependencies: - "@istanbuljs/schema": "npm:^0.1.2" - glob: "npm:^10.4.1" - minimatch: "npm:^9.0.4" - checksum: 10c0/6d67b9af4336a2e12b26a68c83308c7863534c65f27ed4ff7068a56f5a58f7ac703e8fc80f698a19bb154fd8f705cdf7ec347d9512b2c522c737269507e7b263 - languageName: node - linkType: hard - "thread-stream@npm:^3.0.0": version: 3.0.0 resolution: "thread-stream@npm:3.0.0" @@ -13458,13 +13530,6 @@ __metadata: languageName: node linkType: hard -"tinypool@npm:^1.1.1": - version: 1.1.1 - resolution: "tinypool@npm:1.1.1" - checksum: 10c0/bf26727d01443061b04fa863f571016950888ea994ba0cd8cba3a1c51e2458d84574341ab8dbc3664f1c3ab20885c8cf9ff1cc4b18201f04c2cde7d317fff69b - languageName: node - linkType: hard - "tinyrainbow@npm:^2.0.0": version: 2.0.0 resolution: "tinyrainbow@npm:2.0.0" @@ -13472,6 +13537,13 @@ __metadata: languageName: node linkType: hard +"tinyrainbow@npm:^3.0.3": + version: 3.0.3 + resolution: "tinyrainbow@npm:3.0.3" + checksum: 10c0/1e799d35cd23cabe02e22550985a3051dc88814a979be02dc632a159c393a998628eacfc558e4c746b3006606d54b00bcdea0c39301133956d10a27aa27e988c + languageName: node + linkType: hard + "tinyspy@npm:^4.0.3": version: 4.0.3 resolution: "tinyspy@npm:4.0.3" @@ -14137,21 +14209,6 @@ __metadata: languageName: node linkType: hard -"vite-node@npm:3.2.4": - version: 3.2.4 - resolution: "vite-node@npm:3.2.4" - dependencies: - cac: "npm:^6.7.14" - debug: "npm:^4.4.1" - es-module-lexer: "npm:^1.7.0" - pathe: "npm:^2.0.3" - vite: "npm:^5.0.0 || ^6.0.0 || ^7.0.0-0" - bin: - vite-node: vite-node.mjs - checksum: 10c0/6ceca67c002f8ef6397d58b9539f80f2b5d79e103a18367288b3f00a8ab55affa3d711d86d9112fce5a7fa658a212a087a005a045eb8f4758947dd99af2a6c6b - languageName: node - linkType: hard - "vite-plugin-manifest-sri@npm:^0.2.0": version: 0.2.0 resolution: "vite-plugin-manifest-sri@npm:0.2.0" @@ -14223,7 +14280,7 @@ __metadata: languageName: node linkType: hard -"vite@npm:^5.0.0 || ^6.0.0 || ^7.0.0-0, vite@npm:^7.1.1": +"vite@npm:^6.0.0 || ^7.0.0, vite@npm:^7.1.1": version: 7.1.12 resolution: "vite@npm:7.1.12" dependencies: @@ -14278,39 +14335,38 @@ __metadata: languageName: node linkType: hard -"vitest@npm:^3.2.4": - version: 3.2.4 - resolution: "vitest@npm:3.2.4" +"vitest@npm:^4.0.5": + version: 4.0.5 + resolution: "vitest@npm:4.0.5" dependencies: - "@types/chai": "npm:^5.2.2" - "@vitest/expect": "npm:3.2.4" - "@vitest/mocker": "npm:3.2.4" - "@vitest/pretty-format": "npm:^3.2.4" - "@vitest/runner": "npm:3.2.4" - "@vitest/snapshot": "npm:3.2.4" - "@vitest/spy": "npm:3.2.4" - "@vitest/utils": "npm:3.2.4" - chai: "npm:^5.2.0" - debug: "npm:^4.4.1" - expect-type: "npm:^1.2.1" - magic-string: "npm:^0.30.17" + "@vitest/expect": "npm:4.0.5" + "@vitest/mocker": "npm:4.0.5" + "@vitest/pretty-format": "npm:4.0.5" + "@vitest/runner": "npm:4.0.5" + "@vitest/snapshot": "npm:4.0.5" + "@vitest/spy": "npm:4.0.5" + "@vitest/utils": "npm:4.0.5" + debug: "npm:^4.4.3" + es-module-lexer: "npm:^1.7.0" + expect-type: "npm:^1.2.2" + magic-string: "npm:^0.30.19" pathe: "npm:^2.0.3" - picomatch: "npm:^4.0.2" + picomatch: "npm:^4.0.3" std-env: "npm:^3.9.0" tinybench: "npm:^2.9.0" tinyexec: "npm:^0.3.2" - tinyglobby: "npm:^0.2.14" - tinypool: "npm:^1.1.1" - tinyrainbow: "npm:^2.0.0" - vite: "npm:^5.0.0 || ^6.0.0 || ^7.0.0-0" - vite-node: "npm:3.2.4" + tinyglobby: "npm:^0.2.15" + tinyrainbow: "npm:^3.0.3" + vite: "npm:^6.0.0 || ^7.0.0" why-is-node-running: "npm:^2.3.0" peerDependencies: "@edge-runtime/vm": "*" "@types/debug": ^4.1.12 - "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0 - "@vitest/browser": 3.2.4 - "@vitest/ui": 3.2.4 + "@types/node": ^20.0.0 || ^22.0.0 || >=24.0.0 + "@vitest/browser-playwright": 4.0.5 + "@vitest/browser-preview": 4.0.5 + "@vitest/browser-webdriverio": 4.0.5 + "@vitest/ui": 4.0.5 happy-dom: "*" jsdom: "*" peerDependenciesMeta: @@ -14320,7 +14376,11 @@ __metadata: optional: true "@types/node": optional: true - "@vitest/browser": + "@vitest/browser-playwright": + optional: true + "@vitest/browser-preview": + optional: true + "@vitest/browser-webdriverio": optional: true "@vitest/ui": optional: true @@ -14330,7 +14390,7 @@ __metadata: optional: true bin: vitest: vitest.mjs - checksum: 10c0/5bf53ede3ae6a0e08956d72dab279ae90503f6b5a05298a6a5e6ef47d2fd1ab386aaf48fafa61ed07a0ebfe9e371772f1ccbe5c258dd765206a8218bf2eb79eb + checksum: 10c0/11232e3f8847a1b96c51d8d8dc60b9c629cd8663ba53a455f0edcbee58a6fc2162754c590b45bc07ad25a065e1602680d591d01f273c0c0146fe52caddc51a8b languageName: node linkType: hard @@ -14798,7 +14858,7 @@ __metadata: languageName: node linkType: hard -"ws@npm:^8.12.1, ws@npm:^8.18.0, ws@npm:^8.18.2, ws@npm:^8.18.3": +"ws@npm:^8.12.1, ws@npm:^8.18.0, ws@npm:^8.18.3": version: 8.18.3 resolution: "ws@npm:8.18.3" peerDependencies: From 7fced55ce769f263dc5cf4f7c68db3e815125254 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 10:56:12 +0100 Subject: [PATCH 09/31] fix(deps): update dependency pino to v10 (#36357) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- streaming/package.json | 2 +- yarn.lock | 23 ++++++++++++++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/streaming/package.json b/streaming/package.json index 7df035d6e7..677f9ee3d1 100644 --- a/streaming/package.json +++ b/streaming/package.json @@ -24,7 +24,7 @@ "jsdom": "^27.0.0", "pg": "^8.5.0", "pg-connection-string": "^2.6.0", - "pino": "^9.0.0", + "pino": "^10.0.0", "pino-http": "^10.0.0", "prom-client": "^15.0.0", "uuid": "^13.0.0", diff --git a/yarn.lock b/yarn.lock index 6bf5e52574..05911f3826 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2987,7 +2987,7 @@ __metadata: jsdom: "npm:^27.0.0" pg: "npm:^8.5.0" pg-connection-string: "npm:^2.6.0" - pino: "npm:^9.0.0" + pino: "npm:^10.0.0" pino-http: "npm:^10.0.0" pino-pretty: "npm:^13.0.0" prom-client: "npm:^15.0.0" @@ -10630,6 +10630,27 @@ __metadata: languageName: node linkType: hard +"pino@npm:^10.0.0": + version: 10.1.0 + resolution: "pino@npm:10.1.0" + dependencies: + "@pinojs/redact": "npm:^0.4.0" + atomic-sleep: "npm:^1.0.0" + on-exit-leak-free: "npm:^2.1.0" + pino-abstract-transport: "npm:^2.0.0" + pino-std-serializers: "npm:^7.0.0" + process-warning: "npm:^5.0.0" + quick-format-unescaped: "npm:^4.0.3" + real-require: "npm:^0.2.0" + safe-stable-stringify: "npm:^2.3.1" + sonic-boom: "npm:^4.0.1" + thread-stream: "npm:^3.0.0" + bin: + pino: bin.js + checksum: 10c0/49c1dd80d5f99f02bde1acf2f60cef7686948a937f751f6cb368c2868c7e82e54aeabac63a34587e16019965cbf0eb6e609edf92c439a98a0a4fcb0add277eaf + languageName: node + linkType: hard + "pino@npm:^9.0.0": version: 9.14.0 resolution: "pino@npm:9.14.0" From 84e351cc3a69452c88ccd1a13007fc4cc8ea2584 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 11:21:27 +0100 Subject: [PATCH 10/31] chore(deps): update dependency shoulda-matchers to v7 (#36680) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Gemfile.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index a8b2ad03cd..f629a773eb 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -803,8 +803,8 @@ GEM activerecord (>= 4.0.0) railties (>= 4.0.0) securerandom (0.4.1) - shoulda-matchers (6.5.0) - activesupport (>= 5.2.0) + shoulda-matchers (7.0.1) + activesupport (>= 7.1) sidekiq (8.0.9) connection_pool (>= 2.5.0) json (>= 2.9.0) @@ -883,7 +883,7 @@ GEM unicode-display_width (3.2.0) unicode-emoji (~> 4.1) unicode-emoji (4.1.0) - uri (1.0.4) + uri (1.1.1) useragent (0.16.11) validate_url (1.0.15) activemodel (>= 3.0.0) From bb084da1f5c67ac98af79ac72a560f752aac9dfb Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 10:28:30 +0000 Subject: [PATCH 11/31] fix(deps): update dependency pino-http to v11 (#36359) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- streaming/package.json | 2 +- yarn.lock | 65 ++++++------------------------------------ 2 files changed, 10 insertions(+), 57 deletions(-) diff --git a/streaming/package.json b/streaming/package.json index 677f9ee3d1..e64aeed4be 100644 --- a/streaming/package.json +++ b/streaming/package.json @@ -25,7 +25,7 @@ "pg": "^8.5.0", "pg-connection-string": "^2.6.0", "pino": "^10.0.0", - "pino-http": "^10.0.0", + "pino-http": "^11.0.0", "prom-client": "^15.0.0", "uuid": "^13.0.0", "ws": "^8.12.1" diff --git a/yarn.lock b/yarn.lock index 05911f3826..d0964d1308 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2752,31 +2752,14 @@ __metadata: languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0": - version: 1.5.0 - resolution: "@jridgewell/sourcemap-codec@npm:1.5.0" - checksum: 10c0/2eb864f276eb1096c3c11da3e9bb518f6d9fc0023c78344cdc037abadc725172c70314bdb360f2d4b7bffec7f5d657ce006816bc5d4ecb35e61b66132db00c18 - languageName: node - linkType: hard - -"@jridgewell/sourcemap-codec@npm:^1.5.5": +"@jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0, @jridgewell/sourcemap-codec@npm:^1.5.5": version: 1.5.5 resolution: "@jridgewell/sourcemap-codec@npm:1.5.5" checksum: 10c0/f9e538f302b63c0ebc06eecb1dd9918dd4289ed36147a0ddce35d6ea4d7ebbda243cda7b2213b6a5e1d8087a298d5cf630fb2bd39329cdecb82017023f6081a0 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.28": - version: 0.3.29 - resolution: "@jridgewell/trace-mapping@npm:0.3.29" - dependencies: - "@jridgewell/resolve-uri": "npm:^3.1.0" - "@jridgewell/sourcemap-codec": "npm:^1.4.14" - checksum: 10c0/fb547ba31658c4d74eb17e7389f4908bf7c44cef47acb4c5baa57289daf68e6fe53c639f41f751b3923aca67010501264f70e7b49978ad1f040294b22c37b333 - languageName: node - linkType: hard - -"@jridgewell/trace-mapping@npm:^0.3.31": +"@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.28, @jridgewell/trace-mapping@npm:^0.3.31": version: 0.3.31 resolution: "@jridgewell/trace-mapping@npm:0.3.31" dependencies: @@ -2988,7 +2971,7 @@ __metadata: pg: "npm:^8.5.0" pg-connection-string: "npm:^2.6.0" pino: "npm:^10.0.0" - pino-http: "npm:^10.0.0" + pino-http: "npm:^11.0.0" pino-pretty: "npm:^13.0.0" prom-client: "npm:^15.0.0" typescript: "npm:~5.9.0" @@ -9559,16 +9542,7 @@ __metadata: languageName: node linkType: hard -"magic-string@npm:^0.30.0, magic-string@npm:^0.30.17, magic-string@npm:~0.30.11": - version: 0.30.17 - resolution: "magic-string@npm:0.30.17" - dependencies: - "@jridgewell/sourcemap-codec": "npm:^1.5.0" - checksum: 10c0/16826e415d04b88378f200fe022b53e638e3838b9e496edda6c0e086d7753a44a6ed187adc72d19f3623810589bf139af1a315541cd6a26ae0771a0193eaf7b8 - languageName: node - linkType: hard - -"magic-string@npm:^0.30.19": +"magic-string@npm:^0.30.0, magic-string@npm:^0.30.17, magic-string@npm:^0.30.19, magic-string@npm:~0.30.11": version: 0.30.21 resolution: "magic-string@npm:0.30.21" dependencies: @@ -10588,15 +10562,15 @@ __metadata: languageName: node linkType: hard -"pino-http@npm:^10.0.0": - version: 10.5.0 - resolution: "pino-http@npm:10.5.0" +"pino-http@npm:^11.0.0": + version: 11.0.0 + resolution: "pino-http@npm:11.0.0" dependencies: get-caller-file: "npm:^2.0.5" - pino: "npm:^9.0.0" + pino: "npm:^10.0.0" pino-std-serializers: "npm:^7.0.0" process-warning: "npm:^5.0.0" - checksum: 10c0/17597d653a4088f7faed4d58500a5ef51d4d05247307696760006313c33c1d23177af98fb902e15b8e2cd92d81306c884673f841ba5b9bf0c064802f3c0bd775 + checksum: 10c0/75110c7a7f1b1c4eadfbff3b87599ef9d100c20c3ffd19541f0cb37cd11285a3f221bb90d33df0772ed94a3f7d5b2007bd7365c5f5525cff2178d4deef140ee5 languageName: node linkType: hard @@ -10651,27 +10625,6 @@ __metadata: languageName: node linkType: hard -"pino@npm:^9.0.0": - version: 9.14.0 - resolution: "pino@npm:9.14.0" - dependencies: - "@pinojs/redact": "npm:^0.4.0" - atomic-sleep: "npm:^1.0.0" - on-exit-leak-free: "npm:^2.1.0" - pino-abstract-transport: "npm:^2.0.0" - pino-std-serializers: "npm:^7.0.0" - process-warning: "npm:^5.0.0" - quick-format-unescaped: "npm:^4.0.3" - real-require: "npm:^0.2.0" - safe-stable-stringify: "npm:^2.3.1" - sonic-boom: "npm:^4.0.1" - thread-stream: "npm:^3.0.0" - bin: - pino: bin.js - checksum: 10c0/9a10d9bf820a585eae9bc270fb4e55c895e48280d54adbbb4063ec061694b22d8809c80203cf5fe9f920a54c832b0b8dfb67cb28a04baa13abebaf261a9c9f3e - languageName: node - linkType: hard - "pixelmatch@npm:7.1.0": version: 7.1.0 resolution: "pixelmatch@npm:7.1.0" From b999a626e5d3da99ce6bf50cf12dd13fb743c1dd Mon Sep 17 00:00:00 2001 From: Jeong Arm Date: Tue, 4 Nov 2025 19:35:50 +0900 Subject: [PATCH 12/31] Reverse 'Hide/Show all' eye icon for thread view (#22301) --- app/javascript/mastodon/features/status/index.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/javascript/mastodon/features/status/index.jsx b/app/javascript/mastodon/features/status/index.jsx index bcccc11044..99ef106b8c 100644 --- a/app/javascript/mastodon/features/status/index.jsx +++ b/app/javascript/mastodon/features/status/index.jsx @@ -592,7 +592,7 @@ class Status extends ImmutablePureComponent { showBackButton multiColumn={multiColumn} extraButton={( - + )} /> From 6c176e56eed6a734b06b1b734f5e98d8d485b260 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 11:36:04 +0100 Subject: [PATCH 13/31] chore(deps): update dependency opentelemetry-instrumentation-pg to '~> 0.33.0' (#36701) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Gemfile | 2 +- Gemfile.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Gemfile b/Gemfile index f5b1753aa6..91e2655886 100644 --- a/Gemfile +++ b/Gemfile @@ -114,7 +114,7 @@ group :opentelemetry do gem 'opentelemetry-instrumentation-http', '~> 0.27.0', require: false gem 'opentelemetry-instrumentation-http_client', '~> 0.26.0', require: false gem 'opentelemetry-instrumentation-net_http', '~> 0.26.0', require: false - gem 'opentelemetry-instrumentation-pg', '~> 0.32.0', require: false + gem 'opentelemetry-instrumentation-pg', '~> 0.33.0', require: false gem 'opentelemetry-instrumentation-rack', '~> 0.29.0', require: false gem 'opentelemetry-instrumentation-rails', '~> 0.39.0', require: false gem 'opentelemetry-instrumentation-redis', '~> 0.28.0', require: false diff --git a/Gemfile.lock b/Gemfile.lock index f629a773eb..a798595fa7 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -512,9 +512,9 @@ GEM opentelemetry-common (~> 0.20) opentelemetry-sdk (~> 1.10) opentelemetry-semantic_conventions - opentelemetry-helpers-sql (0.2.0) + opentelemetry-helpers-sql (0.3.0) opentelemetry-api (~> 1.7) - opentelemetry-helpers-sql-obfuscation (0.4.0) + opentelemetry-helpers-sql-obfuscation (0.5.0) opentelemetry-common (~> 0.21) opentelemetry-instrumentation-action_mailer (0.6.1) opentelemetry-instrumentation-active_support (~> 0.10) @@ -548,7 +548,7 @@ GEM opentelemetry-instrumentation-base (~> 0.25) opentelemetry-instrumentation-net_http (0.26.0) opentelemetry-instrumentation-base (~> 0.25) - opentelemetry-instrumentation-pg (0.32.0) + opentelemetry-instrumentation-pg (0.33.0) opentelemetry-helpers-sql opentelemetry-helpers-sql-obfuscation opentelemetry-instrumentation-base (~> 0.25) @@ -1018,7 +1018,7 @@ DEPENDENCIES opentelemetry-instrumentation-http (~> 0.27.0) opentelemetry-instrumentation-http_client (~> 0.26.0) opentelemetry-instrumentation-net_http (~> 0.26.0) - opentelemetry-instrumentation-pg (~> 0.32.0) + opentelemetry-instrumentation-pg (~> 0.33.0) opentelemetry-instrumentation-rack (~> 0.29.0) opentelemetry-instrumentation-rails (~> 0.39.0) opentelemetry-instrumentation-redis (~> 0.28.0) From b5c550ff0b6a84c84bf38995a5725a3eff3cb290 Mon Sep 17 00:00:00 2001 From: Claire Date: Tue, 4 Nov 2025 11:37:43 +0100 Subject: [PATCH 14/31] Remove option to disable access to local topic feeds for logged-in users (#36703) --- app/javascript/mastodon/initial_state.ts | 2 +- app/models/form/admin_settings.rb | 3 ++- app/views/admin/settings/discovery/show.html.haml | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/app/javascript/mastodon/initial_state.ts b/app/javascript/mastodon/initial_state.ts index 83c6c35e1b..86d36468f9 100644 --- a/app/javascript/mastodon/initial_state.ts +++ b/app/javascript/mastodon/initial_state.ts @@ -35,7 +35,7 @@ interface InitialStateMeta { streaming_api_base_url: string; local_live_feed_access: 'public' | 'authenticated' | 'disabled'; remote_live_feed_access: 'public' | 'authenticated' | 'disabled'; - local_topic_feed_access: 'public' | 'authenticated' | 'disabled'; + local_topic_feed_access: 'public' | 'authenticated'; remote_topic_feed_access: 'public' | 'authenticated' | 'disabled'; title: string; show_trends: boolean; diff --git a/app/models/form/admin_settings.rb b/app/models/form/admin_settings.rb index 926995f02e..af4ad38ae9 100644 --- a/app/models/form/admin_settings.rb +++ b/app/models/form/admin_settings.rb @@ -87,6 +87,7 @@ class Form::AdminSettings DOMAIN_BLOCK_AUDIENCES = %w(disabled users all).freeze REGISTRATION_MODES = %w(open approved none).freeze FEED_ACCESS_MODES = %w(public authenticated disabled).freeze + ALTERNATE_FEED_ACCESS_MODES = %w(public authenticated).freeze LANDING_PAGE = %w(trends about local_feed).freeze attr_accessor(*KEYS) @@ -99,7 +100,7 @@ class Form::AdminSettings validates :show_domain_blocks_rationale, inclusion: { in: DOMAIN_BLOCK_AUDIENCES }, if: -> { defined?(@show_domain_blocks_rationale) } validates :local_live_feed_access, inclusion: { in: FEED_ACCESS_MODES }, if: -> { defined?(@local_live_feed_access) } validates :remote_live_feed_access, inclusion: { in: FEED_ACCESS_MODES }, if: -> { defined?(@remote_live_feed_access) } - validates :local_topic_feed_access, inclusion: { in: FEED_ACCESS_MODES }, if: -> { defined?(@local_topic_feed_access) } + validates :local_topic_feed_access, inclusion: { in: ALTERNATE_FEED_ACCESS_MODES }, if: -> { defined?(@local_topic_feed_access) } validates :remote_topic_feed_access, inclusion: { in: FEED_ACCESS_MODES }, if: -> { defined?(@remote_topic_feed_access) } validates :media_cache_retention_period, :content_cache_retention_period, :backups_retention_period, numericality: { only_integer: true }, allow_blank: true, if: -> { defined?(@media_cache_retention_period) || defined?(@content_cache_retention_period) || defined?(@backups_retention_period) } validates :min_age, numericality: { only_integer: true }, allow_blank: true, if: -> { defined?(@min_age) } diff --git a/app/views/admin/settings/discovery/show.html.haml b/app/views/admin/settings/discovery/show.html.haml index 1272419c33..04c242597d 100644 --- a/app/views/admin/settings/discovery/show.html.haml +++ b/app/views/admin/settings/discovery/show.html.haml @@ -43,7 +43,7 @@ .fields-row .fields-row__column.fields-row__column-6.fields-group = f.input :local_topic_feed_access, - collection: f.object.class::FEED_ACCESS_MODES, + collection: f.object.class::ALTERNATE_FEED_ACCESS_MODES, include_blank: false, label_method: ->(mode) { I18n.t("admin.settings.feed_access.modes.#{mode}") }, wrapper: :with_label From 3a54d56fbd066e5b1bb56543fd7e19d874788015 Mon Sep 17 00:00:00 2001 From: Claire Date: Tue, 4 Nov 2025 12:01:25 +0100 Subject: [PATCH 15/31] Fix quote dropdown menu item in detailed status view (#36704) --- app/javascript/mastodon/features/status/index.jsx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app/javascript/mastodon/features/status/index.jsx b/app/javascript/mastodon/features/status/index.jsx index 99ef106b8c..7d0bce8666 100644 --- a/app/javascript/mastodon/features/status/index.jsx +++ b/app/javascript/mastodon/features/status/index.jsx @@ -299,6 +299,12 @@ class Status extends ImmutablePureComponent { dispatch(openModal({ modalType: 'COMPOSE_PRIVACY', modalProps: { statusId, onChange: handleChange } })); }; + handleQuote = (status) => { + const { dispatch } = this.props; + + dispatch(quoteComposeById(status.get('id'))); + }; + handleEditClick = (status) => { const { dispatch, askReplyConfirmation } = this.props; @@ -625,6 +631,7 @@ class Status extends ImmutablePureComponent { onDelete={this.handleDeleteClick} onRevokeQuote={this.handleRevokeQuoteClick} onQuotePolicyChange={this.handleQuotePolicyChange} + onQuote={this.handleQuote} onEdit={this.handleEditClick} onDirect={this.handleDirectClick} onMention={this.handleMentionClick} From 13457111d5f59f405cfd44c184683b901b95158a Mon Sep 17 00:00:00 2001 From: Echo Date: Tue, 4 Nov 2025 14:37:34 +0100 Subject: [PATCH 16/31] Remove announcement margin when in Advanced Web Interface (#36714) --- app/javascript/styles/mastodon/components.scss | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/javascript/styles/mastodon/components.scss b/app/javascript/styles/mastodon/components.scss index bd09f3b8b0..5f71676ee4 100644 --- a/app/javascript/styles/mastodon/components.scss +++ b/app/javascript/styles/mastodon/components.scss @@ -8936,6 +8936,10 @@ noscript { position: relative; overflow: hidden; + .layout-multiple-columns & { + width: 100%; + } + @media screen and (max-width: (124px + 300px)) { width: 100%; } From 90d4b3b943f1111ca88c7c48845cffac58a7ee38 Mon Sep 17 00:00:00 2001 From: Echo Date: Tue, 4 Nov 2025 14:58:35 +0100 Subject: [PATCH 17/31] Refactor: Media Modal (#36673) --- .../mastodon/containers/media_container.jsx | 2 +- .../features/ui/components/media_modal.jsx | 296 -------------- .../features/ui/components/media_modal.tsx | 363 ++++++++++++++++++ .../features/ui/components/modal_root.jsx | 2 +- .../styles/mastodon/components.scss | 8 + package.json | 2 - yarn.lock | 103 +---- 7 files changed, 376 insertions(+), 400 deletions(-) delete mode 100644 app/javascript/mastodon/features/ui/components/media_modal.jsx create mode 100644 app/javascript/mastodon/features/ui/components/media_modal.tsx diff --git a/app/javascript/mastodon/containers/media_container.jsx b/app/javascript/mastodon/containers/media_container.jsx index a4f79fcf94..08e106e5d8 100644 --- a/app/javascript/mastodon/containers/media_container.jsx +++ b/app/javascript/mastodon/containers/media_container.jsx @@ -10,7 +10,7 @@ import ModalRoot from 'mastodon/components/modal_root'; import { Poll } from 'mastodon/components/poll'; import { Audio } from 'mastodon/features/audio'; import Card from 'mastodon/features/status/components/card'; -import MediaModal from 'mastodon/features/ui/components/media_modal'; +import { MediaModal } from 'mastodon/features/ui/components/media_modal'; import { Video } from 'mastodon/features/video'; import { IntlProvider } from 'mastodon/locales'; import { createPollFromServerJSON } from 'mastodon/models/poll'; diff --git a/app/javascript/mastodon/features/ui/components/media_modal.jsx b/app/javascript/mastodon/features/ui/components/media_modal.jsx deleted file mode 100644 index 2ce13bf1d3..0000000000 --- a/app/javascript/mastodon/features/ui/components/media_modal.jsx +++ /dev/null @@ -1,296 +0,0 @@ -import PropTypes from 'prop-types'; - -import { defineMessages, injectIntl } from 'react-intl'; - -import classNames from 'classnames'; - -import ImmutablePropTypes from 'react-immutable-proptypes'; -import ImmutablePureComponent from 'react-immutable-pure-component'; - -import ReactSwipeableViews from 'react-swipeable-views'; - -import ChevronLeftIcon from '@/material-icons/400-24px/chevron_left.svg?react'; -import ChevronRightIcon from '@/material-icons/400-24px/chevron_right.svg?react'; -import CloseIcon from '@/material-icons/400-24px/close.svg?react'; -import FitScreenIcon from '@/material-icons/400-24px/fit_screen.svg?react'; -import ActualSizeIcon from '@/svg-icons/actual_size.svg?react'; -import { getAverageFromBlurhash } from 'mastodon/blurhash'; -import { GIFV } from 'mastodon/components/gifv'; -import { Icon } from 'mastodon/components/icon'; -import { IconButton } from 'mastodon/components/icon_button'; -import { Footer } from 'mastodon/features/picture_in_picture/components/footer'; -import { Video } from 'mastodon/features/video'; -import { disableSwiping } from 'mastodon/initial_state'; - -import { ZoomableImage } from './zoomable_image'; - -const messages = defineMessages({ - close: { id: 'lightbox.close', defaultMessage: 'Close' }, - previous: { id: 'lightbox.previous', defaultMessage: 'Previous' }, - next: { id: 'lightbox.next', defaultMessage: 'Next' }, - zoomIn: { id: 'lightbox.zoom_in', defaultMessage: 'Zoom to actual size' }, - zoomOut: { id: 'lightbox.zoom_out', defaultMessage: 'Zoom to fit' }, -}); - -class MediaModal extends ImmutablePureComponent { - - static propTypes = { - media: ImmutablePropTypes.list.isRequired, - statusId: PropTypes.string, - lang: PropTypes.string, - index: PropTypes.number.isRequired, - onClose: PropTypes.func.isRequired, - intl: PropTypes.object.isRequired, - onChangeBackgroundColor: PropTypes.func.isRequired, - currentTime: PropTypes.number, - autoPlay: PropTypes.bool, - volume: PropTypes.number, - }; - - state = { - index: null, - navigationHidden: false, - zoomedIn: false, - }; - - handleZoomClick = () => { - this.setState(prevState => ({ - zoomedIn: !prevState.zoomedIn, - })); - }; - - handleZoomChange = (zoomedIn) => { - this.setState({ - zoomedIn, - }); - }; - - handleSwipe = (index) => { - this.setState({ - index: index % this.props.media.size, - zoomedIn: false, - }); - }; - - handleTransitionEnd = () => { - this.setState({ - zoomedIn: false, - }); - }; - - handleNextClick = () => { - this.setState({ - index: (this.getIndex() + 1) % this.props.media.size, - zoomedIn: false, - }); - }; - - handlePrevClick = () => { - this.setState({ - index: (this.props.media.size + this.getIndex() - 1) % this.props.media.size, - zoomedIn: false, - }); - }; - - handleChangeIndex = (e) => { - const index = Number(e.currentTarget.getAttribute('data-index')); - - this.setState({ - index: index % this.props.media.size, - zoomedIn: false, - }); - }; - - handleKeyDown = (e) => { - switch(e.key) { - case 'ArrowLeft': - this.handlePrevClick(); - e.preventDefault(); - e.stopPropagation(); - break; - case 'ArrowRight': - this.handleNextClick(); - e.preventDefault(); - e.stopPropagation(); - break; - } - }; - - componentDidMount () { - window.addEventListener('keydown', this.handleKeyDown, false); - - this._sendBackgroundColor(); - } - - componentDidUpdate (prevProps, prevState) { - if (prevState.index !== this.state.index) { - this._sendBackgroundColor(); - } - } - - _sendBackgroundColor () { - const { media, onChangeBackgroundColor } = this.props; - const index = this.getIndex(); - const blurhash = media.getIn([index, 'blurhash']); - - if (blurhash) { - const backgroundColor = getAverageFromBlurhash(blurhash); - onChangeBackgroundColor(backgroundColor); - } - } - - componentWillUnmount () { - window.removeEventListener('keydown', this.handleKeyDown); - - this.props.onChangeBackgroundColor(null); - } - - getIndex () { - return this.state.index !== null ? this.state.index : this.props.index; - } - - handleToggleNavigation = () => { - this.setState(prevState => ({ - navigationHidden: !prevState.navigationHidden, - })); - }; - - setRef = c => { - this.setState({ - viewportWidth: c?.clientWidth, - viewportHeight: c?.clientHeight, - }); - }; - - render () { - const { media, statusId, lang, intl, onClose } = this.props; - const { navigationHidden, zoomedIn, viewportWidth, viewportHeight } = this.state; - - const index = this.getIndex(); - - const leftNav = media.size > 1 && ; - const rightNav = media.size > 1 && ; - - const content = media.map((image, idx) => { - const width = image.getIn(['meta', 'original', 'width']) || null; - const height = image.getIn(['meta', 'original', 'height']) || null; - const description = image.getIn(['translation', 'description']) || image.get('description'); - - if (image.get('type') === 'image') { - return ( - - ); - } else if (image.get('type') === 'video') { - const { currentTime, autoPlay, volume } = this.props; - - return ( -