hugoWebsite/node_modules/rxjs/dist/esm/internal/observable/using.js

17 lines
574 B
JavaScript
Raw Normal View History

2022-10-29 00:20:35 +02:00
import { Observable } from '../Observable';
import { innerFrom } from './innerFrom';
import { EMPTY } from './empty';
export function using(resourceFactory, observableFactory) {
return new Observable((subscriber) => {
const resource = resourceFactory();
const result = observableFactory(resource);
const source = result ? innerFrom(result) : EMPTY;
source.subscribe(subscriber);
return () => {
if (resource) {
resource.unsubscribe();
}
};
});
}
//# sourceMappingURL=using.js.map