v5.46.0
daijro/camoufoxv5.46.0May 13, 2026by internal-releases[bot]
AI Summary
Introduces UI improvements like a collapsible trial banner and preview support for media, replaces the sendmail email provider with nodemailer, and updates CI runners to Node 24.
Key Highlights
- Add preview support to images and videos
- Replace sendmail package with nodemailer
- Add possibility to customize blocks in content-manager
- Mark Strapi v4 as End of Life
New Features
- Close button for the trial banner
- Collapse button for banners
- Preview support for images and videos
- Customizable blocks in content-manager
- Nodemailer integration
Full Release Notes
## 5.46.0 (2026-05-13) ### 🚀 New feature - close button for the trial banner ([3fd5f9fd56](https://github.com/strapi/strapi/commit/3fd5f9fd56)) - adding collapse button ([901465b1e2](https://github.com/strapi/strapi/commit/901465b1e2)) - updating design after Claude comments ([d1cb08f76e](https://github.com/strapi/strapi/commit/d1cb08f76e)) - getting that button to stick while the banner doesn't ([f04fe97a75](https://github.com/strapi/strapi/commit/f04fe97a75)) - add preview support to images and videos ([#25216](https://github.com/strapi/strapi/pull/25216)) - **content-manager:** add possibility to customize blocks ([#22063](https://github.com/strapi/strapi/pull/22063)) - **email:** replace sendmail package with nodemailer in provider ([#25893](https://github.com/strapi/strapi/pull/25893)) ### 🔥 Bug fix - making button float better ([c5396f1c18](https://github.com/strapi/strapi/commit/c5396f1c18)) - using isValid & adding translations ([59498861f7](https://github.com/strapi/strapi/commit/59498861f7)) - auto-expand and scroll to newly added dynamic zone components ([#26044](https://github.com/strapi/strapi/pull/26044)) - keep draft link on x-to-one relations non-dp to dp ([#26179](https://github.com/strapi/strapi/pull/26179)) - long component names overflow in dynamic zone picker ([#26010](https://github.com/strapi/strapi/pull/26010)) - remove await from several telemetry calls to prevent blocking ([#24743](https://github.com/strapi/strapi/pull/24743)) - **admin:** resolve prism is not defined ([#25660](https://github.com/strapi/strapi/pull/25660)) - **admin:** handle 204 no-content response in fetch client ([#25416](https://github.com/strapi/strapi/pull/25416)) - **content-manager:** local-storage was not updated if filters were removed ([#26240](https://github.com/strapi/strapi/pull/26240)) - **content-manager:** skip draft/modified count queries for non-D&P content types ([#26049](https://github.com/strapi/strapi/pull/26049)) - **core/admin:** admin and content api tokens retro-compatibility ([#26313](https://github.com/strapi/strapi/pull/26313)) - **core/core:** validation uses injected strapi instance ([#26211](https://github.com/strapi/strapi/pull/26211)) - **database:** morph typeField wins over same-name fields in populate ([#26120](https://github.com/strapi/strapi/pull/26120)) - **database:** append primary key to ORDER BY for paginated selects ([#26032](https://github.com/strapi/strapi/pull/26032)) - **db:** deterministic schema hash by sorting tables before hashing ([#26202](https://github.com/strapi/strapi/pull/26202)) - **graphql:** isolate root query args per root field ([#26178](https://github.com/strapi/strapi/pull/26178)) - **test:** check button attribute differently ([#26212](https://github.com/strapi/strapi/pull/26212)) - **utils:** throw ValidationError for all invalid query params (not just sort) ([#25894](https://github.com/strapi/strapi/pull/25894)) ### ⚙️ Chore - adding translations for the banner ([e696d94627](https://github.com/strapi/strapi/commit/e696d94627)) - turkish translations for cloud ([#26223](https://github.com/strapi/strapi/pull/26223)) - **.github:** bump CI runners to node 24 ([#26231](https://github.com/strapi/strapi/pull/26231)) - **ai:** ignore .agents/local-skills and .agents/local-state for local only harness ([#26276](https://github.com/strapi/strapi/pull/26276)) - **deps:** bump eslint-plugin-react ([#26227](https://github.com/strapi/strapi/pull/26227)) - **deps:** migrate msw 1.x → 2.13.4 across admin test suites ([#26065](https://github.com/strapi/strapi/pull/26065)) - **deps:** upgrade typedoc to 0.28.19 and related plugins ([#26082](https://github.com/strapi/strapi/pull/26082)) - **security:** mark Strapi v4 as End of Life ([#26162](https://github.com/strapi/strapi/pull/26162)) - **upload:** add concurrentUploadSize config ([#26053](https://github.com/strapi/strapi/pull/26053)) ### ❤️ Thank You - Alanderson Zelindro da Rosa - Andrei L @unrevised6419 - Anslem @ace2016 - Ben Irvin - Christian Dreier - DMehaffy - Florent Baldino @Baldinof - guoyangzhen - Jamie Howard @jhoward1994 - markkaylor - mathildeleg @mathildeleg - Nico André - Nicolò - ozzy @ddoemonn - Rémi de Juvigny @remidej - Simen @Eventyret - Simon Norris