Skip to content

Releases: WLF-Studios/payload-nested-docs-page-tree

v1.5.0

Choose a tag to compare

@CarloBu CarloBu released this 07 Sep 15:04

What’s changed

  • Added optional live and preview links to page-tree status badges with the new badgesLinks configuration.
  • Published badges open the live page, while draft badges open the configured Payload preview.
  • Changed pages can open live, preview, or provide separate actions for both destinations.
  • Improved badge sizing and hover states, and increased the homepage indicator icon weight.
  • Refreshed the README with clearer feature documentation and updated media.

No breaking changes.
Full changelog: v1.4.5...v1.5.0

v1.4.5

Choose a tag to compare

@CarloBu CarloBu released this 03 Sep 12:57

What’s changed

  • Fixed admin.baseFilter and admin.baseListFilter compatibility by requesting headers to the custom page-tree list view.
  • Fixed multi-tenant filters.
  • Resolves #5.

No breaking changes.
Full changelog: v1.4.4...v1.4.5

v1.4.4

Choose a tag to compare

@CarloBu CarloBu released this 17 Aug 23:49

What’s changed

  • Updated table style to v4 design language.
  • changed dragging handle icon by making it bigger with bigger dots

No breaking changes.
Full changelog: v1.4.3...v1.4.4

v1.4.3

Choose a tag to compare

@CarloBu CarloBu released this 11 Aug 11:26

What’s changed

  • Fixed the mobile placement of the Edit Hierarchy control.
  • On small screens, the control now appears alongside the standard Columns and Filters actions.
  • Desktop behavior remains unchanged.
  • Improved local development and seed instructions in the README.

No breaking changes.
Full changelog: v1.4.2...v1.4.3

v1.4.2

Choose a tag to compare

@CarloBu CarloBu released this 11 Aug 10:51

What’s changed

  • Fixed collection field discovery when fields are placed inside unnamed tabs, rows, collapsibles, or groups.
  • admin.useAsTitle can now reference a title field inside a presentational tab.
  • Parent and breadcrumb fields inside these wrappers are now handled correctly.

Full changelog: v1.4.1...v1.4.2

v1.4.1

Choose a tag to compare

@CarloBu CarloBu released this 11 Aug 10:13

What’s changed

  • Added the opt-in publishOnMove option for immediately publishing clean hierarchy moves.
  • Republishes affected descendants so their live URLs follow the moved parent.
  • Triggers configured deployment hooks once per published subtree move.
  • Prevents unpublished page edits from being accidentally published during a move.

No breaking changes. publishOnMove remains disabled by default.
Full changelog: v1.4.0...v1.4.1

v1.4.0

Choose a tag to compare

@CarloBu CarloBu released this 04 Jun 12:36

v1.4.0 - Page tree rewrite

This release skips 1.3.0 because the plugin has gone through a larger rewrite.

The main change is that parent moves and orderable reordering are now separate interactions. This makes page hierarchy changes more intentional while keeping normal ordering safer for editors.

New

  • Added custom status badge labels and colors for published, changed, and draft
  • Added automatic light/dark theme adaptation for custom badge colors
  • Added diagnostics mode with structured page-tree operation logs
  • Added orderable-only reorder handle
  • Added separate Edit Hierarchy mode for parent moves
  • Added POST /:id/reorder endpoint for orderable sibling reordering
  • Added same-parent/root-level guard so reorder drags cannot change hierarchy
  • Added local README assets for screenshots and demo videos

Improved

  • Parent-move behavior is now hidden by default and only enabled intentionally
  • Parent moves continue to use Payload’s local API and let @payloadcms/plugin-nested-docs own parent/breadcrumb behavior
  • Reordering avoids normal document update side effects where possible
  • README now documents the new drag modes, badges, diagnostics, and media examples

Fixed

  • Fixed diagnostics integration test database isolation
  • Removed package-level pnpm version pin to avoid CI/runtime confusion

Notes

This version is still intended as a companion admin UX layer for @payloadcms/plugin-nested-docs. It does not replace nested docs persistence, breadcrumbs generation, or routing.

v1.2.4

Choose a tag to compare

@CarloBu CarloBu released this 05 May 12:19

Fixed

  • Temporarily disabled page-tree sibling reordering to prevent race conditions and published status drop.

Changed

  • Page-tree drag-and-drop now supports parent nesting only.
  • The page-tree UI no longer sends /api/reorder requests.

Note

  • Manual reorder support will return in the upcoming refactored page-tree move implementation.

v1.2.3

Choose a tag to compare

@CarloBu CarloBu released this 29 Apr 23:04

Added

  • Export pageTreeMoveContextKey so consumers can skip their own deploy/rebuild hooks on tree moves. Drag-and-drop moves and reorders now flag the request via req.context.pageTreeMove, so an existing
    afterChange hook only needs one line to opt out:
    if (req.context?.[pageTreeMoveContextKey]) return
  • New x-payload-nested-docs-page-tree-move request header signals reorder requests (which go through Payload's shared /api/reorder endpoint) into the same hook context flag.

Changed

  • The reorder header bridge now requires an authenticated request (req.user). Unauthenticated callers can no longer set the move-context flag.

Docs

  • New "Drag-And-Drop Is Triggering A Deploy?" README section covering when the opt-out is needed (deploy webhooks, GitHub Actions dispatch, SSG rebuilds, publish notifications, heavy reindex jobs) and when
    it isn't (default Payload website template on Vercel, or any setup limited to revalidatePath / revalidateTag).

v1.2.2

Choose a tag to compare

@CarloBu CarloBu released this 29 Apr 11:24

Fixed

  • Children inside a parent now render in the same order the database
    returns them. The tree builder used a numeric-aware string comparator
    (localeCompare with numeric: true) which mis-sorted fractional-
    indexing _order keys — e.g. a53 (numerically 53) was placed after
    a5i, while lexicographically a53 < a5i. As a result, dragging a row
    between two siblings could appear to "do nothing" or land the row in
    the wrong slot even though the underlying _order was updated
    correctly.
    The comparator now uses plain lexicographic comparison.