Deshacer y rehacer
Cada diagram.commit(...) (o cualquier CommandHandler/tool interactivo) es
un paso de deshacer. diagram.undo() / diagram.redo() navegan el
historial.
diagram.commit((d) => d.getModel().addNode({ key, label: 'Nodo' }), 'Añadir nodo');
diagram.undo();diagram.redo();
const um = diagram.getUndoManager();um.canUndo(); // booleanum.canRedo(); // booleanum.getUndoDescription(); // nombre de la próxima acción a deshacer, o nullum.getRedoDescription(); // nombre de la próxima acción a rehacer, o nullEl segundo argumento de commit() es el nombre de la transacción — aparece
en getUndoDescription()/getRedoDescription() y en los anuncios del
lector de pantalla (Undone: ... / Redone: ..., ver
Accesibilidad).