Internet-programming_PIbd-2.../Library/node_modules/queue-microtask/index.js

10 lines
402 B
JavaScript
Raw Normal View History

2023-11-30 18:37:55 +04:00
/*! 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))