compose method
void
compose()
Compose the delta in the compose map.
Implementation
void compose() {
if (_composeMap.isEmpty) {
markNeedsComposing = false;
return;
}
for (final entry in _composeMap.entries) {
final node = entry.key;
if (node.delta == null) {
continue;
}
final deltaQueue = entry.value;
final composed =
deltaQueue.fold<Delta>(node.delta!, (p, e) => p.compose(e));
assert(composed.every((element) => element is TextInsert));
updateNode(node, {
'delta': composed.toJson(),
});
}
markNeedsComposing = false;
_composeMap.clear();
}