Skip to content

v3.39.0

Compare
Choose a tag to compare
@denolfe denolfe released this 22 May 14:23
· 466 commits to main since this release
c1c0db3

v3.39.0 (2025-05-22)

🚀 Features

📁 Folders (#10030) (00667fa)

Folders allow you to organize your documents in a more manageable way. Now you can enable folders on a per-collection basis and from there start adding folders from within the admin panel (or via the API). Once you have folders enabled you can then start organizing. You can create folders and store documents across multiple collection types and then view them either in the collection "By Folder" or in the global "Browse by Folder" view.

CleanShot.2025-05-21.at.21.49.16.mp4
  • show fields inside groups as separate columns in the list view (#7355) (2a41d3f)
  • plugin-form-builder: add new date field (#12416) (4dfb2d2)
  • richtext-lexical: add TextStateFeature (allows applying styles such as color and background color to text) (#9667) (fc83823)
  • ui: extracts relationship input for external use (#12339) (88769c8)

🐛 Bug Fixes

  • auto inject req.user into query preset constraints (#12461) (22b1858)
  • telemetry in opennext cloudflare (#12327) (2ab8e2e)
  • prevent resizing of original file with withoutEnlargement on update (#12291) (1235a18)
  • incorrect environment file loading (#12360) (1425269)
  • sanitize duplicate blocks (#12440) (5855f3a)
  • orderable with groups and tabs requires migration (#12422) (529bfe1)
  • respect hidden: true for virtual fields that have reference to a relationship field (#12219) (1f6efe9)
  • cpa: ensure it always installs the latest version of the templates (#12488) (898e97e)
  • db-*: ensure consistent sorting even when sorting on non-unique fields or no sort parameters at all (#12447) (72ab319)
  • db-mongodb: remove limit from nested querying (#12464) (230128b)
  • db-postgres: allow the same block slug in different places with a different localized value (#12414) (219fd01)
  • plugin-import-export: add translations for all UI elements and fields (#12449) (3127d6a)
  • plugin-multi-tenant: multi-locale tenant select label (#12444) (4fe3423)
  • plugin-multi-tenant: add missing translation for Assigned Tenant field (#12448) (e8c2b15)
  • plugin-seo: fix genImageResponse result parsing (#12301) (cead312)
  • richtext-lexical: support inline block types in strict mode for JSXConvertersFunction type (#12478) (8596ac5)
  • templates: make images visible in live preview if it is not running on port 3000 (#12432) (d4899b8)
  • ui: set gap to 0 in sort column buttons to remove unneeded spacing (#12481) (c772a32)
  • ui: render missing group children fields for unnamed group (#12433) (6fb2beb)
  • ui: req not being threaded through to views (#12213) (bd6ee31)

⚡ Performance

📚 Documentation

  • update rich text to HTML conversion documentation (#12465) (c701dd4)
  • fix API capitalization typo in virtual fields documentation (#12477) (324daff)

🧪 Tests

  • add test for sorting by a virtual field with a reference (#12351) (81d333f)

📝 Templates

🏡 Chores

  • simplifies buildColumnState functions (#12496) (8142a00)
  • ignore .idea run configuration templates (#12439) (23f4204)
  • fix all lint errors and add mechanisms to prevent them from appearing again (#12401) (2a929cf)
  • add ignores .next folder in eslint config for templates template (#12423) (e395a0a)
  • drizzle: fix lint errors in @payloadcms/drizzle (#12428) (38029cd)
  • live-preview: load schemaJSON from proper client config in integration tests (#12167) (08a3dfb)

🤝 Contributors