undo_redo library

Undo/redo for immutable controller states and synchronous commands.

See doc/undo-redo.md for history observation and lifecycle contracts.

Classes

CommandHistory<T extends JState>
Manages a stack of undoable commands.
JUndoHistoryState
Immutable metadata for a controller's history, separate from domain state.
UndoableCommand<T extends JState>
Command pattern implementation for undo/redo.
UndoableIntent<T extends JState>
Intent that supports undo/redo operations.

Mixins

UndoRedoMixin<T extends JState>
Bounded snapshot history for immutable controller states.