v1.2.0
v1.2.0 adds a way to revert transactions if they have not met certain conditions.
When using the transaction method, you can provide an optional doRollback callback which should return true if you want to revert the whole transaction at its conclusion.
The callback is provided with two objects, changedCells and invalidCells which list all the net changes and invalid attempts at changes that were made during the transaction. You will most likely use the contents of those objects to decide whether the transaction should be rolled back.