|
|
- module.exports = thunkyp
-
- function thunkyp (fn) {
- let running = null
-
- return ready
-
- function ready () {
- if (running) return running
- const p = fn()
- if (!(p instanceof Promise)) running = Promise.resolve(p)
- else running = p
- running.catch(onerror)
- return running
- }
-
- function onerror () {
- running = null
- }
- }
|