-
Notifications
You must be signed in to change notification settings - Fork 285
Description
How would I go about creating a, say, 10 level undo?
I have a rather large database that tracks the state of a large number of powerpoint-type slides. The data for each slide is stored over 30+ records eg
let slides = TAFFY([
{"id":1, "slide": 1, "type":"ssqcb","name":"question","disabled": 0,"value":""},
{"id":2, "slide": 1, "type":"ssqcb","name":"option0","disabled": 0,"value":"choice 1"},
{"id":3, "slide": 1, "type":"ssqcb","name":"option1","disabled": 0,"value":"choice 2"},
...
]);
With 50 slides there could easily be 1500+ records.
Users can add, delete, and edit slides. So a large number of records can be added or deleted in one go.
db.settings has onDBChange (and onInsert, onUpdate, and onRemove) but I don't know how to proceed. It looks like I'd need to store the entire db before any change is made.