/** * Promise microtask debouncer used by Popper.js v2 * This is no longer exported in Floating UI (Popper.js v3) * https://github.com/floating-ui/floating-ui/blob/v2.x/src/utils/debounce.js * @param fn function that will be debounced */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "debounce", { enumerable: true, get: function() { return debounce; } }); function debounce(fn) { let pending; return ()=>{ if (!pending) { pending = new Promise((resolve)=>{ Promise.resolve().then(()=>{ pending = undefined; resolve(fn()); }); }); } return pending; }; }