@lifaon/rx-js-light
Version:
Blazing fast Observables
30 lines (29 loc) • 1.07 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.fromPromise = void 0;
var complete_notification_constant_1 = require("../../../../../../misc/notifications/built-in/complete/complete-notification.constant.cjs");
var create_error_notification_1 = require("../../../../../../misc/notifications/built-in/error/create-error-notification.cjs");
var create_next_notification_1 = require("../../../../../../misc/notifications/built-in/next/create-next-notification.cjs");
function fromPromise(promise) {
return function (emit) {
var running = true;
promise.then(function (value) {
if (running) {
emit((0, create_next_notification_1.createNextNotification)(value));
}
if (running) {
emit(complete_notification_constant_1.STATIC_COMPLETE_NOTIFICATION);
}
}, function (error) {
if (running) {
emit((0, create_error_notification_1.createErrorNotification)(error));
}
});
return function () {
running = false;
};
};
}
exports.fromPromise = fromPromise;