JSON Edit History Manager for Undo / Redo Functionality
npm install ctrlzJSON Edit History Manager for Undo / Redo Functionality, powered by operational transform. Keep state and support undo for anything that can be expressed / stored by JSON!
include required js file:
ctrlz uses @plotdb/json0 as a dependency. ctrlz.bundle.min.js already includes it but for a separate file, use ctrlz.mins.js instead, and include @plotdb/json0 separately downloaded from its repo.
/ init directly in constructor /
mananger = new ctrlz({obj: obj});
/ or alternatively, reset anytime after initialized /
manager.reset({obj: obj});
/ when obj is updated /
manager.update(obj);
/ if you have ot to apply: /
manager.apply({op: op});
/ undo, return a undo-ed object /
ret = manager.undo();
/ redo, return a redo-ed object /
ret = manager.redo();
/ clean history /
mananger.clear();
MIT.