Pulp Engine Document Rendering
Get started
Release v0.55.0

Release v0.55.0

Date: 2026-04-05

Highlights

Editor store decomposition and paginated template picker.

Changed

  • Editor store decomposition: monolithic editor.store.ts split into tabs.store.ts (tab lifecycle, save reconciliation), shell-ui.store.ts (panel/dialog toggles), and tabs.selectors.ts (cross-store derived state). Reduces re-render surface and clarifies ownership boundaries.
  • Paginated template picker: TemplatePickerDialog fetches templates via paginated API using the new usePagination hook (limit/offset, auto-reset on open/search). Replaces single-shot fetchTemplateList.
  • Preview app loads templates progressively via paginated endpoint with cancellation support.
  • fetchTemplateListfetchTemplateListPage in editor API client; listTemplateslistTemplatesPage in preview API client.

Added

  • usePagination hook: generic limit/offset pagination with resetKey, enabled gate, and imperative reset.
  • shell-ui.store.ts: dedicated store for editor shell UI state (dialogs, panels, tabs).
  • tabs.store.ts: dedicated store for tab management, save reconciliation, and draft recovery.
  • tabs.selectors.ts: cross-store selectors (useAnyTabDirty).
  • panel-types.ts: shared PropertiesTabId type extraction.

Migration

No breaking API changes. Editor API client callers using fetchTemplateList should migrate to fetchTemplateListPage (returns PaginatedResponse<T>).