useMutationObserver function

void useMutationObserver(
  1. GlobalNodeKey<Node> target,
  2. WebMutationCallback callback, {
  3. MutationObserverOptions options = const MutationObserverOptions(),
})

Observes DOM mutations beneath target.

Implementation

void useMutationObserver(
  GlobalNodeKey<web.Node> target,
  WebMutationCallback callback, {
  MutationObserverOptions options = const MutationObserverOptions(),
}) {
  final snapshot = MutationObserverOptions(
    childList: options.childList,
    attributes: options.attributes,
    characterData: options.characterData,
    subtree: options.subtree,
    attributeOldValue: options.attributeOldValue,
    characterDataOldValue: options.characterDataOldValue,
    attributeFilter: options.attributeFilter == null ? null : List<String>.unmodifiable(options.attributeFilter!),
  );
  if (!snapshot.isValid) {
    throw ArgumentError.value(snapshot, 'options', 'must observe child, attribute, or character-data changes');
  }
  use(_MutationObserverHook(target, callback, snapshot));
}