Skip to content

Element Observer

import {
waitForElementWithObserver,
waitForElementWithPolling,
} from "webotron/plugins/element-observer";
  • waitForElementWithObserver(view, options)
  • waitForElementWithPolling(view, options)
await waitForElementWithObserver(view, {
selector: ".result",
timeoutMs: 5000,
observerMode: "shared",
sharedObserverTtlMs: 2000,
});
OptionTypePurpose
selectorstringCSS selector to wait for.
timeoutMsnumberMaximum wait duration.
strategyobserver | pollWaiting strategy.
observerModeper-request | sharedObserver allocation strategy.
sharedObserverTtlMsnumberShared observer idle teardown window.
signalAbortSignalAbort-aware waiting (poll mode).
  • per-request: one observer per pending request.
  • shared: one reusable observer with TTL cleanup.

ChromeWebView.waitForElement() routes through this module under the hood.