v3.17.0

payloadcms/payloadv3.17.0Jan 13, 2025by denolfe

AI Summary

A major update focusing on rich text editor improvements, including a new paragraph button and fixes for table selection, alongside REST API logic consolidation and Next.js integration fixes.

Key Highlights

  • Added new paragraph button below the rich text editor
  • Fixed table selection and scrollable table bugs via lexical upgrade
  • Consolidated logic in update and updateByID operations
  • Added ability to disable cache tags for admin thumbnails

New Features

  • Delete scheduled published events
  • Add ability to disable cache tags for admin thumbnails
  • Consolidates logic in update and updateByID operations
  • Add new paragraph button below the editor
  • Respect imageURL for blocks and inline blocks
  • Upgrade lexical from 0.20.0 to 0.21.0

Full Release Notes

## [v3.17.0](https://github.com/payloadcms/payload/compare/v3.16.0...v3.17.0) (2025-01-13)

## Important

Please upgrade to [3.17.1](https://github.com/payloadcms/payload/releases/tag/v3.17.1). In 3.17.0, you may encounter richtext-lexical dependency checker errors during development.

### 🚀 Features

* delete scheduled published events ([#10504](https://github.com/payloadcms/payload/issues/10504)) ([f95d6ba](https://github.com/payloadcms/payload/commit/f95d6ba))
* add ability to disable cache tags for admin thumbnails ([#10319](https://github.com/payloadcms/payload/issues/10319)) ([6b051bd](https://github.com/payloadcms/payload/commit/6b051bd))
* consolidates logic in update and updateByID operations ([#9998](https://github.com/payloadcms/payload/issues/9998)) ([690e99f](https://github.com/payloadcms/payload/commit/690e99f))
* **richtext-lexical:** add new paragraph button below the editor ([#10530](https://github.com/payloadcms/payload/issues/10530)) ([6757f7d](https://github.com/payloadcms/payload/commit/6757f7d))
* **richtext-lexical:** respect imageURL for blocks and inline blocks ([#10532](https://github.com/payloadcms/payload/issues/10532)) ([ab564d3](https://github.com/payloadcms/payload/commit/ab564d3))
* **richtext-lexical:** upgrade lexical from 0.20.0 to 0.21.0. Fixes table selection & scrollable table bugs ([#10501](https://github.com/payloadcms/payload/issues/10501)) ([04733f0](https://github.com/payloadcms/payload/commit/04733f0))

### 🐛 Bug Fixes

* respect res header immutability ([#10554](https://github.com/payloadcms/payload/issues/10554)) ([5cfb1da](https://github.com/payloadcms/payload/commit/5cfb1da))
* better messaging when no arg passed to payload cli ([#10550](https://github.com/payloadcms/payload/issues/10550)) ([9278eec](https://github.com/payloadcms/payload/commit/9278eec))
* aligns first render for hydration of dates in list view ([#10541](https://github.com/payloadcms/payload/issues/10541)) ([cc13ae7](https://github.com/payloadcms/payload/commit/cc13ae7))
* rest api with Next.js `basePath` option ([#10535](https://github.com/payloadcms/payload/issues/10535)) ([04a8083](https://github.com/payloadcms/payload/commit/04a8083))
* localized tabs with empty data and an array field inside lead to crash in `afterChange` ([#10410](https://github.com/payloadcms/payload/issues/10410)) ([1af7d87](https://github.com/payloadcms/payload/commit/1af7d87))
* **cpa:** proper debug logging ([#10549](https://github.com/payloadcms/payload/issues/10549)) ([9004205](https://github.com/payloadcms/payload/commit/9004205))
* **next:** ensures req.locale is populated before running access control ([#10533](https://github.com/payloadcms/payload/issues/10533)) ([afcc970](https://github.com/payloadcms/payload/commit/afcc970))
* **richtext-lexical:** error when deleting links ([#10557](https://github.com/payloadcms/payload/issues/10557)) ([9631060](https://github.com/payloadcms/payload/commit/9631060))
* **richtext-lexical:** insert paragraph at end button overlaps floating link toolbar ([#10552](https://github.com/payloadcms/payload/issues/10552)) ([6ada450](https://github.com/payloadcms/payload/commit/6ada450))
* **richtext-lexical:** remove alteration of lexical text format constant ([#10415](https://github.com/payloadcms/payload/issues/10415)) ([69fac59](https://github.com/payloadcms/payload/commit/69fac59))
* **richtext-lexical:** combine 2 normalizeMarkdown implementations and fix code block regex ([#10470](https://github.com/payloadcms/payload/issues/10470)) ([0252681](https://github.com/payloadcms/payload/commit/0252681))
* **richtext-lexical:** editor placeholder had incorrect padding set for small viewports ([#10531](https://github.com/payloadcms/payload/issues/10531)) ([26711a7](https://github.com/payloadcms/payload/commit/26711a7))
* **richtext-lexical:** adds support for localized placeholder ([#10523](https://github.com/payloadcms/payload/issues/10523)) ([dc6d79e](https://github.com/payloadcms/payload/commit/dc6d79e))
* **richtext-lexical:** lexical editor behind a drawer was incorrectly registered as parent editor of lexical editor within drawer ([#10502](https://github.com/payloadcms/payload/issues/10502)) ([fd96a9a](https://github.com/payloadcms/payload/commit/fd96a9a))
* **translations:** update etTranslations type to DefaultTranslationsObject ([#10358](https://github.com/payloadcms/payload/issues/10358)) ([2e0595b](https://github.com/payloadcms/payload/commit/2e0595b))
* **ui:** reset pagination when typing in WhereBuilder select menu ([#10551](https://github.com/payloadcms/payload/issues/10551)) ([a3ef5ee](https://github.com/payloadcms/payload/commit/a3ef5ee))
* **ui:** passes serverProps to custom label components within table columns ([#10547](https://github.com/payloadcms/payload/issues/10547)) ([6848cf4](https://github.com/payloadcms/payload/commit/6848cf4))
* **ui:** scheduled publish not showing related events in postgres ([#10481](https://github.com/payloadcms/payload/issues/10481)) ([c9584a9](https://github.com/payloadcms/payload/commit/c9584a9))
* **ui:** table custom label missing client field props ([#10540](https://github.com/payloadcms/payload/issues/10540)) ([415fbf1](https://github.com/payloadcms/payload/commit/415fbf1))
* **ui:** fixed issue with updatedAt timestamps not updating in the UI when drafts are updated ([#10503](https://github.com/payloadcms/payload/issues/10503)) ([082c4f0](https://github.com/payloadcms/payload/commit/082c4f0))

### 🛠 Refactors

* improve error logging during onInit and website template seed ([#10528](https://github.com/payloadcms/payload/issues/10528)) ([142c504](https://github.com/payloadcms/payload/commit/142c504))
* **next:** cleans up initPage through initReq overrides and consolidated return types ([#10449](https://github.com/payloadcms/payload/issues/10449)) ([c850bd4](https://github.com/payloadcms/payload/commit/c850bd4))

### 📚 Documentation

* improves grammar in vercel postgres usage note ([#10365](https://github.com/payloadcms/payload/issues/10365)) ([5043a8a](https://github.com/payloadcms/payload/commit/5043a8a))
* updates docs to reflect correct array hook usage ([#10546](https://github.com/payloadcms/payload/issues/10546)) ([43b40f0](https://github.com/payloadcms/payload/commit/43b40f0))

### 📝 Templates

* fix issue with shadcn utilities alias across website template and localization example ([#10507](https://github.com/payloadcms/payload/issues/10507)) ([d20dc58](https://github.com/payloadcms/payload/commit/d20dc58))
* bump for v3.16.0 ([#10499](https://github.com/payloadcms/payload/issues/10499)) ([a49f782](https://github.com/payloadcms/payload/commit/a49f782))

### ⚙️ CI

* fix e2e test suite retries not working ([#10525](https://github.com/payloadcms/payload/issues/10525)) ([9b6cdd0](https://github.com/payloadcms/payload/commit/9b6cdd0))

### 🏡 Chores

* **cpa:** fixes typo in messages.ts ([#10342](https://github.com/payloadcms/payload/issues/10342)) ([2ae26d3](https://github.com/payloadcms/payload/commit/2ae26d3))

### 🤝 Contributors

- Alessio Gravili (@AlessioGr)
- Elliot DeNolf (@denolfe)
- Germán Jabloñski (@GermanJablo)
- Dan Ribbens (@DanRibbens)
- Anthony Mifsud (@amifsud02)
- Ben Löffel (@benloeffel)
- Jacob Fletcher (@jacobsfletch)
- Tristan (@tristankrass)
- Jarrod Flesch (@JarrodMFlesch)
- Paul (@paulpopus)
- Simon Vreman (@SimonVreman)
- Amelia (@LimChorngUan)
- Sasha (@r1tsuu)
- Said Akhrarov (@akhrarovsaid)