Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | 1x 1x 1x 1x 1x 1x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x | import { ChangeSource } from 'roosterjs-content-model-dom'; import { restoreSnapshotColors } from './restoreSnapshotColors'; import { restoreSnapshotHTML } from './restoreSnapshotHTML'; import { restoreSnapshotLogicalRoot } from './restoreSnapshotLogicalRoot'; import { restoreSnapshotSelection } from './restoreSnapshotSelection'; import type { ContentChangedEvent, RestoreUndoSnapshot } from 'roosterjs-content-model-types'; /** * @internal * Restore an undo snapshot into editor * @param core The editor core object * @param step Steps to move, can be 0, positive or negative */ export const restoreUndoSnapshot: RestoreUndoSnapshot = (core, snapshot) => { core.api.triggerEvent( core, { eventType: 'beforeSetContent', newContent: snapshot.html, }, true /*broadcast*/ ); try { core.undo.isRestoring = true; restoreSnapshotHTML(core, snapshot); restoreSnapshotLogicalRoot(core, snapshot); restoreSnapshotSelection(core, snapshot); restoreSnapshotColors(core, snapshot); const event: ContentChangedEvent = { eventType: 'contentChanged', entityStates: snapshot.entityStates, source: ChangeSource.SetContent, }; core.api.triggerEvent(core, event, false /*broadcast*/); } finally { core.undo.isRestoring = false; } }; |