@jbrowse/core
Version:
JBrowse 2 core libraries used by plugins
22 lines (21 loc) • 670 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ObservableCreate = ObservableCreate;
const rxjs_1 = require("rxjs");
const stopToken_1 = require("./stopToken");
function ObservableCreate(func, stopToken) {
(0, stopToken_1.checkStopToken)(stopToken);
return new rxjs_1.Observable((observer) => {
try {
const ret = func(observer);
if (ret === null || ret === void 0 ? void 0 : ret.catch) {
ret.catch((error) => {
observer.error(error);
});
}
}
catch (error) {
observer.error(error);
}
});
}