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.tssplit intotabs.store.ts(tab lifecycle, save reconciliation),shell-ui.store.ts(panel/dialog toggles), andtabs.selectors.ts(cross-store derived state). Reduces re-render surface and clarifies ownership boundaries. - Paginated template picker:
TemplatePickerDialogfetches templates via paginated API using the newusePaginationhook (limit/offset, auto-reset on open/search). Replaces single-shotfetchTemplateList. - Preview app loads templates progressively via paginated endpoint with cancellation support.
fetchTemplateList→fetchTemplateListPagein editor API client;listTemplates→listTemplatesPagein preview API client.
Added
usePaginationhook: 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: sharedPropertiesTabIdtype extraction.
Migration
No breaking API changes. Editor API client callers using fetchTemplateList
should migrate to fetchTemplateListPage (returns PaginatedResponse<T>).