UNPKG

@wordpress/e2e-test-utils

Version:
36 lines (34 loc) 1.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.disableFocusLossObservation = disableFocusLossObservation; exports.enableFocusLossObservation = enableFocusLossObservation; /** * Adds an event listener to the document which throws an error if there is a * loss of focus. */ async function enableFocusLossObservation() { await page.evaluate(() => { if (window._detectFocusLoss) { document.body.removeEventListener('focusout', window._detectFocusLoss); } window._detectFocusLoss = event => { if (!event.relatedTarget) { throw new Error('Unexpected focus loss'); } }; document.body.addEventListener('focusout', window._detectFocusLoss); }); } /** * Removes the focus loss listener that `enableFocusLossObservation()` adds. */ async function disableFocusLossObservation() { await page.evaluate(() => { if (window._detectFocusLoss) { document.body.removeEventListener('focusout', window._detectFocusLoss); } }); } //# sourceMappingURL=observe-focus-loss.js.map