27 lines
814 B
JavaScript
27 lines
814 B
JavaScript
|
import { EmptyError } from './util/EmptyError';
|
||
|
export function lastValueFrom(source, config) {
|
||
|
var hasConfig = typeof config === 'object';
|
||
|
return new Promise(function (resolve, reject) {
|
||
|
var _hasValue = false;
|
||
|
var _value;
|
||
|
source.subscribe({
|
||
|
next: function (value) {
|
||
|
_value = value;
|
||
|
_hasValue = true;
|
||
|
},
|
||
|
error: reject,
|
||
|
complete: function () {
|
||
|
if (_hasValue) {
|
||
|
resolve(_value);
|
||
|
}
|
||
|
else if (hasConfig) {
|
||
|
resolve(config.defaultValue);
|
||
|
}
|
||
|
else {
|
||
|
reject(new EmptyError());
|
||
|
}
|
||
|
},
|
||
|
});
|
||
|
});
|
||
|
}
|
||
|
//# sourceMappingURL=lastValueFrom.js.map
|