Home

>

Tools

>

Payload CMS

>

Releases

>

Release 0.14.0

Payload CMS Release: Release 0.14.0

Tag Name: v0.14.0

Release Date: 1/3/2022

Payload CMS LogoPayload CMS

Payload CMS is a modern, self-hosted headless content management system built with TypeScript, Node.js, and MongoDB. It's designed specifically for developers who want full control over their content management system while maintaining a powerful admin interface for content editors.

TL;DR

Payload CMS v0.14.0 introduces significant UI customization capabilities with new custom routes API and component injection patterns for Dashboard and Nav elements. This release also exports several core components for reuse, fixes multiple bugs in the admin UI, and improves the developer experience. The update focuses on giving developers more flexibility to tailor the admin interface while maintaining stability.

Highlight of the Release

    • New custom routes API for extending the admin UI
    • Before/After component injection pattern for Dashboard and Nav customization
    • Core components exported for reuse (Dashboard, Nav, custom inputs)
    • Multiple bug fixes for preview functionality, rich text editor, and relationship fields
    • Improved cross-browser compatibility for file uploads

Migration Guide

No breaking changes were identified in this release that would require migration steps. The new features are additive and should not affect existing implementations.

If you're using custom components or extending the admin UI, you may want to review the new component injection patterns and custom routes API to potentially refactor your code to use these new, more maintainable approaches.

Upgrade Recommendations

This is a minor version update (0.13.6 → 0.14.0) that introduces new features without breaking changes. It's recommended to upgrade if you:

  1. Need to customize the admin UI beyond what was previously possible
  2. Have encountered any of the bugs fixed in this release
  3. Want to take advantage of the newly exported components

The upgrade should be straightforward - update your Payload CMS dependency to version 0.14.0 and test your application thoroughly, especially if you have custom admin UI components or extensions.

Bug Fixes

Admin UI Fixes

  • Fixed preview button to ensure it gets up-to-date data (#393)
  • Fixed Safari-specific bug with rich text links (#390)
  • Fixed password functions to only run when authentication is enabled (#370)
  • Fixed issue #408 (related to admin UI)
  • Fixed issue #407 (admin interface bug)

Field and Data Handling Fixes

  • Fixed getDataByPath functionality to properly retrieve nested data
  • Ensured local findByID operations retain user context
  • Fixed globals model typing for better TypeScript support
  • Updated ImageSize types to allow null values for width and height
  • Fixed cross-browser compatibility issues with drag and drop uploads
  • Ensured proper row count setting in block fields
  • Fixed relationship field searching to work correctly with many pages of results

New Features

Custom Routes API

A new API for building custom routes within the admin UI has been introduced, giving developers more flexibility to extend and customize the admin interface.

Component Injection Pattern

The release introduces a new pattern for injecting custom components before and after Dashboard and Nav elements, allowing for more granular UI customization without overriding entire components.

Exported Core Components

Several core components are now exported for re-import and customization:

  • Default Dashboard component
  • Default Nav component
  • Custom text inputs
  • Custom select inputs

These exports make it easier for developers to build upon existing components rather than recreating them from scratch.

Security Updates

No specific security fixes were mentioned in the release notes. The changes related to password functions (#370) were about conditional execution when authentication is enabled rather than addressing security vulnerabilities.

Performance Improvements

No specific performance improvements were highlighted in this release. The changes were primarily focused on new features, bug fixes, and developer experience improvements rather than performance optimizations.

Impact Summary

Payload CMS v0.14.0 significantly enhances the extensibility of the admin interface by introducing a custom routes API and component injection patterns. This gives developers much more control over the admin UI without having to override entire components.

The release also addresses several important bugs affecting the user experience, particularly around preview functionality, rich text editing in Safari, relationship field searching, and cross-browser upload compatibility.

By exporting core components like Dashboard, Nav, and custom input types, the release makes it easier for developers to build upon existing functionality rather than creating custom solutions from scratch. This should lead to more consistent admin interfaces and reduce development time for customizations.

Overall, this release represents a meaningful step forward in Payload's flexibility as a headless CMS, particularly for projects requiring tailored admin experiences.

Full Release Notes

0.14.0 (2022-01-03)

Bug Fixes

  • #370, only performs password functions when auth enabled (9738873)
  • #390, safari rich text link bug (a16b99b)
  • #393, ensures preview button gets up to date data (2f47e39)
  • #408 (5c3cfa4)
  • #408 (e2c5d93)
  • 407 (a09570c)
  • allows null in ImageSize width and height types (ba79fd4)
  • cross-browser upload drag and drop (4119eec)
  • ensures getDataByPath works (140a3aa)
  • ensures local findByID retains user (05288ee)
  • ensures row count is set properly in block fields (9e091af)
  • ensures searching relationships works with many pages of results (961787d)
  • globals model typing (da7c0c9)

Features

  • builds custom routes API, Before/After Dashboard and Nav custom components (e337c62)
  • exports custom text and select inputs (52edb5b)
  • exposes default Dashboard and Nav components for re-import (ffe8e17)

Statistics:

File Changed52
Line Additions617
Line Deletions72
Line Changes689
Total Commits30

User Affected:

  • Can now create custom routes in the admin UI
  • Can inject custom components before/after Dashboard and Nav elements
  • Have access to exported core components for reuse and customization
  • Can use custom text and select inputs in their projects

Contributors:

jmikrutdenolfe