feat: initial commit
This commit is contained in:
32
node_modules/rxjs/_esm2015/internal/observable/using.js
generated
vendored
Normal file
32
node_modules/rxjs/_esm2015/internal/observable/using.js
generated
vendored
Normal file
@ -0,0 +1,32 @@
|
||||
import { Observable } from '../Observable';
|
||||
import { from } from './from';
|
||||
import { EMPTY } from './empty';
|
||||
export function using(resourceFactory, observableFactory) {
|
||||
return new Observable(subscriber => {
|
||||
let resource;
|
||||
try {
|
||||
resource = resourceFactory();
|
||||
}
|
||||
catch (err) {
|
||||
subscriber.error(err);
|
||||
return undefined;
|
||||
}
|
||||
let result;
|
||||
try {
|
||||
result = observableFactory(resource);
|
||||
}
|
||||
catch (err) {
|
||||
subscriber.error(err);
|
||||
return undefined;
|
||||
}
|
||||
const source = result ? from(result) : EMPTY;
|
||||
const subscription = source.subscribe(subscriber);
|
||||
return () => {
|
||||
subscription.unsubscribe();
|
||||
if (resource) {
|
||||
resource.unsubscribe();
|
||||
}
|
||||
};
|
||||
});
|
||||
}
|
||||
//# sourceMappingURL=using.js.map
|
Reference in New Issue
Block a user