Newer
Older
framework / node_modules / queue-microtask / index.js
@Tiago Leonardo Costa Dias Tiago Leonardo Costa Dias on 13 Mar 2024 402 bytes update
/*! queue-microtask. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
let promise

module.exports = typeof queueMicrotask === 'function'
  ? queueMicrotask.bind(typeof window !== 'undefined' ? window : global)
  // reuse resolved promise, and allocate it lazily
  : cb => (promise || (promise = Promise.resolve()))
    .then(cb)
    .catch(err => setTimeout(() => { throw err }, 0))