v3.0.0-beta.36

Version v3.0.0-beta.36Major ReleasePre-release
Released:

May 23, 2024

Type:

Contains breaking changes

GitHub:View Release

Release Notes

v3.0.0-beta.36 (2024-05-23)

Features

  • next.js 15, react 19, react compiler support (#6429) (35f961f)
  • add website template (#6470) (85bfca7)
  • ui: split up Select component into Select and SelectInput (#6471) (661a4a0)
  • richtext-lexical: various UX and performance improvements (#6467) (78579ed)
  • richtext-lexical: improve block dragging UX (6b45cf3)
  • next: server-side theme detection (#6452) (1fe9790)
  • translations: add Hebrew translation (#6428) (3c0853a)
  • richtext-lexical: various gutter, error states & add/drag handle improvements (#6448) (6c95287)

Bug Fixes

  • adds host to initPage req creation (#6476) (72c0534)
  • isHotkey webpack error (#6466) (73d0b20)
  • richtext-lexical: order of add/drag handles was inconsistent between gutter and no-gutter mode (c93752b)
  • ui: field errors aren't red in light mode (7a4dd58)
  • next,ui: fixes global doc permissions and optimizes publish access data loading (#6451) (2b941b7)
  • richtext-lexical: link drawer sending too many form state requests for actions unrelated to links (0bfbf9c)
  • ui: disableListColumn fields not hidden in table columns (#6445) (bcc506b)

BREAKING CHANGES

  • next.js 15, react 19, react compiler support (#6429) (35f961f)
BREAKING: - bumps minimum required next.js version from 14.3.0-canary.68 to 15.0.0-rc.0 - bumps minimum required react and react-dom versions to `19.0.0 (19.0.0-rc-f994737d14-20240522` should be used) - @types/react and @types/react-dom have to be bumped to npm:[email protected] using overrides and pnpm overrides, if you want correct types. You can find an example of this here: https://github.com/payloadcms/payload/pull/6429/files#diff-10cb9e57a77733f174ee2888587281e94c31f79e434aa3f932a8ec72fa7a5121L32 ## Issues - Bunch of todos for our react-select package which is having type issues. Works fine, just type issues. Their type defs are importing JSX in a weird way, we likely just have to wait until they fix them in a future update.
  • ui: uses consistent button naming conventions (#6444) (af7e12a)
## Description Renames the Save to SaveButton, etc. to match the already established convention of the PreviewButton, etc. This matches the imports with their respective component and type names, and also gives these components more context to the developer whenever they're rendered, i.e. its clearly just a button and not an entire block or complex component. BREAKING: Import paths for these components have changed, if you were previously importing these components into your own projects to customize, change the import paths accordingly: Old: ```ts import { PublishButton } from '@payloadcms/ui/elements/Publish' import { SaveButton } from '@payloadcms/ui/elements/Save' import { SaveDraftButton } from '@payloadcms/ui/elements/SaveDraft' ``` New: ```ts import { PublishButton } from '@payloadcms/ui/elements/PublishButton' import { SaveButton } from '@payloadcms/ui/elements/SaveButton' import { SaveDraftButton } from '@payloadcms/ui/elements/SaveDraftButton' ``` - [x] I have read and understand the CONTRIBUTING.md document in this repository.

Contributors

  • Alessio Gravili (@AlessioGr)
  • Paul (@paulpopus)
  • Jarrod Flesch (@JarrodMFlesch)
  • Elliot DeNolf (@denolfe)
  • Jacob Fletcher (@jacobsfletch)
  • zvizvi (@zvizvi)
  • Patrik (@PatrikKozak)