View on GitHubView PackagePublished: Jul 22, 2026

Release Notes

Patch Changes

  • #5608 fbcbd5a Thanks @davidkpiano! - Allow snapshot-based undo and redo to customize restored context while preserving complete history snapshots. Restoration can enqueue emitted events, effects, and store triggers.

    const undoableStore = store.with(
      undoRedo({
        strategy: 'snapshot',
        restore: ({ current, next }) => ({
          ...next,
          viewport: current.viewport
        })
      })
    );