v3.22.0
payloadcms/payloadv3.22.0Feb 7, 2025by denolfe
AI Summary
Adds filtering configuration options for lists and improves the user experience of hasMany text fields. Several bug fixes were also applied to the database adapters and UI components.
Key Highlights
- New filtering configuration option for lists.
- Improved UX for hasMany TextField.
- Fixes for PostgreSQL hasMany autosave and pagination.
- Improved WhereBuilder relationship select menu.
New Features
- Filtering config option for lists
- Improved hasMany TextField UX
- Postgres hasMany autosave fix
- Postgres pagination fix
- WhereBuilder relationship select menu fixes
Full Release Notes
## [v3.22.0](https://github.com/payloadcms/payload/compare/v3.21.0...v3.22.0) (2025-02-07) ### 🚀 Features * **ui:** adds filtering config option and implementation for filtering a… ([#11007](https://github.com/payloadcms/payload/issues/11007)) ([a63a3d0](https://github.com/payloadcms/payload/commit/a63a3d0)) * **ui:** improve hasMany TextField UX ([#10976](https://github.com/payloadcms/payload/issues/10976)) ([d8cfdc7](https://github.com/payloadcms/payload/commit/d8cfdc7)) ### 🐛 Bug Fixes * **db-postgres:** ensure globals have `createdAt`, `updatedAt` and `globalType` fields ([#10938](https://github.com/payloadcms/payload/issues/10938)) ([57143b3](https://github.com/payloadcms/payload/commit/57143b3)) * **db-postgres:** select `hasMany: true` with autosave doesn't work properly ([#11012](https://github.com/payloadcms/payload/issues/11012)) ([3ad56cd](https://github.com/payloadcms/payload/commit/3ad56cd)) * **next:** viewing modified-only diff view containing localized arrays throws error ([#11006](https://github.com/payloadcms/payload/issues/11006)) ([09721d4](https://github.com/payloadcms/payload/commit/09721d4)) * **plugin-multi-tenant:** correctly set doc default value on load ([#11018](https://github.com/payloadcms/payload/issues/11018)) ([f25acb8](https://github.com/payloadcms/payload/commit/f25acb8)) * **richtext-lexical:** duplicative error paths in validation ([#11025](https://github.com/payloadcms/payload/issues/11025)) ([2b76a04](https://github.com/payloadcms/payload/commit/2b76a04)) * **richtext-lexical:** ensure sub-fields have access to full document data in form state ([#9869](https://github.com/payloadcms/payload/issues/9869)) ([ae32c55](https://github.com/payloadcms/payload/commit/ae32c55)) * **ui:** removing final condition closes where builder ([#11032](https://github.com/payloadcms/payload/issues/11032)) ([b820a75](https://github.com/payloadcms/payload/commit/b820a75)) * **ui:** clearing value from relationship filter leaves stale query ([#11023](https://github.com/payloadcms/payload/issues/11023)) ([7a73265](https://github.com/payloadcms/payload/commit/7a73265)) * **ui:** relationship filter clearing on blur ([#11021](https://github.com/payloadcms/payload/issues/11021)) ([8940726](https://github.com/payloadcms/payload/commit/8940726)) * **ui:** improve useIgnoredEffect hook ([#10961](https://github.com/payloadcms/payload/issues/10961)) ([8ed4104](https://github.com/payloadcms/payload/commit/8ed4104)) * **ui:** allow schedule publish to be accessed without changes ([#10999](https://github.com/payloadcms/payload/issues/10999)) ([bdbb999](https://github.com/payloadcms/payload/commit/bdbb999)) * **ui:** apply cacheTags upload config property to other admin panel image components ([#10801](https://github.com/payloadcms/payload/issues/10801)) ([e29ac52](https://github.com/payloadcms/payload/commit/e29ac52)) ### 🛠 Refactors * do not use description functions for generated types JSDocs ([#11027](https://github.com/payloadcms/payload/issues/11027)) ([8b6ba62](https://github.com/payloadcms/payload/commit/8b6ba62)) ### 🧪 Tests * addListFilter helper ([#11026](https://github.com/payloadcms/payload/issues/11026)) ([05e6f33](https://github.com/payloadcms/payload/commit/05e6f33)) * cleans up fields-relationship test suite ([#11003](https://github.com/payloadcms/payload/issues/11003)) ([694c76d](https://github.com/payloadcms/payload/commit/694c76d)) ### 🏡 Chores * `pnpm dev` defaults to the _community test suite ([#11044](https://github.com/payloadcms/payload/issues/11044)) ([49d94d5](https://github.com/payloadcms/payload/commit/49d94d5)) * find and use an available port in tests ([#11043](https://github.com/payloadcms/payload/issues/11043)) ([feea444](https://github.com/payloadcms/payload/commit/feea444)) * fix eslint wasn't running in test dir ([#11036](https://github.com/payloadcms/payload/issues/11036)) ([257cad7](https://github.com/payloadcms/payload/commit/257cad7)) * fix flaky lexical test ([#11035](https://github.com/payloadcms/payload/issues/11035)) ([04dad9d](https://github.com/payloadcms/payload/commit/04dad9d)) * deflake joins e2e tests ([#11034](https://github.com/payloadcms/payload/issues/11034)) ([098fe10](https://github.com/payloadcms/payload/commit/098fe10)) * fix lexical tests that are failing on main branch ([#11024](https://github.com/payloadcms/payload/issues/11024)) ([6631869](https://github.com/payloadcms/payload/commit/6631869)) * **cpa:** add ts strict mode ([#10914](https://github.com/payloadcms/payload/issues/10914)) ([824f9a7](https://github.com/payloadcms/payload/commit/824f9a7)) * **plugin-multi-tenant:** add better defaults for imported components ([#11030](https://github.com/payloadcms/payload/issues/11030)) ([ec593b4](https://github.com/payloadcms/payload/commit/ec593b4)) * **richtext-lexical:** fix unchecked indexed access (part 3) ([#11014](https://github.com/payloadcms/payload/issues/11014)) ([5f58daf](https://github.com/payloadcms/payload/commit/5f58daf)) * **richtext-lexical:** fix unchecked indexed acess in lexical blocks feature ([#11013](https://github.com/payloadcms/payload/issues/11013)) ([e413e1d](https://github.com/payloadcms/payload/commit/e413e1d)) ### 🤝 Contributors - Dan Ribbens (@DanRibbens) - Jacob Fletcher (@jacobsfletch) - Germán Jabloñski (@GermanJablo) - Alessio Gravili (@AlessioGr) - Jessica Chowdhury (@JessChowdhury) - Jarrod Flesch (@JarrodMFlesch) - Sasha (@r1tsuu) - Simon Vreman (@SimonVreman) - Tobias Odendahl (@tak-amboss)