UNPKG

mobx-fetch-observable

Version:
36 lines (35 loc) 1.03 kB
"use strict" Object.defineProperty(exports, "__esModule", { value: true }) exports.promiseObservable = void 0 var fetch_observable_1 = require("./fetch-observable") function createEmptyPromise() { return new Promise(function (resolve) { resolve(undefined) }) } function promiseObservable(promiseCreator) { if (promiseCreator === void 0) { promiseCreator = undefined } var o = fetch_observable_1.fetchObservable(function (sink) { var p = (promiseCreator || createEmptyPromise)() p.then(function (value) { return sink(value) }) }) return { current: o.current, fetch: o.fetch, set: o.set, pending: o.pending, started: o.started, setPromise: function (promiseCreator) { return o.setFetch(function (sink) { promiseCreator().then(function (value) { sink(value) }) }) }, } } exports.promiseObservable = promiseObservable